import type { BridgeClientSession, BridgeConfig } from "./types.js"; import type { JwtClaims } from "./jwt.js"; export declare const BRIDGE_ACCESS_TOKEN_SECONDS: number; export declare const BRIDGE_REFRESH_TOKEN_SECONDS: number; export interface BridgeAuthBundle { sessionId: string; accessToken: string; accessTokenExpiresAt: string; refreshToken: string; refreshTokenExpiresAt: string; } export interface BridgeAuthMeta { ip?: string; userAgent?: string; } type AuthenticatedBridgeClaims = { kind: "legacy" | "bootstrap"; claims: JwtClaims; } | { kind: "access"; claims: JwtClaims; session: BridgeClientSession; }; export declare function accessTokenNeedsRefresh(expiresAt?: string | null): boolean; export declare function purgeExpiredBridgeClientSessions(config: BridgeConfig): boolean; export declare function createBridgeClientSession(config: BridgeConfig, meta?: BridgeAuthMeta): BridgeAuthBundle; export declare function refreshBridgeClientSession(config: BridgeConfig, refreshToken: string, meta?: BridgeAuthMeta): BridgeAuthBundle | null; export declare function revokeBridgeClientSession(config: BridgeConfig, sessionId: string): boolean; export declare function authenticateBridgeToken(config: BridgeConfig, token: string): AuthenticatedBridgeClaims | null; export {};