Kaizen
Browse modulesBookingsbookings/sharedTypes

Type Alias: ComposedEvent<Caps *extends* readonly [`Capability`](../interfaces/Capability.md)<`any`, `any`>[]>

type ComposedEvent<Caps extends readonly Capability<any, any>[]> = EventOf<Caps[number]>;

Defined in: shared/bookings/capabilities/compose.ts:58

The event NAMES a composition accepts = UNION of every capability's event literals. This is what makes cross-vertical transitions a COMPILE error: facilityMachine's Event has no "acceptOffer" (no waitlistable in its tuple), so next(…, "acceptOffer") fails to type-check. Shape is an intersection (you must satisfy ALL shapes); Event is a union (you may send ANY contributed event) — the two compose in opposite directions.

Type Parameters

Type Parameter
Caps extends readonly Capability<any, any>[]

On this page