UNPKG

@buckaroo/buckaroo_sdk

Version:
24 lines (23 loc) 1.82 kB
import Headers, { RequestConfig } from './Headers'; import { BatchRequestResponse, HttpResponseConstructor, IRequest, IService, SpecificationRequestResponse, TransactionResponse } from '../Models'; import { DataRequestData, SpecificationRequestData, TransactionData } from './DataModels'; import { HttpMethods, RequestTypes } from '../Constants'; import { ICredentials } from '../Utils'; export default class Request<HttpResponse extends HttpResponseConstructor = HttpResponseConstructor, RequestData extends object | undefined = undefined> extends Headers { protected _path?: string; protected _data?: object | object[] | undefined; protected _httpMethod: HttpMethods; protected _responseHandler?: HttpResponseConstructor; constructor(path?: string, method?: HttpMethods, data?: RequestData, responseHandler?: HttpResponse); get data(): RequestData; get httpMethod(): HttpMethods; get url(): URL; protected get responseHandler(): HttpResponse; static Transaction(payload?: IRequest): Request<typeof TransactionResponse, TransactionData>; static DataRequest(payload?: IRequest): Request<typeof TransactionResponse, DataRequestData>; static Specification<T extends IService[] | IService>(type: RequestTypes.Data | RequestTypes.Transaction, data: T): T extends IService[] ? Request<typeof SpecificationRequestResponse, SpecificationRequestData> : Request<typeof SpecificationRequestResponse>; static BatchTransaction(payload?: IRequest[]): Request<typeof BatchRequestResponse, TransactionData[]>; static BatchDataRequest(data?: DataRequestData[]): Request<typeof BatchRequestResponse, DataRequestData[]>; request(options?: RequestConfig): Promise<InstanceType<HttpResponse>>; protected setAuthorizationHeader(data?: object, credentials?: ICredentials): this; }