UNPKG

1.32 kBTypeScriptView Raw
1import { Type } from '@nestjs/common';
2import { NestContainer } from './container';
3import { ContextId } from './instance-wrapper';
4import { Module } from './module';
5export declare abstract class ModuleRef {
6 protected readonly container: NestContainer;
7 private readonly injector;
8 private readonly containerScanner;
9 constructor(container: NestContainer);
10 abstract get<TInput = any, TResult = TInput>(typeOrToken: Type<TInput> | string | symbol, options?: {
11 strict: boolean;
12 }): TResult;
13 abstract resolve<TInput = any, TResult = TInput>(typeOrToken: Type<TInput> | string | symbol, contextId?: ContextId, options?: {
14 strict: boolean;
15 }): Promise<TResult>;
16 abstract create<T = any>(type: Type<T>): Promise<T>;
17 protected find<TInput = any, TResult = TInput>(typeOrToken: Type<TInput> | string | symbol): TResult;
18 protected instantiateClass<T = any>(type: Type<T>, moduleRef: Module): Promise<T>;
19 protected findInstanceByToken<TInput = any, TResult = TInput>(metatypeOrToken: Type<TInput> | string | symbol, contextModule: Module): TResult;
20 protected resolvePerContext<TInput = any, TResult = TInput>(typeOrToken: Type<TInput> | string | symbol, contextModule: Module, contextId: ContextId, options?: {
21 strict: boolean;
22 }): Promise<TResult>;
23}