UNPKG

@hot-updater/plugin-core

Version:

React Native OTA solution for self-hosted

27 lines (26 loc) 1.01 kB
import { DatabasePlugin, DatabasePluginHooks } from "./types/index.js"; //#region src/createBlobDatabasePlugin.d.ts interface BlobOperations { listObjects: (prefix: string) => Promise<string[]>; loadObject: <T>(key: string) => Promise<T | null>; uploadObject: <T>(key: string, data: T) => Promise<void>; deleteObject: (key: string) => Promise<void>; invalidatePaths: (paths: string[]) => Promise<void>; apiBasePath: string; } /** * Creates a blob storage-based database plugin with lazy initialization. * * @param name - The name of the database plugin * @param factory - Function that creates blob storage operations from config * @returns A double-curried function that lazily initializes the database plugin */ declare const createBlobDatabasePlugin: <TConfig>({ name, factory }: { name: string; factory: (config: TConfig) => BlobOperations; }) => (config: TConfig, hooks?: DatabasePluginHooks) => () => DatabasePlugin; //#endregion export { BlobOperations, createBlobDatabasePlugin };