import { type ServiceIdentifier } from '@inversifyjs/common'; import { type Cloneable } from '../../common/models/Cloneable.js'; import { type AutobindOptions } from '../models/AutobindOptions.js'; import { type Binding } from '../models/Binding.js'; declare enum BindingRelationKind { id = "id", moduleId = "moduleId", serviceId = "serviceId" } export interface BindingRelation { [BindingRelationKind.id]: number; [BindingRelationKind.moduleId]?: number; [BindingRelationKind.serviceId]: ServiceIdentifier; } export declare class BindingService implements Cloneable { #private; private constructor(); static build(getParent: () => BindingService | undefined, autobindOptions?: AutobindOptions): BindingService; clone(): BindingService; get(serviceIdentifier: ServiceIdentifier): Iterable> | undefined; getChained(serviceIdentifier: ServiceIdentifier): Generator, void, unknown>; getBoundServices(): Iterable; getById(id: number): Iterable> | undefined; getByModuleId(moduleId: number): Iterable> | undefined; getNonParentBindings(serviceId: ServiceIdentifier): Iterable> | undefined; getNonParentBoundServices(): Iterable; removeById(id: number): void; removeAllByModuleId(moduleId: number): void; removeAllByServiceId(serviceId: ServiceIdentifier): void; set(binding: Binding): void; } export {}; //# sourceMappingURL=BindingService.d.ts.map