import type { AstroData } from '../radix'; import type { Settings } from '../settings'; import type Transit from '../transit'; import Timer from './timer'; /** * Transit chart animator * * Animates the object on a circle. * * @class * @public * @constructor * @param {Object} from, {"Sun":[12], "Moon":[60]} * @param {Object} to, {"Sun":[30], "Moon":[180]} * @param {Object} settings, {cx:100, cy:100, radius:200, prefix:"astro-chart-"} */ declare class Animator { transit: Transit; isReverse: boolean; rotation: number; settings: Settings; actualPlanetPos: any; timer: Timer; timeSinceLoopStart: number; context: this; cuspsElement: any; data: AstroData; duration: number; callback: () => void; constructor(transit: Transit, settings: Settings); /** * Animate objects * @param {Object} data, targetPositions * @param {Integer} duration - seconds * @param {boolean} isReverse * @param {Function} callbck - start et the end of animation */ animate(data: any, duration: number, isReverse: boolean, callback: () => void): void; update(deltaTime?: number): void; updateCusps(expectedNumberOfLoops: number): void; updatePlanets(expectedNumberOfLoops: number): void; } export default Animator;