database-builder
Version:
Library to assist in creating and maintaining SQL commands.
35 lines (34 loc) • 1.24 kB
TypeScript
import { ManagedTransaction } from "../transaction/managed-transaction";
export declare type DatabaseBase = DatabaseTransaction | DatabaseObject | DatabaseBaseTransaction;
export interface DatabaseBaseTransaction {
executeSql(sql: string, values: any): Promise<DatabaseResult>;
}
export interface DatabaseTransaction extends DatabaseBaseTransaction {
}
export interface DatabaseObject {
/**
* @param fn {any}
* @returns {Promise<any>}
*/
transaction(fn: (transaction: DatabaseBaseTransaction) => void): Promise<any>;
/**
* Execute SQL on the opened database. Note, you must call `create` first, and
* ensure it resolved and successfully opened the database.
*/
executeSql(statement: string, params: any): Promise<DatabaseResult>;
/**
* @param sqlStatements {string[] | string[][] | any[]}
* @returns {Promise<any>}
*/
sqlBatch(sqlStatements: Array<(string | string[] | any)>): Promise<any>;
managedTransaction(): ManagedTransaction;
}
export interface DatabaseResult {
rows: DatabaseRowList;
rowsAffected: number;
insertId: any;
}
export interface DatabaseRowList {
length: number;
item(index: number): any;
}