Skip to content

Upgrading valibot 0.2 to 0.3

Review needed0.2.1 → 0.3.0New1Changed1

Review neededUpgrade verdict

1 behavior change.

  • Change build step to tsup and exports in package.json (issue ).
Nothing to change

No breaking, platform, security or deprecated items in this range.

Nothing in this upgrade needs a code or configuration change.

Generated by DepDelta from published .d.ts files. Not mixed with prose notes.

  • added: class ValiError extends Error
  • added: constructor ValiError(issues: Issues)
  • added: function any(pipe?: Pipe<any>): AnySchema
  • added: function anyAsync(pipe?: PipeAsync<any>): AnySchemaAsync
  • added: function array<TArrayItem extends BaseSchema>(item: TArrayItem, error?: string, pipe?: Pipe<Output<TArrayItem>[]>): ArraySchema<TArrayItem>
  • added: function array<TArrayItem extends BaseSchema>(item: TArrayItem, pipe?: Pipe<Output<TArrayItem>[]>): ArraySchema<TArrayItem>
  • added: function arrayAsync<TArrayItem extends BaseSchema | BaseSchemaAsync>(item: TArrayItem, error?: string, pipe?: PipeAsync<Output<TArrayItem>[]>): ArraySchemaAsync<TArrayItem>
  • added: function arrayAsync<TArrayItem extends BaseSchema | BaseSchemaAsync>(item: TArrayItem, pipe?: PipeAsync<Output<TArrayItem>[]>): ArraySchemaAsync<TArrayItem>
  • added: function bigint(error?: string, pipe?: Pipe<bigint>): BigintSchema
  • added: function bigint(pipe?: Pipe<bigint>): BigintSchema
  • added: function bigintAsync(error?: string, pipe?: PipeAsync<bigint>): BigintSchemaAsync
  • added: function bigintAsync(pipe?: PipeAsync<bigint>): BigintSchemaAsync
  • added: function blob(error?: string, pipe?: Pipe<Blob>): BlobSchema
  • added: function blob(pipe?: Pipe<Blob>): BlobSchema
  • added: function blobAsync(error?: string, pipe?: PipeAsync<Blob>): BlobSchemaAsync
  • added: function blobAsync(pipe?: PipeAsync<Blob>): BlobSchemaAsync
  • added: function boolean(error?: string, pipe?: Pipe<boolean>): BooleanSchema
  • added: function boolean(pipe?: Pipe<boolean>): BooleanSchema
  • added: function booleanAsync(error?: string, pipe?: PipeAsync<boolean>): BooleanSchemaAsync
  • added: function booleanAsync(pipe?: PipeAsync<boolean>): BooleanSchemaAsync
  • added: function bytes<TInput extends string>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function coerce<TSchema extends BaseSchema>(schema: TSchema, action: (value: unknown) => Input<TSchema>): TSchema
  • added: function coerceAsync<TSchema extends BaseSchemaAsync>(schema: TSchema, action: (value: unknown) => Input<TSchema> | Promise<Input<TSchema>>): TSchema
  • added: function custom<TInput>(requirement: (input: TInput) => boolean, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function customAsync<TInput>(requirement: (input: TInput) => Promise<boolean>, error?: string): (input: TInput, info: ValidateInfo) => Promise<TInput>
  • added: function date(error?: string, pipe?: Pipe<Date>): DateSchema
  • added: function date(pipe?: Pipe<Date>): DateSchema
  • added: function dateAsync(error?: string, pipe?: PipeAsync<Date>): DateSchemaAsync
  • added: function dateAsync(pipe?: PipeAsync<Date>): DateSchemaAsync
  • added: function email<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function emoji<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function endsWith<TInput extends string>(requirement: string, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function enumType<TEnumValue extends EnumValue>(enumValue: TEnumValue, error?: string): EnumSchema<TEnumValue>
  • added: function enumTypeAsync<TEnumValue extends EnumValue>(enumValue: TEnumValue, error?: string): EnumSchemaAsync<TEnumValue>
  • added: function equal<TInput extends string | number | bigint | boolean, TRequirement extends TInput>(requirement: TRequirement, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function flatten(error: ValiError): FlatErrors
  • added: function includes<TInput extends TItem[], TItem>(requirement: TItem, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function includes<TInput extends string>(requirement: string, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function ip<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function ipv4<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function ipv6<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function isoDate<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function isoDateTime<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function isoTime<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function isoTimeSecond<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function isoTimestamp<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function isoWeek<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function keyof<TSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>>(schema: TSchema): EnumSchema<TupleOrNever<UnionToTuple<keyof TSchema['object']>>>
  • added: function length<TInput extends string | any[]>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function literal<TLiteral extends string | number>(literal: TLiteral, error?: string): LiteralSchema<TLiteral>
  • added: function literalAsync<TLiteral extends string | number>(literal: TLiteral, error?: string): LiteralSchemaAsync<TLiteral>
  • added: function map<TMapKey extends BaseSchema, TMapValue extends BaseSchema>(key: TMapKey, value: TMapValue, error?: string, pipe?: Pipe<MapOutput<TMapKey, TMapValue>>): MapSchema<TMapKey, TMapValue>
  • added: function map<TMapKey extends BaseSchema, TMapValue extends BaseSchema>(key: TMapKey, value: TMapValue, pipe?: Pipe<MapOutput<TMapKey, TMapValue>>): MapSchema<TMapKey, TMapValue>
  • added: function mapAsync<TMapKey extends BaseSchema | BaseSchemaAsync, TMapValue extends BaseSchema | BaseSchemaAsync>(key: TMapKey, value: TMapValue, error?: string, pipe?: PipeAsync<MapOutput<TMapKey, TMapValue>>): MapSchemaAsync<TMapKey, TMapValue>
  • added: function mapAsync<TMapKey extends BaseSchema | BaseSchemaAsync, TMapValue extends BaseSchema | BaseSchemaAsync>(key: TMapKey, value: TMapValue, pipe?: PipeAsync<MapOutput<TMapKey, TMapValue>>): MapSchemaAsync<TMapKey, TMapValue>
  • added: function maxBytes<TInput extends string>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function maxLength<TInput extends string | any[]>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function maxRange<TInput extends string | number | bigint | Date, TRequirement extends TInput>(requirement: TRequirement, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function maxSize<TInput extends Map<any, any> | Set<any> | Blob>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function merge<TObjectSchemas extends ObjectSchemas$1>(schemas: TObjectSchemas, error?: string, pipe?: Pipe<ObjectOutput<MergeSchemaObjects<TObjectSchemas>>>): ObjectSchema<MergeSchemaObjects<TObjectSchemas>>
  • added: function merge<TObjectSchemas extends ObjectSchemas$1>(schemas: TObjectSchemas, pipe?: Pipe<ObjectOutput<MergeSchemaObjects<TObjectSchemas>>>): ObjectSchema<MergeSchemaObjects<TObjectSchemas>>
  • added: function mergeAsync<TObjectSchemas extends ObjectSchemas>(schemas: TObjectSchemas, error?: string, pipe?: PipeAsync<ObjectOutput<MergeSchemaObjects<TObjectSchemas>>>): ObjectSchemaAsync<MergeSchemaObjects<TObjectSchemas>>
  • added: function mergeAsync<TObjectSchemas extends ObjectSchemas>(schemas: TObjectSchemas, pipe?: PipeAsync<ObjectOutput<MergeSchemaObjects<TObjectSchemas>>>): ObjectSchemaAsync<MergeSchemaObjects<TObjectSchemas>>
  • added: function mimeType<TInput extends File>(requirement: `${string}/${string}`[], error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function minBytes<TInput extends string>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function minLength<TInput extends string | any[]>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function minRange<TInput extends string | number | bigint | Date, TRequirement extends TInput>(requirement: TRequirement, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function minSize<TInput extends Map<any, any> | Set<any> | Blob>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function nan(error?: string): NanSchema
  • added: function nanAsync(error?: string): NanSchemaAsync
  • added: function nativeEnum<TNativeEnum extends NativeEnum>(nativeEnum: TNativeEnum, error?: string): NativeEnumSchema<TNativeEnum>
  • added: function nativeEnumAsync<TNativeEnum extends NativeEnum>(nativeEnum: TNativeEnum, error?: string): NativeEnumSchemaAsync<TNativeEnum>
  • added: function never(error?: string): NeverSchema
  • added: function neverAsync(error?: string): NeverSchemaAsync
  • added: function nonNullable<TWrappedSchema extends BaseSchema>(wrapped: TWrappedSchema, error?: string): NonNullableSchema<TWrappedSchema>
  • added: function nonNullableAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync>(wrapped: TWrappedSchema, error?: string): NonNullableSchemaAsync<TWrappedSchema>
  • added: function nonNullish<TWrappedSchema extends BaseSchema>(wrapped: TWrappedSchema, error?: string): NonNullishSchema<TWrappedSchema>
  • added: function nonNullishAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync>(wrapped: TWrappedSchema, error?: string): NonNullishSchemaAsync<TWrappedSchema>
  • added: function nonOptional<TWrappedSchema extends BaseSchema>(wrapped: TWrappedSchema, error?: string): NonOptionalSchema<TWrappedSchema>
  • added: function nonOptionalAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync>(wrapped: TWrappedSchema, error?: string): NonOptionalSchemaAsync<TWrappedSchema>
  • added: function nullType(error?: string): NullSchema
  • added: function nullTypeAsync(error?: string): NullSchemaAsync
  • added: function nullable<TWrappedSchema extends BaseSchema>(wrapped: TWrappedSchema): NullableSchema<TWrappedSchema>
  • added: function nullableAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync>(wrapped: TWrappedSchema): NullableSchemaAsync<TWrappedSchema>
  • added: function nullish<TWrappedSchema extends BaseSchema>(wrapped: TWrappedSchema): NullishSchema<TWrappedSchema>
  • added: function nullishAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync>(wrapped: TWrappedSchema): NullishSchemaAsync<TWrappedSchema>
  • added: function number(error?: string, pipe?: Pipe<number>): NumberSchema
  • added: function number(pipe?: Pipe<number>): NumberSchema
  • added: function numberAsync(error?: string, pipe?: PipeAsync<number>): NumberSchemaAsync
  • added: function numberAsync(pipe?: PipeAsync<number>): NumberSchemaAsync
  • added: function object<TObjectShape extends ObjectShape>(object: TObjectShape, error?: string, pipe?: Pipe<ObjectOutput<TObjectShape>>): ObjectSchema<TObjectShape>
  • added: function object<TObjectShape extends ObjectShape>(object: TObjectShape, pipe?: Pipe<ObjectOutput<TObjectShape>>): ObjectSchema<TObjectShape>
  • added: function objectAsync<TObjectShape extends ObjectShapesAsync>(object: TObjectShape, error?: string, pipe?: PipeAsync<ObjectOutput<TObjectShape>>): ObjectSchemaAsync<TObjectShape>
  • added: function objectAsync<TObjectShape extends ObjectShapesAsync>(object: TObjectShape, pipe?: PipeAsync<ObjectOutput<TObjectShape>>): ObjectSchemaAsync<TObjectShape>
  • added: function omit<TObjectSchema extends ObjectSchema<any>, TKeys extends ObjectKeys<TObjectSchema>>(schema: TObjectSchema, keys: TKeys, error?: string, pipe?: Pipe<ObjectOutput<Omit<TObjectSchema['object'], TKeys[number]>>>): ObjectSchema<Omit<TObjectSchema['object'], TKeys[number]>>
  • added: function omit<TObjectSchema extends ObjectSchema<any>, TKeys extends ObjectKeys<TObjectSchema>>(schema: TObjectSchema, keys: TKeys, pipe?: Pipe<ObjectOutput<Omit<TObjectSchema['object'], TKeys[number]>>>): ObjectSchema<Omit<TObjectSchema['object'], TKeys[number]>>
  • added: function omitAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>, TKeys extends ObjectKeys<TObjectSchema>>(schema: TObjectSchema, keys: TKeys, error?: string, pipe?: PipeAsync<ObjectOutput<Omit<TObjectSchema['object'], TKeys[number]>>>): ObjectSchemaAsync<Omit<TObjectSchema['object'], TKeys[number]>>
  • added: function omitAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>, TKeys extends ObjectKeys<TObjectSchema>>(schema: TObjectSchema, keys: TKeys, pipe?: PipeAsync<ObjectOutput<Omit<TObjectSchema['object'], TKeys[number]>>>): ObjectSchemaAsync<Omit<TObjectSchema['object'], TKeys[number]>>
  • added: function optional<TWrappedSchema extends BaseSchema>(wrapped: TWrappedSchema): OptionalSchema<TWrappedSchema>
  • added: function optionalAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync>(wrapped: TWrappedSchema): OptionalSchemaAsync<TWrappedSchema>
  • added: function parse<TSchema extends BaseSchema>(schema: TSchema, input: unknown): Output<TSchema>
  • added: function parseAsync<TSchema extends BaseSchema | BaseSchemaAsync>(schema: TSchema, input: unknown): Promise<Output<TSchema>>
  • added: function partial<TObjectSchema extends ObjectSchema<any>>(schema: TObjectSchema, error?: string, pipe?: Pipe<ObjectOutput<Partial$2<TObjectSchema['object']>>>): ObjectSchema<Partial$2<TObjectSchema['object']>>
  • added: function partial<TObjectSchema extends ObjectSchema<any>>(schema: TObjectSchema, pipe?: Pipe<ObjectOutput<Partial$2<TObjectSchema['object']>>>): ObjectSchema<Partial$2<TObjectSchema['object']>>
  • added: function partialAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>>(schema: TObjectSchema, error?: string, pipe?: Pipe<ObjectOutput<Partial$1<TObjectSchema['object']>>>): ObjectSchemaAsync<Partial$1<TObjectSchema['object']>>
  • added: function partialAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>>(schema: TObjectSchema, pipe?: Pipe<ObjectOutput<Partial$1<TObjectSchema['object']>>>): ObjectSchemaAsync<Partial$1<TObjectSchema['object']>>
  • added: function pick<TObjectSchema extends ObjectSchema<any>, TKeys extends (keyof TObjectSchema['object'])[]>(schema: TObjectSchema, keys: TKeys, error?: string, pipe?: Pipe<ObjectOutput<Pick<TObjectSchema['object'], TKeys[number]>>>): ObjectSchema<Pick<TObjectSchema['object'], TKeys[number]>>
  • added: function pick<TObjectSchema extends ObjectSchema<any>, TKeys extends (keyof TObjectSchema['object'])[]>(schema: TObjectSchema, keys: TKeys, pipe?: Pipe<ObjectOutput<Pick<TObjectSchema['object'], TKeys[number]>>>): ObjectSchema<Pick<TObjectSchema['object'], TKeys[number]>>
  • added: function pickAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>, TKeys extends (keyof TObjectSchema['object'])[]>(schema: TObjectSchema, keys: TKeys, error?: string, pipe?: PipeAsync<ObjectOutput<Pick<TObjectSchema['object'], TKeys[number]>>>): ObjectSchemaAsync<Pick<TObjectSchema['object'], TKeys[number]>>
  • added: function pickAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>, TKeys extends (keyof TObjectSchema['object'])[]>(schema: TObjectSchema, keys: TKeys, pipe?: PipeAsync<ObjectOutput<Pick<TObjectSchema['object'], TKeys[number]>>>): ObjectSchemaAsync<Pick<TObjectSchema['object'], TKeys[number]>>
  • added: function record<TRecordKey extends RecordKey, TRecordValue extends BaseSchema>(key: TRecordKey, value: TRecordValue, error?: string, pipe?: Pipe<RecordOutput<TRecordKey, TRecordValue>>): RecordSchema<TRecordValue, TRecordKey>
  • added: function record<TRecordKey extends RecordKey, TRecordValue extends BaseSchema>(key: TRecordKey, value: TRecordValue, pipe?: Pipe<RecordOutput<TRecordKey, TRecordValue>>): RecordSchema<TRecordValue, TRecordKey>
  • added: function record<TRecordValue extends BaseSchema>(value: TRecordValue, error?: string, pipe?: Pipe<RecordOutput<StringSchema, TRecordValue>>): RecordSchema<TRecordValue>
  • added: function record<TRecordValue extends BaseSchema>(value: TRecordValue, pipe?: Pipe<RecordOutput<StringSchema, TRecordValue>>): RecordSchema<TRecordValue>
  • added: function recordAsync<TRecordKey extends RecordKeyAsync, TRecordValue extends BaseSchema | BaseSchemaAsync>(key: TRecordKey, value: TRecordValue, error?: string, pipe?: PipeAsync<RecordOutput<TRecordKey, TRecordValue>>): RecordSchemaAsync<TRecordValue, TRecordKey>
  • added: function recordAsync<TRecordKey extends RecordKeyAsync, TRecordValue extends BaseSchema | BaseSchemaAsync>(key: TRecordKey, value: TRecordValue, pipe?: PipeAsync<RecordOutput<TRecordKey, TRecordValue>>): RecordSchemaAsync<TRecordValue, TRecordKey>
  • added: function recordAsync<TRecordValue extends BaseSchema | BaseSchemaAsync>(value: TRecordValue, error?: string, pipe?: PipeAsync<RecordOutput<StringSchema, TRecordValue>>): RecordSchemaAsync<TRecordValue>
  • added: function recordAsync<TRecordValue extends BaseSchema | BaseSchemaAsync>(value: TRecordValue, pipe?: PipeAsync<RecordOutput<StringSchema, TRecordValue>>): RecordSchemaAsync<TRecordValue>
  • added: function recursive<TSchemaGetter extends () => BaseSchema>(getter: TSchemaGetter): RecursiveSchema<TSchemaGetter>
  • added: function recursiveAsync<TSchemaGetter extends () => BaseSchema | BaseSchemaAsync>(getter: TSchemaGetter): RecursiveSchemaAsync<TSchemaGetter>
  • added: function regex<TInput extends string>(requirement: RegExp, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function required<TObjectSchema extends ObjectSchema<any>>(schema: TObjectSchema, error?: string, pipe?: Pipe<ObjectOutput<Required$1<TObjectSchema['object']>>>): ObjectSchema<Required$1<TObjectSchema['object']>>
  • added: function required<TObjectSchema extends ObjectSchema<any>>(schema: TObjectSchema, pipe?: Pipe<ObjectOutput<Required$1<TObjectSchema['object']>>>): ObjectSchema<Required$1<TObjectSchema['object']>>
  • added: function requiredAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>>(schema: TObjectSchema, error?: string, pipe?: Pipe<ObjectOutput<Required<TObjectSchema['object']>>>): ObjectSchemaAsync<Required<TObjectSchema['object']>>
  • added: function requiredAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>>(schema: TObjectSchema, pipe?: Pipe<ObjectOutput<Required<TObjectSchema['object']>>>): ObjectSchemaAsync<Required<TObjectSchema['object']>>
  • added: function safeParse<TSchema extends BaseSchema>(schema: TSchema, input: unknown): { success: true; data: Output<TSchema> } | { success: false; error: ValiError }
  • added: function safeParseAsync<TSchema extends BaseSchema | BaseSchemaAsync>(schema: TSchema, input: unknown): Promise<{ success: true; data: Output<TSchema> } | { success: false; error: ValiError }>
  • added: function set<TSetValue extends BaseSchema>(value: TSetValue, error?: string, pipe?: Pipe<SetOutput<TSetValue>>): SetSchema<TSetValue>
  • added: function set<TSetValue extends BaseSchema>(value: TSetValue, pipe?: Pipe<SetOutput<TSetValue>>): SetSchema<TSetValue>
  • added: function setAsync<TSetValue extends BaseSchema | BaseSchemaAsync>(value: TSetValue, error?: string, pipe?: PipeAsync<SetOutput<TSetValue>>): SetSchemaAsync<TSetValue>
  • added: function setAsync<TSetValue extends BaseSchema | BaseSchemaAsync>(value: TSetValue, pipe?: PipeAsync<SetOutput<TSetValue>>): SetSchemaAsync<TSetValue>
  • added: function size<TInput extends Map<any, any> | Set<any> | Blob>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function special<TInput>(check: (input: unknown) => boolean, error?: string, pipe?: Pipe<TInput>): SpecialSchema<TInput>
  • added: function special<TInput>(check: (input: unknown) => boolean, pipe?: Pipe<TInput>): SpecialSchema<TInput>
  • added: function specialAsync<TInput>(check: (input: unknown) => boolean | Promise<boolean>, error?: string, pipe?: PipeAsync<TInput>): SpecialSchemaAsync<TInput>
  • added: function specialAsync<TInput>(check: (input: unknown) => boolean | Promise<boolean>, pipe?: PipeAsync<TInput>): SpecialSchemaAsync<TInput>
  • added: function startsWith<TInput extends string>(requirement: string, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function string(error?: string, pipe?: Pipe<string>): StringSchema
  • added: function string(pipe?: Pipe<string>): StringSchema
  • added: function stringAsync(error?: string, pipe?: PipeAsync<string>): StringSchemaAsync
  • added: function stringAsync(pipe?: PipeAsync<string>): StringSchemaAsync
  • added: function symbol(error?: string): SymbolSchema
  • added: function symbolAsync(error?: string): SymbolSchemaAsync
  • added: function toCustom<TInput>(action: (input: TInput) => TInput): (input: TInput) => TInput
  • added: function toCustomAsync<TInput>(action: (input: TInput) => TInput | Promise<TInput>): (input: TInput) => TInput | Promise<TInput>
  • added: function toLowerCase(): (input: string) => string
  • added: function toTrimmed(): (input: string) => string
  • added: function toTrimmedEnd(): (input: string) => string
  • added: function toTrimmedStart(): (input: string) => string
  • added: function toUpperCase(): (input: string) => string
  • added: function transform<TSchema extends AnySchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): AnySchema<TOutput>
  • added: function transform<TSchema extends ArraySchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): ArraySchema<TSchema['array']['item'], TOutput>
  • added: function transform<TSchema extends BigintSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): BigintSchema<TOutput>
  • added: function transform<TSchema extends BooleanSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): BooleanSchema<TOutput>
  • added: function transform<TSchema extends DateSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): DateSchema<TOutput>
  • added: function transform<TSchema extends EnumSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): EnumSchema<TSchema['enum'], TOutput>
  • added: function transform<TSchema extends LiteralSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): LiteralSchema<TSchema['literal'], TOutput>
  • added: function transform<TSchema extends MapSchema<any, any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): MapSchema<TSchema['map']['key'], TSchema['map']['value'], TOutput>
  • added: function transform<TSchema extends NanSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NanSchema<TOutput>
  • added: function transform<TSchema extends NativeEnumSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NativeEnumSchema<TSchema['nativeEnum'], TOutput>
  • added: function transform<TSchema extends NeverSchema>(schema: TSchema, action: (value: Output<TSchema>) => never): NeverSchema
  • added: function transform<TSchema extends NonNullableSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NonNullableSchema<TSchema['wrapped'], TOutput>
  • added: function transform<TSchema extends NonNullishSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NonNullishSchema<TSchema['wrapped'], TOutput>
  • added: function transform<TSchema extends NonOptionalSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NonOptionalSchema<TSchema['wrapped'], TOutput>
  • added: function transform<TSchema extends NullSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NullSchema<TOutput>
  • added: function transform<TSchema extends NullableSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NullableSchema<TSchema['wrapped'], TOutput>
  • added: function transform<TSchema extends NullishSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NullishSchema<TSchema['wrapped'], TOutput>
  • added: function transform<TSchema extends NumberSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NumberSchema<TOutput>
  • added: function transform<TSchema extends ObjectSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): ObjectSchema<TSchema['object'], TOutput>
  • added: function transform<TSchema extends OptionalSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): OptionalSchema<TSchema['wrapped'], TOutput>
  • added: function transform<TSchema extends RecordSchema<any, any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): RecordSchema<TSchema['record']['key'], TSchema['record']['value'], TOutput>
  • added: function transform<TSchema extends RecursiveSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): RecursiveSchema<TSchema['getter'], TOutput>
  • added: function transform<TSchema extends SetSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): SetSchema<TSchema['set']['value'], TOutput>
  • added: function transform<TSchema extends StringSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): StringSchema<TOutput>
  • added: function transform<TSchema extends SymbolSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): SymbolSchema<TOutput>
  • added: function transform<TSchema extends TupleSchema<any, any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): TupleSchema<TSchema['tuple']['items'], TSchema['tuple']['rest'], TOutput>
  • added: function transform<TSchema extends UndefinedSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): UndefinedSchema<TOutput>
  • added: function transform<TSchema extends UnionSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): UnionSchema<TSchema['union'], TOutput>
  • added: function transform<TSchema extends UnknownSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): UnknownSchema<TOutput>
  • added: function transform<TSchema extends VoidSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): VoidSchema<TOutput>
  • added: function transformAsync<TSchema extends AnySchema | AnySchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): AnySchemaAsync<TOutput>
  • added: function transformAsync<TSchema extends ArraySchema<any> | ArraySchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): ArraySchemaAsync<TSchema['array']['item'], TOutput>
  • added: function transformAsync<TSchema extends BigintSchema | BigintSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): BigintSchemaAsync<TOutput>
  • added: function transformAsync<TSchema extends BooleanSchema | BooleanSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): BooleanSchemaAsync<TOutput>
  • added: function transformAsync<TSchema extends DateSchema | DateSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): DateSchemaAsync<TOutput>
  • added: function transformAsync<TSchema extends EnumSchema<any> | EnumSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): EnumSchemaAsync<TSchema['enum'], TOutput>
  • added: function transformAsync<TSchema extends LiteralSchema<any> | LiteralSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): LiteralSchemaAsync<TSchema['literal'], TOutput>
  • added: function transformAsync<TSchema extends MapSchema<any, any> | MapSchemaAsync<any, any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): MapSchemaAsync<TSchema['map']['key'], TSchema['map']['value'], TOutput>
  • added: function transformAsync<TSchema extends NanSchema | NanSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NanSchemaAsync<TOutput>
  • added: function transformAsync<TSchema extends NativeEnumSchema<any> | NativeEnumSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NativeEnumSchemaAsync<TSchema['nativeEnum'], TOutput>
  • added: function transformAsync<TSchema extends NeverSchema | NeverSchemaAsync>(schema: TSchema, action: (value: Output<TSchema>) => never): NeverSchemaAsync
  • added: function transformAsync<TSchema extends NonNullableSchema<any> | NonNullableSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NonNullableSchemaAsync<TSchema['wrapped'], TOutput>
  • added: function transformAsync<TSchema extends NonNullishSchema<any> | NonNullishSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NonNullishSchemaAsync<TSchema['wrapped'], TOutput>
  • added: function transformAsync<TSchema extends NonOptionalSchema<any> | NonOptionalSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NonOptionalSchemaAsync<TSchema['wrapped'], TOutput>
  • added: function transformAsync<TSchema extends NullSchema | NullSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NullSchemaAsync<TOutput>
  • added: function transformAsync<TSchema extends NullableSchema<any> | NullableSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NullableSchemaAsync<TSchema['wrapped'], TOutput>
  • added: function transformAsync<TSchema extends NullishSchema<any> | NullishSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NullishSchemaAsync<TSchema['wrapped'], TOutput>
  • added: function transformAsync<TSchema extends NumberSchema | NumberSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NumberSchemaAsync<TOutput>
  • added: function transformAsync<TSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): ObjectSchemaAsync<TSchema['object'], TOutput>
  • added: function transformAsync<TSchema extends OptionalSchema<any> | OptionalSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): OptionalSchemaAsync<TSchema['wrapped'], TOutput>
  • added: function transformAsync<TSchema extends RecordSchema<any, any> | RecordSchemaAsync<any, any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): RecordSchemaAsync<TSchema['record']['key'], TSchema['record']['value'], TOutput>
  • added: function transformAsync<TSchema extends RecursiveSchema<any> | RecursiveSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): RecursiveSchemaAsync<TSchema['getter'], TOutput>
  • added: function transformAsync<TSchema extends SetSchema<any> | SetSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): SetSchemaAsync<TSchema['set']['value'], TOutput>
  • added: function transformAsync<TSchema extends StringSchema | StringSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): StringSchemaAsync<TOutput>
  • added: function transformAsync<TSchema extends SymbolSchema | SymbolSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): SymbolSchemaAsync<TOutput>
  • added: function transformAsync<TSchema extends TupleSchema<any, any> | TupleSchemaAsync<any, any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): TupleSchemaAsync<TSchema['tuple']['items'], TSchema['tuple']['rest'], TOutput>
  • added: function transformAsync<TSchema extends UndefinedSchema | UndefinedSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): UndefinedSchemaAsync<TOutput>
  • added: function transformAsync<TSchema extends UnionSchema<any> | UnionSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): UnionSchemaAsync<TSchema['union'], TOutput>
  • added: function transformAsync<TSchema extends UnknownSchema | UnknownSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): UnknownSchemaAsync<TOutput>
  • added: function transformAsync<TSchema extends VoidSchema | VoidSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): VoidSchemaAsync<TOutput>
  • added: function tuple<TTupleItems extends TupleShape, TTupleRest extends BaseSchema | undefined = undefined>(items: TTupleItems, error?: string, pipe?: Pipe<TupleOutput<TTupleItems, TTupleRest>>): TupleSchema<TTupleItems, TTupleRest>
  • added: function tuple<TTupleItems extends TupleShape, TTupleRest extends BaseSchema | undefined = undefined>(items: TTupleItems, pipe?: Pipe<TupleOutput<TTupleItems, TTupleRest>>): TupleSchema<TTupleItems, TTupleRest>
  • added: function tuple<TTupleItems extends TupleShape, TTupleRest extends BaseSchema | undefined = undefined>(items: TTupleItems, rest: TTupleRest, error?: string, pipe?: Pipe<TupleOutput<TTupleItems, TTupleRest>>): TupleSchema<TTupleItems, TTupleRest>
  • added: function tuple<TTupleItems extends TupleShape, TTupleRest extends BaseSchema | undefined = undefined>(items: TTupleItems, rest: TTupleRest, pipe?: Pipe<TupleOutput<TTupleItems, TTupleRest>>): TupleSchema<TTupleItems, TTupleRest>
  • added: function tupleAsync<TTupleItems extends TupleShapeAsync, TTupleRest extends BaseSchema | BaseSchemaAsync | undefined = undefined>(items: TTupleItems, error?: string, pipe?: PipeAsync<TupleOutput<TTupleItems, TTupleRest>>): TupleSchemaAsync<TTupleItems, TTupleRest>
  • added: function tupleAsync<TTupleItems extends TupleShapeAsync, TTupleRest extends BaseSchema | BaseSchemaAsync | undefined = undefined>(items: TTupleItems, pipe?: PipeAsync<TupleOutput<TTupleItems, TTupleRest>>): TupleSchemaAsync<TTupleItems, TTupleRest>
  • added: function tupleAsync<TTupleItems extends TupleShapeAsync, TTupleRest extends BaseSchema | BaseSchemaAsync | undefined = undefined>(items: TTupleItems, rest: TTupleRest, error?: string, pipe?: PipeAsync<TupleOutput<TTupleItems, TTupleRest>>): TupleSchemaAsync<TTupleItems, TTupleRest>
  • added: function tupleAsync<TTupleItems extends TupleShapeAsync, TTupleRest extends BaseSchema | BaseSchemaAsync | undefined = undefined>(items: TTupleItems, rest: TTupleRest, pipe?: PipeAsync<TupleOutput<TTupleItems, TTupleRest>>): TupleSchemaAsync<TTupleItems, TTupleRest>
  • added: function undefinedType(error?: string): UndefinedSchema
  • added: function undefinedTypeAsync(error?: string): UndefinedSchemaAsync
  • added: function union<TUnionOptions extends UnionOptions>(union: TUnionOptions, error?: string): UnionSchema<TUnionOptions>
  • added: function unionAsync<TUnionOptions extends UnionOptionsAsync>(union: TUnionOptions, error?: string): UnionSchemaAsync<TUnionOptions>
  • added: function unknown(pipe?: Pipe<unknown>): UnknownSchema
  • added: function unknownAsync(pipe?: PipeAsync<unknown>): UnknownSchemaAsync
  • added: function unwrap<TSchema extends OptionalSchema<any> | OptionalSchemaAsync<any> | NullableSchema<any> | NullableSchemaAsync<any> | NullishSchema<any> | NullishSchemaAsync<any> | NonOptionalSchema<any> | NonOptionalSchemaAsync<any> | NonNullableSchema<any> | NonNullableSchemaAsync<any> | NonNullishSchema<any> | NonNullishSchemaAsync<any>>(schema: TSchema): TSchema['wrapped']
  • added: function url<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function useDefault<TSchema extends BaseSchema | BaseSchemaAsync>(schema: TSchema, value: Input<TSchema>): TSchema
  • added: function uuid<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • added: function voidType(error?: string): VoidSchema
  • added: function voidTypeAsync(error?: string): VoidSchemaAsync
  • added: property ValiError.issues: Issues
  • added: type AnySchema<TOutput = any> = BaseSchema<any, TOutput> & { schema: 'any' }
  • added: type AnySchemaAsync<TOutput = any> = BaseSchemaAsync<any, TOutput> & { schema: 'any' }
  • added: type ArrayPathItem = { schema: 'array'; input: any[]; key: number; value: any }
  • added: type ArraySchema<TArrayItem extends BaseSchema, TOutput = Output<TArrayItem>[]> = BaseSchema<Input<TArrayItem>[], TOutput> & { schema: 'array'; array: { item: TArrayItem } }
  • added: type ArraySchemaAsync<TArrayItem extends BaseSchema | BaseSchemaAsync, TOutput = Output<TArrayItem>[]> = BaseSchemaAsync<Input<TArrayItem>[], TOutput> & { schema: 'array'; array: { item: TArrayItem } }
  • added: type BaseSchema<TInput = any, TOutput = TInput> = { async: false; parse(input: unknown, info?: ParseInfo): TOutput; types?: { input: TInput; output: TOutput } }
  • added: type BaseSchemaAsync<TInput = any, TOutput = TInput> = { async: true; parse(input: unknown, info?: ParseInfo): Promise<TOutput>; types?: { input: TInput; output: TOutput } }
  • added: type BigintSchema<TOutput = bigint> = BaseSchema<bigint, TOutput> & { schema: 'bigint' }
  • added: type BigintSchemaAsync<TOutput = bigint> = BaseSchemaAsync<bigint, TOutput> & { schema: 'bigint' }
  • added: type BlobSchema<TOutput = Blob> = BaseSchema<Blob, TOutput> & { schema: 'blob' }
  • added: type BlobSchemaAsync<TOutput = Blob> = BaseSchemaAsync<Blob, TOutput> & { schema: 'blob' }
  • added: type BooleanSchema<TOutput = boolean> = BaseSchema<boolean, TOutput> & { schema: 'boolean' }
  • added: type BooleanSchemaAsync<TOutput = boolean> = BaseSchemaAsync<boolean, TOutput> & { schema: 'boolean' }
  • added: type DateSchema<TOutput = Date> = BaseSchema<Date, TOutput> & { schema: 'date' }
  • added: type DateSchemaAsync<TOutput = Date> = BaseSchemaAsync<Date, TOutput> & { schema: 'date' }
  • added: type EnumSchema<TEnumValue extends EnumValue, TOutput = TEnumValue[number]> = BaseSchema<TEnumValue[number], TOutput> & { schema: 'enum'; enum: TEnumValue }
  • added: type EnumSchemaAsync<TEnumValue extends EnumValue, TOutput = TEnumValue[number]> = BaseSchemaAsync<TEnumValue[number], TOutput> & { schema: 'enum'; enum: TEnumValue }
  • added: type EnumValue = Readonly<[string, ...string[]]>
  • added: type FlatErrors = { root?: [string, ...string[]]; nested: Partial<Record<string, [string, ...string[]]>> }
  • added: type Input<TSchema extends BaseSchema | BaseSchemaAsync> = NonNullable<TSchema['types']>['input']
  • added: type Issue = { reason: IssueReason; validation: string; origin: 'key' | 'value'; message: string; input: any; path?: PathItem[]; issues?: Issues }
  • added: type IssueReason = 'type' | 'string' | 'number' | 'bigint' | 'blob' | 'boolean' | 'any' | 'unknown' | 'date' | 'array' | 'tuple' | 'map' | 'object' | 'record' | 'set' | 'special'
  • added: type Issues = [Issue, ...Issue[]]
  • added: type LiteralSchema<TLiteralValue extends string | number, TOutput = TLiteralValue> = BaseSchema<TLiteralValue, TOutput> & { schema: 'literal'; literal: TLiteralValue }
  • added: type LiteralSchemaAsync<TLiteralValue extends string | number, TOutput = TLiteralValue> = BaseSchemaAsync<TLiteralValue, TOutput> & { schema: 'literal'; literal: TLiteralValue }
  • added: type MapInput<TMapKey extends BaseSchema | BaseSchemaAsync, TMapValue extends BaseSchema | BaseSchemaAsync> = Map<Input<TMapKey>, Input<TMapValue>>
  • added: type MapOutput<TMapKey extends BaseSchema | BaseSchemaAsync, TMapValue extends BaseSchema | BaseSchemaAsync> = Map<Output<TMapKey>, Output<TMapValue>>
  • added: type MapPathItem = { schema: 'map'; input: Map<any, any>; key: any; value: any }
  • added: type MapSchema<TMapKey extends BaseSchema, TMapValue extends BaseSchema, TOutput = MapOutput<TMapKey, TMapValue>> = BaseSchema<MapInput<TMapKey, TMapValue>, TOutput> & { schema: 'map'; map: { key: TMapKey; value: TMapValue } }
  • added: type MapSchemaAsync<TMapKey extends BaseSchema | BaseSchemaAsync, TMapValue extends BaseSchema | BaseSchemaAsync, TOutput = MapOutput<TMapKey, TMapValue>> = BaseSchemaAsync<MapInput<TMapKey, TMapValue>, TOutput> & { schema: 'map'; map: { key: TMapKey; value: TMapValue } }
  • added: type NanSchema<TOutput = number> = BaseSchema<number, TOutput> & { schema: 'nan' }
  • added: type NanSchemaAsync<TOutput = number> = BaseSchemaAsync<number, TOutput> & { schema: 'nan' }
  • added: type NativeEnum = { [key: string]: string | number; [key: number]: string }
  • added: type NativeEnumSchema<TNativeEnum extends NativeEnum, TOutput = TNativeEnum[keyof TNativeEnum]> = BaseSchema<TNativeEnum[keyof TNativeEnum], TOutput> & { schema: 'native_enum'; nativeEnum: TNativeEnum }
  • added: type NativeEnumSchemaAsync<TNativeEnum extends NativeEnum, TOutput = TNativeEnum[keyof TNativeEnum]> = BaseSchemaAsync<TNativeEnum[keyof TNativeEnum], TOutput> & { schema: 'native_enum'; nativeEnum: TNativeEnum }
  • added: type NeverSchema = BaseSchema<never> & { schema: 'never' }
  • added: type NeverSchemaAsync = BaseSchemaAsync<never> & { schema: 'never' }
  • added: type NonNullable<T> = T extends null ? never : T
  • added: type NonNullableSchema<TWrappedSchema extends BaseSchema, TOutput = NonNullable$1<Output<TWrappedSchema>>> = BaseSchema<NonNullable$1<Input<TWrappedSchema>>, TOutput> & { schema: 'non_nullable'; wrapped: TWrappedSchema }
  • added: type NonNullableSchemaAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync, TOutput = NonNullable$1<Output<TWrappedSchema>>> = BaseSchemaAsync<NonNullable$1<Input<TWrappedSchema>>, TOutput> & { schema: 'non_nullable'; wrapped: TWrappedSchema }
  • added: type NonNullish<T> = T extends null | undefined ? never : T
  • added: type NonNullishSchema<TWrappedSchema extends BaseSchema, TOutput = NonNullish<Output<TWrappedSchema>>> = BaseSchema<NonNullish<Input<TWrappedSchema>>, TOutput> & { schema: 'non_nullish'; wrapped: TWrappedSchema }
  • added: type NonNullishSchemaAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync, TOutput = NonNullish<Output<TWrappedSchema>>> = BaseSchemaAsync<NonNullish<Input<TWrappedSchema>>, TOutput> & { schema: 'non_nullish'; wrapped: TWrappedSchema }
  • added: type NonOptional<T> = T extends undefined ? never : T
  • added: type NonOptionalSchema<TWrappedSchema extends BaseSchema, TOutput = NonOptional<Output<TWrappedSchema>>> = BaseSchema<NonOptional<Input<TWrappedSchema>>, TOutput> & { schema: 'non_optional'; wrapped: TWrappedSchema }
  • added: type NonOptionalSchemaAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync, TOutput = NonOptional<Output<TWrappedSchema>>> = BaseSchemaAsync<NonOptional<Input<TWrappedSchema>>, TOutput> & { schema: 'non_optional'; wrapped: TWrappedSchema }
  • added: type NullSchema<TOutput = null> = BaseSchema<null, TOutput> & { schema: 'null' }
  • added: type NullSchemaAsync<TOutput = null> = BaseSchemaAsync<null, TOutput> & { schema: 'null' }
  • added: type NullableSchema<TWrappedSchema extends BaseSchema, TOutput = Output<TWrappedSchema> | null> = BaseSchema<Input<TWrappedSchema> | null, TOutput> & { schema: 'nullable'; wrapped: TWrappedSchema }
  • added: type NullableSchemaAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync, TOutput = Output<TWrappedSchema> | null> = BaseSchemaAsync<Input<TWrappedSchema> | null, TOutput> & { schema: 'nullable'; wrapped: TWrappedSchema }
  • added: type NullishSchema<TWrappedSchema extends BaseSchema, TOutput = Output<TWrappedSchema> | null | undefined> = BaseSchema<Input<TWrappedSchema> | null | undefined, TOutput> & { schema: 'nullish'; wrapped: TWrappedSchema }
  • added: type NullishSchemaAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync, TOutput = Output<TWrappedSchema> | null | undefined> = BaseSchemaAsync<Input<TWrappedSchema> | null | undefined, TOutput> & { schema: 'nullish'; wrapped: TWrappedSchema }
  • added: type NumberSchema<TOutput = number> = BaseSchema<number, TOutput> & { schema: 'number' }
  • added: type NumberSchemaAsync<TOutput = number> = BaseSchemaAsync<number, TOutput> & { schema: 'number' }
  • added: type ObjectInput<TObjectShape extends ObjectShape | ObjectShapesAsync> = { [TKey in keyof TObjectShape]: Input<TObjectShape[TKey]> }
  • added: type ObjectOutput<TObjectShape extends ObjectShape | ObjectShapesAsync> = { [TKey in keyof TObjectShape]: Output<TObjectShape[TKey]> }
  • added: type ObjectPathItem = { schema: 'object'; input: Record<string, any>; key: string; value: any }
  • added: type ObjectSchema<TObjectShape extends ObjectShape, TOutput = ObjectOutput<TObjectShape>> = BaseSchema<ObjectInput<TObjectShape>, TOutput> & { schema: 'object'; object: TObjectShape }
  • added: type ObjectSchemaAsync<TObjectShape extends ObjectShapesAsync, TOutput = ObjectOutput<TObjectShape>> = BaseSchemaAsync<ObjectInput<TObjectShape>, TOutput> & { schema: 'object'; object: TObjectShape }
  • added: type ObjectShape = Record<string, BaseSchema<any>>
  • added: type ObjectShapesAsync = Record<string, BaseSchema<any> | BaseSchemaAsync<any>>
  • added: type OptionalSchema<TWrappedSchema extends BaseSchema, TOutput = Output<TWrappedSchema> | undefined> = BaseSchema<Input<TWrappedSchema> | undefined, TOutput> & { schema: 'optional'; wrapped: TWrappedSchema }
  • added: type OptionalSchemaAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync, TOutput = Output<TWrappedSchema> | undefined> = BaseSchemaAsync<Input<TWrappedSchema> | undefined, TOutput> & { schema: 'optional'; wrapped: TWrappedSchema }
  • added: type Output<TSchema extends BaseSchema | BaseSchemaAsync> = NonNullable<TSchema['types']>['output']
  • added: type ParseInfo = Partial<Pick<Issue, 'origin' | 'path'>>
  • added: type PathItem = ObjectPathItem | RecordPathItem | TuplePathItem | MapPathItem | SetPathItem | ArrayPathItem
  • added: type Pipe<TValue> = ((value: TValue, info: ValidateInfo) => TValue)[]
  • added: type PipeAsync<TValue> = ((value: TValue, info: ValidateInfo) => TValue | Promise<TValue>)[]
  • added: type RecordInput<TRecordKey extends RecordKey | RecordKeyAsync, TRecordValue extends BaseSchema | BaseSchemaAsync> = Record<Input<TRecordKey>, Input<TRecordValue>>
  • added: type RecordKey = StringSchema<string | number | symbol>
  • added: type RecordKeyAsync = StringSchema<string | number | symbol> | StringSchemaAsync<string | number | symbol>
  • added: type RecordOutput<TRecordKey extends RecordKey | RecordKeyAsync, TRecordValue extends BaseSchema | BaseSchemaAsync> = Record<Output<TRecordKey>, Output<TRecordValue>>
  • added: type RecordPathItem = { schema: 'record'; input: Record<string | number | symbol, any>; key: string | number | symbol; value: any }
  • added: type RecordSchema<TRecordValue extends BaseSchema, TRecordKey extends RecordKey = StringSchema, TOutput = RecordOutput<TRecordKey, TRecordValue>> = BaseSchema<RecordInput<TRecordKey, TRecordValue>, TOutput> & { schema: 'record'; record: { key: TRecordKey; value: TRecordValue } }
  • added: type RecordSchemaAsync<TRecordValue extends BaseSchema | BaseSchemaAsync, TRecordKey extends RecordKeyAsync = StringSchema, TOutput = RecordOutput<TRecordKey, TRecordValue>> = BaseSchemaAsync<RecordInput<TRecordKey, TRecordValue>, TOutput> & { schema: 'record'; record: { key: TRecordKey; value: TRecordValue } }
  • added: type RecursiveSchema<TSchemaGetter extends () => BaseSchema, TOutput = Output<ReturnType<TSchemaGetter>>> = BaseSchema<Input<ReturnType<TSchemaGetter>>, TOutput> & { schema: 'recursive'; getter: TSchemaGetter }
  • added: type RecursiveSchemaAsync<TSchemaGetter extends () => BaseSchema | BaseSchemaAsync, TOutput = Output<ReturnType<TSchemaGetter>>> = BaseSchemaAsync<Input<ReturnType<TSchemaGetter>>, TOutput> & { schema: 'recursive'; getter: TSchemaGetter }
  • added: type SetInput<TSetValue extends BaseSchema | BaseSchemaAsync> = Set<Input<TSetValue>>
  • added: type SetOutput<TSetValue extends BaseSchema | BaseSchemaAsync> = Set<Output<TSetValue>>
  • added: type SetPathItem = { schema: 'set'; input: Set<any>; key: number; value: any }
  • added: type SetSchema<TSetValue extends BaseSchema, TOutput = SetOutput<TSetValue>> = BaseSchema<SetInput<TSetValue>, TOutput> & { schema: 'set'; set: { value: TSetValue } }
  • added: type SetSchemaAsync<TSetValue extends BaseSchema | BaseSchemaAsync, TOutput = SetOutput<TSetValue>> = BaseSchemaAsync<SetInput<TSetValue>, TOutput> & { schema: 'set'; set: { value: TSetValue } }
  • added: type SpecialSchema<TInput, TOutput = TInput> = BaseSchema<TInput, TOutput> & { schema: 'special' }
  • added: type SpecialSchemaAsync<TInput, TOutput = TInput> = BaseSchemaAsync<TInput, TOutput> & { schema: 'special' }
  • added: type StringSchema<TOutput = string> = BaseSchema<string, TOutput> & { schema: 'string' }
  • added: type StringSchemaAsync<TOutput = string> = BaseSchemaAsync<string, TOutput> & { schema: 'string' }
  • added: type SymbolSchema<TOutput = symbol> = BaseSchema<symbol, TOutput> & { schema: 'symbol' }
  • added: type SymbolSchemaAsync<TOutput = symbol> = BaseSchemaAsync<symbol, TOutput> & { schema: 'symbol' }
  • added: type TupleInput<TTupleItems extends TupleShape | TupleShapeAsync, TTupleRest extends BaseSchema | BaseSchemaAsync | undefined> = TTupleRest extends BaseSchema | BaseSchemaAsync ? [...{ [TKey in keyof TTupleItems]: Input<TTupleItems[TKey]> }, ...Input<TTupleRest>[]] : { [TKey in keyof TTu…
  • added: type TupleOutput<TTupleItems extends TupleShape | TupleShapeAsync, TTupleRest extends BaseSchema | BaseSchemaAsync | undefined> = TTupleRest extends BaseSchema | BaseSchemaAsync ? [...{ [TKey in keyof TTupleItems]: Output<TTupleItems[TKey]> }, ...Output<TTupleRest>[]] : { [TKey in keyof T…
  • added: type TuplePathItem = { schema: 'tuple'; input: [any, ...any[]]; key: number; value: any }
  • added: type TupleSchema<TTupleItems extends TupleShape, TTupleRest extends BaseSchema | undefined = undefined, TOutput = TupleOutput<TTupleItems, TTupleRest>> = BaseSchema<TupleInput<TTupleItems, TTupleRest>, TOutput> & { schema: 'tuple'; tuple: { items: TTupleItems; rest: TTupleRest } }
  • added: type TupleSchemaAsync<TTupleItems extends TupleShapeAsync, TTupleRest extends BaseSchema | BaseSchemaAsync | undefined = undefined, TOutput = TupleOutput<TTupleItems, TTupleRest>> = BaseSchemaAsync<TupleInput<TTupleItems, TTupleRest>, TOutput> & { schema: 'tuple'; tuple: { items: TTupleItems; rest: TTupleRest } }
  • added: type TupleShape = [BaseSchema, ...BaseSchema[]]
  • added: type TupleShapeAsync = [BaseSchema | BaseSchemaAsync, ...(BaseSchema[] | BaseSchemaAsync[])]
  • added: type UndefinedSchema<TOutput = undefined> = BaseSchema<undefined, TOutput> & { schema: 'undefined' }
  • added: type UndefinedSchemaAsync<TOutput = undefined> = BaseSchemaAsync<undefined, TOutput> & { schema: 'undefined' }
  • added: type UnionOptions = [BaseSchema<any>, BaseSchema<any>, ...BaseSchema<any>[]]
  • added: type UnionOptionsAsync = [BaseSchema | BaseSchemaAsync, BaseSchema | BaseSchemaAsync, ...(BaseSchema[] | BaseSchemaAsync[])]
  • added: type UnionSchema<TUnionOptions extends UnionOptions, TOutput = Output<TUnionOptions[number]>> = BaseSchema<Input<TUnionOptions[number]>, TOutput> & { schema: 'union'; union: TUnionOptions }
  • added: type UnionSchemaAsync<TUnionOptions extends UnionOptionsAsync, TOutput = Output<TUnionOptions[number]>> = BaseSchemaAsync<Input<TUnionOptions[number]>, TOutput> & { schema: 'union'; union: TUnionOptions }
  • added: type UnknownSchema<TOutput = unknown> = BaseSchema<unknown, TOutput> & { schema: 'unknown' }
  • added: type UnknownSchemaAsync<TOutput = unknown> = BaseSchemaAsync<unknown, TOutput> & { schema: 'unknown' }
  • added: type ValidateInfo = ParseInfo & Pick<Issue, 'reason'>
  • added: type VoidSchema<TOutput = void> = BaseSchema<void, TOutput> & { schema: 'void' }
  • added: type VoidSchemaAsync<TOutput = void> = BaseSchemaAsync<void, TOutput> & { schema: 'void' }
  • removed: class ValiError extends Error
  • removed: constructor ValiError(issues: Issues)
  • removed: property ValiError.issues: Issues
  • removed: type Issue = { reason: IssueReason; validation: string; origin: 'key' | 'value'; message: string; input: any; path?: PathItem[]; issues?: Issues }
  • removed: type IssueReason = 'type' | 'string' | 'number' | 'bigint' | 'blob' | 'boolean' | 'any' | 'unknown' | 'date' | 'array' | 'tuple' | 'map' | 'object' | 'record' | 'set' | 'special'
  • removed: type Issues = [Issue, ...Issue[]]
  • removed: export * from './ValiError'
  • removed: function flatten(error: ValiError): FlatErrors
  • removed: type FlatErrors = { root?: [string, ...string[]]; nested: Partial<Record<string, [string, ...string[]]>> }
  • removed: export * from './flatten'
  • removed: export * from './ValiError'
  • removed: export * from './flatten'
  • removed: export * from './error'
  • removed: export * from './methods'
  • removed: export * from './schemas'
  • removed: export * from './transformations'
  • removed: export * from './types'
  • removed: export * from './validations'
  • removed: function coerce<TSchema extends BaseSchema>(schema: TSchema, action: (value: unknown) => Input<TSchema>): TSchema
  • removed: function coerceAsync<TSchema extends BaseSchemaAsync>(schema: TSchema, action: (value: unknown) => Input<TSchema> | Promise<Input<TSchema>>): TSchema
  • removed: export * from './coerce'
  • removed: export * from './coerceAsync'
  • removed: export * from './coerce'
  • removed: export * from './keyof'
  • removed: export * from './merge'
  • removed: export * from './omit'
  • removed: export * from './parse'
  • removed: export * from './partial'
  • removed: export * from './pick'
  • removed: export * from './required'
  • removed: export * from './safeParse'
  • removed: export * from './transform'
  • removed: export * from './unwrap'
  • removed: export * from './useDefault'
  • removed: export * from './keyof'
  • removed: function keyof<TSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>>(schema: TSchema): EnumSchema<TupleOrNever<UnionToTuple<keyof TSchema['object']>>>
  • removed: export * from './merge'
  • removed: export * from './mergeAsync'
  • removed: function merge<TObjectSchemas extends ObjectSchemas>(schemas: TObjectSchemas, error?: string, pipe?: Pipe<ObjectOutput<MergeSchemaObjects<TObjectSchemas>>>): ObjectSchema<MergeSchemaObjects<TObjectSchemas>>
  • removed: function merge<TObjectSchemas extends ObjectSchemas>(schemas: TObjectSchemas, pipe?: Pipe<ObjectOutput<MergeSchemaObjects<TObjectSchemas>>>): ObjectSchema<MergeSchemaObjects<TObjectSchemas>>
  • removed: function mergeAsync<TObjectSchemas extends ObjectSchemas>(schemas: TObjectSchemas, error?: string, pipe?: PipeAsync<ObjectOutput<MergeSchemaObjects<TObjectSchemas>>>): ObjectSchemaAsync<MergeSchemaObjects<TObjectSchemas>>
  • removed: function mergeAsync<TObjectSchemas extends ObjectSchemas>(schemas: TObjectSchemas, pipe?: PipeAsync<ObjectOutput<MergeSchemaObjects<TObjectSchemas>>>): ObjectSchemaAsync<MergeSchemaObjects<TObjectSchemas>>
  • removed: type MergeSchemaObjects<TObjectSchemas extends (ObjectSchema<any> | ObjectSchemaAsync<any>)[]> = TObjectSchemas extends [infer TFirstObjectSchema] ? TFirstObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any> ? TFirstObjectSchema['object'] : neve…
  • removed: export * from './omit'
  • removed: export * from './omitAsync'
  • removed: function omit<TObjectSchema extends ObjectSchema<any>, TKeys extends ObjectKeys<TObjectSchema>>(schema: TObjectSchema, keys: TKeys, error?: string, pipe?: Pipe<ObjectOutput<Omit<TObjectSchema['object'], TKeys[number]>>>): ObjectSchema<Omit<TObjectSchema['object'], TKeys[number]>>
  • removed: function omit<TObjectSchema extends ObjectSchema<any>, TKeys extends ObjectKeys<TObjectSchema>>(schema: TObjectSchema, keys: TKeys, pipe?: Pipe<ObjectOutput<Omit<TObjectSchema['object'], TKeys[number]>>>): ObjectSchema<Omit<TObjectSchema['object'], TKeys[number]>>
  • removed: function omitAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>, TKeys extends ObjectKeys<TObjectSchema>>(schema: TObjectSchema, keys: TKeys, error?: string, pipe?: PipeAsync<ObjectOutput<Omit<TObjectSchema['object'], TKeys[number]>>>): ObjectSchemaAsync<Omit<TObjectSchema['object'], TKeys[number]>>
  • removed: function omitAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>, TKeys extends ObjectKeys<TObjectSchema>>(schema: TObjectSchema, keys: TKeys, pipe?: PipeAsync<ObjectOutput<Omit<TObjectSchema['object'], TKeys[number]>>>): ObjectSchemaAsync<Omit<TObjectSchema['object'], TKeys[number]>>
  • removed: type ObjectKeys<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>> = [keyof TObjectSchema['object'], ...(keyof TObjectSchema['object'])[]]
  • removed: export * from './parse'
  • removed: export * from './parseAsync'
  • removed: function parse<TSchema extends BaseSchema>(schema: TSchema, input: unknown): Output<TSchema>
  • removed: function parseAsync<TSchema extends BaseSchema | BaseSchemaAsync>(schema: TSchema, input: unknown): Promise<Output<TSchema>>
  • removed: export * from './partial'
  • removed: export * from './partialAsync'
  • removed: function partial<TObjectSchema extends ObjectSchema<any>>(schema: TObjectSchema, error?: string, pipe?: Pipe<ObjectOutput<Partial<TObjectSchema['object']>>>): ObjectSchema<Partial<TObjectSchema['object']>>
  • removed: function partial<TObjectSchema extends ObjectSchema<any>>(schema: TObjectSchema, pipe?: Pipe<ObjectOutput<Partial<TObjectSchema['object']>>>): ObjectSchema<Partial<TObjectSchema['object']>>
  • removed: function partialAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>>(schema: TObjectSchema, error?: string, pipe?: Pipe<ObjectOutput<Partial<TObjectSchema['object']>>>): ObjectSchemaAsync<Partial<TObjectSchema['object']>>
  • removed: function partialAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>>(schema: TObjectSchema, pipe?: Pipe<ObjectOutput<Partial<TObjectSchema['object']>>>): ObjectSchemaAsync<Partial<TObjectSchema['object']>>
  • removed: export * from './pick'
  • removed: export * from './pickAsync'
  • removed: function pick<TObjectSchema extends ObjectSchema<any>, TKeys extends (keyof TObjectSchema['object'])[]>(schema: TObjectSchema, keys: TKeys, error?: string, pipe?: Pipe<ObjectOutput<Pick<TObjectSchema['object'], TKeys[number]>>>): ObjectSchema<Pick<TObjectSchema['object'], TKeys[number]>>
  • removed: function pick<TObjectSchema extends ObjectSchema<any>, TKeys extends (keyof TObjectSchema['object'])[]>(schema: TObjectSchema, keys: TKeys, pipe?: Pipe<ObjectOutput<Pick<TObjectSchema['object'], TKeys[number]>>>): ObjectSchema<Pick<TObjectSchema['object'], TKeys[number]>>
  • removed: function pickAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>, TKeys extends (keyof TObjectSchema['object'])[]>(schema: TObjectSchema, keys: TKeys, error?: string, pipe?: PipeAsync<ObjectOutput<Pick<TObjectSchema['object'], TKeys[number]>>>): ObjectSchemaAsync<Pick<TObjectSchema['object'], TKeys[number]>>
  • removed: function pickAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>, TKeys extends (keyof TObjectSchema['object'])[]>(schema: TObjectSchema, keys: TKeys, pipe?: PipeAsync<ObjectOutput<Pick<TObjectSchema['object'], TKeys[number]>>>): ObjectSchemaAsync<Pick<TObjectSchema['object'], TKeys[number]>>
  • removed: export * from './required'
  • removed: export * from './requiredAsync'
  • removed: function required<TObjectSchema extends ObjectSchema<any>>(schema: TObjectSchema, error?: string, pipe?: Pipe<ObjectOutput<Required<TObjectSchema['object']>>>): ObjectSchema<Required<TObjectSchema['object']>>
  • removed: function required<TObjectSchema extends ObjectSchema<any>>(schema: TObjectSchema, pipe?: Pipe<ObjectOutput<Required<TObjectSchema['object']>>>): ObjectSchema<Required<TObjectSchema['object']>>
  • removed: function requiredAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>>(schema: TObjectSchema, error?: string, pipe?: Pipe<ObjectOutput<Required<TObjectSchema['object']>>>): ObjectSchemaAsync<Required<TObjectSchema['object']>>
  • removed: function requiredAsync<TObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>>(schema: TObjectSchema, pipe?: Pipe<ObjectOutput<Required<TObjectSchema['object']>>>): ObjectSchemaAsync<Required<TObjectSchema['object']>>
  • removed: export * from './safeParse'
  • removed: export * from './safeParseAsync'
  • removed: function safeParse<TSchema extends BaseSchema>(schema: TSchema, input: unknown): { success: true; data: Output<TSchema> } | { success: false; error: ValiError }
  • removed: function safeParseAsync<TSchema extends BaseSchema | BaseSchemaAsync>(schema: TSchema, input: unknown): Promise<{ success: true; data: Output<TSchema> } | { success: false; error: ValiError }>
  • removed: export * from './transform'
  • removed: export * from './transformAsync'
  • removed: function transform<TSchema extends AnySchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): AnySchema<TOutput>
  • removed: function transform<TSchema extends ArraySchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): ArraySchema<TSchema['array']['item'], TOutput>
  • removed: function transform<TSchema extends BigintSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): BigintSchema<TOutput>
  • removed: function transform<TSchema extends BooleanSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): BooleanSchema<TOutput>
  • removed: function transform<TSchema extends DateSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): DateSchema<TOutput>
  • removed: function transform<TSchema extends EnumSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): EnumSchema<TSchema['enum'], TOutput>
  • removed: function transform<TSchema extends LiteralSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): LiteralSchema<TSchema['literal'], TOutput>
  • removed: function transform<TSchema extends MapSchema<any, any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): MapSchema<TSchema['map']['key'], TSchema['map']['value'], TOutput>
  • removed: function transform<TSchema extends NanSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NanSchema<TOutput>
  • removed: function transform<TSchema extends NativeEnumSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NativeEnumSchema<TSchema['nativeEnum'], TOutput>
  • removed: function transform<TSchema extends NeverSchema>(schema: TSchema, action: (value: Output<TSchema>) => never): NeverSchema
  • removed: function transform<TSchema extends NonNullableSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NonNullableSchema<TSchema['wrapped'], TOutput>
  • removed: function transform<TSchema extends NonNullishSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NonNullishSchema<TSchema['wrapped'], TOutput>
  • removed: function transform<TSchema extends NonOptionalSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NonOptionalSchema<TSchema['wrapped'], TOutput>
  • removed: function transform<TSchema extends NullSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NullSchema<TOutput>
  • removed: function transform<TSchema extends NullableSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NullableSchema<TSchema['wrapped'], TOutput>
  • removed: function transform<TSchema extends NullishSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NullishSchema<TSchema['wrapped'], TOutput>
  • removed: function transform<TSchema extends NumberSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): NumberSchema<TOutput>
  • removed: function transform<TSchema extends ObjectSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): ObjectSchema<TSchema['object'], TOutput>
  • removed: function transform<TSchema extends OptionalSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): OptionalSchema<TSchema['wrapped'], TOutput>
  • removed: function transform<TSchema extends RecordSchema<any, any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): RecordSchema<TSchema['record']['key'], TSchema['record']['value'], TOutput>
  • removed: function transform<TSchema extends RecursiveSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): RecursiveSchema<TSchema['getter'], TOutput>
  • removed: function transform<TSchema extends SetSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): SetSchema<TSchema['set']['value'], TOutput>
  • removed: function transform<TSchema extends StringSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): StringSchema<TOutput>
  • removed: function transform<TSchema extends SymbolSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): SymbolSchema<TOutput>
  • removed: function transform<TSchema extends TupleSchema<any, any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): TupleSchema<TSchema['tuple']['items'], TSchema['tuple']['rest'], TOutput>
  • removed: function transform<TSchema extends UndefinedSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): UndefinedSchema<TOutput>
  • removed: function transform<TSchema extends UnionSchema<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): UnionSchema<TSchema['union'], TOutput>
  • removed: function transform<TSchema extends UnknownSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): UnknownSchema<TOutput>
  • removed: function transform<TSchema extends VoidSchema, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput): VoidSchema<TOutput>
  • removed: function transformAsync<TSchema extends AnySchema | AnySchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): AnySchemaAsync<TOutput>
  • removed: function transformAsync<TSchema extends ArraySchema<any> | ArraySchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): ArraySchemaAsync<TSchema['array']['item'], TOutput>
  • removed: function transformAsync<TSchema extends BigintSchema | BigintSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): BigintSchemaAsync<TOutput>
  • removed: function transformAsync<TSchema extends BooleanSchema | BooleanSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): BooleanSchemaAsync<TOutput>
  • removed: function transformAsync<TSchema extends DateSchema | DateSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): DateSchemaAsync<TOutput>
  • removed: function transformAsync<TSchema extends EnumSchema<any> | EnumSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): EnumSchemaAsync<TSchema['enum'], TOutput>
  • removed: function transformAsync<TSchema extends LiteralSchema<any> | LiteralSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): LiteralSchemaAsync<TSchema['literal'], TOutput>
  • removed: function transformAsync<TSchema extends MapSchema<any, any> | MapSchemaAsync<any, any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): MapSchemaAsync<TSchema['map']['key'], TSchema['map']['value'], TOutput>
  • removed: function transformAsync<TSchema extends NanSchema | NanSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NanSchemaAsync<TOutput>
  • removed: function transformAsync<TSchema extends NativeEnumSchema<any> | NativeEnumSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NativeEnumSchemaAsync<TSchema['nativeEnum'], TOutput>
  • removed: function transformAsync<TSchema extends NeverSchema | NeverSchemaAsync>(schema: TSchema, action: (value: Output<TSchema>) => never): NeverSchemaAsync
  • removed: function transformAsync<TSchema extends NonNullableSchema<any> | NonNullableSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NonNullableSchemaAsync<TSchema['wrapped'], TOutput>
  • removed: function transformAsync<TSchema extends NonNullishSchema<any> | NonNullishSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NonNullishSchemaAsync<TSchema['wrapped'], TOutput>
  • removed: function transformAsync<TSchema extends NonOptionalSchema<any> | NonOptionalSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NonOptionalSchemaAsync<TSchema['wrapped'], TOutput>
  • removed: function transformAsync<TSchema extends NullSchema | NullSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NullSchemaAsync<TOutput>
  • removed: function transformAsync<TSchema extends NullableSchema<any> | NullableSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NullableSchemaAsync<TSchema['wrapped'], TOutput>
  • removed: function transformAsync<TSchema extends NullishSchema<any> | NullishSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NullishSchemaAsync<TSchema['wrapped'], TOutput>
  • removed: function transformAsync<TSchema extends NumberSchema | NumberSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): NumberSchemaAsync<TOutput>
  • removed: function transformAsync<TSchema extends ObjectSchema<any> | ObjectSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): ObjectSchemaAsync<TSchema['object'], TOutput>
  • removed: function transformAsync<TSchema extends OptionalSchema<any> | OptionalSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): OptionalSchemaAsync<TSchema['wrapped'], TOutput>
  • removed: function transformAsync<TSchema extends RecordSchema<any, any> | RecordSchemaAsync<any, any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): RecordSchemaAsync<TSchema['record']['key'], TSchema['record']['value'], TOutput>
  • removed: function transformAsync<TSchema extends RecursiveSchema<any> | RecursiveSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): RecursiveSchemaAsync<TSchema['getter'], TOutput>
  • removed: function transformAsync<TSchema extends SetSchema<any> | SetSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): SetSchemaAsync<TSchema['set']['value'], TOutput>
  • removed: function transformAsync<TSchema extends StringSchema | StringSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): StringSchemaAsync<TOutput>
  • removed: function transformAsync<TSchema extends SymbolSchema | SymbolSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): SymbolSchemaAsync<TOutput>
  • removed: function transformAsync<TSchema extends TupleSchema<any, any> | TupleSchemaAsync<any, any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): TupleSchemaAsync<TSchema['tuple']['items'], TSchema['tuple']['rest'], TOutput>
  • removed: function transformAsync<TSchema extends UndefinedSchema | UndefinedSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): UndefinedSchemaAsync<TOutput>
  • removed: function transformAsync<TSchema extends UnionSchema<any> | UnionSchemaAsync<any>, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): UnionSchemaAsync<TSchema['union'], TOutput>
  • removed: function transformAsync<TSchema extends UnknownSchema | UnknownSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): UnknownSchemaAsync<TOutput>
  • removed: function transformAsync<TSchema extends VoidSchema | VoidSchemaAsync, TOutput>(schema: TSchema, action: (value: Output<TSchema>) => TOutput | Promise<TOutput>): VoidSchemaAsync<TOutput>
  • removed: export * from './unwrap'
  • removed: function unwrap<TSchema extends OptionalSchema<any> | OptionalSchemaAsync<any> | NullableSchema<any> | NullableSchemaAsync<any> | NullishSchema<any> | NullishSchemaAsync<any> | NonOptionalSchema<any> | NonOptionalSchemaAsync<any> | NonNullableSchema<any> | NonNullableSchemaAsync<any> | NonNullishSchema<any> | NonNullishSchemaAsync<any>>(schema: TSchema): TSchema['wrapped']
  • removed: export * from './useDefault'
  • removed: function useDefault<TSchema extends BaseSchema | BaseSchemaAsync>(schema: TSchema, value: Input<TSchema>): TSchema
  • removed: function any(pipe?: Pipe<any>): AnySchema
  • removed: type AnySchema<TOutput = any> = BaseSchema<any, TOutput> & { schema: 'any' }
  • removed: function anyAsync(pipe?: PipeAsync<any>): AnySchemaAsync
  • removed: type AnySchemaAsync<TOutput = any> = BaseSchemaAsync<any, TOutput> & { schema: 'any' }
  • removed: export * from './any'
  • removed: export * from './anyAsync'
  • removed: function array<TArrayItem extends BaseSchema>(item: TArrayItem, error?: string, pipe?: Pipe<Output<TArrayItem>[]>): ArraySchema<TArrayItem>
  • removed: function array<TArrayItem extends BaseSchema>(item: TArrayItem, pipe?: Pipe<Output<TArrayItem>[]>): ArraySchema<TArrayItem>
  • removed: type ArrayPathItem = { schema: 'array'; input: any[]; key: number; value: any }
  • removed: type ArraySchema<TArrayItem extends BaseSchema, TOutput = Output<TArrayItem>[]> = BaseSchema<Input<TArrayItem>[], TOutput> & { schema: 'array'; array: { item: TArrayItem } }
  • removed: function arrayAsync<TArrayItem extends BaseSchema | BaseSchemaAsync>(item: TArrayItem, error?: string, pipe?: PipeAsync<Output<TArrayItem>[]>): ArraySchemaAsync<TArrayItem>
  • removed: function arrayAsync<TArrayItem extends BaseSchema | BaseSchemaAsync>(item: TArrayItem, pipe?: PipeAsync<Output<TArrayItem>[]>): ArraySchemaAsync<TArrayItem>
  • removed: type ArraySchemaAsync<TArrayItem extends BaseSchema | BaseSchemaAsync, TOutput = Output<TArrayItem>[]> = BaseSchemaAsync<Input<TArrayItem>[], TOutput> & { schema: 'array'; array: { item: TArrayItem } }
  • removed: export * from './array'
  • removed: export * from './arrayAsync'
  • removed: function bigint(error?: string, pipe?: Pipe<bigint>): BigintSchema
  • removed: function bigint(pipe?: Pipe<bigint>): BigintSchema
  • removed: type BigintSchema<TOutput = bigint> = BaseSchema<bigint, TOutput> & { schema: 'bigint' }
  • removed: function bigintAsync(error?: string, pipe?: PipeAsync<bigint>): BigintSchemaAsync
  • removed: function bigintAsync(pipe?: PipeAsync<bigint>): BigintSchemaAsync
  • removed: type BigintSchemaAsync<TOutput = bigint> = BaseSchemaAsync<bigint, TOutput> & { schema: 'bigint' }
  • removed: export * from './bigint'
  • removed: export * from './bigintAsync'
  • removed: function blob(error?: string, pipe?: Pipe<Blob>): BlobSchema
  • removed: function blob(pipe?: Pipe<Blob>): BlobSchema
  • removed: type BlobSchema<TOutput = Blob> = BaseSchema<Blob, TOutput> & { schema: 'blob' }
  • removed: function blobAsync(error?: string, pipe?: PipeAsync<Blob>): BlobSchemaAsync
  • removed: function blobAsync(pipe?: PipeAsync<Blob>): BlobSchemaAsync
  • removed: type BlobSchemaAsync<TOutput = Blob> = BaseSchemaAsync<Blob, TOutput> & { schema: 'blob' }
  • removed: export * from './blob'
  • removed: export * from './blobAsync'
  • removed: function boolean(error?: string, pipe?: Pipe<boolean>): BooleanSchema
  • removed: function boolean(pipe?: Pipe<boolean>): BooleanSchema
  • removed: type BooleanSchema<TOutput = boolean> = BaseSchema<boolean, TOutput> & { schema: 'boolean' }
  • removed: function booleanAsync(error?: string, pipe?: PipeAsync<boolean>): BooleanSchemaAsync
  • removed: function booleanAsync(pipe?: PipeAsync<boolean>): BooleanSchemaAsync
  • removed: type BooleanSchemaAsync<TOutput = boolean> = BaseSchemaAsync<boolean, TOutput> & { schema: 'boolean' }
  • removed: export * from './boolean'
  • removed: export * from './booleanAsync'
  • removed: function date(error?: string, pipe?: Pipe<Date>): DateSchema
  • removed: function date(pipe?: Pipe<Date>): DateSchema
  • removed: type DateSchema<TOutput = Date> = BaseSchema<Date, TOutput> & { schema: 'date' }
  • removed: function dateAsync(error?: string, pipe?: PipeAsync<Date>): DateSchemaAsync
  • removed: function dateAsync(pipe?: PipeAsync<Date>): DateSchemaAsync
  • removed: type DateSchemaAsync<TOutput = Date> = BaseSchemaAsync<Date, TOutput> & { schema: 'date' }
  • removed: export * from './date'
  • removed: export * from './dateAsync'
  • removed: function enumType<TEnumValue extends EnumValue>(enumValue: TEnumValue, error?: string): EnumSchema<TEnumValue>
  • removed: type EnumSchema<TEnumValue extends EnumValue, TOutput = TEnumValue[number]> = BaseSchema<TEnumValue[number], TOutput> & { schema: 'enum'; enum: TEnumValue }
  • removed: type EnumValue = Readonly<[string, ...string[]]>
  • removed: function enumTypeAsync<TEnumValue extends EnumValue>(enumValue: TEnumValue, error?: string): EnumSchemaAsync<TEnumValue>
  • removed: type EnumSchemaAsync<TEnumValue extends EnumValue, TOutput = TEnumValue[number]> = BaseSchemaAsync<TEnumValue[number], TOutput> & { schema: 'enum'; enum: TEnumValue }
  • removed: export * from './enumType'
  • removed: export * from './enumTypeAsync'
  • removed: export * from './any'
  • removed: export * from './array'
  • removed: export * from './bigint'
  • removed: export * from './blob'
  • removed: export * from './boolean'
  • removed: export * from './date'
  • removed: export * from './enumType'
  • removed: export * from './literal'
  • removed: export * from './map'
  • removed: export * from './nan'
  • removed: export * from './nativeEnum'
  • removed: export * from './never'
  • removed: export * from './nonNullable'
  • removed: export * from './nonNullish'
  • removed: export * from './nonOptional'
  • removed: export * from './nullType'
  • removed: export * from './nullable'
  • removed: export * from './nullish'
  • removed: export * from './number'
  • removed: export * from './object'
  • removed: export * from './optional'
  • removed: export * from './record'
  • removed: export * from './recursive'
  • removed: export * from './set'
  • removed: export * from './special'
  • removed: export * from './string'
  • removed: export * from './symbol'
  • removed: export * from './tuple'
  • removed: export * from './undefinedType'
  • removed: export * from './union'
  • removed: export * from './unknown'
  • removed: export * from './voidType'
  • removed: export * from './literal'
  • removed: export * from './literalAsync'
  • removed: function literal<TLiteral extends string | number>(literal: TLiteral, error?: string): LiteralSchema<TLiteral>
  • removed: type LiteralSchema<TLiteralValue extends string | number, TOutput = TLiteralValue> = BaseSchema<TLiteralValue, TOutput> & { schema: 'literal'; literal: TLiteralValue }
  • removed: function literalAsync<TLiteral extends string | number>(literal: TLiteral, error?: string): LiteralSchemaAsync<TLiteral>
  • removed: type LiteralSchemaAsync<TLiteralValue extends string | number, TOutput = TLiteralValue> = BaseSchemaAsync<TLiteralValue, TOutput> & { schema: 'literal'; literal: TLiteralValue }
  • removed: export * from './map'
  • removed: export * from './mapAsync'
  • removed: export * from './types'
  • removed: function map<TMapKey extends BaseSchema, TMapValue extends BaseSchema>(key: TMapKey, value: TMapValue, error?: string, pipe?: Pipe<MapOutput<TMapKey, TMapValue>>): MapSchema<TMapKey, TMapValue>
  • removed: function map<TMapKey extends BaseSchema, TMapValue extends BaseSchema>(key: TMapKey, value: TMapValue, pipe?: Pipe<MapOutput<TMapKey, TMapValue>>): MapSchema<TMapKey, TMapValue>
  • removed: type MapSchema<TMapKey extends BaseSchema, TMapValue extends BaseSchema, TOutput = MapOutput<TMapKey, TMapValue>> = BaseSchema<MapInput<TMapKey, TMapValue>, TOutput> & { schema: 'map'; map: { key: TMapKey; value: TMapValue } }
  • removed: function mapAsync<TMapKey extends BaseSchema | BaseSchemaAsync, TMapValue extends BaseSchema | BaseSchemaAsync>(key: TMapKey, value: TMapValue, error?: string, pipe?: PipeAsync<MapOutput<TMapKey, TMapValue>>): MapSchemaAsync<TMapKey, TMapValue>
  • removed: function mapAsync<TMapKey extends BaseSchema | BaseSchemaAsync, TMapValue extends BaseSchema | BaseSchemaAsync>(key: TMapKey, value: TMapValue, pipe?: PipeAsync<MapOutput<TMapKey, TMapValue>>): MapSchemaAsync<TMapKey, TMapValue>
  • removed: type MapSchemaAsync<TMapKey extends BaseSchema | BaseSchemaAsync, TMapValue extends BaseSchema | BaseSchemaAsync, TOutput = MapOutput<TMapKey, TMapValue>> = BaseSchemaAsync<MapInput<TMapKey, TMapValue>, TOutput> & { schema: 'map'; map: { key: TMapKey; value: TMapValue } }
  • removed: type MapInput<TMapKey extends BaseSchema | BaseSchemaAsync, TMapValue extends BaseSchema | BaseSchemaAsync> = Map<Input<TMapKey>, Input<TMapValue>>
  • removed: type MapOutput<TMapKey extends BaseSchema | BaseSchemaAsync, TMapValue extends BaseSchema | BaseSchemaAsync> = Map<Output<TMapKey>, Output<TMapValue>>
  • removed: type MapPathItem = { schema: 'map'; input: Map<any, any>; key: any; value: any }
  • removed: export * from './nan'
  • removed: export * from './nanAsync'
  • removed: function nan(error?: string): NanSchema
  • removed: type NanSchema<TOutput = number> = BaseSchema<number, TOutput> & { schema: 'nan' }
  • removed: function nanAsync(error?: string): NanSchemaAsync
  • removed: type NanSchemaAsync<TOutput = number> = BaseSchemaAsync<number, TOutput> & { schema: 'nan' }
  • removed: export * from './nativeEnum'
  • removed: export * from './nativeEnumAsync'
  • removed: function nativeEnum<TNativeEnum extends NativeEnum>(nativeEnum: TNativeEnum, error?: string): NativeEnumSchema<TNativeEnum>
  • removed: type NativeEnum = { [key: string]: string | number; [key: number]: string }
  • removed: type NativeEnumSchema<TNativeEnum extends NativeEnum, TOutput = TNativeEnum[keyof TNativeEnum]> = BaseSchema<TNativeEnum[keyof TNativeEnum], TOutput> & { schema: 'native_enum'; nativeEnum: TNativeEnum }
  • removed: function nativeEnumAsync<TNativeEnum extends NativeEnum>(nativeEnum: TNativeEnum, error?: string): NativeEnumSchemaAsync<TNativeEnum>
  • removed: type NativeEnumSchemaAsync<TNativeEnum extends NativeEnum, TOutput = TNativeEnum[keyof TNativeEnum]> = BaseSchemaAsync<TNativeEnum[keyof TNativeEnum], TOutput> & { schema: 'native_enum'; nativeEnum: TNativeEnum }
  • removed: export * from './never'
  • removed: export * from './neverAsync'
  • removed: function never(error?: string): NeverSchema
  • removed: type NeverSchema = BaseSchema<never> & { schema: 'never' }
  • removed: function neverAsync(error?: string): NeverSchemaAsync
  • removed: type NeverSchemaAsync = BaseSchemaAsync<never> & { schema: 'never' }
  • removed: export * from './nonNullable'
  • removed: export * from './nonNullableAsync'
  • removed: function nonNullable<TWrappedSchema extends BaseSchema>(wrapped: TWrappedSchema, error?: string): NonNullableSchema<TWrappedSchema>
  • removed: type NonNullable<T> = T extends null ? never : T
  • removed: type NonNullableSchema<TWrappedSchema extends BaseSchema, TOutput = NonNullable<Output<TWrappedSchema>>> = BaseSchema<NonNullable<Input<TWrappedSchema>>, TOutput> & { schema: 'non_nullable'; wrapped: TWrappedSchema }
  • removed: function nonNullableAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync>(wrapped: TWrappedSchema, error?: string): NonNullableSchemaAsync<TWrappedSchema>
  • removed: type NonNullableSchemaAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync, TOutput = NonNullable<Output<TWrappedSchema>>> = BaseSchemaAsync<NonNullable<Input<TWrappedSchema>>, TOutput> & { schema: 'non_nullable'; wrapped: TWrappedSchema }
  • removed: export * from './nonNullish'
  • removed: export * from './nonNullishAsync'
  • removed: function nonNullish<TWrappedSchema extends BaseSchema>(wrapped: TWrappedSchema, error?: string): NonNullishSchema<TWrappedSchema>
  • removed: type NonNullish<T> = T extends null | undefined ? never : T
  • removed: type NonNullishSchema<TWrappedSchema extends BaseSchema, TOutput = NonNullish<Output<TWrappedSchema>>> = BaseSchema<NonNullish<Input<TWrappedSchema>>, TOutput> & { schema: 'non_nullish'; wrapped: TWrappedSchema }
  • removed: function nonNullishAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync>(wrapped: TWrappedSchema, error?: string): NonNullishSchemaAsync<TWrappedSchema>
  • removed: type NonNullishSchemaAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync, TOutput = NonNullish<Output<TWrappedSchema>>> = BaseSchemaAsync<NonNullish<Input<TWrappedSchema>>, TOutput> & { schema: 'non_nullish'; wrapped: TWrappedSchema }
  • removed: export * from './nonOptional'
  • removed: export * from './nonOptionalAsync'
  • removed: function nonOptional<TWrappedSchema extends BaseSchema>(wrapped: TWrappedSchema, error?: string): NonOptionalSchema<TWrappedSchema>
  • removed: type NonOptional<T> = T extends undefined ? never : T
  • removed: type NonOptionalSchema<TWrappedSchema extends BaseSchema, TOutput = NonOptional<Output<TWrappedSchema>>> = BaseSchema<NonOptional<Input<TWrappedSchema>>, TOutput> & { schema: 'non_optional'; wrapped: TWrappedSchema }
  • removed: function nonOptionalAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync>(wrapped: TWrappedSchema, error?: string): NonOptionalSchemaAsync<TWrappedSchema>
  • removed: type NonOptionalSchemaAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync, TOutput = NonOptional<Output<TWrappedSchema>>> = BaseSchemaAsync<NonOptional<Input<TWrappedSchema>>, TOutput> & { schema: 'non_optional'; wrapped: TWrappedSchema }
  • removed: export * from './nullType'
  • removed: export * from './nullTypeAsync'
  • removed: function nullType(error?: string): NullSchema
  • removed: type NullSchema<TOutput = null> = BaseSchema<null, TOutput> & { schema: 'null' }
  • removed: function nullTypeAsync(error?: string): NullSchemaAsync
  • removed: type NullSchemaAsync<TOutput = null> = BaseSchemaAsync<null, TOutput> & { schema: 'null' }
  • removed: export * from './nullable'
  • removed: export * from './nullableAsync'
  • removed: function nullable<TWrappedSchema extends BaseSchema>(wrapped: TWrappedSchema): NullableSchema<TWrappedSchema>
  • removed: type NullableSchema<TWrappedSchema extends BaseSchema, TOutput = Output<TWrappedSchema> | null> = BaseSchema<Input<TWrappedSchema> | null, TOutput> & { schema: 'nullable'; wrapped: TWrappedSchema }
  • removed: function nullableAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync>(wrapped: TWrappedSchema): NullableSchemaAsync<TWrappedSchema>
  • removed: type NullableSchemaAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync, TOutput = Output<TWrappedSchema> | null> = BaseSchemaAsync<Input<TWrappedSchema> | null, TOutput> & { schema: 'nullable'; wrapped: TWrappedSchema }
  • removed: export * from './nullish'
  • removed: export * from './nullishAsync'
  • removed: function nullish<TWrappedSchema extends BaseSchema>(wrapped: TWrappedSchema): NullishSchema<TWrappedSchema>
  • removed: type NullishSchema<TWrappedSchema extends BaseSchema, TOutput = Output<TWrappedSchema> | null | undefined> = BaseSchema<Input<TWrappedSchema> | null | undefined, TOutput> & { schema: 'nullish'; wrapped: TWrappedSchema }
  • removed: function nullishAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync>(wrapped: TWrappedSchema): NullishSchemaAsync<TWrappedSchema>
  • removed: type NullishSchemaAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync, TOutput = Output<TWrappedSchema> | null | undefined> = BaseSchemaAsync<Input<TWrappedSchema> | null | undefined, TOutput> & { schema: 'nullish'; wrapped: TWrappedSchema }
  • removed: export * from './number'
  • removed: export * from './numberAsync'
  • removed: function number(error?: string, pipe?: Pipe<number>): NumberSchema
  • removed: function number(pipe?: Pipe<number>): NumberSchema
  • removed: type NumberSchema<TOutput = number> = BaseSchema<number, TOutput> & { schema: 'number' }
  • removed: function numberAsync(error?: string, pipe?: PipeAsync<number>): NumberSchemaAsync
  • removed: function numberAsync(pipe?: PipeAsync<number>): NumberSchemaAsync
  • removed: type NumberSchemaAsync<TOutput = number> = BaseSchemaAsync<number, TOutput> & { schema: 'number' }
  • removed: export * from './object'
  • removed: export * from './objectAsync'
  • removed: export * from './types'
  • removed: function object<TObjectShape extends ObjectShape>(object: TObjectShape, error?: string, pipe?: Pipe<ObjectOutput<TObjectShape>>): ObjectSchema<TObjectShape>
  • removed: function object<TObjectShape extends ObjectShape>(object: TObjectShape, pipe?: Pipe<ObjectOutput<TObjectShape>>): ObjectSchema<TObjectShape>
  • removed: type ObjectSchema<TObjectShape extends ObjectShape, TOutput = ObjectOutput<TObjectShape>> = BaseSchema<ObjectInput<TObjectShape>, TOutput> & { schema: 'object'; object: TObjectShape }
  • removed: type ObjectShape = Record<string, BaseSchema<any>>
  • removed: function objectAsync<TObjectShape extends ObjectShapesAsync>(object: TObjectShape, error?: string, pipe?: PipeAsync<ObjectOutput<TObjectShape>>): ObjectSchemaAsync<TObjectShape>
  • removed: function objectAsync<TObjectShape extends ObjectShapesAsync>(object: TObjectShape, pipe?: PipeAsync<ObjectOutput<TObjectShape>>): ObjectSchemaAsync<TObjectShape>
  • removed: type ObjectSchemaAsync<TObjectShape extends ObjectShapesAsync, TOutput = ObjectOutput<TObjectShape>> = BaseSchemaAsync<ObjectInput<TObjectShape>, TOutput> & { schema: 'object'; object: TObjectShape }
  • removed: type ObjectShapesAsync = Record<string, BaseSchema<any> | BaseSchemaAsync<any>>
  • removed: type ObjectInput<TObjectShape extends ObjectShape | ObjectShapesAsync> = { [TKey in keyof TObjectShape]: Input<TObjectShape[TKey]> }
  • removed: type ObjectOutput<TObjectShape extends ObjectShape | ObjectShapesAsync> = { [TKey in keyof TObjectShape]: Output<TObjectShape[TKey]> }
  • removed: type ObjectPathItem = { schema: 'object'; input: Record<string, any>; key: string; value: any }
  • removed: export * from './optional'
  • removed: export * from './optionalAsync'
  • removed: function optional<TWrappedSchema extends BaseSchema>(wrapped: TWrappedSchema): OptionalSchema<TWrappedSchema>
  • removed: type OptionalSchema<TWrappedSchema extends BaseSchema, TOutput = Output<TWrappedSchema> | undefined> = BaseSchema<Input<TWrappedSchema> | undefined, TOutput> & { schema: 'optional'; wrapped: TWrappedSchema }
  • removed: function optionalAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync>(wrapped: TWrappedSchema): OptionalSchemaAsync<TWrappedSchema>
  • removed: type OptionalSchemaAsync<TWrappedSchema extends BaseSchema | BaseSchemaAsync, TOutput = Output<TWrappedSchema> | undefined> = BaseSchemaAsync<Input<TWrappedSchema> | undefined, TOutput> & { schema: 'optional'; wrapped: TWrappedSchema }
  • removed: export * from './record'
  • removed: export * from './recordAsync'
  • removed: export * from './types'
  • removed: function record<TRecordKey extends RecordKey, TRecordValue extends BaseSchema>(key: TRecordKey, value: TRecordValue, error?: string, pipe?: Pipe<RecordOutput<TRecordKey, TRecordValue>>): RecordSchema<TRecordValue, TRecordKey>
  • removed: function record<TRecordKey extends RecordKey, TRecordValue extends BaseSchema>(key: TRecordKey, value: TRecordValue, pipe?: Pipe<RecordOutput<TRecordKey, TRecordValue>>): RecordSchema<TRecordValue, TRecordKey>
  • removed: function record<TRecordValue extends BaseSchema>(value: TRecordValue, error?: string, pipe?: Pipe<RecordOutput<StringSchema, TRecordValue>>): RecordSchema<TRecordValue>
  • removed: function record<TRecordValue extends BaseSchema>(value: TRecordValue, pipe?: Pipe<RecordOutput<StringSchema, TRecordValue>>): RecordSchema<TRecordValue>
  • removed: type RecordKey = StringSchema<string | number | symbol>
  • removed: type RecordSchema<TRecordValue extends BaseSchema, TRecordKey extends RecordKey = StringSchema, TOutput = RecordOutput<TRecordKey, TRecordValue>> = BaseSchema<RecordInput<TRecordKey, TRecordValue>, TOutput> & { schema: 'record'; record: { key: TRecordKey; value: TRecordValue } }
  • removed: function recordAsync<TRecordKey extends RecordKeyAsync, TRecordValue extends BaseSchema | BaseSchemaAsync>(key: TRecordKey, value: TRecordValue, error?: string, pipe?: PipeAsync<RecordOutput<TRecordKey, TRecordValue>>): RecordSchemaAsync<TRecordValue, TRecordKey>
  • removed: function recordAsync<TRecordKey extends RecordKeyAsync, TRecordValue extends BaseSchema | BaseSchemaAsync>(key: TRecordKey, value: TRecordValue, pipe?: PipeAsync<RecordOutput<TRecordKey, TRecordValue>>): RecordSchemaAsync<TRecordValue, TRecordKey>
  • removed: function recordAsync<TRecordValue extends BaseSchema | BaseSchemaAsync>(value: TRecordValue, error?: string, pipe?: PipeAsync<RecordOutput<StringSchema, TRecordValue>>): RecordSchemaAsync<TRecordValue>
  • removed: function recordAsync<TRecordValue extends BaseSchema | BaseSchemaAsync>(value: TRecordValue, pipe?: PipeAsync<RecordOutput<StringSchema, TRecordValue>>): RecordSchemaAsync<TRecordValue>
  • removed: type RecordKeyAsync = StringSchema<string | number | symbol> | StringSchemaAsync<string | number | symbol>
  • removed: type RecordSchemaAsync<TRecordValue extends BaseSchema | BaseSchemaAsync, TRecordKey extends RecordKeyAsync = StringSchema, TOutput = RecordOutput<TRecordKey, TRecordValue>> = BaseSchemaAsync<RecordInput<TRecordKey, TRecordValue>, TOutput> & { schema: 'record'; record: { key: TRecordKey; value: TRecordValue } }
  • removed: type RecordInput<TRecordKey extends RecordKey | RecordKeyAsync, TRecordValue extends BaseSchema | BaseSchemaAsync> = Record<Input<TRecordKey>, Input<TRecordValue>>
  • removed: type RecordOutput<TRecordKey extends RecordKey | RecordKeyAsync, TRecordValue extends BaseSchema | BaseSchemaAsync> = Record<Output<TRecordKey>, Output<TRecordValue>>
  • removed: type RecordPathItem = { schema: 'record'; input: Record<string | number | symbol, any>; key: string | number | symbol; value: any }
  • removed: export * from './recursive'
  • removed: export * from './recursiveAsync'
  • removed: function recursive<TSchemaGetter extends () => BaseSchema>(getter: TSchemaGetter): RecursiveSchema<TSchemaGetter>
  • removed: type RecursiveSchema<TSchemaGetter extends () => BaseSchema, TOutput = Output<ReturnType<TSchemaGetter>>> = BaseSchema<Input<ReturnType<TSchemaGetter>>, TOutput> & { schema: 'recursive'; getter: TSchemaGetter }
  • removed: function recursiveAsync<TSchemaGetter extends () => BaseSchema | BaseSchemaAsync>(getter: TSchemaGetter): RecursiveSchemaAsync<TSchemaGetter>
  • removed: type RecursiveSchemaAsync<TSchemaGetter extends () => BaseSchema | BaseSchemaAsync, TOutput = Output<ReturnType<TSchemaGetter>>> = BaseSchemaAsync<Input<ReturnType<TSchemaGetter>>, TOutput> & { schema: 'recursive'; getter: TSchemaGetter }
  • removed: export * from './set'
  • removed: export * from './setAsync'
  • removed: export * from './types'
  • removed: function set<TSetValue extends BaseSchema>(value: TSetValue, error?: string, pipe?: Pipe<SetOutput<TSetValue>>): SetSchema<TSetValue>
  • removed: function set<TSetValue extends BaseSchema>(value: TSetValue, pipe?: Pipe<SetOutput<TSetValue>>): SetSchema<TSetValue>
  • removed: type SetSchema<TSetValue extends BaseSchema, TOutput = SetOutput<TSetValue>> = BaseSchema<SetInput<TSetValue>, TOutput> & { schema: 'set'; set: { value: TSetValue } }
  • removed: function setAsync<TSetValue extends BaseSchema | BaseSchemaAsync>(value: TSetValue, error?: string, pipe?: PipeAsync<SetOutput<TSetValue>>): SetSchemaAsync<TSetValue>
  • removed: function setAsync<TSetValue extends BaseSchema | BaseSchemaAsync>(value: TSetValue, pipe?: PipeAsync<SetOutput<TSetValue>>): SetSchemaAsync<TSetValue>
  • removed: type SetSchemaAsync<TSetValue extends BaseSchema | BaseSchemaAsync, TOutput = SetOutput<TSetValue>> = BaseSchemaAsync<SetInput<TSetValue>, TOutput> & { schema: 'set'; set: { value: TSetValue } }
  • removed: type SetInput<TSetValue extends BaseSchema | BaseSchemaAsync> = Set<Input<TSetValue>>
  • removed: type SetOutput<TSetValue extends BaseSchema | BaseSchemaAsync> = Set<Output<TSetValue>>
  • removed: type SetPathItem = { schema: 'set'; input: Set<any>; key: number; value: any }
  • removed: export * from './special'
  • removed: export * from './specialAsync'
  • removed: function special<TInput>(check: (input: unknown) => boolean, error?: string, pipe?: Pipe<TInput>): SpecialSchema<TInput>
  • removed: function special<TInput>(check: (input: unknown) => boolean, pipe?: Pipe<TInput>): SpecialSchema<TInput>
  • removed: type SpecialSchema<TInput, TOutput = TInput> = BaseSchema<TInput, TOutput> & { schema: 'special' }
  • removed: function specialAsync<TInput>(check: (input: unknown) => boolean | Promise<boolean>, error?: string, pipe?: PipeAsync<TInput>): SpecialSchemaAsync<TInput>
  • removed: function specialAsync<TInput>(check: (input: unknown) => boolean | Promise<boolean>, pipe?: PipeAsync<TInput>): SpecialSchemaAsync<TInput>
  • removed: type SpecialSchemaAsync<TInput, TOutput = TInput> = BaseSchemaAsync<TInput, TOutput> & { schema: 'special' }
  • removed: export * from './string'
  • removed: export * from './stringAsync'
  • removed: function string(error?: string, pipe?: Pipe<string>): StringSchema
  • removed: function string(pipe?: Pipe<string>): StringSchema
  • removed: type StringSchema<TOutput = string> = BaseSchema<string, TOutput> & { schema: 'string' }
  • removed: function stringAsync(error?: string, pipe?: PipeAsync<string>): StringSchemaAsync
  • removed: function stringAsync(pipe?: PipeAsync<string>): StringSchemaAsync
  • removed: type StringSchemaAsync<TOutput = string> = BaseSchemaAsync<string, TOutput> & { schema: 'string' }
  • removed: export * from './symbol'
  • removed: export * from './symbolAsync'
  • removed: function symbol(error?: string): SymbolSchema
  • removed: type SymbolSchema<TOutput = symbol> = BaseSchema<symbol, TOutput> & { schema: 'symbol' }
  • removed: function symbolAsync(error?: string): SymbolSchemaAsync
  • removed: type SymbolSchemaAsync<TOutput = symbol> = BaseSchemaAsync<symbol, TOutput> & { schema: 'symbol' }
  • removed: export * from './tuple'
  • removed: export * from './tupleAsync'
  • removed: export * from './types'
  • removed: function tuple<TTupleItems extends TupleShape, TTupleRest extends BaseSchema | undefined = undefined>(items: TTupleItems, error?: string, pipe?: Pipe<TupleOutput<TTupleItems, TTupleRest>>): TupleSchema<TTupleItems, TTupleRest>
  • removed: function tuple<TTupleItems extends TupleShape, TTupleRest extends BaseSchema | undefined = undefined>(items: TTupleItems, pipe?: Pipe<TupleOutput<TTupleItems, TTupleRest>>): TupleSchema<TTupleItems, TTupleRest>
  • removed: function tuple<TTupleItems extends TupleShape, TTupleRest extends BaseSchema | undefined = undefined>(items: TTupleItems, rest: TTupleRest, error?: string, pipe?: Pipe<TupleOutput<TTupleItems, TTupleRest>>): TupleSchema<TTupleItems, TTupleRest>
  • removed: function tuple<TTupleItems extends TupleShape, TTupleRest extends BaseSchema | undefined = undefined>(items: TTupleItems, rest: TTupleRest, pipe?: Pipe<TupleOutput<TTupleItems, TTupleRest>>): TupleSchema<TTupleItems, TTupleRest>
  • removed: type TupleSchema<TTupleItems extends TupleShape, TTupleRest extends BaseSchema | undefined = undefined, TOutput = TupleOutput<TTupleItems, TTupleRest>> = BaseSchema<TupleInput<TTupleItems, TTupleRest>, TOutput> & { schema: 'tuple'; tuple: { items: TTupleItems; rest: TTupleRest } }
  • removed: type TupleShape = [BaseSchema, ...BaseSchema[]]
  • removed: function tupleAsync<TTupleItems extends TupleShapeAsync, TTupleRest extends BaseSchema | BaseSchemaAsync | undefined = undefined>(items: TTupleItems, error?: string, pipe?: PipeAsync<TupleOutput<TTupleItems, TTupleRest>>): TupleSchemaAsync<TTupleItems, TTupleRest>
  • removed: function tupleAsync<TTupleItems extends TupleShapeAsync, TTupleRest extends BaseSchema | BaseSchemaAsync | undefined = undefined>(items: TTupleItems, pipe?: PipeAsync<TupleOutput<TTupleItems, TTupleRest>>): TupleSchemaAsync<TTupleItems, TTupleRest>
  • removed: function tupleAsync<TTupleItems extends TupleShapeAsync, TTupleRest extends BaseSchema | BaseSchemaAsync | undefined = undefined>(items: TTupleItems, rest: TTupleRest, error?: string, pipe?: PipeAsync<TupleOutput<TTupleItems, TTupleRest>>): TupleSchemaAsync<TTupleItems, TTupleRest>
  • removed: function tupleAsync<TTupleItems extends TupleShapeAsync, TTupleRest extends BaseSchema | BaseSchemaAsync | undefined = undefined>(items: TTupleItems, rest: TTupleRest, pipe?: PipeAsync<TupleOutput<TTupleItems, TTupleRest>>): TupleSchemaAsync<TTupleItems, TTupleRest>
  • removed: type TupleSchemaAsync<TTupleItems extends TupleShapeAsync, TTupleRest extends BaseSchema | BaseSchemaAsync | undefined = undefined, TOutput = TupleOutput<TTupleItems, TTupleRest>> = BaseSchemaAsync<TupleInput<TTupleItems, TTupleRest>, TOutput> & { schema: 'tuple'; tuple: { items: TTupleItems; rest: TTupleRest } }
  • removed: type TupleShapeAsync = [BaseSchema | BaseSchemaAsync, ...(BaseSchema[] | BaseSchemaAsync[])]
  • removed: type TupleInput<TTupleItems extends TupleShape | TupleShapeAsync, TTupleRest extends BaseSchema | BaseSchemaAsync | undefined> = TTupleRest extends BaseSchema | BaseSchemaAsync ? [...{ [TKey in keyof TTupleItems]: Input<TTupleItems[TKey]> }, ...Input<TTupleRest>[]] : { [TKey in keyof TTu…
  • removed: type TupleOutput<TTupleItems extends TupleShape | TupleShapeAsync, TTupleRest extends BaseSchema | BaseSchemaAsync | undefined> = TTupleRest extends BaseSchema | BaseSchemaAsync ? [...{ [TKey in keyof TTupleItems]: Output<TTupleItems[TKey]> }, ...Output<TTupleRest>[]] : { [TKey in keyof T…
  • removed: type TuplePathItem = { schema: 'tuple'; input: [any, ...any[]]; key: number; value: any }
  • removed: export * from './undefinedType'
  • removed: export * from './undefinedTypeAsync'
  • removed: function undefinedType(error?: string): UndefinedSchema
  • removed: type UndefinedSchema<TOutput = undefined> = BaseSchema<undefined, TOutput> & { schema: 'undefined' }
  • removed: function undefinedTypeAsync(error?: string): UndefinedSchemaAsync
  • removed: type UndefinedSchemaAsync<TOutput = undefined> = BaseSchemaAsync<undefined, TOutput> & { schema: 'undefined' }
  • removed: export * from './union'
  • removed: export * from './unionAsync'
  • removed: function union<TUnionOptions extends UnionOptions>(union: TUnionOptions, error?: string): UnionSchema<TUnionOptions>
  • removed: type UnionOptions = [BaseSchema<any>, BaseSchema<any>, ...BaseSchema<any>[]]
  • removed: type UnionSchema<TUnionOptions extends UnionOptions, TOutput = Output<TUnionOptions[number]>> = BaseSchema<Input<TUnionOptions[number]>, TOutput> & { schema: 'union'; union: TUnionOptions }
  • removed: function unionAsync<TUnionOptions extends UnionOptionsAsync>(union: TUnionOptions, error?: string): UnionSchemaAsync<TUnionOptions>
  • removed: type UnionOptionsAsync = [BaseSchema | BaseSchemaAsync, BaseSchema | BaseSchemaAsync, ...(BaseSchema[] | BaseSchemaAsync[])]
  • removed: type UnionSchemaAsync<TUnionOptions extends UnionOptionsAsync, TOutput = Output<TUnionOptions[number]>> = BaseSchemaAsync<Input<TUnionOptions[number]>, TOutput> & { schema: 'union'; union: TUnionOptions }
  • removed: export * from './unknown'
  • removed: export * from './unknownAsync'
  • removed: function unknown(pipe?: Pipe<unknown>): UnknownSchema
  • removed: type UnknownSchema<TOutput = unknown> = BaseSchema<unknown, TOutput> & { schema: 'unknown' }
  • removed: function unknownAsync(pipe?: PipeAsync<unknown>): UnknownSchemaAsync
  • removed: type UnknownSchemaAsync<TOutput = unknown> = BaseSchemaAsync<unknown, TOutput> & { schema: 'unknown' }
  • removed: export * from './voidType'
  • removed: export * from './voidTypeAsync'
  • removed: function voidType(error?: string): VoidSchema
  • removed: type VoidSchema<TOutput = void> = BaseSchema<void, TOutput> & { schema: 'void' }
  • removed: function voidTypeAsync(error?: string): VoidSchemaAsync
  • removed: type VoidSchemaAsync<TOutput = void> = BaseSchemaAsync<void, TOutput> & { schema: 'void' }
  • removed: export * from './toCustom'
  • removed: export * from './toLowerCase'
  • removed: export * from './toTrimmed'
  • removed: export * from './toTrimmedEnd'
  • removed: export * from './toTrimmedStart'
  • removed: export * from './toUpperCase'
  • removed: export * from './toCustom'
  • removed: export * from './toCustomAsync'
  • removed: function toCustom<TInput>(action: (input: TInput) => TInput): (input: TInput) => TInput
  • removed: function toCustomAsync<TInput>(action: (input: TInput) => TInput | Promise<TInput>): (input: TInput) => TInput | Promise<TInput>
  • removed: export * from './toLowerCase'
  • removed: function toLowerCase(): (input: string) => string
  • removed: export * from './toTrimmed'
  • removed: function toTrimmed(): (input: string) => string
  • removed: export * from './toTrimmedEnd'
  • removed: function toTrimmedEnd(): (input: string) => string
  • removed: export * from './toTrimmedStart'
  • removed: function toTrimmedStart(): (input: string) => string
  • removed: export * from './toUpperCase'
  • removed: function toUpperCase(): (input: string) => string
  • removed: type BaseSchema<TInput = any, TOutput = TInput> = { async: false; parse(input: unknown, info?: ParseInfo): TOutput; types?: { input: TInput; output: TOutput } }
  • removed: type BaseSchemaAsync<TInput = any, TOutput = TInput> = { async: true; parse(input: unknown, info?: ParseInfo): Promise<TOutput>; types?: { input: TInput; output: TOutput } }
  • removed: type Input<TSchema extends BaseSchema | BaseSchemaAsync> = NonNullable<TSchema['types']>['input']
  • removed: type Output<TSchema extends BaseSchema | BaseSchemaAsync> = NonNullable<TSchema['types']>['output']
  • removed: type ParseInfo = Partial<Pick<Issue, 'origin' | 'path'>>
  • removed: type PathItem = ObjectPathItem | RecordPathItem | TuplePathItem | MapPathItem | SetPathItem | ArrayPathItem
  • removed: type Pipe<TValue> = ((value: TValue, info: ValidateInfo) => TValue)[]
  • removed: type PipeAsync<TValue> = ((value: TValue, info: ValidateInfo) => TValue | Promise<TValue>)[]
  • removed: type ValidateInfo = ParseInfo & Pick<Issue, 'reason'>
  • removed: function comparable(value: any): any
  • removed: export * from './comparable'
  • removed: function executePipe<TValue>(input: TValue, pipe: Pipe<TValue>, info: ValidateInfo): TValue
  • removed: function executePipeAsync<TValue>(input: TValue, pipe: PipeAsync<TValue>, info: ValidateInfo): Promise<TValue>
  • removed: export * from './executePipe'
  • removed: export * from './executePipeAsync'
  • removed: function getCurrentPath(info: ParseInfo | undefined, item: PathItem): PathItem[]
  • removed: export * from './getCurrentPath'
  • removed: function getErrorAndPipe<TPipe extends Pipe<any>>(arg1?: string | TPipe, arg2?: TPipe): { error: string | undefined; pipe: TPipe }
  • removed: export * from './getErrorAndPipe'
  • removed: export * from './comparable'
  • removed: export * from './executePipe'
  • removed: export * from './getCurrentPath'
  • removed: export * from './getErrorAndPipe'
  • removed: function custom<TInput>(requirement: (input: TInput) => boolean, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: function customAsync<TInput>(requirement: (input: TInput) => Promise<boolean>, error?: string): (input: TInput, info: ValidateInfo) => Promise<TInput>
  • removed: export * from './custom'
  • removed: export * from './customAsync'
  • removed: function email<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './email'
  • removed: function emoji<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './emoji'
  • removed: function endsWith<TInput extends string>(requirement: string, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './endsWith'
  • removed: function equal<TInput extends string | number | bigint | boolean, TRequirement extends TInput>(requirement: TRequirement, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './equal'
  • removed: function includes<TInput extends TItem[], TItem>(requirement: TItem, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: function includes<TInput extends string>(requirement: string, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './includes'
  • removed: export * from './custom'
  • removed: export * from './email'
  • removed: export * from './emoji'
  • removed: export * from './endsWith'
  • removed: export * from './equal'
  • removed: export * from './includes'
  • removed: export * from './ip'
  • removed: export * from './ipv4'
  • removed: export * from './ipv6'
  • removed: export * from './isoDate'
  • removed: export * from './isoDateTime'
  • removed: export * from './isoTime'
  • removed: export * from './isoTimeSecond'
  • removed: export * from './isoTimestamp'
  • removed: export * from './isoWeek'
  • removed: export * from './length'
  • removed: export * from './maxLength'
  • removed: export * from './maxRange'
  • removed: export * from './maxSize'
  • removed: export * from './mimeType'
  • removed: export * from './minLength'
  • removed: export * from './minRange'
  • removed: export * from './minSize'
  • removed: export * from './regex'
  • removed: export * from './size'
  • removed: export * from './startsWith'
  • removed: export * from './url'
  • removed: export * from './uuid'
  • removed: export * from './ip'
  • removed: function ip<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './ipv4'
  • removed: function ipv4<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './ipv6'
  • removed: function ipv6<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './isoDate'
  • removed: function isoDate<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './isoDateTime'
  • removed: function isoDateTime<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './isoTime'
  • removed: function isoTime<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './isoTimeSecond'
  • removed: function isoTimeSecond<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './isoTimestamp'
  • removed: function isoTimestamp<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './isoWeek'
  • removed: function isoWeek<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './length'
  • removed: function length<TInput extends string | any[]>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './maxLength'
  • removed: function maxLength<TInput extends string | any[]>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './maxRange'
  • removed: function maxRange<TInput extends string | number | bigint | Date, TRequirement extends TInput>(requirement: TRequirement, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './maxSize'
  • removed: function maxSize<TInput extends Map<any, any> | Set<any> | Blob>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './mimeType'
  • removed: function mimeType<TInput extends File>(requirement: `${string}/${string}`[], error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './minLength'
  • removed: function minLength<TInput extends string | any[]>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './minRange'
  • removed: function minRange<TInput extends string | number | bigint | Date, TRequirement extends TInput>(requirement: TRequirement, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './minSize'
  • removed: function minSize<TInput extends Map<any, any> | Set<any> | Blob>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './regex'
  • removed: function regex<TInput extends string>(requirement: RegExp, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './size'
  • removed: function size<TInput extends Map<any, any> | Set<any> | Blob>(requirement: number, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './startsWith'
  • removed: function startsWith<TInput extends string>(requirement: string, error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './url'
  • removed: function url<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput
  • removed: export * from './uuid'
  • removed: function uuid<TInput extends string>(error?: string): (input: TInput, info: ValidateInfo) => TInput