@sigiljs/sigil
Version:
TypeScript-first Node.js HTTP framework offering schema-driven routing, modifier-based middleware, plugin extensibility, and flexible response templating
7 lines (6 loc) • 311 B
TypeScript
export type CallableClass<T extends new (...args: any[]) => any> = {
new (...args: ConstructorParameters<T>): InstanceType<T>;
} & {
(...args: ConstructorParameters<T>): InstanceType<T>;
} & T;
export default function makeCallableClass<T extends new (...args: any[]) => any>(Ctor: T): CallableClass<T>;