export class AnimationActionThreeCompat {
    clip;
    time = 0;
    weight = 1;
    paused = false;
    playing = false;
    loop = "repeat";
    constructor(clip) {
        this.clip = clip;
    }
    play() { this.playing = true; this.paused = false; return this; }
    pause() { this.paused = true; return this; }
    stop() { this.playing = false; this.time = 0; return this; }
    scrub(time) {
        this.time = Math.max(0, Math.min(this.clip.duration, time));
        return this;
    }
    crossFadeTo(next, alpha) {
        const clamped = Math.max(0, Math.min(1, alpha));
        this.weight = 1 - clamped;
        next.weight = clamped;
        next.play();
    }
}
//# sourceMappingURL=AnimationAction.js.map