問題に挑戦!
配列Tを受け取り、その最初のプロパティの型を返すFirst<T>を実装します。
ただし配列が空の場合はneverを返してください。
例えば:
type arr1 = ["a", "b", "c"];
type arr2 = [3, 2, 1];
type head1 = First<arr1>; // expected to be 'a'
type head2 = First<arr2>; // expected to be 3
type head3 = First<[]>; // expected to be never
💡ヒント
T[number]を使うことで、Tの各要素にアクセスできます。
最初の要素の型をとりだすにはinferとスプレッド演算子...を組み合わせると良いでしょう。