Мне кажется, что недооценено по сравнению с другими, иногда очень сложными, типами во всей вселенной TypeScript, имеющими свойство Function
для target
в функциях декоратора. Единственный пример со строгим типом указан в разделе Class Decorators . Я понимаю, что в JS сами по себе нет классов, но поскольку TypeScript работает только во время проектирования и сборки, он понимает классы по-другому, так почему в руководстве нет более сильных типов для параметра target
decorator?
function sealed(constructor: Function)
против
function classDecorator<T extends {new(...args:any[]):{}}>(constructor:T)
или просто
function classDecorator(constructor:{new(...args:any[]):{}})