@pulzar/core
Version:
Next-generation Node.js framework for ultra-fast web applications with zero-reflection DI, GraphQL, WebSockets, events, and edge runtime support
21 lines • 853 B
TypeScript
import { Token } from "../di/tokens";
export interface ModuleDefinition {
name: string;
providers: Array<new (...args: any[]) => any>;
imports?: Array<new (...args: any[]) => any>;
exports?: Array<new (...args: any[]) => any>;
controllers?: Array<new (...args: any[]) => any>;
routes?: string[];
}
export interface ModuleMetadata {
name: string;
providers: Map<Token, any>;
imports: Set<string>;
exports: Set<Token>;
controllers: Set<string>;
routes: Set<string>;
}
export declare function defineModule(definition: ModuleDefinition): ModuleDefinition;
export declare function createModuleMetadata(definition: ModuleDefinition): ModuleMetadata;
export declare function Module(definition: Partial<ModuleDefinition>): (target: new (...args: any[]) => any) => void;
//# sourceMappingURL=define-module.d.ts.map