database-builder
Version:
Library to assist in creating and maintaining SQL commands.
37 lines (36 loc) • 2.08 kB
TypeScript
import { DatabaseConfig } from "../definitions/database-config";
import { DatabaseResult } from "../definitions/database-definition";
import { WebSqlInterface, WebSqlObjectInterface, WebSqlTransactionInterface } from "../definitions/websql-interface";
import { BaseDatabaseAdapter } from "./base-database.adapter";
/**
* WARNING: Only for test app
* Because WebSQL will no longer be implemented:
* https://dev.w3.org/html5/webdatabase/
*
* Adapter for https://dev.w3.org/html5/webdatabase/
*
* Example usage:
*
* `new WebSqlDatabaseAdapter(this);`
*
* PS: 'this' is instance Browser, with method 'openDatabase'
* @export
* @class WebSqlDatabaseAdapter
* @implements {DatabaseCreatorContract}
*/
export declare class WebSqlDatabaseAdapter extends BaseDatabaseAdapter<WebSqlObjectInterface> {
private _creator;
constructor(_creator: WebSqlInterface);
protected createDatabaseNative(config: DatabaseConfig): Promise<WebSqlObjectInterface>;
protected convertToExecuteSql(databaseNative: WebSqlObjectInterface): (sql: string, values: any) => Promise<DatabaseResult>;
protected convertToTransaction(databaseNative: WebSqlObjectInterface): (fn: (transaction: WebSqlTransactionInterface) => void) => Promise<any>;
protected convertToSqlBatch(databaseNative: WebSqlObjectInterface): (sqlStatements: Array<(string | string[] | any)>) => Promise<DatabaseResult[]>;
protected executeSql(transaction: WebSqlTransactionInterface, sql: string, values: any): Promise<DatabaseResult>;
protected ignoreExecuteSql(sql: string, values: any): Promise<DatabaseResult>;
protected batch(database: WebSqlObjectInterface, sqlStatements: Array<string | string[] | any>, runInTransaction: boolean): Promise<DatabaseResult[]>;
protected executeBatchs(databaseNative: WebSqlObjectInterface, batchs: Array<{
sql: string;
params: any[];
}>, runInTransaction: boolean): Promise<DatabaseResult[]>;
protected transaction(databaseNative: WebSqlObjectInterface): Promise<WebSqlTransactionInterface>;
}