mirror of
https://github.com/nestjs/nest.git
synced 2026-02-21 23:11:44 +00:00
44 lines
985 B
TypeScript
44 lines
985 B
TypeScript
import { InjectionToken, Scope } from '@nestjs/common';
|
|
|
|
export type ModuleNode = {
|
|
metadata: {
|
|
type: 'module';
|
|
global: boolean;
|
|
dynamic: boolean;
|
|
};
|
|
};
|
|
|
|
export type ClassNode = {
|
|
parent: string;
|
|
metadata: {
|
|
type: 'provider' | 'controller' | 'middleware' | 'injectable';
|
|
sourceModuleName: string;
|
|
durable: boolean;
|
|
static: boolean;
|
|
transient: boolean;
|
|
scope: Scope;
|
|
token: InjectionToken;
|
|
/**
|
|
* Enhancers metadata collection
|
|
*/
|
|
enhancers?: Array<{ id: string } | { name: string; methodKey?: string }>;
|
|
/**
|
|
* Order in which globally registered enhancers are applied
|
|
*/
|
|
enhancerRegistrationOrder?: number;
|
|
/**
|
|
* If true, node is a globally registered enhancer
|
|
*/
|
|
global?: boolean;
|
|
/**
|
|
* If true, indicates that this node represents an internal provider
|
|
*/
|
|
internal?: boolean;
|
|
};
|
|
};
|
|
|
|
export type Node = {
|
|
id: string;
|
|
label: string;
|
|
} & (ClassNode | ModuleNode);
|