Skip to main content
values.VDerived A finite authoring projection. Runtime reflection requires a complete analyzed signature; only native authoring export can emit the expression.

Type parameters

Hierarchy

  • BaseValidator<Type, IsOptional, FieldPaths> ↳ VDerived

Constructors

constructor

• new VDerived<Type, IsOptional, FieldPaths>(expression, resolve, isOptional)

Type parameters

Parameters

Overrides

BaseValidator&lt;Type, IsOptional, FieldPaths&gt;.constructor

Properties

type

• Readonly type: Type Only for TypeScript, the TS type of the JS values validated by this validator.

Inherited from

BaseValidator.type

fieldPaths

• Readonly fieldPaths: FieldPaths Only for TypeScript, if this an Object validator, then this is the TS type of its property names.

Inherited from

BaseValidator.fieldPaths

isOptional

• Readonly isOptional: IsOptional Whether this is an optional Object property value validator.

Inherited from

BaseValidator.isOptional

isConvexValidator

• Readonly isConvexValidator: true Always "true".

Inherited from

BaseValidator.isConvexValidator

kind

• Readonly kind: "derived"

Accessors

json

• get json(): ValidatorJSON

Returns

ValidatorJSON

Overrides

BaseValidator.json

Methods

optional

▸ optional(): VDerived<Type | undefined, "optional", FieldPaths>

Returns

VDerived<Type | undefined, "optional", FieldPaths>

Overrides

BaseValidator.optional

asOptional

▸ asOptional(): VDerived<undefined | Type, "optional", FieldPaths>

Returns

VDerived<undefined | Type, "optional", FieldPaths>

Overrides

BaseValidator.asOptional

required

▸ required(): VDerived<Exclude<Type, undefined>, "required", FieldPaths> Preserve the original lazy signature and its refinements when requiring a projected value. Neither authoring nor runtime resolution happens here.

Returns

VDerived<Exclude<Type, undefined>, "required", FieldPaths>