import { Command, ReadOnlyProperty } from '../../WebRx'; import { HeaderCommandAction, HeaderMenu } from './Actions'; import { BaseViewModel } from './BaseViewModel'; import { HandlerRoutingStateChanged, RoutingStateHandler } from './Interfaces'; export declare function isRoutableViewModel(value: any): value is BaseRoutableViewModel; export interface RoutingBreadcrumb { key: any; content: string; href?: string; target?: string; title?: string; tooltip?: any; } export declare abstract class BaseRoutableViewModel extends BaseViewModel implements RoutingStateHandler { static displayName: string; protected readonly updateDocumentTitle: Command; protected readonly updateRoutingBreadcrumbs: Command; readonly documentTitle: ReadOnlyProperty; readonly breadcrumbs: ReadOnlyProperty; constructor(); isRoutingStateHandler(): boolean; abstract createRoutingState(changed: HandlerRoutingStateChanged): T; abstract applyRoutingState(state: T): void; isRoutableViewModel(): boolean; getRoutingKey(): string; getSearch(): {} | undefined; getSidebarMenus(): HeaderMenu[]; getNavbarMenus(): HeaderMenu[]; getNavbarActions(): HeaderCommandAction[]; getHelpMenuItems(): HeaderCommandAction[]; getAdminMenuItems(): HeaderCommandAction[]; getUserMenuItems(): HeaderCommandAction[]; }