@inversifyjs/container
Version:
InversifyJs container
36 lines • 2.46 kB
TypeScript
import { type Newable, type ServiceIdentifier } from '@inversifyjs/common';
import { type BindingActivation, type BindingDeactivation, type GetAllOptions, type GetOptions, type OptionalGetOptions } from '@inversifyjs/core';
import { type BindToFluentSyntax } from '../../binding/models/BindingFluentSyntax.js';
import { type BindingIdentifier } from '../../binding/models/BindingIdentifier.js';
import { type ContainerModule } from '../models/ContainerModule.js';
import { type ContainerOptions } from '../models/ContainerOptions.js';
import { type IsBoundOptions } from '../models/isBoundOptions.js';
export declare class Container {
#private;
constructor(options?: ContainerOptions);
bind<T>(serviceIdentifier: ServiceIdentifier<T>): BindToFluentSyntax<T>;
get<T>(serviceIdentifier: ServiceIdentifier<T>, options: OptionalGetOptions): T | undefined;
get<T>(serviceIdentifier: ServiceIdentifier<T>, options?: GetOptions): T;
getAll<T>(serviceIdentifier: ServiceIdentifier<T>, options?: GetAllOptions): T[];
getAllAsync<T>(serviceIdentifier: ServiceIdentifier<T>, options?: GetAllOptions): Promise<T[]>;
getAsync<T>(serviceIdentifier: ServiceIdentifier<T>, options: OptionalGetOptions): Promise<T | undefined>;
getAsync<T>(serviceIdentifier: ServiceIdentifier<T>, options?: GetOptions): Promise<T>;
isBound(serviceIdentifier: ServiceIdentifier, options?: IsBoundOptions): boolean;
isCurrentBound(serviceIdentifier: ServiceIdentifier, options?: IsBoundOptions): boolean;
loadAsync(...modules: ContainerModule[]): Promise<void>;
load(...modules: ContainerModule[]): void;
onActivation<T>(serviceIdentifier: ServiceIdentifier<T>, activation: BindingActivation<T>): void;
onDeactivation<T>(serviceIdentifier: ServiceIdentifier<T>, deactivation: BindingDeactivation<T>): void;
register(pluginConstructor: Newable): void;
restore(): void;
rebindAsync<T>(serviceIdentifier: ServiceIdentifier<T>): Promise<BindToFluentSyntax<T>>;
rebind<T>(serviceIdentifier: ServiceIdentifier<T>): BindToFluentSyntax<T>;
snapshot(): void;
unbindAsync(identifier: BindingIdentifier | ServiceIdentifier): Promise<void>;
unbindAllAsync(): Promise<void>;
unbindAll(): void;
unbind(identifier: BindingIdentifier | ServiceIdentifier): void;
unloadAsync(...modules: ContainerModule[]): Promise<void>;
unload(...modules: ContainerModule[]): void;
}
//# sourceMappingURL=Container.d.ts.map