import { SessionUiState } from '../../types/session.js'; interface SessionSnapshotLike { error?: unknown; session?: unknown; status?: string; } interface SessionHookLike { data?: unknown; error?: unknown; isAuthenticated?: boolean; isPending?: boolean; organization?: { activeId?: string | null; } | null; organizationId?: string | null; session?: unknown; user?: unknown; } export declare function isAuthUnavailableError(value: unknown): boolean; export declare const SSR_AUTH_SESSION_SNAPSHOT: SessionSnapshotLike; /** * Live store snapshots that may replace server-known identity. * A user-less `loading` frame is the browser client's in-flight get-session * and must not beat `initialAuthState` during hydration. */ export declare function isUsableAuthSessionStoreSnapshot(snapshot: SessionSnapshotLike | null | undefined): snapshot is SessionSnapshotLike; export declare function resolveProjectedAuthSessionSnapshot(store: SessionSnapshotLike | null | undefined, initialSnapshot: SessionSnapshotLike | null | undefined): SessionSnapshotLike; /** * Map Athena session snapshot + SDK hook result into SessionUiState. * Snapshot status is the identity SSOT when it is a known discriminant. */ export declare function projectSessionUiState(hook: SessionHookLike, snapshot?: SessionSnapshotLike | null): SessionUiState; export declare function readAuthSessionSnapshot(client: unknown): SessionSnapshotLike | null; export declare function subscribeAuthSession(client: unknown, onStoreChange: () => void): () => void; export {};