# TS2416: Property '…' in type '…' is not assignable to the same property in base type '…'.

> A subclass or implementing class redeclares a property or method with a type the base type doesn't allow. Make it compatible with the base member.

## What it means

When a class overrides a property or method from its base class or an implemented interface,
the new member's type must be assignable to the base member's type, so code that only knows the
base type still works.

## Example

```ts
class Shape {
  area(): number {
    return 0;
  }
}
export class Square extends Shape {
  area(): string {
    return "4";
  }
}
```

## How to fix

- Change the overriding member to a compatible type (here return a `number`).
- If it's really a different operation, give it a different name.

Source: https://ts-r.dev/errors/TS2416/
