/// <reference types="node" />
import { ReadStream } from 'fs';
import type { IRVUserContext } from '../IRVUserContext';
import { IExportOptions, ExportFormat } from './ExportOptions';
export interface IDashboardExporter {
    exportPowerPoint(dashboardId: string, filePath?: string | null, options?: IExportOptions | null, userContext?: IRVUserContext | null): Promise<ReadStream | void>;
    exportExcel(dashboardId: string, filePath?: string | null, options?: IExportOptions | null, userContext?: IRVUserContext | null): Promise<ReadStream | void>;
    exportPdf(dashboardId: string, filePath?: string | null, options?: IExportOptions | null, userContext?: IRVUserContext | null): Promise<ReadStream | void>;
    exportImage(dashboardId: string, filePath?: string | null, options?: IExportOptions | null, userContext?: IRVUserContext | null): Promise<ReadStream | void>;
    export(format: ExportFormat, dashboardId: string, filePath?: string | null, options?: IExportOptions | null, userContext?: IRVUserContext | null): Promise<ReadStream | void>;
}
export declare class DashboardExporter implements IDashboardExporter {
    server: any;
    constructor(revealServer: any);
    exportPowerPoint(dashboardId: string, filePath?: string | null, options?: IExportOptions | null, userContext?: IRVUserContext | null): Promise<ReadStream | void>;
    exportExcel(dashboardId: string, filePath?: string | null, options?: IExportOptions | null, userContext?: IRVUserContext | null): Promise<ReadStream | void>;
    exportPdf(dashboardId: string, filePath?: string | null, options?: IExportOptions | null, userContext?: IRVUserContext | null): Promise<ReadStream | void>;
    exportImage(dashboardId: string, filePath?: string | null, options?: IExportOptions | null, userContext?: IRVUserContext | null): Promise<ReadStream | void>;
    export(format: ExportFormat, dashboardId: string, filePath?: string | null, options?: IExportOptions | null, userContext?: IRVUserContext | null): Promise<ReadStream | void>;
    callExportService(format: ExportFormat, dashboardId: string, options?: IExportOptions | null, filePath?: string | null, userContext?: IRVUserContext | null): Promise<any>;
}
