import { DIIdentifier } from "./internal"; export declare abstract class DIContainer { abstract registerFactory(key: DIIdentifier, factory: (container: DIContainer) => T): void; abstract registerNamedFactory(key: DIIdentifier, factory: (container: DIContainer) => T, name: string): void; abstract registerInstance(key: DIIdentifier, instance: T): void; abstract unregister(key: DIIdentifier): void; abstract resolve(key: DIIdentifier): T; abstract resolveNamed(key: DIIdentifier, name: string): T; abstract resolveAll(key: DIIdentifier): T[]; abstract createChild(): DIContainer; abstract isRegistered(key: DIIdentifier): boolean; } //# sourceMappingURL=DIContainer.d.ts.map