/* tslint:disable */ /* eslint-disable */ /** * Credify API doc version 1 * API documentations version 1. * * The version of the OpenAPI document: 1.0.0-oas3 * Contact: dev@credify.one * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import globalAxios, { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios'; import { Configuration } from '../configuration'; // Some imports not used depending on template conditions // @ts-ignore import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from '../common'; // @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base'; // @ts-ignore import { CommonResponse } from '../model'; // @ts-ignore import { DisputeRequest } from '../model'; // @ts-ignore import { DisputeStatus } from '../model'; // @ts-ignore import { DisputeUpdateRequest } from '../model'; // @ts-ignore import { DisputesListResponse } from '../model'; /** * DisputesApi - axios parameter creator * @export */ export const DisputesApiAxiosParamCreator = function (configuration?: Configuration) { return { /** * This returns a list of disputes for admin. Admin can see the disputes list and deal with them one by one. * @summary Get disputes list * @param {number} [page] * @param {number} [limit] * @param {string} [claimingEntityId] * @param {string} [offerCode] * @param {DisputeStatus} [status] * @param {*} [options] Override http request option. * @throws {RequiredError} */ getDisputeList: async (page?: number, limit?: number, claimingEntityId?: string, offerCode?: string, status?: DisputeStatus, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/v1/disputes`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication bearerAuth required // http bearer authentication required await setBearerAuthToObject(localVarHeaderParameter, configuration) if (page !== undefined) { localVarQueryParameter['page'] = page; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (claimingEntityId !== undefined) { localVarQueryParameter['claiming_entity_id'] = claimingEntityId; } if (offerCode !== undefined) { localVarQueryParameter['offer_code'] = offerCode; } if (status !== undefined) { localVarQueryParameter['status'] = status; } setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This operation opens a dispute case. The actual conflict resolution process will be done on email for now. This will send a notification email to admin and insert a new dispute item in disputes list. * @summary Claim an offer redemption * @param {string} id Approval ID * @param {DisputeRequest} [disputeRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ requestDisputeProcess: async (id: string, disputeRequest?: DisputeRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('requestDisputeProcess', 'id', id) const localVarPath = `/v1/offers/transactions/{id}/dispute` .replace(`{${"id"}}`, encodeURIComponent(String(id))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication bearerAuth required // http bearer authentication required await setBearerAuthToObject(localVarHeaderParameter, configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = disputeRequest return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This operation updates a dispute status. Admin can approve/reject the opened disputes. Each new dispute cases will have `NEW` status at first, and admin will `start` the case, which will update its status to `IN_PROCESS`. Once, this process is done, admin will update its status to `APPROVED` or `REJECTED`. * @summary Update dispute status * @param {string} id Dispute ID * @param {DisputeUpdateRequest} [disputeUpdateRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ updateDisputeStatus: async (id: string, disputeUpdateRequest?: DisputeUpdateRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('updateDisputeStatus', 'id', id) const localVarPath = `/v1/disputes/{id}/status` .replace(`{${"id"}}`, encodeURIComponent(String(id))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication bearerAuth required // http bearer authentication required await setBearerAuthToObject(localVarHeaderParameter, configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = disputeUpdateRequest return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, } }; /** * DisputesApi - functional programming interface * @export */ export const DisputesApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = DisputesApiAxiosParamCreator(configuration) return { /** * This returns a list of disputes for admin. Admin can see the disputes list and deal with them one by one. * @summary Get disputes list * @param {number} [page] * @param {number} [limit] * @param {string} [claimingEntityId] * @param {string} [offerCode] * @param {DisputeStatus} [status] * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getDisputeList(page?: number, limit?: number, claimingEntityId?: string, offerCode?: string, status?: DisputeStatus, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getDisputeList(page, limit, claimingEntityId, offerCode, status, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This operation opens a dispute case. The actual conflict resolution process will be done on email for now. This will send a notification email to admin and insert a new dispute item in disputes list. * @summary Claim an offer redemption * @param {string} id Approval ID * @param {DisputeRequest} [disputeRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ async requestDisputeProcess(id: string, disputeRequest?: DisputeRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.requestDisputeProcess(id, disputeRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This operation updates a dispute status. Admin can approve/reject the opened disputes. Each new dispute cases will have `NEW` status at first, and admin will `start` the case, which will update its status to `IN_PROCESS`. Once, this process is done, admin will update its status to `APPROVED` or `REJECTED`. * @summary Update dispute status * @param {string} id Dispute ID * @param {DisputeUpdateRequest} [disputeUpdateRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ async updateDisputeStatus(id: string, disputeUpdateRequest?: DisputeUpdateRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.updateDisputeStatus(id, disputeUpdateRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** * DisputesApi - factory interface * @export */ export const DisputesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = DisputesApiFp(configuration) return { /** * This returns a list of disputes for admin. Admin can see the disputes list and deal with them one by one. * @summary Get disputes list * @param {number} [page] * @param {number} [limit] * @param {string} [claimingEntityId] * @param {string} [offerCode] * @param {DisputeStatus} [status] * @param {*} [options] Override http request option. * @throws {RequiredError} */ getDisputeList(page?: number, limit?: number, claimingEntityId?: string, offerCode?: string, status?: DisputeStatus, options?: any): AxiosPromise { return localVarFp.getDisputeList(page, limit, claimingEntityId, offerCode, status, options).then((request) => request(axios, basePath)); }, /** * This operation opens a dispute case. The actual conflict resolution process will be done on email for now. This will send a notification email to admin and insert a new dispute item in disputes list. * @summary Claim an offer redemption * @param {string} id Approval ID * @param {DisputeRequest} [disputeRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ requestDisputeProcess(id: string, disputeRequest?: DisputeRequest, options?: any): AxiosPromise { return localVarFp.requestDisputeProcess(id, disputeRequest, options).then((request) => request(axios, basePath)); }, /** * This operation updates a dispute status. Admin can approve/reject the opened disputes. Each new dispute cases will have `NEW` status at first, and admin will `start` the case, which will update its status to `IN_PROCESS`. Once, this process is done, admin will update its status to `APPROVED` or `REJECTED`. * @summary Update dispute status * @param {string} id Dispute ID * @param {DisputeUpdateRequest} [disputeUpdateRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ updateDisputeStatus(id: string, disputeUpdateRequest?: DisputeUpdateRequest, options?: any): AxiosPromise { return localVarFp.updateDisputeStatus(id, disputeUpdateRequest, options).then((request) => request(axios, basePath)); }, }; }; /** * DisputesApi - interface * @export * @interface DisputesApi */ export interface DisputesApiInterface { /** * This returns a list of disputes for admin. Admin can see the disputes list and deal with them one by one. * @summary Get disputes list * @param {number} [page] * @param {number} [limit] * @param {string} [claimingEntityId] * @param {string} [offerCode] * @param {DisputeStatus} [status] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DisputesApiInterface */ getDisputeList(page?: number, limit?: number, claimingEntityId?: string, offerCode?: string, status?: DisputeStatus, options?: AxiosRequestConfig): AxiosPromise; /** * This operation opens a dispute case. The actual conflict resolution process will be done on email for now. This will send a notification email to admin and insert a new dispute item in disputes list. * @summary Claim an offer redemption * @param {string} id Approval ID * @param {DisputeRequest} [disputeRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DisputesApiInterface */ requestDisputeProcess(id: string, disputeRequest?: DisputeRequest, options?: AxiosRequestConfig): AxiosPromise; /** * This operation updates a dispute status. Admin can approve/reject the opened disputes. Each new dispute cases will have `NEW` status at first, and admin will `start` the case, which will update its status to `IN_PROCESS`. Once, this process is done, admin will update its status to `APPROVED` or `REJECTED`. * @summary Update dispute status * @param {string} id Dispute ID * @param {DisputeUpdateRequest} [disputeUpdateRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DisputesApiInterface */ updateDisputeStatus(id: string, disputeUpdateRequest?: DisputeUpdateRequest, options?: AxiosRequestConfig): AxiosPromise; } /** * DisputesApi - object-oriented interface * @export * @class DisputesApi * @extends {BaseAPI} */ export class DisputesApi extends BaseAPI implements DisputesApiInterface { /** * This returns a list of disputes for admin. Admin can see the disputes list and deal with them one by one. * @summary Get disputes list * @param {number} [page] * @param {number} [limit] * @param {string} [claimingEntityId] * @param {string} [offerCode] * @param {DisputeStatus} [status] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DisputesApi */ public getDisputeList(page?: number, limit?: number, claimingEntityId?: string, offerCode?: string, status?: DisputeStatus, options?: AxiosRequestConfig) { return DisputesApiFp(this.configuration).getDisputeList(page, limit, claimingEntityId, offerCode, status, options).then((request) => request(this.axios, this.basePath)); } /** * This operation opens a dispute case. The actual conflict resolution process will be done on email for now. This will send a notification email to admin and insert a new dispute item in disputes list. * @summary Claim an offer redemption * @param {string} id Approval ID * @param {DisputeRequest} [disputeRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DisputesApi */ public requestDisputeProcess(id: string, disputeRequest?: DisputeRequest, options?: AxiosRequestConfig) { return DisputesApiFp(this.configuration).requestDisputeProcess(id, disputeRequest, options).then((request) => request(this.axios, this.basePath)); } /** * This operation updates a dispute status. Admin can approve/reject the opened disputes. Each new dispute cases will have `NEW` status at first, and admin will `start` the case, which will update its status to `IN_PROCESS`. Once, this process is done, admin will update its status to `APPROVED` or `REJECTED`. * @summary Update dispute status * @param {string} id Dispute ID * @param {DisputeUpdateRequest} [disputeUpdateRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DisputesApi */ public updateDisputeStatus(id: string, disputeUpdateRequest?: DisputeUpdateRequest, options?: AxiosRequestConfig) { return DisputesApiFp(this.configuration).updateDisputeStatus(id, disputeUpdateRequest, options).then((request) => request(this.axios, this.basePath)); } }