Как мне сформировать тип объединения из аргументов в функции

#typescript #tuples

Вопрос:

Определение мета реквизита:

 interface ITableProps<T> {
  onChange?: (
    pagination: number;
    filters: Record<string, T>;
    section: string[];
  ) => void;
}
 

Ожидать:
Я хочу объединить параметры этой функции в тип интерфейса значения ключа,
например:

 type ExtractFuncParameters<T> = {
  pagination: number;
  filters: Record<string, T>;
  section: string[];
}
 

Но теперь я могу получить только различные типы параметров в функции, я не могу получить его имя, это моя реализация:

 type OnChangeParameters = Parameters<ITableProps<unknown>['onChange']>
type TupleToUnion<T> = T extends Array<infer P> ? P : never;

// number | Record<string, unknown> | string[];
type OnChangeParametersToUnion = TupleToUnion<OnChangeParameters>

// what should I do ?