=> any>(ctor: C, ...args: A): InstanceType<C> {
return new ctor(...args)
}
class A {
constructor(some: number, is: boolean) { }
method() {}
}
const c = factory(A, 100, true)
c.method()
```
function factory<T extends new (...args: any[]) => any>( comp: T, ...args: T extends new (...args: infer A) => any ? A : never ) { return new comp(...args); } Вот так вот вышло
Обсуждают сегодня