export declare const ROUTE_SELECTOR = "webui-route"; export interface RouteMeta { allowedQuery: string | undefined; keepAlive: boolean; } export declare function setRouteMeta(el: Element, meta: RouteMeta): void; export declare function getRouteMeta(el: Element): RouteMeta | undefined; export declare function hasState(state?: Record | null): state is Record; export declare function renderRoot(el: Element): Element | ShadowRoot; export declare function createRouteStub(entry: { path?: string; component?: string; exact?: boolean; }): HTMLElement; export declare function routePath(el: Element): string; export declare function isExact(el: Element): boolean; export declare function routeComponent(el: Element): string; export declare function getRouteParams(el: Element): Record; export declare const toKebab: (k: string) => string; export declare function parseQuery(requestPath: string): Record; export declare function routeAllowedQuery(el: Element): Set | null; export declare function filterQuery(query: Record, allowed: Set | null, routeParams?: Record): Record; export declare function activateRoute(el: HTMLElement, params: Record): void; export declare function deactivateRoute(el: HTMLElement): void; export declare function mountedRouteComponent(route: HTMLElement, expectedTag?: string): HTMLElement | null; export declare function clearRouteContent(route: HTMLElement): void; export declare function applyParamsAndQuery(component: Element, routeEl: HTMLElement, params: Record, query?: Record): void; export declare function applyParamsQueryState(component: Element, routeEl: HTMLElement, params: Record, state?: Record | null, query?: Record): void; export declare class WebUIRouteElement extends HTMLElement { get path(): string; get exact(): boolean; get component(): string; get isActive(): boolean; get keepAlive(): boolean; get params(): Record; get query(): string; }