@browser-storage/websql-driver
Version:
Web SQL driver for BrowserStorage
32 lines (31 loc) • 1.18 kB
TypeScript
/// <reference types="websql" />
import { BrowserStorageOptions, Driver } from '@browser-storage/typings';
export interface WebsqlDriverOptions {
description?: string;
size: number;
}
export declare class WebsqlDriver implements Driver {
private readonly _serializer;
private readonly description;
private readonly size;
private readonly _ready;
private options;
private db;
constructor({ description, size }: WebsqlDriverOptions);
readonly isSupported: boolean;
clear(): Promise<void>;
destroy(): Promise<void>;
getItem<T>(key: string): Promise<T>;
hasItem(key: string): Promise<boolean>;
init(dbOptions: BrowserStorageOptions): Promise<void>;
iterate<T>(iterator: (key: string, value: T, index: number) => any): Promise<void>;
key(index: number): Promise<string>;
keys(): Promise<string[]>;
length(): Promise<number>;
ready(): Promise<boolean>;
removeItem(key: string): Promise<void>;
setItem<T>(key: string, item: T): Promise<T>;
_transaction(): Promise<SQLTransaction>;
_executeSql(sql: string, args?: Array<string | number>): Promise<SQLResultSet>;
private _createDB;
}