export declare const FRONTEGG_LOCATION_CHANGE: "frontegg_locationchange"; /** * Returns the full client-side URL (pathname + search + hash). * Used as the change-detection fingerprint so that URL changes * in any segment (path, query, hash) are captured. */ export declare function getCurrentUri(): string; /** * Monkey-patches `history.pushState` and `history.replaceState` to dispatch * a {@link FRONTEGG_LOCATION_CHANGE} event so components can react to * programmatic navigation without polling. * * @returns `true` if the patch was applied (or was already applied), * `false` if patching failed (e.g. non-writable History methods * in hardened/frozen environments). * * Idempotent across multiple bundle instances — patch state is stored on * `window` via `Symbol.for`, so even if several copies of this module are * loaded (microfrontends, version mismatches, local dev) the History API * is only patched once. * * Limitation: if another library overwrites `history.pushState`/`replaceState` * AFTER this patch runs, the custom event will stop firing. */ export declare function patchHistoryEvents(): boolean; /** * Subscribes `callback` to all location-change sources: * * 1. `popstate` — browser back/forward * 2. `hashchange` — hash fragment changes * 3. `frontegg_onRedirectTo_fired` — Frontegg internal redirects * 4. `FRONTEGG_LOCATION_CHANGE` — our patched pushState/replaceState * 5. Low-frequency polling fallback — only enabled when the History patch * fails (non-writable / hardened environment) * * Calls `callback` once after setup to catch navigations that occurred * between render and listener registration. * * @returns A cleanup function that removes all listeners and timers. */ export declare function subscribeToLocationChanges(callback: () => void): () => void;