Возможно ли в TypeScript сопоставить значения объектов другому типу, который использует фактический тип записи в результате?
Не уверен, как это точно описать, но вот что я пытаюсь для достижения:
const obj = {
a: 1,
b: true,
c: "foo"
}
const result = toFunctions(obj)
// Type of result would be:
{
a: (input: number) => any // because a was of type number
b: (input: boolean) => any // because b was of type boolean
c: (input: string) => any // because c was of type string
}
Я пытаюсь «повторно использовать» типы из ключей исходных объектов в ключах возвращаемых объектов при выполнении какого-либо преобразования. В моем случае я хочу обернуть его в функцию, но такой механизм может также возвращать другие агрегатные типы, такие как number[]
или string[]
.
Я хотел бы сделать это в общем c способ, которым я могу генерировать типы функций на основе клавиш любого объекта.