UNPKG

wallee

Version:
1,029 lines 74.6 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.TransactionService = void 0; const Promise = require("bluebird"); const axios = require("axios"); const HMACAuthentication_1 = require("../auth/HMACAuthentication"); const ObjectSerializer_1 = require("../serializers/ObjectSerializer"); const ClientError_1 = require("../models/ClientError"); const ServerError_1 = require("../models/ServerError"); class TransactionService { constructor(configuration) { this._basePath = 'https://app-wallee.com:443/api'; this._defaultHeaders = {}; this._useQuerystring = false; this._timeout = 25; this._defaultAuthentication = new HMACAuthentication_1.HMACAuthentication(configuration).apply; this._defaultHeaders = configuration.default_headers; this.setTimeout(configuration.timeout); } /** * Set timeout in seconds. Default timeout: 25 seconds * @param {number} timeout */ set timeout(timeout) { this.setTimeout(timeout); } setTimeout(timeout) { if (timeout !== undefined) { if (!Number.isInteger(timeout)) { throw new Error('Timeout value has to be integer'); } if (timeout) { this._timeout = timeout; } else { throw new Error('Timeout value has to be greater than 0'); } } } set basePath(basePath) { this._basePath = basePath; } get basePath() { return this._basePath; } setDefaultAuthentication(auth) { this._defaultAuthentication = auth; } getVersion() { if (typeof (process) !== 'undefined' && process && process.version) { return 'node ' + process.version; } else { return 'unknown'; } } /** * Exports the transactions into a CSV file. The file will contain the properties defined in the request. * @summary Export * @param spaceId * @param request The request controls the entries which are exported. * @param {*} [options] Override http request options. */ _export(spaceId, request, options = {}) { const url = '/transaction/export'; let queryParams = {}; let headers = Object.assign({}, this._defaultHeaders); // verify required parameter 'spaceId' is not null or undefined if (spaceId === null || spaceId === undefined) { throw new Error('Required parameter spaceId was null or undefined when calling _export.'); } // verify required parameter 'request' is not null or undefined if (request === null || request === undefined) { throw new Error('Required parameter request was null or undefined when calling _export.'); } if (spaceId !== undefined) { queryParams['spaceId'] = ObjectSerializer_1.ObjectSerializer.serialize(spaceId, "number"); } headers['Content-Type'] = 'application/json;charset=utf-8'; Object.assign(headers, options.headers); let defaultHeaders = { "x-meta-sdk-version": "4.7.0", "x-meta-sdk-language": "typescript", "x-meta-sdk-provider": "wallee", "x-meta-sdk-language-version": this.getVersion(), }; Object.assign(headers, defaultHeaders); let requestConfig = { url, method: 'POST', baseURL: this._basePath, headers, params: queryParams, data: request, timeout: this._timeout * 1000, responseType: 'json', }; const axiosInstance = axios.default.create(); axiosInstance.interceptors.request.use(this._defaultAuthentication); return new Promise((resolve, reject) => { axiosInstance.request(requestConfig) .then(success => { let body; body = ObjectSerializer_1.ObjectSerializer.deserialize(success.data, "string"); return resolve({ response: success.request.res, body: body }); }, failure => { var _a, _b, _c, _d, _e; let errorObject; if ((_a = failure.response) === null || _a === void 0 ? void 0 : _a.status) { if (failure.response.status >= 400 && failure.response.status <= 499) { errorObject = new ClientError_1.ClientError(); } else if (failure.response.status >= 500 && failure.response.status <= 599) { errorObject = new ServerError_1.ServerError(); } else { errorObject = new Object(); } } else { errorObject = new Object(); } return reject({ errorType: errorObject.constructor.name, date: (new Date()).toDateString(), statusCode: ((_b = failure.response) === null || _b === void 0 ? void 0 : _b.status) && isNaN(failure.response.status) ? String(failure.response.status) : "Unknown", statusMessage: ((_c = failure.response) === null || _c === void 0 ? void 0 : _c.statusText) != null ? failure.response.statusText : "Unknown", body: (_d = failure.response) === null || _d === void 0 ? void 0 : _d.data, response: (_e = failure.response) === null || _e === void 0 ? void 0 : _e.request.res }); }) .catch(error => { return reject(error); }); }); } ; /** * The confirm operation marks the transaction as confirmed. Once the transaction is confirmed no more changes can be applied. * @summary Confirm * @param spaceId * @param transactionModel The transaction JSON object to update and confirm. * @param {*} [options] Override http request options. */ confirm(spaceId, transactionModel, options = {}) { const url = '/transaction/confirm'; let queryParams = {}; let headers = Object.assign({}, this._defaultHeaders); // verify required parameter 'spaceId' is not null or undefined if (spaceId === null || spaceId === undefined) { throw new Error('Required parameter spaceId was null or undefined when calling confirm.'); } // verify required parameter 'transactionModel' is not null or undefined if (transactionModel === null || transactionModel === undefined) { throw new Error('Required parameter transactionModel was null or undefined when calling confirm.'); } if (spaceId !== undefined) { queryParams['spaceId'] = ObjectSerializer_1.ObjectSerializer.serialize(spaceId, "number"); } headers['Content-Type'] = 'application/json;charset=utf-8'; Object.assign(headers, options.headers); let defaultHeaders = { "x-meta-sdk-version": "4.7.0", "x-meta-sdk-language": "typescript", "x-meta-sdk-provider": "wallee", "x-meta-sdk-language-version": this.getVersion(), }; Object.assign(headers, defaultHeaders); let requestConfig = { url, method: 'POST', baseURL: this._basePath, headers, params: queryParams, data: transactionModel, timeout: this._timeout * 1000, responseType: 'json', }; const axiosInstance = axios.default.create(); axiosInstance.interceptors.request.use(this._defaultAuthentication); return new Promise((resolve, reject) => { axiosInstance.request(requestConfig) .then(success => { let body; body = ObjectSerializer_1.ObjectSerializer.deserialize(success.data, "Transaction"); return resolve({ response: success.request.res, body: body }); }, failure => { var _a, _b, _c, _d, _e; let errorObject; if ((_a = failure.response) === null || _a === void 0 ? void 0 : _a.status) { if (failure.response.status >= 400 && failure.response.status <= 499) { errorObject = new ClientError_1.ClientError(); } else if (failure.response.status >= 500 && failure.response.status <= 599) { errorObject = new ServerError_1.ServerError(); } else { errorObject = new Object(); } } else { errorObject = new Object(); } return reject({ errorType: errorObject.constructor.name, date: (new Date()).toDateString(), statusCode: ((_b = failure.response) === null || _b === void 0 ? void 0 : _b.status) && isNaN(failure.response.status) ? String(failure.response.status) : "Unknown", statusMessage: ((_c = failure.response) === null || _c === void 0 ? void 0 : _c.statusText) != null ? failure.response.statusText : "Unknown", body: (_d = failure.response) === null || _d === void 0 ? void 0 : _d.data, response: (_e = failure.response) === null || _e === void 0 ? void 0 : _e.request.res }); }) .catch(error => { return reject(error); }); }); } ; /** * Counts the number of items in the database as restricted by the given filter. * @summary Count * @param spaceId * @param filter The filter which restricts the entities which are used to calculate the count. * @param {*} [options] Override http request options. */ count(spaceId, filter, options = {}) { const url = '/transaction/count'; let queryParams = {}; let headers = Object.assign({}, this._defaultHeaders); // verify required parameter 'spaceId' is not null or undefined if (spaceId === null || spaceId === undefined) { throw new Error('Required parameter spaceId was null or undefined when calling count.'); } if (spaceId !== undefined) { queryParams['spaceId'] = ObjectSerializer_1.ObjectSerializer.serialize(spaceId, "number"); } headers['Content-Type'] = 'application/json;charset=utf-8'; Object.assign(headers, options.headers); let defaultHeaders = { "x-meta-sdk-version": "4.7.0", "x-meta-sdk-language": "typescript", "x-meta-sdk-provider": "wallee", "x-meta-sdk-language-version": this.getVersion(), }; Object.assign(headers, defaultHeaders); let requestConfig = { url, method: 'POST', baseURL: this._basePath, headers, params: queryParams, data: filter, timeout: this._timeout * 1000, responseType: 'json', }; const axiosInstance = axios.default.create(); axiosInstance.interceptors.request.use(this._defaultAuthentication); return new Promise((resolve, reject) => { axiosInstance.request(requestConfig) .then(success => { let body; body = ObjectSerializer_1.ObjectSerializer.deserialize(success.data, "number"); return resolve({ response: success.request.res, body: body }); }, failure => { var _a, _b, _c, _d, _e; let errorObject; if ((_a = failure.response) === null || _a === void 0 ? void 0 : _a.status) { if (failure.response.status >= 400 && failure.response.status <= 499) { errorObject = new ClientError_1.ClientError(); } else if (failure.response.status >= 500 && failure.response.status <= 599) { errorObject = new ServerError_1.ServerError(); } else { errorObject = new Object(); } } else { errorObject = new Object(); } return reject({ errorType: errorObject.constructor.name, date: (new Date()).toDateString(), statusCode: ((_b = failure.response) === null || _b === void 0 ? void 0 : _b.status) && isNaN(failure.response.status) ? String(failure.response.status) : "Unknown", statusMessage: ((_c = failure.response) === null || _c === void 0 ? void 0 : _c.statusText) != null ? failure.response.statusText : "Unknown", body: (_d = failure.response) === null || _d === void 0 ? void 0 : _d.data, response: (_e = failure.response) === null || _e === void 0 ? void 0 : _e.request.res }); }) .catch(error => { return reject(error); }); }); } ; /** * Creates the entity with the given properties. * @summary Create * @param spaceId * @param transaction The transaction object which should be created. * @param {*} [options] Override http request options. */ create(spaceId, transaction, options = {}) { const url = '/transaction/create'; let queryParams = {}; let headers = Object.assign({}, this._defaultHeaders); // verify required parameter 'spaceId' is not null or undefined if (spaceId === null || spaceId === undefined) { throw new Error('Required parameter spaceId was null or undefined when calling create.'); } // verify required parameter 'transaction' is not null or undefined if (transaction === null || transaction === undefined) { throw new Error('Required parameter transaction was null or undefined when calling create.'); } if (spaceId !== undefined) { queryParams['spaceId'] = ObjectSerializer_1.ObjectSerializer.serialize(spaceId, "number"); } headers['Content-Type'] = 'application/json;charset=utf-8'; Object.assign(headers, options.headers); let defaultHeaders = { "x-meta-sdk-version": "4.7.0", "x-meta-sdk-language": "typescript", "x-meta-sdk-provider": "wallee", "x-meta-sdk-language-version": this.getVersion(), }; Object.assign(headers, defaultHeaders); let requestConfig = { url, method: 'POST', baseURL: this._basePath, headers, params: queryParams, data: transaction, timeout: this._timeout * 1000, responseType: 'json', }; const axiosInstance = axios.default.create(); axiosInstance.interceptors.request.use(this._defaultAuthentication); return new Promise((resolve, reject) => { axiosInstance.request(requestConfig) .then(success => { let body; body = ObjectSerializer_1.ObjectSerializer.deserialize(success.data, "Transaction"); return resolve({ response: success.request.res, body: body }); }, failure => { var _a, _b, _c, _d, _e; let errorObject; if ((_a = failure.response) === null || _a === void 0 ? void 0 : _a.status) { if (failure.response.status >= 400 && failure.response.status <= 499) { errorObject = new ClientError_1.ClientError(); } else if (failure.response.status >= 500 && failure.response.status <= 599) { errorObject = new ServerError_1.ServerError(); } else { errorObject = new Object(); } } else { errorObject = new Object(); } return reject({ errorType: errorObject.constructor.name, date: (new Date()).toDateString(), statusCode: ((_b = failure.response) === null || _b === void 0 ? void 0 : _b.status) && isNaN(failure.response.status) ? String(failure.response.status) : "Unknown", statusMessage: ((_c = failure.response) === null || _c === void 0 ? void 0 : _c.statusText) != null ? failure.response.statusText : "Unknown", body: (_d = failure.response) === null || _d === void 0 ? void 0 : _d.data, response: (_e = failure.response) === null || _e === void 0 ? void 0 : _e.request.res }); }) .catch(error => { return reject(error); }); }); } ; /** * This operation allows to create transaction credentials to delegate temporarily the access to the web service API for this particular transaction. * @summary Create Transaction Credentials * @param spaceId * @param id The id of the transaction which should be returned. * @param {*} [options] Override http request options. */ createTransactionCredentials(spaceId, id, options = {}) { const url = '/transaction/createTransactionCredentials'; let queryParams = {}; let headers = Object.assign({}, this._defaultHeaders); // verify required parameter 'spaceId' is not null or undefined if (spaceId === null || spaceId === undefined) { throw new Error('Required parameter spaceId was null or undefined when calling createTransactionCredentials.'); } // verify required parameter 'id' is not null or undefined if (id === null || id === undefined) { throw new Error('Required parameter id was null or undefined when calling createTransactionCredentials.'); } if (spaceId !== undefined) { queryParams['spaceId'] = ObjectSerializer_1.ObjectSerializer.serialize(spaceId, "number"); } if (id !== undefined) { queryParams['id'] = ObjectSerializer_1.ObjectSerializer.serialize(id, "number"); } headers['Content-Type'] = 'application/json'; Object.assign(headers, options.headers); let defaultHeaders = { "x-meta-sdk-version": "4.7.0", "x-meta-sdk-language": "typescript", "x-meta-sdk-provider": "wallee", "x-meta-sdk-language-version": this.getVersion(), }; Object.assign(headers, defaultHeaders); let requestConfig = { url, method: 'POST', baseURL: this._basePath, headers, params: queryParams, timeout: this._timeout * 1000, responseType: 'json', }; const axiosInstance = axios.default.create(); axiosInstance.interceptors.request.use(this._defaultAuthentication); return new Promise((resolve, reject) => { axiosInstance.request(requestConfig) .then(success => { let body; body = ObjectSerializer_1.ObjectSerializer.deserialize(success.data, "string"); return resolve({ response: success.request.res, body: body }); }, failure => { var _a, _b, _c, _d, _e; let errorObject; if ((_a = failure.response) === null || _a === void 0 ? void 0 : _a.status) { if (failure.response.status >= 400 && failure.response.status <= 499) { errorObject = new ClientError_1.ClientError(); } else if (failure.response.status >= 500 && failure.response.status <= 599) { errorObject = new ServerError_1.ServerError(); } else { errorObject = new Object(); } } else { errorObject = new Object(); } return reject({ errorType: errorObject.constructor.name, date: (new Date()).toDateString(), statusCode: ((_b = failure.response) === null || _b === void 0 ? void 0 : _b.status) && isNaN(failure.response.status) ? String(failure.response.status) : "Unknown", statusMessage: ((_c = failure.response) === null || _c === void 0 ? void 0 : _c.statusText) != null ? failure.response.statusText : "Unknown", body: (_d = failure.response) === null || _d === void 0 ? void 0 : _d.data, response: (_e = failure.response) === null || _e === void 0 ? void 0 : _e.request.res }); }) .catch(error => { return reject(error); }); }); } ; /** * This operation removes the given token. * @summary Delete One-Click Token with Credentials * @param credentials The credentials identifies the transaction and contains the security details which grants the access this operation. * @param tokenId The token ID will be used to find the token which should be removed. * @param {*} [options] Override http request options. */ deleteOneClickTokenWithCredentials(credentials, tokenId, options = {}) { const url = '/transaction/deleteOneClickTokenWithCredentials'; let queryParams = {}; let headers = Object.assign({}, this._defaultHeaders); // verify required parameter 'credentials' is not null or undefined if (credentials === null || credentials === undefined) { throw new Error('Required parameter credentials was null or undefined when calling deleteOneClickTokenWithCredentials.'); } // verify required parameter 'tokenId' is not null or undefined if (tokenId === null || tokenId === undefined) { throw new Error('Required parameter tokenId was null or undefined when calling deleteOneClickTokenWithCredentials.'); } if (credentials !== undefined) { queryParams['credentials'] = ObjectSerializer_1.ObjectSerializer.serialize(credentials, "string"); } if (tokenId !== undefined) { queryParams['tokenId'] = ObjectSerializer_1.ObjectSerializer.serialize(tokenId, "number"); } headers['Content-Type'] = 'application/json'; Object.assign(headers, options.headers); let defaultHeaders = { "x-meta-sdk-version": "4.7.0", "x-meta-sdk-language": "typescript", "x-meta-sdk-provider": "wallee", "x-meta-sdk-language-version": this.getVersion(), }; Object.assign(headers, defaultHeaders); let requestConfig = { url, method: 'POST', baseURL: this._basePath, headers, params: queryParams, timeout: this._timeout * 1000, responseType: 'json', }; const axiosInstance = axios.default.create(); axiosInstance.interceptors.request.use(this._defaultAuthentication); return new Promise((resolve, reject) => { axiosInstance.request(requestConfig) .then(success => { let body; return resolve({ response: success.request.res, body: body }); }, failure => { var _a, _b, _c, _d, _e; let errorObject; if ((_a = failure.response) === null || _a === void 0 ? void 0 : _a.status) { if (failure.response.status >= 400 && failure.response.status <= 499) { errorObject = new ClientError_1.ClientError(); } else if (failure.response.status >= 500 && failure.response.status <= 599) { errorObject = new ServerError_1.ServerError(); } else { errorObject = new Object(); } } else { errorObject = new Object(); } return reject({ errorType: errorObject.constructor.name, date: (new Date()).toDateString(), statusCode: ((_b = failure.response) === null || _b === void 0 ? void 0 : _b.status) && isNaN(failure.response.status) ? String(failure.response.status) : "Unknown", statusMessage: ((_c = failure.response) === null || _c === void 0 ? void 0 : _c.statusText) != null ? failure.response.statusText : "Unknown", body: (_d = failure.response) === null || _d === void 0 ? void 0 : _d.data, response: (_e = failure.response) === null || _e === void 0 ? void 0 : _e.request.res }); }) .catch(error => { return reject(error); }); }); } ; /** * This operation returns the token version objects which references the tokens usable as one-click payment tokens for the provided transaction. * @summary Fetch One Click Tokens with Credentials * @param credentials The credentials identifies the transaction and contains the security details which grants the access this operation. * @param {*} [options] Override http request options. */ fetchOneClickTokensWithCredentials(credentials, options = {}) { const url = '/transaction/fetchOneClickTokensWithCredentials'; let queryParams = {}; let headers = Object.assign({}, this._defaultHeaders); // verify required parameter 'credentials' is not null or undefined if (credentials === null || credentials === undefined) { throw new Error('Required parameter credentials was null or undefined when calling fetchOneClickTokensWithCredentials.'); } if (credentials !== undefined) { queryParams['credentials'] = ObjectSerializer_1.ObjectSerializer.serialize(credentials, "string"); } headers['Content-Type'] = 'application/json'; Object.assign(headers, options.headers); let defaultHeaders = { "x-meta-sdk-version": "4.7.0", "x-meta-sdk-language": "typescript", "x-meta-sdk-provider": "wallee", "x-meta-sdk-language-version": this.getVersion(), }; Object.assign(headers, defaultHeaders); let requestConfig = { url, method: 'GET', baseURL: this._basePath, headers, params: queryParams, timeout: this._timeout * 1000, responseType: 'json', }; const axiosInstance = axios.default.create(); axiosInstance.interceptors.request.use(this._defaultAuthentication); return new Promise((resolve, reject) => { axiosInstance.request(requestConfig) .then(success => { let body; body = ObjectSerializer_1.ObjectSerializer.deserialize(success.data, "Array<TokenVersion>"); return resolve({ response: success.request.res, body: body }); }, failure => { var _a, _b, _c, _d, _e; let errorObject; if ((_a = failure.response) === null || _a === void 0 ? void 0 : _a.status) { if (failure.response.status >= 400 && failure.response.status <= 499) { errorObject = new ClientError_1.ClientError(); } else if (failure.response.status >= 500 && failure.response.status <= 599) { errorObject = new ServerError_1.ServerError(); } else { errorObject = new Object(); } } else { errorObject = new Object(); } return reject({ errorType: errorObject.constructor.name, date: (new Date()).toDateString(), statusCode: ((_b = failure.response) === null || _b === void 0 ? void 0 : _b.status) && isNaN(failure.response.status) ? String(failure.response.status) : "Unknown", statusMessage: ((_c = failure.response) === null || _c === void 0 ? void 0 : _c.statusText) != null ? failure.response.statusText : "Unknown", body: (_d = failure.response) === null || _d === void 0 ? void 0 : _d.data, response: (_e = failure.response) === null || _e === void 0 ? void 0 : _e.request.res }); }) .catch(error => { return reject(error); }); }); } ; /** * This operation allows to get the payment method configurations which can be used with the provided transaction. * @summary Fetch Possible Payment Methods * @param spaceId * @param id The id of the transaction which should be returned. * @param integrationMode The integration mode defines the type of integration that is applied on the transaction. * @param {*} [options] Override http request options. */ fetchPaymentMethods(spaceId, id, integrationMode, options = {}) { const url = '/transaction/fetch-payment-methods'; let queryParams = {}; let headers = Object.assign({}, this._defaultHeaders); // verify required parameter 'spaceId' is not null or undefined if (spaceId === null || spaceId === undefined) { throw new Error('Required parameter spaceId was null or undefined when calling fetchPaymentMethods.'); } // verify required parameter 'id' is not null or undefined if (id === null || id === undefined) { throw new Error('Required parameter id was null or undefined when calling fetchPaymentMethods.'); } // verify required parameter 'integrationMode' is not null or undefined if (integrationMode === null || integrationMode === undefined) { throw new Error('Required parameter integrationMode was null or undefined when calling fetchPaymentMethods.'); } if (spaceId !== undefined) { queryParams['spaceId'] = ObjectSerializer_1.ObjectSerializer.serialize(spaceId, "number"); } if (id !== undefined) { queryParams['id'] = ObjectSerializer_1.ObjectSerializer.serialize(id, "number"); } if (integrationMode !== undefined) { queryParams['integrationMode'] = ObjectSerializer_1.ObjectSerializer.serialize(integrationMode, "string"); } headers['Content-Type'] = 'application/json'; Object.assign(headers, options.headers); let defaultHeaders = { "x-meta-sdk-version": "4.7.0", "x-meta-sdk-language": "typescript", "x-meta-sdk-provider": "wallee", "x-meta-sdk-language-version": this.getVersion(), }; Object.assign(headers, defaultHeaders); let requestConfig = { url, method: 'GET', baseURL: this._basePath, headers, params: queryParams, timeout: this._timeout * 1000, responseType: 'json', }; const axiosInstance = axios.default.create(); axiosInstance.interceptors.request.use(this._defaultAuthentication); return new Promise((resolve, reject) => { axiosInstance.request(requestConfig) .then(success => { let body; body = ObjectSerializer_1.ObjectSerializer.deserialize(success.data, "Array<PaymentMethodConfiguration>"); return resolve({ response: success.request.res, body: body }); }, failure => { var _a, _b, _c, _d, _e; let errorObject; if ((_a = failure.response) === null || _a === void 0 ? void 0 : _a.status) { if (failure.response.status >= 400 && failure.response.status <= 499) { errorObject = new ClientError_1.ClientError(); } else if (failure.response.status >= 500 && failure.response.status <= 599) { errorObject = new ServerError_1.ServerError(); } else { errorObject = new Object(); } } else { errorObject = new Object(); } return reject({ errorType: errorObject.constructor.name, date: (new Date()).toDateString(), statusCode: ((_b = failure.response) === null || _b === void 0 ? void 0 : _b.status) && isNaN(failure.response.status) ? String(failure.response.status) : "Unknown", statusMessage: ((_c = failure.response) === null || _c === void 0 ? void 0 : _c.statusText) != null ? failure.response.statusText : "Unknown", body: (_d = failure.response) === null || _d === void 0 ? void 0 : _d.data, response: (_e = failure.response) === null || _e === void 0 ? void 0 : _e.request.res }); }) .catch(error => { return reject(error); }); }); } ; /** * This operation allows to get the payment method configurations which can be used with the provided transaction. * @summary Fetch Possible Payment Methods with Credentials * @param credentials The credentials identifies the transaction and contains the security details which grants the access this operation. * @param integrationMode The integration mode defines the type of integration that is applied on the transaction. * @param {*} [options] Override http request options. */ fetchPaymentMethodsWithCredentials(credentials, integrationMode, options = {}) { const url = '/transaction/fetch-payment-methods-with-credentials'; let queryParams = {}; let headers = Object.assign({}, this._defaultHeaders); // verify required parameter 'credentials' is not null or undefined if (credentials === null || credentials === undefined) { throw new Error('Required parameter credentials was null or undefined when calling fetchPaymentMethodsWithCredentials.'); } // verify required parameter 'integrationMode' is not null or undefined if (integrationMode === null || integrationMode === undefined) { throw new Error('Required parameter integrationMode was null or undefined when calling fetchPaymentMethodsWithCredentials.'); } if (credentials !== undefined) { queryParams['credentials'] = ObjectSerializer_1.ObjectSerializer.serialize(credentials, "string"); } if (integrationMode !== undefined) { queryParams['integrationMode'] = ObjectSerializer_1.ObjectSerializer.serialize(integrationMode, "string"); } headers['Content-Type'] = 'application/json'; Object.assign(headers, options.headers); let defaultHeaders = { "x-meta-sdk-version": "4.7.0", "x-meta-sdk-language": "typescript", "x-meta-sdk-provider": "wallee", "x-meta-sdk-language-version": this.getVersion(), }; Object.assign(headers, defaultHeaders); let requestConfig = { url, method: 'GET', baseURL: this._basePath, headers, params: queryParams, timeout: this._timeout * 1000, responseType: 'json', }; const axiosInstance = axios.default.create(); axiosInstance.interceptors.request.use(this._defaultAuthentication); return new Promise((resolve, reject) => { axiosInstance.request(requestConfig) .then(success => { let body; body = ObjectSerializer_1.ObjectSerializer.deserialize(success.data, "Array<PaymentMethodConfiguration>"); return resolve({ response: success.request.res, body: body }); }, failure => { var _a, _b, _c, _d, _e; let errorObject; if ((_a = failure.response) === null || _a === void 0 ? void 0 : _a.status) { if (failure.response.status >= 400 && failure.response.status <= 499) { errorObject = new ClientError_1.ClientError(); } else if (failure.response.status >= 500 && failure.response.status <= 599) { errorObject = new ServerError_1.ServerError(); } else { errorObject = new Object(); } } else { errorObject = new Object(); } return reject({ errorType: errorObject.constructor.name, date: (new Date()).toDateString(), statusCode: ((_b = failure.response) === null || _b === void 0 ? void 0 : _b.status) && isNaN(failure.response.status) ? String(failure.response.status) : "Unknown", statusMessage: ((_c = failure.response) === null || _c === void 0 ? void 0 : _c.statusText) != null ? failure.response.statusText : "Unknown", body: (_d = failure.response) === null || _d === void 0 ? void 0 : _d.data, response: (_e = failure.response) === null || _e === void 0 ? void 0 : _e.request.res }); }) .catch(error => { return reject(error); }); }); } ; /** * Returns the PDF document for the transaction invoice with given id. * @summary getInvoiceDocument * @param spaceId * @param id The id of the transaction to get the invoice document for. * @param {*} [options] Override http request options. */ getInvoiceDocument(spaceId, id, options = {}) { const url = '/transaction/getInvoiceDocument'; let queryParams = {}; let headers = Object.assign({}, this._defaultHeaders); // verify required parameter 'spaceId' is not null or undefined if (spaceId === null || spaceId === undefined) { throw new Error('Required parameter spaceId was null or undefined when calling getInvoiceDocument.'); } // verify required parameter 'id' is not null or undefined if (id === null || id === undefined) { throw new Error('Required parameter id was null or undefined when calling getInvoiceDocument.'); } if (spaceId !== undefined) { queryParams['spaceId'] = ObjectSerializer_1.ObjectSerializer.serialize(spaceId, "number"); } if (id !== undefined) { queryParams['id'] = ObjectSerializer_1.ObjectSerializer.serialize(id, "number"); } headers['Content-Type'] = '*/*'; Object.assign(headers, options.headers); let defaultHeaders = { "x-meta-sdk-version": "4.7.0", "x-meta-sdk-language": "typescript", "x-meta-sdk-provider": "wallee", "x-meta-sdk-language-version": this.getVersion(), }; Object.assign(headers, defaultHeaders); let requestConfig = { url, method: 'GET', baseURL: this._basePath, headers, params: queryParams, timeout: this._timeout * 1000, responseType: 'json', }; const axiosInstance = axios.default.create(); axiosInstance.interceptors.request.use(this._defaultAuthentication); return new Promise((resolve, reject) => { axiosInstance.request(requestConfig) .then(success => { let body; body = ObjectSerializer_1.ObjectSerializer.deserialize(success.data, "RenderedDocument"); return resolve({ response: success.request.res, body: body }); }, failure => { var _a, _b, _c, _d, _e; let errorObject; if ((_a = failure.response) === null || _a === void 0 ? void 0 : _a.status) { if (failure.response.status >= 400 && failure.response.status <= 499) { errorObject = new ClientError_1.ClientError(); } else if (failure.response.status >= 500 && failure.response.status <= 599) { errorObject = new ServerError_1.ServerError(); } else { errorObject = new Object(); } } else { errorObject = new Object(); } return reject({ errorType: errorObject.constructor.name, date: (new Date()).toDateString(), statusCode: ((_b = failure.response) === null || _b === void 0 ? void 0 : _b.status) && isNaN(failure.response.status) ? String(failure.response.status) : "Unknown", statusMessage: ((_c = failure.response) === null || _c === void 0 ? void 0 : _c.statusText) != null ? failure.response.statusText : "Unknown", body: (_d = failure.response) === null || _d === void 0 ? void 0 : _d.data, response: (_e = failure.response) === null || _e === void 0 ? void 0 : _e.request.res }); }) .catch(error => { return reject(error); }); }); } ; /** * * @summary getLatestSuccessfulTransactionLineItemVersion * @param spaceId * @param id The id of the transaction to get the latest line item version for. * @param {*} [options] Override http request options. */ getLatestTransactionLineItemVersion(spaceId, id, options = {}) { const url = '/transaction/getLatestTransactionLineItemVersion'; let queryParams = {}; let headers = Object.assign({}, this._defaultHeaders); // verify required parameter 'spaceId' is not null or undefined if (spaceId === null || spaceId === undefined) { throw new Error('Required parameter spaceId was null or undefined when calling getLatestTransactionLineItemVersion.'); } // verify required parameter 'id' is not null or undefined if (id === null || id === undefined) { throw new Error('Required parameter id was null or undefined when calling getLatestTransactionLineItemVersion.'); } if (spaceId !== undefined) { queryParams['spaceId'] = ObjectSerializer_1.ObjectSerializer.serialize(spaceId, "number"); } if (id !== undefined) { queryParams['id'] = ObjectSerializer_1.ObjectSerializer.serialize(id, "number"); } headers['Content-Type'] = 'application/json'; Object.assign(headers, options.headers); let defaultHeaders = { "x-meta-sdk-version": "4.7.0", "x-meta-sdk-language": "typescript", "x-meta-sdk-provider": "wallee", "x-meta-sdk-language-version": this.getVersion(), }; Object.assign(headers, defaultHeaders); let requestConfig = { url, method: 'GET', baseURL: this._basePath, headers, params: queryParams, timeout: this._timeout * 1000, responseType: 'json', }; const axiosInstance = axios.default.create(); axiosInstance.interceptors.request.use(this._defaultAuthentication); return new Promise((resolve, reject) => { axiosInstance.request(requestConfig) .then(success => { let body; body = ObjectSerializer_1.ObjectSerializer.deserialize(success.data, "TransactionLineItemVersion"); return resolve({ response: success.request.res, body: body }); }, failure => { var _a, _b, _c, _d, _e; let errorObject; if ((_a = failure.response) === null || _a === void 0 ? void 0 : _a.status) { if (failure.response.status >= 400 && failure.response.status <= 499) { errorObject = new ClientError_1.ClientError(); } else if (failure.response.status >= 500 && failure.response.status <= 599) { errorObject = new ServerError_1.ServerError(); } else { errorObject = new Object(); } } else { errorObject = new Object(); } return reject({ errorType: errorObject.constructor.name, date: (new Date()).toDateString(), statusCode: ((_b = failure.response) === null || _b === void 0 ? void 0 : _b.status) && isNaN(failure.response.status) ? String(failure.response.status) : "Unknown", statusMessage: ((_c = failure.response) === null || _c === void 0 ? void 0 : _c.statusText) != null ? failure.response.statusText : "Unknown", body: (_d = failure.response) === null || _d === void 0 ? void 0 : _d.data, response: (_e = failure.response) === null || _e === void 0 ? void 0 : _e.request.res }); }) .catch(error => { return reject(error); }); }); } ; /** * Returns the packing slip for the transaction with given id. * @summary getPackingSlip * @param spaceId * @param id The id of the transaction to get the packing slip for. * @param {*} [options] Override http request options. */ getPackingSlip(spaceId, id, options = {}) { const url = '/transaction/getPackingSlip'; let queryParams = {}; let headers = Object.assign({}, this._defaultHeaders); // verify required parameter 'spaceId' is not null or undefined if (spaceId === null || spaceId === undefined) { throw new Error('Required parameter spaceId was null or undefined when calling getPackingSlip.'); } // verify required parameter 'id' is not null or undefined if (id === null || id === undefined) { throw new Error('Required parameter id was null or undefined when calling getPackingSlip.'); } if (spaceId !== undefined) { queryParams['spaceId'] = ObjectSerializer_1.ObjectSerializer.serialize(spaceId, "number"); } if (id !== undefined) { queryParams['id'] = ObjectSerializer_1.ObjectSerializer.serialize(id, "number"); } headers['Content-Type'] = '*/*'; Object.assign(headers, options.headers); let defaultHeaders = { "x-meta-sdk-version": "4.7.0", "x-meta-sdk-language": "typescript", "x-meta-sdk-provider": "wallee", "x-meta-sdk-language-version": this.getVersion(), }; Object.assign(headers, defaultHeaders); let requestConfig = { url, method: 'GET', baseURL: this._basePath, headers, params: queryParams, timeout: this._timeout * 1000, responseType: 'json', }; const axiosInstance = axios.default.create(); axiosInstance.interceptors.request.use(this._defaultAuthentication); return new Promise((resolve, reject) => { axiosInstance.request(requestConfig) .then(success => { let body; body = ObjectSerializer_1.ObjectSerializer.deserialize(success.data, "RenderedDocument"); return resolve({ response: success.request.res, body: body }); }, failure => { var _a, _b, _c, _d, _e; let errorObject; if ((_a = failure.response) === null || _a === void 0 ? void 0 : _a.status) { if (failure.response.status >= 400 && failure.response.status <= 499) { errorObject = new ClientError_1.ClientError(); } else if (failure.response.status >= 500 && failure.response.status <= 599) { errorObject = new ServerError_1.ServerError(); } else { errorObject = new Object(); } } else { errorObject = new Object(); } return reject({ errorType: errorObject.constructor.name, date: (new Date()).toDateString(), statusCode: ((_b = failure.response) === null || _b === void 0 ? void 0 : _b.status) && isNaN(failure.response.status) ? String(failure.response.status) : "Unknown", statusMessage: ((_c = failure.response) === null || _c === void