배열(튜플)을 받아 길이를 반환하는 제네릭 Length<T>를 구현하세요.
type Length<T extends readonly any[]> = T['length']
타입 뒤의 [${프로퍼티명}]을 통해 해당 타입 내의 프로퍼티의 타입을 사용할 수 있다.
참고로 number[]와 같은 꼴의 'length는 숫자 리터럴이 아닌 number가 나온다
튜플이라는 뜻을 살리기 위해 readonly 속성을 앞에 붙였다
type Length<T extends any> = T extends { length : infer R } ? R : never;
infer타입을 통해 추론을 하는 경우도 있었다.