import { AnimationMixer, AnimationClip, AnimationAction } from "three";
import IAnimationManager, { AnimationData } from "../../../interface/IAnimationManager";
import Appendable from "../Appendable";
import FoundManager from "../FoundManager";
import AnimationStates from "./AnimationStates";
export default class AnimationManager extends Appendable implements IAnimationManager {
    $loadedClip: AnimationClip | undefined;
    $animationStates: AnimationStates;
    static componentName: string;
    static defaults: Partial<import("../../../interface/utils/Defaults").default<IAnimationManager>>;
    static schema: Required<import("../../../interface/utils/extractProps").ExtractProps<IAnimationManager>>;
    $action?: AnimationAction;
    $mixer: AnimationMixer;
    private _clip?;
    get $clip(): AnimationClip | undefined;
    set $clip(val: AnimationClip | undefined);
    get paused(): boolean;
    set paused(val: boolean);
    get loop(): number | boolean;
    set loop(val: number | boolean);
    lastFrame: number;
    constructor(name: string | undefined, $loadedClip: AnimationClip | undefined, target: object | undefined, $animationStates: AnimationStates);
    retarget(target: FoundManager, animationStates: AnimationStates): AnimationManager;
    private _data?;
    get data(): AnimationData | undefined;
    set data(val: AnimationData | undefined);
    mergeData(data: AnimationData): void;
    get frame(): number;
    set frame(val: number);
}
