Skip to content
Permalink
9bfb9ba527
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
94 lines (80 sloc) 2.18 KB
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information.
import { WebResourceLike } from "./webResource";
import { HttpHeadersLike } from "./httpHeaders";
/**
* The properties on an HTTP response which will always be present.
*/
export interface HttpResponse {
/**
* The raw request
*/
request: WebResourceLike;
/**
* The HTTP response status (e.g. 200)
*/
status: number;
/**
* The HTTP response headers.
*/
headers: HttpHeadersLike;
}
declare global {
/**
* Stub declaration of the browser-only Blob type.
* Full type information can be obtained by including "lib": ["dom"] in tsconfig.json.
*/
interface Blob {}
}
/**
* Wrapper object for http request and response. Deserialized object is stored in
* the `parsedBody` property when the response body is received in JSON or XML.
*/
export interface HttpOperationResponse extends HttpResponse {
/**
* The parsed HTTP response headers.
*/
parsedHeaders?: { [key: string]: any };
/**
* The response body as text (string format)
*/
bodyAsText?: string | null;
/**
* The response body as parsed JSON or XML
*/
parsedBody?: any;
/**
* BROWSER ONLY
*
* The response body as a browser Blob.
* Always undefined in node.js.
*/
blobBody?: Promise<Blob>;
/**
* NODEJS ONLY
*
* The response body as a node.js Readable stream.
* Always undefined in the browser.
*/
readableStreamBody?: NodeJS.ReadableStream;
/**
* The redirected property indicates whether the response is the result of a request which was redirected.
*/
redirected?: boolean;
/**
* The url property contains the URL of the response. The value will be the final URL obtained after any redirects.
*/
url?: string;
}
/**
* The flattened response to a REST call.
* Contains the underlying HttpOperationResponse as well as
* the merged properties of the parsedBody, parsedHeaders, etc.
*/
export interface RestResponse {
/**
* The underlying HTTP response containing both raw and deserialized response data.
*/
_response: HttpOperationResponse;
[key: string]: any;
}