declare type OnUpgradeCallback = (db: IDBDatabase) => void; export declare type IndexValue = { multiEntry?: boolean; unique?: boolean; }; export declare type IndexConfig = Record; export declare const closeDatabase: (db: IDBDatabase) => Promise; export declare const openDatabaseLatestVersion: (dbName: string) => Promise; export declare const createOrOpenDatabase: (dbName: string) => (dbVersion: number) => (onUpgradeCallback: OnUpgradeCallback) => Promise; export declare const upgradeDatabase: (dbName: string) => (onUpgradeCallback: OnUpgradeCallback) => Promise; export declare const createObjectStore: (dbName: string) => (storeName: string) => (indexConfig: IndexConfig) => (keyPath: string) => Promise; export declare const createObjectStoreIfNotExist: (dbName: string) => (storeName: string) => (indexConfig: IndexConfig) => (keyPath: string) => Promise; export declare const deleteObjectStoreIfExist: (dbName: string) => (storeName: string) => Promise; export declare const deleteObjectStore: (dbName: string) => (storeName: string) => Promise; export declare const doesStoreExist: (db: IDBDatabase) => (storeName: string) => boolean; export declare const getNumberOfDocumentsInStore: (db: IDBDatabase) => (storeName: string) => Promise; export declare const addDocumentsToStore: (db: IDBDatabase) => (storeName: string) => (data: T[]) => Promise; export declare const getPrimaryKeysMatchingRange: (db: IDBDatabase) => (storeName: string) => (indexName: string) => (keyRange: IDBKeyRange) => Promise; declare type IteratorOnStoreCallback = (itemKey: K, item: T) => void; export declare const iterateOverStore: (db: IDBDatabase) => (storeName: string) => (callBack: IteratorOnStoreCallback) => Promise; export declare const getAllUniqueKeysForIndex: (db: IDBDatabase) => (storeName: string) => (indexName: string) => Promise; export declare const getAllPrimaryKeysForIndex: (db: IDBDatabase) => (storeName: string) => (indexName: string) => (reverseDirection: boolean) => Promise; export declare const getDocuments: (db: IDBDatabase) => (storeName: string) => (documentIds: IDBValidKey[]) => Promise; export declare const deleteDatabase: (dbName: string) => Promise; export {};