export declare class DIContainer {
    private readonly services;
    private readonly factories;
    private readonly singletons;
    /**
     * Register a service factory with the container
     */
    register<T>(token: string, factory: () => T, singleton?: boolean): void;
    /**
     * Resolve a service from the container
     */
    resolve<T>(token: string): T;
    /**
     * Check if a service is registered
     */
    has(token: string): boolean;
    /**
     * Clear all services and factories
     */
    clear(): void;
    /**
     * Get all registered service tokens
     */
    getRegisteredTokens(): string[];
}
//# sourceMappingURL=DIContainer.d.ts.map