import { Navigation, Segment } from "./Navigation"; import { URLRouter } from "./URLRouter"; import type { Path } from "./Navigation"; export type SegmentType = { "login": true; "session": string | boolean; "sso": string; "logout": true; "forced": true; "room": string; "rooms": string[]; "settings": true; "create-room": true; "empty-grid-tile": number; "lightbox": string; "right-panel": true; "details": true; "members": true; "member": string; "device-verification": string | boolean; "join-room": true; "oidc": { state: string; } & ({ success: true; code: string; } | { success: false; error: string; errorDescription: string | null; errorUri: string | null; }); }; export declare function createNavigation(): Navigation; export declare function createRouter({ history, navigation }: { history: History; navigation: Navigation; }): URLRouter; export declare function removeRoomFromPath(path: Path, roomId: string): Path | undefined; export declare function addPanelIfNeeded(navigation: Navigation, path: Path): Path; export declare function parseUrlPath(urlPath: string, currentNavPath: Path, defaultSessionId?: string): Segment[]; export declare function stringifyPath(path: Path): string; export declare function tests(): { "stringify grid url with focused empty tile": (assert: any) => void; "stringify grid url with focused room": (assert: any) => void; "stringify url with right-panel and details segment": (assert: any) => void; "Parse loginToken query parameter into SSO segment": (assert: any) => void; "parse grid url path with focused empty tile": (assert: any) => void; "parse grid url path with focused room": (assert: any) => void; "parse empty grid url": (assert: any) => void; "parse empty grid url with focus": (assert: any) => void; "parse open-room action replacing the current focused room": (assert: any) => void; "parse open-room action changing focus to an existing room": (assert: any) => void; "parse open-room action changing focus to an existing room with details open": (assert: any) => void; "open-room action should only copy over previous segments if there are no parts after open-room": (assert: any) => void; "parse open-room action setting a room in an empty tile": (assert: any) => void; "parse session url path without id": (assert: any) => void; "remove active room from grid path turns it into empty tile": (assert: any) => void; "remove inactive room from grid path": (assert: any) => void; "remove inactive room from grid path with empty tile": (assert: any) => void; "remove active room": (assert: any) => void; "remove inactive room doesn't do anything": (assert: any) => void; "Parse OIDC callback": (assert: any) => void; "Parse OIDC error": (assert: any) => void; "Parse OIDC error with description": (assert: any) => void; };