import ExcelJS from 'exceljs';
import type { IVTable } from '../util/type';
export type CellInfo = {
    cellType: string;
    cellValue: string;
    table: IVTable;
    col: number;
    row: number;
};
export type SkipImageExportCellType = 'image' | 'video' | 'progressbar' | 'sparkline' | 'chart' | 'custom' | 'textWithIcon';
export type ExportVTableToExcelOptions = {
    ignoreIcon?: boolean;
    exportAllData?: boolean;
    formatExportOutput?: (cellInfo: CellInfo) => string | undefined;
    formatExcelJSCell?: (cellInfo: CellInfo, cellInExcelJS: ExcelJS.Cell) => ExcelJS.Cell;
    excelJSWorksheetCallback?: (worksheet: ExcelJS.Worksheet) => void;
    skipImageExportCellType?: SkipImageExportCellType[];
    downloadFile?: boolean;
    fileName?: string;
};
export declare function exportVTableToExcel(tableInstance: IVTable, options?: ExportVTableToExcelOptions, optimization?: boolean): Promise<ExcelJS.Buffer>;
export declare function exportMultipleVTablesToExcel(tables: Array<{
    table: IVTable;
    name?: string;
}>, options?: ExportVTableToExcelOptions, optimization?: boolean): Promise<ExcelJS.Buffer>;
