feedbacker-react
Version:
A drop-in React feedback system for component-level feedback capture during development and design review
74 lines • 1.92 kB
TypeScript
/**
* StorageManager - Manages localStorage operations with version support,
* migration functionality, quota detection, corruption recovery, and fallback
*/
import { Feedback, Draft, StorageManager as IStorageManager, StorageInfo } from '../types';
export type { FeedbackStore, StorageInfo, StorageManager } from '../types';
export declare class LocalStorageManager implements IStorageManager {
private key;
private version;
private inMemoryFallback;
private useMemoryFallback;
constructor(key?: string);
/**
* Test if localStorage is available and functional
*/
private testStorageAvailability;
/**
* Save a feedback item
*/
save(feedback: Feedback): Promise<void>;
/**
* Save a draft feedback
*/
saveDraft(draft: Draft): Promise<void>;
/**
* Get all feedback items
*/
getAll(): Promise<Feedback[]>;
/**
* Get draft feedback
*/
getDraft(): Promise<Draft | null>;
/**
* Delete a specific feedback item
*/
delete(id: string): Promise<void>;
/**
* Clear all feedback data
*/
clear(): Promise<void>;
/**
* Get storage usage information
*/
getStorageInfo(): StorageInfo;
/**
* Cleanup old feedback items if storage is getting full
*/
cleanup(): Promise<void>;
/**
* Get the feedback store from storage
*/
private getStore;
/**
* Set the feedback store in storage
*/
private setStore;
/**
* Get default/empty store
*/
private getDefaultStore;
/**
* Handle corrupted data by clearing storage
*/
private handleCorruptedData;
/**
* Handle data migration
*/
private handleDataMigration;
}
/**
* Create a storage manager instance
*/
export declare const createStorageManager: (key?: string) => IStorageManager;
//# sourceMappingURL=StorageManager.d.ts.map