/**
 * Tauri API Cache
 *
 * localStorage-backed caching for API responses when running inside Tauri.
 * In offline mode, cached responses are returned instead of making network requests.
 */
export declare function isTauriOfflineMode(): boolean;
export declare function getCachedApiResponse<T>(endpoint: string, params?: Record<string, unknown>): T | null;
export declare function setCachedApiResponse<T>(endpoint: string, data: T, params?: Record<string, unknown>, ttlMs?: number): void;
export declare function clearApiCache(): void;
export declare function fetchWithCache<T>(endpoint: string, fetchFn: () => Promise<T>, params?: Record<string, unknown>, ttlMs?: number): Promise<T>;
export declare const CacheKeys: {
    readonly mentorSettings: (org: string, mentor: string, userId: string) => string;
    readonly mentorPublicSettings: (org: string, mentor: string) => string;
    readonly tenantMetadata: (org: string) => string;
    readonly userTenants: (userId: string) => string;
    readonly sessionChats: (sessionId: string) => string;
};
export declare function preCacheMentorData(org: string, mentorId: string, userId: string, fetchMentorSettings: () => Promise<unknown>, fetchTenantMetadata: () => Promise<unknown>): Promise<void>;
