import { AnimationControls, AnimationOptions } from "../dom/types";
export declare class Animation implements Omit<AnimationControls, "stop"> {
    private resolve;
    private reject;
    private startTime;
    private pauseTime;
    private rate;
    private tick;
    private t;
    private cancelT;
    private playState;
    constructor(output: (v: number) => void, keyframes: number[], { easing, duration, delay, endDelay, offset, repeat, direction, }: AnimationOptions);
    finished: Promise<unknown>;
    play(): void;
    pause(): void;
    finish(): void;
    cancel(): void;
    reverse(): void;
    commitStyles(): void;
    get currentTime(): number;
    set currentTime(t: number);
    get playbackRate(): number;
    set playbackRate(rate: number);
}
export declare function animateNumber(output: (v: number) => void, keyframes?: number[], options?: AnimationOptions): Animation;
