Назад к задачам
Junior — Senior
71
Точная типизация методов объектов по их именам
Условие задачи
livecode
Необходимо обеспечить строгую типизацию двух объектов, чтобы каждый метод сохранял свой тип. Применение обобщённых типов вроде string или Record<string, …> приводит к утрате информации о конкретных ключах.
Требования:
- Для объекта
vtempObjзадать точные свойстваgetVtemplatesиpostVtemplates. - Для объекта
rptObjзадать точные свойстваgetReportsиputReports. - При объявлении типы каждого свойства должны быть явно известны компилятору.
// примерные объекты:
const vtempObj = {
getVtemplates: () => {/* ... */},
postVtemplates: () => {/* ... */}
}
const rptObj = {
getReports: () => {/* ... */},
putReports: () => {/* ... */}
}
// типизация должна сохранять ключи и их значения