export declare type SqliteParam = null | number | string | ArrayBuffer | any; export declare type SqliteParams = SqliteParam | SqliteParam[]; export interface SqliteRow { [name: string]: SqliteParam; } export declare type Db = any; export declare type SqliteUpgrade = (db: Db) => void; export interface SQLiteDatabase { getVersion(): Promise; setVersion(version: number): Promise; isOpen: boolean; close(): Promise; select(query: string, params?: SqliteParams): Promise; selectArray(query: string, params?: SqliteParams): Promise; get(query: string, params?: SqliteParams): Promise; getArray(query: string, params?: SqliteParams): Promise; execute(query: string, params?: SqliteParams): Promise; transaction(action: (cancel?: () => void) => Promise): Promise; each(query: string, params: SqliteParams, callback: (error: Error, result: SqliteRow) => void, complete: (error: Error, count: number) => void): Promise; } export declare function isNothing(x: any): boolean; export declare function arrayToNativeByteArray(val: any): any; export declare function paramToString(p: SqliteParam): any; export declare function paramsToStringArray(params?: SqliteParams): any[]; export declare function throwError(msg: string): void; export declare function openOrCreate(filePath: string, flags?: number): SQLiteDatabase; export declare function deleteDatabase(filePath: string): boolean;