namespace types

These types are used by the ObjectMapper. Here's the magic which makes object mapper schemas type safe and complete. You generally won't need to make use of these types within your own code; just ObjectMapper should be enough.

Interfaces

I
types.MapperFunction

A function that takes some input object, and an optional context object, and returns anoutput. This is used as part of an ObjectMapperSchema.

I
types.ObjectMapperFunction

A callable function, equivalent to calling ObjectMapper#map.It also exposes ObjectMapperFunction#schema as a readonly property.

Type Aliases

T
types.AllowInputKeyIfInputCanExtendOutput

Given some object TInput, and some value TOutputValue, allows any keyof TInput that can be assigned to TOutputValue.

T
types.AllowOmitIfOptional

Lots you use the special symbol OmitProperty in place of an optional/undefined value.

T
types.MapperSchemaValue

A mapper function, or input property name, used in an ObjectMapperSchema.

T
types.ObjectMapperSchema

An object, where every property name must match a property name in the desired output type.Every property value must be a MapperSchemaValue.

T
types.OptionalArgIfUndefined

An ObjectMapper can take an optional context. The context type is definedwhen you instantiate an ObjectMapper. If the context type is undefined,rather than passing undefined every time, you can just omit the property.(You can still pass undefined, for parity with the mappers that requirea context.)