Register a callback function for a specific event type.
The event class constructor to register the callback for
The callback function to invoke when the event occurs
Cleanup function that removes the callback when invoked
Register all callbacks from a hook provider.
The hook provider to register
Register all callbacks from multiple hook providers.
Array of hook providers to register
Remove all callbacks registered by a hook provider.
The hook provider to remove
Invoke all registered callbacks for the given event. Awaits each callback, supporting both sync and async.
The event to invoke callbacks for
The event after all callbacks have been invoked
Implementation of the hook registry for managing hook callbacks. Maintains mappings between event types and callback functions.