import { ConfigurableFlush, RemovableRef } from "@vueuse/shared"; import { MaybeRefOrGetter, ShallowRef } from "vue"; //#region useIDBKeyval/index.d.ts interface Serializer { read: (raw: unknown) => T; write: (value: T) => unknown; } interface UseIDBOptions extends ConfigurableFlush { /** * Watch for deep changes * * @default true */ deep?: boolean; /** * On error callback * * Default log error to `console.error` */ onError?: (error: unknown) => void; /** * Use shallow ref as reference * * @default false */ shallow?: boolean; /** * Write the default value to the storage when it does not exist * * @default true */ writeDefaults?: boolean; /** * Custom data serialization */ serializer?: Serializer; } interface UseIDBKeyvalReturn { data: RemovableRef; isFinished: ShallowRef; set: (value: T) => Promise; } /** * * @param key * @param initialValue * @param options */ declare function useIDBKeyval(key: IDBValidKey, initialValue: MaybeRefOrGetter, options?: UseIDBOptions): UseIDBKeyvalReturn; //#endregion export { UseIDBOptions as n, useIDBKeyval as r, UseIDBKeyvalReturn as t };