Lightweight typed event emitter for lifecycle events.
Simpler than HookRegistry — no priority, conditions, or safe mode. Use when you just need pub/sub notification.
Register a persistent event listener.
Register a one-shot event listener (auto-removed after first emit).
Remove a specific listener from an event.
Emit an event, calling all registered listeners. Listener errors are isolated.
Remove all listeners for an event (or all events if omitted).
Optional
Lightweight typed event emitter for lifecycle events.
Simpler than HookRegistry — no priority, conditions, or safe mode. Use when you just need pub/sub notification.