UNPKG

@simbachain/simbats

Version:
135 lines 5.08 kB
import { AxiosResponse } from "axios"; import FormData from "form-data"; export declare enum RequestMethods { POST = "POST", PUT = "PUT", DELETE = "DELETE", GET = "GET" } /** * class for making HTTP requests */ export declare class RequestHandler { baseURL: string; constructor(baseURL?: string); /** * method for building a URL, accounting for redundant slashes, etc. * @param baseURL * @param endpoint * @returns {string} */ buildURL(baseURL: string, endpoint: string): string; /** * general method for making HTTP requests. never gets called directly * @param url * @param method * @param options * @param data * @param parseDataFromResponse * @returns {Promise<AxiosResponse<any> | Record<any, any> | Array<any>>} */ doHTTPRequest(url: string, method: string, options: Record<any, any>, data?: Record<any, any>, parseDataFromResponse?: boolean): Promise<AxiosResponse<any> | Record<any, any> | Array<any>>; /** * do post request * @param url * @param options * @param data * @param parseDataFromResponse * @returns {Promise<AxiosResponse<any> | Record<any, any> | Array<any>>} */ doPostRequest(url: string, options: Record<any, any>, data?: Record<any, any>, parseDataFromResponse?: boolean): Promise<AxiosResponse<any> | Record<any, any> | Array<any>>; /** * do get request * @param url * @param options * @param parseDataFromResponse * @param responseType * @returns {Promise<AxiosResponse<any> | Record<any, any> | Array<any>>} */ doGetRequest(url: string, options: Record<any, any>, parseDataFromResponse?: boolean, responseType?: string): Promise<AxiosResponse<any> | Record<any, any> | Array<any>>; /** * do put request * @param url * @param options * @param data * @param parseDataFromResponse * @returns {Promise<AxiosResponse<any> | Record<any, any> | Array<any>>} */ doPutRequest(url: string, options: Record<any, any>, data?: Record<any, any>, parseDataFromResponse?: boolean): Promise<AxiosResponse<any> | Record<any, any> | Array<any>>; /** * do delete request * @param url * @param options * @param data * @param parseDataFromResponse * @returns {Promise<AxiosResponse<any> | Record<any, any> | Array<any>>} */ doDeleteRequest(url: string, options: Record<any, any>, data?: Record<any, any>, parseDataFromResponse?: boolean): Promise<AxiosResponse<any> | Record<any, any> | Array<any>>; /** * method for generating headers for form data * @param options * @param formData * @returns {Record<any, any>} */ formDataHeaders(options: Record<any, any>, formData: FormData): Record<any, any>; /** * method for generating form data, by passing file paths and method inputs * @param inputs * @param filePaths * @returns {FormData} */ formDataFromFilePathsAndInputs(inputs: Record<any, any>, filePaths: Array<string>): FormData; /** * do post or put request with form data * never gets called directly * @param url * @param method * @param formData * @param headers * @param parseDataFromResponse * @returns {Promise<AxiosResponse<any> | Record<any, any> | Array<any>>} */ private doPostOrPutRequestWithFormData; /** * do post request with form data * @param url * @param formData * @param headers * @param parseDataFromResponse * @returns {Promise<AxiosResponse<any> | Record<any, any> | Array<any>>} */ doPostRequestWithFormData(url: string, formData: FormData, headers: Record<any, any>, parseDataFromResponse?: boolean): Promise<AxiosResponse<any> | Record<any, any> | Array<any>>; /** * do put request with form data * @param url * @param formData * @param headers * @param parseDataFromResponse * @returns {Promise<Record<any, any>>} */ doPutRequestWithFormData(url: string, formData: FormData, headers: Record<any, any>, parseDataFromResponse?: boolean): Promise<AxiosResponse<any> | Record<any, any> | Array<any>>; /** * generate auth token from client creds * @returns {Promise<Record<any, any>>} */ getAuthTokenFromClientCreds(): Promise<Record<any, any>>; /** * generate auth token, then set in authconfig.json * @returns {Promise<Record<any, any>>} */ setAndGetAuthToken(): Promise<Record<any, any>>; /** * returns headers with access token * @returns {Promise<Record<any, any>>} */ accessTokenHeader(): Promise<Record<any, any>>; /** * generate headers with access token and other headers * @param contentType * @param queryParams * @param addContentType * @returns {Promise<Record<any, any>>} */ getAuthAndOptions(contentType?: string, queryParams?: Record<any, any>, addContentType?: boolean): Promise<Record<any, any>>; } //# sourceMappingURL=request_handler.d.ts.map