import { INestApplicationContext, LoggerService, OnApplicationBootstrap, OnModuleDestroy, OnModuleInit } from '@nestjs/common'; import { Type } from '@nestjs/common/interfaces/type.interface'; import { NestContainer } from './injector/container'; import { Module } from './injector/module'; import { ModuleRef } from './injector/module-ref'; export declare class NestApplicationContext extends ModuleRef implements INestApplicationContext { private readonly scope; protected contextModule: Module; private readonly moduleTokenFactory; constructor(container: NestContainer, scope: Type[], contextModule: Module); selectContextModule(): void; select(module: Type): INestApplicationContext; get(typeOrToken: Type | string | symbol, options?: { strict: boolean; }): TResult; init(): Promise; close(): Promise; useLogger(logger: LoggerService): void; protected callInitHook(): Promise; protected callModuleInitHook(module: Module): Promise; protected hasOnModuleInitHook(instance: any): instance is OnModuleInit; protected callDestroyHook(): Promise; protected callModuleDestroyHook(module: Module): Promise; protected hasOnModuleDestroyHook(instance: any): instance is OnModuleDestroy; protected callBootstrapHook(): Promise; protected callModuleBootstrapHook(module: Module): Promise; protected hasOnAppBotstrapHook(instance: any): instance is OnApplicationBootstrap; }