diff --git a/types/storage.d.ts b/types/storage.d.ts index 71271cf..fad95bb 100644 --- a/types/storage.d.ts +++ b/types/storage.d.ts @@ -1,4 +1,40 @@ export interface StorageSchema { 'app/lastRoute': string; 'app/theme': string; + 'storageCleaner/preferences': StorageCleanerPreferences; +} + +export interface StorageCleanerPreferences { + autoRefresh: boolean; + selectedTypes: StorageCleanerOptions; +} + +export interface StorageCleanerOptions { + localStorage: boolean; + sessionStorage: boolean; + indexedDB: boolean; + cookies: boolean; + cacheStorage: boolean; + serviceWorkers: boolean; +} + +export type StorageCleanResult = + | { + success: true; + count: number; + } + | { + success: false; + error: string; + }; + +export interface CleaningResult { + success: boolean; + error?: string; + localStorage?: StorageCleanResult; + sessionStorage?: StorageCleanResult; + indexedDB?: StorageCleanResult; + cookies?: StorageCleanResult; + cacheStorage?: StorageCleanResult; + serviceWorkers?: StorageCleanResult; }