Back to Denoland

No Misused New

lint/rules/no-misused-new.md

latest378 B
Original Source

Disallows defining constructors for interfaces or new for classes

Specifying a constructor for an interface or defining a new method for a class is incorrect and should be avoided.

Invalid:

typescript
class C {
  new(): C;
}

interface I {
  constructor(): void;
}

Valid:

typescript
class C {
  constructor() {}
}

interface I {
  new (): C;
}