import { Blob } from 'global/window';
import { EXPORT_IMG_RATIOS, type ExportResolutionOption } from '@kepler.gl/constants';
import { ExportImage } from '@kepler.gl/types';
export declare function isMSEdge(window: Window): boolean;
export declare function getScaleFromImageSize(imageW?: number, imageH?: number, mapW?: number, mapH?: number): number;
export declare function calculateExportImageSize({ mapW, mapH, ratio, resolution }: {
    mapW: number;
    mapH: number;
    ratio: keyof typeof EXPORT_IMG_RATIOS;
    resolution: ExportResolutionOption;
}): {
    scale: number | undefined;
    imageW: number;
    imageH: number;
} | null;
export declare function convertToPng(sourceElem: HTMLElement, options: any): Promise<any>;
export declare function dataURItoBlob(dataURI: string): Blob;
export declare function downloadFile(fileBlob: Blob, fileName: string): void;
/**
 * Whether color is rgb
 * @returns
 */
export declare function exportImage(uiStateExportImage: ExportImage, filename?: string): void;
export declare function exportToJsonString(data: any): any;
export declare function getMapJSON(state: any, options?: {
    hasData?: boolean;
}): any;
export declare function exportJson(state: any, options?: any): void;
export declare function exportHtml(state: any, options: any): void;
export declare function exportMap(state: any, options?: {
    hasData?: boolean;
}): {
    map: any;
    thumbnail: any;
};
declare const exporters: {
    exportImage: typeof exportImage;
    exportJson: typeof exportJson;
    exportHtml: typeof exportHtml;
};
export default exporters;
