Skip to main content

DiscriminatedUnionSchema<Discriminator, Schemas, T>

DiscriminatedUnionSchema<Discriminator, Schemas, T> = Schema<T> & object

A discriminated union schema with O(1) lookup based on a discriminator key.

Type Declarationโ€‹

type: "union"โ€‹

discriminator: Discriminatorโ€‹

schemas: Schemasโ€‹

schemaMap: Map<EnumValue, GenericSchema>โ€‹


Type Parametersโ€‹

Discriminator: Discriminator extends stringโ€‹

The key used to discriminate between variants.

Schemas: Schemas extends readonly GenericSchema[]โ€‹

Array of object schemas with a literal discriminator field.

T: T = Infer<Schemas[number]>โ€‹


Sinceโ€‹

2.0.0