フォロー

長いサンプルコード 

```ts
const values1: [string, number] = ["first", 2]
const values2: unknown[] = values1 // OK

type Fun<T extends unknown[]> = (...args: T) => string

const f: (flag: boolean, text: string) => string = (flag, text) => (flag ? text : '')
const fun1: Fun<[boolean, string]> = f
const fun2: Fun<unknown[]> = f // Error! Type 'unknown' is not assignable to type 'boolean'.
```

> Type 'unknown' is not assignable to type 'boolean'.
...逆じゃない???

思いついて逆に Fun<[boolean, string]> へ Fun<unknown[]> を代入してみたら, なんと通ってしまうのでこれバグかもです.

ログインして会話に参加
Fedibird

様々な目的に使える、日本の汎用マストドンサーバーです。安定した利用環境と、多数の独自機能を提供しています。