import type { CreateTabSessionSyncArgs, TabSessionEvent, TabSessionLogoutPublication, TabSessionPublication } from './types.js'; export type { CreateTabSessionSyncArgs, TabSessionEvent, TabSessionEventType, TabSessionLogoutPublication, TabSessionMessage, TabSessionPublication, TabSessionReconciliationOptions, TabSessionReconciliationResult, } from './types.js'; export { TAB_SESSION_EVENT_TYPES } from './types.js'; /** * Coordinates authentication session state across browser tabs. * * BroadcastChannel carries complete session events when available. Transient localStorage * notifications carry lifecycle metadata only and allow tabs to reconcile through * `reconcileSession` when BroadcastChannel is unavailable. Lifecycle ordering prevents older async * work from replacing a newer session state. */ export declare function createTabSessionSync({ getTokenExpirationMs, now, onSessionExpired, onSessionLoggedOut, onSessionRefreshed, onTabSessionUnauthenticated, reconcileSession, sourceTabID, }: CreateTabSessionSyncArgs): { broadcast: (event: TabSessionEvent) => TabSessionPublication; broadcastLogoutSettlement: (publication: TabSessionLogoutPublication) => void; cleanup: () => void; }; //# sourceMappingURL=index.d.ts.map