import { IHttpService } from '../../core'; import { IReportDefinition } from '../ReportDefinitionService/ReportDefinition'; interface IReportServiceOpts { httpService: IHttpService; } interface IReportDownloadOptions { json: boolean; skipReportHeader: boolean; skipColumnHeader: boolean; skipReportSummary: boolean; useRawEnumValues: boolean; includeZeroImpressions: boolean; } interface IReport { 'report-name': any[]; 'data-range': any[]; table: any[]; } interface IReportService { reportDownload(reportDefinition: IReportDefinition, options?: Partial): Promise; setVerbose(verbose: boolean): void; } interface IClientReportService { get(reportDefinition: Partial): ReturnType; setOptions(options: Partial): void; getOptions(): Partial | undefined; } declare class ReportService implements IReportService { static readonly URL: string; private verbose; private httpService; constructor(options: IReportServiceOpts); setVerbose(verbose: boolean): void; reportDownload(reportDefinition: IReportDefinition, options?: Partial): Promise; private buildObjectToXML; private xmlParse; } export { ReportService, IReportServiceOpts, IReportDownloadOptions, IReport, IReportService, IClientReportService };