UNPKG

@fjell/core

Version:

Core Item and Key Framework for Fjell

27 lines (26 loc) 1.15 kB
/** * Wrapper for upsert() operation * * Provides automatic validation for upsert() operation parameters. */ import { Coordinate, Item, UpsertMethod } from "@fjell/types"; import type { WrapperOptions } from "./types"; /** * Creates a wrapped upsert() method with automatic parameter validation. * * @param coordinate - The coordinate defining the item hierarchy * @param implementation - The core logic for the operation * @param options - Optional configuration * @returns A fully validated upsert() method * * @example * ```typescript * const upsert = createUpsertWrapper( * coordinate, * async (key, item, locations, options) => { * return await database.upsert(key, item, locations, options); * } * ); * ``` */ export declare function createUpsertWrapper<V extends Item<S, L1, L2, L3, L4, L5>, S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never>(coordinate: Coordinate<S, L1, L2, L3, L4, L5>, implementation: UpsertMethod<V, S, L1, L2, L3, L4, L5>, options?: WrapperOptions): UpsertMethod<V, S, L1, L2, L3, L4, L5>;