/** * Unified storage adapters for web platform storage APIs. * Provides a consistent, promise-based interface with predictable errors. */ /** * Common interface for all storage adapters. * All methods return promises for a unified async API. */ export interface StorageAdapter { /** * Retrieve a value by key. * @param key - The storage key * @returns The stored value or null if not found */ get(key: string): Promise; /** * Store a value by key. * @param key - The storage key * @param value - The value to store */ set(key: string, value: T): Promise; /** * Remove a value by key. * @param key - The storage key */ remove(key: string): Promise; /** * Clear all stored values. */ clear(): Promise; /** * Get all storage keys. * @returns Array of all keys */ keys(): Promise; } /** * IndexedDB configuration options. */ export interface IndexedDBOptions { /** Database name */ name: string; /** Object store name */ store: string; /** Database version (optional) */ version?: number; } /** * Storage factory providing access to different storage adapters. */ export declare const storage: { /** * Create a localStorage adapter. * @returns StorageAdapter wrapping localStorage */ local(): StorageAdapter; /** * Create a sessionStorage adapter. * @returns StorageAdapter wrapping sessionStorage */ session(): StorageAdapter; /** * Create an IndexedDB adapter with key-value interface. * @param options - Database and store configuration * @returns StorageAdapter wrapping IndexedDB */ indexedDB(options: IndexedDBOptions): StorageAdapter; }; //# sourceMappingURL=storage.d.ts.map