file-routing-expressjs
Version:
A dependency-free, flexible, system-based file routing for Express.
30 lines (27 loc) • 954 B
text/typescript
import { FileBasedRoutingOptions } from '../types/index.mjs';
import { RouteEndpoints } from '../types/routing.mjs';
import 'express';
import '../guards/exception.mjs';
import '../types/plugins.mjs';
import '../types/common.mjs';
import '../types/exceptions.mjs';
declare class FileBasedRouting {
readonly base: string;
readonly endpoints: RouteEndpoints;
private readonly endpointsQueue;
private _app;
private readonly errorGuard;
private readonly plugins;
private readonly collectEndpoints;
constructor({ app, target, errorGuard, plugins, collectEndpoints }: FileBasedRoutingOptions);
createRoutes(): Promise<void>;
private mapRoutes;
private handleDir;
private handleFile;
private pushMiddlewares;
private bindPlugins;
private isRequestHandlerOrThrow;
private buildPluginMap;
static collectRoutes(target: string): Promise<RouteEndpoints>;
}
export { FileBasedRouting as default };