import { Export, Schedule } from './export-schedules.interface';
import { AlertService } from '@c8y/ngx-components';
import { InventoryService, IdReference, IFetchResponse, IIdentified, FetchClient } from '@c8y/client';
import { TranslateService } from '@ngx-translate/core';
import * as i0 from "@angular/core";
export declare class ReportsService {
    private alertService;
    private inventoryService;
    private client;
    private translateService;
    microserviceUrl: string;
    headers: any;
    isReportAgentSubscribed: boolean;
    REPORT_AGENT_NOT_SUBSCRIBED_EXPECTED_ERROR_LOWER_CASE: string;
    constructor(alertService: AlertService, inventoryService: InventoryService, client: FetchClient, translateService: TranslateService);
    getExport(exportId: IdReference): Promise<Export>;
    getScheduleList(exportId: IdReference): Promise<any>;
    extractScheduleListFromExport(exp: Export): any;
    addSchedule(schedule: Schedule, exportId: IdReference): Promise<boolean>;
    updateSchedule(oldSchedule: Schedule, schedule: Schedule, exportId: IdReference): Promise<boolean>;
    updateSchedules(exportId: IdReference, schedulesToRemove?: Schedule[], schedulesToAdd?: Schedule[]): Promise<boolean>;
    reschedule(exportId: IdReference): Promise<boolean>;
    deleteSchedule(schedule: Schedule, exportId: IdReference): Promise<boolean>;
    /**
     * Removes report configuration.
     *
     * Note: fallback strategy is based on error code returned by backend
     * in case of missing subscription for report-agent microservice.
     * @param config entity of report configuration
     * @returns Response wrapped in [[IFetchResponse]]
     */
    removeConfiguration(config: IIdentified): Promise<IFetchResponse>;
    normalConfigurationRemoval(config: IIdentified): Promise<IFetchResponse>;
    fallbackConfigurationRemoval(config: IIdentified): Promise<IFetchResponse>;
    static ɵfac: i0.ɵɵFactoryDeclaration<ReportsService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<ReportsService>;
}
//# sourceMappingURL=reports.service.d.ts.map