cast : Cast function (returns the original value, no transformation)
fill : Default value filling function
prune : Excess property pruning function (recursively removes value
paths that are not represented by the type; unlike fill, it never fills
in default values)
validate : A base function to be used in is and assertIs. validate
returns Result.Ok if the value is of Type A, otherwise returns Result.Err
with structured validation error information.
typeName: Name for this typeis: Type guard functionassertIs: Type assertion functioncast: Cast function (returns the original value, no transformation)fill: Default value filling functionprune: Excess property pruning function (recursively removes value paths that are not represented by the type; unlikefill, it never fills in default values)validate: A base function to be used inisandassertIs.validatereturns Result.Ok if the value is of Type A, otherwise returns Result.Err with structured validation error information.