Listenable Interface
An object which allows the registration of listeners so that subscribers can be notified when an event happens.
Sealed
This type is "sealed," meaning that code outside of the library defining it should not implement or extend it. Future versions of this type may add members or make typing of readonly members more specific.
Signature
/** @sealed */
export interface Listenable<TListeners extends object>
Type Parameters
| Parameter | Constraint | Description |
|---|---|---|
| TListeners | object |
Methods
| Method | Return Type | Description |
|---|---|---|
| off(eventName, listener) | void | Deregister an event listener. |
| on(eventName, listener) | Off |
Method Details
off
Deregister an event listener.
Signature
off<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): void;
Type Parameters
| Parameter | Constraint | Description |
|---|---|---|
| K | keyof Listeners<TListeners> |
Remarks
If listener is not currently registered, this method will have no effect.
Listeners may also be deregistered by calling the deregistration function returned when they are registered.
Parameters
| Parameter | Type | Description |
|---|---|---|
| eventName | K | The name of the event. |
| listener | TListeners[K] | The listener function to remove from the current set of event listeners. |
on
Signature
on<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): Off;
Type Parameters
| Parameter | Constraint | Description |
|---|---|---|
| K | keyof Listeners<TListeners> |
Parameters
| Parameter | Type | Description |
|---|---|---|
| eventName | K | |
| listener | TListeners[K] |
Returns
Return type: Off