UNPKG

mana-syringe

Version:

IoC library for mana, easily to use.

28 lines 1.57 kB
import type { interfaces } from 'inversify'; import type { InversifyContext } from './inversify/inversify-protocol'; import type { Disposable, Syringe } from './core'; export declare class Container implements Syringe.Container, InversifyContext { static setContainer(key: interfaces.Container, value: Syringe.Container): Map<number, Syringe.Container>; static getContainer(key: interfaces.Container): Syringe.Container; static config(option: Syringe.InjectOption<void>): void; protected loadedModules: number[]; container: interfaces.Container; protected inversify: boolean; parent?: Container; constructor(inversifyContainer?: interfaces.Container); load(module: Syringe.Module, force?: boolean): Disposable; 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