/** * Navigation Detector Strategy * * Collects out/in navigation events and provides navigation pairs. * OUT and IN can arrive in any order. */ export type NavigationPair = { from: string; to: string; }; export interface NavigationDetector { /** * Trigger navigation event */ trigger(path: string, type: "out" | "in"): void; /** * Get navigation pair when ready * Returns null if a pending transition is cancelled. */ get(type: "out" | "in"): Promise; } export type CreateNavigationDetector = () => NavigationDetector; /** * Navigation detector * * OUT and IN can arrive in any order. * - Either OUT or IN can arrive first * - Both wait indefinitely for the other to complete the pair * - If a new path arrives, cancels the previous pending transition */ export declare function createNavigationDetector(): NavigationDetector; //# sourceMappingURL=navigation-detector-strategy.d.ts.map