import { RouteMap, KazeHttpMethod, KazeRouteHandler, DynamicRouteMap } from "./kaze";
import { DynamicRoute, Router } from "./kaze-router";
export declare class MapRouter extends Router {
    #private;
    constructor();
    get(route: string, ...handlers: KazeRouteHandler[]): void;
    post(route: string, ...handlers: KazeRouteHandler[]): void;
    put(route: string, ...handlers: KazeRouteHandler[]): void;
    delete(route: string, ...handlers: KazeRouteHandler[]): void;
    patch(route: string, ...handlers: KazeRouteHandler[]): void;
    head(route: string, ...handlers: KazeRouteHandler[]): void;
    options(route: string, ...handlers: KazeRouteHandler[]): void;
    trace(route: string, ...handlers: KazeRouteHandler[]): void;
    connect(route: string, ...handlers: KazeRouteHandler[]): void;
    link(route: string, ...handlers: KazeRouteHandler[]): void;
    unlink(route: string, ...handlers: KazeRouteHandler[]): void;
    all(route: string, ...handlers: KazeRouteHandler[]): void;
    middlewares(...handlers: KazeRouteHandler[]): void;
    fetchMiddlewares(): KazeRouteHandler[];
    fetchRoutes(): Map<KazeHttpMethod, RouteMap>;
    fetchDynamicRoutes(): Map<KazeHttpMethod, DynamicRouteMap>;
    fetchHandlers(route: string, reqMethod: KazeHttpMethod): Promise<KazeRouteHandler[] | DynamicRoute | undefined>;
}
