ts-database
Version:
这是基于typesciprt的indexedDB的数据库的操作函数
62 lines (61 loc) • 1.58 kB
TypeScript
/**
* indexeddb数据库原型
*/
import { DBDatabaseModule } from './database-module';
import { DBDatabaseEvent, IDatabase, IDatabaseModules } from './type';
export interface IDatabaseOptions {
name: string;
version: number;
modules: IDatabaseModules[];
event?: DBDatabaseEvent;
}
export declare class Database {
private databaseName;
private databaseVersion;
private databaseModules;
private database;
private databaseEvent;
constructor(options: IDatabaseOptions);
/**
* 数据库连接
*/
private connectDatabase;
/**
*
* 获取表连接
*
* @param moduleName
* @returns
*/
module(moduleName: string): Promise<DBDatabaseModule>;
/**
* 删库
* @returns
*/
drop(): IDBOpenDBRequest;
/**
* 备份
*/
backup(): Promise<IDatabase>;
/**
* 恢复
*/
recovery(data: IDatabase): Promise<unknown>;
/**
* Export all data from an IndexedDB database
* @param {IDBDatabase} idbDatabase - to export from
*/
private exportData;
/**
* Import data from JSON into an IndexedDB database. This does not delete any existing data
* from the database, so keys could clash.
*
* Only object stores that already exist will be imported.
*
* @param {IDBDatabase} idbDatabase - to import into
* @param {string} jsonString - data to import, one key per object store
* @param {function(Object)} cb - callback with signature (error), where error is null on success
* @return {void}
*/
private importFromJson;
}