phaser3-rex-plugins
Version:
52 lines (45 loc) • 1.16 kB
TypeScript
import EventEmitterMixin from '../eventemitter/EventEmitterMethods';
export default ComponentBase;
declare namespace ComponentBase {
interface IConfig {
/**
* True to create a private EventEmitter, false to disable, or provide one.
*/
eventEmitter?: Phaser.Events.EventEmitter | boolean;
}
}
/**
* Base component that binds to a parent (game object, scene, or game).
*/
declare class ComponentBase {
/**
* Create the component and attach it to a parent.
*/
constructor(
parent?: Object,
config?: ComponentBase.IConfig
);
/**
* Assign a parent and resolve the related scene/game references.
*/
setParent(
parent?: Object
): this;
/**
* The bound parent object (game object, scene, or game).
*/
parent: Object;
/**
* Resolved scene of the current parent, if any.
*/
scene: Phaser.Scene;
/**
* Resolved game of the current parent, if any.
*/
game: Phaser.Game;
/**
* Shutdown and cleanup resources.
*/
destroy(): void;
}
interface ComponentBase extends EventEmitterMixin { }