type Class = { new (...args: any[]): any; }; interface MockInstance { type: any; instance: any; } export declare class ServiceContainer { private static mockInstances; private static registeredOnDisposing; static addMock(type: T, instance: any): void; static getMock(type: T): MockInstance; /** * @param forceNewInstanceLifetimeScope that used in Provide/Inject pattern in ui layer. */ static createInstance(classType: T2, constructorArgs?: T, forceNewInstanceLifetimeScope?: boolean): InstanceType; static disposeScopedAndTransient(): void; static onDisposing(func: (instance: any) => void): void; static getRegisteredOnDisposing(): ((activatedInstance: any) => void)[]; } export declare class ServiceContainerContext { private container; constructor(); createInstance(classType: T2, constructorArgs?: T, forceNewInstanceLifetimeScope?: boolean): InstanceType; dispose(): void; } export {};