phaser3-rex-plugins
Version:
78 lines (69 loc) • 1.84 kB
TypeScript
export default WaitEvents;
declare namespace WaitEvents {
/**
* Callback fired when all wait events are completed.
*/
type CompleteCallbackType = () => void;
}
/**
* Utility for waiting on multiple events before completion.
*/
declare class WaitEvents {
/**
* Create a WaitEvents instance.
*
* @param completeCallback - Completion callback.
* @param scope - Callback scope.
*/
constructor(
completeCallback?: WaitEvents.CompleteCallbackType,
scope?: object
);
/**
* Set completion callback.
*
* @param completeCallback - Completion callback.
* @param scope - Callback scope.
* @returns This WaitEvents instance.
*/
setCompleteCallback(
completeCallback: WaitEvents.CompleteCallbackType,
scope?: object
): this;
/**
* Create and register a wait callback.
*
* @returns This WaitEvents instance.
*/
waitCallback(): this;
/**
* Wait for an event from an emitter.
*
* @param eventEmitter - Event emitter instance.
* @param eventName - Event name to wait for.
* @returns This WaitEvents instance.
*/
waitEvent(
eventEmitter: Phaser.Events.EventEmitter,
eventName: string
): this;
/**
* Remove a registered completion callback.
*
* @param callback - Completion callback to remove.
* @returns This WaitEvents instance.
*/
remove(
callback: WaitEvents.CompleteCallbackType
): this;
/**
* Clear all waiting callbacks.
*
* @returns This WaitEvents instance.
*/
clear(): this;
/**
* True if there are no pending wait events.
*/
readonly noWaitEvent: boolean;
}