import { Route } from '../../Routing'; import { Command, ReadOnlyProperty } from '../../WebRx'; import { BaseRoutableViewModel, HandlerRoutingStateChanged, HeaderCommandAction, HeaderMenu } from '../React'; export declare type ViewModelActivator = (state: {}) => any; export interface ViewModelActivatorMap { [key: string]: ViewModelActivator; } export interface MenuMap { [key: string]: HeaderMenu; } export declare class RoutingMap { private baseUri; private defaultIconName; static displayName: string; viewModelMap: ViewModelActivatorMap; menuMap: MenuMap; constructor(baseUri?: string, defaultIconName?: string); addRoute(menuName: string, path: string, name: string, activator: ViewModelActivator, uri?: string, iconName?: string): void; getUri(path: string, uri?: string): string; readonly menus: HeaderMenu[]; } export interface RoutedDemoComponent { componentRoute: string; component: {}; routingState: {}; } export interface ComponentDemoRoutingState { route: Partial; columns?: number; state: {}; } export declare class ComponentDemoViewModel extends BaseRoutableViewModel { protected readonly routeMap: RoutingMap; static displayName: string; private pageHeader; private readonly demoAlertItem; readonly columns: ReadOnlyProperty; readonly componentRoute: ReadOnlyProperty; readonly routedComponent: ReadOnlyProperty; readonly component: ReadOnlyProperty; readonly setComponent: Command; readonly setColumns: Command; readonly reRender: Command; constructor(routeMap: RoutingMap); private getComponentRoute(state); private getRoutedComponent(state); createRoutingState(changed: HandlerRoutingStateChanged): ComponentDemoRoutingState; applyRoutingState(state: ComponentDemoRoutingState): void; getSearch(): {} | undefined; getSidebarMenus(): HeaderMenu[]; getNavbarMenus(): HeaderMenu[]; getNavbarActions(): HeaderCommandAction[]; getHelpMenuItems(): HeaderCommandAction[]; getAdminMenuItems(): HeaderCommandAction[]; getUserMenuItems(): HeaderCommandAction[]; }