import type { FormFactor, PlatformKind, Scheme } from "../types.js"; export interface RouteAxes { target: string; route: string; state: string; platform: PlatformKind; formFactor: FormFactor; scheme: Scheme; } /** The exact route spelling used everywhere after config resolution. */ export declare function normalizeRoute(route: string): string; export declare function duplicateNormalizedRoute(routes: readonly (string | { path: string; })[]): { index: number; prior: number; route: string; } | null; /** The lossy token written by Lookout releases before canonical route ids. */ export declare function legacyRouteSlug(route: string): string; /** * A bounded, filesystem-safe token derived from every route Lookout accepts. * Existing lowercase one-segment routes keep their old token. Root * also keeps `root`; `/root` enters the reserved digest namespace so the two * can never share pixels again. */ export declare function routeToken(route: string): string; export declare function canonicalShotId(a: RouteAxes): string; export declare function legacyShotId(a: RouteAxes): string; export declare function canonicalShotRelPath(a: RouteAxes): string; export declare function legacyShotRelPath(a: RouteAxes): string;