Typescript handy types

type ExtractArg<T> = T extends (arg: infer U) => any ? U : T;

type MapTuple<Tuple extends [...any[]]> = {
  [Index in keyof Tuple]: ExtractArg<Tuple[Index]>;
};
type ExtractArg<T> = T extends (arg: infer U) => any ? U : T;

type MapTuple<Tuple extends [...any[]]> = {
  [Index in keyof Tuple]: ExtractArg<Tuple[Index]>;
};
BETA Snippet explanation automatically generated by OpenAI:

No explanation generated yet.

Snippet By Dev Dojo

·

Created June 12th, 2021

·

Report Snippet