import type { IAnimationTimeline, IAnimator, IAnimatorOptions, IAnimationUnit, IAnimationParameters, IElement } from '../../types';
export declare class Animator implements IAnimator {
    id: number;
    element: IElement;
    animationOptions: IAnimatorOptions;
    isAnimating: boolean;
    private unit;
    private runnings;
    private callbackFunction;
    constructor(element: IElement, unit: IAnimationUnit, animationOptions: {
        state: string;
        timeline: IAnimationTimeline;
        id: string;
    });
    callback(callbackFunction: (...args: any[]) => void): this;
    animate(animationParameters: IAnimationParameters, parameters: any): this;
    stop(stopState?: 'start' | 'end' | null, invokeCallback?: boolean): this;
    pause(): this;
    resume(): this;
    startAt(startTime: number): this;
    getTotalAnimationTime(): number;
    getEndAttributes(): Record<string, any>;
    private animationEnd;
    private animateElement;
    private animateTimeSlice;
}
