2.0.1 • Published 7 months ago

siddsarkar-tiny-event-emitter v2.0.1

Weekly downloads
-
License
ISC
Repository
-
Last release
7 months ago

EventEmitter Library

The EventEmitter library provides a simple and flexible way to handle events in TypeScript. It allows you to register event listeners, trigger events, and manage event listeners with ease.

Installation

To install the library, use npm or yarn:

npm install siddsarkar-tiny-event-emitter

or

yarn add siddsarkar-tiny-event-emitter

Usage

Importing the Library

First, import the EventEmitter class from the library:

import EventEmitter from "siddsarkar-tiny-event-emitter";

Creating an EventEmitter

Create a class that extends EventEmitter and define the events it can handle:

interface MyEvents {
  eventName: (arg1: string, arg2: number) => void;
}

class MyEventEmitter extends EventEmitter<MyEvents> {}

Registering Event Listeners

You can register event listeners using the on method:

const emitter = new MyEventEmitter();

emitter.on("eventName", (arg1, arg2) => {
  console.log(`Event received with args: ${arg1}, ${arg2}`);
});

Registering One-Time Event Listeners

You can register one-time event listeners using the once method. These listeners will be removed after they are called once:

emitter.once("eventName", (arg1, arg2) => {
  console.log(`One-time event received with args: ${arg1}, ${arg2}`);
});

Triggering Events

Trigger events using the trigger method:

emitter.trigger("eventName", "Hello", 42);

Removing Event Listeners

Remove event listeners using the off method:

const listener = (arg1: string, arg2: number) => {
  console.log(`Event received with args: ${arg1}, ${arg2}`);
};

emitter.on("eventName", listener);

// Later, remove the listener
emitter.off("eventName", listener);

API

on(eventName: K, listener: TEvents[K]): void

Registers an event listener for the specified event.

once(eventName: K, listener: TEvents[K]): void

Registers a one-time event listener for the specified event. The listener will be removed after it is called once.

off(eventName: K, listener: TEvents[K]): void

Removes the specified event listener for the specified event.

trigger(eventName: K, ...args: Parameters<TEvents[K]>): void

Triggers the specified event with the provided arguments.

License

This library is licensed under the MIT License. See the LICENSE file for more information.

2.0.1

7 months ago

2.0.0

7 months ago

1.0.0

1 year ago