/** * Blob cache for DocShell * * Content-addressed storage for converted document text * Layout: * - blobs/.txt - converted content * - meta/.json - extraction metadata */ import type { ConversionResult, DocShellConfig, CacheKey } from '../types/index.js'; export interface BlobCacheEntry { blobPath: string; metaPath: string; text: string; metadata: ConversionResult['metadata']; } export declare class BlobCache { private cacheDir; private blobDir; private metaDir; constructor(config: DocShellConfig); /** * Ensure cache directories exist */ ensureDirs(): void; /** * Get paths for a cache key */ private getPaths; /** * Check if a blob exists in cache */ has(key: CacheKey): boolean; /** * Get a blob from cache */ get(key: CacheKey): BlobCacheEntry | null; /** * Store a blob in cache */ set(key: CacheKey, result: ConversionResult): BlobCacheEntry; /** * Clear all cached blobs */ clear(): void; }