export interface DiffCacheSlot { cacheName: string; model: string; createdAt: number; } export declare function isDiffCacheEnabled(): boolean; export declare function shouldCacheDiff(diffLength: number): boolean; /** * Create a Gemini context cache containing the given diff text. * Returns the cache slot on success, or undefined on failure (logged). */ export declare function createDiffCache(diff: string, model?: string): Promise; /** * Returns the current diff cache slot if the model matches. * Falls back to undefined when: * - No cache exists * - The cache was created for a different model */ export declare function getCurrentDiffCache(model?: string): DiffCacheSlot | undefined; /** * Delete the current diff cache from the Gemini API and clear local state. * Best-effort: errors are logged but not thrown. */ export declare function deleteDiffCache(): Promise; /** Clear local cache state without calling the API. */ export declare function clearDiffCacheLocal(): void; /** Expose for testing. */ export declare function setDiffCacheForTesting(slot: DiffCacheSlot | undefined): void;