While designing a definition file, I came across this error (TS2507).
How can I specify a type to be a 'constructor function type' ?
If you are defining an interface, you can declare that it is a constructor like such:
interface SomeInterface {
new(someParam: any): SomeInterface
}
This is useful when you are defining typings for already existing JS libraries. See this SO answer for more details.