import EaseValueTaskBase from "../../utils/componentbase/tweentask/EaseValueTaskBase"; export default Fade; declare namespace Fade { /** * Behavior after fade-out completes. */ type ModeType = 0 | 1 | 'stop' | 'destroy'; /** * Configuration options for a fade task. */ interface IConfig { /** * Completion mode after fade-out. */ mode?: ModeType, /** * Set to true to enable the fade task. */ enable?: boolean, /** * Volume range configuration object. */ volume?: { /** * Starting volume value. */ start?: number, /** * Ending volume value. */ end?: number, } /** * Starting volume value. */ start?: number, /** * Ending volume value. */ end?: number, /** * Fade duration in milliseconds. */ duration?: number, /** * Delay before fade starts in milliseconds. */ delay?: number } } /** * Fade task that animates sound volume over time. */ declare class Fade extends EaseValueTaskBase { /** * Create a fade task. * * @param gameObject - Sound or game object associated with this task. * @param config - Optional fade configuration. */ constructor( gameObject: Phaser.GameObjects.GameObject, config?: Fade.IConfig ); /** * Set completion mode. * * @param mode - Completion mode. * @returns This fade task. */ setMode(mode: Fade.ModeType): this; /** * Set volume interpolation range. * * @param start - Starting volume value. * @param end - Ending volume value. * @returns This fade task. */ setVolumeRange( start: number, end: number ): this; }