export interface CaptureRect {
    x: number;
    y: number;
    width: number;
    height: number;
}
export declare class GifRecorder {
    private frames;
    private captureRect;
    private _isRecording;
    private _frameDelay;
    private canvas;
    private ctx;
    /**
     * 设置截图区域
     */
    setArea(rect: CaptureRect): void;
    /**
     * 设置帧间隔
     */
    setFrameDelay(delay: number): void;
    /**
     * 获取截图区域
     */
    getArea(): CaptureRect | null;
    /**
     * 开始录制
     */
    startRecording(): void;
    /**
     * 停止录制
     */
    stopRecording(): void;
    /**
     * 捕获当前帧
     * @param element 要截图的 DOM 元素（通常是地图容器）
     */
    captureFrame(element: HTMLElement, time: string): Promise<void>;
    private processImage;
    /**
     * 获取当前帧数
     */
    getFrameCount(): number;
    /**
     * 合成 GIF
     */
    generateGif(): Promise<Blob | null>;
    /**
     * 下载 GIF 文件
     */
    download(blob: Blob, title?: string): void;
    /**
     * 保存为文件
     */
    saveAsFile(blob: Blob): Promise<void>;
    /**
     * 重置录制器
     */
    reset(): void;
    get isRecording(): boolean;
    get frameDelay(): number;
}
export default GifRecorder;
