UNPKG

declarations

Version:

[![npm version](https://badge.fury.io/js/declarations.svg)](https://www.npmjs.com/package/declarations)

103 lines (94 loc) 3.36 kB
// Type definitions for Apache Cordova WebSQL plugin. // Project: https://github.com/MSOpenTech/cordova-plugin-websql // Definitions by: Microsoft Open Technologies, Inc. <http://msopentech.com> // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // // Copyright (c) Microsoft Open Technologies, Inc. // Licensed under the MIT license. interface Window { /** * Creates (opens, if exist) database with supplied parameters. * @param name Database name * @param version Database version * @param displayname Database display name * @param size Size, in bytes * @param creationCallback Callback, that executed on database creation. Accepts Database object. */ openDatabase(name: string, version: string, displayname: string, size: number, creationCallback?: (database: Database) => void): Database; } interface Database { /** * Starts new transaction. * @param callback Function, that will be called when transaction starts. * @param errorCallback Called, when Transaction fails. * @param successCallback Called, when transaction committed. */ transaction(callback: (transaction: SqlTransaction) => void, errorCallback?: (error: SqlError) => void, successCallback?: () => void): void; /** * Starts new transaction. * @param callback Function, that will be called when transaction starts. * @param errorCallback Called, when Transaction fails. * @param successCallback Called, when transaction committed. */ readTransaction(callback: (transaction: SqlTransaction) => void, errorCallback?: (error: SqlError) => void, successCallback?: () => void): void; name: string; version: string; displayName: string; size: number; } declare var Database: { /** Constructor for Database object */ new(name: string, version: string, displayname: string, size: number, creationCallback: (database: Database)=> void): Database; }; interface SqlTransaction { /** * Executes SQL statement via current transaction. * @param sql SQL statement to execute. * @param arguments SQL stetement arguments. * @param successCallback Called in case of query has been successfully done. * @param errorCallback Called, when query fails. Return false to continue transaction; true or no return to rollback. */ executeSql(sql: string, arguments?: any[], successCallback?: (transaction: SqlTransaction, resultSet: SqlResultSet) => void, errorCallback?: (transaction: SqlTransaction, error: SqlError) => any): void; } declare var SqlTransaction: { new(): SqlTransaction; }; interface SqlResultSet { insertId: number; rowsAffected: number; rows: SqlResultSetRowList; } interface SqlResultSetRowList { length: number; item(index: number): Object; } interface SqlError { code: number; message: string; } declare var SqlError: { // Error code constants from http://www.w3.org/TR/webdatabase/#sqlerror UNKNOWN_ERR: number; DATABASE_ERR: number; VERSION_ERR: number; TOO_LARGE_ERR: number; QUOTA_ERR: number; SYNTAX_ERR: number; CONSTRAINT_ERR: number; TIMEOUT_ERR: number; };