import * as LambdaProxy from "./lambda-proxy"; import { Middleware, MiddlewareConstructor } from "./middleware"; import { Namespace, Routes } from "./namespace"; import { Route } from "./route"; export declare function flattenRoutes(routes: Routes): Routes[]; export declare function flattenRoute(parents: Routes, route: Route | Namespace): Routes[]; export declare class Router { private flattenRoutes; private operations; private middlewares; private middlewareMap; private routeTimeout; constructor(routes: Routes, options?: { timeout?: number; middlewares?: Middleware[]; }); findMiddleware(middlewareClass: MiddlewareConstructor): T | undefined; findRoute(operationId: string): Route | undefined; handler(): (event: LambdaProxy.Event, context: LambdaProxy.Context) => Promise; private readonly routeToPathRegexpCache; resolve(event: LambdaProxy.Event, options: { timeout: number; requestId?: string; }): Promise; private runRoute; }