export declare type ConstructorGS = new (...args: any[]) => T; export declare type InjectionTokenGS = ConstructorGS | string | symbol; /** Common application root with one-time lifecycle and lightweight DI. */ export declare abstract class App { private readonly _instances; private readonly _factories; private _startPromise?; buildId: string; appRootSelector: string; /** Synchronous one-time application configuration phase. */ protected initializeCore(): void; protected abstract startCore(): Promise; /** Current application in the browser or request scope. */ static get Inst(): App; start(): Promise; private startInternal; addInst(token: InjectionTokenGS, instance: T): void; getInst(token: InjectionTokenGS): T; tryGetInst(token: InjectionTokenGS): T | undefined; newInst(constructor: ConstructorGS, ...args: any[]): T; regFactory(constructor: ConstructorGS, factory: (...args: any[]) => T): void; private static tokenName; }