@yaga/cordova-plugin-spatialite
Version:
A Spatialite plugin for cordova
177 lines (176 loc) • 6.4 kB
TypeScript
// [ts-npm-lint] disabled triple slash reference to '../typings/index.d.ts'
export interface ISpatialiteDatabaseDictionary {
[name: string]: SpatialiteDatabase;
}
export declare const CORDOVA_MODULE_NAME: string;
export interface ISpatialiteDatabaseStatic {
new (): SpatialiteDatabase;
openDatabase(options: ISpatialiteDatabaseOptions, successCallback?: (data: SpatialiteDatabase) => void, errorCallback?: (data: Error) => void): SpatialiteDatabase;
deleteDatabase(name: string, successCallback: (data: string) => void, errorCallback: (data: Error) => void): void;
}
export interface Window {
spatialitePlugin: ISpatialiteDatabaseStatic;
}
export interface IRow {
[name: string]: any;
}
export interface IRows {
length: number;
item(i: number): IRow;
}
export interface IResultSet {
rowsAffected: number;
insertId: number;
rows: IRows;
}
export interface ICordovaResponse {
rowsAffected: number;
insertId: number;
rows: IRow[];
}
export interface ISpatialiteDatabaseOptions {
name: string;
path?: string;
}
/**
* @class
* @property {number} length - Number of rows
*/
export declare class SpatialiteRows implements IRows {
length: number;
/**
* Rows as array
* @private
* @memberOf SpatialiteRows
* @type {IRow[]}
*/
private rows;
constructor(data: IRow[]);
/**
* Get a row by its number
* @memberOf SpatialiteRows
* @param {number} i - Number of the row
* @returns {IRow}
*/
item(i: number): IRow;
}
/**
* @class
* @property {number} rowsAffected - Number of rows that was affected by the call
* @property {number} insertId - ID of the insert
* @property {SpatialiteRows} rows - Rows as object
*/
export declare class SpatialiteResultSet implements IResultSet {
rowsAffected: number;
insertId: number;
rows: SpatialiteRows;
constructor(data: ICordovaResponse);
}
/**
* @class
* @property {string} name - Name of the database
* @property {string} path - Path to the database
*/
export declare class SpatialiteTransaction {
/**
* Success callback of a database call.
* @callback SpatialiteTransaction~successCallback
* @param {SpatialiteTransaction} transaction - The transaction object itself
* @param {SpatialiteResultSet} data - The result-set as object
*/
/**
* Success callback of a database call.
* @callback SpatialiteTransaction~errorCallback
* @param {SpatialiteTransaction} transaction - The transaction object itself
* @param {Error} error
*/
name: string;
path: string;
constructor(name: string, path?: string);
/**
* Run a SQL statement on this transaction
* @memberOf SpatialiteTransaction
* @param {string} sql - The statement you want to run. Questions marks will be replaced with the data in bindings
* @param {string[]} binding - Bindings for the sql statement
* @param {SpatialiteTransaction~successCallback} successCallback
* @param {SpatialiteTransaction~errorCallback} errorCallback
*/
executeSql(sql: string, binding: string[], successCallback: (transaction: SpatialiteTransaction, data: SpatialiteResultSet) => void, errorCallback: (transaction: SpatialiteTransaction, data: Error) => void): void;
}
/**
* @class
* @property {string} name - Name of the database
* @property {string} path - Path to the database
* @property {boolean} connected - Is the database already connected?
*/
export declare class SpatialiteDatabase {
/**
* Success callback of the opening database call.
* @callback SpatialiteDatabase~successCallback
* @param {SpatialiteDatabase} data - The result-set as object
*/
/**
* Error callback of the opening database call.
* @callback SpatialiteDatabase~errorCallback
* @param {Error} error
*/
/**
* Error callback of the opening database call.
* @callback SpatialiteDatabase~transactionCallback
* @param {SpatialiteTransaction} transaction
*/
/**
* Success opening callback of the simple open call.
* @callback SpatialiteDatabase~successOpenCallback
* @param {string} status
*/
/**
* Success statement callback.
* @callback SpatialiteDatabase~successStatementCallback
* @param {SpatialiteResultSet} resultSet
*/
name: string;
path: string;
connected: boolean;
/**
* Open or create a Database
* @static
* @memberOf SpatialiteDatabase
* @param {ISpatialiteDatabaseOptions} options
* @param {SpatialiteDatabase~successCallback} successCallback
* @param {SpatialiteDatabase~errorCallback} errorCallback
* @returns {SpatialiteDatabase}
*/
static openDatabase(options: ISpatialiteDatabaseOptions, successCallback?: (data: SpatialiteDatabase) => void, errorCallback?: (data: Error) => void): SpatialiteDatabase;
/**
* Delete a Database
* @static
* @memberOf SpatialiteDatabase
* @param opts
* @param successCallback
* @param {SpatialiteDatabase~errorCallback} errorCallback
*/
static deleteDatabase(opts: ISpatialiteDatabaseOptions, successCallback: (data: string) => void, errorCallback: (data: Error) => void): void;
constructor(opts: ISpatialiteDatabaseOptions);
/**
* Create a transaction object
* @param {SpatialiteDatabase~transactionCallback} callback
*/
transaction(callback: (data: SpatialiteTransaction) => void): void;
/**
* Execute a SQL statement
* @memberOf SpatialiteDatabase
* @param {string} sql - The statement you want to run. Questions marks will be replaced with the data in bindings
* @param {string[]} binding - Bindings for the sql statement
* @param {SpatialiteDatabase~successStatementCallback} successCallback
* @param {SpatialiteDatabase~errorCallback} errorCallback
*/
executeSql(sql: string, binding: string[], successCallback: (data: SpatialiteResultSet) => void, errorCallback: (data: Error) => void): void;
/**
* Open the database that was defined in this object
* @memberOf SpatialiteDatabase
* @param {SpatialiteDatabase~successOpenCallback} successCallback
* @param {SpatialiteDatabase~errorCallback} errorCallback
*/
open(successCallback: (data: SpatialiteDatabase) => void, errorCallback: (data: Error) => void): void;
}