@robotlegsjs/phaser
Version:
RobotlegsJS integration with Phaser Scene Manager
43 lines (42 loc) • 1.96 kB
TypeScript
import { IEventMap } from "@robotlegsjs/core";
export declare const IEventEmitterMap: unique symbol;
/**
* The Event Emitter Map keeps track of listeners and provides the ability
* to unregister all Phaser.Events.EventEmitter listeners with a single method call.
*/
export interface IEventEmitterMap extends IEventMap {
/**
* The same as calling `on` or `addListener` directly on the `Phaser.Events.EventEmitter`,
* but keeps a list of listeners for easy (usually automatic) removal.
*
* @param emitter The `Phaser.Events.EventEmitter` to listen to
* @param event The `event` type to listen for
* @param listener The `event` handler
* @param context the listener function's "this"
*/
on(emitter: Phaser.Events.EventEmitter, event: string | symbol, listener: Function, context?: any): void;
/**
* The same as calling `once` directly on the `Phaser.Events.EventEmitter`,
* but keeps a list of listeners for easy (usually automatic) removal.
*
* @param emitter The `Phaser.Events.EventEmitter` to listen to
* @param event The `event` type to listen for
* @param listener The `event` handler
* @param context the listener function's "this"
*/
once(emitter: Phaser.Events.EventEmitter, event: string | symbol, listener: Function, context?: any): void;
/**
* The same as calling `off` or `removeListener` directly on the `Phaser.Events.EventEmitter`,
* but updates our local list of listeners.
*
* @param emitter The `Phaser.Events.EventEmitter` to listen to
* @param event The `event` type to listen for
* @param listener The `event` handler
* @param context the listener function's "this"
*/
off(emitter: Phaser.Events.EventEmitter, event: string | symbol, listener?: Function, context?: any): void;
/**
* Removes all listeners registered through `on` or `once`
*/
unmapEventEmitterListeners(): void;
}