jsonion
Version:
A lightweight JSON file-based database with nested data access and manipulation capabilities.
38 lines • 1.24 kB
TypeScript
import { HarmDBData, HarmDBOptions } from "./types.js";
declare class db {
private filePath;
private data;
private baseDir?;
private isDirty;
private saveTimeout?;
private readonly AUTO_SAVE_DELAY;
private allowedOperations;
constructor(options: HarmDBOptions | string, baseDir?: string);
private fileExists;
private validateOperation;
private load;
private scheduleSave;
private performSave;
flush(): void;
reload(): void;
set(key: string, value: any): void;
get<T = any>(key: string): T | undefined;
del(key: string): boolean;
has(key: string): boolean;
keys(): string[];
clear(): void;
all(): HarmDBData;
update(key: string, newValue: any): boolean;
find(predicate: (value: any, key?: string) => boolean): any[];
findEntries(predicate: (value: any, key?: string) => boolean): Array<[string, any]>;
count(): number;
export(): string;
import(jsonData: object | string, merge?: boolean): void;
size(): number;
hasAll(...keys: string[]): boolean;
getMany<T = any>(...keys: string[]): (T | undefined)[];
deleteMany(...keys: string[]): number;
destroy(): void;
}
export { db };
//# sourceMappingURL=db.d.ts.map