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

Как типизировать new Map в typescript с разными values?

Подскажите пожалуйста как правильно типизировать new Map из примера:
enum Names {
 user = 'user',
 car = 'car'
}

class User {}

class Car {}

const mymap = new Map<Names, User | Car>()

mymap.set(Names.user, new User());
mymap.set(Names.car, new Car());

const res = mymap.get(Names.user); // как получить по ключу тип User ?


В данном примере сейчас res соответствует типу User | Car | undefined. А как получить тип User если ключ передан Names.user?
Кто нибудь типизировал подобные вещи?
  • Вопрос задан
  • 533 просмотра
Подписаться 1 Простой 6 комментариев
Помогут разобраться в теме Все курсы
  • Skillbox
    Курс по TypeScript
    3 месяца
    Далее
  • Merion Academy
    Онлайн-курс по TypeScript
    2 месяца
    Далее
  • Stepik
    TypeScript с 0 до ПРО | Решение задач по TS, разбор сложных тем
    1 неделя
    Далее
Пригласить эксперта
Ваш ответ на вопрос

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

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