import EaseValueTaskBase from "../../utils/componentbase/tweentask/EaseValueTaskBase"; export default EaseMove; declare namespace EaseMove { /** * End behavior mode identifiers. */ type ModeType = 0 | 1 | 2 | 'stop' | 'destroy' | 'yoyo'; /** * EaseMove configuration. */ interface IConfig { /** * End behavior mode. */ mode?: ModeType, /** * Target x. */ x?: number, /** * Target y. */ y?: number, /** * Start x. */ startX?: number, /** * Start y. */ startY?: number, /** * End x. */ endX?: number, /** * End y. */ endY?: number, /** * Duration in ms. */ duration?: number, /** * Delay in ms. */ delay?: number, /** * Ease name. */ ease?: string } namespace Events { /** * Complete callback. */ type CompleteCallbackType = ( /** * Target game object. */ gameObject: Phaser.GameObjects.GameObject, /** * EaseMove component. */ easeMove: EaseMove ) => void; } } /** * Ease movement task component. */ declare class EaseMove extends EaseValueTaskBase { /** * Create an EaseMove component. * @param gameObject - Target game object. * @param config - EaseMove configuration. */ constructor( gameObject: Phaser.GameObjects.GameObject, config?: EaseMove.IConfig ); /** * Set end behavior mode. * @param mode - Mode identifier. * @returns This instance. */ setMode(mode: EaseMove.ModeType): this; /** * Current mode value. */ mode: number; /** * Set target position. * @param x - Target x. * @param y - Target y. * @returns This instance. */ setTargetPosition( x: number, y: number ): this; /** * Set target position from config. * @param config - Position configuration. * @returns This instance. */ setTargetPosition( config?: { /** * Start x. */ startX?: number, /** * Start y. */ startY?: number, /** * End x. */ endX?: number, /** * End y. */ endY?: number, } ): this; /** * Start x. */ startX: number; /** * Start y. */ startY: number; /** * End x. */ endX: number; /** * End y. */ endY: number; }