import { DynamicModule, Provider } from '@nestjs/common'; import { Injectable } from '@nestjs/common/interfaces/injectable.interface'; import { Type } from '@nestjs/common/interfaces/type.interface'; import { ApplicationConfig } from '../application-config'; import { ContextId } from './instance-wrapper'; import { Module } from './module'; import { ModuleTokenFactory } from './module-token-factory'; import { ModulesContainer } from './modules-container'; export declare class NestContainer { private readonly _applicationConfig; private readonly globalModules; private readonly moduleTokenFactory; private readonly moduleCompiler; private readonly modules; private readonly dynamicModulesMetadata; private readonly internalProvidersStorage; private internalCoreModule; constructor(_applicationConfig?: ApplicationConfig); readonly applicationConfig: ApplicationConfig | undefined; setHttpAdapter(httpAdapter: any): void; getHttpAdapterRef(): import("..").AbstractHttpAdapter; addModule(metatype: Type | DynamicModule | Promise, scope: Type[]): Promise; addDynamicMetadata(token: string, dynamicModuleMetadata: Partial, scope: Type[]): void; addDynamicModules(modules: any[], scope: Type[]): void; isGlobalModule(metatype: Type, dynamicMetadata?: Partial): boolean; addGlobalModule(module: Module): void; getModules(): ModulesContainer; getModuleByKey(moduleKey: string): Module; getInternalCoreModuleRef(): Module | undefined; addImport(relatedModule: Type | DynamicModule, token: string): Promise; addProvider(provider: Provider, token: string): string; addInjectable(injectable: Provider, token: string, host?: Type): void; addExportedProvider(provider: Type, token: string): void; addController(controller: Type, token: string): void; clear(): void; replace(toReplace: any, options: any & { scope: any[] | null; }): void; bindGlobalScope(): void; bindGlobalsToImports(module: Module): void; bindGlobalModuleToModule(target: Module, globalModule: Module): void; getDynamicMetadataByToken(token: string, metadataKey: keyof DynamicModule): any[]; createCoreModule(): DynamicModule; registerCoreModuleRef(moduleRef: Module): void; getModuleTokenFactory(): ModuleTokenFactory; registerRequestProvider(request: T, contextId: ContextId): void; }