@fjell/core
Version:
Core Item and Key Framework for Fjell
27 lines (26 loc) • 1.14 kB
TypeScript
/**
* Wrapper for create() operation
*
* Provides automatic validation for create() operation parameters.
*/
import { Coordinate, CreateMethod, Item } from "@fjell/types";
import type { WrapperOptions } from "./types";
/**
* Creates a wrapped create() method with automatic parameter validation.
*
* @param coordinate - The coordinate defining the item hierarchy
* @param implementation - The core logic for the operation
* @param options - Optional wrapper configuration
* @returns A fully validated create() method
*
* @example
* ```typescript
* const create = createCreateWrapper(
* coordinate,
* async (item, options) => {
* return await database.create(item, options);
* }
* );
* ```
*/
export declare function createCreateWrapper<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: CreateMethod<V, S, L1, L2, L3, L4, L5>, wrapperOptions?: WrapperOptions): CreateMethod<V, S, L1, L2, L3, L4, L5>;