#TypeScript
https://www.typescriptlang.org/docs/handbook/2/functions.html#construct-signatures
[[コンストラクタ (TypeScript)|コンストラクタ]]を表現する型。
```ts
type NameConstructor<T> = {
new (name: string): T
}
class SomeClass {
// ...
}
declare const someClass: NameConstructor<SomeClass>
const instance = new someClass("hoge")
// ^? const instance: SomeClass
```
<button class="playground"><a href="https://www.typescriptlang.org/play?#code/C4TwDgpgBAcghgWwgYQPYDsDOwBOBXAY2FRwB4AVAPigF4oBvAKChanQgHcoAKdRCAFxRsOAJboA5gEoh5RgF9GjAgBs4mTFADKqJMjUaGzVgHoTUAHRWFSgCYRVcHNAIZsw3SgOYh8PW9xCYjIdPW9KZQCocWw4dAJoOnYuTE99dUxuACIAC1QJCCypRjNWFgA9AH4gA">Playground</a></button>