@cosmotech/aip-client 0.3.0-dev1 → 0.3.0-dev2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- ## @cosmotech/aip-client@0.3.0-dev1
1
+ ## @cosmotech/aip-client@v0.3.0-dev2
2
2
 
3
3
  This generator creates TypeScript/JavaScript client that utilizes [axios](https://github.com/axios/axios). The generated Node module can be used in the following environments:
4
4
 
@@ -36,7 +36,7 @@ navigate to the folder of your consuming project and run one of the following co
36
36
  _published:_
37
37
 
38
38
  ```
39
- npm install @cosmotech/aip-client@0.3.0-dev1 --save
39
+ npm install @cosmotech/aip-client@v0.3.0-dev2 --save
40
40
  ```
41
41
 
42
42
  _unPublished (not recommended):_
@@ -67,6 +67,7 @@ Class | Method | HTTP request | Description
67
67
  *ImpactApi* | [**getImpactForOption**](docs/ImpactApi.md#getimpactforoption) | **GET** /investment/{investment_id}/option/{option_id}/impact/{impact_id} | Get an impact for this option
68
68
  *ImpactApi* | [**getImpactsForOption**](docs/ImpactApi.md#getimpactsforoption) | **GET** /investment/{investment_id}/option/{option_id}/impact/ | List impacts for this option
69
69
  *ImpactApi* | [**patchImpactForOption**](docs/ImpactApi.md#patchimpactforoption) | **PATCH** /investment/{investment_id}/option/{option_id}/impact/{impact_id} | Partially update an impact for this option
70
+ *InvestmentApi* | [**bulkDeleteInvestments**](docs/InvestmentApi.md#bulkdeleteinvestments) | **POST** /investment/bulk-delete | Bulk delete investments
70
71
  *InvestmentApi* | [**createImpactForOption**](docs/InvestmentApi.md#createimpactforoption) | **POST** /investment/{investment_id}/option/{option_id}/impact/ | Create an impact for this option
71
72
  *InvestmentApi* | [**createOptionForInvestment**](docs/InvestmentApi.md#createoptionforinvestment) | **POST** /investment/{investment_id}/option/ | Create an option for this investment
72
73
  *InvestmentApi* | [**deleteImpactForOption**](docs/InvestmentApi.md#deleteimpactforoption) | **DELETE** /investment/{investment_id}/option/{option_id}/impact/{impact_id} | Delete an impact for this option
@@ -162,6 +163,7 @@ Class | Method | HTTP request | Description
162
163
  - [BudgetOverviewResponse](docs/BudgetOverviewResponse.md)
163
164
  - [BudgetResponse](docs/BudgetResponse.md)
164
165
  - [BudgetUpdate](docs/BudgetUpdate.md)
166
+ - [BulkDeleteRequest](docs/BulkDeleteRequest.md)
165
167
  - [EvolutionType](docs/EvolutionType.md)
166
168
  - [HTTPValidationError](docs/HTTPValidationError.md)
167
169
  - [ImpactAPIResponse](docs/ImpactAPIResponse.md)
@@ -22,6 +22,8 @@ import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObj
22
22
  // @ts-ignore
23
23
  import { BASE_PATH, COLLECTION_FORMATS, type RequestArgs, BaseAPI, RequiredError, operationServerMap } from '../base';
24
24
  // @ts-ignore
25
+ import type { BulkDeleteRequest } from '../models';
26
+ // @ts-ignore
25
27
  import type { ImpactAPIResponse } from '../models';
26
28
  // @ts-ignore
27
29
  import type { ImpactCreate } from '../models';
@@ -54,6 +56,44 @@ import type { PreferredOptionResponse } from '../models';
54
56
  */
55
57
  export const InvestmentApiAxiosParamCreator = function (configuration?: Configuration) {
56
58
  return {
59
+ /**
60
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
61
+ * @summary Bulk delete investments
62
+ * @param {BulkDeleteRequest} bulkDeleteRequest
63
+ * @param {*} [options] Override http request option.
64
+ * @throws {RequiredError}
65
+ */
66
+ bulkDeleteInvestments: async (bulkDeleteRequest: BulkDeleteRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
67
+ // verify required parameter 'bulkDeleteRequest' is not null or undefined
68
+ assertParamExists('bulkDeleteInvestments', 'bulkDeleteRequest', bulkDeleteRequest)
69
+ const localVarPath = `/investment/bulk-delete`;
70
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
71
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
72
+ let baseOptions;
73
+ if (configuration) {
74
+ baseOptions = configuration.baseOptions;
75
+ }
76
+
77
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
78
+ const localVarHeaderParameter = {} as any;
79
+ const localVarQueryParameter = {} as any;
80
+
81
+ // authentication OAuth2AuthorizationCodeBearer required
82
+ // oauth required
83
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
84
+
85
+ localVarHeaderParameter['Content-Type'] = 'application/json';
86
+
87
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
88
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
89
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
90
+ localVarRequestOptions.data = serializeDataIfNeeded(bulkDeleteRequest, localVarRequestOptions, configuration)
91
+
92
+ return {
93
+ url: toPathString(localVarUrlObj),
94
+ options: localVarRequestOptions,
95
+ };
96
+ },
57
97
  /**
58
98
  * Create a new impact under this option.
59
99
  * @summary Create an impact for this option
@@ -939,6 +979,19 @@ export const InvestmentApiAxiosParamCreator = function (configuration?: Configur
939
979
  export const InvestmentApiFp = function(configuration?: Configuration) {
940
980
  const localVarAxiosParamCreator = InvestmentApiAxiosParamCreator(configuration)
941
981
  return {
982
+ /**
983
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
984
+ * @summary Bulk delete investments
985
+ * @param {BulkDeleteRequest} bulkDeleteRequest
986
+ * @param {*} [options] Override http request option.
987
+ * @throws {RequiredError}
988
+ */
989
+ async bulkDeleteInvestments(bulkDeleteRequest: BulkDeleteRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
990
+ const localVarAxiosArgs = await localVarAxiosParamCreator.bulkDeleteInvestments(bulkDeleteRequest, options);
991
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
992
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.bulkDeleteInvestments']?.[localVarOperationServerIndex]?.url;
993
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
994
+ },
942
995
  /**
943
996
  * Create a new impact under this option.
944
997
  * @summary Create an impact for this option
@@ -1233,6 +1286,16 @@ export const InvestmentApiFp = function(configuration?: Configuration) {
1233
1286
  export const InvestmentApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
1234
1287
  const localVarFp = InvestmentApiFp(configuration)
1235
1288
  return {
1289
+ /**
1290
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
1291
+ * @summary Bulk delete investments
1292
+ * @param {BulkDeleteRequest} bulkDeleteRequest
1293
+ * @param {*} [options] Override http request option.
1294
+ * @throws {RequiredError}
1295
+ */
1296
+ bulkDeleteInvestments(bulkDeleteRequest: BulkDeleteRequest, options?: RawAxiosRequestConfig): AxiosPromise<void> {
1297
+ return localVarFp.bulkDeleteInvestments(bulkDeleteRequest, options).then((request) => request(axios, basePath));
1298
+ },
1236
1299
  /**
1237
1300
  * Create a new impact under this option.
1238
1301
  * @summary Create an impact for this option
@@ -1465,6 +1528,17 @@ export const InvestmentApiFactory = function (configuration?: Configuration, bas
1465
1528
  * InvestmentApi - object-oriented interface
1466
1529
  */
1467
1530
  export class InvestmentApi extends BaseAPI {
1531
+ /**
1532
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
1533
+ * @summary Bulk delete investments
1534
+ * @param {BulkDeleteRequest} bulkDeleteRequest
1535
+ * @param {*} [options] Override http request option.
1536
+ * @throws {RequiredError}
1537
+ */
1538
+ public bulkDeleteInvestments(bulkDeleteRequest: BulkDeleteRequest, options?: RawAxiosRequestConfig) {
1539
+ return InvestmentApiFp(this.configuration).bulkDeleteInvestments(bulkDeleteRequest, options).then((request) => request(this.axios, this.basePath));
1540
+ }
1541
+
1468
1542
  /**
1469
1543
  * Create a new impact under this option.
1470
1544
  * @summary Create an impact for this option
@@ -12,6 +12,7 @@
12
12
  import type { Configuration } from '../configuration';
13
13
  import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
14
14
  import { type RequestArgs, BaseAPI } from '../base';
15
+ import type { BulkDeleteRequest } from '../models';
15
16
  import type { ImpactAPIResponse } from '../models';
16
17
  import type { ImpactCreate } from '../models';
17
18
  import type { ImpactUpdate } from '../models';
@@ -30,6 +31,14 @@ import type { PreferredOptionResponse } from '../models';
30
31
  * InvestmentApi - axios parameter creator
31
32
  */
32
33
  export declare const InvestmentApiAxiosParamCreator: (configuration?: Configuration) => {
34
+ /**
35
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
36
+ * @summary Bulk delete investments
37
+ * @param {BulkDeleteRequest} bulkDeleteRequest
38
+ * @param {*} [options] Override http request option.
39
+ * @throws {RequiredError}
40
+ */
41
+ bulkDeleteInvestments: (bulkDeleteRequest: BulkDeleteRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
33
42
  /**
34
43
  * Create a new impact under this option.
35
44
  * @summary Create an impact for this option
@@ -220,6 +229,14 @@ export declare const InvestmentApiAxiosParamCreator: (configuration?: Configurat
220
229
  * InvestmentApi - functional programming interface
221
230
  */
222
231
  export declare const InvestmentApiFp: (configuration?: Configuration) => {
232
+ /**
233
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
234
+ * @summary Bulk delete investments
235
+ * @param {BulkDeleteRequest} bulkDeleteRequest
236
+ * @param {*} [options] Override http request option.
237
+ * @throws {RequiredError}
238
+ */
239
+ bulkDeleteInvestments(bulkDeleteRequest: BulkDeleteRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
223
240
  /**
224
241
  * Create a new impact under this option.
225
242
  * @summary Create an impact for this option
@@ -410,6 +427,14 @@ export declare const InvestmentApiFp: (configuration?: Configuration) => {
410
427
  * InvestmentApi - factory interface
411
428
  */
412
429
  export declare const InvestmentApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
430
+ /**
431
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
432
+ * @summary Bulk delete investments
433
+ * @param {BulkDeleteRequest} bulkDeleteRequest
434
+ * @param {*} [options] Override http request option.
435
+ * @throws {RequiredError}
436
+ */
437
+ bulkDeleteInvestments(bulkDeleteRequest: BulkDeleteRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
413
438
  /**
414
439
  * Create a new impact under this option.
415
440
  * @summary Create an impact for this option
@@ -600,6 +625,14 @@ export declare const InvestmentApiFactory: (configuration?: Configuration, baseP
600
625
  * InvestmentApi - object-oriented interface
601
626
  */
602
627
  export declare class InvestmentApi extends BaseAPI {
628
+ /**
629
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
630
+ * @summary Bulk delete investments
631
+ * @param {BulkDeleteRequest} bulkDeleteRequest
632
+ * @param {*} [options] Override http request option.
633
+ * @throws {RequiredError}
634
+ */
635
+ bulkDeleteInvestments(bulkDeleteRequest: BulkDeleteRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
603
636
  /**
604
637
  * Create a new impact under this option.
605
638
  * @summary Create an impact for this option
@@ -34,6 +34,39 @@ const base_1 = require("../base");
34
34
  */
35
35
  const InvestmentApiAxiosParamCreator = function (configuration) {
36
36
  return {
37
+ /**
38
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
39
+ * @summary Bulk delete investments
40
+ * @param {BulkDeleteRequest} bulkDeleteRequest
41
+ * @param {*} [options] Override http request option.
42
+ * @throws {RequiredError}
43
+ */
44
+ bulkDeleteInvestments: (bulkDeleteRequest_1, ...args_1) => __awaiter(this, [bulkDeleteRequest_1, ...args_1], void 0, function* (bulkDeleteRequest, options = {}) {
45
+ // verify required parameter 'bulkDeleteRequest' is not null or undefined
46
+ (0, common_1.assertParamExists)('bulkDeleteInvestments', 'bulkDeleteRequest', bulkDeleteRequest);
47
+ const localVarPath = `/investment/bulk-delete`;
48
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
49
+ const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
50
+ let baseOptions;
51
+ if (configuration) {
52
+ baseOptions = configuration.baseOptions;
53
+ }
54
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
55
+ const localVarHeaderParameter = {};
56
+ const localVarQueryParameter = {};
57
+ // authentication OAuth2AuthorizationCodeBearer required
58
+ // oauth required
59
+ yield (0, common_1.setOAuthToObject)(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration);
60
+ localVarHeaderParameter['Content-Type'] = 'application/json';
61
+ (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
62
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
63
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
64
+ localVarRequestOptions.data = (0, common_1.serializeDataIfNeeded)(bulkDeleteRequest, localVarRequestOptions, configuration);
65
+ return {
66
+ url: (0, common_1.toPathString)(localVarUrlObj),
67
+ options: localVarRequestOptions,
68
+ };
69
+ }),
37
70
  /**
38
71
  * Create a new impact under this option.
39
72
  * @summary Create an impact for this option
@@ -811,6 +844,22 @@ exports.InvestmentApiAxiosParamCreator = InvestmentApiAxiosParamCreator;
811
844
  const InvestmentApiFp = function (configuration) {
812
845
  const localVarAxiosParamCreator = (0, exports.InvestmentApiAxiosParamCreator)(configuration);
813
846
  return {
847
+ /**
848
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
849
+ * @summary Bulk delete investments
850
+ * @param {BulkDeleteRequest} bulkDeleteRequest
851
+ * @param {*} [options] Override http request option.
852
+ * @throws {RequiredError}
853
+ */
854
+ bulkDeleteInvestments(bulkDeleteRequest, options) {
855
+ return __awaiter(this, void 0, void 0, function* () {
856
+ var _a, _b, _c;
857
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.bulkDeleteInvestments(bulkDeleteRequest, options);
858
+ const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
859
+ const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['InvestmentApi.bulkDeleteInvestments']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
860
+ return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
861
+ });
862
+ },
814
863
  /**
815
864
  * Create a new impact under this option.
816
865
  * @summary Create an impact for this option
@@ -1165,6 +1214,16 @@ exports.InvestmentApiFp = InvestmentApiFp;
1165
1214
  const InvestmentApiFactory = function (configuration, basePath, axios) {
1166
1215
  const localVarFp = (0, exports.InvestmentApiFp)(configuration);
1167
1216
  return {
1217
+ /**
1218
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
1219
+ * @summary Bulk delete investments
1220
+ * @param {BulkDeleteRequest} bulkDeleteRequest
1221
+ * @param {*} [options] Override http request option.
1222
+ * @throws {RequiredError}
1223
+ */
1224
+ bulkDeleteInvestments(bulkDeleteRequest, options) {
1225
+ return localVarFp.bulkDeleteInvestments(bulkDeleteRequest, options).then((request) => request(axios, basePath));
1226
+ },
1168
1227
  /**
1169
1228
  * Create a new impact under this option.
1170
1229
  * @summary Create an impact for this option
@@ -1397,6 +1456,16 @@ exports.InvestmentApiFactory = InvestmentApiFactory;
1397
1456
  * InvestmentApi - object-oriented interface
1398
1457
  */
1399
1458
  class InvestmentApi extends base_1.BaseAPI {
1459
+ /**
1460
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
1461
+ * @summary Bulk delete investments
1462
+ * @param {BulkDeleteRequest} bulkDeleteRequest
1463
+ * @param {*} [options] Override http request option.
1464
+ * @throws {RequiredError}
1465
+ */
1466
+ bulkDeleteInvestments(bulkDeleteRequest, options) {
1467
+ return (0, exports.InvestmentApiFp)(this.configuration).bulkDeleteInvestments(bulkDeleteRequest, options).then((request) => request(this.axios, this.basePath));
1468
+ }
1400
1469
  /**
1401
1470
  * Create a new impact under this option.
1402
1471
  * @summary Create an impact for this option
@@ -12,6 +12,7 @@
12
12
  import type { Configuration } from '../configuration';
13
13
  import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
14
14
  import { type RequestArgs, BaseAPI } from '../base';
15
+ import type { BulkDeleteRequest } from '../models';
15
16
  import type { ImpactAPIResponse } from '../models';
16
17
  import type { ImpactCreate } from '../models';
17
18
  import type { ImpactUpdate } from '../models';
@@ -30,6 +31,14 @@ import type { PreferredOptionResponse } from '../models';
30
31
  * InvestmentApi - axios parameter creator
31
32
  */
32
33
  export declare const InvestmentApiAxiosParamCreator: (configuration?: Configuration) => {
34
+ /**
35
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
36
+ * @summary Bulk delete investments
37
+ * @param {BulkDeleteRequest} bulkDeleteRequest
38
+ * @param {*} [options] Override http request option.
39
+ * @throws {RequiredError}
40
+ */
41
+ bulkDeleteInvestments: (bulkDeleteRequest: BulkDeleteRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
33
42
  /**
34
43
  * Create a new impact under this option.
35
44
  * @summary Create an impact for this option
@@ -220,6 +229,14 @@ export declare const InvestmentApiAxiosParamCreator: (configuration?: Configurat
220
229
  * InvestmentApi - functional programming interface
221
230
  */
222
231
  export declare const InvestmentApiFp: (configuration?: Configuration) => {
232
+ /**
233
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
234
+ * @summary Bulk delete investments
235
+ * @param {BulkDeleteRequest} bulkDeleteRequest
236
+ * @param {*} [options] Override http request option.
237
+ * @throws {RequiredError}
238
+ */
239
+ bulkDeleteInvestments(bulkDeleteRequest: BulkDeleteRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
223
240
  /**
224
241
  * Create a new impact under this option.
225
242
  * @summary Create an impact for this option
@@ -410,6 +427,14 @@ export declare const InvestmentApiFp: (configuration?: Configuration) => {
410
427
  * InvestmentApi - factory interface
411
428
  */
412
429
  export declare const InvestmentApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
430
+ /**
431
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
432
+ * @summary Bulk delete investments
433
+ * @param {BulkDeleteRequest} bulkDeleteRequest
434
+ * @param {*} [options] Override http request option.
435
+ * @throws {RequiredError}
436
+ */
437
+ bulkDeleteInvestments(bulkDeleteRequest: BulkDeleteRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
413
438
  /**
414
439
  * Create a new impact under this option.
415
440
  * @summary Create an impact for this option
@@ -600,6 +625,14 @@ export declare const InvestmentApiFactory: (configuration?: Configuration, baseP
600
625
  * InvestmentApi - object-oriented interface
601
626
  */
602
627
  export declare class InvestmentApi extends BaseAPI {
628
+ /**
629
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
630
+ * @summary Bulk delete investments
631
+ * @param {BulkDeleteRequest} bulkDeleteRequest
632
+ * @param {*} [options] Override http request option.
633
+ * @throws {RequiredError}
634
+ */
635
+ bulkDeleteInvestments(bulkDeleteRequest: BulkDeleteRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
603
636
  /**
604
637
  * Create a new impact under this option.
605
638
  * @summary Create an impact for this option
@@ -31,6 +31,39 @@ import { BASE_PATH, BaseAPI, operationServerMap } from '../base';
31
31
  */
32
32
  export const InvestmentApiAxiosParamCreator = function (configuration) {
33
33
  return {
34
+ /**
35
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
36
+ * @summary Bulk delete investments
37
+ * @param {BulkDeleteRequest} bulkDeleteRequest
38
+ * @param {*} [options] Override http request option.
39
+ * @throws {RequiredError}
40
+ */
41
+ bulkDeleteInvestments: (bulkDeleteRequest_1, ...args_1) => __awaiter(this, [bulkDeleteRequest_1, ...args_1], void 0, function* (bulkDeleteRequest, options = {}) {
42
+ // verify required parameter 'bulkDeleteRequest' is not null or undefined
43
+ assertParamExists('bulkDeleteInvestments', 'bulkDeleteRequest', bulkDeleteRequest);
44
+ const localVarPath = `/investment/bulk-delete`;
45
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
46
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
47
+ let baseOptions;
48
+ if (configuration) {
49
+ baseOptions = configuration.baseOptions;
50
+ }
51
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
52
+ const localVarHeaderParameter = {};
53
+ const localVarQueryParameter = {};
54
+ // authentication OAuth2AuthorizationCodeBearer required
55
+ // oauth required
56
+ yield setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration);
57
+ localVarHeaderParameter['Content-Type'] = 'application/json';
58
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
59
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
60
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
61
+ localVarRequestOptions.data = serializeDataIfNeeded(bulkDeleteRequest, localVarRequestOptions, configuration);
62
+ return {
63
+ url: toPathString(localVarUrlObj),
64
+ options: localVarRequestOptions,
65
+ };
66
+ }),
34
67
  /**
35
68
  * Create a new impact under this option.
36
69
  * @summary Create an impact for this option
@@ -807,6 +840,22 @@ export const InvestmentApiAxiosParamCreator = function (configuration) {
807
840
  export const InvestmentApiFp = function (configuration) {
808
841
  const localVarAxiosParamCreator = InvestmentApiAxiosParamCreator(configuration);
809
842
  return {
843
+ /**
844
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
845
+ * @summary Bulk delete investments
846
+ * @param {BulkDeleteRequest} bulkDeleteRequest
847
+ * @param {*} [options] Override http request option.
848
+ * @throws {RequiredError}
849
+ */
850
+ bulkDeleteInvestments(bulkDeleteRequest, options) {
851
+ return __awaiter(this, void 0, void 0, function* () {
852
+ var _a, _b, _c;
853
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.bulkDeleteInvestments(bulkDeleteRequest, options);
854
+ const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
855
+ const localVarOperationServerBasePath = (_c = (_b = operationServerMap['InvestmentApi.bulkDeleteInvestments']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
856
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
857
+ });
858
+ },
810
859
  /**
811
860
  * Create a new impact under this option.
812
861
  * @summary Create an impact for this option
@@ -1160,6 +1209,16 @@ export const InvestmentApiFp = function (configuration) {
1160
1209
  export const InvestmentApiFactory = function (configuration, basePath, axios) {
1161
1210
  const localVarFp = InvestmentApiFp(configuration);
1162
1211
  return {
1212
+ /**
1213
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
1214
+ * @summary Bulk delete investments
1215
+ * @param {BulkDeleteRequest} bulkDeleteRequest
1216
+ * @param {*} [options] Override http request option.
1217
+ * @throws {RequiredError}
1218
+ */
1219
+ bulkDeleteInvestments(bulkDeleteRequest, options) {
1220
+ return localVarFp.bulkDeleteInvestments(bulkDeleteRequest, options).then((request) => request(axios, basePath));
1221
+ },
1163
1222
  /**
1164
1223
  * Create a new impact under this option.
1165
1224
  * @summary Create an impact for this option
@@ -1391,6 +1450,16 @@ export const InvestmentApiFactory = function (configuration, basePath, axios) {
1391
1450
  * InvestmentApi - object-oriented interface
1392
1451
  */
1393
1452
  export class InvestmentApi extends BaseAPI {
1453
+ /**
1454
+ * Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
1455
+ * @summary Bulk delete investments
1456
+ * @param {BulkDeleteRequest} bulkDeleteRequest
1457
+ * @param {*} [options] Override http request option.
1458
+ * @throws {RequiredError}
1459
+ */
1460
+ bulkDeleteInvestments(bulkDeleteRequest, options) {
1461
+ return InvestmentApiFp(this.configuration).bulkDeleteInvestments(bulkDeleteRequest, options).then((request) => request(this.axios, this.basePath));
1462
+ }
1394
1463
  /**
1395
1464
  * Create a new impact under this option.
1396
1465
  * @summary Create an impact for this option
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Asset Investment Planning
3
+ * API for Asset Investment Planning
4
+ *
5
+ * The version of the OpenAPI document: 0.3.0-dev1
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Request body for bulk deleting investments by their IDs.
14
+ */
15
+ export interface BulkDeleteRequest {
16
+ /**
17
+ * List of investment IDs to delete (must be non-empty)
18
+ */
19
+ 'ids': Array<string>;
20
+ }
@@ -0,0 +1,14 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Asset Investment Planning
5
+ * API for Asset Investment Planning
6
+ *
7
+ * The version of the OpenAPI document: 0.3.0-dev1
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ export {};
@@ -6,6 +6,7 @@ export * from './budget-option-response';
6
6
  export * from './budget-overview-response';
7
7
  export * from './budget-response';
8
8
  export * from './budget-update';
9
+ export * from './bulk-delete-request';
9
10
  export * from './evolution-type';
10
11
  export * from './httpvalidation-error';
11
12
  export * from './impact-apiresponse';
@@ -6,6 +6,7 @@ export * from './budget-option-response';
6
6
  export * from './budget-overview-response';
7
7
  export * from './budget-response';
8
8
  export * from './budget-update';
9
+ export * from './bulk-delete-request';
9
10
  export * from './evolution-type';
10
11
  export * from './httpvalidation-error';
11
12
  export * from './impact-apiresponse';
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Asset Investment Planning
3
+ * API for Asset Investment Planning
4
+ *
5
+ * The version of the OpenAPI document: 0.3.0-dev1
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Request body for bulk deleting investments by their IDs.
14
+ */
15
+ export interface BulkDeleteRequest {
16
+ /**
17
+ * List of investment IDs to delete (must be non-empty)
18
+ */
19
+ 'ids': Array<string>;
20
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Asset Investment Planning
6
+ * API for Asset Investment Planning
7
+ *
8
+ * The version of the OpenAPI document: 0.3.0-dev1
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -6,6 +6,7 @@ export * from './budget-option-response';
6
6
  export * from './budget-overview-response';
7
7
  export * from './budget-response';
8
8
  export * from './budget-update';
9
+ export * from './bulk-delete-request';
9
10
  export * from './evolution-type';
10
11
  export * from './httpvalidation-error';
11
12
  export * from './impact-apiresponse';
@@ -22,6 +22,7 @@ __exportStar(require("./budget-option-response"), exports);
22
22
  __exportStar(require("./budget-overview-response"), exports);
23
23
  __exportStar(require("./budget-response"), exports);
24
24
  __exportStar(require("./budget-update"), exports);
25
+ __exportStar(require("./bulk-delete-request"), exports);
25
26
  __exportStar(require("./evolution-type"), exports);
26
27
  __exportStar(require("./httpvalidation-error"), exports);
27
28
  __exportStar(require("./impact-apiresponse"), exports);
@@ -0,0 +1,21 @@
1
+ # BulkDeleteRequest
2
+
3
+ Request body for bulk deleting investments by their IDs.
4
+
5
+ ## Properties
6
+
7
+ Name | Type | Description | Notes
8
+ ------------ | ------------- | ------------- | -------------
9
+ **ids** | **Array&lt;string&gt;** | List of investment IDs to delete (must be non-empty) | [default to undefined]
10
+
11
+ ## Example
12
+
13
+ ```typescript
14
+ import { BulkDeleteRequest } from '@cosmotech/aip-client';
15
+
16
+ const instance: BulkDeleteRequest = {
17
+ ids,
18
+ };
19
+ ```
20
+
21
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
@@ -4,6 +4,7 @@ All URIs are relative to *http://localhost*
4
4
 
5
5
  |Method | HTTP request | Description|
6
6
  |------------- | ------------- | -------------|
7
+ |[**bulkDeleteInvestments**](#bulkdeleteinvestments) | **POST** /investment/bulk-delete | Bulk delete investments|
7
8
  |[**createImpactForOption**](#createimpactforoption) | **POST** /investment/{investment_id}/option/{option_id}/impact/ | Create an impact for this option|
8
9
  |[**createOptionForInvestment**](#createoptionforinvestment) | **POST** /investment/{investment_id}/option/ | Create an option for this investment|
9
10
  |[**deleteImpactForOption**](#deleteimpactforoption) | **DELETE** /investment/{investment_id}/option/{option_id}/impact/{impact_id} | Delete an impact for this option|
@@ -25,6 +26,59 @@ All URIs are relative to *http://localhost*
25
26
  |[**postInvestment**](#postinvestment) | **POST** /investment/ | Create an investment|
26
27
  |[**setPreferredOption**](#setpreferredoption) | **POST** /investment/{investment_id}/preferred_option | Set the preferred option for an investment|
27
28
 
29
+ # **bulkDeleteInvestments**
30
+ > bulkDeleteInvestments(bulkDeleteRequest)
31
+
32
+ Delete multiple investments by their IDs in a single request. All provided IDs must exist — if any ID is not found, the request fails with 404 and no investments are deleted. Associated options are also deleted via cascade.
33
+
34
+ ### Example
35
+
36
+ ```typescript
37
+ import {
38
+ InvestmentApi,
39
+ Configuration,
40
+ BulkDeleteRequest
41
+ } from '@cosmotech/aip-client';
42
+
43
+ const configuration = new Configuration();
44
+ const apiInstance = new InvestmentApi(configuration);
45
+
46
+ let bulkDeleteRequest: BulkDeleteRequest; //
47
+
48
+ const { status, data } = await apiInstance.bulkDeleteInvestments(
49
+ bulkDeleteRequest
50
+ );
51
+ ```
52
+
53
+ ### Parameters
54
+
55
+ |Name | Type | Description | Notes|
56
+ |------------- | ------------- | ------------- | -------------|
57
+ | **bulkDeleteRequest** | **BulkDeleteRequest**| | |
58
+
59
+
60
+ ### Return type
61
+
62
+ void (empty response body)
63
+
64
+ ### Authorization
65
+
66
+ [OAuth2AuthorizationCodeBearer](../README.md#OAuth2AuthorizationCodeBearer)
67
+
68
+ ### HTTP request headers
69
+
70
+ - **Content-Type**: application/json
71
+ - **Accept**: Not defined
72
+
73
+
74
+ ### HTTP response details
75
+ | Status code | Description | Response headers |
76
+ |-------------|-------------|------------------|
77
+ |**204** | All investments successfully deleted | - |
78
+ |**404** | One or more investment IDs not found | - |
79
+
80
+ [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
81
+
28
82
  # **createImpactForOption**
29
83
  > ImpactAPIResponse createImpactForOption(impactCreate)
30
84
 
@@ -0,0 +1,26 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Asset Investment Planning
5
+ * API for Asset Investment Planning
6
+ *
7
+ * The version of the OpenAPI document: 0.3.0-dev1
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+
17
+ /**
18
+ * Request body for bulk deleting investments by their IDs.
19
+ */
20
+ export interface BulkDeleteRequest {
21
+ /**
22
+ * List of investment IDs to delete (must be non-empty)
23
+ */
24
+ 'ids': Array<string>;
25
+ }
26
+
package/models/index.ts CHANGED
@@ -6,6 +6,7 @@ export * from './budget-option-response';
6
6
  export * from './budget-overview-response';
7
7
  export * from './budget-response';
8
8
  export * from './budget-update';
9
+ export * from './bulk-delete-request';
9
10
  export * from './evolution-type';
10
11
  export * from './httpvalidation-error';
11
12
  export * from './impact-apiresponse';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cosmotech/aip-client",
3
- "version": "0.3.0-dev1",
3
+ "version": "0.3.0-dev2",
4
4
  "description": "OpenAPI client for @cosmotech/aip-client",
5
5
  "author": "OpenAPI-Generator Contributors",
6
6
  "repository": {