cs-element
Version:
Advanced reactive data management library with state machines, blueprints, persistence, compression, networking, and multithreading support
44 lines • 1.39 kB
TypeScript
import { ICSElement } from '../types/interfaces';
/**
* Адаптер для IndexedDB с использованием Dexie
*/
export declare class IndexedDBAdapter {
private dbName;
private db;
private isInitialized;
constructor(dbName?: string);
initialize(): Promise<void>;
save(elements: ICSElement[]): Promise<void>;
load(): Promise<ICSElement[]>;
loadById(id: string): Promise<ICSElement | null>;
delete(id: string): Promise<boolean>;
clear(): Promise<void>;
count(): Promise<number>;
exists(id: string): Promise<boolean>;
query(filter: {
name?: string;
index?: number;
limit?: number;
offset?: number;
}): Promise<ICSElement[]>;
updateMetadata(key: string, value: any): Promise<void>;
getMetadata(key: string): Promise<any>;
close(): Promise<void>;
private extractElementData;
private serializeElement;
private deserializeElement;
/**
* Получение информации о базе данных
*/
getInfo(): Promise<{
name: string;
version: number;
size: number;
elementCount: number;
}>;
/**
* Компактификация базы данных (очистка неиспользуемых данных)
*/
compact(): Promise<void>;
}
//# sourceMappingURL=IndexedDBAdapter.d.ts.map