import { HttpClient, HttpHeaders, HttpResponse, HttpEvent, HttpParameterCodec } from '@angular/common/http'; import { Observable } from 'rxjs'; import { FeatureTag } from '../model/models'; import { ListFeatureTagsResponse } from '../model/models'; import { Configuration } from '../configuration'; import { FeaturesServiceInterface, AddFeatureTagRequestParams, DeleteFeatureTagRequestParams, GetFeatureTagRequestParams, ListFeatureTagsRequestParams, ReplaceFeatureTagRequestParams } from './features.serviceInterface'; import * as i0 from "@angular/core"; export declare class FeaturesService implements FeaturesServiceInterface { protected httpClient: HttpClient; protected basePath: string; defaultHeaders: HttpHeaders; configuration: Configuration; encoder: HttpParameterCodec; constructor(httpClient: HttpClient, basePath: string, configuration: Configuration); private getAuth; private addToHttpParams; private addToHttpParamsRecursive; /** * Add a feature tag * Adds a new feature tag. * @param requestParameters * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ addFeatureTag(requestParameters: AddFeatureTagRequestParams, observe?: 'body', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable; addFeatureTag(requestParameters: AddFeatureTagRequestParams, observe?: 'response', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable>; addFeatureTag(requestParameters: AddFeatureTagRequestParams, observe?: 'events', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable>; /** * Delete a feature tag * Delete a feature tag * @param requestParameters * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ deleteFeatureTag(requestParameters: DeleteFeatureTagRequestParams, observe?: 'body', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable; deleteFeatureTag(requestParameters: DeleteFeatureTagRequestParams, observe?: 'response', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable>; deleteFeatureTag(requestParameters: DeleteFeatureTagRequestParams, observe?: 'events', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable>; /** * Get a feature tag * Get a feature tag * @param requestParameters * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ getFeatureTag(requestParameters: GetFeatureTagRequestParams, observe?: 'body', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable; getFeatureTag(requestParameters: GetFeatureTagRequestParams, observe?: 'response', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable>; getFeatureTag(requestParameters: GetFeatureTagRequestParams, observe?: 'events', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable>; /** * List all feature_tags * List all feature_tags matching the provided query parameters. Perform keyset pagination by setting the page_at_name parameter to the name for the next page to fetch. Set it to `\"\"` to start from the beginning. * @param requestParameters * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ listFeatureTags(requestParameters: ListFeatureTagsRequestParams, observe?: 'body', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable; listFeatureTags(requestParameters: ListFeatureTagsRequestParams, observe?: 'response', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable>; listFeatureTags(requestParameters: ListFeatureTagsRequestParams, observe?: 'events', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable>; /** * update a feature tag * update a feature tag * @param requestParameters * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ replaceFeatureTag(requestParameters: ReplaceFeatureTagRequestParams, observe?: 'body', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable; replaceFeatureTag(requestParameters: ReplaceFeatureTagRequestParams, observe?: 'response', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable>; replaceFeatureTag(requestParameters: ReplaceFeatureTagRequestParams, observe?: 'events', extraHeaders?: HttpHeaders, reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; }): Observable>; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }