import { type Newable, type ServiceIdentifier } from '@inversifyjs/common'; import { type Binding, type BindingActivation, type BindingConstraints, type BindingDeactivation, type BindingScope, type BindingType, type DynamicValueBuilder, type Factory, type MetadataName, type MetadataTag, type ResolutionContext, type ScopedBinding } from '@inversifyjs/core'; import { type Writable } from '../../common/models/Writable.js'; import { type BindInFluentSyntax, type BindInWhenOnFluentSyntax, type BindOnFluentSyntax, type BindToFluentSyntax, type BindWhenFluentSyntax, type BindWhenOnFluentSyntax } from './BindingFluentSyntax.js'; import { type BindingIdentifier } from './BindingIdentifier.js'; import { type MapToResolvedValueInjectOptions } from './MapToResolvedValueInjectOptions.js'; export declare class BindInFluentSyntaxImplementation implements BindInFluentSyntax { #private; constructor(binding: Writable>); getIdentifier(): BindingIdentifier; inRequestScope(): BindWhenOnFluentSyntax; inSingletonScope(): BindWhenOnFluentSyntax; inTransientScope(): BindWhenOnFluentSyntax; } export declare class BindToFluentSyntaxImplementation implements BindToFluentSyntax { #private; constructor(callback: (binding: Binding) => void, containerModuleId: number | undefined, defaultScope: BindingScope, serviceIdentifier: ServiceIdentifier); to(type: Newable): BindInWhenOnFluentSyntax; toSelf(): BindInWhenOnFluentSyntax; toConstantValue(value: T): BindWhenOnFluentSyntax; toDynamicValue(builder: DynamicValueBuilder): BindInWhenOnFluentSyntax; toResolvedValue(factory: () => T | Promise): BindInWhenOnFluentSyntax; toResolvedValue(factory: (...args: TArgs) => T | Promise, injectOptions: MapToResolvedValueInjectOptions): BindInWhenOnFluentSyntax; toFactory>(this: BindToFluentSyntaxImplementation, builder: (context: ResolutionContext) => T | Promise): BindWhenOnFluentSyntax; toService(service: ServiceIdentifier): void; } export declare class BindOnFluentSyntaxImplementation implements BindOnFluentSyntax { #private; constructor(binding: Writable>); getIdentifier(): BindingIdentifier; onActivation(activation: BindingActivation): BindWhenFluentSyntax; onDeactivation(deactivation: BindingDeactivation): BindWhenFluentSyntax; } export declare class BindWhenFluentSyntaxImplementation implements BindWhenFluentSyntax { #private; constructor(binding: Writable>); getIdentifier(): BindingIdentifier; when(constraint: (metadata: BindingConstraints) => boolean): BindOnFluentSyntax; whenAnyAncestor(constraint: (metadata: BindingConstraints) => boolean): BindOnFluentSyntax; whenAnyAncestorIs(serviceIdentifier: ServiceIdentifier): BindOnFluentSyntax; whenAnyAncestorNamed(name: MetadataName): BindOnFluentSyntax; whenAnyAncestorTagged(tag: MetadataTag, tagValue: unknown): BindOnFluentSyntax; whenDefault(): BindOnFluentSyntax; whenNamed(name: MetadataName): BindOnFluentSyntax; whenNoParent(constraint: (metadata: BindingConstraints) => boolean): BindOnFluentSyntax; whenNoParentIs(serviceIdentifier: ServiceIdentifier): BindOnFluentSyntax; whenNoParentNamed(name: MetadataName): BindOnFluentSyntax; whenNoParentTagged(tag: MetadataTag, tagValue: unknown): BindOnFluentSyntax; whenParent(constraint: (metadata: BindingConstraints) => boolean): BindOnFluentSyntax; whenParentIs(serviceIdentifier: ServiceIdentifier): BindOnFluentSyntax; whenParentNamed(name: MetadataName): BindOnFluentSyntax; whenParentTagged(tag: MetadataTag, tagValue: unknown): BindOnFluentSyntax; whenTagged(tag: MetadataTag, tagValue: unknown): BindOnFluentSyntax; whenNoAncestor(constraint: (metadata: BindingConstraints) => boolean): BindOnFluentSyntax; whenNoAncestorIs(serviceIdentifier: ServiceIdentifier): BindOnFluentSyntax; whenNoAncestorNamed(name: MetadataName): BindOnFluentSyntax; whenNoAncestorTagged(tag: MetadataTag, tagValue: unknown): BindOnFluentSyntax; } export declare class BindWhenOnFluentSyntaxImplementation extends BindWhenFluentSyntaxImplementation implements BindWhenOnFluentSyntax { #private; constructor(binding: Writable>); onActivation(activation: BindingActivation): BindWhenFluentSyntax; onDeactivation(deactivation: BindingDeactivation): BindWhenFluentSyntax; } export declare class BindInWhenOnFluentSyntaxImplementation extends BindWhenOnFluentSyntaxImplementation implements BindInWhenOnFluentSyntax { #private; constructor(binding: Writable>); inRequestScope(): BindWhenOnFluentSyntax; inSingletonScope(): BindWhenOnFluentSyntax; inTransientScope(): BindWhenOnFluentSyntax; } //# sourceMappingURL=BindingFluentSyntaxImplementation.d.ts.map