ts-ioc-container
Version:
Fast, lightweight TypeScript dependency injection container with a clean API, scoped lifecycles, decorators, tokens, hooks, lazy injection, customizable providers, and no global container objects.
15 lines (14 loc) • 572 B
TypeScript
export type constructor<T> = new (...args: any[]) => T;
export interface InstanceOfClass<T = unknown> {
new (...args: unknown[]): T;
}
export interface Instance<T = unknown> {
new (...args: unknown[]): T;
}
export declare const Is: {
nullish: <T>(value: T | undefined | null) => value is null | undefined;
object: (target: unknown) => target is object;
instance: (target: unknown) => target is InstanceOfClass;
constructor: (target: unknown) => target is constructor<unknown>;
};
export declare function resolveConstructor(target: object): object;