import { EventEmitter } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { BehaviorSubject, Observable } from 'rxjs';
import { ChartType } from './graphical-report/chart/chart-type';
import { Report } from '../../common-utils/report';
import { ReportControlService } from '../report-control.service';
import { BreadCrumbsService } from '../../bread-crumbs/bread-crumbs.service';
import { CommonService } from '../../common.service';
import * as i0 from "@angular/core";
export declare class ReportBuilderMasterService {
    private _httpClient;
    private _reportControlService;
    private _breadCrumbService;
    private _commonService;
    _chartType: BehaviorSubject<ChartType | null>;
    report: Report;
    pageClickedEvent: EventEmitter<any>;
    /**
     * Constructor
     */
    constructor(_httpClient: HttpClient, _reportControlService: ReportControlService, _breadCrumbService: BreadCrumbsService, _commonService: CommonService);
    /**
     * Get report by the id provided in route
     */
    getReport(reportId: number): Observable<Report>;
    /***
     * Set the chart Type On click  list of chart @ date 15-09-2021
     */
    setChartType(newValue: ChartType): void;
    resetChartType(): void;
    /**
     * @param reportData
     * Call save report API
     */
    saveReport(report: Report): Promise<Report>;
    /**
     * Set editable bread crumb for report
     */
    setBreadCrumb(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ReportBuilderMasterService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<ReportBuilderMasterService>;
}
