export interface KeyValueCache { get(key: string): Promise; set(key: string, value: V, options?: KeyValueCacheSetOptions): Promise; delete(key: string): Promise; } export interface KeyValueCacheSetOptions { /** * Specified in **seconds**, the time-to-live (TTL) value limits the lifespan * of the data being stored in the cache. */ ttl?: number | null; }