infer est utilisé dans un conditional type pour capturer (extraire) un type de l'intérieur d'un autre type dans une nouvelle variable de type que vous pouvez ensuite utiliser. C'est du pattern-matching pour les types.
<T> = T (infer U)[] ? U : ;
A = <[]>;
B = <[]>;
