import { eventStream } from 'crayon-kit'; import { History } from '../history'; import { RouteMap } from '../route-map'; import { Location } from '../locator'; import { handlerFunc, RouterEvent } from './types'; import { Context } from './context'; import { Group } from "./group"; export declare class Router { id: string; location: Location; routeMap: RouteMap; history: History; events: eventStream.Beacon; currentContext: Context | undefined; private isLoading; private state; private $history; private $reqs; loads: number; constructor(id: string, location: Location, routeMap: RouteMap, history: History, events: eventStream.Beacon); destroy(): void; path(path: string, ...handlers: handlerFunc[]): void; use(target: handlerFunc | Group): void; navigate(path: string): Promise; back(): Promise; load(): Promise; private onHistoryEvent; private useGroup; private emitEvent; private runHandlers; private onRedirect; private digest; private onRequestUpdate; }