import Dexie, { Version } from 'dexie'; declare class TableInstance { db: Dexie; tableName: string; table: Dexie.Table; constructor(db: Dexie, tableName: string); add(item: T): Promise; get(indexKey: string): Promise; update(indexKey: string, changes: T): Promise; delete(indexKey: string): Promise; removeAll(): Promise; getAll(): Promise; getAssetDBPath(indexKey: string, assetId: string, ext: string): string; } declare class DBManager { dbMap: { [key: string]: { db: Dexie; version: Version; }; }; verno: number; constructor(); createDB(dbName: string, schema: SchemaType): Promise<{ [Tname in keyof SchemaType]: TableInstance; }>; } interface AssetMap { assetId: string; fileId: string; status: string; } interface Asset { fileId: string; value: File; ext: string; timeStamp: number; } type UploadItemType = { [propname: string]: { workspace: string; File: File; }; }; interface UploadMapType { value: UploadItemType; } declare const IndexedDBManager: DBManager; declare const initDBInstances: Promise<{ assetsMap: TableInstance; assets: TableInstance; uploadMap: TableInstance; }>; export { DBManager, IndexedDBManager, TableInstance, initDBInstances };