ag-charts-community
Version:
Advanced Charting / Charts supporting Javascript / Typescript / React / Angular / Vue
37 lines (36 loc) • 1.27 kB
TypeScript
import { type AnimationPhase, type IAnimation } from '../../motion/animation';
/**
* A batch of animations that are synchronised together. Can be skipped independently of other batches and the main
* animation skipping status.
*/
export declare class AnimationBatch {
private readonly maxAnimationTime;
private readonly debug;
private readonly controllers;
readonly stoppedCbs: Set<() => void>;
private currentPhase;
private readonly phases;
private skipAnimations;
private animationTimeConsumed;
/** Guard against premature animation execution. */
private isReady;
constructor(maxAnimationTime: number);
get size(): number;
get consumedTimeMs(): number;
isActive(): boolean;
getActiveControllers(): IAnimation[];
checkOverlappingId(id: string): void;
addAnimation(animation: IAnimation): void;
removeAnimation(animation: IAnimation): void;
progress(deltaTime: number): void;
ready(): void;
skip(skip?: boolean): void;
play(): void;
stop(): void;
stopByAnimationId(id: string): void;
stopByAnimationGroupId(id: string): void;
private dispatchStopped;
isSkipped(): boolean;
getRemainingTime(restrictPhase?: AnimationPhase): number;
destroy(): void;
}