UNPKG

@codespeaks/tinydi

Version:

A simple and intuitive DI container, designed for simplicity, making dependency management seamless and easy to use.

21 lines 644 B
type ClassRef<T = unknown> = new (...args: any[]) => T; type Lifecycle = 'singleton' | 'transient'; interface Registration<T> { classRef: ClassRef<T>; lifecycle: Lifecycle; instance?: T; factory?: () => T; } declare class TinyDI { private container; add<T>(classRef: ClassRef<T>, factory?: () => T): { inject: (...depRefs: ClassRef[]) => T; getSelf: () => T; }; get<T>(classRef: ClassRef<T>): T; inject<T>(registration: Registration<T>, ...depRefs: ClassRef[]): T; private injectWrapper; } export declare const createContainer: () => TinyDI; export {}; //# sourceMappingURL=index.d.ts.map