eligius
    Preparing search index...

    Class TypedEventEmitter<T>

    Type-safe event emitter implementation

    Features:

    • Generic type parameter for event map
    • Handler execution order preserved (registration order)
    • Errors in handlers caught and logged (don't break other handlers)
    • Copy handlers array during emit (safe removal during iteration)
    interface MyEvents {
    start: [];
    data: [value: string];
    progress: [current: number, total: number];
    }

    const emitter = new TypedEventEmitter<MyEvents>();

    const unsubscribe = emitter.on('data', (value) => {
    console.log('Received:', value);
    });

    emitter.emit('data', 'hello');
    unsubscribe();

    Type Parameters

    • T extends Record<keyof T, unknown[]>

    Implements

    Index

    Constructors

    Methods

    • Emit an event to all subscribers

      Features:

      • Copies handlers array to allow safe removal during iteration
      • Isolates errors - one failing handler doesn't break others
      • Logs errors to console for debugging

      Type Parameters

      • K extends string | number | symbol

      Parameters

      • event: K

        Event name

      • ...args: T[K]

        Event arguments

      Returns void