Как вы увидели, отображенные типы имеют особый синтаксис. И в объекте должно быть не более одного отображенного типа (как и сигнатур индекса):
type MyMappedType = {
[Key in UnionType]: ValueType
}
Профессиональный TypeScript. Разработка масштабируемых JavaScript-приложений
·
Борис Черный