import { Renderer, RendererOption } from './renderer'; import { Path } from './svg'; export interface AnimationOption extends RendererOption { ms: number; } export declare type FrameAnimation = (origin: Path[], loopIndex?: number) => Path[]; export declare class SvgAnimation extends Renderer { ms: number; private _stopId; private _stop; private _anim; private _restorePaths; private _framesNumber; private _repeatCount; constructor(el: HTMLElement, { background, ms }?: AnimationOption); setAnimation(fn: FrameAnimation, { frames, repeatCount, ms }?: { frames?: number; repeatCount?: number | string; ms?: number; }): void; stop(): boolean; restore(): void; generateFrame(index?: number): Path[]; start(): void; toAnimationElement(): SVGSVGElement; downloadAnimation(filename?: string): void; private _getFramesNumber; private _registerRestorePaths; }