我定义这种类型的方式有什么问题
type Payload<Es> = {
trigger:
Es extends Record<infer K, infer V>
? { key: K, data: V } : never
}
type Evs = {
"item.1": { ok: "Y", code: number }
"item.2": 1 | 0
}
const payload: Payload<Evs> = {
trigger: {
key: "item.1",
data: 1
}
}
payload.trigger.data
并没有像我预期的那样被推断出来
expected
{ ok: "Y", code: number }
what I get
0 | { ok: "Y", code: number } | 1