graphdb
Version:
Javascript client library supporting GraphDB and RDF4J REST API.
201 lines (200 loc) • 5.04 kB
TypeScript
export = HttpRequestBuilder;
/**
* Holds request information applicable to {@link HttpClient}.
*
* @class
*
* @author Mihail Radkov
* @author Svilen Velikov
*/
declare class HttpRequestBuilder {
/**
* Prepares new builder for HTTP GET request against the provided URL.
*
* @static
* @param {string} url
* @return {HttpRequestBuilder}
*/
static httpGet(url: string): HttpRequestBuilder;
/**
* Prepares new builder for HTTP POST request against the provided URL.
*
* @static
* @param {string} url
* @return {HttpRequestBuilder}
*/
static httpPost(url: string): HttpRequestBuilder;
/**
* Prepares new builder for HTTP PUT request against the provided URL.
*
* @static
* @param {string} url
* @return {HttpRequestBuilder}
*/
static httpPut(url: string): HttpRequestBuilder;
/**
* Prepares new builder for HTTP PATCH request against the provided URL.
*
* @static
* @param {string} url
* @return {HttpRequestBuilder}
*/
static httpPatch(url: string): HttpRequestBuilder;
/**
* Prepares new builder for HTTP DELETE request against the provided URL.
*
* @static
* @param {string} url
* @return {HttpRequestBuilder}
*/
static httpDelete(url: string): HttpRequestBuilder;
config: {};
/**
* Add a new http header entry. Blank values are skipped.
*
* @param {string} header type
* @param {string} value the header value
* @return {HttpRequestBuilder}
*/
addHeader(header: string, value: string): HttpRequestBuilder;
/**
* Sets the headers map.
*
* @param {Object<string, string>} headers the headers map
* @return {HttpRequestBuilder}
*/
setHeaders(headers: {
[x: string]: string;
}): HttpRequestBuilder;
/**
* Returns the headers map.
*
* @return {Object<string, string>}
*/
getHeaders(): {
[x: string]: string;
};
/**
* Add a specific header of type <code>Accept</code> with the given value.
*
* @param {string} value
* @return {HttpRequestBuilder}
*/
addAcceptHeader(value: string): HttpRequestBuilder;
/**
* Add a specific header of type <code>Content-Type</code> with the given
* value.
*
* @param {string} value
* @return {HttpRequestBuilder}
*/
addContentTypeHeader(value: string): HttpRequestBuilder;
/**
* Add a custom GraphDB header which holds a user password for base
* authentication.
*
* @param {string} value
* @return {HttpRequestBuilder}
*/
addGraphDBPasswordHeader(value: string): HttpRequestBuilder;
/**
* Add an Authorization header which holds an authorization token.
*
* @param {string} value
* @return {HttpRequestBuilder}
*/
addAuthorizationHeader(value: string): HttpRequestBuilder;
/**
* Set request parameters object.
*
* @param {Object} params
* @return {HttpRequestBuilder}
*/
setParams(params: any): HttpRequestBuilder;
/**
* Add a new request param.
*
* @param {string} param
* @param {*} value
* @return {HttpRequestBuilder}
*/
addParam(param: string, value: any): HttpRequestBuilder;
/**
* Returns the request parameters map.
*
* @return {Object<string, *>}
*/
getParams(): {
[x: string]: any;
};
/**
* Set timeout configuration.
*
* @param {number} timeout in ms
* @return {HttpRequestBuilder}
*/
setTimeout(timeout: number): HttpRequestBuilder;
/**
* Returns the request timeout.
*
* @return {number}
*/
getTimeout(): number;
/**
* Set a responseType config.
*
* @param {string} responseType
* @return {HttpRequestBuilder}
*/
setResponseType(responseType: string): HttpRequestBuilder;
/**
* Returns the request's response type.
*
* @return {string}
*/
getResponseType(): string;
/**
* Sets the data to be sent as request payload.
*
* @param {*} data the payload
* @return {HttpRequestBuilder}
*/
setData(data: any): HttpRequestBuilder;
/**
* Gets the data to be sent as payload.
*
* @return {*}
*/
getData(): any;
/**
* Sets the URL against which to perform the request.
*
* @param {string} url
* @return {HttpRequestBuilder}
*/
setUrl(url: string): HttpRequestBuilder;
/**
* Gets the URL.
*
* @return {string}
*/
getUrl(): string;
/**
* Sets the HTTP method.
*
* @param {string} method
* @return {HttpRequestBuilder}
*/
setMethod(method: string): HttpRequestBuilder;
/**
* Gets the HTTP method.
*
* @return {string}
*/
getMethod(): string;
/**
* Getter for the configuration.
* @return {Object}
*/
get(): any;
}