Задать вопрос
ReturnMeVoid
@ReturnMeVoid

Как в TS задать интерфейс объекта, в котором key === value?

Дан такой тип, в котором указано, что ключ в объекте и его значение должны быть равны:

type MyType<T extends string> = {
  [K in T]: K;
};


Как преобразовать такой тип в интерфейс? Подойдёт даже без дженерика, главное чтоб соблюдалось правило равности key === value
  • Вопрос задан
  • 43 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
Alexandroppolus
@Alexandroppolus
кодир
С генериком, похоже, нельзя. Без генерика можно через наследование:
type MyType<T extends string> = {
  [K in T]: K;
};

interface IMyInt extends MyType<'qq' | 'aa'> {}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы