import { HttpClient, HttpHeaders, HttpResponse, HttpEvent, HttpParameterCodec, HttpContext } from '@angular/common/http';
import { Observable } from 'rxjs';
import { CalculationHistoryElementStudio } from '../model/calculationHistoryElement';
import { ExperimentListStudio } from '../model/experimentList';
import { ExperimentNeighborsStudio } from '../model/experimentNeighbors';
import { ExperimentStudio } from '../model/experiment';
import { FilesystemPathStudio } from '../model/filesystemPath';
import { UniversalDataStudio } from '../model/universalData';
import { Configuration } from '../configuration';
import { ExperimentsServiceInterface, CreateExperimentRequestParams, DeleteExperimentRequestParams, DuplicateExperimentRequestParams, ExportJsonRequestParams, ExportXlsxRequestParams, GlobalSearchRequestParams, ImportJsonRequestParams, ImportJsonTracedataRequestParams, ImportJsonUrlRequestParams, ImportXlsxRequestParams, ReadExperimentRequestParams, ReadExperimentCalculationHistoryRequestParams, ReadExperimentNeighborsRequestParams, ReadExperimentPathRequestParams, ReadFolderRequestParams, RunExperimentCalculationRequestParams, RunExperimentRecalculateTracksRequestParams, RunExperimentRefineRequestParams, RunExperimentValidationRequestParams, StopExperimentCalculationRequestParams, UpdateExperimentRequestParams, UpdateExperimentIndicatorsRequestParams, UpdateExperimentSettingsRequestParams } from './experimentsServiceInterface';
import * as i0 from "@angular/core";
export declare class ExperimentsService implements ExperimentsServiceInterface {
    protected httpClient: HttpClient;
    protected basePath: string;
    defaultHeaders: HttpHeaders;
    configuration: Configuration;
    encoder: HttpParameterCodec;
    constructor(httpClient: HttpClient, basePath: string | string[], configuration: Configuration);
    private addToHttpParams;
    private addToHttpParamsRecursive;
    /**
     * Create experiment
     * Create new experiment.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    createExperiment(requestParameters: CreateExperimentRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<string>;
    createExperiment(requestParameters: CreateExperimentRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<string>>;
    createExperiment(requestParameters: CreateExperimentRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<string>>;
    /**
     * Experiment removal
     * Experiment removal by key.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    deleteExperiment(requestParameters: DeleteExperimentRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<any>;
    deleteExperiment(requestParameters: DeleteExperimentRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<any>>;
    deleteExperiment(requestParameters: DeleteExperimentRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<any>>;
    /**
     * Experiment duplicate
     * Experiment duplicate.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    duplicateExperiment(requestParameters: DuplicateExperimentRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<string>;
    duplicateExperiment(requestParameters: DuplicateExperimentRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<string>>;
    duplicateExperiment(requestParameters: DuplicateExperimentRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<string>>;
    /**
     * Export (JSON)
     * Export data to VRt.Universal JSON file.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    exportJson(requestParameters: ExportJsonRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<UniversalDataStudio>;
    exportJson(requestParameters: ExportJsonRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<UniversalDataStudio>>;
    exportJson(requestParameters: ExportJsonRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<UniversalDataStudio>>;
    /**
     * Export (XLSX)
     * Export (XLSX).
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    exportXlsx(requestParameters: ExportXlsxRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/octet-stream' | 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<string>;
    exportXlsx(requestParameters: ExportXlsxRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/octet-stream' | 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<string>>;
    exportXlsx(requestParameters: ExportXlsxRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/octet-stream' | 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<string>>;
    /**
     * Experiment search
     * Experiment global search.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    globalSearch(requestParameters: GlobalSearchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentListStudio>;
    globalSearch(requestParameters: GlobalSearchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentListStudio>>;
    globalSearch(requestParameters: GlobalSearchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentListStudio>>;
    /**
     * Import (JSON)
     * Importing new data from VRt.Universal JSON file. If the entity is already present (determined by its key), it is updated. If not, a new one is created.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    importJson(requestParameters: ImportJsonRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentStudio>;
    importJson(requestParameters: ImportJsonRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentStudio>>;
    importJson(requestParameters: ImportJsonRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentStudio>>;
    /**
     * Import by tracedata
     * Importing new data from a VRt.Universal JSON file by &#x60;tracedata.process_code&#x60;. If the entity is already present in the experiment (determined by its key), it is updated, if not, a new one is created.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    importJsonTracedata(requestParameters: ImportJsonTracedataRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentStudio>;
    importJsonTracedata(requestParameters: ImportJsonTracedataRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentStudio>>;
    importJsonTracedata(requestParameters: ImportJsonTracedataRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentStudio>>;
    /**
     * Import by URL (JSON)
     * Importing new data from a VRt.Universal JSON file by url. If the entity is already present in the experiment (determined by its key), it is updated, if not, a new one is created.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    importJsonUrl(requestParameters: ImportJsonUrlRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentStudio>;
    importJsonUrl(requestParameters: ImportJsonUrlRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentStudio>>;
    importJsonUrl(requestParameters: ImportJsonUrlRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentStudio>>;
    /**
     * Import (XLSX)
     * Importing new data from an XLSX file. If an entity is already present (determined by its key), it is updated. If not, a new one is created. The data time zone is taken from the XLSX file.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    importXlsx(requestParameters: ImportXlsxRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentStudio>;
    importXlsx(requestParameters: ImportXlsxRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentStudio>>;
    importXlsx(requestParameters: ImportXlsxRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentStudio>>;
    /**
     * Reading experiment
     * Getting experiment information by key.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    readExperiment(requestParameters: ReadExperimentRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentStudio>;
    readExperiment(requestParameters: ReadExperimentRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentStudio>>;
    readExperiment(requestParameters: ReadExperimentRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentStudio>>;
    /**
     * Calculation history
     * Read calculation history.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    readExperimentCalculationHistory(requestParameters: ReadExperimentCalculationHistoryRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<Array<CalculationHistoryElementStudio>>;
    readExperimentCalculationHistory(requestParameters: ReadExperimentCalculationHistoryRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<Array<CalculationHistoryElementStudio>>>;
    readExperimentCalculationHistory(requestParameters: ReadExperimentCalculationHistoryRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<Array<CalculationHistoryElementStudio>>>;
    /**
     * Experiment neighbors
     * Experiment neighbors.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    readExperimentNeighbors(requestParameters: ReadExperimentNeighborsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentNeighborsStudio>;
    readExperimentNeighbors(requestParameters: ReadExperimentNeighborsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentNeighborsStudio>>;
    readExperimentNeighbors(requestParameters: ReadExperimentNeighborsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentNeighborsStudio>>;
    /**
     * Experiment path
     * Experiment path.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    readExperimentPath(requestParameters: ReadExperimentPathRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<FilesystemPathStudio>;
    readExperimentPath(requestParameters: ReadExperimentPathRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<FilesystemPathStudio>>;
    readExperimentPath(requestParameters: ReadExperimentPathRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<FilesystemPathStudio>>;
    /**
     * Experiment list
     * Getting a experiments list.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    readFolder(requestParameters?: ReadFolderRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentListStudio>;
    readFolder(requestParameters?: ReadFolderRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentListStudio>>;
    readFolder(requestParameters?: ReadFolderRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentListStudio>>;
    /**
     * Run calculation
     * Experiment calculation run.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    runExperimentCalculation(requestParameters: RunExperimentCalculationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentStudio>;
    runExperimentCalculation(requestParameters: RunExperimentCalculationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentStudio>>;
    runExperimentCalculation(requestParameters: RunExperimentCalculationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentStudio>>;
    /**
     * Run recalculate tracks
     * Starting recalculation of &#x60;ROAD&#x60; experiment tracks.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    runExperimentRecalculateTracks(requestParameters: RunExperimentRecalculateTracksRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentStudio>;
    runExperimentRecalculateTracks(requestParameters: RunExperimentRecalculateTracksRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentStudio>>;
    runExperimentRecalculateTracks(requestParameters: RunExperimentRecalculateTracksRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentStudio>>;
    /**
     * Run refine
     * Experiment refine run.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    runExperimentRefine(requestParameters: RunExperimentRefineRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentStudio>;
    runExperimentRefine(requestParameters: RunExperimentRefineRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentStudio>>;
    runExperimentRefine(requestParameters: RunExperimentRefineRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentStudio>>;
    /**
     * Run validation
     * Experiment validation run.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    runExperimentValidation(requestParameters: RunExperimentValidationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentStudio>;
    runExperimentValidation(requestParameters: RunExperimentValidationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentStudio>>;
    runExperimentValidation(requestParameters: RunExperimentValidationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentStudio>>;
    /**
     * Calculation stop
     * Calculation stop.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    stopExperimentCalculation(requestParameters: StopExperimentCalculationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<any>;
    stopExperimentCalculation(requestParameters: StopExperimentCalculationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<any>>;
    stopExperimentCalculation(requestParameters: StopExperimentCalculationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<any>>;
    /**
     * Experiment update
     * Rename \\ move experiment.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    updateExperiment(requestParameters: UpdateExperimentRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentStudio>;
    updateExperiment(requestParameters: UpdateExperimentRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentStudio>>;
    updateExperiment(requestParameters: UpdateExperimentRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentStudio>>;
    /**
     * Indicators update
     * Updating the experiment indicators.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    updateExperimentIndicators(requestParameters: UpdateExperimentIndicatorsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentStudio>;
    updateExperimentIndicators(requestParameters: UpdateExperimentIndicatorsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentStudio>>;
    updateExperimentIndicators(requestParameters: UpdateExperimentIndicatorsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentStudio>>;
    /**
     * Settings update
     * Experiment settings update.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    updateExperimentSettings(requestParameters: UpdateExperimentSettingsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ExperimentStudio>;
    updateExperimentSettings(requestParameters: UpdateExperimentSettingsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ExperimentStudio>>;
    updateExperimentSettings(requestParameters: UpdateExperimentSettingsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'application/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ExperimentStudio>>;
    static ɵfac: i0.ɵɵFactoryDeclaration<ExperimentsService, [null, { optional: true; }, { optional: true; }]>;
    static ɵprov: i0.ɵɵInjectableDeclaration<ExperimentsService>;
}
