On this pageExtractEvent<P, T> ExtractEvent<P, T> = { [K in P["type"]]: Extract<P, { type: K }> }[T] Type Parameters P P extends Payload = Payload T T extends P["type"] = P["type"]