UNPKG

@difizen/mana-syringe

Version:

37 lines 1.98 kB
import type { Disposable } from '@difizen/mana-common'; import { DisposableCollection, Emitter } from '@difizen/mana-common'; import type { interfaces } from 'inversify'; import { Syringe } from './core'; import type { InversifyContext } from './inversify-api/inversify-protocol'; export declare const ContainerMeta: unique symbol; export declare class Container implements Syringe.Container, InversifyContext, Disposable { disposed?: boolean | undefined; protected toDisposeOnParentChange: DisposableCollection; protected onModuleChangedEmitter: Emitter<void>; get onModuleChanged(): import("@difizen/mana-common").Event<void>; protected onRegisteredEmitter: Emitter<void>; get onRegistered(): import("@difizen/mana-common").Event<void>; protected _parent?: Container | undefined; get parent(): Container | undefined; set parent(p: Container | undefined); static config(option: Syringe.InjectOption<void>): void; protected loadedModules: number[]; container: interfaces.Container; constructor(inversifyContainer?: interfaces.Container); dispose(): void; load(module: Syringe.Module, force?: boolean, deep?: boolean): void; unload(module: Syringe.Module): void; remove<T>(token: Syringe.Token<T>): void; get<T>(token: Syringe.Token<T>): T; getNamed<T>(token: Syringe.Token<T>, named: Syringe.Named): T; getAll<T>(token: Syringe.Token<T>): T[]; getAllNamed<T>(token: Syringe.Token<T>, named: Syringe.Named): T[]; isBound<T>(token: Syringe.Token<T>): boolean; isBoundNamed<T>(token: Syringe.Token<T>, named: Syringe.Named): boolean; createChild(): Syringe.Container; register<T = any>(tokenOrOption: Syringe.Token<T> | Syringe.InjectOption<T>): void; register<T = any>(token: Syringe.Token<T>, options: Syringe.InjectOption<T>): void; } export declare const GlobalContainer: Container; export declare const register: Syringe.Register; //# sourceMappingURL=container.d.ts.map