а сами классы)
есть абстрактный класс Connector - от него наследуются все классы в аргументах
функция принимает массив таких классов
вопрос
как правильно типизировать аргумент, который должен быть классом, который наследуется от абстрактного класса?
function foo<T extends typeof Connector>(ctor: T){}
а каким образом этом это для массивов будет работать?
function foo<T extends typeof Connector>(ctor: T[]){} как то так
abstract class Memory { private signature_stack = new Map<number, StackMemory>() } class M2 extends Memory {} type MemChildCtor = new (...args: any[]) => any function foo<T extends MemChildCtor>(m: T): InstanceType<T> { return new m() } foo(M2)
спасибо, вроде получилось вот так сделал
только переименуй плз C -> Ctor connectors -> connectorsCtors типа того )
Обсуждают сегодня