/**
 * @class
 */
export class Animation {
    /**
     *
     * @param json
     * @returns {Animation}
     */
    static fromJSON(json: any): Animation;
    /**
     *
     * @param options
     * @property {List.<AnimationClip>} clips
     * @constructor
     */
    constructor(options: any);
    /**
     *
     * @type {List<AnimationClip>}
     */
    clips: List<AnimationClip>;
    debtTime: number;
    /**
     * @protected
     * @type {Future|null}
     */
    protected mixer: Future | null;
    /**
     *
     * @type {number}
     */
    flags: number;
    /**
     *
     * @param {boolean} v
     */
    set isPlaying(arg: boolean);
    /**
     *
     * @return {boolean}
     */
    get isPlaying(): boolean;
    /**
     *
     * @param {number|AnimationFlags} flag
     * @returns {void}
     */
    setFlag(flag: number | AnimationFlags): void;
    /**
     *
     * @param {number|AnimationFlags} flag
     * @returns {void}
     */
    clearFlag(flag: number | AnimationFlags): void;
    /**
     *
     * @param {number|AnimationFlags} flag
     * @param {boolean} value
     */
    writeFlag(flag: number | AnimationFlags, value: boolean): void;
    /**
     *
     * @param {number|AnimationFlags} flag
     * @returns {boolean}
     */
    getFlag(flag: number | AnimationFlags): boolean;
    /**
     *
     * @param {Animation} other
     * @returns {boolean}
     */
    equals(other: Animation): boolean;
    /**
     *
     * @returns {number}
     */
    hash(): number;
    fromJSON(json: any): void;
    toJSON(): {
        clips: any;
        debtTime: number;
    };
    /**
     * @readonly
     * @type {boolean}
     */
    readonly isAnimation: boolean;
}
export namespace Animation {
    let typeName: string;
}
import List from '../../../core/collection/list/List.js';
import { AnimationClip } from "./AnimationClip.js";
import { AnimationFlags } from "./AnimationFlags.js";
//# sourceMappingURL=Animation.d.ts.map