@glandjs/core
Version:
Glands is a web framework for Node.js (@core)
28 lines (27 loc) • 811 B
TypeScript
import type { ModulesContainer } from './container';
import type { Constructor, Logger } from '@medishn/toolkit';
export interface RouteMetadata<T = any> {
method: string;
route: string;
controller: {
path: string;
instance: T;
methodName: string;
target: Function;
};
}
export interface ChannelMetadata<T = any> {
instance: T;
token: Constructor<T>;
event: string;
namespace: string;
target: Function;
}
export declare class Explorer {
private readonly metadataScanner;
private readonly discoveryService;
private readonly logger?;
constructor(modulesContainer: ModulesContainer, logger?: Logger);
exploreControllers<T extends object>(): RouteMetadata<T>[];
exploreChannels<T extends object>(): ChannelMetadata<T>[];
}