UNPKG

dynamodb-turbine

Version:

Entity mapping and query library for DynamoDB

11 lines (10 loc) 1.48 kB
import { z } from "zod"; import { Entity, EntityDefinition, IndexName, Instance, KeyConditionPrimitiveValue, PagedResult, QueryKey } from "./types/entity"; import { KeyDefinitionPrimitive } from "./types/key"; export declare const parsePagedResult: <D extends EntityDefinition<z.ZodObject>>(definition: D, entity: Entity<D>, items: unknown[] | undefined | null, lastEvaluatedKey: Record<string, any> | undefined, next?: () => Promise<PagedResult<D>>) => Promise<PagedResult<D>>; export declare const resolveKeyValues: (key: Record<string, any>) => Record<string, KeyConditionPrimitiveValue>; export declare const resolveIndex: <D extends EntityDefinition<z.ZodObject>>(definition: D, key: QueryKey<D>) => [IndexName, any]; export declare const expandPayload: <S extends z.ZodObject, D extends EntityDefinition<S>>(definition: D, data: Partial<z.infer<D["schema"]>> & Omit<z.infer<D["schema"]>, keyof D["keys"]>) => Promise<Partial<z.infer<D["schema"]>>>; export declare const expandPartialPayload: <S extends z.ZodObject>(definition: EntityDefinition<S>, data: Partial<z.infer<S>>) => Promise<Partial<Record<string, KeyDefinitionPrimitive>>>; export declare const parseKeys: <S extends z.ZodObject>(definition: EntityDefinition<S>, data: Record<string, unknown>) => Partial<Record<string, KeyDefinitionPrimitive>>; export declare const parseInstance: <D extends EntityDefinition<z.ZodObject>>(definition: D, entity: Entity<D>, input: unknown) => Promise<Instance<Entity<D>>>;