import { ApiBase } from '../Implementation/ApiBase';
import { CellDataChangedInfo } from '../../AdaptableState/Common/CellDataChangedInfo';
import { Report, ReportData, ReportFormatType, ReportNameType, SystemReportName } from '../../AdaptableState/ExportState';
import { CsvCell, ExcelCell, ExcelDataType, IRowNode } from 'ag-grid-enterprise';
import { AdaptableColumn, AdaptableColumnDataType } from '../../AdaptableState/Common/AdaptableColumn';
import { BaseExportContext, DataFormatType, ExportDestinationType, ExportResultData, ProcessExportContext } from '../../AdaptableOptions/ExportOptions';
export declare class ExportInternalApi extends ApiBase {
    /**
     * Value Items for Report Name Selection
     */
    getAllAvailableReportNames(): string[];
    isDataChangeInReport(cellDataChangedInfo: CellDataChangedInfo, report: Report): boolean;
    setExportInProgress(reportName: ReportNameType, reportFormat: ReportFormatType, exportDestination: ExportDestinationType): void;
    setExportComplete(): void;
    isVisualDataExportInProgress(): boolean;
    getCellExportFormatType(column: AdaptableColumn, columnDataType: AdaptableColumnDataType): DataFormatType;
    createSystemReport(systemReportName: SystemReportName): Report;
    isSystemReport(reportName: ReportNameType): boolean;
    isSystemDestination(destination: ExportDestinationType): boolean;
    isSystemReportActive(reportName: SystemReportName): boolean;
    getReportColumnScopeShortDescription(report: Report): string[];
    getReportColumnScopeLongDescription(report: Report): string;
    getReportExpressionDescription(report: Report, cols: AdaptableColumn[]): string;
    convertReportDataToArray(reportData: ReportData): any[][];
    publishLiveLiveDataChangedEvent(reportDestination: 'ipushpull' | 'OpenFin', liveDataTrigger: 'Connected' | 'Disconnected' | 'SnapshotSent' | 'LiveDataStarted' | 'LiveDataStopped' | 'LiveDataUpdated', liveReport?: any): void;
    getCellExportValueFromRowNode(rowNode: IRowNode, columnId: string, isVisualReport?: boolean): any;
    getCellExportValueFromRawValue(rowNode: IRowNode, cellRawValue: any, columnId: string, isVisualReport?: boolean): any;
    getReportFileName(reportName: string, reportFormat: ReportFormatType, destination: ExportDestinationType): string;
    private getCustomExportDateFormat;
    private getCellExportValueFromRawValueByType;
    sendReportToDestination(reportResult: ExportResultData, report: Report, format: ReportFormatType, destination: ExportDestinationType): void;
    private sendReportToCustomDestination;
    buildBaseExportContext(reportName: ReportNameType, reportFormat: ReportFormatType, exportDestination?: ExportDestinationType): BaseExportContext;
    createCellCsv(cellContent: any): CsvCell;
    createCellExcel(cellContent: any, cellType: ExcelDataType): ExcelCell;
    createCellHeader(cellContent: any): ExcelCell;
    buildProcessExportContext(report: Report, format: ReportFormatType, destination: ExportDestinationType): ProcessExportContext;
    private buildExcelConverter;
    private buildCsvConverter;
    private executeGridExport;
    private buildCsvExportParams;
}
