@ac-essentials/misc-util
    Preparing search index...

    Interface IEventDispatcherMap<Events>

    Interface representing an object that allows listeners to register for event dispatching.

    interface IEventDispatcherMap<Events extends Record<PropertyKey, unknown[]>> {
        isSubscribed<K extends string | number | symbol>(
            event: K,
            listener: Callable<Events[K]>,
        ): boolean;
        subscribe<K extends string | number | symbol>(
            event: K,
            listener: Callable<Events[K]>,
            options?: EventDispatcherSubscribeOptions,
        ): Callable | null;
        unsubscribe<K extends string | number | symbol>(
            event: K,
            listener: Callable<Events[K]>,
        ): void;
        wait<K extends string | number | symbol>(
            event: K,
            options?: EventDispatcherWaitOptions<Events[K]>,
        ): Promise<Events[K]>;
    }

    Type Parameters

    • Events extends Record<PropertyKey, unknown[]>

      A record mapping event names to their argument tuple types.

    Implemented by

    Index

    Methods

    • Wait for the next occurrence of a specific event, optionally matching a predicate.

      This is a convenience method that subscribes to the dispatcher, waits for the next event that matches the predicate (if provided), and then unsubscribes automatically.

      Type Parameters

      • K extends string | number | symbol

      Parameters

      Returns Promise<Events[K]>

      A promise that resolves with the event arguments as an array.