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(serviceIdentifier: ServiceIdentifier): BindToFluentSyntax; get(serviceIdentifier: ServiceIdentifier, options: OptionalGetOptions): T | undefined; get(serviceIdentifier: ServiceIdentifier, options?: GetOptions): T; getAll(serviceIdentifier: ServiceIdentifier, options?: GetAllOptions): T[]; getAllAsync(serviceIdentifier: ServiceIdentifier, options?: GetAllOptions): Promise; getAsync(serviceIdentifier: ServiceIdentifier, options: OptionalGetOptions): Promise; getAsync(serviceIdentifier: ServiceIdentifier, options?: GetOptions): Promise; isBound(serviceIdentifier: ServiceIdentifier, options?: IsBoundOptions): boolean; isCurrentBound(serviceIdentifier: ServiceIdentifier, options?: IsBoundOptions): boolean; loadAsync(...modules: ContainerModule[]): Promise; load(...modules: ContainerModule[]): void; onActivation(serviceIdentifier: ServiceIdentifier, activation: BindingActivation): void; onDeactivation(serviceIdentifier: ServiceIdentifier, deactivation: BindingDeactivation): void; register(pluginConstructor: Newable): void; restore(): void; rebindAsync(serviceIdentifier: ServiceIdentifier): Promise>; rebind(serviceIdentifier: ServiceIdentifier): BindToFluentSyntax; snapshot(): void; unbindAsync(identifier: BindingIdentifier | ServiceIdentifier): Promise; unbindAllAsync(): Promise; unbindAll(): void; unbind(identifier: BindingIdentifier | ServiceIdentifier): void; unloadAsync(...modules: ContainerModule[]): Promise; unload(...modules: ContainerModule[]): void; } //# sourceMappingURL=Container.d.ts.map