작성
·
84
0
FlatArray 타입에서 recur 를 할때, Arr extends Array가 아닌 Arr extends ReadonlyArray 로 한 이유가 궁금합니다. 그냥, Readonly array라는것을 다른 사람에게 명시하는 정도의 사용일까요?
type FlatArray<Arr, Depth extends number> = {
done: Arr;
recur: Arr extends ReadonlyArray<infer InnerArr> ? FlatArray<InnerArr, [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]>
: Arr;
}[Depth extends -1 ? "done" : "recur"];