• Decoder for enumeration values.

    Type Parameters

    • E

    Parameters

    • enumObj: object

      The enum object to use for decoding. Must not be a const enum.

    • decoderName: string

      How to display the name of the object being decoded in errors.

    Returns Decoder<E>

    A decoder that validates and returns enum values

    enum Color {
    Red = 'red',
    Blue = 'blue'
    }

    const colorDecoder = JsonDecoder.enumeration(Color, 'Color');
    colorDecoder.decode('red'); // Ok<Color>({value: Color.Red})
    colorDecoder.decode('green'); // Err({error: '<Color> decoder failed at value "green" which is not in the enum'})