Event Bus Interface

interface IEventBus {
    publish(event: ISessionEvent): void;
    subscribe<X>(eventType: EventType, listener: ((event: X) => Promise<void>)): void;
}

Implemented by

Methods

  • Publishes a Session Event i.e. executes all listener function associated to Event Type of the specified Session Event.

    Parameters

    Returns void

  • Subscribes to Event of Event Type by registering a listener

    Type Parameters

    Parameters

    • eventType: EventType

      Event Type

    • listener: ((event: X) => Promise<void>)

      Listener

        • (event): Promise<void>
        • Parameters

          • event: X

          Returns Promise<void>

    Returns void