JavaScriptのArray.concatを型システムで構成する。
Variadic Tuple Typesを使って次のように定義する
type Concat<T extends any[], U extends any[]> = [...T, ...U]
...Tと書ける機能...で展開される方はextends readonly any[]を満たす必要がある。TypeScript: Documentation - TypeScript 4.0
Variadic Tuple Typesという名前がわからないまま、「こんな感じにできそうかな」と思ったら通ってしまいました。 TypeScript難しい…