/** @format */ import { Middleware, MiddlewareObj } from './middleware'; import Context from './context'; declare type NonemptyReadonlyArray = readonly [T, ...T[]]; declare type RouteFn = (ctx: TContext) => { route: string; context?: Partial; state?: Partial; } | null; export declare class Router implements MiddlewareObj { private readonly routeFn; handlers: Map>; private otherwiseHandler; constructor(routeFn: RouteFn, handlers?: Map>); on(route: string, ...fns: NonemptyReadonlyArray>): this; otherwise(...fns: NonemptyReadonlyArray>): this; middleware(): import("./middleware").MiddlewareFn; } export {}; //# sourceMappingURL=router.d.ts.map