typescript
Inheritance inversion (decorator alternative):
function wrap<T extends object>(Ctor: {new(n: number) : T}) { return class Abcd extends Ctor { } }
(ваш голос учтен)
function wrap<T extends object>(Ctor: {new(n: number) : T}) { return class Abcd extends Ctor { } }