export interface RouterOptions { baseUrl?: string; baseTitle?: string; } export interface Route { name: string; title?: string; url: string; render: (key: string) => any; } export interface RouteUpdate { key: string; fromRoute?: Route; toRoute: Route; } declare class Router { private appRoutes; private baseUrl; private baseTitle; private listeners; constructor(routes: Route[], opts?: RouterOptions); get base(): string; get currentRoute(): Route; subscribe(fn: (update: RouteUpdate) => void): () => void; push(location: string): void; guardPath(path: string, stripQuery?: boolean): string; setPageTitle(title?: string): void; private listenToPopState; private publishChange; } export default Router;