dynamodb-toolbox
Version:
Lightweight and type-safe query builder for DynamoDB and TypeScript.
13 lines (12 loc) • 990 B
TypeScript
import { z } from 'zod';
import type { BooleanSchema, ResolvedBooleanSchema } from '../../../../schema/index.js';
import type { Cast } from '../../../../types/cast.js';
import type { WithValidate } from '../utils.js';
import type { ZodParserOptions } from './types.js';
import type { WithDefault, WithEncoding, WithOptional, ZodLiteralMap } from './utils.js';
export type BooleanZodParser<SCHEMA extends BooleanSchema, OPTIONS extends ZodParserOptions = {}> = WithEncoding<SCHEMA, OPTIONS, WithDefault<SCHEMA, OPTIONS, WithOptional<SCHEMA, OPTIONS, WithValidate<SCHEMA, SCHEMA['props'] extends {
enum: [ResolvedBooleanSchema];
} ? z.ZodLiteral<SCHEMA['props']['enum'][0]> : SCHEMA['props'] extends {
enum: [ResolvedBooleanSchema, ...ResolvedBooleanSchema[]];
} ? z.ZodUnion<Cast<ZodLiteralMap<SCHEMA['props']['enum']>, [z.ZodTypeAny, ...z.ZodTypeAny[]]>> : z.ZodBoolean>>>>;
export declare const booleanZodParser: (schema: BooleanSchema, options: ZodParserOptions) => z.ZodTypeAny;