Open4

keyof neverがすべてのキーになることの図による説明

Nakano as a ServiceNakano as a Service

これを見るとkeyofX extends YのXとYを逆転させている。

X extends Y  ==>  (keyof Y) extends (keyof X);

Dog extends Animal  ==>  (keyof Animal) extends (keyof Dog);
Nakano as a ServiceNakano as a Service

↑がneverとunknownに対しても成り立つためには、以下のように定義されるのが自然である。

never extends unknown  ==>  (keyof never) extends (keyof unknown)