import { Observable } from 'rxjs/Observable'; import { HttpHandler } from './backend'; import { HttpHeaders } from './headers'; import { HttpParams } from './params'; import { HttpRequest } from './request'; import { HttpEvent, HttpResponse } from './response'; /** * @stable */ export declare type HttpObserve = 'body' | 'events' | 'response'; /** * Perform HTTP requests. * * `HttpClient` is available as an injectable class, with methods to perform HTTP requests. * Each request method has multiple signatures, and the return type varies according to which * signature is called (mainly the values of `observe` and `responseType`). * * @stable */ export declare class HttpClient { private handler; constructor(handler: HttpHandler); /** * Send the given `HttpRequest` and return a stream of `HttpEvents`. */ request(req: HttpRequest): Observable>; /** * Construct a request which interprets the body as an `ArrayBuffer` and returns it. * * @return an `Observable` of the body as an `ArrayBuffer`. */ request(method: string, url: string, options: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable; /** * Construct a request which interprets the body as a `Blob` and returns it. * * @return an `Observable` of the body as a `Blob`. */ request(method: string, url: string, options: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable; /** * Construct a request which interprets the body as text and returns it. * * @return an `Observable` of the body as a `string`. */ request(method: string, url: string, options: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable; /** * Construct a request which interprets the body as an `ArrayBuffer` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `ArrayBuffer`. */ request(method: string, url: string, options: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; params?: HttpParams | { [param: string]: string | string[]; }; observe: 'events'; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct a request which interprets the body as an `Blob` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Blob`. */ request(method: string, url: string, options: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct a request which interprets the body as text and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `string`. */ request(method: string, url: string, options: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct a request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Object`. */ request(method: string, url: string, options: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; reportProgress?: boolean; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `R`. */ request(method: string, url: string, options: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; reportProgress?: boolean; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a request which interprets the body as an `ArrayBuffer` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `ArrayBuffer`. */ request(method: string, url: string, options: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct a request which interprets the body as a `Blob` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Blob`. */ request(method: string, url: string, options: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct a request which interprets the body as text and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `string`. */ request(method: string, url: string, options: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct a request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Object`. */ request(method: string, url: string, options: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; reportProgress?: boolean; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `R`. */ request(method: string, url: string, options: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; reportProgress?: boolean; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a request which interprets the body as JSON and returns it. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Object`. */ request(method: string, url: string, options?: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; responseType?: 'json'; reportProgress?: boolean; withCredentials?: boolean; }): Observable; /** * Construct a request which interprets the body as JSON and returns it. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `R`. */ request(method: string, url: string, options?: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; responseType?: 'json'; reportProgress?: boolean; withCredentials?: boolean; }): Observable; /** * Construct a request in a manner where response type and requested `Observable` are not known * statically. * * @return an `Observable` of whatever was requested, typed to `any`. */ request(method: string, url: string, options?: { body?: any; headers?: HttpHeaders | { [header: string]: string | string[]; }; params?: HttpParams | { [param: string]: string | string[]; }; observe?: HttpObserve; reportProgress?: boolean; responseType?: 'arraybuffer' | 'blob' | 'json' | 'text'; withCredentials?: boolean; }): Observable; /** * Construct a DELETE request which interprets the body as an `ArrayBuffer` and returns it. * * @return an `Observable` of the body as an `ArrayBuffer`. */ delete(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable; /** * Construct a DELETE request which interprets the body as a `Blob` and returns it. * * @return an `Observable` of the body as a `Blob`. */ delete(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable; /** * Construct a DELETE request which interprets the body as text and returns it. * * @return an `Observable` of the body as a `string`. */ delete(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable; /** * Construct a DELETE request which interprets the body as an `ArrayBuffer` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `ArrayBuffer`. */ delete(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct a DELETE request which interprets the body as a `Blob` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Blob`. */ delete(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct a DELETE request which interprets the body as text and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `string`. */ delete(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct a DELETE request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Object`. */ delete(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a DELETE request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `T`. */ delete(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a DELETE request which interprets the body as an `ArrayBuffer` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `ArrayBuffer`. */ delete(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct a DELETE request which interprets the body as a `Blob` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Blob`. */ delete(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct a DELETE request which interprets the body as text and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `string`. */ delete(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct a DELETE request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Object`. */ delete(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a DELETE request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `T`. */ delete(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a DELETE request which interprets the body as JSON and returns it. * * @return an `Observable` of the body as an `Object`. */ delete(url: string, options?: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable; /** * Construct a DELETE request which interprets the body as JSON and returns it. * * @return an `Observable` of the body as type `T`. */ delete(url: string, options?: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable; /** * Construct a GET request which interprets the body as an `ArrayBuffer` and returns it. * * @return an `Observable` of the body as an `ArrayBuffer`. */ get(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable; /** * Construct a GET request which interprets the body as a `Blob` and returns it. * * @return an `Observable` of the body as a `Blob`. */ get(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable; /** * Construct a GET request which interprets the body as text and returns it. * * @return an `Observable` of the body as a `string`. */ get(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable; /** * Construct a GET request which interprets the body as an `ArrayBuffer` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `ArrayBuffer`. */ get(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct a GET request which interprets the body as a `Blob` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Blob`. */ get(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct a GET request which interprets the body as text and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `string`. */ get(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct a GET request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Object`. */ get(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a GET request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `T`. */ get(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a GET request which interprets the body as an `ArrayBuffer` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `ArrayBuffer`. */ get(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct a GET request which interprets the body as a `Blob` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Blob`. */ get(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct a GET request which interprets the body as text and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `string`. */ get(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct a GET request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Object`. */ get(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a GET request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `T`. */ get(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a GET request which interprets the body as JSON and returns it. * * @return an `Observable` of the body as an `Object`. */ get(url: string, options?: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable; /** * Construct a GET request which interprets the body as JSON and returns it. * * @return an `Observable` of the body as type `T`. */ get(url: string, options?: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable; /** * Construct a HEAD request which interprets the body as an `ArrayBuffer` and returns it. * * @return an `Observable` of the body as an `ArrayBuffer`. */ head(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable; head(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable; /** * Construct a HEAD request which interprets the body as text and returns it. * * @return an `Observable` of the body as a `string`. */ head(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable; /** * Construct a GET request which interprets the body as an `ArrayBuffer` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `ArrayBuffer`. */ head(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct a HEAD request which interprets the body as a `Blob` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Blob`. */ head(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct a HEAD request which interprets the body as text and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `string`. */ head(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct a HEAD request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Object`. */ head(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a HEAD request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `T`. */ head(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a HEAD request which interprets the body as an `ArrayBuffer` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `ArrayBuffer`. */ head(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct a HEAD request which interprets the body as a `Blob` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Blob`. */ head(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct a HEAD request which interprets the body as text and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `string`. */ head(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct a HEAD request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Object`. */ head(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a HEAD request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `T`. */ head(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a HEAD request which interprets the body as JSON and returns it. * * @return an `Observable` of the body as an `Object`. */ head(url: string, options?: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable; /** * Construct a HEAD request which interprets the body as JSON and returns it. * * @return an `Observable` of the body as type `T`. */ head(url: string, options?: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable; /** * Construct a JSONP request for the given URL and name of the callback parameter. * * @return an `Observable` of the response object as an `Object` */ jsonp(url: string, callbackParam: string): Observable; /** * Construct a JSONP request for the given URL and name of the callback parameter. * * @return an `Observable` of the response object as type `T`. */ jsonp(url: string, callbackParam: string): Observable; /** * Make an OPTIONS request which interprets the body as an `ArrayBuffer` and returns it. * * @return an `Observable` of the body as an `ArrayBuffer`. */ options(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable; /** * Construct an OPTIONS request which interprets the body as a `Blob` and returns it. * * @return an `Observable` of the body as a `Blob`. */ options(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable; /** * Construct a OPTIONS request which interprets the body as text and returns it. * * @return an `Observable` of the body as a `string`. */ options(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable; /** * Construct an OPTIONS request which interprets the body as an `ArrayBuffer` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `ArrayBuffer`. */ options(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct an OPTIONS request which interprets the body as a `Blob` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Blob`. */ options(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct an OPTIONS request which interprets the body as text and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `string`. */ options(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct an OPTIONS request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Object`. */ options(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct an OPTIONS request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `T`. */ options(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct an OPTIONS request which interprets the body as an `ArrayBuffer` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `ArrayBuffer`. */ options(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct an OPTIONS request which interprets the body as a `Blob` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Blob`. */ options(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct an OPTIONS request which interprets the body as text and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `string`. */ options(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct an OPTIONS request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Object`. */ options(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct an OPTIONS request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `T`. */ options(url: string, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct an OPTIONS request which interprets the body as JSON and returns it. * * @return an `Observable` of the body as an `Object`. */ options(url: string, options?: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable; /** * Construct an OPTIONS request which interprets the body as JSON and returns it. * * @return an `Observable` of the body as type `T`. */ options(url: string, options?: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable; /** * Construct a PATCH request which interprets the body as an `ArrayBuffer` and returns it. * * @return an `Observable` of the body as an `ArrayBuffer`. */ patch(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable; /** * Construct a PATCH request which interprets the body as a `Blob` and returns it. * * @return an `Observable` of the body as a `Blob`. */ patch(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable; /** * Construct a PATCH request which interprets the body as text and returns it. * * @return an `Observable` of the body as a `string`. */ patch(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable; /** * Construct a PATCH request which interprets the body as an `ArrayBuffer` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `ArrayBuffer`. */ patch(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct a PATCH request which interprets the body as a `Blob` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Blob`. */ patch(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct a PATCH request which interprets the body as text and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `string`. */ patch(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct a PATCH request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Object`. */ patch(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a PATCH request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `T`. */ patch(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a PATCH request which interprets the body as an `ArrayBuffer` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `ArrayBuffer`. */ patch(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct a PATCH request which interprets the body as a `Blob` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Blob`. */ patch(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct a PATCH request which interprets the body as text and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `string`. */ patch(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct a PATCH request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Object`. */ patch(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a PATCH request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `T`. */ patch(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a PATCH request which interprets the body as JSON and returns it. * * @return an `Observable` of the body as an `Object`. */ patch(url: string, body: any | null, options?: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable; /** * Construct a PATCH request which interprets the body as JSON and returns it. * * @return an `Observable` of the body as type `T`. */ patch(url: string, body: any | null, options?: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable; /** * Construct a POST request which interprets the body as an `ArrayBuffer` and returns it. * * @return an `Observable` of the body as an `ArrayBuffer`. */ post(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable; /** * Construct a POST request which interprets the body as a `Blob` and returns it. * * @return an `Observable` of the body as a `Blob`. */ post(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable; /** * Construct a POST request which interprets the body as text and returns it. * * @return an `Observable` of the body as a `string`. */ post(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable; /** * Construct a PATCH request which interprets the body as an `ArrayBuffer` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `ArrayBuffer`. */ post(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct a POST request which interprets the body as a `Blob` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Blob`. */ post(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct a POST request which interprets the body as text and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `string`. */ post(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct a POST request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Object`. */ post(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a POST request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `T`. */ post(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a POST request which interprets the body as an `ArrayBuffer` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `ArrayBuffer`. */ post(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct a POST request which interprets the body as a `Blob` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Blob`. */ post(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct a POST request which interprets the body as text and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `string`. */ post(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct a POST request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Object`. */ post(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a POST request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `T`. */ post(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a POST request which interprets the body as JSON and returns it. * * @return an `Observable` of the body as an `Object`. */ post(url: string, body: any | null, options?: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable; /** * Construct a POST request which interprets the body as JSON and returns it. * * @return an `Observable` of the body as type `T`. */ post(url: string, body: any | null, options?: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable; /** * Construct a PUT request which interprets the body as an `ArrayBuffer` and returns it. * * @return an `Observable` of the body as an `ArrayBuffer`. */ put(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable; /** * Construct a PUT request which interprets the body as a `Blob` and returns it. * * @return an `Observable` of the body as a `Blob`. */ put(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable; /** * Construct a PUT request which interprets the body as text and returns it. * * @return an `Observable` of the body as a `string`. */ put(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable; /** * Construct a PUT request which interprets the body as an `ArrayBuffer` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `ArrayBuffer`. */ put(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct a PUT request which interprets the body as a `Blob` and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Blob`. */ put(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct a PUT request which interprets the body as text and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `string`. */ put(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct a PUT request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `Object`. */ put(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a PUT request which interprets the body as JSON and returns the full event stream. * * @return an `Observable` of all `HttpEvent`s for the request, with a body type of `T`. */ put(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'events'; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a PUT request which interprets the body as an `ArrayBuffer` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `ArrayBuffer`. */ put(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'arraybuffer'; withCredentials?: boolean; }): Observable>; /** * Construct a PUT request which interprets the body as a `Blob` and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Blob`. */ put(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'blob'; withCredentials?: boolean; }): Observable>; /** * Construct a PUT request which interprets the body as text and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `string`. */ put(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType: 'text'; withCredentials?: boolean; }): Observable>; /** * Construct a PUT request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `Object`. */ put(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a PUT request which interprets the body as JSON and returns the full response. * * @return an `Observable` of the `HttpResponse` for the request, with a body type of `T`. */ put(url: string, body: any | null, options: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe: 'response'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable>; /** * Construct a PUT request which interprets the body as JSON and returns it. * * @return an `Observable` of the body as an `Object`. */ put(url: string, body: any | null, options?: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable; /** * Construct a PUT request which interprets the body as JSON and returns it. * * @return an `Observable` of the body as type `T`. */ put(url: string, body: any | null, options?: { headers?: HttpHeaders | { [header: string]: string | string[]; }; observe?: 'body'; params?: HttpParams | { [param: string]: string | string[]; }; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable; }