export interface JsonStoreOptions { /** 延迟保存时间(毫秒),默认 1000ms */ saveDelay?: number; /** 是否创建备份,默认 true */ createBackup?: boolean; /** 最大备份数量,默认 3 */ maxBackups?: number; } export declare class JsonDataStore = Record> { private readonly filePath; private readonly defaultValue; private data; private saveTimer; private dirty; private readonly options; constructor(filePath: string, defaultValue: T, options?: JsonStoreOptions); /** * 加载数据 */ private load; /** * 获取所有数据 */ getAll(): T; /** * 重新从文件加载数据 */ reload(): void; /** * 设置所有数据 */ setAll(data: T): void; /** * 获取指定键的数据(适用于对象类型) */ get(key: K): T[K] | undefined; /** * 设置指定键的数据(适用于对象类型) */ set(key: K, value: T[K]): void; /** * 删除指定键的数据(适用于对象类型) */ delete(key: K): boolean; /** * 检查键是否存在 */ has(key: K): boolean; /** * 更新数据(合并) */ update(partial: Partial): void; /** * 标记数据已修改,启动延迟保存 */ private markDirty; /** * 立即保存数据到文件 */ flush(): void; /** * 创建备份 */ private createBackup; /** * 清理旧备份 */ private cleanOldBackups; /** * 释放资源 */ dispose(): void; }