UNPKG

3.52 kBTypeScriptView Raw
1import { DynamicModule, Provider } from '@nestjs/common';
2import { EnhancerSubtype } from '@nestjs/common/constants';
3import { Injectable, Type } from '@nestjs/common/interfaces';
4import { ApplicationConfig } from '../application-config';
5import { SerializedGraph } from '../inspector/serialized-graph';
6import { ModuleCompiler } from './compiler';
7import { ContextId } from './instance-wrapper';
8import { Module } from './module';
9import { ModuleTokenFactory } from './module-token-factory';
10import { ModulesContainer } from './modules-container';
11type ModuleMetatype = Type<any> | DynamicModule | Promise<DynamicModule>;
12type ModuleScope = Type<any>[];
13export declare class NestContainer {
14 private readonly _applicationConfig;
15 private readonly globalModules;
16 private readonly moduleTokenFactory;
17 private readonly moduleCompiler;
18 private readonly modules;
19 private readonly dynamicModulesMetadata;
20 private readonly internalProvidersStorage;
21 private readonly _serializedGraph;
22 private internalCoreModule;
23 constructor(_applicationConfig?: ApplicationConfig);
24 get serializedGraph(): SerializedGraph;
25 get applicationConfig(): ApplicationConfig | undefined;
26 setHttpAdapter(httpAdapter: any): void;
27 getHttpAdapterRef(): import("..").AbstractHttpAdapter<any, any, any>;
28 getHttpAdapterHostRef(): import("..").HttpAdapterHost<import("..").AbstractHttpAdapter<any, any, any>>;
29 addModule(metatype: ModuleMetatype, scope: ModuleScope): Promise<{
30 moduleRef: Module;
31 inserted: boolean;
32 } | undefined>;
33 replaceModule(metatypeToReplace: ModuleMetatype, newMetatype: ModuleMetatype, scope: ModuleScope): Promise<{
34 moduleRef: Module;
35 inserted: boolean;
36 } | undefined>;
37 private setModule;
38 addDynamicMetadata(token: string, dynamicModuleMetadata: Partial<DynamicModule>, scope: Type<any>[]): Promise<void>;
39 addDynamicModules(modules: any[], scope: Type<any>[]): Promise<void>;
40 isGlobalModule(metatype: Type<any>, dynamicMetadata?: Partial<DynamicModule>): boolean;
41 addGlobalModule(module: Module): void;
42 getModules(): ModulesContainer;
43 getModuleCompiler(): ModuleCompiler;
44 getModuleByKey(moduleKey: string): Module;
45 getInternalCoreModuleRef(): Module | undefined;
46 addImport(relatedModule: Type<any> | DynamicModule, token: string): Promise<void>;
47 addProvider(provider: Provider, token: string, enhancerSubtype?: EnhancerSubtype): string | symbol | Function;
48 addInjectable(injectable: Provider, token: string, enhancerSubtype: EnhancerSubtype, host?: Type<Injectable>): string | symbol | Function | import("./instance-wrapper").InstanceWrapper<unknown>;
49 addExportedProvider(provider: Type<any>, token: string): void;
50 addController(controller: Type<any>, token: string): void;
51 clear(): void;
52 replace(toReplace: any, options: any & {
53 scope: any[] | null;
54 }): void;
55 bindGlobalScope(): void;
56 bindGlobalsToImports(moduleRef: Module): void;
57 bindGlobalModuleToModule(target: Module, globalModule: Module): void;
58 getDynamicMetadataByToken(token: string): Partial<DynamicModule>;
59 getDynamicMetadataByToken<K extends Exclude<keyof DynamicModule, 'global' | 'module'>>(token: string, metadataKey: K): DynamicModule[K];
60 registerCoreModuleRef(moduleRef: Module): void;
61 getModuleTokenFactory(): ModuleTokenFactory;
62 registerRequestProvider<T = any>(request: T, contextId: ContextId): void;
63 private shouldInitOnPreview;
64}
65export {};