file-routing-expressjs
Version:
A dependency-free, flexible, system-based file routing for Express.
30 lines (27 loc) • 948 B
TypeScript
import { FileBasedRoutingOptions } from '../types/index.js';
import { RouteEndpoints } from '../types/routing.js';
import 'express';
import '../guards/exception.js';
import '../types/plugins.js';
import '../types/common.js';
import '../types/exceptions.js';
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 };