UNPKG

sqlitekv

Version:

SQLiteKV is a key-value store built on top of SQLite3. This project allows you to perform basic key-value operations with the additional power of SQLite3, making it suitable for applications requiring persistent, lightweight, and reliable storage.

37 lines (36 loc) 1.41 kB
import { ValueType, JournalMode, SQLiteMode } from "./types"; export declare class SQLiteDatabase { private dbFilename; private db; private tableName; private autoCommit; private inTransaction; private dbPath; private journalMode; private sqliteMode; private logQueries?; constructor(dbFilename?: string, tableName?: string, autoCommit?: boolean, journalMode?: JournalMode, sqliteMode?: SQLiteMode, logQueries?: boolean); private getDbPathByMode; private logQuery; init(): Promise<void>; private createTable; setJournalMode(mode: JournalMode): Promise<void>; getDbPath(): string; getDbFilename(): string; getTableName(): string; getJournalMode(): Promise<JournalMode>; set(key: string, value: ValueType, oneTime?: boolean): Promise<boolean>; setex(key: string, seconds: number, value: ValueType, oneTime?: boolean): Promise<boolean>; private setWithExpiry; get(key: string): Promise<ValueType | null>; delete(key: string): Promise<boolean>; exists(key: string): Promise<boolean>; keys(pattern?: string): Promise<string[]>; convertToJson(jsonFilePath?: string): Promise<boolean>; close(): Promise<void>; private ensureDirectoryExists; beginTransaction(): Promise<void>; commitTransaction(): Promise<void>; ttl(key: string): Promise<number | null>; clear(): Promise<void>; }