ts-api-core
Version:
Nodejs api framework core
37 lines (36 loc) • 1.38 kB
TypeScript
import { Express } from "express-serve-static-core";
import { ClassType } from "../context/base.object";
import { SaveLogger } from './logger';
import { RouteConfig } from './route.config';
import { RequestData } from './reqest.data';
import { BaseWrapper } from '../wrapper/base.wrapper';
import { GroupRoutesItem } from '../model/group.routes.item';
/**
* 自动路由注册服务
*/
export declare class RoutesRegister {
private readonly app;
private readonly routeClass;
private readonly routes;
private readonly wrappers?;
private readonly logger?;
private static _router?;
get router(): any;
private readonly groupMap;
private readonly groupRoutes;
private readonly basePaths;
getRoutes(): RequestData[];
getGroupRoutes(): Array<GroupRoutesItem>;
getBaseUrl(route: RequestData): string;
/** 获取自定义的 wrapper */
getCustomWrapper(name: string): ClassType<BaseWrapper<any>> | undefined;
/**
* @param routes 需要自动注册路由信息数组
*/
constructor(app: Express, routeClass: ClassType<RouteConfig>[], routes?: RequestData[], wrappers?: Map<string, ClassType<BaseWrapper<any>>> | undefined, logger?: SaveLogger | undefined);
private getController;
/** 注册路由 */
register(): void;
/** 注册 */
private registerRoute;
}