decodeTuple
export function decodeTuple<Decoders extends Decoder<any>[], OptionalDecoders extends Decoder<any>[] = []>(
bytes: BytesLike,
itemDecoders: [...Decoders[]],
optionalDecoders: [] | [...OptionalDecoders[]]
): [
...{[D in string
| number
| symbol]: Decoders[D<D>] extends Decoder<T>
? T
: never}[],
...{[D in string
| number
| symbol]: OptionalDecoders[D<D>] extends Decoder<T>
? undefined | T
: never}[]
]
Type parameters
Decoders
Decoders extends Decoder<any>[]
OptionalDecoders
OptionalDecoders extends Decoder<any>[] = []
uninferable in the default case, so must be default to empty tuple
Arguments
1. bytes
bytes: BytesLike
2. itemDecoders
itemDecoders: [...Decoders[]]
3. optionalDecoders
optionalDecoders: [] | [...OptionalDecoders[]]
Returns
[
...{[D in string
| number
| symbol]: Decoders[D<D>] extends Decoder<T>
? T
: never}[],
...{[D in string
| number
| symbol]: OptionalDecoders[D<D>] extends Decoder<T>
? undefined | T
: never}[]
]