If an object is run through the decoder at runtime, there should be a way to configure the decoder to throw an error if the decoded object has extra properties not defined on the original decoder.
There should be an additional combinator to make the decoder throw an error given the following input:
const myTypeRuntimeValue: MyType = {
myProperty: "someValue",
myOtherProperty: "This one isn't defined on the interface"
};
// I want this to throw an error because myTypeRuntimeValue has
// an additional property not defined in the interface
const decoded = MyTypeDecoder.runWithException(myTypeRuntimeValue);
The combinator could be something like exact(value), e.g.
If an object is run through the decoder at runtime, there should be a way to configure the decoder to throw an error if the decoded object has extra properties not defined on the original decoder.
For example, given the following decoder:
There should be an additional combinator to make the decoder throw an error given the following input:
The combinator could be something like
exact(value)
, e.g.