1 | import { Provider, Scope, Type } from '@nestjs/common';
|
2 | import { Module } from './module';
|
3 | export declare const INSTANCE_METADATA_SYMBOL: unique symbol;
|
4 | export declare const INSTANCE_ID_SYMBOL: unique symbol;
|
5 | export interface ContextId {
|
6 | readonly id: number;
|
7 | }
|
8 | export interface InstancePerContext<T> {
|
9 | instance: T;
|
10 | isResolved?: boolean;
|
11 | isPending?: boolean;
|
12 | donePromise?: Promise<void>;
|
13 | }
|
14 | export interface PropertyMetadata {
|
15 | key: string;
|
16 | wrapper: InstanceWrapper;
|
17 | }
|
18 | export declare class InstanceWrapper<T = any> {
|
19 | readonly name: any;
|
20 | readonly async?: boolean;
|
21 | readonly host?: Module;
|
22 | readonly scope?: Scope;
|
23 | readonly isAlias: boolean;
|
24 | metatype: Type<T> | Function;
|
25 | inject?: (string | symbol | Function | Type<any>)[];
|
26 | forwardRef?: boolean;
|
27 | private readonly values;
|
28 | private readonly [INSTANCE_METADATA_SYMBOL];
|
29 | private readonly [INSTANCE_ID_SYMBOL];
|
30 | private transientMap?;
|
31 | private isTreeStatic;
|
32 | constructor(metadata?: Partial<InstanceWrapper<T>> & Partial<InstancePerContext<T>>);
|
33 | readonly id: string;
|
34 | instance: T;
|
35 | readonly isNotMetatype: boolean;
|
36 | readonly isTransient: boolean;
|
37 | getInstanceByContextId(contextId: ContextId, inquirerId?: string): InstancePerContext<T>;
|
38 | getInstanceByInquirerId(contextId: ContextId, inquirerId: string): InstancePerContext<T>;
|
39 | setInstanceByContextId(contextId: ContextId, value: InstancePerContext<T>, inquirerId?: string): void;
|
40 | setInstanceByInquirerId(contextId: ContextId, inquirerId: string, value: InstancePerContext<T>): void;
|
41 | addCtorMetadata(index: number, wrapper: InstanceWrapper): void;
|
42 | getCtorMetadata(): InstanceWrapper[];
|
43 | addPropertiesMetadata(key: string, wrapper: InstanceWrapper): void;
|
44 | getPropertiesMetadata(): PropertyMetadata[];
|
45 | addEnhancerMetadata(wrapper: InstanceWrapper): void;
|
46 | getEnhancersMetadata(): InstanceWrapper[];
|
47 | isDependencyTreeStatic(lookupRegistry?: string[]): boolean;
|
48 | cloneStaticInstance(contextId: ContextId): InstancePerContext<T>;
|
49 | cloneTransientInstance(contextId: ContextId, inquirerId: string): InstancePerContext<T>;
|
50 | createPrototype(contextId: ContextId): any;
|
51 | isInRequestScope(contextId: ContextId, inquirer?: InstanceWrapper | undefined): boolean;
|
52 | isLazyTransient(contextId: ContextId, inquirer: InstanceWrapper | undefined): boolean;
|
53 | isExplicitlyRequested(contextId: ContextId, inquirer?: InstanceWrapper): boolean;
|
54 | isStatic(contextId: ContextId, inquirer: InstanceWrapper | undefined): boolean;
|
55 | getStaticTransientInstances(): InstancePerContext<T>[];
|
56 | mergeWith(provider: Provider): void;
|
57 | private isNewable;
|
58 | private isWrapperListStatic;
|
59 | private initialize;
|
60 | }
|