import type { IndexCacheKey } from './cache-keys.js'; export type IndexInvalidationMode = 'incremental' | 'full'; export interface IndexInvalidation { invalidatedAt: string; mode: IndexInvalidationMode; } export interface IndexBlobMeta { syncedAt: string; schemaVersion: number; assetCount: number; referenceCount: number; } export interface IndexCacheStore { getInvalidation(key: IndexCacheKey): Promise; setInvalidation(key: IndexCacheKey, inv: IndexInvalidation): Promise; clearInvalidation(key: IndexCacheKey): Promise; getBlob(key: IndexCacheKey): Promise<{ meta: IndexBlobMeta; data: Uint8Array; } | null>; putBlob(key: IndexCacheKey, meta: IndexBlobMeta, data: Uint8Array): Promise; deleteBlob(key: IndexCacheKey): Promise; tryAcquireSyncLock(key: IndexCacheKey, holderId: string, ttlSeconds: number): Promise; releaseSyncLock(key: IndexCacheKey, holderId: string): Promise; } declare const INDEX_BLOB_TTL_SECONDS: number; export { INDEX_BLOB_TTL_SECONDS }; export declare function getIndexCacheStore(): IndexCacheStore; /** @internal Reset singleton between tests. */ export declare function resetDefaultIndexCacheStoreForTests(): void; //# sourceMappingURL=cache-store.d.ts.map