import { IDownloadReport, IGetReport, IGetReports, IRenderReport, IRenderReportResponse, IReportRecord, IScheduleReport, ISendReport } from './interfaces'; import { BaseApiClient } from '../BaseApiClient'; export declare class ReportsApi extends BaseApiClient { constructor(appName: string); /** * Get all active tenant reports from reports service by active vendor. * Optional: pass filters and sort options to reports. * * @returns list of reports objects */ getReports: (body: IGetReports) => Promise; /** * Get report record by id. * * @returns list of report object * @throws exception if report not found. */ getReport: (body: IGetReport) => Promise; /** * Render report by id. * Optional: pass data filters if exists to render report by specific data. * * @returns html content of the rendered reports * @throws exception if report not found or the data api unreached. */ renderReport: ({ dataFilters, ...body }: IRenderReport) => Promise; /** * Schedule report by providing cron expression and data filters. * * @returns the updated report object * @throws exception if report not found or the data api unreached. */ scheduleReport: ({ templateId, dataFilters, ...body }: IScheduleReport) => Promise; /** * Download report as file in specific format. * This function will add a href element with url to trigger file download. * Optional: pass data filters if exists to generate report by specific data. * * @throws exception if report not found or the data api unreached. */ downloadReport: ({ dataFilters, ...body }: IDownloadReport) => Promise; /** * Send report to specific email address. * Optional: pass data filters if exists to send report by specific data. * * @throws exception if report not found or the data api unreached. */ sendReport: (body: ISendReport) => Promise; } declare const _default: ReportsApi; export default _default;