import { BaseController, IAnimationBlueprint } from "..";
export declare class AnimationManager {
    private static instance;
    private lightMap;
    private animationLoops;
    private animationBlueprints;
    private startTime;
    private STEP_INTERVAL_MS;
    private numActiveAnimations;
    private ticksActive;
    private constructor();
    static getInstance(controllers?: BaseController[], animationBlueprints?: IAnimationBlueprint[], STEP_INTERVAL_MS?: number): AnimationManager;
    isAnimationLoopActiveByName(animationName: string): boolean;
    activateAnimationLoopByName(animationName: string | string[]): void;
    deactivateAnimationLoopByName(animationName: string | string[]): void;
    private generateAnimationLoopFromBlueprint;
    addLightToAnimationLoop(controller: BaseController, animationBlueprint: IAnimationBlueprint | IAnimationBlueprint[]): void;
    removeLightFromAnimationLoop(controller: BaseController, animationBlueprint: IAnimationBlueprint | IAnimationBlueprint[]): void;
    private startTicks;
    private stopTicks;
    private tickAnimations;
    private tickLights;
    private getCurrentTime;
    private getNextAnimation;
    private isValidAnimationStep;
    private getDefaultStep;
    private roundStepValues;
}
//# sourceMappingURL=animationManager.d.ts.map