/** * Bind an event emitter event to a game object lifecycle. * * @param bindingTarget - Game object that owns the binding. * @param eventEmitter - Event emitter source. * @param eventName - Event name to listen for. * @param callback - Event callback. * @param scope - Callback scope. * @param once - Listen once only. * @returns The binding target. */ export default function ( bindingTarget: Phaser.GameObjects.GameObject, eventEmitter: Phaser.Events.EventEmitter, eventName: string, callback: Function, scope?: unknown, once?: boolean, ): Phaser.GameObjects.GameObject; /** * Bind an event emitter event to a scene lifecycle. * * @param bindingTarget - Scene that owns the binding. * @param eventEmitter - Event emitter source. * @param eventName - Event name to listen for. * @param callback - Event callback. * @param scope - Callback scope. * @param once - Listen once only. * @returns The binding target. */ export default function ( bindingTarget: Phaser.Scene, eventEmitter: Phaser.Events.EventEmitter, eventName: string, callback: Function, scope?: unknown, once?: boolean, ): Phaser.Scene;