組み込みの型Parametersを実装する
やりたいことは、関数T
の引数の型を動的に取得することなので、infer
を使用する。参照したらいつものパターン
type MyParameters<T extends (...args: any[]) => any> = T extends (...args: infer U) => any ? U : never
https://www.typescriptlang.org/docs/handbook/utility-types.html#parameterstype
Parametes<T>
の形式で、関数T
の引数の型のタプル型を生成する。