UNPKG

web-push-notifications

Version:
46 lines (45 loc) 1.62 kB
import { type TIDBKeyType, type TIDBQueryValue, type TSdkStoreName } from './Storage.types'; export default class Storage { /** * Get database instance (uses shared connection from core/storage) */ getDB(): Promise<IDBDatabase>; /** * https://developer.mozilla.org/en-US/docs/Web/API/IDBObjectStore/put * @param storeName * @param data * @param key */ put(storeName: TSdkStoreName, data: any, key?: string): Promise<TIDBKeyType>; /** * https://developer.mozilla.org/en-US/docs/Web/API/IDBObjectStore/delete * @param storeName * @param key */ delete(storeName: TSdkStoreName, key: string | number): Promise<void>; /** * https://developer.mozilla.org/en-US/docs/Web/API/IDBObjectStore/get * @param storeName * @param key * @param defaultValue */ get<Response, D>(storeName: TSdkStoreName, key: TIDBKeyType, defaultValue?: D): Promise<Response | D>; /** * https://developer.mozilla.org/en-US/docs/Web/API/IDBObjectStore/getAll * @param storeName */ getAll<Response>(storeName: TSdkStoreName): Promise<Array<Response>>; /** * https://developer.mozilla.org/en-US/docs/Web/API/IDBObjectStore/count * @param storeName * @param query */ count(storeName: TSdkStoreName, query?: IDBKeyRange): Promise<number>; /** * https://developer.mozilla.org/en-US/docs/Web/API/IDBIndex/count * @param storeName * @param indexName * @param key */ countByIndex(storeName: TSdkStoreName, indexName: string, key?: TIDBQueryValue): Promise<number>; }