import { ZodErrorMap } from 'zod';

type ZodMessageKey = 'required' | 'invalid_type' | 'too_small_string' | 'too_big_string' | 'too_small_number' | 'too_big_number' | 'invalid_string_email' | 'invalid_string_url' | 'invalid_enum_value' | 'invalid_date' | 'custom';
type ZodMessages = Record<ZodMessageKey, string>;
type ZodTranslateFn = (key: ZodMessageKey) => string;
declare function createZodErrorMap(source: ZodMessages | ZodTranslateFn): ZodErrorMap;

export { type ZodMessageKey, type ZodMessages, type ZodTranslateFn, createZodErrorMap };
