{"version":3,"file":"veeroute-lss-studio-angular.mjs","sources":["../../variables.ts","../../encoder.ts","../../configuration.ts","../../api.base.service.ts","../../api/backupsService.ts","../../api/customFieldsService.ts","../../api/customIconsService.ts","../../api/experimentsService.ts","../../api/explorerService.ts","../../api/externalRoutingService.ts","../../api/factsService.ts","../../api/hardlinksService.ts","../../api/locationsService.ts","../../api/ordersService.ts","../../api/performersService.ts","../../api/systemService.ts","../../api/transportsService.ts","../../api/tripsService.ts","../../api/userService.ts","../../api/api.ts","../../model/actualizeSettings.ts","../../model/attribute.ts","../../model/basicProcess.ts","../../model/basicState.ts","../../model/boxCompatibilities.ts","../../model/breakRules.ts","../../model/break.ts","../../model/calculationSettings.ts","../../model/calculationStatus.ts","../../model/capacityCost.ts","../../model/capacityLimit.ts","../../model/capacityMultiplier.ts","../../model/capacityStatisticsLoad.ts","../../model/capacityStatisticsRatio.ts","../../model/capacityStatisticsSum.ts","../../model/capacity.ts","../../model/cargoActionType.ts","../../model/cargoInvoiceHonestSign.ts","../../model/cargoInvoiceReceipt.ts","../../model/cargoInvoiceTax.ts","../../model/cargoRotationType.ts","../../model/checkResult.ts","../../model/compatibilityPenalty.ts","../../model/customfieldEntityType.ts","../../model/demandExtraDuration.ts","../../model/demandType.ts","../../model/entityErrorType.ts","../../model/entityType.ts","../../model/entityWarningType.ts","../../model/experimentNeighbors.ts","../../model/extensionSettings.ts","../../model/factStatus.ts","../../model/factType.ts","../../model/fileNamePath.ts","../../model/fileSpecification.ts","../../model/filesystemColumnType.ts","../../model/folderCounters.ts","../../model/folderType.ts","../../model/geopoint.ts","../../model/hardlinkElementType.ts","../../model/importSample.ts","../../model/importSource.ts","../../model/linkedEssence.ts","../../model/locationCompatibilities.ts","../../model/locationTransportsLimit.ts","../../model/loreDemandCancelled.ts","../../model/loreDemandDone.ts","../../model/loreDemandStart.ts","../../model/loreJobDone.ts","../../model/loreOrderDone.ts","../../model/orderCompatibilities.ts","../../model/performerTariffConstraint.ts","../../model/removedItems.ts","../../model/replanStrategy.ts","../../model/rest.ts","../../model/schemaError.ts","../../model/service.ts","../../model/settingsKeyList.ts","../../model/tableCustomfieldsColumnType.ts","../../model/tableCustomfields.ts","../../model/tableDataStats.ts","../../model/tableExperimentColumnType.ts","../../model/tableFactColumnType.ts","../../model/tableFactFields.ts","../../model/tableFilterBoolList.ts","../../model/tableFilterDatetimeRange.ts","../../model/tableFilterDurationRange.ts","../../model/tableFilterEnumList.ts","../../model/tableFilterFloatRange.ts","../../model/tableFilterIntRange.ts","../../model/tableFilterStringList.ts","../../model/tableFilterStringSearch.ts","../../model/tableFilterType.ts","../../model/tableHardlinkColumnType.ts","../../model/tableHardlinkFields.ts","../../model/tableListCountersDetail.ts","../../model/tableLocationColumnType.ts","../../model/tableLocationFields.ts","../../model/tableOrderColumnType.ts","../../model/tableOrderFields.ts","../../model/tablePerformerColumnType.ts","../../model/tablePerformerFields.ts","../../model/tableRoundtripColumnType.ts","../../model/tableRoundtripFields.ts","../../model/tableTransportColumnType.ts","../../model/tableTransportFields.ts","../../model/tableTripColumnType.ts","../../model/tableTripFields.ts","../../model/tableTripStopColumnType.ts","../../model/tableTripStopFields.ts","../../model/timeWindow.ts","../../model/timeWindowViolationDetail.ts","../../model/trackType.ts","../../model/trackpoint.ts","../../model/translations.ts","../../model/transportTariffConstraint.ts","../../model/transportType.ts","../../model/tripDemandPrecedence.ts","../../model/tripStartTimeStrategy.ts","../../model/tripStateFlag.ts","../../model/tripStatus.ts","../../model/unplannedItems.ts","../../model/versionResult.ts","../../model/webPerformerGeopoint.ts","../../model/webTransportGeopoint.ts","../../api.module.ts","../../provide-api.ts","../../veeroute-lss-studio-angular.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken<string>('basePath');\nexport const COLLECTION_FORMATS = {\n    'csv': ',',\n    'tsv': '   ',\n    'ssv': ' ',\n    'pipes': '|'\n}\n","import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n    encodeKey(k: string): string {\n        return encodeURIComponent(k);\n    }\n    encodeValue(v: string): string {\n        return encodeURIComponent(v);\n    }\n    decodeKey(k: string): string {\n        return decodeURIComponent(k);\n    }\n    decodeValue(v: string): string {\n        return decodeURIComponent(v);\n    }\n}\n","import { HttpHeaders, HttpParams, HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n    /**\n     *  @deprecated Since 5.0. Use credentials instead\n     */\n    apiKeys?: {[ key: string ]: string};\n    username?: string;\n    password?: string;\n    /**\n     *  @deprecated Since 5.0. Use credentials instead\n     */\n    accessToken?: string | (() => string);\n    basePath?: string;\n    withCredentials?: boolean;\n    /**\n     * Takes care of encoding query- and form-parameters.\n     */\n    encoder?: HttpParameterCodec;\n    /**\n     * Override the default method for encoding path parameters in various\n     * <a href=\"https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#style-values\">styles</a>.\n     * <p>\n     * See {@link README.md} for more details\n     * </p>\n     */\n    encodeParam?: (param: Param) => string;\n    /**\n     * The keys are the names in the securitySchemes section of the OpenAPI\n     * document. They should map to the value used for authentication\n     * minus any standard prefixes such as 'Basic' or 'Bearer'.\n     */\n    credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n    /**\n     *  @deprecated Since 5.0. Use credentials instead\n     */\n    apiKeys?: {[ key: string ]: string};\n    username?: string;\n    password?: string;\n    /**\n     *  @deprecated Since 5.0. Use credentials instead\n     */\n    accessToken?: string | (() => string);\n    basePath?: string;\n    withCredentials?: boolean;\n    /**\n     * Takes care of encoding query- and form-parameters.\n     */\n    encoder?: HttpParameterCodec;\n    /**\n     * Encoding of various path parameter\n     * <a href=\"https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#style-values\">styles</a>.\n     * <p>\n     * See {@link README.md} for more details\n     * </p>\n     */\n    encodeParam: (param: Param) => string;\n    /**\n     * The keys are the names in the securitySchemes section of the OpenAPI\n     * document. They should map to the value used for authentication\n     * minus any standard prefixes such as 'Basic' or 'Bearer'.\n     */\n    credentials: {[ key: string ]: string | (() => string | undefined)};\n\nconstructor({ accessToken, apiKeys, basePath, credentials, encodeParam, encoder, password, username, withCredentials }: ConfigurationParameters = {}) {\n        if (apiKeys) {\n            this.apiKeys = apiKeys;\n        }\n        if (username !== undefined) {\n            this.username = username;\n        }\n        if (password !== undefined) {\n            this.password = password;\n        }\n        if (accessToken !== undefined) {\n            this.accessToken = accessToken;\n        }\n        if (basePath !== undefined) {\n            this.basePath = basePath;\n        }\n        if (withCredentials !== undefined) {\n            this.withCredentials = withCredentials;\n        }\n        if (encoder) {\n            this.encoder = encoder;\n        }\n        this.encodeParam = encodeParam ?? (param => this.defaultEncodeParam(param));\n        this.credentials = credentials ?? {};\n\n        // init default ApiKeyAuth credential\n        if (!this.credentials['ApiKeyAuth']) {\n            this.credentials['ApiKeyAuth'] = () => {\n                return typeof this.accessToken === 'function'\n                    ? this.accessToken()\n                    : this.accessToken;\n            };\n        }\n    }\n\n    /**\n     * Select the correct content-type to use for a request.\n     * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n     * If no content type is found return the first found type if the contentTypes is not empty\n     * @param contentTypes - the array of content types that are available for selection\n     * @returns the selected content-type or <code>undefined</code> if no selection could be made.\n     */\n    public selectHeaderContentType (contentTypes: string[]): string | undefined {\n        if (contentTypes.length === 0) {\n            return undefined;\n        }\n\n        const type = contentTypes.find((x: string) => this.isJsonMime(x));\n        if (type === undefined) {\n            return contentTypes[0];\n        }\n        return type;\n    }\n\n    /**\n     * Select the correct accept content-type to use for a request.\n     * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n     * If no content type is found return the first found type if the contentTypes is not empty\n     * @param accepts - the array of content types that are available for selection.\n     * @returns the selected content-type or <code>undefined</code> if no selection could be made.\n     */\n    public selectHeaderAccept(accepts: string[]): string | undefined {\n        if (accepts.length === 0) {\n            return undefined;\n        }\n\n        const type = accepts.find((x: string) => this.isJsonMime(x));\n        if (type === undefined) {\n            return accepts[0];\n        }\n        return type;\n    }\n\n    /**\n     * Check if the given MIME is a JSON MIME.\n     * JSON MIME examples:\n     *   application/json\n     *   application/json; charset=UTF8\n     *   APPLICATION/JSON\n     *   application/vnd.company+json\n     * @param mime - MIME (Multipurpose Internet Mail Extensions)\n     * @return True if the given MIME is JSON, false otherwise.\n     */\n    public isJsonMime(mime: string): boolean {\n        const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n        return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n    }\n\n    public lookupCredential(key: string): string | undefined {\n        const value = this.credentials[key];\n        return typeof value === 'function'\n            ? value()\n            : value;\n    }\n\n    public addCredentialToHeaders(credentialKey: string, headerName: string, headers: HttpHeaders, prefix?: string): HttpHeaders {\n        const value = this.lookupCredential(credentialKey);\n        return value\n            ? headers.set(headerName, (prefix ?? '') + value)\n            : headers;\n    }\n\n    public addCredentialToQuery(credentialKey: string, paramName: string, query: HttpParams): HttpParams {\n        const value = this.lookupCredential(credentialKey);\n        return value\n            ? query.set(paramName, value)\n            : query;\n    }\n\n    private defaultEncodeParam(param: Param): string {\n        // This implementation exists as fallback for missing configuration\n        // and for backwards compatibility to older typescript-angular generator versions.\n        // It only works for the 'simple' parameter style.\n        // Date-handling only works for the 'date-time' format.\n        // All other styles and Date-formats are probably handled incorrectly.\n        //\n        // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n        const value = param.dataFormat === 'date-time' && param.value instanceof Date\n            ? (param.value as Date).toISOString()\n            : param.value;\n\n        return encodeURIComponent(String(value));\n    }\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\nimport { HttpHeaders, HttpParams, HttpParameterCodec } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from './encoder';\nimport { Configuration } from './configuration';\n\nexport class BaseService {\n    protected basePath = 'https://api.edge7.veeroute.cloud';\n    public defaultHeaders = new HttpHeaders();\n    public configuration: Configuration;\n    public encoder: HttpParameterCodec;\n\n    constructor(basePath?: string|string[], configuration?: Configuration) {\n        this.configuration = configuration || new Configuration();\n        if (typeof this.configuration.basePath !== 'string') {\n            const firstBasePath = Array.isArray(basePath) ? basePath[0] : undefined;\n            if (firstBasePath != undefined) {\n                basePath = firstBasePath;\n            }\n\n            if (typeof basePath !== 'string') {\n                basePath = this.basePath;\n            }\n            this.configuration.basePath = basePath;\n        }\n        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n    }\n\n    protected canConsumeForm(consumes: string[]): boolean {\n        return consumes.indexOf('multipart/form-data') !== -1;\n    }\n\n    protected addToHttpParams(httpParams: HttpParams, value: any, key?: string, isDeep: boolean = false): HttpParams {\n        // If the value is an object (but not a Date), recursively add its keys.\n        if (typeof value === 'object' && !(value instanceof Date)) {\n            return this.addToHttpParamsRecursive(httpParams, value, isDeep ? key : undefined, isDeep);\n        }\n        return this.addToHttpParamsRecursive(httpParams, value, key);\n    }\n\n    protected addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string, isDeep: boolean = false): HttpParams {\n        if (value === null || value === undefined) {\n            return httpParams;\n        }\n        if (typeof value === 'object') {\n            // If JSON format is preferred, key must be provided.\n            if (key != null) {\n                return isDeep\n                    ? Object.keys(value as Record<string, any>).reduce(\n                        (hp, k) => hp.append(`${key}[${k}]`, value[k]),\n                        httpParams,\n                    )\n                    : httpParams.append(key, JSON.stringify(value));\n            }\n            // Otherwise, if it's an array, add each element.\n            if (Array.isArray(value)) {\n                value.forEach(elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n            } else if (value instanceof Date) {\n                if (key != null) {\n                    httpParams = httpParams.append(key, value.toISOString());\n                } else {\n                    throw Error(\"key may not be null if value is Date\");\n                }\n            } else {\n                Object.keys(value).forEach(k => {\n                    const paramKey = key ? `${key}.${k}` : k;\n                    httpParams = this.addToHttpParamsRecursive(httpParams, value[k], paramKey);\n                });\n            }\n            return httpParams;\n        } else if (key != null) {\n            return httpParams.append(key, value);\n        }\n        throw Error(\"key may not be null if value is not object or array\");\n    }\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { General400Studio } from '../model/general400';\n// @ts-ignore\nimport { General402Studio } from '../model/general402';\n// @ts-ignore\nimport { General403Studio } from '../model/general403';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    BackupsServiceInterface,\n    CreateBackupRequestParams,\n    RestoreBackupRequestParams\n} from './backupsServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class BackupsService extends BaseService implements BackupsServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Folder export\n     * Export folder with experiments. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createBackup(requestParameters: CreateBackupRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/octet-stream' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<string>;\n    public createBackup(requestParameters: CreateBackupRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/octet-stream' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<string>>;\n    public createBackup(requestParameters: CreateBackupRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/octet-stream' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<string>>;\n    public createBackup(requestParameters: CreateBackupRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/octet-stream' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const targetFolderKey = requestParameters?.targetFolderKey;\n        if (targetFolderKey === null || targetFolderKey === undefined) {\n            throw new Error('Required parameter targetFolderKey was null or undefined when calling createBackup.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/octet-stream',\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/backups/${this.configuration.encodeParam({name: \"targetFolderKey\", value: targetFolderKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<string>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Folder import\n     * Import folder with experiments. The folder should not be of type ROOT and should be empty. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public restoreBackup(requestParameters: RestoreBackupRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public restoreBackup(requestParameters: RestoreBackupRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public restoreBackup(requestParameters: RestoreBackupRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public restoreBackup(requestParameters: RestoreBackupRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const targetFolderKey = requestParameters?.targetFolderKey;\n        if (targetFolderKey === null || targetFolderKey === undefined) {\n            throw new Error('Required parameter targetFolderKey was null or undefined when calling restoreBackup.');\n        }\n        const body = requestParameters?.body;\n        if (body === null || body === undefined) {\n            throw new Error('Required parameter body was null or undefined when calling restoreBackup.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/octet-stream'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/backups/${this.configuration.encodeParam({name: \"targetFolderKey\", value: targetFolderKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: body,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { CustomfieldsSettingsStudio } from '../model/customfieldsSettings';\n// @ts-ignore\nimport { General400Studio } from '../model/general400';\n// @ts-ignore\nimport { General402Studio } from '../model/general402';\n// @ts-ignore\nimport { General403Studio } from '../model/general403';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n// @ts-ignore\nimport { SettingsKeyListStudio } from '../model/settingsKeyList';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    CustomFieldsServiceInterface,\n    CreateCustomfieldsSettingsRequestParams,\n    DeleteCustomfieldsSettingsRequestParams,\n    ReadCustomfieldsSettingsRequestParams,\n    SetCustomfieldsSettingsActiveKeyRequestParams,\n    UpdateCustomfieldsSettingsRequestParams\n} from './customFieldsServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class CustomFieldsService extends BaseService implements CustomFieldsServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Create fields settings\n     * Create custom fields settings. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createCustomfieldsSettings(requestParameters: CreateCustomfieldsSettingsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<CustomfieldsSettingsStudio>;\n    public createCustomfieldsSettings(requestParameters: CreateCustomfieldsSettingsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<CustomfieldsSettingsStudio>>;\n    public createCustomfieldsSettings(requestParameters: CreateCustomfieldsSettingsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<CustomfieldsSettingsStudio>>;\n    public createCustomfieldsSettings(requestParameters: CreateCustomfieldsSettingsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const settingsKey = requestParameters?.settingsKey;\n        if (settingsKey === null || settingsKey === undefined) {\n            throw new Error('Required parameter settingsKey was null or undefined when calling createCustomfieldsSettings.');\n        }\n        const customfieldsSettingsStudio = requestParameters?.customfieldsSettingsStudio;\n        if (customfieldsSettingsStudio === null || customfieldsSettingsStudio === undefined) {\n            throw new Error('Required parameter customfieldsSettingsStudio was null or undefined when calling createCustomfieldsSettings.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/customfields/${this.configuration.encodeParam({name: \"settingsKey\", value: settingsKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<CustomfieldsSettingsStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: customfieldsSettingsStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Delete fields settings\n     * Delete custom fields settings. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteCustomfieldsSettings(requestParameters: DeleteCustomfieldsSettingsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteCustomfieldsSettings(requestParameters: DeleteCustomfieldsSettingsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteCustomfieldsSettings(requestParameters: DeleteCustomfieldsSettingsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteCustomfieldsSettings(requestParameters: DeleteCustomfieldsSettingsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const settingsKey = requestParameters?.settingsKey;\n        if (settingsKey === null || settingsKey === undefined) {\n            throw new Error('Required parameter settingsKey was null or undefined when calling deleteCustomfieldsSettings.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/customfields/${this.configuration.encodeParam({name: \"settingsKey\", value: settingsKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Reading fields settings list\n     * Reading the list of custom field settings keys. \n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public listCustomfieldsSettings(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<SettingsKeyListStudio>;\n    public listCustomfieldsSettings(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<SettingsKeyListStudio>>;\n    public listCustomfieldsSettings(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<SettingsKeyListStudio>>;\n    public listCustomfieldsSettings(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/customfields`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<SettingsKeyListStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Reading fields settings\n     * Reading custom field settings. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readCustomfieldsSettings(requestParameters: ReadCustomfieldsSettingsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<CustomfieldsSettingsStudio>;\n    public readCustomfieldsSettings(requestParameters: ReadCustomfieldsSettingsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<CustomfieldsSettingsStudio>>;\n    public readCustomfieldsSettings(requestParameters: ReadCustomfieldsSettingsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<CustomfieldsSettingsStudio>>;\n    public readCustomfieldsSettings(requestParameters: ReadCustomfieldsSettingsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const settingsKey = requestParameters?.settingsKey;\n        if (settingsKey === null || settingsKey === undefined) {\n            throw new Error('Required parameter settingsKey was null or undefined when calling readCustomfieldsSettings.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/customfields/${this.configuration.encodeParam({name: \"settingsKey\", value: settingsKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<CustomfieldsSettingsStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Setting the active customfields key\n     * Setting the active customfields key. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public setCustomfieldsSettingsActiveKey(requestParameters: SetCustomfieldsSettingsActiveKeyRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<SettingsKeyListStudio>;\n    public setCustomfieldsSettingsActiveKey(requestParameters: SetCustomfieldsSettingsActiveKeyRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<SettingsKeyListStudio>>;\n    public setCustomfieldsSettingsActiveKey(requestParameters: SetCustomfieldsSettingsActiveKeyRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<SettingsKeyListStudio>>;\n    public setCustomfieldsSettingsActiveKey(requestParameters: SetCustomfieldsSettingsActiveKeyRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const body = requestParameters?.body;\n        if (body === null || body === undefined) {\n            throw new Error('Required parameter body was null or undefined when calling setCustomfieldsSettingsActiveKey.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/customfields`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<SettingsKeyListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: body,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Update fields settings\n     * Update custom fields settings. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updateCustomfieldsSettings(requestParameters: UpdateCustomfieldsSettingsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<CustomfieldsSettingsStudio>;\n    public updateCustomfieldsSettings(requestParameters: UpdateCustomfieldsSettingsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<CustomfieldsSettingsStudio>>;\n    public updateCustomfieldsSettings(requestParameters: UpdateCustomfieldsSettingsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<CustomfieldsSettingsStudio>>;\n    public updateCustomfieldsSettings(requestParameters: UpdateCustomfieldsSettingsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const settingsKey = requestParameters?.settingsKey;\n        if (settingsKey === null || settingsKey === undefined) {\n            throw new Error('Required parameter settingsKey was null or undefined when calling updateCustomfieldsSettings.');\n        }\n        const customfieldsSettingsStudio = requestParameters?.customfieldsSettingsStudio;\n        if (customfieldsSettingsStudio === null || customfieldsSettingsStudio === undefined) {\n            throw new Error('Required parameter customfieldsSettingsStudio was null or undefined when calling updateCustomfieldsSettings.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/customfields/${this.configuration.encodeParam({name: \"settingsKey\", value: settingsKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<CustomfieldsSettingsStudio>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: customfieldsSettingsStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { General400Studio } from '../model/general400';\n// @ts-ignore\nimport { General402Studio } from '../model/general402';\n// @ts-ignore\nimport { General403Studio } from '../model/general403';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n// @ts-ignore\nimport { SettingsKeyListStudio } from '../model/settingsKeyList';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    CustomIconsServiceInterface,\n    CreateCustomiconsSettingsRequestParams,\n    DeleteCustomiconsSettingsRequestParams,\n    ReadCustomiconsSettingsRequestParams,\n    SetCustomiconsSettingsActiveKeyRequestParams,\n    UpdateCustomiconsSettingsRequestParams\n} from './customIconsServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class CustomIconsService extends BaseService implements CustomIconsServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Update icons settings\n     * Create custom icons settings. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createCustomiconsSettings(requestParameters: CreateCustomiconsSettingsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public createCustomiconsSettings(requestParameters: CreateCustomiconsSettingsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public createCustomiconsSettings(requestParameters: CreateCustomiconsSettingsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public createCustomiconsSettings(requestParameters: CreateCustomiconsSettingsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const settingsKey = requestParameters?.settingsKey;\n        if (settingsKey === null || settingsKey === undefined) {\n            throw new Error('Required parameter settingsKey was null or undefined when calling createCustomiconsSettings.');\n        }\n        const body = requestParameters?.body;\n        if (body === null || body === undefined) {\n            throw new Error('Required parameter body was null or undefined when calling createCustomiconsSettings.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/octet-stream'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/customicons/${this.configuration.encodeParam({name: \"settingsKey\", value: settingsKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: body,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Delete icons settings\n     * Delete custom icons settings. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteCustomiconsSettings(requestParameters: DeleteCustomiconsSettingsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteCustomiconsSettings(requestParameters: DeleteCustomiconsSettingsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteCustomiconsSettings(requestParameters: DeleteCustomiconsSettingsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteCustomiconsSettings(requestParameters: DeleteCustomiconsSettingsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const settingsKey = requestParameters?.settingsKey;\n        if (settingsKey === null || settingsKey === undefined) {\n            throw new Error('Required parameter settingsKey was null or undefined when calling deleteCustomiconsSettings.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/customicons/${this.configuration.encodeParam({name: \"settingsKey\", value: settingsKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Reading icons settings list\n     * Reading the list of custom field settings keys. \n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public listCustomiconsSettings(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<SettingsKeyListStudio>;\n    public listCustomiconsSettings(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<SettingsKeyListStudio>>;\n    public listCustomiconsSettings(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<SettingsKeyListStudio>>;\n    public listCustomiconsSettings(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/customicons`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<SettingsKeyListStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Reading icons settings\n     * Reading custom field settings. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readCustomiconsSettings(requestParameters: ReadCustomiconsSettingsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/octet-stream' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<string>;\n    public readCustomiconsSettings(requestParameters: ReadCustomiconsSettingsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/octet-stream' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<string>>;\n    public readCustomiconsSettings(requestParameters: ReadCustomiconsSettingsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/octet-stream' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<string>>;\n    public readCustomiconsSettings(requestParameters: ReadCustomiconsSettingsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/octet-stream' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const settingsKey = requestParameters?.settingsKey;\n        if (settingsKey === null || settingsKey === undefined) {\n            throw new Error('Required parameter settingsKey was null or undefined when calling readCustomiconsSettings.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/octet-stream',\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/customicons/${this.configuration.encodeParam({name: \"settingsKey\", value: settingsKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<string>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Setting the active customicons key\n     * Setting the active customicons key. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public setCustomiconsSettingsActiveKey(requestParameters: SetCustomiconsSettingsActiveKeyRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<SettingsKeyListStudio>;\n    public setCustomiconsSettingsActiveKey(requestParameters: SetCustomiconsSettingsActiveKeyRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<SettingsKeyListStudio>>;\n    public setCustomiconsSettingsActiveKey(requestParameters: SetCustomiconsSettingsActiveKeyRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<SettingsKeyListStudio>>;\n    public setCustomiconsSettingsActiveKey(requestParameters: SetCustomiconsSettingsActiveKeyRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const body = requestParameters?.body;\n        if (body === null || body === undefined) {\n            throw new Error('Required parameter body was null or undefined when calling setCustomiconsSettingsActiveKey.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/customicons`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<SettingsKeyListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: body,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Update icons settings\n     * Update custom icons settings. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updateCustomiconsSettings(requestParameters: UpdateCustomiconsSettingsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public updateCustomiconsSettings(requestParameters: UpdateCustomiconsSettingsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public updateCustomiconsSettings(requestParameters: UpdateCustomiconsSettingsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public updateCustomiconsSettings(requestParameters: UpdateCustomiconsSettingsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const settingsKey = requestParameters?.settingsKey;\n        if (settingsKey === null || settingsKey === undefined) {\n            throw new Error('Required parameter settingsKey was null or undefined when calling updateCustomiconsSettings.');\n        }\n        const body = requestParameters?.body;\n        if (body === null || body === undefined) {\n            throw new Error('Required parameter body was null or undefined when calling updateCustomiconsSettings.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/octet-stream'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/customicons/${this.configuration.encodeParam({name: \"settingsKey\", value: settingsKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: body,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { BasicProcessStudio } from '../model/basicProcess';\n// @ts-ignore\nimport { CalculationHistoryElementStudio } from '../model/calculationHistoryElement';\n// @ts-ignore\nimport { ExperimentListStudio } from '../model/experimentList';\n// @ts-ignore\nimport { ExperimentNeighborsStudio } from '../model/experimentNeighbors';\n// @ts-ignore\nimport { ExperimentSettingsStudio } from '../model/experimentSettings';\n// @ts-ignore\nimport { ExperimentStudio } from '../model/experiment';\n// @ts-ignore\nimport { FileSpecificationStudio } from '../model/fileSpecification';\n// @ts-ignore\nimport { FilesystemPathStudio } from '../model/filesystemPath';\n// @ts-ignore\nimport { General400Studio } from '../model/general400';\n// @ts-ignore\nimport { General402Studio } from '../model/general402';\n// @ts-ignore\nimport { General403Studio } from '../model/general403';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n// @ts-ignore\nimport { ImportSampleStudio } from '../model/importSample';\n// @ts-ignore\nimport { ImportSourceStudio } from '../model/importSource';\n// @ts-ignore\nimport { TableExperimentColumnTypeStudio } from '../model/tableExperimentColumnType';\n// @ts-ignore\nimport { Universal400WithErrorsAndWarningsStudio } from '../model/universal400WithErrorsAndWarnings';\n// @ts-ignore\nimport { UniversalDataStudio } from '../model/universalData';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    ExperimentsServiceInterface,\n    CreateExperimentRequestParams,\n    DeleteExperimentRequestParams,\n    DuplicateExperimentRequestParams,\n    ExportJsonRequestParams,\n    ExportXlsxRequestParams,\n    GlobalSearchRequestParams,\n    ImportJsonRequestParams,\n    ImportJsonTracedataRequestParams,\n    ImportJsonUrlRequestParams,\n    ImportXlsxRequestParams,\n    ReadExperimentRequestParams,\n    ReadExperimentCalculationHistoryRequestParams,\n    ReadExperimentNeighborsRequestParams,\n    ReadExperimentPathRequestParams,\n    ReadFolderRequestParams,\n    RunExperimentCalculationRequestParams,\n    RunExperimentRecalculateStatsRequestParams,\n    RunExperimentRecalculateTracksRequestParams,\n    RunExperimentRefineRequestParams,\n    RunExperimentValidationRequestParams,\n    StopExperimentCalculationRequestParams,\n    UpdateExperimentRequestParams,\n    UpdateExperimentIndicatorsRequestParams,\n    UpdateExperimentSettingsRequestParams\n} from './experimentsServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class ExperimentsService extends BaseService implements ExperimentsServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Create experiment\n     * Create new experiment.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createExperiment(requestParameters: CreateExperimentRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<string>;\n    public createExperiment(requestParameters: CreateExperimentRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<string>>;\n    public createExperiment(requestParameters: CreateExperimentRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<string>>;\n    public createExperiment(requestParameters: CreateExperimentRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileSpecificationStudio = requestParameters?.fileSpecificationStudio;\n        if (fileSpecificationStudio === null || fileSpecificationStudio === undefined) {\n            throw new Error('Required parameter fileSpecificationStudio was null or undefined when calling createExperiment.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<string>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: fileSpecificationStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Experiment removal\n     * Experiment removal by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteExperiment(requestParameters: DeleteExperimentRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteExperiment(requestParameters: DeleteExperimentRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteExperiment(requestParameters: DeleteExperimentRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteExperiment(requestParameters: DeleteExperimentRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteExperiment.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Experiment duplicate\n     * Experiment duplicate.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public duplicateExperiment(requestParameters: DuplicateExperimentRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<string>;\n    public duplicateExperiment(requestParameters: DuplicateExperimentRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<string>>;\n    public duplicateExperiment(requestParameters: DuplicateExperimentRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<string>>;\n    public duplicateExperiment(requestParameters: DuplicateExperimentRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling duplicateExperiment.');\n        }\n        const fileSpecificationStudio = requestParameters?.fileSpecificationStudio;\n        if (fileSpecificationStudio === null || fileSpecificationStudio === undefined) {\n            throw new Error('Required parameter fileSpecificationStudio was null or undefined when calling duplicateExperiment.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/duplication`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<string>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: fileSpecificationStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Export (JSON)\n     * Export data to VRt.Universal JSON file. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public exportJson(requestParameters: ExportJsonRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<UniversalDataStudio>;\n    public exportJson(requestParameters: ExportJsonRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<UniversalDataStudio>>;\n    public exportJson(requestParameters: ExportJsonRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<UniversalDataStudio>>;\n    public exportJson(requestParameters: ExportJsonRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling exportJson.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/export/json`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<UniversalDataStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Export (XLSX)\n     * Export (XLSX).\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public exportXlsx(requestParameters: ExportXlsxRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/octet-stream' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<string>;\n    public exportXlsx(requestParameters: ExportXlsxRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/octet-stream' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<string>>;\n    public exportXlsx(requestParameters: ExportXlsxRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/octet-stream' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<string>>;\n    public exportXlsx(requestParameters: ExportXlsxRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/octet-stream' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling exportXlsx.');\n        }\n        const timezone = requestParameters?.timezone;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>timezone, 'timezone');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/octet-stream',\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/export/xlsx`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<string>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Experiment search\n     * Experiment global search.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public globalSearch(requestParameters: GlobalSearchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentListStudio>;\n    public globalSearch(requestParameters: GlobalSearchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentListStudio>>;\n    public globalSearch(requestParameters: GlobalSearchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentListStudio>>;\n    public globalSearch(requestParameters: GlobalSearchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const filter = requestParameters?.filter;\n        if (filter === null || filter === undefined) {\n            throw new Error('Required parameter filter was null or undefined when calling globalSearch.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const sortField = requestParameters?.sortField;\n        const sortDirection = requestParameters?.sortDirection;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>filter, 'filter');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortField, 'sort_field');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortDirection, 'sort_direction');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/search/global`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentListStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Import (JSON)\n     * 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. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public importJson(requestParameters: ImportJsonRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentStudio>;\n    public importJson(requestParameters: ImportJsonRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentStudio>>;\n    public importJson(requestParameters: ImportJsonRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentStudio>>;\n    public importJson(requestParameters: ImportJsonRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling importJson.');\n        }\n        const universalDataStudio = requestParameters?.universalDataStudio;\n        if (universalDataStudio === null || universalDataStudio === undefined) {\n            throw new Error('Required parameter universalDataStudio was null or undefined when calling importJson.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/import/json`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: universalDataStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Import by tracedata\n     * 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. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public importJsonTracedata(requestParameters: ImportJsonTracedataRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentStudio>;\n    public importJsonTracedata(requestParameters: ImportJsonTracedataRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentStudio>>;\n    public importJsonTracedata(requestParameters: ImportJsonTracedataRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentStudio>>;\n    public importJsonTracedata(requestParameters: ImportJsonTracedataRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling importJsonTracedata.');\n        }\n        const source = requestParameters?.source;\n        if (source === null || source === undefined) {\n            throw new Error('Required parameter source was null or undefined when calling importJsonTracedata.');\n        }\n        const processCode = requestParameters?.processCode;\n        if (processCode === null || processCode === undefined) {\n            throw new Error('Required parameter processCode was null or undefined when calling importJsonTracedata.');\n        }\n        const sample = requestParameters?.sample;\n        if (sample === null || sample === undefined) {\n            throw new Error('Required parameter sample was null or undefined when calling importJsonTracedata.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/import/json-tracedata/${this.configuration.encodeParam({name: \"source\", value: source, in: \"path\", style: \"simple\", explode: false, dataType: \"ImportSourceStudio\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"processCode\", value: processCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/${this.configuration.encodeParam({name: \"sample\", value: sample, in: \"path\", style: \"simple\", explode: false, dataType: \"ImportSampleStudio\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Import by URL (JSON)\n     * 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. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public importJsonUrl(requestParameters: ImportJsonUrlRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentStudio>;\n    public importJsonUrl(requestParameters: ImportJsonUrlRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentStudio>>;\n    public importJsonUrl(requestParameters: ImportJsonUrlRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentStudio>>;\n    public importJsonUrl(requestParameters: ImportJsonUrlRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling importJsonUrl.');\n        }\n        const url = requestParameters?.url;\n        if (url === null || url === undefined) {\n            throw new Error('Required parameter url was null or undefined when calling importJsonUrl.');\n        }\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>url, 'url');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/import/json-url`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Import (XLSX)\n     * 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. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public importXlsx(requestParameters: ImportXlsxRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentStudio>;\n    public importXlsx(requestParameters: ImportXlsxRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentStudio>>;\n    public importXlsx(requestParameters: ImportXlsxRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentStudio>>;\n    public importXlsx(requestParameters: ImportXlsxRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling importXlsx.');\n        }\n        const body = requestParameters?.body;\n        if (body === null || body === undefined) {\n            throw new Error('Required parameter body was null or undefined when calling importXlsx.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/octet-stream'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/import/xlsx`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: body,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Reading experiment\n     * Getting experiment information by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readExperiment(requestParameters: ReadExperimentRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentStudio>;\n    public readExperiment(requestParameters: ReadExperimentRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentStudio>>;\n    public readExperiment(requestParameters: ReadExperimentRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentStudio>>;\n    public readExperiment(requestParameters: ReadExperimentRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readExperiment.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Calculation history\n     * Read calculation history.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readExperimentCalculationHistory(requestParameters: ReadExperimentCalculationHistoryRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<Array<CalculationHistoryElementStudio>>;\n    public readExperimentCalculationHistory(requestParameters: ReadExperimentCalculationHistoryRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<Array<CalculationHistoryElementStudio>>>;\n    public readExperimentCalculationHistory(requestParameters: ReadExperimentCalculationHistoryRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<Array<CalculationHistoryElementStudio>>>;\n    public readExperimentCalculationHistory(requestParameters: ReadExperimentCalculationHistoryRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readExperimentCalculationHistory.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/calculation-history`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<Array<CalculationHistoryElementStudio>>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Experiment neighbors\n     * Experiment neighbors.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readExperimentNeighbors(requestParameters: ReadExperimentNeighborsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentNeighborsStudio>;\n    public readExperimentNeighbors(requestParameters: ReadExperimentNeighborsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentNeighborsStudio>>;\n    public readExperimentNeighbors(requestParameters: ReadExperimentNeighborsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentNeighborsStudio>>;\n    public readExperimentNeighbors(requestParameters: ReadExperimentNeighborsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readExperimentNeighbors.');\n        }\n        const sortField = requestParameters?.sortField;\n        const sortDirection = requestParameters?.sortDirection;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortField, 'sort_field');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortDirection, 'sort_direction');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/neighbors`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentNeighborsStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Experiment path\n     * Experiment path.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readExperimentPath(requestParameters: ReadExperimentPathRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<FilesystemPathStudio>;\n    public readExperimentPath(requestParameters: ReadExperimentPathRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<FilesystemPathStudio>>;\n    public readExperimentPath(requestParameters: ReadExperimentPathRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<FilesystemPathStudio>>;\n    public readExperimentPath(requestParameters: ReadExperimentPathRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readExperimentPath.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/path`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<FilesystemPathStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Experiment list (table)\n     * Getting a experiments list. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readFolder(requestParameters?: ReadFolderRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentListStudio>;\n    public readFolder(requestParameters?: ReadFolderRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentListStudio>>;\n    public readFolder(requestParameters?: ReadFolderRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentListStudio>>;\n    public readFolder(requestParameters?: ReadFolderRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const folderKey = requestParameters?.folderKey;\n        const filter = requestParameters?.filter;\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const sortField = requestParameters?.sortField;\n        const sortDirection = requestParameters?.sortDirection;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>folderKey, 'folder_key');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>filter, 'filter');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortField, 'sort_field');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortDirection, 'sort_direction');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentListStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Run calculation\n     * Experiment calculation run.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public runExperimentCalculation(requestParameters: RunExperimentCalculationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentStudio>;\n    public runExperimentCalculation(requestParameters: RunExperimentCalculationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentStudio>>;\n    public runExperimentCalculation(requestParameters: RunExperimentCalculationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentStudio>>;\n    public runExperimentCalculation(requestParameters: RunExperimentCalculationRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling runExperimentCalculation.');\n        }\n        const processName = requestParameters?.processName;\n        if (processName === null || processName === undefined) {\n            throw new Error('Required parameter processName was null or undefined when calling runExperimentCalculation.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/calculation/${this.configuration.encodeParam({name: \"processName\", value: processName, in: \"path\", style: \"simple\", explode: false, dataType: \"BasicProcessStudio\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Recalculate stats\n     * Starting recalculation of experiment stats.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public runExperimentRecalculateStats(requestParameters: RunExperimentRecalculateStatsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentStudio>;\n    public runExperimentRecalculateStats(requestParameters: RunExperimentRecalculateStatsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentStudio>>;\n    public runExperimentRecalculateStats(requestParameters: RunExperimentRecalculateStatsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentStudio>>;\n    public runExperimentRecalculateStats(requestParameters: RunExperimentRecalculateStatsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling runExperimentRecalculateStats.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/recalculate-stats`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Recalculate tracks\n     * Starting recalculation of &#x60;ROAD&#x60; experiment tracks.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public runExperimentRecalculateTracks(requestParameters: RunExperimentRecalculateTracksRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentStudio>;\n    public runExperimentRecalculateTracks(requestParameters: RunExperimentRecalculateTracksRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentStudio>>;\n    public runExperimentRecalculateTracks(requestParameters: RunExperimentRecalculateTracksRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentStudio>>;\n    public runExperimentRecalculateTracks(requestParameters: RunExperimentRecalculateTracksRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling runExperimentRecalculateTracks.');\n        }\n        const tracksFullSegments = requestParameters?.tracksFullSegments;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>tracksFullSegments, 'tracks_full_segments');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/recalculate-tracks`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Run refine\n     * Experiment refine run.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public runExperimentRefine(requestParameters: RunExperimentRefineRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentStudio>;\n    public runExperimentRefine(requestParameters: RunExperimentRefineRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentStudio>>;\n    public runExperimentRefine(requestParameters: RunExperimentRefineRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentStudio>>;\n    public runExperimentRefine(requestParameters: RunExperimentRefineRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling runExperimentRefine.');\n        }\n        const processName = requestParameters?.processName;\n        if (processName === null || processName === undefined) {\n            throw new Error('Required parameter processName was null or undefined when calling runExperimentRefine.');\n        }\n        const removeLocations = requestParameters?.removeLocations;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>removeLocations, 'remove_locations');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/refine/${this.configuration.encodeParam({name: \"processName\", value: processName, in: \"path\", style: \"simple\", explode: false, dataType: \"BasicProcessStudio\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Run validation\n     * Experiment validation run.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public runExperimentValidation(requestParameters: RunExperimentValidationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentStudio>;\n    public runExperimentValidation(requestParameters: RunExperimentValidationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentStudio>>;\n    public runExperimentValidation(requestParameters: RunExperimentValidationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentStudio>>;\n    public runExperimentValidation(requestParameters: RunExperimentValidationRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling runExperimentValidation.');\n        }\n        const processName = requestParameters?.processName;\n        if (processName === null || processName === undefined) {\n            throw new Error('Required parameter processName was null or undefined when calling runExperimentValidation.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/validation/${this.configuration.encodeParam({name: \"processName\", value: processName, in: \"path\", style: \"simple\", explode: false, dataType: \"BasicProcessStudio\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Calculation stop\n     * Calculation stop.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public stopExperimentCalculation(requestParameters: StopExperimentCalculationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public stopExperimentCalculation(requestParameters: StopExperimentCalculationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public stopExperimentCalculation(requestParameters: StopExperimentCalculationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public stopExperimentCalculation(requestParameters: StopExperimentCalculationRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling stopExperimentCalculation.');\n        }\n        const processName = requestParameters?.processName;\n        if (processName === null || processName === undefined) {\n            throw new Error('Required parameter processName was null or undefined when calling stopExperimentCalculation.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/calculation/${this.configuration.encodeParam({name: \"processName\", value: processName, in: \"path\", style: \"simple\", explode: false, dataType: \"BasicProcessStudio\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Experiment update\n     * Rename \\\\ move experiment.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updateExperiment(requestParameters: UpdateExperimentRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentStudio>;\n    public updateExperiment(requestParameters: UpdateExperimentRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentStudio>>;\n    public updateExperiment(requestParameters: UpdateExperimentRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentStudio>>;\n    public updateExperiment(requestParameters: UpdateExperimentRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling updateExperiment.');\n        }\n        const fileSpecificationStudio = requestParameters?.fileSpecificationStudio;\n        if (fileSpecificationStudio === null || fileSpecificationStudio === undefined) {\n            throw new Error('Required parameter fileSpecificationStudio was null or undefined when calling updateExperiment.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentStudio>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: fileSpecificationStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Indicators update\n     * Updating the experiment indicators.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updateExperimentIndicators(requestParameters: UpdateExperimentIndicatorsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentStudio>;\n    public updateExperimentIndicators(requestParameters: UpdateExperimentIndicatorsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentStudio>>;\n    public updateExperimentIndicators(requestParameters: UpdateExperimentIndicatorsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentStudio>>;\n    public updateExperimentIndicators(requestParameters: UpdateExperimentIndicatorsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling updateExperimentIndicators.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling updateExperimentIndicators.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/indicators`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentStudio>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Settings update\n     * Experiment settings update.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updateExperimentSettings(requestParameters: UpdateExperimentSettingsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<ExperimentStudio>;\n    public updateExperimentSettings(requestParameters: UpdateExperimentSettingsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<ExperimentStudio>>;\n    public updateExperimentSettings(requestParameters: UpdateExperimentSettingsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<ExperimentStudio>>;\n    public updateExperimentSettings(requestParameters: UpdateExperimentSettingsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling updateExperimentSettings.');\n        }\n        const experimentSettingsStudio = requestParameters?.experimentSettingsStudio;\n        if (experimentSettingsStudio === null || experimentSettingsStudio === undefined) {\n            throw new Error('Required parameter experimentSettingsStudio was null or undefined when calling updateExperimentSettings.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/settings`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<ExperimentStudio>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: experimentSettingsStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { FileNamePathStudio } from '../model/fileNamePath';\n// @ts-ignore\nimport { FilesystemColumnTypeStudio } from '../model/filesystemColumnType';\n// @ts-ignore\nimport { FilesystemCountersStudio } from '../model/filesystemCounters';\n// @ts-ignore\nimport { FilesystemPathStudio } from '../model/filesystemPath';\n// @ts-ignore\nimport { FilesystemStudio } from '../model/filesystem';\n// @ts-ignore\nimport { FolderSpecificationStudio } from '../model/folderSpecification';\n// @ts-ignore\nimport { General400Studio } from '../model/general400';\n// @ts-ignore\nimport { General402Studio } from '../model/general402';\n// @ts-ignore\nimport { General403Studio } from '../model/general403';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    ExplorerServiceInterface,\n    CreateFolderRequestParams,\n    CreateFoldersBatchRequestParams,\n    DeleteFilesBatchRequestParams,\n    DeleteFolderRequestParams,\n    DeleteFoldersBatchRequestParams,\n    DisableSharingBatchRequestParams,\n    EnableSharingBatchRequestParams,\n    ReadFileKeyRequestParams,\n    ReadFilesystemRequestParams,\n    ReadFolderKeyRequestParams,\n    ReadFolderPathRequestParams,\n    ReadFolderSpecificationRequestParams,\n    UpdateFolderRequestParams\n} from './explorerServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class ExplorerService extends BaseService implements ExplorerServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Create folder\n     * Create new folder.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createFolder(requestParameters: CreateFolderRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<string>;\n    public createFolder(requestParameters: CreateFolderRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<string>>;\n    public createFolder(requestParameters: CreateFolderRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<string>>;\n    public createFolder(requestParameters: CreateFolderRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const folderSpecificationStudio = requestParameters?.folderSpecificationStudio;\n        if (folderSpecificationStudio === null || folderSpecificationStudio === undefined) {\n            throw new Error('Required parameter folderSpecificationStudio was null or undefined when calling createFolder.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/explorer`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<string>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: folderSpecificationStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Create folders (batch)\n     * Create new folder (batch).\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createFoldersBatch(requestParameters: CreateFoldersBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<string>;\n    public createFoldersBatch(requestParameters: CreateFoldersBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<string>>;\n    public createFoldersBatch(requestParameters: CreateFoldersBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<string>>;\n    public createFoldersBatch(requestParameters: CreateFoldersBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling createFoldersBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/explorer/batch/folders`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<string>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Files removal (batch)\n     * Batch delete files.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteFilesBatch(requestParameters: DeleteFilesBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteFilesBatch(requestParameters: DeleteFilesBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteFilesBatch(requestParameters: DeleteFilesBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteFilesBatch(requestParameters: DeleteFilesBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling deleteFilesBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/explorer/batch/files`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Folder removal\n     * Folder removal by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteFolder(requestParameters: DeleteFolderRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteFolder(requestParameters: DeleteFolderRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteFolder(requestParameters: DeleteFolderRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteFolder(requestParameters: DeleteFolderRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const targetFolderKey = requestParameters?.targetFolderKey;\n        if (targetFolderKey === null || targetFolderKey === undefined) {\n            throw new Error('Required parameter targetFolderKey was null or undefined when calling deleteFolder.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/explorer/${this.configuration.encodeParam({name: \"targetFolderKey\", value: targetFolderKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Folders removal (batch)\n     * Batch delete folders.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteFoldersBatch(requestParameters: DeleteFoldersBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteFoldersBatch(requestParameters: DeleteFoldersBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteFoldersBatch(requestParameters: DeleteFoldersBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteFoldersBatch(requestParameters: DeleteFoldersBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling deleteFoldersBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/explorer/batch/folders`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Disable sharing (batch)\n     * Batch disable sharing.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public disableSharingBatch(requestParameters: DisableSharingBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public disableSharingBatch(requestParameters: DisableSharingBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public disableSharingBatch(requestParameters: DisableSharingBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public disableSharingBatch(requestParameters: DisableSharingBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling disableSharingBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/explorer/batch/sharing`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Enable sharing (batch)\n     * Batch enable sharing.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public enableSharingBatch(requestParameters: EnableSharingBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public enableSharingBatch(requestParameters: EnableSharingBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public enableSharingBatch(requestParameters: EnableSharingBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public enableSharingBatch(requestParameters: EnableSharingBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling enableSharingBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/explorer/batch/sharing`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * File key\n     * Getting a file key by path.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readFileKey(requestParameters: ReadFileKeyRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<string>;\n    public readFileKey(requestParameters: ReadFileKeyRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<string>>;\n    public readFileKey(requestParameters: ReadFileKeyRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<string>>;\n    public readFileKey(requestParameters: ReadFileKeyRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileNamePathStudio = requestParameters?.fileNamePathStudio;\n        if (fileNamePathStudio === null || fileNamePathStudio === undefined) {\n            throw new Error('Required parameter fileNamePathStudio was null or undefined when calling readFileKey.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/explorer/batch/files`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<string>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: fileNamePathStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Getting a filesystem\n     * Getting a filesystem.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readFilesystem(requestParameters?: ReadFilesystemRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<FilesystemStudio>;\n    public readFilesystem(requestParameters?: ReadFilesystemRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<FilesystemStudio>>;\n    public readFilesystem(requestParameters?: ReadFilesystemRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<FilesystemStudio>>;\n    public readFilesystem(requestParameters?: ReadFilesystemRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const folderKey = requestParameters?.folderKey;\n        const filter = requestParameters?.filter;\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const sortField = requestParameters?.sortField;\n        const sortDirection = requestParameters?.sortDirection;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>folderKey, 'folder_key');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>filter, 'filter');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortField, 'sort_field');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortDirection, 'sort_direction');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/explorer`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<FilesystemStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Filesystem counters\n     * Getting a virtual filesystem counters.\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readFilesystemCounters(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<FilesystemCountersStudio>;\n    public readFilesystemCounters(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<FilesystemCountersStudio>>;\n    public readFilesystemCounters(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<FilesystemCountersStudio>>;\n    public readFilesystemCounters(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/explorer/batch/counters`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<FilesystemCountersStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Folder key\n     * Getting a folder key by path.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readFolderKey(requestParameters: ReadFolderKeyRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<string>;\n    public readFolderKey(requestParameters: ReadFolderKeyRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<string>>;\n    public readFolderKey(requestParameters: ReadFolderKeyRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<string>>;\n    public readFolderKey(requestParameters: ReadFolderKeyRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling readFolderKey.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/explorer/batch/folder-key`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<string>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Folder path\n     * Folder path.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readFolderPath(requestParameters: ReadFolderPathRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<FilesystemPathStudio>;\n    public readFolderPath(requestParameters: ReadFolderPathRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<FilesystemPathStudio>>;\n    public readFolderPath(requestParameters: ReadFolderPathRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<FilesystemPathStudio>>;\n    public readFolderPath(requestParameters: ReadFolderPathRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const targetFolderKey = requestParameters?.targetFolderKey;\n        if (targetFolderKey === null || targetFolderKey === undefined) {\n            throw new Error('Required parameter targetFolderKey was null or undefined when calling readFolderPath.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/explorer/${this.configuration.encodeParam({name: \"targetFolderKey\", value: targetFolderKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/path`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<FilesystemPathStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Folder specification\n     * Getting a folder specification. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readFolderSpecification(requestParameters: ReadFolderSpecificationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<FolderSpecificationStudio>;\n    public readFolderSpecification(requestParameters: ReadFolderSpecificationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<FolderSpecificationStudio>>;\n    public readFolderSpecification(requestParameters: ReadFolderSpecificationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<FolderSpecificationStudio>>;\n    public readFolderSpecification(requestParameters: ReadFolderSpecificationRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const targetFolderKey = requestParameters?.targetFolderKey;\n        if (targetFolderKey === null || targetFolderKey === undefined) {\n            throw new Error('Required parameter targetFolderKey was null or undefined when calling readFolderSpecification.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/explorer/${this.configuration.encodeParam({name: \"targetFolderKey\", value: targetFolderKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/specification`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<FolderSpecificationStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Update folder\n     * Rename and move folder.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updateFolder(requestParameters: UpdateFolderRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<FilesystemStudio>;\n    public updateFolder(requestParameters: UpdateFolderRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<FilesystemStudio>>;\n    public updateFolder(requestParameters: UpdateFolderRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<FilesystemStudio>>;\n    public updateFolder(requestParameters: UpdateFolderRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const targetFolderKey = requestParameters?.targetFolderKey;\n        if (targetFolderKey === null || targetFolderKey === undefined) {\n            throw new Error('Required parameter targetFolderKey was null or undefined when calling updateFolder.');\n        }\n        const folderSpecificationStudio = requestParameters?.folderSpecificationStudio;\n        if (folderSpecificationStudio === null || folderSpecificationStudio === undefined) {\n            throw new Error('Required parameter folderSpecificationStudio was null or undefined when calling updateFolder.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/explorer/${this.configuration.encodeParam({name: \"targetFolderKey\", value: targetFolderKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<FilesystemStudio>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: folderSpecificationStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { General400Studio } from '../model/general400';\n// @ts-ignore\nimport { General402Studio } from '../model/general402';\n// @ts-ignore\nimport { General403Studio } from '../model/general403';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n// @ts-ignore\nimport { RoutingTransportMatrixStudio } from '../model/routingTransportMatrix';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    ExternalRoutingServiceInterface,\n    CreateExternalroutingRequestParams,\n    DeleteExternalroutingRequestParams,\n    ReadExternalroutingRequestParams,\n    UpdateExternalroutingRequestParams\n} from './externalRoutingServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class ExternalRoutingService extends BaseService implements ExternalRoutingServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Create externalrouting\n     * Create new external routing.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createExternalrouting(requestParameters: CreateExternalroutingRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public createExternalrouting(requestParameters: CreateExternalroutingRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public createExternalrouting(requestParameters: CreateExternalroutingRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public createExternalrouting(requestParameters: CreateExternalroutingRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling createExternalrouting.');\n        }\n        const routingTransportMatrixStudio = requestParameters?.routingTransportMatrixStudio;\n        if (routingTransportMatrixStudio === null || routingTransportMatrixStudio === undefined) {\n            throw new Error('Required parameter routingTransportMatrixStudio was null or undefined when calling createExternalrouting.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/externalrouting`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: routingTransportMatrixStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Deleting externalrouting\n     * Removing externalrouting.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteExternalrouting(requestParameters: DeleteExternalroutingRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteExternalrouting(requestParameters: DeleteExternalroutingRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteExternalrouting(requestParameters: DeleteExternalroutingRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteExternalrouting(requestParameters: DeleteExternalroutingRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteExternalrouting.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/externalrouting`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Read externalrouting\n     * Getting externalrouting information.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readExternalrouting(requestParameters: ReadExternalroutingRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<Set<RoutingTransportMatrixStudio>>;\n    public readExternalrouting(requestParameters: ReadExternalroutingRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<Set<RoutingTransportMatrixStudio>>>;\n    public readExternalrouting(requestParameters: ReadExternalroutingRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<Set<RoutingTransportMatrixStudio>>>;\n    public readExternalrouting(requestParameters: ReadExternalroutingRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readExternalrouting.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/externalrouting`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<Set<RoutingTransportMatrixStudio>>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Update externalrouting\n     * Updating the externalrouting.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updateExternalrouting(requestParameters: UpdateExternalroutingRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public updateExternalrouting(requestParameters: UpdateExternalroutingRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public updateExternalrouting(requestParameters: UpdateExternalroutingRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public updateExternalrouting(requestParameters: UpdateExternalroutingRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling updateExternalrouting.');\n        }\n        const routingTransportMatrixStudio = requestParameters?.routingTransportMatrixStudio;\n        if (routingTransportMatrixStudio === null || routingTransportMatrixStudio === undefined) {\n            throw new Error('Required parameter routingTransportMatrixStudio was null or undefined when calling updateExternalrouting.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/externalrouting`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: routingTransportMatrixStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { FactStudio } from '../model/fact';\n// @ts-ignore\nimport { General400Studio } from '../model/general400';\n// @ts-ignore\nimport { General402Studio } from '../model/general402';\n// @ts-ignore\nimport { General403Studio } from '../model/general403';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n// @ts-ignore\nimport { TableCustomfieldsColumnTypeStudio } from '../model/tableCustomfieldsColumnType';\n// @ts-ignore\nimport { TableFactColumnTypeStudio } from '../model/tableFactColumnType';\n// @ts-ignore\nimport { TableFactFilterListStudio } from '../model/tableFactFilterList';\n// @ts-ignore\nimport { TableFactListStudio } from '../model/tableFactList';\n// @ts-ignore\nimport { TableFactMetricsFilterListStudio } from '../model/tableFactMetricsFilterList';\n// @ts-ignore\nimport { TableFactMetricsStudio } from '../model/tableFactMetrics';\n// @ts-ignore\nimport { WebFactStudio } from '../model/webFact';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    FactsServiceInterface,\n    CreateFactRequestParams,\n    DeleteFactRequestParams,\n    DeleteFactsBatchRequestParams,\n    DisableFactsBatchRequestParams,\n    EnableFactsBatchRequestParams,\n    ReadFactRequestParams,\n    ReadFactsMetricsRequestParams,\n    ReadFactsTableRequestParams,\n    UpdateFactRequestParams\n} from './factsServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class FactsService extends BaseService implements FactsServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Create fact\n     * Creating a fact. You can only create a new fact with the \\&#39;NEW\\&#39; status. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createFact(requestParameters: CreateFactRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebFactStudio>;\n    public createFact(requestParameters: CreateFactRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebFactStudio>>;\n    public createFact(requestParameters: CreateFactRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebFactStudio>>;\n    public createFact(requestParameters: CreateFactRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling createFact.');\n        }\n        const factStudio = requestParameters?.factStudio;\n        if (factStudio === null || factStudio === undefined) {\n            throw new Error('Required parameter factStudio was null or undefined when calling createFact.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/facts`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebFactStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: factStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Deleting one fact\n     * Removing a fact by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteFact(requestParameters: DeleteFactRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteFact(requestParameters: DeleteFactRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteFact(requestParameters: DeleteFactRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteFact(requestParameters: DeleteFactRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteFact.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling deleteFact.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/facts/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Delete facts (batch)\n     * Removing facts from the file.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteFactsBatch(requestParameters: DeleteFactsBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteFactsBatch(requestParameters: DeleteFactsBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteFactsBatch(requestParameters: DeleteFactsBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteFactsBatch(requestParameters: DeleteFactsBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteFactsBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling deleteFactsBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/facts/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Disable facts\n     * Disable facts in the calculation.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public disableFactsBatch(requestParameters: DisableFactsBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public disableFactsBatch(requestParameters: DisableFactsBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public disableFactsBatch(requestParameters: DisableFactsBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public disableFactsBatch(requestParameters: DisableFactsBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling disableFactsBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling disableFactsBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/facts/batch/ability`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Enable facts\n     * Enable facts in the calculation.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public enableFactsBatch(requestParameters: EnableFactsBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public enableFactsBatch(requestParameters: EnableFactsBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public enableFactsBatch(requestParameters: EnableFactsBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public enableFactsBatch(requestParameters: EnableFactsBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling enableFactsBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling enableFactsBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/facts/batch/ability`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Read fact\n     * Getting fact information by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readFact(requestParameters: ReadFactRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebFactStudio>;\n    public readFact(requestParameters: ReadFactRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebFactStudio>>;\n    public readFact(requestParameters: ReadFactRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebFactStudio>>;\n    public readFact(requestParameters: ReadFactRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readFact.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling readFact.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/facts/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebFactStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Fact metrics\n     * Calculate general metrics for selected facts.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readFactsMetrics(requestParameters: ReadFactsMetricsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableFactMetricsStudio>;\n    public readFactsMetrics(requestParameters: ReadFactsMetricsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableFactMetricsStudio>>;\n    public readFactsMetrics(requestParameters: ReadFactsMetricsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableFactMetricsStudio>>;\n    public readFactsMetrics(requestParameters: ReadFactsMetricsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readFactsMetrics.');\n        }\n        const tableFactMetricsFilterListStudio = requestParameters?.tableFactMetricsFilterListStudio;\n        if (tableFactMetricsFilterListStudio === null || tableFactMetricsFilterListStudio === undefined) {\n            throw new Error('Required parameter tableFactMetricsFilterListStudio was null or undefined when calling readFactsMetrics.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/facts/batch/metrics`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableFactMetricsStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableFactMetricsFilterListStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * List of facts\n     * Getting a facts list.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readFactsTable(requestParameters: ReadFactsTableRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableFactListStudio>;\n    public readFactsTable(requestParameters: ReadFactsTableRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableFactListStudio>>;\n    public readFactsTable(requestParameters: ReadFactsTableRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableFactListStudio>>;\n    public readFactsTable(requestParameters: ReadFactsTableRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readFactsTable.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const sortField = requestParameters?.sortField;\n        const sortCustomfield = requestParameters?.sortCustomfield;\n        const sortDirection = requestParameters?.sortDirection;\n        const tableFactFilterListStudio = requestParameters?.tableFactFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortField, 'sort_field');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortCustomfield, 'sort_customfield');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortDirection, 'sort_direction');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/facts/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableFactListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableFactFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Update fact\n     * Updating the fact by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updateFact(requestParameters: UpdateFactRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebFactStudio>;\n    public updateFact(requestParameters: UpdateFactRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebFactStudio>>;\n    public updateFact(requestParameters: UpdateFactRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebFactStudio>>;\n    public updateFact(requestParameters: UpdateFactRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling updateFact.');\n        }\n        const factStudio = requestParameters?.factStudio;\n        if (factStudio === null || factStudio === undefined) {\n            throw new Error('Required parameter factStudio was null or undefined when calling updateFact.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/facts`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebFactStudio>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: factStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { General400Studio } from '../model/general400';\n// @ts-ignore\nimport { General402Studio } from '../model/general402';\n// @ts-ignore\nimport { General403Studio } from '../model/general403';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n// @ts-ignore\nimport { HardlinkStudio } from '../model/hardlink';\n// @ts-ignore\nimport { TableCustomfieldsColumnTypeStudio } from '../model/tableCustomfieldsColumnType';\n// @ts-ignore\nimport { TableHardlinkColumnTypeStudio } from '../model/tableHardlinkColumnType';\n// @ts-ignore\nimport { TableHardlinkFilterListStudio } from '../model/tableHardlinkFilterList';\n// @ts-ignore\nimport { TableHardlinkListStudio } from '../model/tableHardlinkList';\n// @ts-ignore\nimport { TableHardlinkMetricsFilterListStudio } from '../model/tableHardlinkMetricsFilterList';\n// @ts-ignore\nimport { TableHardlinkMetricsStudio } from '../model/tableHardlinkMetrics';\n// @ts-ignore\nimport { WebHardlinkStudio } from '../model/webHardlink';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    HardlinksServiceInterface,\n    CreateHardlinkRequestParams,\n    DeleteHardlinkRequestParams,\n    DeleteHardlinksBatchRequestParams,\n    DisableHardlinksBatchRequestParams,\n    EnableHardlinksBatchRequestParams,\n    ReadHardlinkRequestParams,\n    ReadHardlinksMetricsRequestParams,\n    ReadHardlinksTableRequestParams,\n    UpdateHardlinkRequestParams\n} from './hardlinksServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class HardlinksService extends BaseService implements HardlinksServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Create hardlink\n     * Create new hardlink.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createHardlink(requestParameters: CreateHardlinkRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebHardlinkStudio>;\n    public createHardlink(requestParameters: CreateHardlinkRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebHardlinkStudio>>;\n    public createHardlink(requestParameters: CreateHardlinkRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebHardlinkStudio>>;\n    public createHardlink(requestParameters: CreateHardlinkRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling createHardlink.');\n        }\n        const hardlinkStudio = requestParameters?.hardlinkStudio;\n        if (hardlinkStudio === null || hardlinkStudio === undefined) {\n            throw new Error('Required parameter hardlinkStudio was null or undefined when calling createHardlink.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/hardlinks`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebHardlinkStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: hardlinkStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Remove hardlink\n     * Removing a essence by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteHardlink(requestParameters: DeleteHardlinkRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteHardlink(requestParameters: DeleteHardlinkRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteHardlink(requestParameters: DeleteHardlinkRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteHardlink(requestParameters: DeleteHardlinkRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteHardlink.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling deleteHardlink.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/hardlinks/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Delete hardlinks (batch)\n     * Removing hardlinks from the file.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteHardlinksBatch(requestParameters: DeleteHardlinksBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteHardlinksBatch(requestParameters: DeleteHardlinksBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteHardlinksBatch(requestParameters: DeleteHardlinksBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteHardlinksBatch(requestParameters: DeleteHardlinksBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteHardlinksBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling deleteHardlinksBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/hardlinks/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Disable hardlinks\n     * Disable hardlinks in the calculation.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public disableHardlinksBatch(requestParameters: DisableHardlinksBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public disableHardlinksBatch(requestParameters: DisableHardlinksBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public disableHardlinksBatch(requestParameters: DisableHardlinksBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public disableHardlinksBatch(requestParameters: DisableHardlinksBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling disableHardlinksBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling disableHardlinksBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/hardlinks/batch/ability`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Enable hardlinks\n     * Enable hardlinks in the calculation.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public enableHardlinksBatch(requestParameters: EnableHardlinksBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public enableHardlinksBatch(requestParameters: EnableHardlinksBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public enableHardlinksBatch(requestParameters: EnableHardlinksBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public enableHardlinksBatch(requestParameters: EnableHardlinksBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling enableHardlinksBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling enableHardlinksBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/hardlinks/batch/ability`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Read hardlink\n     * Getting hardlink information by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readHardlink(requestParameters: ReadHardlinkRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebHardlinkStudio>;\n    public readHardlink(requestParameters: ReadHardlinkRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebHardlinkStudio>>;\n    public readHardlink(requestParameters: ReadHardlinkRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebHardlinkStudio>>;\n    public readHardlink(requestParameters: ReadHardlinkRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readHardlink.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling readHardlink.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/hardlinks/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebHardlinkStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Hardlink metrics\n     * Calculate general metrics for selected hardlinks.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readHardlinksMetrics(requestParameters: ReadHardlinksMetricsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableHardlinkMetricsStudio>;\n    public readHardlinksMetrics(requestParameters: ReadHardlinksMetricsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableHardlinkMetricsStudio>>;\n    public readHardlinksMetrics(requestParameters: ReadHardlinksMetricsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableHardlinkMetricsStudio>>;\n    public readHardlinksMetrics(requestParameters: ReadHardlinksMetricsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readHardlinksMetrics.');\n        }\n        const tableHardlinkMetricsFilterListStudio = requestParameters?.tableHardlinkMetricsFilterListStudio;\n        if (tableHardlinkMetricsFilterListStudio === null || tableHardlinkMetricsFilterListStudio === undefined) {\n            throw new Error('Required parameter tableHardlinkMetricsFilterListStudio was null or undefined when calling readHardlinksMetrics.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/hardlinks/batch/metrics`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableHardlinkMetricsStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableHardlinkMetricsFilterListStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * List hardlinks\n     * Getting a hardlinks list.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readHardlinksTable(requestParameters: ReadHardlinksTableRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableHardlinkListStudio>;\n    public readHardlinksTable(requestParameters: ReadHardlinksTableRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableHardlinkListStudio>>;\n    public readHardlinksTable(requestParameters: ReadHardlinksTableRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableHardlinkListStudio>>;\n    public readHardlinksTable(requestParameters: ReadHardlinksTableRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readHardlinksTable.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const sortField = requestParameters?.sortField;\n        const sortCustomfield = requestParameters?.sortCustomfield;\n        const sortDirection = requestParameters?.sortDirection;\n        const tableHardlinkFilterListStudio = requestParameters?.tableHardlinkFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortField, 'sort_field');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortCustomfield, 'sort_customfield');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortDirection, 'sort_direction');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/hardlinks/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableHardlinkListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableHardlinkFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Update hardlink\n     * Updating the hardlink by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updateHardlink(requestParameters: UpdateHardlinkRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebHardlinkStudio>;\n    public updateHardlink(requestParameters: UpdateHardlinkRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebHardlinkStudio>>;\n    public updateHardlink(requestParameters: UpdateHardlinkRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebHardlinkStudio>>;\n    public updateHardlink(requestParameters: UpdateHardlinkRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling updateHardlink.');\n        }\n        const hardlinkStudio = requestParameters?.hardlinkStudio;\n        if (hardlinkStudio === null || hardlinkStudio === undefined) {\n            throw new Error('Required parameter hardlinkStudio was null or undefined when calling updateHardlink.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/hardlinks`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebHardlinkStudio>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: hardlinkStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { General400Studio } from '../model/general400';\n// @ts-ignore\nimport { General402Studio } from '../model/general402';\n// @ts-ignore\nimport { General403Studio } from '../model/general403';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n// @ts-ignore\nimport { LocationStudio } from '../model/location';\n// @ts-ignore\nimport { TableCustomfieldsColumnTypeStudio } from '../model/tableCustomfieldsColumnType';\n// @ts-ignore\nimport { TableLocationColumnTypeStudio } from '../model/tableLocationColumnType';\n// @ts-ignore\nimport { TableLocationFilterListStudio } from '../model/tableLocationFilterList';\n// @ts-ignore\nimport { TableLocationListStudio } from '../model/tableLocationList';\n// @ts-ignore\nimport { TableLocationMetricsFilterListStudio } from '../model/tableLocationMetricsFilterList';\n// @ts-ignore\nimport { TableLocationMetricsStudio } from '../model/tableLocationMetrics';\n// @ts-ignore\nimport { WebLocationGeopointListStudio } from '../model/webLocationGeopointList';\n// @ts-ignore\nimport { WebLocationStudio } from '../model/webLocation';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    LocationsServiceInterface,\n    CreateLocationRequestParams,\n    DeleteLocationRequestParams,\n    DeleteLocationsBatchRequestParams,\n    ReadLocationRequestParams,\n    ReadLocationsGeopointsRequestParams,\n    ReadLocationsMetricsRequestParams,\n    ReadLocationsTableRequestParams,\n    UpdateLocationRequestParams\n} from './locationsServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class LocationsService extends BaseService implements LocationsServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Create location\n     * Create location.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createLocation(requestParameters: CreateLocationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebLocationStudio>;\n    public createLocation(requestParameters: CreateLocationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebLocationStudio>>;\n    public createLocation(requestParameters: CreateLocationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebLocationStudio>>;\n    public createLocation(requestParameters: CreateLocationRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling createLocation.');\n        }\n        const locationStudio = requestParameters?.locationStudio;\n        if (locationStudio === null || locationStudio === undefined) {\n            throw new Error('Required parameter locationStudio was null or undefined when calling createLocation.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/locations`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebLocationStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: locationStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Remove location\n     * Removing a location by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteLocation(requestParameters: DeleteLocationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteLocation(requestParameters: DeleteLocationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteLocation(requestParameters: DeleteLocationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteLocation(requestParameters: DeleteLocationRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteLocation.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling deleteLocation.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/locations/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Delete locations (batch)\n     * Removing locations from the file.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteLocationsBatch(requestParameters: DeleteLocationsBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteLocationsBatch(requestParameters: DeleteLocationsBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteLocationsBatch(requestParameters: DeleteLocationsBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteLocationsBatch(requestParameters: DeleteLocationsBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteLocationsBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling deleteLocationsBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/locations/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Read location\n     * Getting location information by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readLocation(requestParameters: ReadLocationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebLocationStudio>;\n    public readLocation(requestParameters: ReadLocationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebLocationStudio>>;\n    public readLocation(requestParameters: ReadLocationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebLocationStudio>>;\n    public readLocation(requestParameters: ReadLocationRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readLocation.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling readLocation.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/locations/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebLocationStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Location geopoints\n     * Getting a geopoints.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readLocationsGeopoints(requestParameters: ReadLocationsGeopointsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebLocationGeopointListStudio>;\n    public readLocationsGeopoints(requestParameters: ReadLocationsGeopointsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebLocationGeopointListStudio>>;\n    public readLocationsGeopoints(requestParameters: ReadLocationsGeopointsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebLocationGeopointListStudio>>;\n    public readLocationsGeopoints(requestParameters: ReadLocationsGeopointsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readLocationsGeopoints.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const tableLocationFilterListStudio = requestParameters?.tableLocationFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/locations/batch/geopoints`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebLocationGeopointListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableLocationFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Location metrics\n     * Calculate general metrics for selected locations.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readLocationsMetrics(requestParameters: ReadLocationsMetricsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableLocationMetricsStudio>;\n    public readLocationsMetrics(requestParameters: ReadLocationsMetricsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableLocationMetricsStudio>>;\n    public readLocationsMetrics(requestParameters: ReadLocationsMetricsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableLocationMetricsStudio>>;\n    public readLocationsMetrics(requestParameters: ReadLocationsMetricsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readLocationsMetrics.');\n        }\n        const tableLocationMetricsFilterListStudio = requestParameters?.tableLocationMetricsFilterListStudio;\n        if (tableLocationMetricsFilterListStudio === null || tableLocationMetricsFilterListStudio === undefined) {\n            throw new Error('Required parameter tableLocationMetricsFilterListStudio was null or undefined when calling readLocationsMetrics.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/locations/batch/metrics`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableLocationMetricsStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableLocationMetricsFilterListStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Locations list\n     * Getting a locations list.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readLocationsTable(requestParameters: ReadLocationsTableRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableLocationListStudio>;\n    public readLocationsTable(requestParameters: ReadLocationsTableRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableLocationListStudio>>;\n    public readLocationsTable(requestParameters: ReadLocationsTableRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableLocationListStudio>>;\n    public readLocationsTable(requestParameters: ReadLocationsTableRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readLocationsTable.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const sortField = requestParameters?.sortField;\n        const sortCustomfield = requestParameters?.sortCustomfield;\n        const sortDirection = requestParameters?.sortDirection;\n        const tableLocationFilterListStudio = requestParameters?.tableLocationFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortField, 'sort_field');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortCustomfield, 'sort_customfield');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortDirection, 'sort_direction');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/locations/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableLocationListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableLocationFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Update location\n     * Updating the location by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updateLocation(requestParameters: UpdateLocationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebLocationStudio>;\n    public updateLocation(requestParameters: UpdateLocationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebLocationStudio>>;\n    public updateLocation(requestParameters: UpdateLocationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebLocationStudio>>;\n    public updateLocation(requestParameters: UpdateLocationRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling updateLocation.');\n        }\n        const locationStudio = requestParameters?.locationStudio;\n        if (locationStudio === null || locationStudio === undefined) {\n            throw new Error('Required parameter locationStudio was null or undefined when calling updateLocation.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/locations`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebLocationStudio>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: locationStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { General400Studio } from '../model/general400';\n// @ts-ignore\nimport { General402Studio } from '../model/general402';\n// @ts-ignore\nimport { General403Studio } from '../model/general403';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n// @ts-ignore\nimport { OrderStudio } from '../model/order';\n// @ts-ignore\nimport { TableCustomfieldsColumnTypeStudio } from '../model/tableCustomfieldsColumnType';\n// @ts-ignore\nimport { TableOrderColumnTypeStudio } from '../model/tableOrderColumnType';\n// @ts-ignore\nimport { TableOrderFilterListStudio } from '../model/tableOrderFilterList';\n// @ts-ignore\nimport { TableOrderListStudio } from '../model/tableOrderList';\n// @ts-ignore\nimport { TableOrderMetricsFilterListStudio } from '../model/tableOrderMetricsFilterList';\n// @ts-ignore\nimport { TableOrderMetricsStudio } from '../model/tableOrderMetrics';\n// @ts-ignore\nimport { WebOrderGeopointListStudio } from '../model/webOrderGeopointList';\n// @ts-ignore\nimport { WebOrderStudio } from '../model/webOrder';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    OrdersServiceInterface,\n    CreateOrderRequestParams,\n    DeleteOrderRequestParams,\n    DeleteOrdersBatchRequestParams,\n    DisableOrdersBatchRequestParams,\n    EnableOrdersBatchRequestParams,\n    ReadOrderRequestParams,\n    ReadOrdersGeopointsRequestParams,\n    ReadOrdersMetricsRequestParams,\n    ReadOrdersTableRequestParams,\n    UpdateOrderRequestParams\n} from './ordersServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class OrdersService extends BaseService implements OrdersServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Create order\n     * New order creation.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createOrder(requestParameters: CreateOrderRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebOrderStudio>;\n    public createOrder(requestParameters: CreateOrderRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebOrderStudio>>;\n    public createOrder(requestParameters: CreateOrderRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebOrderStudio>>;\n    public createOrder(requestParameters: CreateOrderRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling createOrder.');\n        }\n        const orderStudio = requestParameters?.orderStudio;\n        if (orderStudio === null || orderStudio === undefined) {\n            throw new Error('Required parameter orderStudio was null or undefined when calling createOrder.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/orders`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebOrderStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: orderStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Deleting one order\n     * Removing a essence by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteOrder(requestParameters: DeleteOrderRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteOrder(requestParameters: DeleteOrderRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteOrder(requestParameters: DeleteOrderRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteOrder(requestParameters: DeleteOrderRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteOrder.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling deleteOrder.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/orders/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Delete orders (batch)\n     * Removing orders from the file.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteOrdersBatch(requestParameters: DeleteOrdersBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteOrdersBatch(requestParameters: DeleteOrdersBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteOrdersBatch(requestParameters: DeleteOrdersBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteOrdersBatch(requestParameters: DeleteOrdersBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteOrdersBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling deleteOrdersBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/orders/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Disable orders\n     * Disable orders in the calculation.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public disableOrdersBatch(requestParameters: DisableOrdersBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public disableOrdersBatch(requestParameters: DisableOrdersBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public disableOrdersBatch(requestParameters: DisableOrdersBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public disableOrdersBatch(requestParameters: DisableOrdersBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling disableOrdersBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling disableOrdersBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/orders/batch/ability`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Enable orders\n     * Enable orders in the calculation.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public enableOrdersBatch(requestParameters: EnableOrdersBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public enableOrdersBatch(requestParameters: EnableOrdersBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public enableOrdersBatch(requestParameters: EnableOrdersBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public enableOrdersBatch(requestParameters: EnableOrdersBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling enableOrdersBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling enableOrdersBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/orders/batch/ability`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Reading order\n     * Getting order information by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readOrder(requestParameters: ReadOrderRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebOrderStudio>;\n    public readOrder(requestParameters: ReadOrderRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebOrderStudio>>;\n    public readOrder(requestParameters: ReadOrderRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebOrderStudio>>;\n    public readOrder(requestParameters: ReadOrderRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readOrder.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling readOrder.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/orders/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebOrderStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Order geopoints\n     * Getting a geopoints.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readOrdersGeopoints(requestParameters: ReadOrdersGeopointsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebOrderGeopointListStudio>;\n    public readOrdersGeopoints(requestParameters: ReadOrdersGeopointsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebOrderGeopointListStudio>>;\n    public readOrdersGeopoints(requestParameters: ReadOrdersGeopointsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebOrderGeopointListStudio>>;\n    public readOrdersGeopoints(requestParameters: ReadOrdersGeopointsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readOrdersGeopoints.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const tableOrderFilterListStudio = requestParameters?.tableOrderFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/orders/batch/geopoints`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebOrderGeopointListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableOrderFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Order metrics\n     * Calculate general metrics for selected orders.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readOrdersMetrics(requestParameters: ReadOrdersMetricsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableOrderMetricsStudio>;\n    public readOrdersMetrics(requestParameters: ReadOrdersMetricsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableOrderMetricsStudio>>;\n    public readOrdersMetrics(requestParameters: ReadOrdersMetricsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableOrderMetricsStudio>>;\n    public readOrdersMetrics(requestParameters: ReadOrdersMetricsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readOrdersMetrics.');\n        }\n        const tableOrderMetricsFilterListStudio = requestParameters?.tableOrderMetricsFilterListStudio;\n        if (tableOrderMetricsFilterListStudio === null || tableOrderMetricsFilterListStudio === undefined) {\n            throw new Error('Required parameter tableOrderMetricsFilterListStudio was null or undefined when calling readOrdersMetrics.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/orders/batch/metrics`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableOrderMetricsStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableOrderMetricsFilterListStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * List orders\n     * Getting a orders list.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readOrdersTable(requestParameters: ReadOrdersTableRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableOrderListStudio>;\n    public readOrdersTable(requestParameters: ReadOrdersTableRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableOrderListStudio>>;\n    public readOrdersTable(requestParameters: ReadOrdersTableRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableOrderListStudio>>;\n    public readOrdersTable(requestParameters: ReadOrdersTableRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readOrdersTable.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const sortField = requestParameters?.sortField;\n        const sortCustomfield = requestParameters?.sortCustomfield;\n        const sortDirection = requestParameters?.sortDirection;\n        const tableOrderFilterListStudio = requestParameters?.tableOrderFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortField, 'sort_field');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortCustomfield, 'sort_customfield');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortDirection, 'sort_direction');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/orders/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableOrderListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableOrderFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Update order\n     * Updating the essence by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updateOrder(requestParameters: UpdateOrderRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebOrderStudio>;\n    public updateOrder(requestParameters: UpdateOrderRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebOrderStudio>>;\n    public updateOrder(requestParameters: UpdateOrderRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebOrderStudio>>;\n    public updateOrder(requestParameters: UpdateOrderRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling updateOrder.');\n        }\n        const orderStudio = requestParameters?.orderStudio;\n        if (orderStudio === null || orderStudio === undefined) {\n            throw new Error('Required parameter orderStudio was null or undefined when calling updateOrder.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/orders`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebOrderStudio>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: orderStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { General400Studio } from '../model/general400';\n// @ts-ignore\nimport { General402Studio } from '../model/general402';\n// @ts-ignore\nimport { General403Studio } from '../model/general403';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n// @ts-ignore\nimport { PerformerStudio } from '../model/performer';\n// @ts-ignore\nimport { TableCustomfieldsColumnTypeStudio } from '../model/tableCustomfieldsColumnType';\n// @ts-ignore\nimport { TablePerformerColumnTypeStudio } from '../model/tablePerformerColumnType';\n// @ts-ignore\nimport { TablePerformerFilterListStudio } from '../model/tablePerformerFilterList';\n// @ts-ignore\nimport { TablePerformerListStudio } from '../model/tablePerformerList';\n// @ts-ignore\nimport { TablePerformerMetricsFilterListStudio } from '../model/tablePerformerMetricsFilterList';\n// @ts-ignore\nimport { TablePerformerMetricsStudio } from '../model/tablePerformerMetrics';\n// @ts-ignore\nimport { WebPerformerGeopointListStudio } from '../model/webPerformerGeopointList';\n// @ts-ignore\nimport { WebPerformerStudio } from '../model/webPerformer';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    PerformersServiceInterface,\n    CreatePerformerRequestParams,\n    DeletePerformerRequestParams,\n    DeletePerformersBatchRequestParams,\n    DisablePerformersBatchRequestParams,\n    EnablePerformersBatchRequestParams,\n    ReadPerformerRequestParams,\n    ReadPerformersGeopointsRequestParams,\n    ReadPerformersMetricsRequestParams,\n    ReadPerformersTableRequestParams,\n    UpdatePerformerRequestParams\n} from './performersServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class PerformersService extends BaseService implements PerformersServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Create performer\n     * Create performer.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createPerformer(requestParameters: CreatePerformerRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebPerformerStudio>;\n    public createPerformer(requestParameters: CreatePerformerRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebPerformerStudio>>;\n    public createPerformer(requestParameters: CreatePerformerRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebPerformerStudio>>;\n    public createPerformer(requestParameters: CreatePerformerRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling createPerformer.');\n        }\n        const performerStudio = requestParameters?.performerStudio;\n        if (performerStudio === null || performerStudio === undefined) {\n            throw new Error('Required parameter performerStudio was null or undefined when calling createPerformer.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/performers`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebPerformerStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: performerStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Remove performer\n     * Removing a performer by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deletePerformer(requestParameters: DeletePerformerRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deletePerformer(requestParameters: DeletePerformerRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deletePerformer(requestParameters: DeletePerformerRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deletePerformer(requestParameters: DeletePerformerRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deletePerformer.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling deletePerformer.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/performers/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Delete performers (batch)\n     * Removing performers from the file.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deletePerformersBatch(requestParameters: DeletePerformersBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deletePerformersBatch(requestParameters: DeletePerformersBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deletePerformersBatch(requestParameters: DeletePerformersBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deletePerformersBatch(requestParameters: DeletePerformersBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deletePerformersBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling deletePerformersBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/performers/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Disable performers\n     * Disable performers in the calculation.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public disablePerformersBatch(requestParameters: DisablePerformersBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public disablePerformersBatch(requestParameters: DisablePerformersBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public disablePerformersBatch(requestParameters: DisablePerformersBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public disablePerformersBatch(requestParameters: DisablePerformersBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling disablePerformersBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling disablePerformersBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/performers/batch/ability`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Enable performers\n     * Enable performers in the calculation.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public enablePerformersBatch(requestParameters: EnablePerformersBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public enablePerformersBatch(requestParameters: EnablePerformersBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public enablePerformersBatch(requestParameters: EnablePerformersBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public enablePerformersBatch(requestParameters: EnablePerformersBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling enablePerformersBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling enablePerformersBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/performers/batch/ability`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Read performer\n     * Getting performer information by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readPerformer(requestParameters: ReadPerformerRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebPerformerStudio>;\n    public readPerformer(requestParameters: ReadPerformerRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebPerformerStudio>>;\n    public readPerformer(requestParameters: ReadPerformerRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebPerformerStudio>>;\n    public readPerformer(requestParameters: ReadPerformerRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readPerformer.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling readPerformer.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/performers/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebPerformerStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Performer geopoints\n     * Getting a geopoints.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readPerformersGeopoints(requestParameters: ReadPerformersGeopointsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebPerformerGeopointListStudio>;\n    public readPerformersGeopoints(requestParameters: ReadPerformersGeopointsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebPerformerGeopointListStudio>>;\n    public readPerformersGeopoints(requestParameters: ReadPerformersGeopointsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebPerformerGeopointListStudio>>;\n    public readPerformersGeopoints(requestParameters: ReadPerformersGeopointsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readPerformersGeopoints.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const tablePerformerFilterListStudio = requestParameters?.tablePerformerFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/performers/batch/geopoints`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebPerformerGeopointListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tablePerformerFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Performer metrics\n     * Calculate general metrics for selected performers.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readPerformersMetrics(requestParameters: ReadPerformersMetricsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TablePerformerMetricsStudio>;\n    public readPerformersMetrics(requestParameters: ReadPerformersMetricsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TablePerformerMetricsStudio>>;\n    public readPerformersMetrics(requestParameters: ReadPerformersMetricsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TablePerformerMetricsStudio>>;\n    public readPerformersMetrics(requestParameters: ReadPerformersMetricsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readPerformersMetrics.');\n        }\n        const tablePerformerMetricsFilterListStudio = requestParameters?.tablePerformerMetricsFilterListStudio;\n        if (tablePerformerMetricsFilterListStudio === null || tablePerformerMetricsFilterListStudio === undefined) {\n            throw new Error('Required parameter tablePerformerMetricsFilterListStudio was null or undefined when calling readPerformersMetrics.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/performers/batch/metrics`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TablePerformerMetricsStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tablePerformerMetricsFilterListStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Performers list\n     * Getting a performers list.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readPerformersTable(requestParameters: ReadPerformersTableRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TablePerformerListStudio>;\n    public readPerformersTable(requestParameters: ReadPerformersTableRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TablePerformerListStudio>>;\n    public readPerformersTable(requestParameters: ReadPerformersTableRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TablePerformerListStudio>>;\n    public readPerformersTable(requestParameters: ReadPerformersTableRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readPerformersTable.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const sortField = requestParameters?.sortField;\n        const sortCustomfield = requestParameters?.sortCustomfield;\n        const sortDirection = requestParameters?.sortDirection;\n        const tablePerformerFilterListStudio = requestParameters?.tablePerformerFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortField, 'sort_field');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortCustomfield, 'sort_customfield');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortDirection, 'sort_direction');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/performers/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TablePerformerListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tablePerformerFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Update performer\n     * Updating the performer by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updatePerformer(requestParameters: UpdatePerformerRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebPerformerStudio>;\n    public updatePerformer(requestParameters: UpdatePerformerRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebPerformerStudio>>;\n    public updatePerformer(requestParameters: UpdatePerformerRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebPerformerStudio>>;\n    public updatePerformer(requestParameters: UpdatePerformerRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling updatePerformer.');\n        }\n        const performerStudio = requestParameters?.performerStudio;\n        if (performerStudio === null || performerStudio === undefined) {\n            throw new Error('Required parameter performerStudio was null or undefined when calling updatePerformer.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/performers`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebPerformerStudio>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: performerStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { CheckResultStudio } from '../model/checkResult';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n// @ts-ignore\nimport { VersionResultStudio } from '../model/versionResult';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    SystemServiceInterface,\n    FileRequestParams\n} from './systemServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class SystemService extends BaseService implements SystemServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Checking the availability\n     * Checking the service availability.\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public check(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<CheckResultStudio>;\n    public check(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<CheckResultStudio>>;\n    public check(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<CheckResultStudio>>;\n    public check(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n\n        let localVarHeaders = this.defaultHeaders;\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/system/check`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<CheckResultStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Getting the documentation\n     * Getting the file with this service documentation.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public file(requestParameters: FileRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/html' | 'text/plain' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<string>;\n    public file(requestParameters: FileRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/html' | 'text/plain' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<string>>;\n    public file(requestParameters: FileRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/html' | 'text/plain' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<string>>;\n    public file(requestParameters: FileRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/html' | 'text/plain' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const filename = requestParameters?.filename;\n        if (filename === null || filename === undefined) {\n            throw new Error('Required parameter filename was null or undefined when calling file.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'text/html',\n            'text/plain',\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/file/${this.configuration.encodeParam({name: \"filename\", value: filename, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<string>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Getting the service version\n     * Getting the service version.\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public version(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<VersionResultStudio>;\n    public version(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<VersionResultStudio>>;\n    public version(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<VersionResultStudio>>;\n    public version(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n\n        let localVarHeaders = this.defaultHeaders;\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/system/version`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<VersionResultStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { General400Studio } from '../model/general400';\n// @ts-ignore\nimport { General402Studio } from '../model/general402';\n// @ts-ignore\nimport { General403Studio } from '../model/general403';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n// @ts-ignore\nimport { TableCustomfieldsColumnTypeStudio } from '../model/tableCustomfieldsColumnType';\n// @ts-ignore\nimport { TableTransportColumnTypeStudio } from '../model/tableTransportColumnType';\n// @ts-ignore\nimport { TableTransportFilterListStudio } from '../model/tableTransportFilterList';\n// @ts-ignore\nimport { TableTransportListStudio } from '../model/tableTransportList';\n// @ts-ignore\nimport { TableTransportMetricsFilterListStudio } from '../model/tableTransportMetricsFilterList';\n// @ts-ignore\nimport { TableTransportMetricsStudio } from '../model/tableTransportMetrics';\n// @ts-ignore\nimport { TransportStudio } from '../model/transport';\n// @ts-ignore\nimport { WebTransportGeopointListStudio } from '../model/webTransportGeopointList';\n// @ts-ignore\nimport { WebTransportStudio } from '../model/webTransport';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    TransportsServiceInterface,\n    CreateTransportRequestParams,\n    DeleteTransportRequestParams,\n    DeleteTransportsBatchRequestParams,\n    DisableTransportsBatchRequestParams,\n    EnableTransportsBatchRequestParams,\n    ReadTransportRequestParams,\n    ReadTransportsGeopointsRequestParams,\n    ReadTransportsMetricsRequestParams,\n    ReadTransportsTableRequestParams,\n    UpdateTransportRequestParams\n} from './transportsServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class TransportsService extends BaseService implements TransportsServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Create transport\n     * Creating a transport.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createTransport(requestParameters: CreateTransportRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebTransportStudio>;\n    public createTransport(requestParameters: CreateTransportRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebTransportStudio>>;\n    public createTransport(requestParameters: CreateTransportRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebTransportStudio>>;\n    public createTransport(requestParameters: CreateTransportRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling createTransport.');\n        }\n        const transportStudio = requestParameters?.transportStudio;\n        if (transportStudio === null || transportStudio === undefined) {\n            throw new Error('Required parameter transportStudio was null or undefined when calling createTransport.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/transports`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebTransportStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: transportStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Remove transport\n     * Removing a transport by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteTransport(requestParameters: DeleteTransportRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteTransport(requestParameters: DeleteTransportRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteTransport(requestParameters: DeleteTransportRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteTransport(requestParameters: DeleteTransportRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteTransport.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling deleteTransport.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/transports/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Delete transports (batch)\n     * Removing transports from the file.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteTransportsBatch(requestParameters: DeleteTransportsBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteTransportsBatch(requestParameters: DeleteTransportsBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteTransportsBatch(requestParameters: DeleteTransportsBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteTransportsBatch(requestParameters: DeleteTransportsBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteTransportsBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling deleteTransportsBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/transports/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Disable transports\n     * Disable transports in the calculation.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public disableTransportsBatch(requestParameters: DisableTransportsBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public disableTransportsBatch(requestParameters: DisableTransportsBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public disableTransportsBatch(requestParameters: DisableTransportsBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public disableTransportsBatch(requestParameters: DisableTransportsBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling disableTransportsBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling disableTransportsBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/transports/batch/ability`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Enable transports\n     * Enable transports in the calculation.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public enableTransportsBatch(requestParameters: EnableTransportsBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public enableTransportsBatch(requestParameters: EnableTransportsBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public enableTransportsBatch(requestParameters: EnableTransportsBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public enableTransportsBatch(requestParameters: EnableTransportsBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling enableTransportsBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling enableTransportsBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/transports/batch/ability`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Reading transport\n     * Getting transport information by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readTransport(requestParameters: ReadTransportRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebTransportStudio>;\n    public readTransport(requestParameters: ReadTransportRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebTransportStudio>>;\n    public readTransport(requestParameters: ReadTransportRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebTransportStudio>>;\n    public readTransport(requestParameters: ReadTransportRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readTransport.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling readTransport.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/transports/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebTransportStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Transport geopoints\n     * Getting a geopoints.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readTransportsGeopoints(requestParameters: ReadTransportsGeopointsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebTransportGeopointListStudio>;\n    public readTransportsGeopoints(requestParameters: ReadTransportsGeopointsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebTransportGeopointListStudio>>;\n    public readTransportsGeopoints(requestParameters: ReadTransportsGeopointsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebTransportGeopointListStudio>>;\n    public readTransportsGeopoints(requestParameters: ReadTransportsGeopointsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readTransportsGeopoints.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const tableTransportFilterListStudio = requestParameters?.tableTransportFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/transports/batch/geopoints`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebTransportGeopointListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableTransportFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Transport metrics\n     * Calculate general metrics for selected transports.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readTransportsMetrics(requestParameters: ReadTransportsMetricsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableTransportMetricsStudio>;\n    public readTransportsMetrics(requestParameters: ReadTransportsMetricsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableTransportMetricsStudio>>;\n    public readTransportsMetrics(requestParameters: ReadTransportsMetricsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableTransportMetricsStudio>>;\n    public readTransportsMetrics(requestParameters: ReadTransportsMetricsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readTransportsMetrics.');\n        }\n        const tableTransportMetricsFilterListStudio = requestParameters?.tableTransportMetricsFilterListStudio;\n        if (tableTransportMetricsFilterListStudio === null || tableTransportMetricsFilterListStudio === undefined) {\n            throw new Error('Required parameter tableTransportMetricsFilterListStudio was null or undefined when calling readTransportsMetrics.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/transports/batch/metrics`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableTransportMetricsStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableTransportMetricsFilterListStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Transport list\n     * Getting a transport list.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readTransportsTable(requestParameters: ReadTransportsTableRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableTransportListStudio>;\n    public readTransportsTable(requestParameters: ReadTransportsTableRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableTransportListStudio>>;\n    public readTransportsTable(requestParameters: ReadTransportsTableRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableTransportListStudio>>;\n    public readTransportsTable(requestParameters: ReadTransportsTableRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readTransportsTable.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const sortField = requestParameters?.sortField;\n        const sortCustomfield = requestParameters?.sortCustomfield;\n        const sortDirection = requestParameters?.sortDirection;\n        const tableTransportFilterListStudio = requestParameters?.tableTransportFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortField, 'sort_field');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortCustomfield, 'sort_customfield');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortDirection, 'sort_direction');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/transports/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableTransportListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableTransportFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Update transport\n     * Updating a transport by its key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updateTransport(requestParameters: UpdateTransportRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebTransportStudio>;\n    public updateTransport(requestParameters: UpdateTransportRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebTransportStudio>>;\n    public updateTransport(requestParameters: UpdateTransportRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebTransportStudio>>;\n    public updateTransport(requestParameters: UpdateTransportRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling updateTransport.');\n        }\n        const transportStudio = requestParameters?.transportStudio;\n        if (transportStudio === null || transportStudio === undefined) {\n            throw new Error('Required parameter transportStudio was null or undefined when calling updateTransport.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/transports`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebTransportStudio>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: transportStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { General400Studio } from '../model/general400';\n// @ts-ignore\nimport { General402Studio } from '../model/general402';\n// @ts-ignore\nimport { General403Studio } from '../model/general403';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n// @ts-ignore\nimport { TableCustomfieldsColumnTypeStudio } from '../model/tableCustomfieldsColumnType';\n// @ts-ignore\nimport { TableRoundtripColumnTypeStudio } from '../model/tableRoundtripColumnType';\n// @ts-ignore\nimport { TableRoundtripFilterListStudio } from '../model/tableRoundtripFilterList';\n// @ts-ignore\nimport { TableRoundtripListStudio } from '../model/tableRoundtripList';\n// @ts-ignore\nimport { TableRoundtripMetricsFilterListStudio } from '../model/tableRoundtripMetricsFilterList';\n// @ts-ignore\nimport { TableRoundtripMetricsStudio } from '../model/tableRoundtripMetrics';\n// @ts-ignore\nimport { TableTripColumnTypeStudio } from '../model/tableTripColumnType';\n// @ts-ignore\nimport { TableTripFilterListStudio } from '../model/tableTripFilterList';\n// @ts-ignore\nimport { TableTripListStudio } from '../model/tableTripList';\n// @ts-ignore\nimport { TableTripMetricsFilterListStudio } from '../model/tableTripMetricsFilterList';\n// @ts-ignore\nimport { TableTripMetricsStudio } from '../model/tableTripMetrics';\n// @ts-ignore\nimport { TableTripStopColumnTypeStudio } from '../model/tableTripStopColumnType';\n// @ts-ignore\nimport { TableTripStopFilterListStudio } from '../model/tableTripStopFilterList';\n// @ts-ignore\nimport { TableTripStopListStudio } from '../model/tableTripStopList';\n// @ts-ignore\nimport { TrackListCustomStudio } from '../model/trackListCustom';\n// @ts-ignore\nimport { TrackListStudio } from '../model/trackList';\n// @ts-ignore\nimport { TrackTypeStudio } from '../model/trackType';\n// @ts-ignore\nimport { TripStudio } from '../model/trip';\n// @ts-ignore\nimport { WebTripChartListStudio } from '../model/webTripChartList';\n// @ts-ignore\nimport { WebTripStudio } from '../model/webTrip';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    TripsServiceInterface,\n    ApproveTripsBatchRequestParams,\n    CreateTripRequestParams,\n    DeleteCustomTracksRequestParams,\n    DeleteTripRequestParams,\n    DeleteTripsBatchRequestParams,\n    LoadCustomTracksRequestParams,\n    ReadRoundtripsMetricsRequestParams,\n    ReadRoundtripsTableRequestParams,\n    ReadTripRequestParams,\n    ReadTripStopsRequestParams,\n    ReadTripsChartsRequestParams,\n    ReadTripsMetricsRequestParams,\n    ReadTripsTableRequestParams,\n    ReadTripsTracksRequestParams,\n    RejectTripsBatchRequestParams,\n    UpdateTripRequestParams\n} from './tripsServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class TripsService extends BaseService implements TripsServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Approve trips (batch)\n     * Batch approve trips. Sets the attribute &#x60;TRIP_VERIFIED &#x3D; false&#x60; for each trip. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public approveTripsBatch(requestParameters: ApproveTripsBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public approveTripsBatch(requestParameters: ApproveTripsBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public approveTripsBatch(requestParameters: ApproveTripsBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public approveTripsBatch(requestParameters: ApproveTripsBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling approveTripsBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling approveTripsBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/trips/batch/verification`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Trip create\n     * Creating a trip.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createTrip(requestParameters: CreateTripRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebTripStudio>;\n    public createTrip(requestParameters: CreateTripRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebTripStudio>>;\n    public createTrip(requestParameters: CreateTripRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebTripStudio>>;\n    public createTrip(requestParameters: CreateTripRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling createTrip.');\n        }\n        const tripStudio = requestParameters?.tripStudio;\n        if (tripStudio === null || tripStudio === undefined) {\n            throw new Error('Required parameter tripStudio was null or undefined when calling createTrip.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/trips`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebTripStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tripStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Remove custom tracks\n     * Remove custom all tracks.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteCustomTracks(requestParameters: DeleteCustomTracksRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteCustomTracks(requestParameters: DeleteCustomTracksRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteCustomTracks(requestParameters: DeleteCustomTracksRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteCustomTracks(requestParameters: DeleteCustomTracksRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteCustomTracks.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/trips/batch/tracks-custom`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Delete trip\n     * Removing a trip by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteTrip(requestParameters: DeleteTripRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteTrip(requestParameters: DeleteTripRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteTrip(requestParameters: DeleteTripRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteTrip(requestParameters: DeleteTripRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteTrip.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling deleteTrip.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/trips/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Delete trips (batch)\n     * Removing trips from the wave.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteTripsBatch(requestParameters: DeleteTripsBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteTripsBatch(requestParameters: DeleteTripsBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteTripsBatch(requestParameters: DeleteTripsBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteTripsBatch(requestParameters: DeleteTripsBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling deleteTripsBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling deleteTripsBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/trips/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Load custom tracks\n     * Load custom tracks.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public loadCustomTracks(requestParameters: LoadCustomTracksRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public loadCustomTracks(requestParameters: LoadCustomTracksRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public loadCustomTracks(requestParameters: LoadCustomTracksRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public loadCustomTracks(requestParameters: LoadCustomTracksRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling loadCustomTracks.');\n        }\n        const trackListCustomStudio = requestParameters?.trackListCustomStudio;\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/trips/batch/tracks-custom`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: trackListCustomStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Roundrips metrics\n     * Calculate general metrics for selected roundrips.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readRoundtripsMetrics(requestParameters: ReadRoundtripsMetricsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableRoundtripMetricsStudio>;\n    public readRoundtripsMetrics(requestParameters: ReadRoundtripsMetricsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableRoundtripMetricsStudio>>;\n    public readRoundtripsMetrics(requestParameters: ReadRoundtripsMetricsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableRoundtripMetricsStudio>>;\n    public readRoundtripsMetrics(requestParameters: ReadRoundtripsMetricsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readRoundtripsMetrics.');\n        }\n        const tableRoundtripMetricsFilterListStudio = requestParameters?.tableRoundtripMetricsFilterListStudio;\n        if (tableRoundtripMetricsFilterListStudio === null || tableRoundtripMetricsFilterListStudio === undefined) {\n            throw new Error('Required parameter tableRoundtripMetricsFilterListStudio was null or undefined when calling readRoundtripsMetrics.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/roundtrips/batch/metrics`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableRoundtripMetricsStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableRoundtripMetricsFilterListStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Reading roundrips (table)\n     * Getting a roundrips list.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readRoundtripsTable(requestParameters: ReadRoundtripsTableRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableRoundtripListStudio>;\n    public readRoundtripsTable(requestParameters: ReadRoundtripsTableRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableRoundtripListStudio>>;\n    public readRoundtripsTable(requestParameters: ReadRoundtripsTableRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableRoundtripListStudio>>;\n    public readRoundtripsTable(requestParameters: ReadRoundtripsTableRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readRoundtripsTable.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const sortField = requestParameters?.sortField;\n        const sortCustomfield = requestParameters?.sortCustomfield;\n        const sortDirection = requestParameters?.sortDirection;\n        const tableRoundtripFilterListStudio = requestParameters?.tableRoundtripFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortField, 'sort_field');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortCustomfield, 'sort_customfield');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortDirection, 'sort_direction');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/roundtrips/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableRoundtripListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableRoundtripFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Read trip\n     * Getting trip information by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readTrip(requestParameters: ReadTripRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebTripStudio>;\n    public readTrip(requestParameters: ReadTripRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebTripStudio>>;\n    public readTrip(requestParameters: ReadTripRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebTripStudio>>;\n    public readTrip(requestParameters: ReadTripRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readTrip.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling readTrip.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/trips/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebTripStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Trip stops list\n     * Getting a trip stops list.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readTripStops(requestParameters: ReadTripStopsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableTripStopListStudio>;\n    public readTripStops(requestParameters: ReadTripStopsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableTripStopListStudio>>;\n    public readTripStops(requestParameters: ReadTripStopsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableTripStopListStudio>>;\n    public readTripStops(requestParameters: ReadTripStopsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readTripStops.');\n        }\n        const essenceKey = requestParameters?.essenceKey;\n        if (essenceKey === null || essenceKey === undefined) {\n            throw new Error('Required parameter essenceKey was null or undefined when calling readTripStops.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const sortField = requestParameters?.sortField;\n        const sortCustomfield = requestParameters?.sortCustomfield;\n        const sortDirection = requestParameters?.sortDirection;\n        const tableTripStopFilterListStudio = requestParameters?.tableTripStopFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortField, 'sort_field');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortCustomfield, 'sort_customfield');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortDirection, 'sort_direction');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/trips/${this.configuration.encodeParam({name: \"essenceKey\", value: essenceKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/stops/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableTripStopListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableTripStopFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Trips chart\n     * Getting a trips for chart.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readTripsCharts(requestParameters: ReadTripsChartsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebTripChartListStudio>;\n    public readTripsCharts(requestParameters: ReadTripsChartsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebTripChartListStudio>>;\n    public readTripsCharts(requestParameters: ReadTripsChartsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebTripChartListStudio>>;\n    public readTripsCharts(requestParameters: ReadTripsChartsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readTripsCharts.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const sortField = requestParameters?.sortField;\n        const sortDirection = requestParameters?.sortDirection;\n        const tableTripFilterListStudio = requestParameters?.tableTripFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortField, 'sort_field');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortDirection, 'sort_direction');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/trips/batch/charts`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebTripChartListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableTripFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Trips metrics\n     * Calculate general metrics for selected trips.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readTripsMetrics(requestParameters: ReadTripsMetricsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableTripMetricsStudio>;\n    public readTripsMetrics(requestParameters: ReadTripsMetricsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableTripMetricsStudio>>;\n    public readTripsMetrics(requestParameters: ReadTripsMetricsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableTripMetricsStudio>>;\n    public readTripsMetrics(requestParameters: ReadTripsMetricsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readTripsMetrics.');\n        }\n        const tableTripMetricsFilterListStudio = requestParameters?.tableTripMetricsFilterListStudio;\n        if (tableTripMetricsFilterListStudio === null || tableTripMetricsFilterListStudio === undefined) {\n            throw new Error('Required parameter tableTripMetricsFilterListStudio was null or undefined when calling readTripsMetrics.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/trips/batch/metrics`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableTripMetricsStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableTripMetricsFilterListStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Reading trips (table)\n     * Getting a trips list.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readTripsTable(requestParameters: ReadTripsTableRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TableTripListStudio>;\n    public readTripsTable(requestParameters: ReadTripsTableRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TableTripListStudio>>;\n    public readTripsTable(requestParameters: ReadTripsTableRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TableTripListStudio>>;\n    public readTripsTable(requestParameters: ReadTripsTableRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readTripsTable.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const sortField = requestParameters?.sortField;\n        const sortCustomfield = requestParameters?.sortCustomfield;\n        const sortDirection = requestParameters?.sortDirection;\n        const tableTripFilterListStudio = requestParameters?.tableTripFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortField, 'sort_field');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortCustomfield, 'sort_customfield');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>sortDirection, 'sort_direction');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/trips/batch/table`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TableTripListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableTripFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Trip tracks\n     * Getting a tracks.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readTripsTracks(requestParameters: ReadTripsTracksRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<TrackListStudio>;\n    public readTripsTracks(requestParameters: ReadTripsTracksRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<TrackListStudio>>;\n    public readTripsTracks(requestParameters: ReadTripsTracksRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<TrackListStudio>>;\n    public readTripsTracks(requestParameters: ReadTripsTracksRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling readTripsTracks.');\n        }\n        const tracksType = requestParameters?.tracksType;\n        if (tracksType === null || tracksType === undefined) {\n            throw new Error('Required parameter tracksType was null or undefined when calling readTripsTracks.');\n        }\n        const offset = requestParameters?.offset;\n        const limit = requestParameters?.limit;\n        const tableTripFilterListStudio = requestParameters?.tableTripFilterListStudio;\n\n        let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>offset, 'offset');\n        localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n          <any>limit, 'limit');\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/trips/batch/tracks/${this.configuration.encodeParam({name: \"tracksType\", value: tracksType, in: \"path\", style: \"simple\", explode: false, dataType: \"TrackTypeStudio\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<TrackListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tableTripFilterListStudio,\n                params: localVarQueryParameters,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Reject trips (batch)\n     * Batch reject trips. Sets the attribute &#x60;TRIP_VERIFIED &#x3D; false&#x60; for each trip. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public rejectTripsBatch(requestParameters: RejectTripsBatchRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public rejectTripsBatch(requestParameters: RejectTripsBatchRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public rejectTripsBatch(requestParameters: RejectTripsBatchRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public rejectTripsBatch(requestParameters: RejectTripsBatchRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling rejectTripsBatch.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling rejectTripsBatch.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/trips/batch/verification`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Trip update\n     * Updating a trip by key.\n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updateTrip(requestParameters: UpdateTripRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebTripStudio>;\n    public updateTrip(requestParameters: UpdateTripRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebTripStudio>>;\n    public updateTrip(requestParameters: UpdateTripRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebTripStudio>>;\n    public updateTrip(requestParameters: UpdateTripRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const fileKey = requestParameters?.fileKey;\n        if (fileKey === null || fileKey === undefined) {\n            throw new Error('Required parameter fileKey was null or undefined when calling updateTrip.');\n        }\n        const tripStudio = requestParameters?.tripStudio;\n        if (tripStudio === null || tripStudio === undefined) {\n            throw new Error('Required parameter tripStudio was null or undefined when calling updateTrip.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/experiments/${this.configuration.encodeParam({name: \"fileKey\", value: fileKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}/trips`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<WebTripStudio>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: tripStudio,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional }                      from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n         HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n        }       from '@angular/common/http';\nimport { CustomHttpParameterCodec }                          from '../encoder';\nimport { Observable }                                        from 'rxjs';\n\n// @ts-ignore\nimport { General400Studio } from '../model/general400';\n// @ts-ignore\nimport { General402Studio } from '../model/general402';\n// @ts-ignore\nimport { General403Studio } from '../model/general403';\n// @ts-ignore\nimport { General404Studio } from '../model/general404';\n// @ts-ignore\nimport { General429Studio } from '../model/general429';\n// @ts-ignore\nimport { General500Studio } from '../model/general500';\n// @ts-ignore\nimport { SettingsKeyListStudio } from '../model/settingsKeyList';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS }                     from '../variables';\nimport { Configuration }                                     from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n    UserServiceInterface,\n    CreateUserSettingsRequestParams,\n    DeleteUserSettingsRequestParams,\n    ReadUserSettingsRequestParams,\n    SetUserSettingsActiveKeyRequestParams,\n    UpdateUserSettingsRequestParams\n} from './userServiceInterface';\n\n\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class UserService extends BaseService implements UserServiceInterface {\n\n    constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n        super(basePath, configuration);\n    }\n\n    /**\n     * Create user settings\n     * Create user settings. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public createUserSettings(requestParameters: CreateUserSettingsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<{ [key: string]: any; }>;\n    public createUserSettings(requestParameters: CreateUserSettingsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<{ [key: string]: any; }>>;\n    public createUserSettings(requestParameters: CreateUserSettingsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<{ [key: string]: any; }>>;\n    public createUserSettings(requestParameters: CreateUserSettingsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const settingsKey = requestParameters?.settingsKey;\n        if (settingsKey === null || settingsKey === undefined) {\n            throw new Error('Required parameter settingsKey was null or undefined when calling createUserSettings.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling createUserSettings.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/user/${this.configuration.encodeParam({name: \"settingsKey\", value: settingsKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<{ [key: string]: any; }>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Delete user settings\n     * Delete user settings. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public deleteUserSettings(requestParameters: DeleteUserSettingsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any>;\n    public deleteUserSettings(requestParameters: DeleteUserSettingsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<any>>;\n    public deleteUserSettings(requestParameters: DeleteUserSettingsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<any>>;\n    public deleteUserSettings(requestParameters: DeleteUserSettingsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const settingsKey = requestParameters?.settingsKey;\n        if (settingsKey === null || settingsKey === undefined) {\n            throw new Error('Required parameter settingsKey was null or undefined when calling deleteUserSettings.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/user/${this.configuration.encodeParam({name: \"settingsKey\", value: settingsKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<any>('delete', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Reading user settings list\n     * Reading the list of user settings keys. \n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public listUserSettings(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<SettingsKeyListStudio>;\n    public listUserSettings(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<SettingsKeyListStudio>>;\n    public listUserSettings(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<SettingsKeyListStudio>>;\n    public listUserSettings(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/user`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<SettingsKeyListStudio>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Reading user settings\n     * Reading user settings. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public readUserSettings(requestParameters: ReadUserSettingsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<{ [key: string]: any; }>;\n    public readUserSettings(requestParameters: ReadUserSettingsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<{ [key: string]: any; }>>;\n    public readUserSettings(requestParameters: ReadUserSettingsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<{ [key: string]: any; }>>;\n    public readUserSettings(requestParameters: ReadUserSettingsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const settingsKey = requestParameters?.settingsKey;\n        if (settingsKey === null || settingsKey === undefined) {\n            throw new Error('Required parameter settingsKey was null or undefined when calling readUserSettings.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/user/${this.configuration.encodeParam({name: \"settingsKey\", value: settingsKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<{ [key: string]: any; }>('get', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Setting the active user settings key\n     * Setting the active user settings key. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public setUserSettingsActiveKey(requestParameters: SetUserSettingsActiveKeyRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<SettingsKeyListStudio>;\n    public setUserSettingsActiveKey(requestParameters: SetUserSettingsActiveKeyRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<SettingsKeyListStudio>>;\n    public setUserSettingsActiveKey(requestParameters: SetUserSettingsActiveKeyRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<SettingsKeyListStudio>>;\n    public setUserSettingsActiveKey(requestParameters: SetUserSettingsActiveKeyRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const body = requestParameters?.body;\n        if (body === null || body === undefined) {\n            throw new Error('Required parameter body was null or undefined when calling setUserSettingsActiveKey.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/user`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<SettingsKeyListStudio>('post', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: body,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n    /**\n     * Update user settings\n     * Update user settings. \n     * @param requestParameters\n     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n     * @param reportProgress flag to report request and response progress.\n     */\n    public updateUserSettings(requestParameters: UpdateUserSettingsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<{ [key: string]: any; }>;\n    public updateUserSettings(requestParameters: UpdateUserSettingsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<{ [key: string]: any; }>>;\n    public updateUserSettings(requestParameters: UpdateUserSettingsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<{ [key: string]: any; }>>;\n    public updateUserSettings(requestParameters: UpdateUserSettingsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n        const settingsKey = requestParameters?.settingsKey;\n        if (settingsKey === null || settingsKey === undefined) {\n            throw new Error('Required parameter settingsKey was null or undefined when calling updateUserSettings.');\n        }\n        const requestBody = requestParameters?.requestBody;\n        if (requestBody === null || requestBody === undefined) {\n            throw new Error('Required parameter requestBody was null or undefined when calling updateUserSettings.');\n        }\n\n        let localVarHeaders = this.defaultHeaders;\n\n        // authentication (ApiKeyAuth) required\n        localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n        const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n            'application/json'\n        ]);\n        if (localVarHttpHeaderAcceptSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n        }\n\n        const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n        const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n        // to determine the Content-Type header\n        const consumes: string[] = [\n            'application/json'\n        ];\n        const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n        if (httpContentTypeSelected !== undefined) {\n            localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n        }\n\n        let responseType_: 'text' | 'json' | 'blob' = 'json';\n        if (localVarHttpHeaderAcceptSelected) {\n            if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n                responseType_ = 'text';\n            } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n                responseType_ = 'json';\n            } else {\n                responseType_ = 'blob';\n            }\n        }\n\n        let localVarPath = `/studio/settings/user/${this.configuration.encodeParam({name: \"settingsKey\", value: settingsKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n        const { basePath, withCredentials } = this.configuration;\n        return this.httpClient.request<{ [key: string]: any; }>('put', `${basePath}${localVarPath}`,\n            {\n                context: localVarHttpContext,\n                body: requestBody,\n                responseType: <any>responseType_,\n                ...(withCredentials ? { withCredentials } : {}),\n                headers: localVarHeaders,\n                observe: observe,\n                transferCache: localVarTransferCache,\n                reportProgress: reportProgress\n            }\n        );\n    }\n\n}\n","export * from './backupsService';\nimport { BackupsService } from './backupsService';\nexport * from './backupsServiceInterface';\nexport * from './customFieldsService';\nimport { CustomFieldsService } from './customFieldsService';\nexport * from './customFieldsServiceInterface';\nexport * from './customIconsService';\nimport { CustomIconsService } from './customIconsService';\nexport * from './customIconsServiceInterface';\nexport * from './experimentsService';\nimport { ExperimentsService } from './experimentsService';\nexport * from './experimentsServiceInterface';\nexport * from './explorerService';\nimport { ExplorerService } from './explorerService';\nexport * from './explorerServiceInterface';\nexport * from './externalRoutingService';\nimport { ExternalRoutingService } from './externalRoutingService';\nexport * from './externalRoutingServiceInterface';\nexport * from './factsService';\nimport { FactsService } from './factsService';\nexport * from './factsServiceInterface';\nexport * from './hardlinksService';\nimport { HardlinksService } from './hardlinksService';\nexport * from './hardlinksServiceInterface';\nexport * from './locationsService';\nimport { LocationsService } from './locationsService';\nexport * from './locationsServiceInterface';\nexport * from './ordersService';\nimport { OrdersService } from './ordersService';\nexport * from './ordersServiceInterface';\nexport * from './performersService';\nimport { PerformersService } from './performersService';\nexport * from './performersServiceInterface';\nexport * from './systemService';\nimport { SystemService } from './systemService';\nexport * from './systemServiceInterface';\nexport * from './transportsService';\nimport { TransportsService } from './transportsService';\nexport * from './transportsServiceInterface';\nexport * from './tripsService';\nimport { TripsService } from './tripsService';\nexport * from './tripsServiceInterface';\nexport * from './userService';\nimport { UserService } from './userService';\nexport * from './userServiceInterface';\nexport const APIS = [BackupsService, CustomFieldsService, CustomIconsService, ExperimentsService, ExplorerService, ExternalRoutingService, FactsService, HardlinksService, LocationsService, OrdersService, PerformersService, SystemService, TransportsService, TripsService, UserService];\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Actualize settings. \n */\nexport interface ActualizeSettingsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Current date and time according to the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). If not specified, the current time when the request was received by the server is taken. \n     */\n    current_time?: string | null;\n    /**\n     * Acceptable delay. Affects the shift of the right boundaries of hard time windows of orders and time windows of work shifts of performers and transports. \n     */\n    max_delay_duration?: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Attribute.\n */\nexport interface AttributeStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Attribute\\'s key.\n     */\n    key: string;\n    /**\n     * Attribute\\'s value.\n     */\n    value: string;\n    /**\n     * Attribute processing strategy:    * `LASTMILE_REF_TIME` - when sending a task to the scheduler, the value (format [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6)) of the attribute is replaced with a relative time; if the value is not in the format, the calculation stops with the `FAILED` status. \n     */\n    strategy?: string | null;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Process name:   * `PLAN` - planning   * `REPLAN` - replanning   * `ACTUALIZE` - actualization \n */\nexport enum BasicProcessStudio {\n\n    PLAN = 'PLAN',\n\n    REPLAN = 'REPLAN',\n\n    ACTUALIZE = 'ACTUALIZE'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Entity state that determines its relation to the dataset:   * `UNPLANNED` - new entity   * `PLANNED` - the entity is planned in a specific trip at a specific time   * `ASSIGNED` - the entity is assigned to a specific trip without a specific time   * `COMPLETED` - the entity is completed and no longer participates in the calculation   * `ERROR` - the entity contains data errors \n */\nexport enum BasicStateStudio {\n\n    UNPLANNED = 'UNPLANNED',\n\n    PLANNED = 'PLANNED',\n\n    ASSIGNED = 'ASSIGNED',\n\n    COMPLETED = 'COMPLETED',\n\n    ERROR = 'ERROR'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Transport box [compatibilities](#section/Description/Compatibilities).\n */\nexport interface BoxCompatibilitiesStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Width in meters.\n     */\n    width?: number;\n    /**\n     * Height in meters.\n     */\n    height?: number;\n    /**\n     * Length in meters.\n     */\n    length?: number;\n    /**\n     * A list of tags that define a property or requirement. \n     */\n    box_features?: Array<string>;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\nimport { BreakStudio } from './break';\n\n\n/**\n * Rules for accounting for breaks.\n */\nexport interface BreakRulesStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * The condition for the onset and characteristics of a first break.\n     */\n    first: BreakStudio;\n    consecutive?: BreakStudio | null;\n    /**\n     * Type of accounting for time spent moving between locations (total or continuous).\n     */\n    relocating_duration_type?: BreakRulesStudioRelocatingDurationTypeEnum;\n}\nexport enum BreakRulesStudioRelocatingDurationTypeEnum {\n    TOTAL = 'TOTAL',\n    CONTINUOUS = 'CONTINUOUS'\n};\n\n\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * The condition for the onset and characteristics of a break.\n */\nexport interface BreakStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    relocating_duration_sum: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    operating_duration_sum?: string | null;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    duration: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Calculation settings.\n */\nexport interface CalculationSettingsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Max calculation time. The countdown starts from the time when data is uploaded to the server and calculation starts. \n     */\n    max_calculation_time?: string;\n    /**\n     * Max calculation time. The countdown starts from the time when data is uploaded to the server. \n     */\n    max_waiting_time?: string;\n    /**\n     * Calculation result lifetime. The countdown starts from the time when the calculation is completed. \n     */\n    result_ttl?: string;\n    /**\n     * Timezone.\n     */\n    result_timezone?: number;\n    /**\n     * Treat warnings as errors and do not run calculations if at least one entity contains invalid data. \n     */\n    treat_warnings_as_errors?: boolean;\n    /**\n     * Specifies the calculation accuracy in the decimal point sequence number. It equals 3 by default, so the accuracy is 0.001. \n     */\n    precision?: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Calculation status:   * `WAITING` - the calculation is waiting to be launched.   * `IN_PROGRESS` - calculation in progress.   * `FINISHED_IN_TIME` - the calculation completed correctly before the specified maximum time.   * `FINISHED_OUT_OF_TIME` - the calculation ended because the specified time for calculation has expired, which can affect the quality of the result for the worse.   * `CANCELED` - the calculation was canceled because a cancel command was received.   * `CANCELED_BY_TIMEOUT` - the calculation was canceled automatically because the waiting time in the queue was exceeded.   * `CANCELED_BY_QUOTA` - the calculation was canceled because the quota for this calculation type was exceeded.   * `FAILED` - calculation completed with an error. \n */\nexport enum CalculationStatusStudio {\n\n    WAITING = 'WAITING',\n\n    IN_PROGRESS = 'IN_PROGRESS',\n\n    FINISHED_IN_TIME = 'FINISHED_IN_TIME',\n\n    FINISHED_OUT_OF_TIME = 'FINISHED_OUT_OF_TIME',\n\n    CANCELED = 'CANCELED',\n\n    CANCELED_BY_TIMEOUT = 'CANCELED_BY_TIMEOUT',\n\n    CANCELED_BY_QUOTA = 'CANCELED_BY_QUOTA',\n\n    FAILED = 'FAILED'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Cost per capacity element.\n */\nexport interface CapacityCostStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Cost per kilogram, in conventional monetary units.\n     */\n    mass: number;\n    /**\n     * Cost per cubic meter, in conventional monetary units.\n     */\n    volume: number;\n    /**\n     * Cost per unit of additional parameter (A), in conventional monetary units.\n     */\n    capacity_a: number;\n    /**\n     * Cost per unit of additional parameter (B), in conventional monetary units.\n     */\n    capacity_b: number;\n    /**\n     * Cost per unit of additional parameter (C), in conventional monetary units.\n     */\n    capacity_c: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Capacity limits.\n */\nexport interface CapacityLimitStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Weight in kilograms.\n     */\n    mass: number;\n    /**\n     * Volume in cubic meters.\n     */\n    volume: number;\n    /**\n     * Additional parameter (A) for measuring cargoes and boxes in alternative units.\n     */\n    capacity_a: number;\n    /**\n     * Additional parameter (B) for measuring cargoes and boxes in alternative units.\n     */\n    capacity_b: number;\n    /**\n     * Additional parameter (C) for measuring cargoes and boxes in alternative units.\n     */\n    capacity_c: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Capacity change rate for the specified transport type.\n */\nexport interface CapacityMultiplierStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Mass multiplier.\n     */\n    mass?: number;\n    /**\n     * Volume multiplier.\n     */\n    volume?: number;\n    /**\n     * Additional parameter (A) multiplier.\n     */\n    capacity_a?: number;\n    /**\n     * Additional parameter (B) multiplier.\n     */\n    capacity_b?: number;\n    /**\n     * Additional parameter (C) multiplier.\n     */\n    capacity_c?: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Statistics on capacity characteristics (ratio). Cannot be greater than one.\n */\nexport interface CapacityStatisticsLoadStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Loading by mass, in fractions of a unit.\n     */\n    mass: number;\n    /**\n     * Loading by volume, in fractions of a unit.\n     */\n    volume: number;\n    /**\n     * Loading by additional parameter (A), in fractions of a unit.\n     */\n    capacity_a: number;\n    /**\n     * Loading by additional parameter (B), in fractions of a unit.\n     */\n    capacity_b: number;\n    /**\n     * Loading by additional parameter (C), in fractions of a unit.\n     */\n    capacity_c: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Statistics on capacity characteristics (ratio).  It may be more than one.\n */\nexport interface CapacityStatisticsRatioStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Loading by mass, in fractions of a unit.\n     */\n    mass: number;\n    /**\n     * Loading by volume, in fractions of a unit.\n     */\n    volume: number;\n    /**\n     * Loading by additional parameter (A), in fractions of a unit.\n     */\n    capacity_a: number;\n    /**\n     * Loading by additional parameter (B), in fractions of a unit.\n     */\n    capacity_b: number;\n    /**\n     * Loading by additional parameter (C), in fractions of a unit.\n     */\n    capacity_c: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Statistics on capacity characteristics.\n */\nexport interface CapacityStatisticsSumStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Total weight in kilograms.\n     */\n    mass: number;\n    /**\n     * Total volume in cubic meters.\n     */\n    volume: number;\n    /**\n     * Amount for additional parameter (A) for measuring loads in alternative units of measurement.\n     */\n    capacity_a: number;\n    /**\n     * Amount for additional parameter (B) for measuring loads in alternative units of measurement.\n     */\n    capacity_b: number;\n    /**\n     * Amount for additional parameter (C) for measuring loads in alternative units of measurement.\n     */\n    capacity_c: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Capacity characteristics.\n */\nexport interface CapacityStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Weight in kilograms.\n     */\n    mass?: number;\n    /**\n     * Volume in cubic meters.\n     */\n    volume?: number;\n    /**\n     * Additional parameter (A) for measuring cargoes and boxes in alternative units. For example, to account for cargo in pieces (this parameter is equal to one for a cargo and the maximum number of cargo to hold for a box). \n     */\n    capacity_a?: number;\n    /**\n     * Additional parameter (B) for measuring cargoes and boxes in alternative units. \n     */\n    capacity_b?: number;\n    /**\n     * Additional parameter (C) for measuring cargoes and boxes in alternative units. \n     */\n    capacity_c?: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Types of actions with cargo:   * `ADD` - moving cargo into the box   * `REMOVE` - moving cargo from the box \n */\nexport enum CargoActionTypeStudio {\n\n    ADD = 'ADD',\n\n    REMOVE = 'REMOVE'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Information about the `Honest Sign` marking.\n */\nexport interface CargoInvoiceHonestSignStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * The label of the `Honest Sign` marking.\n     */\n    label?: string | null;\n    /**\n     * The product requires the `Honest Sign` marking.\n     */\n    marking_required?: boolean;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Information for printing a receipt.\n */\nexport interface CargoInvoiceReceiptStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * User e-mail address.\n     */\n    email?: string | null;\n    /**\n     * User phone.\n     */\n    phone?: string | null;\n    /**\n     * The document used for payment.\n     */\n    payment_document?: string | null;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Value-added tax (VAT).\n */\nexport enum CargoInvoiceTaxStudio {\n\n    VAT_NA = 'VAT_NA',\n\n    VAT_00 = 'VAT_00',\n\n    VAT_05 = 'VAT_05',\n\n    VAT_07 = 'VAT_07',\n\n    VAT_10 = 'VAT_10',\n\n    VAT_20 = 'VAT_20',\n\n    VAT_22 = 'VAT_22',\n\n    VAT_05_105 = 'VAT_05_105',\n\n    VAT_07_107 = 'VAT_07_107',\n\n    VAT_10_110 = 'VAT_10_110',\n\n    VAT_20_120 = 'VAT_20_120',\n\n    VAT_22_122 = 'VAT_22_122'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * The ability of the cargo to rotate in 90 degree increments around the axes:   * `ALL` - any axes.   * `YAW` - around the Z axis.   * `PITCH` - around the Y axis.   * `ROLL` - around the X axis. \n */\nexport enum CargoRotationTypeStudio {\n\n    ALL = 'ALL',\n\n    YAW = 'YAW',\n\n    PITCH = 'PITCH',\n\n    ROLL = 'ROLL'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Service availability result.\n */\nexport interface CheckResultStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * The current health indicator of the service.   * `0.0` means the service is not ready to perform tasks.   * `1.0` means the service is fully ready to perform tasks. \n     */\n    health: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Penalty for violation of compatibility.\n */\nexport interface CompatibilityPenaltyStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Tag used to determine [compatibility](#section/Description/Compatibilities).\n     */\n    tag: string;\n    /**\n     * Penalty for violation of compatibility for the specified tag. \n     */\n    penalty: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Entity type. Defines the source object with attributes and the target table. \n */\nexport enum CustomfieldEntityTypeStudio {\n\n    LOCATION = 'LOCATION',\n\n    ORDER = 'ORDER',\n\n    DEMAND = 'DEMAND',\n\n    PERFORMER = 'PERFORMER',\n\n    PERFORMER_SHIFT = 'PERFORMER_SHIFT',\n\n    TRANSPORT = 'TRANSPORT',\n\n    TRANSPORT_SHIFT = 'TRANSPORT_SHIFT',\n\n    HARDLINK = 'HARDLINK',\n\n    TRIP = 'TRIP',\n\n    ROUNDTRIP = 'ROUNDTRIP',\n\n    FACT = 'FACT',\n\n    TRIP_STOP = 'TRIP_STOP'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Additional time for the execution of the application by a certain performer. \n */\nexport interface DemandExtraDurationStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * The key of the ticket whose events need to increase the execution time.\n     */\n    demand_key: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    additional_duration: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Demand types:   * `PICKUP` - loading   * `DROP` - unloading   * `WORK` - work at the location   * `PICKUP_TO_BOX` - loading to box   * `DROP_FROM_BOX` - unloading from box \n */\nexport enum DemandTypeStudio {\n\n    PICKUP = 'PICKUP',\n\n    DROP = 'DROP',\n\n    WORK = 'WORK',\n\n    PICKUP_TO_BOX = 'PICKUP_TO_BOX',\n\n    DROP_FROM_BOX = 'DROP_FROM_BOX'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Error type:   * `INCONSISTENT_REFERENCE` - bad reference key    * `UNIQUE_IDS_VIOLATION` - all keys must be unique   * `INVALID_ROUTING_MATRIX` - bad routing matrix dimension   * `INVALID_GEO_PROVIDER` - bad geo provider   * `INVALID_TIME_WINDOW` - bad time window   * `COMPATIBILITY_CARGO_BOX` - no cargo is compatible with any box   * `COMPATIBILITY_TRANSPORT_PERFORMER` - no transport is compatible with any performer   * `COMPATIBILITY_TRANSPORT_LOCATION` - no transport is compatible with any location   * `COMPATIBILITY_ORDER_PERFORMER` - no order is compatible with any performer   * `INCONSISTENT_HARDLINK` - essence key must be only in one hardlink   * `PLANNING_HORIZON_EXCEEDED` -  planning horizon exceeded (difference between earliest and latest timestamp in dataset)   * `MEANINGLESS_RESTRICTIONS` - the specified restrictions do not make sense   * `LOCATION_LIMITS_VIOLATION` - the time windows of the constraint\\'s validity must not overlap and their union must correspond to the location availability window `work_window`; if the `min_cargos`/`min_transports` constraint is specified, then the `max_cargos`/`max_transports` constraint must be specified; the `min_cargos`/`min_transports` constraints must be less than all the `max_cargos`/`max_transports` constraints; the `LOWEST_COST` time selection strategy is specified (currently not supported)   * `PERFORMER_WRR_MUST_BE_SET` - at least one of the fields `rest_rules` or `break_rules` must be set for the work and rest schedule.   * `PERFORMER_WRR_INVALID_REST_COUNT` - the number of rests cannot exceed 14   * `PERFORMER_WRR_INVALID_BREAK_COUNT` - no more than 14 breaks can start between rests   * `PERFORMER_WRR_MEANINGLESS_REST` - the specified rest cannot be inserted   * `PERFORMER_WRR_MEANINGLESS_BREAK` - the specified break cannot be inserted   * `TOO_MANY_WARNINGS` - the number of warnings is greater than 15001   * `UNCLASSIFIED_ERROR` - unclassified error \n */\nexport enum EntityErrorTypeStudio {\n\n    INCONSISTENT_REFERENCE = 'INCONSISTENT_REFERENCE',\n\n    UNIQUE_IDS_VIOLATION = 'UNIQUE_IDS_VIOLATION',\n\n    INVALID_ROUTING_MATRIX = 'INVALID_ROUTING_MATRIX',\n\n    INVALID_GEO_PROVIDER = 'INVALID_GEO_PROVIDER',\n\n    INVALID_TIME_WINDOW = 'INVALID_TIME_WINDOW',\n\n    COMPATIBILITY_CARGO_BOX = 'COMPATIBILITY_CARGO_BOX',\n\n    COMPATIBILITY_TRANSPORT_PERFORMER = 'COMPATIBILITY_TRANSPORT_PERFORMER',\n\n    COMPATIBILITY_TRANSPORT_LOCATION = 'COMPATIBILITY_TRANSPORT_LOCATION',\n\n    COMPATIBILITY_ORDER_PERFORMER = 'COMPATIBILITY_ORDER_PERFORMER',\n\n    INCONSISTENT_HARDLINK = 'INCONSISTENT_HARDLINK',\n\n    PLANNING_HORIZON_EXCEEDED = 'PLANNING_HORIZON_EXCEEDED',\n\n    MEANINGLESS_RESTRICTIONS = 'MEANINGLESS_RESTRICTIONS',\n\n    LOCATION_LIMITS_VIOLATION = 'LOCATION_LIMITS_VIOLATION',\n\n    PERFORMER_WRR_MUST_BE_SET = 'PERFORMER_WRR_MUST_BE_SET',\n\n    PERFORMER_WRR_INVALID_REST_COUNT = 'PERFORMER_WRR_INVALID_REST_COUNT',\n\n    PERFORMER_WRR_INVALID_BREAK_COUNT = 'PERFORMER_WRR_INVALID_BREAK_COUNT',\n\n    PERFORMER_WRR_MEANINGLESS_REST = 'PERFORMER_WRR_MEANINGLESS_REST',\n\n    PERFORMER_WRR_MEANINGLESS_BREAK = 'PERFORMER_WRR_MEANINGLESS_BREAK',\n\n    TOO_MANY_WARNINGS = 'TOO_MANY_WARNINGS',\n\n    UNCLASSIFIED_ERROR = 'UNCLASSIFIED_ERROR'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Entity type.\n */\nexport enum EntityTypeStudio {\n\n    TASK = 'TASK',\n\n    SETTINGS = 'SETTINGS',\n\n    ORDER = 'ORDER',\n\n    ORDER_LINK = 'ORDER_LINK',\n\n    PERFORMER = 'PERFORMER',\n\n    PERFORMER_LINK = 'PERFORMER_LINK',\n\n    TRANSPORT = 'TRANSPORT',\n\n    TRANSPORT_LINK = 'TRANSPORT_LINK',\n\n    HARDLINK = 'HARDLINK',\n\n    HARDLINK_LINK = 'HARDLINK_LINK',\n\n    LOCATION = 'LOCATION',\n\n    LOCATION_LINK = 'LOCATION_LINK',\n\n    BOX = 'BOX',\n\n    BOX_LINK = 'BOX_LINK',\n\n    TRIP = 'TRIP',\n\n    TRIP_LINK = 'TRIP_LINK',\n\n    CARGO = 'CARGO',\n\n    CARGO_LINK = 'CARGO_LINK',\n\n    DEMAND = 'DEMAND',\n\n    DEMAND_LINK = 'DEMAND_LINK',\n\n    EVENT = 'EVENT',\n\n    EVENT_LINK = 'EVENT_LINK',\n\n    PERFORMER_SHIFT = 'PERFORMER_SHIFT',\n\n    PERFORMER_SHIFT_LINK = 'PERFORMER_SHIFT_LINK',\n\n    TRANSPORT_SHIFT = 'TRANSPORT_SHIFT',\n\n    TRANSPORT_SHIFT_LINK = 'TRANSPORT_SHIFT_LINK',\n\n    FACT = 'FACT',\n\n    FACT_LINK = 'FACT_LINK'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Warning type:   * `NO_AVAILABLE_TRANSPORT` - the order cannot be fulfilled, since there is no available (by shift limitations) transport   * `NO_AVAILABLE_PERFORMER` - the order cannot be fulfilled, since there is not a single available (by shift limitations) performer   * `NO_COMPATIBLE_TRANSPORT` - the order cannot be completed, since there is not a single compatible (in terms of capacity and \\\\ or compatibility tags) transport   * `NO_COMPATIBLE_PERFORMER` - the order cannot be completed, since there is not a single compatible (by compatibility tags) performer   * `NO_AVAILABLE_ORDER_FOR_TRANSPORT` - the transport is useless, since there are no compatible (by capacity and/or compatibility tags) orders   * `NO_AVAILABLE_ORDER_FOR_PERFORMER` - the performer is useless, since there are no compatible (by capacity and/or compatibility tags) orders   * `NO_COMPATIBLE_ORDER_FOR_TRANSPORT` - the transport is useless, since there are no available (by shift restrictions) orders   * `NO_COMPATIBLE_ORDER_FOR_PERFORMER` - the performer is useless, since there are no available (by shift restrictions) orders   * `PICKUP_AND_DROP_VIOLATION` - for each cargo within the order there must be exactly one loading and exactly one unloading (except for `PICKUP_TO_BOX` and `DROP_FROM_BOX` orders)   * `PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_ORDER` - for each cargo within the order, loading must go before unloading (`precedence_in_order`)   * `PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_TRIP` - conflicting requirements for the precedence of orders were specified (`precedence_in_trip`)   * `VIOLATION_PRECEDENCE_IN_TRIP_AND_ORDER` - requirements for the precedence of orders in the trip (`precedence_in_trip`) and in the order (` precedence_in_order`) contradict each other   * `TIME_WINDOW_VIOLATION` - the start time of the time window is later than the end time of the window or time window exceeds the maximum allowed   * `DURATION_VIOLATION` - duration does not correspond to the allowed interval   * `ORDER_WINDOWS_INTERSECTION_VIOLATION` - soft windows should not go beyond the boundaries of the hard window   * `PERFORMER_SHIFTS_INTERSECTION_VIOLATION` - time ranges of the performer\\'s work shifts must not overlap, the beginning of the next window cannot be equal to the end of the previous one   * `TRANSPORT_SHIFTS_INTERSECTION_VIOLATION` - time ranges of transport work shifts should not overlap, the beginning of the next window cannot be equal to the end of the previous one   * `LOCATION_WINDOWS_INTERSECTION_VIOLATION` - time ranges of working windows of one location should not intersect, the beginning of the next window cannot be equal to the end of the previous one   * `NO_TRANSPORT_BOXES` - if there are orders with cargo, then the transport must have at least one box   * `MAX_CAPACITY_VIOLATION` - `max_capacity` limit exceeds the total capacity of all boxes or set for only one box or less than the capacity of some box   * `MAX_BOXES_VIOLATION` - limit `max_boxes` is greater than or equal to the total number of boxes or specified for one box or equal to zero   * `TOO_MANY_CARGOS_FOR_DROP_VIOLATION` - the number of loads for an order of the` DROP` / `DROP_FROM_BOX` type must be no more than one   * `EMPTY_CARGOES_LIST` - empty list of loads for orders of type `DROP` / `DROP_FROM_BOX` / `PICKUP` / `PICKUP_TO_BOX`   * `CARGO_WORK_VIOLATION` - for a `WORK` order, the cargo list must be empty   * `GEODATA_TIME_WINDOW_VIOLATION` - the planning horizon exceeds the maximum available value   * `SHIFT_RESTRICTIONS_COULD_BE_MORE_PRECISE` - the `working_window` of the performer\\'s shift does not lie entirely inside the availability window `availability_window`   * `DURATION_DOES_NOT_FIT_INTO_HARD_WINDOW` - the duration of the event does not fit into the hard time window   * `DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW` - the duration of the event does not fit into the soft time window   * `EXTRA_DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW` - additional time for demand execution does not fit into the soft time window   * `MAX_CALCULATION_TIME_VIOLATION` - the maximum allowable calculation time has been exceeded   * `MAX_WAITING_TIME_VIOLATION` - the maximum allowable waiting time in queue has been exceeded   * `INVALID_HARDLINK` - it is impossible to assign an order with demands with the `WORK` type to transport   * `CARGO_BOX_VIOLATION` - for requests of all types except `DROP_FROM_BOX` the key of the box where the cargo is located must be empty   * `CARGO_MULTIBOX_VIOLATION` - for a demand of type `DROP_FROM_BOX` the indicated cargos are in boxes of different transports   * `CARGO_CAPACITY_VIOLATION` - the specified cargo on board exceeds the size of the box in which it is located   * `CARGO_ORDER_VIOLATION` - the cargo specified in the order is not present in orders   * `FEATURE_LIFETIME_VIOLATION` - feature time windows intersect with each other, or the `working_window` of the performer\\'s or transport\\'s shift does not intersect with the feature time window   * `QUOTA_EXCEEDED` - service quota exceeded   * `MAX_LOCATIONS_LIMITS_PENALTY_EXCEEDED` - the resulting solution does not satisfy the `max_locations_limits_penalty` requirement   * `REMOVED_ITEMS_NOT_EMPTY` - during data validation, items were removed from the original dataset, the list of removed items is in the `removed_items` object   * `INCOMPATIBLE_REQUIREMENTS` - incompatible requirements are specified: location load accounting and soft window optimization.   * `UNCLASSIFIED_WARNING` - unclassified warning \n */\nexport enum EntityWarningTypeStudio {\n\n    NO_AVAILABLE_TRANSPORT = 'NO_AVAILABLE_TRANSPORT',\n\n    NO_AVAILABLE_PERFORMER = 'NO_AVAILABLE_PERFORMER',\n\n    NO_COMPATIBLE_TRANSPORT = 'NO_COMPATIBLE_TRANSPORT',\n\n    NO_COMPATIBLE_PERFORMER = 'NO_COMPATIBLE_PERFORMER',\n\n    NO_AVAILABLE_ORDER_FOR_TRANSPORT = 'NO_AVAILABLE_ORDER_FOR_TRANSPORT',\n\n    NO_AVAILABLE_ORDER_FOR_PERFORMER = 'NO_AVAILABLE_ORDER_FOR_PERFORMER',\n\n    NO_COMPATIBLE_ORDER_FOR_TRANSPORT = 'NO_COMPATIBLE_ORDER_FOR_TRANSPORT',\n\n    NO_COMPATIBLE_ORDER_FOR_PERFORMER = 'NO_COMPATIBLE_ORDER_FOR_PERFORMER',\n\n    PICKUP_AND_DROP_VIOLATION = 'PICKUP_AND_DROP_VIOLATION',\n\n    PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_ORDER = 'PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_ORDER',\n\n    PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_TRIP = 'PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_TRIP',\n\n    VIOLATION_PRECEDENCE_IN_TRIP_AND_ORDER = 'VIOLATION_PRECEDENCE_IN_TRIP_AND_ORDER',\n\n    TIME_WINDOW_VIOLATION = 'TIME_WINDOW_VIOLATION',\n\n    DURATION_VIOLATION = 'DURATION_VIOLATION',\n\n    ORDER_WINDOWS_INTERSECTION_VIOLATION = 'ORDER_WINDOWS_INTERSECTION_VIOLATION',\n\n    PERFORMER_SHIFTS_INTERSECTION_VIOLATION = 'PERFORMER_SHIFTS_INTERSECTION_VIOLATION',\n\n    TRANSPORT_SHIFTS_INTERSECTION_VIOLATION = 'TRANSPORT_SHIFTS_INTERSECTION_VIOLATION',\n\n    LOCATION_WINDOWS_INTERSECTION_VIOLATION = 'LOCATION_WINDOWS_INTERSECTION_VIOLATION',\n\n    NO_TRANSPORT_BOXES = 'NO_TRANSPORT_BOXES',\n\n    MAX_CAPACITY_VIOLATION = 'MAX_CAPACITY_VIOLATION',\n\n    MAX_BOXES_VIOLATION = 'MAX_BOXES_VIOLATION',\n\n    TOO_MANY_CARGOS_FOR_DROP_VIOLATION = 'TOO_MANY_CARGOS_FOR_DROP_VIOLATION',\n\n    EMPTY_CARGOES_LIST = 'EMPTY_CARGOES_LIST',\n\n    CARGO_WORK_VIOLATION = 'CARGO_WORK_VIOLATION',\n\n    GEODATA_TIME_WINDOW_VIOLATION = 'GEODATA_TIME_WINDOW_VIOLATION',\n\n    SHIFT_RESTRICTIONS_COULD_BE_MORE_PRECISE = 'SHIFT_RESTRICTIONS_COULD_BE_MORE_PRECISE',\n\n    DURATION_DOES_NOT_FIT_INTO_HARD_WINDOW = 'DURATION_DOES_NOT_FIT_INTO_HARD_WINDOW',\n\n    DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW = 'DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW',\n\n    EXTRA_DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW = 'EXTRA_DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW',\n\n    MAX_CALCULATION_TIME_VIOLATION = 'MAX_CALCULATION_TIME_VIOLATION',\n\n    MAX_WAITING_TIME_VIOLATION = 'MAX_WAITING_TIME_VIOLATION',\n\n    INVALID_HARDLINK = 'INVALID_HARDLINK',\n\n    CARGO_BOX_VIOLATION = 'CARGO_BOX_VIOLATION',\n\n    CARGO_MULTIBOX_VIOLATION = 'CARGO_MULTIBOX_VIOLATION',\n\n    CARGO_CAPACITY_VIOLATION = 'CARGO_CAPACITY_VIOLATION',\n\n    CARGO_ORDER_VIOLATION = 'CARGO_ORDER_VIOLATION',\n\n    FEATURE_LIFETIME_VIOLATION = 'FEATURE_LIFETIME_VIOLATION',\n\n    QUOTA_EXCEEDED = 'QUOTA_EXCEEDED',\n\n    MAX_LOCATIONS_LIMITS_PENALTY_EXCEEDED = 'MAX_LOCATIONS_LIMITS_PENALTY_EXCEEDED',\n\n    REMOVED_ITEMS_NOT_EMPTY = 'REMOVED_ITEMS_NOT_EMPTY',\n\n    INCOMPATIBLE_REQUIREMENTS = 'INCOMPATIBLE_REQUIREMENTS',\n\n    UNCLASSIFIED_WARNING = 'UNCLASSIFIED_WARNING'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Experiment.\n */\nexport interface ExperimentNeighborsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * The key of the previous experiment is in the same folder.\n     */\n    previous_experiment_key?: string | null;\n    /**\n     * The key of the next experiment is in the same folder.\n     */\n    next_experiment_key?: string | null;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Settings for using external extensions to adjust calculations.\n */\nexport interface ExtensionSettingsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Use a third-party calculation adjuster.\n     */\n    enable_extension?: boolean;\n    /**\n     * The address of an external service implementing the Universal Extension API.\n     */\n    extension_url?: string | null;\n    /**\n     * The maximum time to wait for a response from the external service implementing the Universal Extension API (for each request).\n     */\n    request_timeout?: string;\n    /**\n     * The number of attempts to request an external service implementing the Universal Extension API.\n     */\n    retry_attempts?: number;\n    /**\n     * The time between request attempts to an external service implementing the Universal Extension API.\n     */\n    retry_interval?: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Current fact status:   * `NEW` - the fact has been created and is awaiting system processing   * `APPLIED` - the fact has been processed by the system and applied to the data   * `ERROR` - an error occurred while processing the fact; the sender must correct the fact and resubmit \n */\nexport enum FactStatusStudio {\n\n    NEW = 'NEW',\n\n    APPLIED = 'APPLIED',\n\n    ERROR = 'ERROR'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Possible fact types:   * `NEW_LOCATION` - the performer changed his location during the trip   * `ORDER_DONE` - the performer has finished fulfilling the order (or the order has been cancelled), the cargo associated with the order is no longer in the transport box   * `DEMAND_START` - performer started to fulfill the demand   * `DEMAND_DONE` - performer finished to fulfill the demand   * `DEMAND_CANCELED` - the performer canceled the demand   * `TRIP_PRECEDENCE_CHANGED` - the performer changed the precedence of the demands in the trip   * `TRIP_RECEIVED` - the performer has received the trip   * `TRIP_CONFIRMED` - the performer has agreed to perform the trip   * `TRIP_REJECTED` - the performer has refused to perform the trip   * `TRIP_EXECUTING` - the performer has started performing the trip   * `JOB_DONE` - the performer has finished custom job \n */\nexport enum FactTypeStudio {\n\n    NEW_LOCATION = 'NEW_LOCATION',\n\n    ORDER_DONE = 'ORDER_DONE',\n\n    DEMAND_START = 'DEMAND_START',\n\n    DEMAND_DONE = 'DEMAND_DONE',\n\n    DEMAND_CANCELED = 'DEMAND_CANCELED',\n\n    TRIP_PRECEDENCE_CHANGED = 'TRIP_PRECEDENCE_CHANGED',\n\n    TRIP_RECEIVED = 'TRIP_RECEIVED',\n\n    TRIP_CONFIRMED = 'TRIP_CONFIRMED',\n\n    TRIP_REJECTED = 'TRIP_REJECTED',\n\n    TRIP_EXECUTING = 'TRIP_EXECUTING',\n\n    JOB_DONE = 'JOB_DONE'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * The path from the root of the virtual file system to the file in the form of folder and file names. \n */\nexport interface FileNamePathStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * List of folder names from the root of the virtual filesystem.\n     */\n    folder_names: Array<string>;\n    /**\n     * File name.\n     */\n    file_name: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * File specification.\n */\nexport interface FileSpecificationStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * File name.\n     */\n    name: string;\n    /**\n     * File comment.\n     */\n    comment: string | null;\n    /**\n     * Key, unique identifier.\n     */\n    folder_key: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * The name of the column in the table with folders. \n */\nexport enum FilesystemColumnTypeStudio {\n\n    NAME = 'NAME',\n\n    OWNER_COMPANY_KEY = 'OWNER_COMPANY_KEY',\n\n    OWNER_USERNAME = 'OWNER_USERNAME',\n\n    CREATION_DATE = 'CREATION_DATE',\n\n    EXPIRATION_DATE = 'EXPIRATION_DATE',\n\n    FOLDERS_COUNT = 'FOLDERS_COUNT',\n\n    FILES_COUNT = 'FILES_COUNT'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Current folder counters. \n */\nexport interface FolderCountersStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * The number of subfolders.\n     */\n    folders_count: number;\n    /**\n     * The number of files.\n     */\n    files_count: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Element type:   * `ROOT` - root object   * `FOLDER` - folder \n */\nexport enum FolderTypeStudio {\n\n    ROOT = 'ROOT',\n\n    FOLDER = 'FOLDER'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Geographical point.\n */\nexport interface GeopointStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Latitude in degrees.\n     */\n    latitude: number;\n    /**\n     * Longitude in degrees.\n     */\n    longitude: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Type of goal entity. It can be an order or a performer\\\\transport shift. \n */\nexport enum HardlinkElementTypeStudio {\n\n    ORDER = 'ORDER',\n\n    PERFORMER_SHIFT = 'PERFORMER_SHIFT',\n\n    TRANSPORT_SHIFT = 'TRANSPORT_SHIFT'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Sample of loaded data - input task or input task + calculation result.\n */\nexport enum ImportSampleStudio {\n\n    TASK = 'TASK',\n\n    FULL = 'FULL'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Service - source of data import.\n */\nexport enum ImportSourceStudio {\n\n    ACCOUNT = 'ACCOUNT',\n\n    ADMIN = 'ADMIN'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Link to essence.\n */\nexport interface LinkedEssenceStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Essence key, unique identifier.\n     */\n    essence_key: string;\n    /**\n     * Essence type.\n     */\n    essence_type: LinkedEssenceStudioEssenceTypeEnum;\n}\nexport enum LinkedEssenceStudioEssenceTypeEnum {\n    LOCATION = 'LOCATION',\n    ORDER = 'ORDER',\n    ASSIGNED_ORDER = 'ASSIGNED_ORDER',\n    PERFORMER = 'PERFORMER',\n    TRANSPORT = 'TRANSPORT',\n    HARDLINK = 'HARDLINK',\n    TRIP = 'TRIP',\n    FACT = 'FACT',\n    CREW = 'CREW'\n};\n\n\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Compatibilities of [the location with transport](#section/Description/Compatibilities).\n */\nexport interface LocationCompatibilitiesStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * A list of tags that define a property or requirement. \n     */\n    transport_restrictions?: Array<string>;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Limiting the location\\'s ability to serve transport. \n */\nexport interface LocationTransportsLimitStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * The number of transport serviced on average during a specified time window.\n     */\n    count: number;\n    /**\n     * Penalty for violating the `count`.\n     */\n    penalty: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Additional data describing the fact.\n */\nexport interface LoreDemandCancelledStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Order key.\n     */\n    order_key: string;\n    /**\n     * Demand key.\n     */\n    demand_key: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Additional data describing the fact.\n */\nexport interface LoreDemandDoneStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Order key.\n     */\n    order_key: string;\n    /**\n     * Demand key.\n     */\n    demand_key: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Additional data describing the fact.\n */\nexport interface LoreDemandStartStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Order key.\n     */\n    order_key: string;\n    /**\n     * Demand key.\n     */\n    demand_key: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Additional data describing the fact.\n */\nexport interface LoreJobDoneStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Essence key, unique identifier.\n     */\n    job_key: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Additional data describing the fact.\n */\nexport interface LoreOrderDoneStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Order key.\n     */\n    order_key: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Compatibilities of [the order with performers and other orders](#section/Description/Compatibilities).\n */\nexport interface OrderCompatibilitiesStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * A list of tags that define a property or requirement. \n     */\n    order_features?: Array<string>;\n    /**\n     * A list of tags that define a property or requirement. \n     */\n    order_restrictions?: Array<string>;\n    /**\n     * A list of tags that define a property or requirement. \n     */\n    performer_restrictions?: Array<string>;\n    /**\n     * A list of tags that define a property or requirement. \n     */\n    performer_blacklist?: Array<string>;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * The paid period of time is an integral part of the tariff.\n */\nexport interface PerformerTariffConstraintStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Length of the paid period according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    stage_length?: string;\n    /**\n     * Cost within the paid period, monetary unit per second of work. \n     */\n    cost_per_unit?: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Information about removed essences.\n */\nexport interface RemovedItemsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Essences keys list.\n     */\n    location_keys?: Array<string>;\n    /**\n     * Essences count.\n     */\n    location_keys_count?: number;\n    /**\n     * Essences keys list.\n     */\n    order_keys?: Array<string>;\n    /**\n     * Essences count.\n     */\n    order_keys_count?: number;\n    /**\n     * Essences keys list.\n     */\n    performer_keys?: Array<string>;\n    /**\n     * Essences count.\n     */\n    performer_keys_count?: number;\n    /**\n     * Essences keys list.\n     */\n    transport_keys?: Array<string>;\n    /**\n     * Essences count.\n     */\n    transport_keys_count?: number;\n    /**\n     * Essences keys list.\n     */\n    hardlink_keys?: Array<string>;\n    /**\n     * Essences count.\n     */\n    hardlink_keys_count?: number;\n    /**\n     * Essences keys list.\n     */\n    fact_keys?: Array<string>;\n    /**\n     * Essences count.\n     */\n    fact_keys_count?: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Replan strategy.\n */\nexport interface ReplanStrategyStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Activate trip actions reorder.\n     */\n    reorder?: boolean;\n    /**\n     * Ability to plan new orders into existing or new trips (if the `create_new_trips` option is enabled).\n     */\n    plan_new_orders?: boolean;\n    /**\n     * Activate new trips creation.\n     */\n    create_new_trips?: boolean;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * The condition for the onset and characteristics of a rest.\n */\nexport interface RestStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    relocating_duration_sum: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    operating_duration_sum?: string | null;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    duration: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Data error by schema.\n */\nexport interface SchemaErrorStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Target entity identifier.\n     */\n    entity: string | null;\n    /**\n     * Error message.\n     */\n    message: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Service name.\n */\nexport enum ServiceStudio {\n\n    UNIVERSAL = 'UNIVERSAL',\n\n    ROUTING = 'ROUTING',\n\n    ACCOUNT = 'ACCOUNT',\n\n    ADMIN = 'ADMIN',\n\n    STUDIO = 'STUDIO',\n\n    MONITOR = 'MONITOR',\n\n    PACKER = 'PACKER',\n\n    AGRO = 'AGRO',\n\n    REGISTRY = 'REGISTRY',\n\n    SUPPORT = 'SUPPORT'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * List of setting keys with indicating the key of the currently active setting.\n */\nexport interface SettingsKeyListStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * List of setting keys.\n     */\n    settings_keys: Array<string>;\n    /**\n     * Settings key (nullable), unique identifier.\n     */\n    active_key?: string | null;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * The name of the additional column in the table. Used for filters of the `CUSTOMFIELDS` type. \n */\nexport enum TableCustomfieldsColumnTypeStudio {\n\n    DATETIME_0 = 'DATETIME_0',\n\n    DATETIME_1 = 'DATETIME_1',\n\n    DATETIME_2 = 'DATETIME_2',\n\n    DATETIME_3 = 'DATETIME_3',\n\n    DATETIME_4 = 'DATETIME_4',\n\n    DATETIME_5 = 'DATETIME_5',\n\n    DATETIME_6 = 'DATETIME_6',\n\n    DATETIME_7 = 'DATETIME_7',\n\n    DATETIME_8 = 'DATETIME_8',\n\n    DATETIME_9 = 'DATETIME_9',\n\n    INT_0 = 'INT_0',\n\n    INT_1 = 'INT_1',\n\n    INT_2 = 'INT_2',\n\n    INT_3 = 'INT_3',\n\n    INT_4 = 'INT_4',\n\n    INT_5 = 'INT_5',\n\n    INT_6 = 'INT_6',\n\n    INT_7 = 'INT_7',\n\n    INT_8 = 'INT_8',\n\n    INT_9 = 'INT_9',\n\n    FLOAT_0 = 'FLOAT_0',\n\n    FLOAT_1 = 'FLOAT_1',\n\n    FLOAT_2 = 'FLOAT_2',\n\n    FLOAT_3 = 'FLOAT_3',\n\n    FLOAT_4 = 'FLOAT_4',\n\n    FLOAT_5 = 'FLOAT_5',\n\n    FLOAT_6 = 'FLOAT_6',\n\n    FLOAT_7 = 'FLOAT_7',\n\n    FLOAT_8 = 'FLOAT_8',\n\n    FLOAT_9 = 'FLOAT_9',\n\n    DURATION_0 = 'DURATION_0',\n\n    DURATION_1 = 'DURATION_1',\n\n    DURATION_2 = 'DURATION_2',\n\n    DURATION_3 = 'DURATION_3',\n\n    DURATION_4 = 'DURATION_4',\n\n    DURATION_5 = 'DURATION_5',\n\n    DURATION_6 = 'DURATION_6',\n\n    DURATION_7 = 'DURATION_7',\n\n    DURATION_8 = 'DURATION_8',\n\n    DURATION_9 = 'DURATION_9',\n\n    BOOL_0 = 'BOOL_0',\n\n    BOOL_1 = 'BOOL_1',\n\n    BOOL_2 = 'BOOL_2',\n\n    BOOL_3 = 'BOOL_3',\n\n    BOOL_4 = 'BOOL_4',\n\n    BOOL_5 = 'BOOL_5',\n\n    BOOL_6 = 'BOOL_6',\n\n    BOOL_7 = 'BOOL_7',\n\n    BOOL_8 = 'BOOL_8',\n\n    BOOL_9 = 'BOOL_9',\n\n    STRING_0 = 'STRING_0',\n\n    STRING_1 = 'STRING_1',\n\n    STRING_2 = 'STRING_2',\n\n    STRING_3 = 'STRING_3',\n\n    STRING_4 = 'STRING_4',\n\n    STRING_5 = 'STRING_5',\n\n    STRING_6 = 'STRING_6',\n\n    STRING_7 = 'STRING_7',\n\n    STRING_8 = 'STRING_8',\n\n    STRING_9 = 'STRING_9'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Custom fields for table.\n */\nexport interface TableCustomfieldsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * A custom field containing date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format. Supported filter type is `DATETIME_RANGE`. \n     */\n    datetime_0?: string | null;\n    /**\n     * A custom field containing date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format. Supported filter type is `DATETIME_RANGE`. \n     */\n    datetime_1?: string | null;\n    /**\n     * A custom field containing date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format. Supported filter type is `DATETIME_RANGE`. \n     */\n    datetime_2?: string | null;\n    /**\n     * A custom field containing date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format. Supported filter type is `DATETIME_RANGE`. \n     */\n    datetime_3?: string | null;\n    /**\n     * A custom field containing date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format. Supported filter type is `DATETIME_RANGE`. \n     */\n    datetime_4?: string | null;\n    /**\n     * A custom field containing date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format. Supported filter type is `DATETIME_RANGE`. \n     */\n    datetime_5?: string | null;\n    /**\n     * A custom field containing date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format. Supported filter type is `DATETIME_RANGE`. \n     */\n    datetime_6?: string | null;\n    /**\n     * A custom field containing date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format. Supported filter type is `DATETIME_RANGE`. \n     */\n    datetime_7?: string | null;\n    /**\n     * A custom field containing date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format. Supported filter type is `DATETIME_RANGE`. \n     */\n    datetime_8?: string | null;\n    /**\n     * A custom field containing date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format. Supported filter type is `DATETIME_RANGE`. \n     */\n    datetime_9?: string | null;\n    /**\n     * A custom field containing an integer value. Supported filter type is `INT_RANGE`. \n     */\n    int_0?: number | null;\n    /**\n     * A custom field containing an integer value. Supported filter type is `INT_RANGE`. \n     */\n    int_1?: number | null;\n    /**\n     * A custom field containing an integer value. Supported filter type is `INT_RANGE`. \n     */\n    int_2?: number | null;\n    /**\n     * A custom field containing an integer value. Supported filter type is `INT_RANGE`. \n     */\n    int_3?: number | null;\n    /**\n     * A custom field containing an integer value. Supported filter type is `INT_RANGE`. \n     */\n    int_4?: number | null;\n    /**\n     * A custom field containing an integer value. Supported filter type is `INT_RANGE`. \n     */\n    int_5?: number | null;\n    /**\n     * A custom field containing an integer value. Supported filter type is `INT_RANGE`. \n     */\n    int_6?: number | null;\n    /**\n     * A custom field containing an integer value. Supported filter type is `INT_RANGE`. \n     */\n    int_7?: number | null;\n    /**\n     * A custom field containing an integer value. Supported filter type is `INT_RANGE`. \n     */\n    int_8?: number | null;\n    /**\n     * A custom field containing an integer value. Supported filter type is `INT_RANGE`. \n     */\n    int_9?: number | null;\n    /**\n     * A custom field containing a floating point value. Supported filter type is `FLOAT_RANGE`. \n     */\n    float_0?: number | null;\n    /**\n     * A custom field containing a floating point value. Supported filter type is `FLOAT_RANGE`. \n     */\n    float_1?: number | null;\n    /**\n     * A custom field containing a floating point value. Supported filter type is `FLOAT_RANGE`. \n     */\n    float_2?: number | null;\n    /**\n     * A custom field containing a floating point value. Supported filter type is `FLOAT_RANGE`. \n     */\n    float_3?: number | null;\n    /**\n     * A custom field containing a floating point value. Supported filter type is `FLOAT_RANGE`. \n     */\n    float_4?: number | null;\n    /**\n     * A custom field containing a floating point value. Supported filter type is `FLOAT_RANGE`. \n     */\n    float_5?: number | null;\n    /**\n     * A custom field containing a floating point value. Supported filter type is `FLOAT_RANGE`. \n     */\n    float_6?: number | null;\n    /**\n     * A custom field containing a floating point value. Supported filter type is `FLOAT_RANGE`. \n     */\n    float_7?: number | null;\n    /**\n     * A custom field containing a floating point value. Supported filter type is `FLOAT_RANGE`. \n     */\n    float_8?: number | null;\n    /**\n     * A custom field containing a floating point value. Supported filter type is `FLOAT_RANGE`. \n     */\n    float_9?: number | null;\n    /**\n     * A custom field containing the duration of the time period. Supported filter type is `DURATION_RANGE`. \n     */\n    duration_0?: string | null;\n    /**\n     * A custom field containing the duration of the time period. Supported filter type is `DURATION_RANGE`. \n     */\n    duration_1?: string | null;\n    /**\n     * A custom field containing the duration of the time period. Supported filter type is `DURATION_RANGE`. \n     */\n    duration_2?: string | null;\n    /**\n     * A custom field containing the duration of the time period. Supported filter type is `DURATION_RANGE`. \n     */\n    duration_3?: string | null;\n    /**\n     * A custom field containing the duration of the time period. Supported filter type is `DURATION_RANGE`. \n     */\n    duration_4?: string | null;\n    /**\n     * A custom field containing the duration of the time period. Supported filter type is `DURATION_RANGE`. \n     */\n    duration_5?: string | null;\n    /**\n     * A custom field containing the duration of the time period. Supported filter type is `DURATION_RANGE`. \n     */\n    duration_6?: string | null;\n    /**\n     * A custom field containing the duration of the time period. Supported filter type is `DURATION_RANGE`. \n     */\n    duration_7?: string | null;\n    /**\n     * A custom field containing the duration of the time period. Supported filter type is `DURATION_RANGE`. \n     */\n    duration_8?: string | null;\n    /**\n     * A custom field containing the duration of the time period. Supported filter type is `DURATION_RANGE`. \n     */\n    duration_9?: string | null;\n    /**\n     * A custom field containing a boolean value. Supported filter type is `BOOL_LIST`. \n     */\n    bool_0?: boolean | null;\n    /**\n     * A custom field containing a boolean value. Supported filter type is `BOOL_LIST`. \n     */\n    bool_1?: boolean | null;\n    /**\n     * A custom field containing a boolean value. Supported filter type is `BOOL_LIST`. \n     */\n    bool_2?: boolean | null;\n    /**\n     * A custom field containing a boolean value. Supported filter type is `BOOL_LIST`. \n     */\n    bool_3?: boolean | null;\n    /**\n     * A custom field containing a boolean value. Supported filter type is `BOOL_LIST`. \n     */\n    bool_4?: boolean | null;\n    /**\n     * A custom field containing a boolean value. Supported filter type is `BOOL_LIST`. \n     */\n    bool_5?: boolean | null;\n    /**\n     * A custom field containing a boolean value. Supported filter type is `BOOL_LIST`. \n     */\n    bool_6?: boolean | null;\n    /**\n     * A custom field containing a boolean value. Supported filter type is `BOOL_LIST`. \n     */\n    bool_7?: boolean | null;\n    /**\n     * A custom field containing a boolean value. Supported filter type is `BOOL_LIST`. \n     */\n    bool_8?: boolean | null;\n    /**\n     * A custom field containing a boolean value. Supported filter type is `BOOL_LIST`. \n     */\n    bool_9?: boolean | null;\n    /**\n     * A custom field containing an string value. Supported filter type is `STRING_SEARCH`. \n     */\n    string_0?: string | null;\n    /**\n     * A custom field containing an string value. Supported filter type is `STRING_SEARCH`. \n     */\n    string_1?: string | null;\n    /**\n     * A custom field containing an string value. Supported filter type is `STRING_SEARCH`. \n     */\n    string_2?: string | null;\n    /**\n     * A custom field containing an string value. Supported filter type is `STRING_SEARCH`. \n     */\n    string_3?: string | null;\n    /**\n     * A custom field containing an string value. Supported filter type is `STRING_SEARCH`. \n     */\n    string_4?: string | null;\n    /**\n     * A custom field containing an string value. Supported filter type is `STRING_SEARCH`. \n     */\n    string_5?: string | null;\n    /**\n     * A custom field containing an string value. Supported filter type is `STRING_SEARCH`. \n     */\n    string_6?: string | null;\n    /**\n     * A custom field containing an string value. Supported filter type is `STRING_SEARCH`. \n     */\n    string_7?: string | null;\n    /**\n     * A custom field containing an string value. Supported filter type is `STRING_SEARCH`. \n     */\n    string_8?: string | null;\n    /**\n     * A custom field containing an string value. Supported filter type is `STRING_SEARCH`. \n     */\n    string_9?: string | null;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Data statistics.\n */\nexport interface TableDataStatsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Locations count.\n     */\n    locations: number;\n    /**\n     * Orders count.\n     */\n    orders: number;\n    /**\n     * Performers count.\n     */\n    performers: number;\n    /**\n     * Transports count.\n     */\n    transports: number;\n    /**\n     * Hardlinks count.\n     */\n    hardlinks: number;\n    /**\n     * Trips count.\n     */\n    trips: number;\n    /**\n     * Facts count.\n     */\n    facts: number;\n    /**\n     * Using external routing.\n     */\n    external_routing: boolean;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Experiment table column name. \n */\nexport enum TableExperimentColumnTypeStudio {\n\n    SHARING = 'SHARING',\n\n    EDIT_DATE = 'EDIT_DATE',\n\n    CREATION_DATE = 'CREATION_DATE',\n\n    CALCULATION_STATE = 'CALCULATION_STATE',\n\n    UNPLANNED_ORDER_KEYS_COUNT = 'UNPLANNED_ORDER_KEYS_COUNT',\n\n    COST = 'COST'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Fact table column name. \n */\nexport enum TableFactColumnTypeStudio {\n\n    ESSENCE_KEY = 'ESSENCE_KEY',\n\n    ENABLED = 'ENABLED',\n\n    PRISTINE = 'PRISTINE',\n\n    TYPE = 'TYPE',\n\n    CREATION_DATE = 'CREATION_DATE',\n\n    TRIP_KEY = 'TRIP_KEY',\n\n    TRIP_NAME = 'TRIP_NAME',\n\n    CUSTOMFIELDS = 'CUSTOMFIELDS'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\nimport { TableCustomfieldsStudio } from './tableCustomfields';\n\n\n/**\n * Fact fields for table.\n */\nexport interface TableFactFieldsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Essence type.\n     */\n    essence_type?: TableFactFieldsStudioEssenceTypeEnum;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    essence_key?: string | null;\n    /**\n     * Using essence for calculations.\n     */\n    enabled?: boolean;\n    /**\n     * A flag indicating whether changes to the entity have been made relative to the original data. `true` - means that the data is original and has not been changed. \n     */\n    readonly pristine?: boolean;\n    /**\n     * Fact type.\n     */\n    type?: string | null;\n    /**\n     * Fact creation date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format.\n     */\n    creation_date?: string | null;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    trip_key?: string | null;\n    /**\n     * Name, information field.\n     */\n    trip_name?: string;\n    /**\n     * List of attributes as a string.\n     */\n    attributes?: string;\n    customfields?: TableCustomfieldsStudio;\n}\nexport enum TableFactFieldsStudioEssenceTypeEnum {\n    FACT = 'FACT'\n};\n\n\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Boolean list filter.\n */\nexport interface TableFilterBoolListStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * A list of booleans.\n     */\n    elements?: Array<boolean>;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Time window filter.\n */\nexport interface TableFilterDatetimeRangeStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format. \n     */\n    from?: string | null;\n    /**\n     * Date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format. \n     */\n    to?: string | null;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Duration range.\n */\nexport interface TableFilterDurationRangeStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    from?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    to?: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Filter by a list of pre-known text values.\n */\nexport interface TableFilterEnumListStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * A list of strings.\n     */\n    elements?: Array<string | null>;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Float range filter.\n */\nexport interface TableFilterFloatRangeStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Left side.\n     */\n    from?: number;\n    /**\n     * Right side.\n     */\n    to?: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Integer range filter.\n */\nexport interface TableFilterIntRangeStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Left side.\n     */\n    from?: number;\n    /**\n     * Right side.\n     */\n    to?: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * String list filter.\n */\nexport interface TableFilterStringListStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * A list of strings.\n     */\n    elements?: Array<string | null>;\n    /**\n     * Exact match (`true`) or search by occurrence of a sublist (`false`).\n     */\n    strict?: boolean;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * String search filter.\n */\nexport interface TableFilterStringSearchStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * String for search.\n     */\n    text?: string | null;\n    /**\n     * Exact match (`true`) or search by occurrence of a substring (`false`).\n     */\n    strict?: boolean;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Filter type:   * `DATETIME_RANGE` - intersection of the time interval   * `INT_RANGE` - getting a number inside an integer segment   * `FLOAT_RANGE` - hitting the number inside the float segment   * `DURATION_RANGE` - hitting inside the duration segment   * `BOOL_LIST` - exact match of boolean values   * `ENUM_LIST` - exact match of string values from enum   * `STRING_LIST` - partial match of a subset of string values   * `STRING_SEARCH` - partial match of a string \n */\nexport enum TableFilterTypeStudio {\n\n    DATETIME_RANGE = 'DATETIME_RANGE',\n\n    INT_RANGE = 'INT_RANGE',\n\n    FLOAT_RANGE = 'FLOAT_RANGE',\n\n    DURATION_RANGE = 'DURATION_RANGE',\n\n    BOOL_LIST = 'BOOL_LIST',\n\n    ENUM_LIST = 'ENUM_LIST',\n\n    STRING_LIST = 'STRING_LIST',\n\n    STRING_SEARCH = 'STRING_SEARCH'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Hardlink table column name. \n */\nexport enum TableHardlinkColumnTypeStudio {\n\n    ESSENCE_KEY = 'ESSENCE_KEY',\n\n    ENABLED = 'ENABLED',\n\n    PRISTINE = 'PRISTINE',\n\n    ELEMENT_TYPE = 'ELEMENT_TYPE',\n\n    ELEMENTS_COUNT = 'ELEMENTS_COUNT',\n\n    TRIP_KEY = 'TRIP_KEY',\n\n    TRIP_NAME = 'TRIP_NAME',\n\n    CUSTOMFIELDS = 'CUSTOMFIELDS'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\nimport { TableCustomfieldsStudio } from './tableCustomfields';\n\n\n/**\n * Hardlink and element fields for table.\n */\nexport interface TableHardlinkFieldsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Essence type.\n     */\n    essence_type?: TableHardlinkFieldsStudioEssenceTypeEnum;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    essence_key?: string | null;\n    /**\n     * Using essence for calculations.\n     */\n    enabled?: boolean;\n    /**\n     * A flag indicating whether changes to the entity have been made relative to the original data. `true` - means that the data is original and has not been changed. \n     */\n    readonly pristine?: boolean;\n    /**\n     * Element type. For an hardlink, a list of types is specified separated by commas. \n     */\n    element_type?: string | null;\n    /**\n     * Elements count.\n     */\n    elements_count?: number;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    trip_key?: string | null;\n    /**\n     * Name, information field.\n     */\n    trip_name?: string;\n    /**\n     * List of attributes as a string.\n     */\n    attributes?: string;\n    customfields?: TableCustomfieldsStudio;\n}\nexport enum TableHardlinkFieldsStudioEssenceTypeEnum {\n    HARDLINK = 'HARDLINK',\n    ELEMENT = 'ELEMENT'\n};\n\n\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Detail counters by list.\n */\nexport interface TableListCountersDetailStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Count.\n     */\n    total: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Column name in the table with locations:   * `ESSENCE_KEY` - entity key   * `ENABLED` - participation in calculation   * `PRISTINE` - data change flag   * `WORKING_TIME` - working time window   * `ATTRIBUTES` - list of attributes in one line   * `CUSTOMFIELDS` - custom table fields \n */\nexport enum TableLocationColumnTypeStudio {\n\n    ESSENCE_KEY = 'ESSENCE_KEY',\n\n    ENABLED = 'ENABLED',\n\n    PRISTINE = 'PRISTINE',\n\n    WORKING_TIME = 'WORKING_TIME',\n\n    NAME = 'NAME',\n\n    ATTRIBUTES = 'ATTRIBUTES',\n\n    CUSTOMFIELDS = 'CUSTOMFIELDS'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\nimport { TimeWindowStudio } from './timeWindow';\nimport { TableCustomfieldsStudio } from './tableCustomfields';\n\n\n/**\n * Location fields for table.\n */\nexport interface TableLocationFieldsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Essence type.\n     */\n    essence_type?: TableLocationFieldsStudioEssenceTypeEnum;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    essence_key?: string | null;\n    /**\n     * Using essence for calculations.\n     */\n    enabled?: boolean;\n    /**\n     * A flag indicating whether changes to the entity have been made relative to the original data. `true` - means that the data is original and has not been changed. \n     */\n    readonly pristine?: boolean;\n    working_time?: TimeWindowStudio | null;\n    /**\n     * Name, information field.\n     */\n    name?: string;\n    /**\n     * List of attributes as a string.\n     */\n    attributes?: string;\n    customfields?: TableCustomfieldsStudio;\n}\nexport enum TableLocationFieldsStudioEssenceTypeEnum {\n    LOCATION = 'LOCATION',\n    WORK_WINDOW = 'WORK_WINDOW'\n};\n\n\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Column name in the table with orders:   * `ESSENCE_KEY` - entity key   * `ENABLED` - participation in calculation   * `PRISTINE` - data change flag \n */\nexport enum TableOrderColumnTypeStudio {\n\n    ESSENCE_KEY = 'ESSENCE_KEY',\n\n    ENABLED = 'ENABLED',\n\n    PRISTINE = 'PRISTINE',\n\n    STATE = 'STATE',\n\n    TYPE = 'TYPE',\n\n    HARD_TIME_WINDOW = 'HARD_TIME_WINDOW',\n\n    SOFT_TIME_WINDOW = 'SOFT_TIME_WINDOW',\n\n    GENERAL_DROP_TIME_WINDOW = 'GENERAL_DROP_TIME_WINDOW',\n\n    GENERAL_PICKUP_TIME_WINDOW = 'GENERAL_PICKUP_TIME_WINDOW',\n\n    GENERAL_WORK_TIME_WINDOW = 'GENERAL_WORK_TIME_WINDOW',\n\n    REWARD = 'REWARD',\n\n    MASS = 'MASS',\n\n    VOLUME = 'VOLUME',\n\n    CAPACITY_A = 'CAPACITY_A',\n\n    CAPACITY_B = 'CAPACITY_B',\n\n    CAPACITY_C = 'CAPACITY_C',\n\n    ORDER_FEATURES = 'ORDER_FEATURES',\n\n    ORDER_RESTRICTIONS = 'ORDER_RESTRICTIONS',\n\n    PERFORMER_RESTRICTIONS = 'PERFORMER_RESTRICTIONS',\n\n    PERFORMER_BLACKLIST = 'PERFORMER_BLACKLIST',\n\n    WIDTH = 'WIDTH',\n\n    HEIGHT = 'HEIGHT',\n\n    LENGTH = 'LENGTH',\n\n    ROTATION = 'ROTATION',\n\n    BOX_RESTRICTIONS = 'BOX_RESTRICTIONS',\n\n    CARGO_FEATURES = 'CARGO_FEATURES',\n\n    CARGO_RESTRICTIONS = 'CARGO_RESTRICTIONS',\n\n    DEMANDS_COUNT = 'DEMANDS_COUNT',\n\n    TRIP_KEY = 'TRIP_KEY',\n\n    TRIP_NAME = 'TRIP_NAME',\n\n    NAME = 'NAME',\n\n    ATTRIBUTES = 'ATTRIBUTES',\n\n    CUSTOMFIELDS = 'CUSTOMFIELDS'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\nimport { TimeWindowStudio } from './timeWindow';\nimport { BasicStateStudio } from './basicState';\nimport { TableCustomfieldsStudio } from './tableCustomfields';\n\n\n/**\n * Order and demand fields for table.\n */\nexport interface TableOrderFieldsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Essence type.\n     */\n    essence_type?: TableOrderFieldsStudioEssenceTypeEnum;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    essence_key?: string | null;\n    /**\n     * Using essence for calculations.\n     */\n    enabled?: boolean;\n    /**\n     * A flag indicating whether changes to the entity have been made relative to the original data. `true` - means that the data is original and has not been changed. \n     */\n    readonly pristine?: boolean;\n    state?: BasicStateStudio;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    type?: string | null;\n    hard_time_window?: TimeWindowStudio | null;\n    soft_time_window?: TimeWindowStudio | null;\n    general_drop_time_window?: TimeWindowStudio | null;\n    general_pickup_time_window?: TimeWindowStudio | null;\n    general_work_time_window?: TimeWindowStudio | null;\n    /**\n     * The total reward for orders fulfillment.\n     */\n    reward?: number;\n    /**\n     * Weight in kilograms.\n     */\n    mass?: number;\n    /**\n     * Volume in cubic meters.\n     */\n    volume?: number;\n    /**\n     * Additional capacity parameter (A) for measuring cargoes and boxes in alternative units. For example, to account for cargo in pieces (this parameter is equal to one for a cargo and the maximum number of cargo to hold for a box). \n     */\n    capacity_a?: number;\n    /**\n     * Additional capacity parameter (B) for measuring cargoes and boxes in alternative units. \n     */\n    capacity_b?: number;\n    /**\n     * Additional capacity parameter (C) for measuring cargoes and boxes in alternative units. \n     */\n    capacity_c?: number;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    order_features?: string | null;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    order_restrictions?: string | null;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    performer_restrictions?: string | null;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    performer_blacklist?: string | null;\n    /**\n     * Width in meters, used to check the transport box capacity.\n     */\n    width?: number;\n    /**\n     * Height in meters, used to check the transport box capacity.\n     */\n    height?: number;\n    /**\n     * Length in meters, used to check the transport box capacity.\n     */\n    length?: number;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    rotation?: string | null;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    box_restrictions?: string | null;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    cargo_features?: string | null;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    cargo_restrictions?: string | null;\n    /**\n     * Demands count.\n     */\n    demands_count?: number;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    trip_key?: string | null;\n    /**\n     * Name, information field.\n     */\n    trip_name?: string;\n    /**\n     * Name, information field.\n     */\n    name?: string;\n    /**\n     * List of attributes as a string.\n     */\n    attributes?: string;\n    customfields?: TableCustomfieldsStudio;\n}\nexport enum TableOrderFieldsStudioEssenceTypeEnum {\n    ORDER = 'ORDER',\n    DEMAND = 'DEMAND'\n};\n\n\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Column name in the table with performers:   * `ESSENCE_KEY` - entity key   * `ENABLED` - participation in calculation   * `PRISTINE` - data change flag \n */\nexport enum TablePerformerColumnTypeStudio {\n\n    ESSENCE_KEY = 'ESSENCE_KEY',\n\n    ENABLED = 'ENABLED',\n\n    PRISTINE = 'PRISTINE',\n\n    WORKING_TIME = 'WORKING_TIME',\n\n    AVAILABILITY_TIME = 'AVAILABILITY_TIME',\n\n    TRIP_KEY = 'TRIP_KEY',\n\n    TRIP_NAME = 'TRIP_NAME',\n\n    LOCATION_KEYS = 'LOCATION_KEYS',\n\n    PERFORMER_FEATURES = 'PERFORMER_FEATURES',\n\n    TRANSPORT_RESTRICTIONS = 'TRANSPORT_RESTRICTIONS',\n\n    TRIPS_COUNT = 'TRIPS_COUNT',\n\n    SHIFTS_COUNT = 'SHIFTS_COUNT',\n\n    NAME = 'NAME',\n\n    ATTRIBUTES = 'ATTRIBUTES',\n\n    CUSTOMFIELDS = 'CUSTOMFIELDS'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\nimport { TimeWindowStudio } from './timeWindow';\nimport { TableCustomfieldsStudio } from './tableCustomfields';\n\n\n/**\n * Performer and shift fields for table.\n */\nexport interface TablePerformerFieldsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Essence type.\n     */\n    essence_type?: TablePerformerFieldsStudioEssenceTypeEnum;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    essence_key?: string | null;\n    /**\n     * Using essence for calculations.\n     */\n    enabled?: boolean;\n    /**\n     * A flag indicating whether changes to the entity have been made relative to the original data. `true` - means that the data is original and has not been changed. \n     */\n    readonly pristine?: boolean;\n    working_time?: TimeWindowStudio | null;\n    availability_time?: TimeWindowStudio | null;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    trip_key?: string | null;\n    /**\n     * Name, information field.\n     */\n    trip_name?: string;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    location_keys?: string | null;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    performer_features?: string | null;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    transport_restrictions?: string | null;\n    /**\n     * The number of trips in which the performer participates (for a shift - 0 or 1).\n     */\n    trips_count?: number;\n    /**\n     * The number of shifts for the performer.\n     */\n    shifts_count?: number;\n    /**\n     * Name, information field.\n     */\n    name?: string;\n    /**\n     * List of attributes as a string.\n     */\n    attributes?: string;\n    customfields?: TableCustomfieldsStudio;\n}\nexport enum TablePerformerFieldsStudioEssenceTypeEnum {\n    PERFORMER = 'PERFORMER',\n    PERFORMER_SHIFT = 'PERFORMER_SHIFT'\n};\n\n\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Column name in the table with roundtrips:   * `ESSENCE_KEY` - entity key   * `ENABLED` - participation in the calculation   * `PRISTINE` - data change flag \n */\nexport enum TableRoundtripColumnTypeStudio {\n\n    ESSENCE_KEY = 'ESSENCE_KEY',\n\n    ENABLED = 'ENABLED',\n\n    TRIP_KEY = 'TRIP_KEY',\n\n    PRISTINE = 'PRISTINE',\n\n    TRIP_NAME = 'TRIP_NAME',\n\n    COST = 'COST',\n\n    REWARD = 'REWARD',\n\n    PROFIT = 'PROFIT',\n\n    DRIVING_TIME = 'DRIVING_TIME',\n\n    WAITING_TIME = 'WAITING_TIME',\n\n    BREAK_TIME = 'BREAK_TIME',\n\n    REST_TIME = 'REST_TIME',\n\n    WORKING_TIME = 'WORKING_TIME',\n\n    ARRIVING_TIME = 'ARRIVING_TIME',\n\n    DEPARTURE_TIME = 'DEPARTURE_TIME',\n\n    TOTAL_TIME = 'TOTAL_TIME',\n\n    DISTANCE = 'DISTANCE',\n\n    TIME_WINDOW = 'TIME_WINDOW',\n\n    ORDERS_COUNT = 'ORDERS_COUNT',\n\n    PLAN_ORDERS_COUNT = 'PLAN_ORDERS_COUNT',\n\n    WAITLIST_ORDERS_COUNT = 'WAITLIST_ORDERS_COUNT',\n\n    STOPS_COUNT = 'STOPS_COUNT',\n\n    LOCATIONS_COUNT = 'LOCATIONS_COUNT',\n\n    CARGO_CAPACITY_RATIO_MASS = 'CARGO_CAPACITY_RATIO_MASS',\n\n    CARGO_CAPACITY_RATIO_VOLUME = 'CARGO_CAPACITY_RATIO_VOLUME',\n\n    CARGO_CAPACITY_RATIO_CAPACITY_A = 'CARGO_CAPACITY_RATIO_CAPACITY_A',\n\n    CARGO_CAPACITY_RATIO_CAPACITY_B = 'CARGO_CAPACITY_RATIO_CAPACITY_B',\n\n    CARGO_CAPACITY_RATIO_CAPACITY_C = 'CARGO_CAPACITY_RATIO_CAPACITY_C',\n\n    MAX_TRANSPORT_LOAD_MASS = 'MAX_TRANSPORT_LOAD_MASS',\n\n    MAX_TRANSPORT_LOAD_VOLUME = 'MAX_TRANSPORT_LOAD_VOLUME',\n\n    MAX_TRANSPORT_LOAD_CAPACITY_A = 'MAX_TRANSPORT_LOAD_CAPACITY_A',\n\n    MAX_TRANSPORT_LOAD_CAPACITY_B = 'MAX_TRANSPORT_LOAD_CAPACITY_B',\n\n    MAX_TRANSPORT_LOAD_CAPACITY_C = 'MAX_TRANSPORT_LOAD_CAPACITY_C',\n\n    ATTRIBUTES = 'ATTRIBUTES',\n\n    CUSTOMFIELDS = 'CUSTOMFIELDS'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\nimport { TimeWindowStudio } from './timeWindow';\nimport { TableCustomfieldsStudio } from './tableCustomfields';\n\n\n/**\n * Table fields for roundtrips.\n */\nexport interface TableRoundtripFieldsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Essence type.\n     */\n    essence_type?: TableRoundtripFieldsStudioEssenceTypeEnum;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    essence_key?: string | null;\n    /**\n     * Using essence for calculations.\n     */\n    enabled?: boolean;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    trip_key?: string | null;\n    /**\n     * A flag indicating whether changes to the entity have been made relative to the original data. `true` - means that the data is original and has not been changed. \n     */\n    readonly pristine?: boolean;\n    /**\n     * Name, information field.\n     */\n    trip_name?: string;\n    /**\n     * Total cost calculated based on the performer\\'s and transport tariffs. \n     */\n    cost?: number;\n    /**\n     * The total reward for orders fulfillment.\n     */\n    reward?: number;\n    /**\n     * The total profit is equal to the difference between the total reward (`reward`) and cost (`cost`). \n     */\n    profit?: number;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    driving_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    waiting_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    break_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    rest_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    working_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    arriving_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    departure_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    total_time?: string;\n    /**\n     * Distance in meters.\n     */\n    distance?: number;\n    time_window?: TimeWindowStudio | null;\n    /**\n     * The total number of planned and assigned orders.\n     */\n    orders_count?: number;\n    /**\n     * The total number of planned orders.\n     */\n    plan_orders_count?: number;\n    /**\n     * The total number of assigned orders.\n     */\n    waitlist_orders_count?: number;\n    /**\n     * The total number of stops (non-unique locations).\n     */\n    stops_count?: number;\n    /**\n     * The total number of unique locations within one trip.\n     */\n    locations_count?: number;\n    /**\n     * The ratio of the total additive measures of the transported cargo to the total capacity of the boxes.\n     */\n    cargo_capacity_ratio_mass?: number;\n    /**\n     * The ratio of the total additive measures of the transported cargo to the total capacity of the boxes.\n     */\n    cargo_capacity_ratio_volume?: number;\n    /**\n     * The ratio of the total additive measures of the transported cargo to the total capacity of the boxes.\n     */\n    cargo_capacity_ratio_capacity_a?: number;\n    /**\n     * The ratio of the total additive measures of the transported cargo to the total capacity of the boxes.\n     */\n    cargo_capacity_ratio_capacity_b?: number;\n    /**\n     * The ratio of the total additive measures of the transported cargo to the total capacity of the boxes.\n     */\n    cargo_capacity_ratio_capacity_c?: number;\n    /**\n     * The ratio of the maximum load of boxes to the total capacity of boxes.\n     */\n    max_transport_load_mass?: number;\n    /**\n     * The ratio of the maximum load of boxes to the total capacity of boxes.\n     */\n    max_transport_load_volume?: number;\n    /**\n     * The ratio of the maximum load of boxes to the total capacity of boxes.\n     */\n    max_transport_load_capacity_a?: number;\n    /**\n     * The ratio of the maximum load of boxes to the total capacity of boxes.\n     */\n    max_transport_load_capacity_b?: number;\n    /**\n     * The ratio of the maximum load of boxes to the total capacity of boxes.\n     */\n    max_transport_load_capacity_c?: number;\n    /**\n     * List of attributes as a string.\n     */\n    attributes?: string;\n    customfields?: TableCustomfieldsStudio;\n}\nexport enum TableRoundtripFieldsStudioEssenceTypeEnum {\n    TRIP = 'TRIP',\n    ROUNDTRIP = 'ROUNDTRIP'\n};\n\n\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Column name in the transport table:   * `ESSENCE_KEY` - entity key   * `ENABLED` - participation in calculation   * `PRISTINE` - data change flag \n */\nexport enum TableTransportColumnTypeStudio {\n\n    ESSENCE_KEY = 'ESSENCE_KEY',\n\n    ENABLED = 'ENABLED',\n\n    PRISTINE = 'PRISTINE',\n\n    AVAILABILITY_TIME = 'AVAILABILITY_TIME',\n\n    TRANSPORT_TYPE = 'TRANSPORT_TYPE',\n\n    TRIP_KEY = 'TRIP_KEY',\n\n    TRIP_NAME = 'TRIP_NAME',\n\n    LOCATION_KEYS = 'LOCATION_KEYS',\n\n    MASS = 'MASS',\n\n    VOLUME = 'VOLUME',\n\n    CAPACITY_A = 'CAPACITY_A',\n\n    CAPACITY_B = 'CAPACITY_B',\n\n    CAPACITY_C = 'CAPACITY_C',\n\n    TRANSPORT_FEATURES = 'TRANSPORT_FEATURES',\n\n    PERFORMER_RESTRICTIONS = 'PERFORMER_RESTRICTIONS',\n\n    TRIPS_COUNT = 'TRIPS_COUNT',\n\n    ROUNDTRIPS_COUNT = 'ROUNDTRIPS_COUNT',\n\n    SHIFTS_COUNT = 'SHIFTS_COUNT',\n\n    NAME = 'NAME',\n\n    ATTRIBUTES = 'ATTRIBUTES',\n\n    CUSTOMFIELDS = 'CUSTOMFIELDS'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\nimport { TimeWindowStudio } from './timeWindow';\nimport { TableCustomfieldsStudio } from './tableCustomfields';\nimport { TransportTypeStudio } from './transportType';\n\n\n/**\n * Transport and shift fields for table.\n */\nexport interface TableTransportFieldsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Essence type.\n     */\n    essence_type?: TableTransportFieldsStudioEssenceTypeEnum;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    essence_key?: string | null;\n    /**\n     * Using essence for calculations.\n     */\n    enabled?: boolean;\n    /**\n     * A flag indicating whether changes to the entity have been made relative to the original data. `true` - means that the data is original and has not been changed. \n     */\n    readonly pristine?: boolean;\n    availability_time?: TimeWindowStudio | null;\n    transport_type?: TransportTypeStudio;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    trip_key?: string | null;\n    /**\n     * Name, information field.\n     */\n    trip_name?: string;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    location_keys?: string | null;\n    /**\n     * Weight in kilograms (the sum of all boxes).\n     */\n    mass?: number;\n    /**\n     * Volume in cubic meters (the sum of all boxes).\n     */\n    volume?: number;\n    /**\n     * Additional capacity parameter (A) in alternative units (the sum of all boxes). \n     */\n    capacity_a?: number;\n    /**\n     * Additional capacity parameter (B) in alternative units (the sum of all boxes). \n     */\n    capacity_b?: number;\n    /**\n     * Additional capacity parameter (C) in alternative units (the sum of all boxes). \n     */\n    capacity_c?: number;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    transport_features?: string | null;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    performer_restrictions?: string | null;\n    /**\n     * The number of trips in which the transport participates (for a shift - 0 or 1).\n     */\n    trips_count?: number;\n    /**\n     * The number of roundtrips in which the transport participates.\n     */\n    roundtrips_count?: number;\n    /**\n     * The number of shifts for the performer.\n     */\n    shifts_count?: number;\n    /**\n     * Name, information field.\n     */\n    name?: string;\n    /**\n     * List of attributes as a string.\n     */\n    attributes?: string;\n    customfields?: TableCustomfieldsStudio;\n}\nexport enum TableTransportFieldsStudioEssenceTypeEnum {\n    TRANSPORT = 'TRANSPORT',\n    TRANSPORT_SHIFT = 'TRANSPORT_SHIFT'\n};\n\n\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Column name in the table with trips:   * `ESSENCE_KEY` - entity key   * `ENABLED` - participation in the calculation   * `PRISTINE` - data change flag \n */\nexport enum TableTripColumnTypeStudio {\n\n    ESSENCE_KEY = 'ESSENCE_KEY',\n\n    ENABLED = 'ENABLED',\n\n    TRIP_VERIFIED = 'TRIP_VERIFIED',\n\n    PRISTINE = 'PRISTINE',\n\n    TRIP_NAME = 'TRIP_NAME',\n\n    PERFORMER_KEY = 'PERFORMER_KEY',\n\n    PERFORMER_SHIFT_KEY = 'PERFORMER_SHIFT_KEY',\n\n    TRANSPORT_KEY = 'TRANSPORT_KEY',\n\n    TRANSPORT_SHIFT_KEY = 'TRANSPORT_SHIFT_KEY',\n\n    COST = 'COST',\n\n    REWARD = 'REWARD',\n\n    PROFIT = 'PROFIT',\n\n    DRIVING_TIME = 'DRIVING_TIME',\n\n    WAITING_TIME = 'WAITING_TIME',\n\n    BREAK_TIME = 'BREAK_TIME',\n\n    REST_TIME = 'REST_TIME',\n\n    WORKING_TIME = 'WORKING_TIME',\n\n    ARRIVING_TIME = 'ARRIVING_TIME',\n\n    DEPARTURE_TIME = 'DEPARTURE_TIME',\n\n    TOTAL_TIME = 'TOTAL_TIME',\n\n    DISTANCE = 'DISTANCE',\n\n    TIME_WINDOW = 'TIME_WINDOW',\n\n    ORDERS_COUNT = 'ORDERS_COUNT',\n\n    PLAN_ORDERS_COUNT = 'PLAN_ORDERS_COUNT',\n\n    WAITLIST_ORDERS_COUNT = 'WAITLIST_ORDERS_COUNT',\n\n    STOPS_COUNT = 'STOPS_COUNT',\n\n    LOCATIONS_COUNT = 'LOCATIONS_COUNT',\n\n    CARGO_CAPACITY_RATIO_MASS = 'CARGO_CAPACITY_RATIO_MASS',\n\n    CARGO_CAPACITY_RATIO_VOLUME = 'CARGO_CAPACITY_RATIO_VOLUME',\n\n    CARGO_CAPACITY_RATIO_CAPACITY_A = 'CARGO_CAPACITY_RATIO_CAPACITY_A',\n\n    CARGO_CAPACITY_RATIO_CAPACITY_B = 'CARGO_CAPACITY_RATIO_CAPACITY_B',\n\n    CARGO_CAPACITY_RATIO_CAPACITY_C = 'CARGO_CAPACITY_RATIO_CAPACITY_C',\n\n    MAX_TRANSPORT_LOAD_MASS = 'MAX_TRANSPORT_LOAD_MASS',\n\n    MAX_TRANSPORT_LOAD_VOLUME = 'MAX_TRANSPORT_LOAD_VOLUME',\n\n    MAX_TRANSPORT_LOAD_CAPACITY_A = 'MAX_TRANSPORT_LOAD_CAPACITY_A',\n\n    MAX_TRANSPORT_LOAD_CAPACITY_B = 'MAX_TRANSPORT_LOAD_CAPACITY_B',\n\n    MAX_TRANSPORT_LOAD_CAPACITY_C = 'MAX_TRANSPORT_LOAD_CAPACITY_C',\n\n    AVERAGE_ROUNDTRIP_TIME = 'AVERAGE_ROUNDTRIP_TIME',\n\n    AVERAGE_ROUNDTRIP_DISTANCE = 'AVERAGE_ROUNDTRIP_DISTANCE',\n\n    ATTRIBUTES = 'ATTRIBUTES',\n\n    CUSTOMFIELDS = 'CUSTOMFIELDS',\n\n    TRIP_STATUS = 'TRIP_STATUS',\n\n    CREW_KEY = 'CREW_KEY'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\nimport { TripStatusStudio } from './tripStatus';\nimport { TimeWindowStudio } from './timeWindow';\nimport { TableCustomfieldsStudio } from './tableCustomfields';\n\n\n/**\n * Trip\\\\stops fields for table.\n */\nexport interface TableTripFieldsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Essence type.\n     */\n    essence_type?: TableTripFieldsStudioEssenceTypeEnum;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    essence_key?: string | null;\n    /**\n     * Using essence for calculations.\n     */\n    enabled?: boolean;\n    /**\n     * A flag indicating whether the entity has been manually verified.\n     */\n    readonly trip_verified?: boolean;\n    /**\n     * A flag indicating whether changes to the entity have been made relative to the original data. `true` - means that the data is original and has not been changed. \n     */\n    readonly pristine?: boolean;\n    /**\n     * Name, information field.\n     */\n    trip_name?: string;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    performer_key?: string | null;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    performer_shift_key?: string | null;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    transport_key?: string | null;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    transport_shift_key?: string | null;\n    /**\n     * Total cost calculated based on the performer\\'s and transport tariffs. \n     */\n    cost?: number;\n    /**\n     * The total reward for orders fulfillment.\n     */\n    reward?: number;\n    /**\n     * The total profit is equal to the difference between the total reward (`reward`) and cost (`cost`). \n     */\n    profit?: number;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    driving_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    waiting_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    break_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    rest_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    working_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    arriving_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    departure_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    total_time?: string;\n    /**\n     * Distance in meters.\n     */\n    distance?: number;\n    time_window?: TimeWindowStudio | null;\n    /**\n     * The total number of planned and assigned orders.\n     */\n    orders_count?: number;\n    /**\n     * The total number of planned orders.\n     */\n    plan_orders_count?: number;\n    /**\n     * The total number of assigned orders.\n     */\n    waitlist_orders_count?: number;\n    /**\n     * The total number of stops (non-unique locations).\n     */\n    stops_count?: number;\n    /**\n     * The total number of unique locations within one trip.\n     */\n    locations_count?: number;\n    /**\n     * The ratio of the total additive measures of the transported cargo to the total capacity of the boxes.\n     */\n    cargo_capacity_ratio_mass?: number;\n    /**\n     * The ratio of the total additive measures of the transported cargo to the total capacity of the boxes.\n     */\n    cargo_capacity_ratio_volume?: number;\n    /**\n     * The ratio of the total additive measures of the transported cargo to the total capacity of the boxes.\n     */\n    cargo_capacity_ratio_capacity_a?: number;\n    /**\n     * The ratio of the total additive measures of the transported cargo to the total capacity of the boxes.\n     */\n    cargo_capacity_ratio_capacity_b?: number;\n    /**\n     * The ratio of the total additive measures of the transported cargo to the total capacity of the boxes.\n     */\n    cargo_capacity_ratio_capacity_c?: number;\n    /**\n     * The ratio of the maximum load of boxes to the total capacity of boxes.\n     */\n    max_transport_load_mass?: number;\n    /**\n     * The ratio of the maximum load of boxes to the total capacity of boxes.\n     */\n    max_transport_load_volume?: number;\n    /**\n     * The ratio of the maximum load of boxes to the total capacity of boxes.\n     */\n    max_transport_load_capacity_a?: number;\n    /**\n     * The ratio of the maximum load of boxes to the total capacity of boxes.\n     */\n    max_transport_load_capacity_b?: number;\n    /**\n     * The ratio of the maximum load of boxes to the total capacity of boxes.\n     */\n    max_transport_load_capacity_c?: number;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    average_roundtrip_time?: string;\n    /**\n     * Average mileage per roundtrip is the ratio of the total mileage per trip to the number of roundtrips, in meters.\n     */\n    average_roundtrip_distance?: number;\n    /**\n     * List of attributes as a string.\n     */\n    attributes?: string;\n    customfields?: TableCustomfieldsStudio;\n    trip_status?: TripStatusStudio;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    crew_key?: string | null;\n}\nexport enum TableTripFieldsStudioEssenceTypeEnum {\n    TRIP = 'TRIP',\n    ROUNDTRIP = 'ROUNDTRIP'\n};\n\n\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Column name in the table with trip stops:   * `ESSENCE_KEY` - entity key \n */\nexport enum TableTripStopColumnTypeStudio {\n\n    ESSENCE_KEY = 'ESSENCE_KEY',\n\n    DRIVING_TIME = 'DRIVING_TIME',\n\n    WAITING_TIME = 'WAITING_TIME',\n\n    BREAK_TIME = 'BREAK_TIME',\n\n    REST_TIME = 'REST_TIME',\n\n    WORKING_TIME = 'WORKING_TIME',\n\n    ARRIVING_TIME = 'ARRIVING_TIME',\n\n    DEPARTURE_TIME = 'DEPARTURE_TIME',\n\n    TOTAL_TIME = 'TOTAL_TIME',\n\n    DISTANCE = 'DISTANCE',\n\n    TIME_WINDOW = 'TIME_WINDOW',\n\n    TRIP_KEY = 'TRIP_KEY',\n\n    ORDER_KEY = 'ORDER_KEY',\n\n    DEMAND_TYPE = 'DEMAND_TYPE',\n\n    LOCATION_NAME = 'LOCATION_NAME',\n\n    LOCATION_KEY = 'LOCATION_KEY',\n\n    ATTRIBUTES = 'ATTRIBUTES',\n\n    CUSTOMFIELDS = 'CUSTOMFIELDS'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\nimport { TimeWindowStudio } from './timeWindow';\nimport { TableCustomfieldsStudio } from './tableCustomfields';\n\n\n/**\n * Tabular fields of stops for a single trip.\n */\nexport interface TableTripStopFieldsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Essence type.\n     */\n    essence_type?: TableTripStopFieldsStudioEssenceTypeEnum;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    essence_key?: string | null;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    driving_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    waiting_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    break_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    rest_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    working_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    arriving_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    departure_time?: string;\n    /**\n     * Time duration according to [ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations).\n     */\n    total_time?: string;\n    /**\n     * Distance in meters.\n     */\n    distance?: number;\n    time_window?: TimeWindowStudio | null;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    trip_key?: string | null;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    order_key?: string | null;\n    /**\n     * String table field.  For the parent entity, a comma-separated list of values is specified. \n     */\n    demand_type?: string | null;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    location_key?: string | null;\n    /**\n     * Name, information field.\n     */\n    location_name?: string;\n    /**\n     * List of attributes as a string.\n     */\n    attributes?: string;\n    /**\n     * Custom table fields - LOCATION attributes are used.\n     */\n    customfields?: TableCustomfieldsStudio;\n}\nexport enum TableTripStopFieldsStudioEssenceTypeEnum {\n    TRIP_STOP = 'TRIP_STOP',\n    DEMAND = 'DEMAND'\n};\n\n\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Time window.\n */\nexport interface TimeWindowStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format.\n     */\n    from: string;\n    /**\n     * Date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format.\n     */\n    to: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Time window violation detail information.\n */\nexport interface TimeWindowViolationDetailStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * List of object\\'s keys.\n     */\n    demand_keys: Array<string>;\n    /**\n     * The total number of demands.\n     */\n    count: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Track type:   * `LINE` - connecting stop points in a straight line   * `ROAD` - connecting stop points along roads   * `CUSTOM` - externally loaded custom tracks \n */\nexport enum TrackTypeStudio {\n\n    LINE = 'LINE',\n\n    ROAD = 'ROAD',\n\n    CUSTOM = 'CUSTOM'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * A geographic point with a time reference.\n */\nexport interface TrackpointStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Latitude in degrees.\n     */\n    latitude: number;\n    /**\n     * Longitude in degrees.\n     */\n    longitude: number;\n    /**\n     * Date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format.\n     */\n    time?: string | null;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Name in different languages.\n */\nexport interface TranslationsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Name, information field.\n     */\n    ru?: string;\n    /**\n     * Name, information field.\n     */\n    en?: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Paid mileage is an integral part of the tariff.\n */\nexport interface TransportTariffConstraintStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * The length of the paid part of the way, in meters.\n     */\n    stage_length?: number;\n    /**\n     * The cost within the paid part of the way, monetary unit per meter. \n     */\n    cost_per_unit?: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Transport types:   * `CAR` - car   * `TRUCK_1500` - truck with permissible weight 1500 kg   * `TRUCK_3000` - truck with permissible weight 3000 kg   * `TRUCK_5000` - truck with permissible weight 5000 kg   * `TRUCK_10000` - truck with permissible weight 10000 kg   * `TRUCK_20000` - truck with permissible weight 20000 kg   * `TRUCK_10000_L75_H35_W24_6000` - a truck with a permitted weight of no more than 10,000 kg, dimensions of 7.5 x 3.5 x 2.4 meters, and a permissible axle load of 6,000 kg   * `TRUCK_18000_L95_H40_W26_11000` - a truck with a permitted weight of no more than 18,000 kg, dimensions of 9.5 x 4.0 x 2.6 meters, and a permissible axle load of 11,000 kg   * `TRUCK_26000_L120_H40_W26_8000` - a truck with a permitted weight of no more than 26,000 kg, dimensions of 12.0 x 4.0 x 2.6 meters, and a permissible axle load of 8000 kg   * `TRUCK_GARBAGE_1` - truck for transporting garbage (type 1)   * `TRUCK_GARBAGE_2` - truck for transporting garbage (type 2)   * `TUK_TUK` - tuk-tuk   * `BICYCLE` - bicycle   * `PEDESTRIAN` - pedestrian         * `PUBLIC_TRANSPORT` - public transport   * `TELEPORT` - teleport (instant movement between points)      Permissible weight is the weight of the equipped transport with cargo and driver, set by the manufacturer as the maximum allowable. \n */\nexport enum TransportTypeStudio {\n\n    CAR = 'CAR',\n\n    TRUCK_1500 = 'TRUCK_1500',\n\n    TRUCK_3000 = 'TRUCK_3000',\n\n    TRUCK_5000 = 'TRUCK_5000',\n\n    TRUCK_10000 = 'TRUCK_10000',\n\n    TRUCK_20000 = 'TRUCK_20000',\n\n    TRUCK_10000_L75_H35_W24_6000 = 'TRUCK_10000_L75_H35_W24_6000',\n\n    TRUCK_18000_L95_H40_W26_11000 = 'TRUCK_18000_L95_H40_W26_11000',\n\n    TRUCK_26000_L120_H40_W26_8000 = 'TRUCK_26000_L120_H40_W26_8000',\n\n    TRUCK_GARBAGE_1 = 'TRUCK_GARBAGE_1',\n\n    TRUCK_GARBAGE_2 = 'TRUCK_GARBAGE_2',\n\n    TUK_TUK = 'TUK_TUK',\n\n    BICYCLE = 'BICYCLE',\n\n    PEDESTRIAN = 'PEDESTRIAN',\n\n    PUBLIC_TRANSPORT = 'PUBLIC_TRANSPORT',\n\n    TELEPORT = 'TELEPORT'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * New precedence of demand in the trip.\n */\nexport interface TripDemandPrecedenceStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Order key.\n     */\n    order_key: string;\n    /**\n     * Demand key.\n     */\n    demand_key: string;\n    /**\n     * New precedence of demand in the trip.\n     */\n    new_precedence_in_trip: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * The strategy of the choosing optimal trip start time:   * `EARLIEST_FINISH`   * `LOWEST_COST` \n */\nexport enum TripStartTimeStrategyStudio {\n\n    EARLIEST_FINISH = 'EARLIEST_FINISH',\n\n    LOWEST_COST = 'LOWEST_COST'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * [Flag of state](#section/Description/Trip-model) inside trip. \n */\nexport enum TripStateFlagStudio {\n\n    AROUND_LOCATION = 'AROUND_LOCATION',\n\n    INSIDE_LOCATION = 'INSIDE_LOCATION',\n\n    INSIDE_LOCATION_WINDOW = 'INSIDE_LOCATION_WINDOW',\n\n    INSIDE_WORKING_WINDOW = 'INSIDE_WORKING_WINDOW',\n\n    INSIDE_EVENT_HARD_WINDOW = 'INSIDE_EVENT_HARD_WINDOW',\n\n    INSIDE_EVENT_SOFT_WINDOW = 'INSIDE_EVENT_SOFT_WINDOW',\n\n    ON_DEMAND = 'ON_DEMAND',\n\n    WAITING = 'WAITING',\n\n    RELOCATING = 'RELOCATING',\n\n    BREAK = 'BREAK',\n\n    REST = 'REST',\n\n    DEPARTURE = 'DEPARTURE',\n\n    ARRIVAL = 'ARRIVAL',\n\n    DURING_ROUNDTRIP = 'DURING_ROUNDTRIP'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Current [trip status](#section/Description/Trip-status-model):   * `FREE` - the trip has no assigned crew, initial status, awaiting assignment by the operator   * `ASSIGNED` - the trip has a crew assigned, awaiting dispatch to the crew by the operator   * `SENT` - the trip has been sent to the crew, awaiting confirmation of receipt by the crew   * `RECEIVED` - the trip has been received by the crew, awaiting acceptance by the crew   * `CONFIRMED` - the trip has been accepted by the crew, awaiting work from the crew   * `REJECTED` - the trip has been rejected by the crew, awaiting assignment by the operator   * `EXECUTING` - the trip is in progress, awaiting completion by the crew   * `FINISHED` - the trip has been completed, final status   * `CANCELLED` - the trip has been canceled, final status \n */\nexport enum TripStatusStudio {\n\n    FREE = 'FREE',\n\n    ASSIGNED = 'ASSIGNED',\n\n    SENT = 'SENT',\n\n    RECEIVED = 'RECEIVED',\n\n    CONFIRMED = 'CONFIRMED',\n\n    REJECTED = 'REJECTED',\n\n    EXECUTING = 'EXECUTING',\n\n    FINISHED = 'FINISHED',\n\n    CANCELLED = 'CANCELLED'\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Information about unplanned essences.\n */\nexport interface UnplannedItemsStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Essences keys list.\n     */\n    order_keys?: Array<string>;\n    /**\n     * Essences count.\n     */\n    order_keys_count?: number;\n    /**\n     * Essences keys list.\n     */\n    performer_keys?: Array<string>;\n    /**\n     * Essences count.\n     */\n    performer_keys_count?: number;\n    /**\n     * Essences keys list.\n     */\n    transport_keys?: Array<string>;\n    /**\n     * Essences count.\n     */\n    transport_keys_count?: number;\n    /**\n     * Essences keys list.\n     */\n    hardlink_keys?: Array<string>;\n    /**\n     * Essences count.\n     */\n    hardlink_keys_count?: number;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Service version.\n */\nexport interface VersionResultStudio { \n  [key: string]: any | any;\n\n\n    /**\n     * Product version. Within a single version, compatibility of common data structures between services is guaranteed. A version change indicates changes that are incompatible with previous versions of the product (and all services). \n     */\n    major: number;\n    /**\n     * Minor version of the service. A version change indicates new functionality. The update is backward compatible with the major version of the service. \n     */\n    minor: number;\n    /**\n     * Build version.       Contains backwards compatible bug fixes and docs update. \n     */\n    build: string;\n}\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\nimport { GeopointStudio } from './geopoint';\n\n\n/**\n * Geopoint for map.\n */\nexport interface WebPerformerGeopointStudio { \n  [key: string]: any | any;\n\n\n    geopoint: GeopointStudio;\n    /**\n     * Performer\\'s key.\n     */\n    performer_key: string;\n    /**\n     * Shift key, unique identifier.\n     */\n    shift_key: string;\n    /**\n     * The point type.\n     */\n    point_type: WebPerformerGeopointStudioPointTypeEnum;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    trip_key?: string | null;\n    /**\n     * Name, information field.\n     */\n    trip_name?: string;\n    /**\n     * Sequence number of the stop in the trip.\n     */\n    stop_number?: number;\n}\nexport enum WebPerformerGeopointStudioPointTypeEnum {\n    START = 'START',\n    FINISH = 'FINISH'\n};\n\n\n\n","/**\n * VRt.Studio [ST]\n *\n * The version of the OpenAPI document: 7.37.3331\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\nimport { GeopointStudio } from './geopoint';\n\n\n/**\n * Geopoint for map.\n */\nexport interface WebTransportGeopointStudio { \n  [key: string]: any | any;\n\n\n    geopoint: GeopointStudio;\n    /**\n     * Transport\\'s key.\n     */\n    transport_key: string;\n    /**\n     * Shift key, unique identifier.\n     */\n    shift_key: string;\n    /**\n     * The point type.\n     */\n    point_type: WebTransportGeopointStudioPointTypeEnum;\n    /**\n     * Essence key, unique identifier, may be `null`.\n     */\n    trip_key?: string | null;\n    /**\n     * Name, information field.\n     */\n    trip_name?: string;\n    /**\n     * Sequence number of the stop in the trip.\n     */\n    stop_number?: number;\n}\nexport enum WebTransportGeopointStudioPointTypeEnum {\n    START = 'START',\n    FINISH = 'FINISH'\n};\n\n\n\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\n\n@NgModule({\n  imports:      [],\n  declarations: [],\n  exports:      [],\n  providers: []\n})\nexport class LssStudioApiModule {\n    public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders<LssStudioApiModule> {\n        return {\n            ngModule: LssStudioApiModule,\n            providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n        };\n    }\n\n    constructor( @Optional() @SkipSelf() parentModule: LssStudioApiModule,\n                 @Optional() http: HttpClient) {\n        if (parentModule) {\n            throw new Error('LssStudioApiModule is already loaded. Import in your base AppModule only.');\n        }\n        if (!http) {\n            throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n            'See also https://github.com/angular/angular/issues/20575');\n        }\n    }\n}\n","import { EnvironmentProviders, makeEnvironmentProviders } from \"@angular/core\";\nimport { Configuration, ConfigurationParameters } from './configuration';\nimport { BASE_PATH } from './variables';\n\n// Returns the service class providers, to be used in the [ApplicationConfig](https://angular.dev/api/core/ApplicationConfig).\nexport function provideApi(configOrBasePath: string | ConfigurationParameters): EnvironmentProviders {\n    return makeEnvironmentProviders([\n        typeof configOrBasePath === \"string\"\n            ? { provide: BASE_PATH, useValue: configOrBasePath }\n            : {\n                provide: Configuration,\n                useValue: new Configuration({ ...configOrBasePath }),\n            },\n    ]);\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.Configuration"],"mappings":"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"}