UNPKG

4.54 kBTypeScriptView Raw
1import { interfaces } from "../interfaces/interfaces";
2declare class Container implements interfaces.Container {
3 id: number;
4 parent: interfaces.Container | null;
5 readonly options: interfaces.ContainerOptions;
6 private _middleware;
7 private _bindingDictionary;
8 private _activations;
9 private _deactivations;
10 private _snapshots;
11 private _metadataReader;
12 private _moduleActivationStore;
13 static merge(container1: interfaces.Container, container2: interfaces.Container, ...containers: interfaces.Container[]): interfaces.Container;
14 constructor(containerOptions?: interfaces.ContainerOptions);
15 load(...modules: interfaces.ContainerModule[]): void;
16 loadAsync(...modules: interfaces.AsyncContainerModule[]): Promise<void>;
17 unload(...modules: interfaces.ContainerModuleBase[]): void;
18 unloadAsync(...modules: interfaces.ContainerModuleBase[]): Promise<void>;
19 bind<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): interfaces.BindingToSyntax<T>;
20 rebind<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): interfaces.BindingToSyntax<T>;
21 rebindAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): Promise<interfaces.BindingToSyntax<T>>;
22 unbind(serviceIdentifier: interfaces.ServiceIdentifier): void;
23 unbindAsync(serviceIdentifier: interfaces.ServiceIdentifier): Promise<void>;
24 unbindAll(): void;
25 unbindAllAsync(): Promise<void>;
26 onActivation<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, onActivation: interfaces.BindingActivation<T>): void;
27 onDeactivation<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, onDeactivation: interfaces.BindingDeactivation<T>): void;
28 isBound(serviceIdentifier: interfaces.ServiceIdentifier<any>): boolean;
29 isCurrentBound<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): boolean;
30 isBoundNamed(serviceIdentifier: interfaces.ServiceIdentifier, named: string | number | symbol): boolean;
31 isBoundTagged(serviceIdentifier: interfaces.ServiceIdentifier, key: string | number | symbol, value: unknown): boolean;
32 snapshot(): void;
33 restore(): void;
34 createChild(containerOptions?: interfaces.ContainerOptions): Container;
35 applyMiddleware(...middlewares: interfaces.Middleware[]): void;
36 applyCustomMetadataReader(metadataReader: interfaces.MetadataReader): void;
37 get<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): T;
38 getAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): Promise<T>;
39 getTagged<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): T;
40 getTaggedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): Promise<T>;
41 getNamed<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): T;
42 getNamedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): Promise<T>;
43 getAll<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): T[];
44 getAllAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): Promise<T[]>;
45 getAllTagged<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): T[];
46 getAllTaggedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): Promise<T[]>;
47 getAllNamed<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): T[];
48 getAllNamedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): Promise<T[]>;
49 resolve<T>(constructorFunction: interfaces.Newable<T>): T;
50 private _preDestroy;
51 private _removeModuleHandlers;
52 private _removeModuleBindings;
53 private _deactivate;
54 private _handleDeactivationError;
55 private _deactivateContainer;
56 private _deactivateContainerAsync;
57 private _getContainerModuleHelpersFactory;
58 private _getAll;
59 private _get;
60 private _getButThrowIfAsync;
61 private _getAllArgs;
62 private _getNotAllArgs;
63 private _planAndResolve;
64 private _deactivateIfSingleton;
65 private _deactivateSingletons;
66 private _deactivateSingletonsAsync;
67 private _propagateContainerDeactivationThenBindingAndPreDestroy;
68 private _propagateContainerDeactivationThenBindingAndPreDestroyAsync;
69 private _removeServiceFromDictionary;
70 private _bindingDeactivationAndPreDestroy;
71 private _bindingDeactivationAndPreDestroyAsync;
72}
73export { Container };