Abstract
Deep copies the object and returns a new instance.
Converts the object to a different NumberType equivalent.
Optional
options: ConvertOptionsCompares this object's fields to another object's fields for equality. Equality is determined by comparing the JSON representations of the objects.
If normalizeNumberTypes
is true, then all number types will be compared as strings (i.e. "1n" === "1" === 1). Else, they will be compared as their native types (i.e. 1n !== 1 !== "1").
Optional
normalizeNumberTypes: booleanInternal helper method to convert the number fields of the object to a different NumberType equivalent.
Checks if the object has number fields.
Converts the object to a JSON object with all primitive types.
Converts the object to a JSON string.
Base class that implements the CustomType interface. It provides default implementations for all methods.
IMPORTANT: You must implement the
getNumberFieldNames
method yourself for this class to work properly. Also, you will need to implement theconvert
method yourself if you want to use it in a typed manner. This can be done by simply callingconvertClassPropertiesAndMaintainNumberTypes(this, convertFunction, options)
and casting the result to the correct type.