wallee
Version:
TypeScript/JavaScript client for wallee
715 lines (688 loc) • 38.2 kB
JavaScript
"use strict";
/* tslint:disable */
/* eslint-disable */
/**
* Wallee AG TypeScript SDK
*
* This library allows to interact with the Wallee AG payment service.
*
* Copyright owner: Wallee AG
* Website: https://en.wallee.com
* Developer email: ecosystem-team@wallee.com
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.SubscriptionsService = void 0;
const runtime = require("../runtime");
const index_1 = require("../models/index");
const ServiceApiUtils_1 = require("../utils/ServiceApiUtils");
/**
*
*/
class SubscriptionsService extends runtime.BaseAPI {
constructor(configuration) {
super(configuration);
}
/**
* List all subscriptions
*/
getSubscriptionsRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['space'] == null) {
throw new runtime.RequiredError('space', 'Required parameter "space" was null or undefined when calling getSubscriptions().');
}
const queryParameters = {};
if (requestParameters['after'] != null) {
queryParameters['after'] = requestParameters['after'];
}
if (requestParameters['before'] != null) {
queryParameters['before'] = requestParameters['before'];
}
if (requestParameters['expand'] != null) {
queryParameters['expand'] = requestParameters['expand'];
}
if (requestParameters['limit'] != null) {
queryParameters['limit'] = requestParameters['limit'];
}
if (requestParameters['order'] != null) {
queryParameters['order'] = requestParameters['order'];
}
const headerParameters = {};
if (requestParameters['space'] != null) {
headerParameters['Space'] = String(requestParameters['space']);
}
const method = 'GET';
const path = `/subscriptions`;
if (this.configuration.httpBearerAuth) {
yield this.configuration.httpBearerAuth.applyToRequest(path, method, queryParameters, headerParameters);
}
// Set per-request timeout in initOverrides: use the incoming parameter or fall back to the Configuration value
const requestTimeoutInSeconds = this.configuration.requestTimeout;
const updatedInitOverrides = yield ServiceApiUtils_1.ServiceApiUtils.adjustRequestSignalAsync(initOverrides, requestTimeoutInSeconds);
const response = yield this.request({
path: `/subscriptions`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, updatedInitOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.SubscriptionListResponseFromJSON)(jsonValue));
});
}
/**
* List all subscriptions
*/
getSubscriptions(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
const response = yield this.getSubscriptionsRaw(requestParameters, initOverrides);
return yield response.value();
});
}
/**
* Retrieve a subscription
*/
getSubscriptionsIdRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['id'] == null) {
throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling getSubscriptionsId().');
}
if (requestParameters['space'] == null) {
throw new runtime.RequiredError('space', 'Required parameter "space" was null or undefined when calling getSubscriptionsId().');
}
const queryParameters = {};
if (requestParameters['expand'] != null) {
queryParameters['expand'] = requestParameters['expand'];
}
const headerParameters = {};
if (requestParameters['space'] != null) {
headerParameters['Space'] = String(requestParameters['space']);
}
const method = 'GET';
const path = `/subscriptions/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id'])));
if (this.configuration.httpBearerAuth) {
yield this.configuration.httpBearerAuth.applyToRequest(path, method, queryParameters, headerParameters);
}
// Set per-request timeout in initOverrides: use the incoming parameter or fall back to the Configuration value
const requestTimeoutInSeconds = this.configuration.requestTimeout;
const updatedInitOverrides = yield ServiceApiUtils_1.ServiceApiUtils.adjustRequestSignalAsync(initOverrides, requestTimeoutInSeconds);
const response = yield this.request({
path: `/subscriptions/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, updatedInitOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.SubscriptionFromJSON)(jsonValue));
});
}
/**
* Retrieve a subscription
*/
getSubscriptionsId(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
const response = yield this.getSubscriptionsIdRaw(requestParameters, initOverrides);
return yield response.value();
});
}
/**
* Search subscription invoices
*/
getSubscriptionsIdInvoicesRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['id'] == null) {
throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling getSubscriptionsIdInvoices().');
}
if (requestParameters['space'] == null) {
throw new runtime.RequiredError('space', 'Required parameter "space" was null or undefined when calling getSubscriptionsIdInvoices().');
}
const queryParameters = {};
if (requestParameters['expand'] != null) {
queryParameters['expand'] = requestParameters['expand'];
}
if (requestParameters['limit'] != null) {
queryParameters['limit'] = requestParameters['limit'];
}
if (requestParameters['offset'] != null) {
queryParameters['offset'] = requestParameters['offset'];
}
if (requestParameters['order'] != null) {
queryParameters['order'] = requestParameters['order'];
}
if (requestParameters['query'] != null) {
queryParameters['query'] = requestParameters['query'];
}
const headerParameters = {};
if (requestParameters['space'] != null) {
headerParameters['Space'] = String(requestParameters['space']);
}
const method = 'GET';
const path = `/subscriptions/{id}/invoices`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id'])));
if (this.configuration.httpBearerAuth) {
yield this.configuration.httpBearerAuth.applyToRequest(path, method, queryParameters, headerParameters);
}
// Set per-request timeout in initOverrides: use the incoming parameter or fall back to the Configuration value
const requestTimeoutInSeconds = this.configuration.requestTimeout;
const updatedInitOverrides = yield ServiceApiUtils_1.ServiceApiUtils.adjustRequestSignalAsync(initOverrides, requestTimeoutInSeconds);
const response = yield this.request({
path: `/subscriptions/{id}/invoices`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, updatedInitOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.InvoiceSearchResponseFromJSON)(jsonValue));
});
}
/**
* Search subscription invoices
*/
getSubscriptionsIdInvoices(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
const response = yield this.getSubscriptionsIdInvoicesRaw(requestParameters, initOverrides);
return yield response.value();
});
}
/**
* Search subscriptions
*/
getSubscriptionsSearchRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['space'] == null) {
throw new runtime.RequiredError('space', 'Required parameter "space" was null or undefined when calling getSubscriptionsSearch().');
}
const queryParameters = {};
if (requestParameters['expand'] != null) {
queryParameters['expand'] = requestParameters['expand'];
}
if (requestParameters['limit'] != null) {
queryParameters['limit'] = requestParameters['limit'];
}
if (requestParameters['offset'] != null) {
queryParameters['offset'] = requestParameters['offset'];
}
if (requestParameters['order'] != null) {
queryParameters['order'] = requestParameters['order'];
}
if (requestParameters['query'] != null) {
queryParameters['query'] = requestParameters['query'];
}
const headerParameters = {};
if (requestParameters['space'] != null) {
headerParameters['Space'] = String(requestParameters['space']);
}
const method = 'GET';
const path = `/subscriptions/search`;
if (this.configuration.httpBearerAuth) {
yield this.configuration.httpBearerAuth.applyToRequest(path, method, queryParameters, headerParameters);
}
// Set per-request timeout in initOverrides: use the incoming parameter or fall back to the Configuration value
const requestTimeoutInSeconds = this.configuration.requestTimeout;
const updatedInitOverrides = yield ServiceApiUtils_1.ServiceApiUtils.adjustRequestSignalAsync(initOverrides, requestTimeoutInSeconds);
const response = yield this.request({
path: `/subscriptions/search`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, updatedInitOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.SubscriptionSearchResponseFromJSON)(jsonValue));
});
}
/**
* Search subscriptions
*/
getSubscriptionsSearch(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
const response = yield this.getSubscriptionsSearchRaw(requestParameters, initOverrides);
return yield response.value();
});
}
/**
* Update a subscription
*/
patchSubscriptionsIdRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['id'] == null) {
throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling patchSubscriptionsId().');
}
if (requestParameters['space'] == null) {
throw new runtime.RequiredError('space', 'Required parameter "space" was null or undefined when calling patchSubscriptionsId().');
}
if (requestParameters['subscriptionUpdateRequest'] == null) {
throw new runtime.RequiredError('subscriptionUpdateRequest', 'Required parameter "subscriptionUpdateRequest" was null or undefined when calling patchSubscriptionsId().');
}
const queryParameters = {};
if (requestParameters['expand'] != null) {
queryParameters['expand'] = requestParameters['expand'];
}
const headerParameters = {};
headerParameters['Content-Type'] = 'application/json';
if (requestParameters['space'] != null) {
headerParameters['Space'] = String(requestParameters['space']);
}
const method = 'PATCH';
const path = `/subscriptions/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id'])));
if (this.configuration.httpBearerAuth) {
yield this.configuration.httpBearerAuth.applyToRequest(path, method, queryParameters, headerParameters);
}
// Set per-request timeout in initOverrides: use the incoming parameter or fall back to the Configuration value
const requestTimeoutInSeconds = this.configuration.requestTimeout;
const updatedInitOverrides = yield ServiceApiUtils_1.ServiceApiUtils.adjustRequestSignalAsync(initOverrides, requestTimeoutInSeconds);
const response = yield this.request({
path: `/subscriptions/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
body: (0, index_1.SubscriptionUpdateRequestToJSON)(requestParameters['subscriptionUpdateRequest']),
}, updatedInitOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.SubscriptionFromJSON)(jsonValue));
});
}
/**
* Update a subscription
*/
patchSubscriptionsId(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
const response = yield this.patchSubscriptionsIdRaw(requestParameters, initOverrides);
return yield response.value();
});
}
/**
* Create a subscription
*/
postSubscriptionsRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['space'] == null) {
throw new runtime.RequiredError('space', 'Required parameter "space" was null or undefined when calling postSubscriptions().');
}
if (requestParameters['subscriptionCreateRequest'] == null) {
throw new runtime.RequiredError('subscriptionCreateRequest', 'Required parameter "subscriptionCreateRequest" was null or undefined when calling postSubscriptions().');
}
const queryParameters = {};
if (requestParameters['expand'] != null) {
queryParameters['expand'] = requestParameters['expand'];
}
const headerParameters = {};
headerParameters['Content-Type'] = 'application/json';
if (requestParameters['space'] != null) {
headerParameters['Space'] = String(requestParameters['space']);
}
const method = 'POST';
const path = `/subscriptions`;
if (this.configuration.httpBearerAuth) {
yield this.configuration.httpBearerAuth.applyToRequest(path, method, queryParameters, headerParameters);
}
// Set per-request timeout in initOverrides: use the incoming parameter or fall back to the Configuration value
const requestTimeoutInSeconds = this.configuration.requestTimeout;
const updatedInitOverrides = yield ServiceApiUtils_1.ServiceApiUtils.adjustRequestSignalAsync(initOverrides, requestTimeoutInSeconds);
const response = yield this.request({
path: `/subscriptions`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: (0, index_1.SubscriptionCreateRequestToJSON)(requestParameters['subscriptionCreateRequest']),
}, updatedInitOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.SubscriptionVersionFromJSON)(jsonValue));
});
}
/**
* Create a subscription
*/
postSubscriptions(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
const response = yield this.postSubscriptionsRaw(requestParameters, initOverrides);
return yield response.value();
});
}
/**
* Apply changes to a subscription
*/
postSubscriptionsIdApplyChangesRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['id'] == null) {
throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling postSubscriptionsIdApplyChanges().');
}
if (requestParameters['space'] == null) {
throw new runtime.RequiredError('space', 'Required parameter "space" was null or undefined when calling postSubscriptionsIdApplyChanges().');
}
if (requestParameters['subscriptionUpdateRequest'] == null) {
throw new runtime.RequiredError('subscriptionUpdateRequest', 'Required parameter "subscriptionUpdateRequest" was null or undefined when calling postSubscriptionsIdApplyChanges().');
}
const queryParameters = {};
if (requestParameters['expand'] != null) {
queryParameters['expand'] = requestParameters['expand'];
}
const headerParameters = {};
headerParameters['Content-Type'] = 'application/json';
if (requestParameters['space'] != null) {
headerParameters['Space'] = String(requestParameters['space']);
}
const method = 'POST';
const path = `/subscriptions/{id}/apply-changes`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id'])));
if (this.configuration.httpBearerAuth) {
yield this.configuration.httpBearerAuth.applyToRequest(path, method, queryParameters, headerParameters);
}
// Set per-request timeout in initOverrides: use the incoming parameter or fall back to the Configuration value
const requestTimeoutInSeconds = this.configuration.requestTimeout;
const updatedInitOverrides = yield ServiceApiUtils_1.ServiceApiUtils.adjustRequestSignalAsync(initOverrides, requestTimeoutInSeconds);
const response = yield this.request({
path: `/subscriptions/{id}/apply-changes`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: (0, index_1.SubscriptionUpdateRequestToJSON)(requestParameters['subscriptionUpdateRequest']),
}, updatedInitOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.SubscriptionVersionFromJSON)(jsonValue));
});
}
/**
* Apply changes to a subscription
*/
postSubscriptionsIdApplyChanges(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
const response = yield this.postSubscriptionsIdApplyChangesRaw(requestParameters, initOverrides);
return yield response.value();
});
}
/**
* Initialize a subscription
*/
postSubscriptionsIdInitializeRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['id'] == null) {
throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling postSubscriptionsIdInitialize().');
}
if (requestParameters['space'] == null) {
throw new runtime.RequiredError('space', 'Required parameter "space" was null or undefined when calling postSubscriptionsIdInitialize().');
}
const queryParameters = {};
if (requestParameters['expand'] != null) {
queryParameters['expand'] = requestParameters['expand'];
}
const headerParameters = {};
if (requestParameters['space'] != null) {
headerParameters['Space'] = String(requestParameters['space']);
}
const method = 'POST';
const path = `/subscriptions/{id}/initialize`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id'])));
if (this.configuration.httpBearerAuth) {
yield this.configuration.httpBearerAuth.applyToRequest(path, method, queryParameters, headerParameters);
}
// Set per-request timeout in initOverrides: use the incoming parameter or fall back to the Configuration value
const requestTimeoutInSeconds = this.configuration.requestTimeout;
const updatedInitOverrides = yield ServiceApiUtils_1.ServiceApiUtils.adjustRequestSignalAsync(initOverrides, requestTimeoutInSeconds);
const response = yield this.request({
path: `/subscriptions/{id}/initialize`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, updatedInitOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.SubscriptionChargeFromJSON)(jsonValue));
});
}
/**
* Initialize a subscription
*/
postSubscriptionsIdInitialize(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
const response = yield this.postSubscriptionsIdInitializeRaw(requestParameters, initOverrides);
return yield response.value();
});
}
/**
* Initialize a subscription with the subscriber present
*/
postSubscriptionsIdInitializeSubscriberPresentRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['id'] == null) {
throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling postSubscriptionsIdInitializeSubscriberPresent().');
}
if (requestParameters['space'] == null) {
throw new runtime.RequiredError('space', 'Required parameter "space" was null or undefined when calling postSubscriptionsIdInitializeSubscriberPresent().');
}
if (requestParameters['subscriptionInitializeSubscriberPresentRequest'] == null) {
throw new runtime.RequiredError('subscriptionInitializeSubscriberPresentRequest', 'Required parameter "subscriptionInitializeSubscriberPresentRequest" was null or undefined when calling postSubscriptionsIdInitializeSubscriberPresent().');
}
const queryParameters = {};
if (requestParameters['expand'] != null) {
queryParameters['expand'] = requestParameters['expand'];
}
const headerParameters = {};
headerParameters['Content-Type'] = 'application/json';
if (requestParameters['space'] != null) {
headerParameters['Space'] = String(requestParameters['space']);
}
const method = 'POST';
const path = `/subscriptions/{id}/initialize-subscriber-present`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id'])));
if (this.configuration.httpBearerAuth) {
yield this.configuration.httpBearerAuth.applyToRequest(path, method, queryParameters, headerParameters);
}
// Set per-request timeout in initOverrides: use the incoming parameter or fall back to the Configuration value
const requestTimeoutInSeconds = this.configuration.requestTimeout;
const updatedInitOverrides = yield ServiceApiUtils_1.ServiceApiUtils.adjustRequestSignalAsync(initOverrides, requestTimeoutInSeconds);
const response = yield this.request({
path: `/subscriptions/{id}/initialize-subscriber-present`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: (0, index_1.SubscriptionInitializeSubscriberPresentRequestToJSON)(requestParameters['subscriptionInitializeSubscriberPresentRequest']),
}, updatedInitOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.SubscriptionChargeFromJSON)(jsonValue));
});
}
/**
* Initialize a subscription with the subscriber present
*/
postSubscriptionsIdInitializeSubscriberPresent(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
const response = yield this.postSubscriptionsIdInitializeSubscriberPresentRaw(requestParameters, initOverrides);
return yield response.value();
});
}
/**
* Reactivate a suspended subscription
*/
postSubscriptionsIdReactivateRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['id'] == null) {
throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling postSubscriptionsIdReactivate().');
}
if (requestParameters['space'] == null) {
throw new runtime.RequiredError('space', 'Required parameter "space" was null or undefined when calling postSubscriptionsIdReactivate().');
}
const queryParameters = {};
const headerParameters = {};
if (requestParameters['space'] != null) {
headerParameters['Space'] = String(requestParameters['space']);
}
const method = 'POST';
const path = `/subscriptions/{id}/reactivate`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id'])));
if (this.configuration.httpBearerAuth) {
yield this.configuration.httpBearerAuth.applyToRequest(path, method, queryParameters, headerParameters);
}
// Set per-request timeout in initOverrides: use the incoming parameter or fall back to the Configuration value
const requestTimeoutInSeconds = this.configuration.requestTimeout;
const updatedInitOverrides = yield ServiceApiUtils_1.ServiceApiUtils.adjustRequestSignalAsync(initOverrides, requestTimeoutInSeconds);
const response = yield this.request({
path: `/subscriptions/{id}/reactivate`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, updatedInitOverrides);
return new runtime.VoidApiResponse(response);
});
}
/**
* Reactivate a suspended subscription
*/
postSubscriptionsIdReactivate(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
yield this.postSubscriptionsIdReactivateRaw(requestParameters, initOverrides);
});
}
/**
* Suspend a subscription
*/
postSubscriptionsIdSuspendRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['id'] == null) {
throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling postSubscriptionsIdSuspend().');
}
if (requestParameters['space'] == null) {
throw new runtime.RequiredError('space', 'Required parameter "space" was null or undefined when calling postSubscriptionsIdSuspend().');
}
if (requestParameters['suspensionCreationRequest'] == null) {
throw new runtime.RequiredError('suspensionCreationRequest', 'Required parameter "suspensionCreationRequest" was null or undefined when calling postSubscriptionsIdSuspend().');
}
const queryParameters = {};
if (requestParameters['expand'] != null) {
queryParameters['expand'] = requestParameters['expand'];
}
const headerParameters = {};
headerParameters['Content-Type'] = 'application/json';
if (requestParameters['space'] != null) {
headerParameters['Space'] = String(requestParameters['space']);
}
const method = 'POST';
const path = `/subscriptions/{id}/suspend`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id'])));
if (this.configuration.httpBearerAuth) {
yield this.configuration.httpBearerAuth.applyToRequest(path, method, queryParameters, headerParameters);
}
// Set per-request timeout in initOverrides: use the incoming parameter or fall back to the Configuration value
const requestTimeoutInSeconds = this.configuration.requestTimeout;
const updatedInitOverrides = yield ServiceApiUtils_1.ServiceApiUtils.adjustRequestSignalAsync(initOverrides, requestTimeoutInSeconds);
const response = yield this.request({
path: `/subscriptions/{id}/suspend`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: (0, index_1.SuspensionCreationRequestToJSON)(requestParameters['suspensionCreationRequest']),
}, updatedInitOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.SubscriptionSuspensionFromJSON)(jsonValue));
});
}
/**
* Suspend a subscription
*/
postSubscriptionsIdSuspend(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
const response = yield this.postSubscriptionsIdSuspendRaw(requestParameters, initOverrides);
return yield response.value();
});
}
/**
* Terminate a subscription
*/
postSubscriptionsIdTerminateRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['id'] == null) {
throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling postSubscriptionsIdTerminate().');
}
if (requestParameters['respectTerminationPeriod'] == null) {
throw new runtime.RequiredError('respectTerminationPeriod', 'Required parameter "respectTerminationPeriod" was null or undefined when calling postSubscriptionsIdTerminate().');
}
if (requestParameters['space'] == null) {
throw new runtime.RequiredError('space', 'Required parameter "space" was null or undefined when calling postSubscriptionsIdTerminate().');
}
const queryParameters = {};
if (requestParameters['respectTerminationPeriod'] != null) {
queryParameters['respectTerminationPeriod'] = requestParameters['respectTerminationPeriod'];
}
const headerParameters = {};
if (requestParameters['space'] != null) {
headerParameters['Space'] = String(requestParameters['space']);
}
const method = 'POST';
const path = `/subscriptions/{id}/terminate`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id'])));
if (this.configuration.httpBearerAuth) {
yield this.configuration.httpBearerAuth.applyToRequest(path, method, queryParameters, headerParameters);
}
// Set per-request timeout in initOverrides: use the incoming parameter or fall back to the Configuration value
const requestTimeoutInSeconds = this.configuration.requestTimeout;
const updatedInitOverrides = yield ServiceApiUtils_1.ServiceApiUtils.adjustRequestSignalAsync(initOverrides, requestTimeoutInSeconds);
const response = yield this.request({
path: `/subscriptions/{id}/terminate`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, updatedInitOverrides);
return new runtime.VoidApiResponse(response);
});
}
/**
* Terminate a subscription
*/
postSubscriptionsIdTerminate(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
yield this.postSubscriptionsIdTerminateRaw(requestParameters, initOverrides);
});
}
/**
* Upgrade a subscription\'s product
*/
postSubscriptionsIdUpgradeProductRaw(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
if (requestParameters['id'] == null) {
throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling postSubscriptionsIdUpgradeProduct().');
}
if (requestParameters['respectTerminationPeriod'] == null) {
throw new runtime.RequiredError('respectTerminationPeriod', 'Required parameter "respectTerminationPeriod" was null or undefined when calling postSubscriptionsIdUpgradeProduct().');
}
if (requestParameters['space'] == null) {
throw new runtime.RequiredError('space', 'Required parameter "space" was null or undefined when calling postSubscriptionsIdUpgradeProduct().');
}
const queryParameters = {};
if (requestParameters['respectTerminationPeriod'] != null) {
queryParameters['respectTerminationPeriod'] = requestParameters['respectTerminationPeriod'];
}
if (requestParameters['expand'] != null) {
queryParameters['expand'] = requestParameters['expand'];
}
const headerParameters = {};
if (requestParameters['space'] != null) {
headerParameters['Space'] = String(requestParameters['space']);
}
const method = 'POST';
const path = `/subscriptions/{id}/upgrade-product`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id'])));
if (this.configuration.httpBearerAuth) {
yield this.configuration.httpBearerAuth.applyToRequest(path, method, queryParameters, headerParameters);
}
// Set per-request timeout in initOverrides: use the incoming parameter or fall back to the Configuration value
const requestTimeoutInSeconds = this.configuration.requestTimeout;
const updatedInitOverrides = yield ServiceApiUtils_1.ServiceApiUtils.adjustRequestSignalAsync(initOverrides, requestTimeoutInSeconds);
const response = yield this.request({
path: `/subscriptions/{id}/upgrade-product`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, updatedInitOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.SubscriptionVersionFromJSON)(jsonValue));
});
}
/**
* Upgrade a subscription\'s product
*/
postSubscriptionsIdUpgradeProduct(requestParameters, initOverrides) {
return __awaiter(this, void 0, void 0, function* () {
const response = yield this.postSubscriptionsIdUpgradeProductRaw(requestParameters, initOverrides);
return yield response.value();
});
}
}
exports.SubscriptionsService = SubscriptionsService;