Существует type
, определенный следующим образом: type ComponentType = 'CPU' | 'Motherboard' | 'Memory' | 'PSU'
.
Я хочу создать объект, который можно использовать для сопоставления ComponentType
для отображения строк, например что-то вроде:
const componentTypeToLabel/*: to do*/ = {
CPU: 'Computer processing unit',
Motherboard: 'Motherboard',
Memory: 'Memory',
PSU: 'Power supply unit',
};
Однако, при дополнительном рассмотрении, это componentTypeToLabel
не будет содержать все возможные значения ComponentType
, только некоторые.
Как выглядит определение типа для componentTypeToLabel
? Как мне определить этот тип? Я знаю, как это сделать, если ComponentType
вместо enum
(верю, что это будет const componentTypeToLabel: { [key in ComponentType]? : string } = ...
), но не тогда, когда ComponentType
является строковым объединением type
.