///
import { TableDefinition } from "backend-plus";
export declare type Key = string[];
declare type DetectFeatures = {
needToCopyResults: boolean;
};
export declare var detectedFeatures: DetectFeatures;
export declare class WebsqlDb {
name: string;
private db;
private wait4detectedFeatures;
constructor(name: string);
private detectFeatures;
private generateSqlForTableDef;
static deleteDatabase(name: string): Promise;
executeQuery(sql: string, params: null | {}[]): Promise;
executeQueries(sql: string, data: {}[]): Promise;
registerStructure(tableDef: TableDefinition): Promise;
getStructure(tableName: string): Promise;
existsStructure(tableName: string): Promise;
private convertSQLResultSetRowListToArray;
private fieldIsNotSupported;
private getNotSupportedFields;
private convertNotSupportedFields;
getOneIfExists(tableName: string, key: Key): Promise;
getOne(tableName: string, key: Key, ignoreDetectFeatures?: boolean): Promise;
getChild(tableName: string, parentKey: Key): Promise;
getAll(tableName: string): Promise;
getAllStructures(): Promise;
isEmpty(tableName: string): Promise;
putOne(tableName: string, element: T): Promise;
putMany(tableName: string, elements: T[]): Promise;
close(): Promise;
clear(tableName: string): Promise;
}
export {};