The readonly array of allowed enum values
Creates a new VineEnum instance with the specified allowed values.
Array of allowed values or function returning allowed values
Optionaloptions: FieldOptionsField options like bail mode and nullability
Optionalvalidations: Validation<any>[]Initial set of validations to apply
Define the input type of the schema for TypeScript inference
The output value type of the field after validation. The property points to a type only and not the real value.
Type marker for camelCase output type inference
OptionaldataThe validation to use for validating the schema data type. Using a data type validator guards custom rules to only run when the data type validation passes.
StaticrulesStatic collection of all available validation rules for enums
The subtype identifier for the literal schema field
Define a method to parse the input value. The method is invoked before any validation and hence you must perform type-checking to know the value you are working it.
Adds a validation rule to the schema's validation chain. Rules are executed in the order they are added.
The validation rule or rule builder to add
This schema instance for method chaining
Mark the field under validation as optional. An optional field allows both null and undefined values.
Mark the field under validation to be null. The null value will be written to the output as well.
If optional and nullable are used together, then both undefined
and null values will be allowed.
Apply transform on the final validated value. The transform method may convert the value to any new datatype.
Compiles the literal schema type into a compiler node. This method transforms the schema definition into a format that the validation compiler can process.
Name of the property being compiled
Reference store for the compiler
Parser options including camelCase conversion
Compiled literal node with subtype information
Clones the VineEnum schema type. The applied options and validations are copied to the new instance.
A cloned instance of this VineEnum schema
VineEnum represents an enum data type that performs validation against a pre-defined choices list. It ensures the input value matches one of the allowed enum values exactly.
Example