/// import { HTTP_METHOD, RouteMiddlewareCallback } from './contracts.js'; export declare class HttpRoute { readonly methods: HTTP_METHOD[] | '*'; protected handler: T; private metadata; protected _static: boolean; protected regex: RegExp | null; protected paramKeys: Array; protected _name: string; protected path: string; protected middlewares: RouteMiddlewareCallback[]; protected composedHandler: any; constructor(methods: HTTP_METHOD[] | '*', path: string, handler: T, metadata?: NodeJS.Dict); getPath(): string; setPath(path: string): void; getHandler(): T; /** * change route handler * @param handler */ setHandler(handler: T): void; get name(): string; as(name: string): void; protected setPathParamKeys(): void; protected setRegex(): void; /** * match route method * @param method * @returns {boolean} */ matchMethod(method: HTTP_METHOD): boolean; /** * match route path * @param path * @param params * @returns {boolean} */ match(path: string, params?: NodeJS.Dict): boolean; clone(): HttpRoute; /** * get metadata * @param meta * @returns {NodeJS.Dict} */ meta(meta?: NodeJS.Dict): NodeJS.Dict; /** * check if route is static route * @returns {boolean} */ isStatic(): boolean; middleware(...middlewares: RouteMiddlewareCallback[]): this; getComposedHandler(): T; }