Назад к задачам
Junior — Senior
70

Определение типа payload в зависимости от значения action.type

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Необходимо описать тип Action, чтобы тип свойства payload автоматически выводился из конкретного значения action.type.

enum ActionType {
    one = "one",
    two = "two",
}

const reducer = <T extends ActionType>(
    state: State,
    action: Action<T>,
): State

action = { type, payload }

type Action = ?

В задаче требуется использовать возможности TypeScript (универсальные типы, условные типы, маппинг) для привязки корректного типа payload к каждому варианту ActionType.