/** * Vendor response cache — a small file-based TTL cache shared by vendor * clients so repeated lookups (e.g. category snapshots) avoid re-hitting * rate-limited public APIs. * * @module */ export interface CacheReadResult { value: T; storedAt: number; } export interface VendorCache { get(key: string): Promise | null>; set(key: string, value: T, ttlSeconds: number): Promise; } /** Build a stable cache key from an ordered list of key parts. */ export declare function cacheKey(parts: Array>): string; /** A cache that never stores or returns anything. Safe default for callers that opt out. */ export declare function createNoopVendorCache(): VendorCache; /** A file-based TTL cache rooted at `${cacheDir}/vendors`. Failures are swallowed — caching is best-effort. */ export declare function createFileVendorCache(cacheDir: string): VendorCache;