UNPKG

container-ioc

Version:

Dependency Injection and Inversion of Control (IoC) container

27 lines (26 loc) 1.19 kB
import { IInjectionInstance, ProviderToken, RegistrationProvider } from './interfaces'; import { IContainer, IContainerOptions } from './container.interface'; export declare class Container implements IContainer { private static DEFAULT_LIFE_TIME; private registry; private parent; private defaultLifeTime; constructor(options?: IContainerOptions); register(provider: RegistrationProvider | RegistrationProvider[]): void; resolve(token: ProviderToken): IInjectionInstance; createScope(): IContainer; createChild(): IContainer; setParent(parent: IContainer): void; resolveInternal(token: ProviderToken, container: IContainer, traceMessage?: string): IInjectionInstance; private registerAll(providers); private registerOne(provider); private convertTokensToInjectionMd(tokens); private instantiateWithFactory(factory, container, traceMessage); private normalizeProvider(provider); private normalizeSingleProvider(provider); private buildTraceMessage(token, message); private getTokenString(token); private symbol2string(symbol); private isInjectable(cls); private retrieveInjectionsFromClass(cls); }