• Decoder for record types with string keys.

    Type Parameters

    • V

    Parameters

    • decoder: Decoder<V>

      The decoder for the record values

    • decoderName: string

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

    Returns Decoder<{ [K: string]: V }>

    A decoder that validates and returns a record with string keys

    const numberRecord = JsonDecoder.record(JsonDecoder.number(), 'NumberRecord');

    numberRecord.decode({a: 1, b: 2}); // Ok<Record<string, number>>
    numberRecord.decode({a: '1', b: 2}); // Err({error: '<NumberRecord> record decoder failed at key "a" with error: "1" is not a valid number'})