@moxijs/core - v0.3.4
    Preparing search index...

    Class EventEmitter<T>

    Type-safe event emitter for pub/sub communication.

    // Define event types
    type GameEvents = {
    'player:hit': (damage: number) => void;
    'game:over': () => void;
    'score:change': (score: number, combo: number) => void;
    };

    const events = new EventEmitter<GameEvents>();

    // Subscribe
    events.on('player:hit', (dmg) => console.log(`Hit for ${dmg}`));
    events.once('game:over', () => showGameOver());

    // Emit
    events.emit('player:hit', 10);
    events.emit('score:change', 100, 3);

    // Unsubscribe
    events.off('player:hit', handler);

    Type Parameters

    • T extends MoxiEvents = MoxiEvents
    Index

    Constructors

    Methods

    Constructors

    • Type Parameters

      • T extends MoxiEvents<string, any> = MoxiEvents<string, any>

      Returns EventEmitter<T>

    Methods

    • Emit event to all listeners.

      Type Parameters

      • K extends string | number | symbol

      Parameters

      • event: K
      • ...args: Parameters<T[K]>

      Returns void

    • Unsubscribe from event.

      Type Parameters

      • K extends string | number | symbol

      Parameters

      • event: K
      • listener: T[K]

      Returns void

    • Subscribe to event.

      Type Parameters

      • K extends string | number | symbol

      Parameters

      • event: K
      • listener: T[K]

      Returns void

    • Subscribe once, auto-unsubscribe after first emit.

      Type Parameters

      • K extends string | number | symbol

      Parameters

      • event: K
      • listener: T[K]

      Returns void

    • Get singleton instance.

      Type Parameters

      • T extends MoxiEvents<string, any> = MoxiEvents<string, any>

      Returns EventEmitter<T>