import { NextFunction, Request, Response } from "express"; import { SuperRoute } from "./SuperRoute"; /** * http error generated by the route */ export interface RouteErrorI extends Error { statusCode: number; redirect: string | false; logError: boolean; response?: string; route?: string; requestPath?: string; [key: string]: any; } /** * A SuperRoute error with additional data */ export declare class RouteError extends Error implements RouteErrorI { logError: boolean; redirect: string | false; statusCode: number; response?: string; route?: string; requestPath?: string; [key: string]: any; static FromError(err: Error, statusCode: number, redirect?: string | null | false, log?: boolean): RouteError; /** * Constructs a RouteError instance * @constructor * @param message - Error message * @param statusCode - Http status code * @param redirect - tells the error handler if it should redirect the request * @param log - tells the error handler to log the error - use it to override the default logging behaviour for specific errors when needed. */ constructor(message: string, statusCode: number, redirect?: string | null | false, log?: boolean); /** * attach a custom response to the RouteError object * @param response */ respondWith(response: string): this; handle(route: SuperRoute | any, req: Request, res: Response, next: NextFunction): void; } //# sourceMappingURL=RouteError.d.ts.map