Emit a void event with no payload (or an explicit null/undefined).
Optionalpayload: nullEmit an event with its correlated payload. The payload is required for any
event whose mapped type is not void; correlating it directly (rather than
through a rest tuple) lets it type-check even when TEventMap is a generic
type parameter, or when forwarding by a generic key over a concrete map
(T extends keyof M).
Correlated-tuple form: the (event, payload) pair must be one of the
[event, payload] tuples of TEventMap. Use this after discriminating on
event when both values started as independent unions.
Optionalreason: stringRemove listeners and pipe edges in options.scope (default ListenerScope.ANY), and cancel
pending next / scan promises when the scope includes OWN, leaving the bus usable.
Lifecycle hooks stay registered. options.includeIncognito defaults to true.
Optionaloptions: IntrospectionOptions
Emit events and tear down a Bus instance.
Extends EmittingSurface with ControlSurface.destroy and ControlSurface.clear. Prefer EmittingSurface when a dependency may raise events but must not destroy or clear the bus.
Event-map typing is bivariant (no
in out) so a surface over a wider map is assignable to a narrower view — the same Wide→Narrow shape as Bus.