# FTEventEmitter · FT4 TypeScript client · Chromia Docs (concept)

> Special case of the EventEmitter which is configured to emit events
defined in events.FTEvents interface FTEventEmitter { emit < K extends keyof FTEvents >

Source: https://docs.chromia.com/pages/ft4-ts-client/interfaces/events.FTEventEmitter/

Interface

# FTEventEmitter

On this page

* [Methods](#methods)
* [emit](#emit)
* [off](#off)
* [on](#on)

Special case of the EventEmitter which is configured to emit events
defined in [events.FTEvents](https://docs.chromia.com/pages/ft4-ts-client/types/events.FTEvents/)

```signature
interface FTEventEmitter {
    emit<K extends keyof FTEvents>(event: K, ...args: FTEvents[K]): void;
    off<K extends keyof FTEvents>(
        event: K,
        listener: Listener<FTEvents[K]>,
    ): void;
    on<K extends keyof FTEvents>(
        event: K,
        listener: Listener<FTEvents[K]>,
    ): () => void;
}
```

#### Hierarchy ([View Summary](https://docs.chromia.com/pages/ft4-ts-client/hierarchy/#events.FTEventEmitter))

* [EventEmitter](https://docs.chromia.com/pages/ft4-ts-client/classes/events.EventEmitter/)<[FTEvents](https://docs.chromia.com/pages/ft4-ts-client/types/events.FTEvents/)>
  + FTEventEmitter

## Methods

### emit

* ```signature
  emit<K extends keyof FTEvents>(event: K, ...args: FTEvents[K]): void
  ```

  Fires the event, calling all registered listeners with the provided arguments.

  #### Type Parameters

  + K extends keyof [FTEvents](https://docs.chromia.com/pages/ft4-ts-client/types/events.FTEvents/)

  #### Parameters

  + event: [K](#emitk)

    The event name.
  + ...args: [FTEvents](https://docs.chromia.com/pages/ft4-ts-client/types/events.FTEvents/)[[K](#emitk)]

    The arguments for the listeners.

  #### Returns void

  Inherited from [EventEmitter](https://docs.chromia.com/pages/ft4-ts-client/classes/events.EventEmitter/).[emit](https://docs.chromia.com/pages/ft4-ts-client/classes/events.EventEmitter/#emit)

### off

* ```signature
  off<K extends keyof FTEvents>(event: K, listener: Listener<FTEvents[K]>): void
  ```

  Removes a listener for the event.

  #### Type Parameters

  + K extends keyof [FTEvents](https://docs.chromia.com/pages/ft4-ts-client/types/events.FTEvents/)

  #### Parameters

  + event: [K](#offk)

    The event name.
  + listener: [Listener](https://docs.chromia.com/pages/ft4-ts-client/types/events.Listener/)<[FTEvents](https://docs.chromia.com/pages/ft4-ts-client/types/events.FTEvents/)[[K](#offk)]>

    The listener callback.

  #### Returns void

  Inherited from [EventEmitter](https://docs.chromia.com/pages/ft4-ts-client/classes/events.EventEmitter/).[off](https://docs.chromia.com/pages/ft4-ts-client/classes/events.EventEmitter/#off)

### on

* ```signature
  on<K extends keyof FTEvents>(
      event: K,
      listener: Listener<FTEvents[K]>,
  ): () => void
  ```

  Registers a new listener for the event.

  #### Type Parameters

  + K extends keyof [FTEvents](https://docs.chromia.com/pages/ft4-ts-client/types/events.FTEvents/)

  #### Parameters

  + event: [K](#onk)

    The event name.
  + listener: [Listener](https://docs.chromia.com/pages/ft4-ts-client/types/events.Listener/)<[FTEvents](https://docs.chromia.com/pages/ft4-ts-client/types/events.FTEvents/)[[K](#onk)]>

    The listener callback.

  #### Returns () => void

  A function that removes the listener when called.

  Inherited from [EventEmitter](https://docs.chromia.com/pages/ft4-ts-client/classes/events.EventEmitter/).[on](https://docs.chromia.com/pages/ft4-ts-client/classes/events.EventEmitter/#on)

[View this page on docs.chromia.com](https://docs.chromia.com/pages/ft4-ts-client/interfaces/events.FTEventEmitter.html)Generated API reference, mirrored from the live docs
