@cosmotech/aip-client 0.2.0-dev → 0.2.0-dev3

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.
Files changed (290) hide show
  1. package/README.md +141 -4
  2. package/api/default-api.ts +8 -15
  3. package/api/impact-api.ts +507 -0
  4. package/api/investment-api.ts +1308 -0
  5. package/api/metric-api.ts +185 -164
  6. package/api/metric-costs-api.ts +144 -0
  7. package/api/metric-costs-per-year-api.ts +200 -200
  8. package/api/objective-api.ts +538 -44
  9. package/api/objective-weight-api.ts +190 -190
  10. package/api/objective-weights-api.ts +144 -0
  11. package/api/option-api.ts +925 -0
  12. package/api/value-framework-api.ts +1223 -109
  13. package/api/value-framework-costs-api.ts +239 -0
  14. package/api/value-framework-weights-api.ts +144 -0
  15. package/api.ts +8 -1
  16. package/base.ts +1 -25
  17. package/common.ts +20 -43
  18. package/configuration.ts +31 -20
  19. package/dist/api/default-api.d.ts +62 -0
  20. package/dist/api/default-api.js +122 -0
  21. package/dist/api/impact-api.d.ts +245 -0
  22. package/dist/api/impact-api.js +493 -0
  23. package/dist/api/investment-api.d.ts +607 -0
  24. package/dist/api/investment-api.js +1248 -0
  25. package/dist/api/metric-api.d.ts +225 -0
  26. package/dist/api/metric-api.js +458 -0
  27. package/dist/api/metric-costs-api.d.ts +75 -0
  28. package/dist/api/metric-costs-api.js +146 -0
  29. package/dist/api/metric-costs-per-year-api.d.ts +237 -0
  30. package/dist/api/metric-costs-per-year-api.js +479 -0
  31. package/dist/api/objective-api.d.ts +437 -0
  32. package/dist/api/objective-api.js +901 -0
  33. package/dist/api/objective-weight-api.d.ts +225 -0
  34. package/dist/api/objective-weight-api.js +458 -0
  35. package/dist/api/objective-weights-api.d.ts +75 -0
  36. package/dist/api/objective-weights-api.js +146 -0
  37. package/dist/api/option-api.d.ts +436 -0
  38. package/dist/api/option-api.js +888 -0
  39. package/dist/api/value-framework-api.d.ts +723 -0
  40. package/dist/api/value-framework-api.js +1490 -0
  41. package/dist/api/value-framework-costs-api.d.ts +119 -0
  42. package/dist/api/value-framework-costs-api.js +236 -0
  43. package/dist/api/value-framework-weights-api.d.ts +75 -0
  44. package/dist/api/value-framework-weights-api.js +146 -0
  45. package/dist/api.d.ts +24 -0
  46. package/dist/api.js +42 -0
  47. package/dist/base.d.ts +42 -0
  48. package/dist/base.js +46 -0
  49. package/dist/common.d.ts +34 -0
  50. package/dist/common.js +139 -0
  51. package/dist/configuration.d.ts +98 -0
  52. package/dist/configuration.js +44 -0
  53. package/dist/esm/api/default-api.d.ts +62 -0
  54. package/dist/esm/api/default-api.js +115 -0
  55. package/dist/esm/api/impact-api.d.ts +245 -0
  56. package/dist/esm/api/impact-api.js +486 -0
  57. package/dist/esm/api/investment-api.d.ts +607 -0
  58. package/dist/esm/api/investment-api.js +1241 -0
  59. package/dist/esm/api/metric-api.d.ts +225 -0
  60. package/dist/esm/api/metric-api.js +451 -0
  61. package/dist/esm/api/metric-costs-api.d.ts +75 -0
  62. package/dist/esm/api/metric-costs-api.js +139 -0
  63. package/dist/esm/api/metric-costs-per-year-api.d.ts +237 -0
  64. package/dist/esm/api/metric-costs-per-year-api.js +472 -0
  65. package/dist/esm/api/objective-api.d.ts +437 -0
  66. package/dist/esm/api/objective-api.js +894 -0
  67. package/dist/esm/api/objective-weight-api.d.ts +225 -0
  68. package/dist/esm/api/objective-weight-api.js +451 -0
  69. package/dist/esm/api/objective-weights-api.d.ts +75 -0
  70. package/dist/esm/api/objective-weights-api.js +139 -0
  71. package/dist/esm/api/option-api.d.ts +436 -0
  72. package/dist/esm/api/option-api.js +881 -0
  73. package/dist/esm/api/value-framework-api.d.ts +723 -0
  74. package/dist/esm/api/value-framework-api.js +1483 -0
  75. package/dist/esm/api/value-framework-costs-api.d.ts +119 -0
  76. package/dist/esm/api/value-framework-costs-api.js +229 -0
  77. package/dist/esm/api/value-framework-weights-api.d.ts +75 -0
  78. package/dist/esm/api/value-framework-weights-api.js +139 -0
  79. package/dist/esm/api.d.ts +24 -0
  80. package/dist/esm/api.js +26 -0
  81. package/dist/esm/base.d.ts +42 -0
  82. package/dist/esm/base.js +41 -0
  83. package/dist/esm/common.d.ts +34 -0
  84. package/dist/esm/common.js +126 -0
  85. package/dist/esm/configuration.d.ts +98 -0
  86. package/dist/esm/configuration.js +40 -0
  87. package/dist/esm/index.d.ts +14 -0
  88. package/dist/esm/index.js +16 -0
  89. package/dist/esm/models/evolution-type.d.ts +16 -0
  90. package/dist/esm/models/evolution-type.js +17 -0
  91. package/dist/esm/models/httpvalidation-error.d.ts +15 -0
  92. package/dist/esm/models/httpvalidation-error.js +14 -0
  93. package/dist/esm/models/impact-apiresponse.d.ts +33 -0
  94. package/dist/esm/models/impact-apiresponse.js +14 -0
  95. package/dist/esm/models/impact-create.d.ts +37 -0
  96. package/dist/esm/models/impact-create.js +14 -0
  97. package/dist/esm/models/impact-update.d.ts +22 -0
  98. package/dist/esm/models/impact-update.js +14 -0
  99. package/dist/esm/models/index.d.ts +30 -0
  100. package/dist/esm/models/index.js +30 -0
  101. package/dist/esm/models/investment-create.d.ts +21 -0
  102. package/dist/esm/models/investment-create.js +14 -0
  103. package/dist/esm/models/investment-response.d.ts +25 -0
  104. package/dist/esm/models/investment-response.js +14 -0
  105. package/dist/esm/models/investment-update.d.ts +18 -0
  106. package/dist/esm/models/investment-update.js +14 -0
  107. package/dist/esm/models/location-inner.d.ts +13 -0
  108. package/dist/esm/models/location-inner.js +14 -0
  109. package/dist/esm/models/measurement-type.d.ts +16 -0
  110. package/dist/esm/models/measurement-type.js +17 -0
  111. package/dist/esm/models/metric-costs-per-year-create.d.ts +32 -0
  112. package/dist/esm/models/metric-costs-per-year-create.js +14 -0
  113. package/dist/esm/models/metric-costs-per-year-response.d.ts +37 -0
  114. package/dist/esm/models/metric-costs-per-year-response.js +14 -0
  115. package/dist/esm/models/metric-costs-per-year-update.d.ts +18 -0
  116. package/dist/esm/models/metric-costs-per-year-update.js +14 -0
  117. package/dist/esm/models/metric-create.d.ts +43 -0
  118. package/dist/esm/models/metric-create.js +14 -0
  119. package/dist/esm/models/metric-response.d.ts +45 -0
  120. package/dist/esm/models/metric-response.js +14 -0
  121. package/dist/esm/models/metric-type.d.ts +17 -0
  122. package/dist/esm/models/metric-type.js +18 -0
  123. package/dist/esm/models/metric-update.d.ts +24 -0
  124. package/dist/esm/models/metric-update.js +14 -0
  125. package/dist/esm/models/objective-create.d.ts +21 -0
  126. package/dist/esm/models/objective-create.js +14 -0
  127. package/dist/esm/models/objective-response.d.ts +25 -0
  128. package/dist/esm/models/objective-response.js +14 -0
  129. package/dist/esm/models/objective-update.d.ts +18 -0
  130. package/dist/esm/models/objective-update.js +14 -0
  131. package/dist/esm/models/objective-weight-create.d.ts +28 -0
  132. package/dist/esm/models/objective-weight-create.js +14 -0
  133. package/dist/esm/models/objective-weight-response.d.ts +29 -0
  134. package/dist/esm/models/objective-weight-response.js +14 -0
  135. package/dist/esm/models/objective-weight-update.d.ts +17 -0
  136. package/dist/esm/models/objective-weight-update.js +14 -0
  137. package/dist/esm/models/option-create.d.ts +33 -0
  138. package/dist/esm/models/option-create.js +14 -0
  139. package/dist/esm/models/option-response.d.ts +31 -0
  140. package/dist/esm/models/option-response.js +14 -0
  141. package/dist/esm/models/option-update.d.ts +19 -0
  142. package/dist/esm/models/option-update.js +14 -0
  143. package/dist/esm/models/validation-error.d.ts +19 -0
  144. package/dist/esm/models/validation-error.js +14 -0
  145. package/dist/esm/models/value-framework-create.d.ts +21 -0
  146. package/dist/esm/models/value-framework-create.js +14 -0
  147. package/dist/esm/models/value-framework-response.d.ts +25 -0
  148. package/dist/esm/models/value-framework-response.js +14 -0
  149. package/dist/esm/models/value-framework-update.d.ts +18 -0
  150. package/dist/esm/models/value-framework-update.js +14 -0
  151. package/dist/index.d.ts +14 -0
  152. package/dist/index.js +32 -0
  153. package/dist/models/evolution-type.d.ts +16 -0
  154. package/dist/models/evolution-type.js +20 -0
  155. package/dist/models/httpvalidation-error.d.ts +15 -0
  156. package/dist/models/httpvalidation-error.js +15 -0
  157. package/dist/models/impact-apiresponse.d.ts +33 -0
  158. package/dist/models/impact-apiresponse.js +15 -0
  159. package/dist/models/impact-create.d.ts +37 -0
  160. package/dist/models/impact-create.js +15 -0
  161. package/dist/models/impact-update.d.ts +22 -0
  162. package/dist/models/impact-update.js +15 -0
  163. package/dist/models/index.d.ts +30 -0
  164. package/dist/models/index.js +46 -0
  165. package/dist/models/investment-create.d.ts +21 -0
  166. package/dist/models/investment-create.js +15 -0
  167. package/dist/models/investment-response.d.ts +25 -0
  168. package/dist/models/investment-response.js +15 -0
  169. package/dist/models/investment-update.d.ts +18 -0
  170. package/dist/models/investment-update.js +15 -0
  171. package/dist/models/location-inner.d.ts +13 -0
  172. package/dist/models/location-inner.js +15 -0
  173. package/dist/models/measurement-type.d.ts +16 -0
  174. package/dist/models/measurement-type.js +20 -0
  175. package/dist/models/metric-costs-per-year-create.d.ts +32 -0
  176. package/dist/models/metric-costs-per-year-create.js +15 -0
  177. package/dist/models/metric-costs-per-year-response.d.ts +37 -0
  178. package/dist/models/metric-costs-per-year-response.js +15 -0
  179. package/dist/models/metric-costs-per-year-update.d.ts +18 -0
  180. package/dist/models/metric-costs-per-year-update.js +15 -0
  181. package/dist/models/metric-create.d.ts +43 -0
  182. package/dist/models/metric-create.js +15 -0
  183. package/dist/models/metric-response.d.ts +45 -0
  184. package/dist/models/metric-response.js +15 -0
  185. package/dist/models/metric-type.d.ts +17 -0
  186. package/dist/models/metric-type.js +21 -0
  187. package/dist/models/metric-update.d.ts +24 -0
  188. package/dist/models/metric-update.js +15 -0
  189. package/dist/models/objective-create.d.ts +21 -0
  190. package/dist/models/objective-create.js +15 -0
  191. package/dist/models/objective-response.d.ts +25 -0
  192. package/dist/models/objective-response.js +15 -0
  193. package/dist/models/objective-update.d.ts +18 -0
  194. package/dist/models/objective-update.js +15 -0
  195. package/dist/models/objective-weight-create.d.ts +28 -0
  196. package/dist/models/objective-weight-create.js +15 -0
  197. package/dist/models/objective-weight-response.d.ts +29 -0
  198. package/dist/models/objective-weight-response.js +15 -0
  199. package/dist/models/objective-weight-update.d.ts +17 -0
  200. package/dist/models/objective-weight-update.js +15 -0
  201. package/dist/models/option-create.d.ts +33 -0
  202. package/dist/models/option-create.js +15 -0
  203. package/dist/models/option-response.d.ts +31 -0
  204. package/dist/models/option-response.js +15 -0
  205. package/dist/models/option-update.d.ts +19 -0
  206. package/dist/models/option-update.js +15 -0
  207. package/dist/models/validation-error.d.ts +19 -0
  208. package/dist/models/validation-error.js +15 -0
  209. package/dist/models/value-framework-create.d.ts +21 -0
  210. package/dist/models/value-framework-create.js +15 -0
  211. package/dist/models/value-framework-response.d.ts +25 -0
  212. package/dist/models/value-framework-response.js +15 -0
  213. package/dist/models/value-framework-update.d.ts +18 -0
  214. package/dist/models/value-framework-update.js +15 -0
  215. package/docs/DefaultApi.md +51 -0
  216. package/docs/EvolutionType.md +10 -0
  217. package/docs/HTTPValidationError.md +20 -0
  218. package/docs/ImpactAPIResponse.md +39 -0
  219. package/docs/ImpactApi.md +312 -0
  220. package/docs/ImpactCreate.md +29 -0
  221. package/docs/ImpactUpdate.md +29 -0
  222. package/docs/InvestmentApi.md +875 -0
  223. package/docs/InvestmentCreate.md +23 -0
  224. package/docs/InvestmentResponse.md +31 -0
  225. package/docs/InvestmentUpdate.md +23 -0
  226. package/docs/LocationInner.md +18 -0
  227. package/docs/MeasurementType.md +10 -0
  228. package/docs/MetricApi.md +299 -0
  229. package/docs/MetricCostsApi.md +66 -0
  230. package/docs/MetricCostsPerYearApi.md +307 -0
  231. package/docs/MetricCostsPerYearCreate.md +27 -0
  232. package/docs/MetricCostsPerYearResponse.md +31 -0
  233. package/docs/MetricCostsPerYearUpdate.md +23 -0
  234. package/docs/MetricCreate.md +33 -0
  235. package/docs/MetricResponse.md +43 -0
  236. package/docs/MetricType.md +12 -0
  237. package/docs/MetricUpdate.md +31 -0
  238. package/docs/ObjectiveApi.md +633 -0
  239. package/docs/ObjectiveCreate.md +23 -0
  240. package/docs/ObjectiveResponse.md +31 -0
  241. package/docs/ObjectiveUpdate.md +23 -0
  242. package/docs/ObjectiveWeightApi.md +298 -0
  243. package/docs/ObjectiveWeightCreate.md +25 -0
  244. package/docs/ObjectiveWeightResponse.md +27 -0
  245. package/docs/ObjectiveWeightUpdate.md +21 -0
  246. package/docs/ObjectiveWeightsApi.md +66 -0
  247. package/docs/OptionApi.md +602 -0
  248. package/docs/OptionCreate.md +29 -0
  249. package/docs/OptionResponse.md +37 -0
  250. package/docs/OptionUpdate.md +25 -0
  251. package/docs/ValidationError.md +28 -0
  252. package/docs/ValueFrameworkApi.md +1053 -0
  253. package/docs/ValueFrameworkCostsApi.md +128 -0
  254. package/docs/ValueFrameworkCreate.md +23 -0
  255. package/docs/ValueFrameworkResponse.md +31 -0
  256. package/docs/ValueFrameworkUpdate.md +23 -0
  257. package/docs/ValueFrameworkWeightsApi.md +66 -0
  258. package/index.ts +1 -1
  259. package/models/evolution-type.ts +26 -0
  260. package/models/httpvalidation-error.ts +2 -12
  261. package/models/impact-apiresponse.ts +43 -0
  262. package/models/impact-create.ts +47 -0
  263. package/models/impact-update.ts +32 -0
  264. package/models/index.ts +11 -1
  265. package/models/investment-create.ts +27 -0
  266. package/models/investment-response.ts +31 -0
  267. package/models/investment-update.ts +24 -0
  268. package/models/{validation-error-loc-inner.ts → location-inner.ts} +2 -7
  269. package/models/measurement-type.ts +1 -6
  270. package/models/metric-costs-per-year-create.ts +1 -17
  271. package/models/metric-costs-per-year-response.ts +1 -18
  272. package/models/metric-costs-per-year-update.ts +1 -13
  273. package/models/metric-create.ts +3 -28
  274. package/models/metric-response.ts +3 -50
  275. package/models/metric-type.ts +1 -6
  276. package/models/metric-update.ts +3 -35
  277. package/models/objective-create.ts +1 -10
  278. package/models/objective-response.ts +1 -30
  279. package/models/objective-update.ts +1 -13
  280. package/models/objective-weight-create.ts +1 -9
  281. package/models/objective-weight-response.ts +1 -14
  282. package/models/objective-weight-update.ts +1 -8
  283. package/models/option-create.ts +39 -0
  284. package/models/option-response.ts +37 -0
  285. package/models/option-update.ts +25 -0
  286. package/models/validation-error.ts +3 -33
  287. package/models/value-framework-create.ts +1 -10
  288. package/models/value-framework-response.ts +1 -30
  289. package/models/value-framework-update.ts +1 -13
  290. package/package.json +4 -4
@@ -0,0 +1,1308 @@
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.2.0-dev3
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
+ import type { Configuration } from '../configuration';
17
+ import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
18
+ import globalAxios from 'axios';
19
+ // Some imports not used depending on template conditions
20
+ // @ts-ignore
21
+ import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction, replaceWithSerializableTypeIfNeeded } from '../common';
22
+ // @ts-ignore
23
+ import { BASE_PATH, COLLECTION_FORMATS, type RequestArgs, BaseAPI, RequiredError, operationServerMap } from '../base';
24
+ // @ts-ignore
25
+ import type { ImpactAPIResponse } from '../models';
26
+ // @ts-ignore
27
+ import type { ImpactCreate } from '../models';
28
+ // @ts-ignore
29
+ import type { ImpactUpdate } from '../models';
30
+ // @ts-ignore
31
+ import type { InvestmentCreate } from '../models';
32
+ // @ts-ignore
33
+ import type { InvestmentResponse } from '../models';
34
+ // @ts-ignore
35
+ import type { InvestmentUpdate } from '../models';
36
+ // @ts-ignore
37
+ import type { OptionCreate } from '../models';
38
+ // @ts-ignore
39
+ import type { OptionResponse } from '../models';
40
+ // @ts-ignore
41
+ import type { OptionUpdate } from '../models';
42
+ /**
43
+ * InvestmentApi - axios parameter creator
44
+ */
45
+ export const InvestmentApiAxiosParamCreator = function (configuration?: Configuration) {
46
+ return {
47
+ /**
48
+ * Create a new impact under this option.
49
+ * @summary Create an impact for this option
50
+ * @param {string} optionId UUID of the option
51
+ * @param {string} investmentId UUID of the investment
52
+ * @param {ImpactCreate} impactCreate
53
+ * @param {*} [options] Override http request option.
54
+ * @throws {RequiredError}
55
+ */
56
+ createImpactForOption: async (optionId: string, investmentId: string, impactCreate: ImpactCreate, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
57
+ // verify required parameter 'optionId' is not null or undefined
58
+ assertParamExists('createImpactForOption', 'optionId', optionId)
59
+ // verify required parameter 'investmentId' is not null or undefined
60
+ assertParamExists('createImpactForOption', 'investmentId', investmentId)
61
+ // verify required parameter 'impactCreate' is not null or undefined
62
+ assertParamExists('createImpactForOption', 'impactCreate', impactCreate)
63
+ const localVarPath = `/investment/{investment_id}/option/{option_id}/impact/`
64
+ .replace(`{${"option_id"}}`, encodeURIComponent(String(optionId)))
65
+ .replace(`{${"investment_id"}}`, encodeURIComponent(String(investmentId)));
66
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
67
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
68
+ let baseOptions;
69
+ if (configuration) {
70
+ baseOptions = configuration.baseOptions;
71
+ }
72
+
73
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
74
+ const localVarHeaderParameter = {} as any;
75
+ const localVarQueryParameter = {} as any;
76
+
77
+ // authentication OAuth2AuthorizationCodeBearer required
78
+ // oauth required
79
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
80
+
81
+ localVarHeaderParameter['Content-Type'] = 'application/json';
82
+ localVarHeaderParameter['Accept'] = 'application/json';
83
+
84
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
85
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
86
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
87
+ localVarRequestOptions.data = serializeDataIfNeeded(impactCreate, localVarRequestOptions, configuration)
88
+
89
+ return {
90
+ url: toPathString(localVarUrlObj),
91
+ options: localVarRequestOptions,
92
+ };
93
+ },
94
+ /**
95
+ * Create a new option under this investment.
96
+ * @summary Create an option for this investment
97
+ * @param {string} investmentId UUID of the investment
98
+ * @param {OptionCreate} optionCreate
99
+ * @param {*} [options] Override http request option.
100
+ * @throws {RequiredError}
101
+ */
102
+ createOptionForInvestment: async (investmentId: string, optionCreate: OptionCreate, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
103
+ // verify required parameter 'investmentId' is not null or undefined
104
+ assertParamExists('createOptionForInvestment', 'investmentId', investmentId)
105
+ // verify required parameter 'optionCreate' is not null or undefined
106
+ assertParamExists('createOptionForInvestment', 'optionCreate', optionCreate)
107
+ const localVarPath = `/investment/{investment_id}/option/`
108
+ .replace(`{${"investment_id"}}`, encodeURIComponent(String(investmentId)));
109
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
110
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
111
+ let baseOptions;
112
+ if (configuration) {
113
+ baseOptions = configuration.baseOptions;
114
+ }
115
+
116
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
117
+ const localVarHeaderParameter = {} as any;
118
+ const localVarQueryParameter = {} as any;
119
+
120
+ // authentication OAuth2AuthorizationCodeBearer required
121
+ // oauth required
122
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
123
+
124
+ localVarHeaderParameter['Content-Type'] = 'application/json';
125
+ localVarHeaderParameter['Accept'] = 'application/json';
126
+
127
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
128
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
129
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
130
+ localVarRequestOptions.data = serializeDataIfNeeded(optionCreate, localVarRequestOptions, configuration)
131
+
132
+ return {
133
+ url: toPathString(localVarUrlObj),
134
+ options: localVarRequestOptions,
135
+ };
136
+ },
137
+ /**
138
+ * Delete an existing impact by its ID.
139
+ * @summary Delete an impact for this option
140
+ * @param {string} impactId UUID of the impact
141
+ * @param {string} optionId UUID of the option
142
+ * @param {string} investmentId UUID of the investment
143
+ * @param {*} [options] Override http request option.
144
+ * @throws {RequiredError}
145
+ */
146
+ deleteImpactForOption: async (impactId: string, optionId: string, investmentId: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
147
+ // verify required parameter 'impactId' is not null or undefined
148
+ assertParamExists('deleteImpactForOption', 'impactId', impactId)
149
+ // verify required parameter 'optionId' is not null or undefined
150
+ assertParamExists('deleteImpactForOption', 'optionId', optionId)
151
+ // verify required parameter 'investmentId' is not null or undefined
152
+ assertParamExists('deleteImpactForOption', 'investmentId', investmentId)
153
+ const localVarPath = `/investment/{investment_id}/option/{option_id}/impact/{impact_id}`
154
+ .replace(`{${"impact_id"}}`, encodeURIComponent(String(impactId)))
155
+ .replace(`{${"option_id"}}`, encodeURIComponent(String(optionId)))
156
+ .replace(`{${"investment_id"}}`, encodeURIComponent(String(investmentId)));
157
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
158
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
159
+ let baseOptions;
160
+ if (configuration) {
161
+ baseOptions = configuration.baseOptions;
162
+ }
163
+
164
+ const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options};
165
+ const localVarHeaderParameter = {} as any;
166
+ const localVarQueryParameter = {} as any;
167
+
168
+ // authentication OAuth2AuthorizationCodeBearer required
169
+ // oauth required
170
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
171
+
172
+
173
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
174
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
175
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
176
+
177
+ return {
178
+ url: toPathString(localVarUrlObj),
179
+ options: localVarRequestOptions,
180
+ };
181
+ },
182
+ /**
183
+ * Delete an existing investment by its ID. Associated options are also deleted via cascade.
184
+ * @summary Delete an investment
185
+ * @param {string} investmentId UUID of the investment
186
+ * @param {*} [options] Override http request option.
187
+ * @throws {RequiredError}
188
+ */
189
+ deleteInvestment: async (investmentId: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
190
+ // verify required parameter 'investmentId' is not null or undefined
191
+ assertParamExists('deleteInvestment', 'investmentId', investmentId)
192
+ const localVarPath = `/investment/{investment_id}`
193
+ .replace(`{${"investment_id"}}`, encodeURIComponent(String(investmentId)));
194
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
195
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
196
+ let baseOptions;
197
+ if (configuration) {
198
+ baseOptions = configuration.baseOptions;
199
+ }
200
+
201
+ const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options};
202
+ const localVarHeaderParameter = {} as any;
203
+ const localVarQueryParameter = {} as any;
204
+
205
+ // authentication OAuth2AuthorizationCodeBearer required
206
+ // oauth required
207
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
208
+
209
+
210
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
211
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
212
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
213
+
214
+ return {
215
+ url: toPathString(localVarUrlObj),
216
+ options: localVarRequestOptions,
217
+ };
218
+ },
219
+ /**
220
+ * Delete an existing option by its ID. Associated phases and impacts are also deleted via cascade.
221
+ * @summary Delete an option for this investment
222
+ * @param {string} optionId UUID of the option
223
+ * @param {string} investmentId UUID of the investment
224
+ * @param {*} [options] Override http request option.
225
+ * @throws {RequiredError}
226
+ */
227
+ deleteOptionForInvestment: async (optionId: string, investmentId: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
228
+ // verify required parameter 'optionId' is not null or undefined
229
+ assertParamExists('deleteOptionForInvestment', 'optionId', optionId)
230
+ // verify required parameter 'investmentId' is not null or undefined
231
+ assertParamExists('deleteOptionForInvestment', 'investmentId', investmentId)
232
+ const localVarPath = `/investment/{investment_id}/option/{option_id}`
233
+ .replace(`{${"option_id"}}`, encodeURIComponent(String(optionId)))
234
+ .replace(`{${"investment_id"}}`, encodeURIComponent(String(investmentId)));
235
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
236
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
237
+ let baseOptions;
238
+ if (configuration) {
239
+ baseOptions = configuration.baseOptions;
240
+ }
241
+
242
+ const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options};
243
+ const localVarHeaderParameter = {} as any;
244
+ const localVarQueryParameter = {} as any;
245
+
246
+ // authentication OAuth2AuthorizationCodeBearer required
247
+ // oauth required
248
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
249
+
250
+
251
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
252
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
253
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
254
+
255
+ return {
256
+ url: toPathString(localVarUrlObj),
257
+ options: localVarRequestOptions,
258
+ };
259
+ },
260
+ /**
261
+ * Retrieve a specific impact for the option.
262
+ * @summary Get an impact for this option
263
+ * @param {string} impactId UUID of the impact
264
+ * @param {string} optionId UUID of the option
265
+ * @param {string} investmentId UUID of the investment
266
+ * @param {*} [options] Override http request option.
267
+ * @throws {RequiredError}
268
+ */
269
+ getImpactForOption: async (impactId: string, optionId: string, investmentId: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
270
+ // verify required parameter 'impactId' is not null or undefined
271
+ assertParamExists('getImpactForOption', 'impactId', impactId)
272
+ // verify required parameter 'optionId' is not null or undefined
273
+ assertParamExists('getImpactForOption', 'optionId', optionId)
274
+ // verify required parameter 'investmentId' is not null or undefined
275
+ assertParamExists('getImpactForOption', 'investmentId', investmentId)
276
+ const localVarPath = `/investment/{investment_id}/option/{option_id}/impact/{impact_id}`
277
+ .replace(`{${"impact_id"}}`, encodeURIComponent(String(impactId)))
278
+ .replace(`{${"option_id"}}`, encodeURIComponent(String(optionId)))
279
+ .replace(`{${"investment_id"}}`, encodeURIComponent(String(investmentId)));
280
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
281
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
282
+ let baseOptions;
283
+ if (configuration) {
284
+ baseOptions = configuration.baseOptions;
285
+ }
286
+
287
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
288
+ const localVarHeaderParameter = {} as any;
289
+ const localVarQueryParameter = {} as any;
290
+
291
+ // authentication OAuth2AuthorizationCodeBearer required
292
+ // oauth required
293
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
294
+
295
+ localVarHeaderParameter['Accept'] = 'application/json';
296
+
297
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
298
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
299
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
300
+
301
+ return {
302
+ url: toPathString(localVarUrlObj),
303
+ options: localVarRequestOptions,
304
+ };
305
+ },
306
+ /**
307
+ * Retrieve a paginated list of all impacts for a specific option.
308
+ * @summary List impacts for this option
309
+ * @param {string} optionId UUID of the option
310
+ * @param {string} investmentId UUID of the investment
311
+ * @param {number} [offset] Number of records to skip
312
+ * @param {number} [limit] Max number of records to return
313
+ * @param {*} [options] Override http request option.
314
+ * @throws {RequiredError}
315
+ */
316
+ getImpactsForOption: async (optionId: string, investmentId: string, offset?: number, limit?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
317
+ // verify required parameter 'optionId' is not null or undefined
318
+ assertParamExists('getImpactsForOption', 'optionId', optionId)
319
+ // verify required parameter 'investmentId' is not null or undefined
320
+ assertParamExists('getImpactsForOption', 'investmentId', investmentId)
321
+ const localVarPath = `/investment/{investment_id}/option/{option_id}/impact/`
322
+ .replace(`{${"option_id"}}`, encodeURIComponent(String(optionId)))
323
+ .replace(`{${"investment_id"}}`, encodeURIComponent(String(investmentId)));
324
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
325
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
326
+ let baseOptions;
327
+ if (configuration) {
328
+ baseOptions = configuration.baseOptions;
329
+ }
330
+
331
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
332
+ const localVarHeaderParameter = {} as any;
333
+ const localVarQueryParameter = {} as any;
334
+
335
+ // authentication OAuth2AuthorizationCodeBearer required
336
+ // oauth required
337
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
338
+
339
+ if (offset !== undefined) {
340
+ localVarQueryParameter['offset'] = offset;
341
+ }
342
+
343
+ if (limit !== undefined) {
344
+ localVarQueryParameter['limit'] = limit;
345
+ }
346
+
347
+ localVarHeaderParameter['Accept'] = 'application/json';
348
+
349
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
350
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
351
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
352
+
353
+ return {
354
+ url: toPathString(localVarUrlObj),
355
+ options: localVarRequestOptions,
356
+ };
357
+ },
358
+ /**
359
+ * Retrieve a single investment by its ID.
360
+ * @summary Get an investment by ID
361
+ * @param {string} investmentId UUID of the investment
362
+ * @param {*} [options] Override http request option.
363
+ * @throws {RequiredError}
364
+ */
365
+ getInvestmentById: async (investmentId: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
366
+ // verify required parameter 'investmentId' is not null or undefined
367
+ assertParamExists('getInvestmentById', 'investmentId', investmentId)
368
+ const localVarPath = `/investment/{investment_id}`
369
+ .replace(`{${"investment_id"}}`, encodeURIComponent(String(investmentId)));
370
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
371
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
372
+ let baseOptions;
373
+ if (configuration) {
374
+ baseOptions = configuration.baseOptions;
375
+ }
376
+
377
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
378
+ const localVarHeaderParameter = {} as any;
379
+ const localVarQueryParameter = {} as any;
380
+
381
+ // authentication OAuth2AuthorizationCodeBearer required
382
+ // oauth required
383
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
384
+
385
+ localVarHeaderParameter['Accept'] = 'application/json';
386
+
387
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
388
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
389
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
390
+
391
+ return {
392
+ url: toPathString(localVarUrlObj),
393
+ options: localVarRequestOptions,
394
+ };
395
+ },
396
+ /**
397
+ * Retrieve a paginated list of all investments.
398
+ * @summary List investments
399
+ * @param {number} [offset] Number of records to skip
400
+ * @param {number} [limit] Max number of records to return
401
+ * @param {*} [options] Override http request option.
402
+ * @throws {RequiredError}
403
+ */
404
+ getInvestments: async (offset?: number, limit?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
405
+ const localVarPath = `/investment/`;
406
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
407
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
408
+ let baseOptions;
409
+ if (configuration) {
410
+ baseOptions = configuration.baseOptions;
411
+ }
412
+
413
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
414
+ const localVarHeaderParameter = {} as any;
415
+ const localVarQueryParameter = {} as any;
416
+
417
+ // authentication OAuth2AuthorizationCodeBearer required
418
+ // oauth required
419
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
420
+
421
+ if (offset !== undefined) {
422
+ localVarQueryParameter['offset'] = offset;
423
+ }
424
+
425
+ if (limit !== undefined) {
426
+ localVarQueryParameter['limit'] = limit;
427
+ }
428
+
429
+ localVarHeaderParameter['Accept'] = 'application/json';
430
+
431
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
432
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
433
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
434
+
435
+ return {
436
+ url: toPathString(localVarUrlObj),
437
+ options: localVarRequestOptions,
438
+ };
439
+ },
440
+ /**
441
+ * Retrieve a specific option for the investment.
442
+ * @summary Get an option for this investment
443
+ * @param {string} optionId UUID of the option
444
+ * @param {string} investmentId UUID of the investment
445
+ * @param {*} [options] Override http request option.
446
+ * @throws {RequiredError}
447
+ */
448
+ getOptionForInvestment: async (optionId: string, investmentId: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
449
+ // verify required parameter 'optionId' is not null or undefined
450
+ assertParamExists('getOptionForInvestment', 'optionId', optionId)
451
+ // verify required parameter 'investmentId' is not null or undefined
452
+ assertParamExists('getOptionForInvestment', 'investmentId', investmentId)
453
+ const localVarPath = `/investment/{investment_id}/option/{option_id}`
454
+ .replace(`{${"option_id"}}`, encodeURIComponent(String(optionId)))
455
+ .replace(`{${"investment_id"}}`, encodeURIComponent(String(investmentId)));
456
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
457
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
458
+ let baseOptions;
459
+ if (configuration) {
460
+ baseOptions = configuration.baseOptions;
461
+ }
462
+
463
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
464
+ const localVarHeaderParameter = {} as any;
465
+ const localVarQueryParameter = {} as any;
466
+
467
+ // authentication OAuth2AuthorizationCodeBearer required
468
+ // oauth required
469
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
470
+
471
+ localVarHeaderParameter['Accept'] = 'application/json';
472
+
473
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
474
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
475
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
476
+
477
+ return {
478
+ url: toPathString(localVarUrlObj),
479
+ options: localVarRequestOptions,
480
+ };
481
+ },
482
+ /**
483
+ * Retrieve a paginated list of all options for a specific investment.
484
+ * @summary List options for this investment
485
+ * @param {string} investmentId UUID of the investment
486
+ * @param {number} [offset] Number of records to skip
487
+ * @param {number} [limit] Max number of records to return
488
+ * @param {*} [options] Override http request option.
489
+ * @throws {RequiredError}
490
+ */
491
+ getOptionsForInvestment: async (investmentId: string, offset?: number, limit?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
492
+ // verify required parameter 'investmentId' is not null or undefined
493
+ assertParamExists('getOptionsForInvestment', 'investmentId', investmentId)
494
+ const localVarPath = `/investment/{investment_id}/option/`
495
+ .replace(`{${"investment_id"}}`, encodeURIComponent(String(investmentId)));
496
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
497
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
498
+ let baseOptions;
499
+ if (configuration) {
500
+ baseOptions = configuration.baseOptions;
501
+ }
502
+
503
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
504
+ const localVarHeaderParameter = {} as any;
505
+ const localVarQueryParameter = {} as any;
506
+
507
+ // authentication OAuth2AuthorizationCodeBearer required
508
+ // oauth required
509
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
510
+
511
+ if (offset !== undefined) {
512
+ localVarQueryParameter['offset'] = offset;
513
+ }
514
+
515
+ if (limit !== undefined) {
516
+ localVarQueryParameter['limit'] = limit;
517
+ }
518
+
519
+ localVarHeaderParameter['Accept'] = 'application/json';
520
+
521
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
522
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
523
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
524
+
525
+ return {
526
+ url: toPathString(localVarUrlObj),
527
+ options: localVarRequestOptions,
528
+ };
529
+ },
530
+ /**
531
+ * Update one or more fields of an existing impact. Only the fields included in the request body will be modified; omitted fields remain unchanged.
532
+ * @summary Partially update an impact for this option
533
+ * @param {string} impactId UUID of the impact
534
+ * @param {string} optionId UUID of the option
535
+ * @param {string} investmentId UUID of the investment
536
+ * @param {ImpactUpdate} impactUpdate
537
+ * @param {*} [options] Override http request option.
538
+ * @throws {RequiredError}
539
+ */
540
+ patchImpactForOption: async (impactId: string, optionId: string, investmentId: string, impactUpdate: ImpactUpdate, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
541
+ // verify required parameter 'impactId' is not null or undefined
542
+ assertParamExists('patchImpactForOption', 'impactId', impactId)
543
+ // verify required parameter 'optionId' is not null or undefined
544
+ assertParamExists('patchImpactForOption', 'optionId', optionId)
545
+ // verify required parameter 'investmentId' is not null or undefined
546
+ assertParamExists('patchImpactForOption', 'investmentId', investmentId)
547
+ // verify required parameter 'impactUpdate' is not null or undefined
548
+ assertParamExists('patchImpactForOption', 'impactUpdate', impactUpdate)
549
+ const localVarPath = `/investment/{investment_id}/option/{option_id}/impact/{impact_id}`
550
+ .replace(`{${"impact_id"}}`, encodeURIComponent(String(impactId)))
551
+ .replace(`{${"option_id"}}`, encodeURIComponent(String(optionId)))
552
+ .replace(`{${"investment_id"}}`, encodeURIComponent(String(investmentId)));
553
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
554
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
555
+ let baseOptions;
556
+ if (configuration) {
557
+ baseOptions = configuration.baseOptions;
558
+ }
559
+
560
+ const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options};
561
+ const localVarHeaderParameter = {} as any;
562
+ const localVarQueryParameter = {} as any;
563
+
564
+ // authentication OAuth2AuthorizationCodeBearer required
565
+ // oauth required
566
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
567
+
568
+ localVarHeaderParameter['Content-Type'] = 'application/json';
569
+ localVarHeaderParameter['Accept'] = 'application/json';
570
+
571
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
572
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
573
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
574
+ localVarRequestOptions.data = serializeDataIfNeeded(impactUpdate, localVarRequestOptions, configuration)
575
+
576
+ return {
577
+ url: toPathString(localVarUrlObj),
578
+ options: localVarRequestOptions,
579
+ };
580
+ },
581
+ /**
582
+ * Update one or more fields of an existing investment. Only the fields included in the request body will be modified; omitted fields remain unchanged.
583
+ * @summary Partially update an investment
584
+ * @param {string} investmentId UUID of the investment
585
+ * @param {InvestmentUpdate} investmentUpdate
586
+ * @param {*} [options] Override http request option.
587
+ * @throws {RequiredError}
588
+ */
589
+ patchInvestment: async (investmentId: string, investmentUpdate: InvestmentUpdate, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
590
+ // verify required parameter 'investmentId' is not null or undefined
591
+ assertParamExists('patchInvestment', 'investmentId', investmentId)
592
+ // verify required parameter 'investmentUpdate' is not null or undefined
593
+ assertParamExists('patchInvestment', 'investmentUpdate', investmentUpdate)
594
+ const localVarPath = `/investment/{investment_id}`
595
+ .replace(`{${"investment_id"}}`, encodeURIComponent(String(investmentId)));
596
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
597
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
598
+ let baseOptions;
599
+ if (configuration) {
600
+ baseOptions = configuration.baseOptions;
601
+ }
602
+
603
+ const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options};
604
+ const localVarHeaderParameter = {} as any;
605
+ const localVarQueryParameter = {} as any;
606
+
607
+ // authentication OAuth2AuthorizationCodeBearer required
608
+ // oauth required
609
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
610
+
611
+ localVarHeaderParameter['Content-Type'] = 'application/json';
612
+ localVarHeaderParameter['Accept'] = 'application/json';
613
+
614
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
615
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
616
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
617
+ localVarRequestOptions.data = serializeDataIfNeeded(investmentUpdate, localVarRequestOptions, configuration)
618
+
619
+ return {
620
+ url: toPathString(localVarUrlObj),
621
+ options: localVarRequestOptions,
622
+ };
623
+ },
624
+ /**
625
+ * Update one or more fields of an existing option. Only the fields included in the request body will be modified; omitted fields remain unchanged.
626
+ * @summary Partially update an option for this investment
627
+ * @param {string} optionId UUID of the option
628
+ * @param {string} investmentId UUID of the investment
629
+ * @param {OptionUpdate} optionUpdate
630
+ * @param {*} [options] Override http request option.
631
+ * @throws {RequiredError}
632
+ */
633
+ patchOptionForInvestment: async (optionId: string, investmentId: string, optionUpdate: OptionUpdate, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
634
+ // verify required parameter 'optionId' is not null or undefined
635
+ assertParamExists('patchOptionForInvestment', 'optionId', optionId)
636
+ // verify required parameter 'investmentId' is not null or undefined
637
+ assertParamExists('patchOptionForInvestment', 'investmentId', investmentId)
638
+ // verify required parameter 'optionUpdate' is not null or undefined
639
+ assertParamExists('patchOptionForInvestment', 'optionUpdate', optionUpdate)
640
+ const localVarPath = `/investment/{investment_id}/option/{option_id}`
641
+ .replace(`{${"option_id"}}`, encodeURIComponent(String(optionId)))
642
+ .replace(`{${"investment_id"}}`, encodeURIComponent(String(investmentId)));
643
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
644
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
645
+ let baseOptions;
646
+ if (configuration) {
647
+ baseOptions = configuration.baseOptions;
648
+ }
649
+
650
+ const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options};
651
+ const localVarHeaderParameter = {} as any;
652
+ const localVarQueryParameter = {} as any;
653
+
654
+ // authentication OAuth2AuthorizationCodeBearer required
655
+ // oauth required
656
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
657
+
658
+ localVarHeaderParameter['Content-Type'] = 'application/json';
659
+ localVarHeaderParameter['Accept'] = 'application/json';
660
+
661
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
662
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
663
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
664
+ localVarRequestOptions.data = serializeDataIfNeeded(optionUpdate, localVarRequestOptions, configuration)
665
+
666
+ return {
667
+ url: toPathString(localVarUrlObj),
668
+ options: localVarRequestOptions,
669
+ };
670
+ },
671
+ /**
672
+ * Create a new investment.
673
+ * @summary Create an investment
674
+ * @param {InvestmentCreate} investmentCreate
675
+ * @param {*} [options] Override http request option.
676
+ * @throws {RequiredError}
677
+ */
678
+ postInvestment: async (investmentCreate: InvestmentCreate, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
679
+ // verify required parameter 'investmentCreate' is not null or undefined
680
+ assertParamExists('postInvestment', 'investmentCreate', investmentCreate)
681
+ const localVarPath = `/investment/`;
682
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
683
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
684
+ let baseOptions;
685
+ if (configuration) {
686
+ baseOptions = configuration.baseOptions;
687
+ }
688
+
689
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
690
+ const localVarHeaderParameter = {} as any;
691
+ const localVarQueryParameter = {} as any;
692
+
693
+ // authentication OAuth2AuthorizationCodeBearer required
694
+ // oauth required
695
+ await setOAuthToObject(localVarHeaderParameter, "OAuth2AuthorizationCodeBearer", [], configuration)
696
+
697
+ localVarHeaderParameter['Content-Type'] = 'application/json';
698
+ localVarHeaderParameter['Accept'] = 'application/json';
699
+
700
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
701
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
702
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
703
+ localVarRequestOptions.data = serializeDataIfNeeded(investmentCreate, localVarRequestOptions, configuration)
704
+
705
+ return {
706
+ url: toPathString(localVarUrlObj),
707
+ options: localVarRequestOptions,
708
+ };
709
+ },
710
+ }
711
+ };
712
+
713
+ /**
714
+ * InvestmentApi - functional programming interface
715
+ */
716
+ export const InvestmentApiFp = function(configuration?: Configuration) {
717
+ const localVarAxiosParamCreator = InvestmentApiAxiosParamCreator(configuration)
718
+ return {
719
+ /**
720
+ * Create a new impact under this option.
721
+ * @summary Create an impact for this option
722
+ * @param {string} optionId UUID of the option
723
+ * @param {string} investmentId UUID of the investment
724
+ * @param {ImpactCreate} impactCreate
725
+ * @param {*} [options] Override http request option.
726
+ * @throws {RequiredError}
727
+ */
728
+ async createImpactForOption(optionId: string, investmentId: string, impactCreate: ImpactCreate, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ImpactAPIResponse>> {
729
+ const localVarAxiosArgs = await localVarAxiosParamCreator.createImpactForOption(optionId, investmentId, impactCreate, options);
730
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
731
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.createImpactForOption']?.[localVarOperationServerIndex]?.url;
732
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
733
+ },
734
+ /**
735
+ * Create a new option under this investment.
736
+ * @summary Create an option for this investment
737
+ * @param {string} investmentId UUID of the investment
738
+ * @param {OptionCreate} optionCreate
739
+ * @param {*} [options] Override http request option.
740
+ * @throws {RequiredError}
741
+ */
742
+ async createOptionForInvestment(investmentId: string, optionCreate: OptionCreate, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<OptionResponse>> {
743
+ const localVarAxiosArgs = await localVarAxiosParamCreator.createOptionForInvestment(investmentId, optionCreate, options);
744
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
745
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.createOptionForInvestment']?.[localVarOperationServerIndex]?.url;
746
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
747
+ },
748
+ /**
749
+ * Delete an existing impact by its ID.
750
+ * @summary Delete an impact for this option
751
+ * @param {string} impactId UUID of the impact
752
+ * @param {string} optionId UUID of the option
753
+ * @param {string} investmentId UUID of the investment
754
+ * @param {*} [options] Override http request option.
755
+ * @throws {RequiredError}
756
+ */
757
+ async deleteImpactForOption(impactId: string, optionId: string, investmentId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
758
+ const localVarAxiosArgs = await localVarAxiosParamCreator.deleteImpactForOption(impactId, optionId, investmentId, options);
759
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
760
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.deleteImpactForOption']?.[localVarOperationServerIndex]?.url;
761
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
762
+ },
763
+ /**
764
+ * Delete an existing investment by its ID. Associated options are also deleted via cascade.
765
+ * @summary Delete an investment
766
+ * @param {string} investmentId UUID of the investment
767
+ * @param {*} [options] Override http request option.
768
+ * @throws {RequiredError}
769
+ */
770
+ async deleteInvestment(investmentId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
771
+ const localVarAxiosArgs = await localVarAxiosParamCreator.deleteInvestment(investmentId, options);
772
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
773
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.deleteInvestment']?.[localVarOperationServerIndex]?.url;
774
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
775
+ },
776
+ /**
777
+ * Delete an existing option by its ID. Associated phases and impacts are also deleted via cascade.
778
+ * @summary Delete an option for this investment
779
+ * @param {string} optionId UUID of the option
780
+ * @param {string} investmentId UUID of the investment
781
+ * @param {*} [options] Override http request option.
782
+ * @throws {RequiredError}
783
+ */
784
+ async deleteOptionForInvestment(optionId: string, investmentId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
785
+ const localVarAxiosArgs = await localVarAxiosParamCreator.deleteOptionForInvestment(optionId, investmentId, options);
786
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
787
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.deleteOptionForInvestment']?.[localVarOperationServerIndex]?.url;
788
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
789
+ },
790
+ /**
791
+ * Retrieve a specific impact for the option.
792
+ * @summary Get an impact for this option
793
+ * @param {string} impactId UUID of the impact
794
+ * @param {string} optionId UUID of the option
795
+ * @param {string} investmentId UUID of the investment
796
+ * @param {*} [options] Override http request option.
797
+ * @throws {RequiredError}
798
+ */
799
+ async getImpactForOption(impactId: string, optionId: string, investmentId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ImpactAPIResponse>> {
800
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getImpactForOption(impactId, optionId, investmentId, options);
801
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
802
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.getImpactForOption']?.[localVarOperationServerIndex]?.url;
803
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
804
+ },
805
+ /**
806
+ * Retrieve a paginated list of all impacts for a specific option.
807
+ * @summary List impacts for this option
808
+ * @param {string} optionId UUID of the option
809
+ * @param {string} investmentId UUID of the investment
810
+ * @param {number} [offset] Number of records to skip
811
+ * @param {number} [limit] Max number of records to return
812
+ * @param {*} [options] Override http request option.
813
+ * @throws {RequiredError}
814
+ */
815
+ async getImpactsForOption(optionId: string, investmentId: string, offset?: number, limit?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<ImpactAPIResponse>>> {
816
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getImpactsForOption(optionId, investmentId, offset, limit, options);
817
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
818
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.getImpactsForOption']?.[localVarOperationServerIndex]?.url;
819
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
820
+ },
821
+ /**
822
+ * Retrieve a single investment by its ID.
823
+ * @summary Get an investment by ID
824
+ * @param {string} investmentId UUID of the investment
825
+ * @param {*} [options] Override http request option.
826
+ * @throws {RequiredError}
827
+ */
828
+ async getInvestmentById(investmentId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<InvestmentResponse>> {
829
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getInvestmentById(investmentId, options);
830
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
831
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.getInvestmentById']?.[localVarOperationServerIndex]?.url;
832
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
833
+ },
834
+ /**
835
+ * Retrieve a paginated list of all investments.
836
+ * @summary List investments
837
+ * @param {number} [offset] Number of records to skip
838
+ * @param {number} [limit] Max number of records to return
839
+ * @param {*} [options] Override http request option.
840
+ * @throws {RequiredError}
841
+ */
842
+ async getInvestments(offset?: number, limit?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<InvestmentResponse>>> {
843
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getInvestments(offset, limit, options);
844
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
845
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.getInvestments']?.[localVarOperationServerIndex]?.url;
846
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
847
+ },
848
+ /**
849
+ * Retrieve a specific option for the investment.
850
+ * @summary Get an option for this investment
851
+ * @param {string} optionId UUID of the option
852
+ * @param {string} investmentId UUID of the investment
853
+ * @param {*} [options] Override http request option.
854
+ * @throws {RequiredError}
855
+ */
856
+ async getOptionForInvestment(optionId: string, investmentId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<OptionResponse>> {
857
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getOptionForInvestment(optionId, investmentId, options);
858
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
859
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.getOptionForInvestment']?.[localVarOperationServerIndex]?.url;
860
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
861
+ },
862
+ /**
863
+ * Retrieve a paginated list of all options for a specific investment.
864
+ * @summary List options for this investment
865
+ * @param {string} investmentId UUID of the investment
866
+ * @param {number} [offset] Number of records to skip
867
+ * @param {number} [limit] Max number of records to return
868
+ * @param {*} [options] Override http request option.
869
+ * @throws {RequiredError}
870
+ */
871
+ async getOptionsForInvestment(investmentId: string, offset?: number, limit?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<OptionResponse>>> {
872
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getOptionsForInvestment(investmentId, offset, limit, options);
873
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
874
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.getOptionsForInvestment']?.[localVarOperationServerIndex]?.url;
875
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
876
+ },
877
+ /**
878
+ * Update one or more fields of an existing impact. Only the fields included in the request body will be modified; omitted fields remain unchanged.
879
+ * @summary Partially update an impact for this option
880
+ * @param {string} impactId UUID of the impact
881
+ * @param {string} optionId UUID of the option
882
+ * @param {string} investmentId UUID of the investment
883
+ * @param {ImpactUpdate} impactUpdate
884
+ * @param {*} [options] Override http request option.
885
+ * @throws {RequiredError}
886
+ */
887
+ async patchImpactForOption(impactId: string, optionId: string, investmentId: string, impactUpdate: ImpactUpdate, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ImpactAPIResponse>> {
888
+ const localVarAxiosArgs = await localVarAxiosParamCreator.patchImpactForOption(impactId, optionId, investmentId, impactUpdate, options);
889
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
890
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.patchImpactForOption']?.[localVarOperationServerIndex]?.url;
891
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
892
+ },
893
+ /**
894
+ * Update one or more fields of an existing investment. Only the fields included in the request body will be modified; omitted fields remain unchanged.
895
+ * @summary Partially update an investment
896
+ * @param {string} investmentId UUID of the investment
897
+ * @param {InvestmentUpdate} investmentUpdate
898
+ * @param {*} [options] Override http request option.
899
+ * @throws {RequiredError}
900
+ */
901
+ async patchInvestment(investmentId: string, investmentUpdate: InvestmentUpdate, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<InvestmentResponse>> {
902
+ const localVarAxiosArgs = await localVarAxiosParamCreator.patchInvestment(investmentId, investmentUpdate, options);
903
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
904
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.patchInvestment']?.[localVarOperationServerIndex]?.url;
905
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
906
+ },
907
+ /**
908
+ * Update one or more fields of an existing option. Only the fields included in the request body will be modified; omitted fields remain unchanged.
909
+ * @summary Partially update an option for this investment
910
+ * @param {string} optionId UUID of the option
911
+ * @param {string} investmentId UUID of the investment
912
+ * @param {OptionUpdate} optionUpdate
913
+ * @param {*} [options] Override http request option.
914
+ * @throws {RequiredError}
915
+ */
916
+ async patchOptionForInvestment(optionId: string, investmentId: string, optionUpdate: OptionUpdate, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<OptionResponse>> {
917
+ const localVarAxiosArgs = await localVarAxiosParamCreator.patchOptionForInvestment(optionId, investmentId, optionUpdate, options);
918
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
919
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.patchOptionForInvestment']?.[localVarOperationServerIndex]?.url;
920
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
921
+ },
922
+ /**
923
+ * Create a new investment.
924
+ * @summary Create an investment
925
+ * @param {InvestmentCreate} investmentCreate
926
+ * @param {*} [options] Override http request option.
927
+ * @throws {RequiredError}
928
+ */
929
+ async postInvestment(investmentCreate: InvestmentCreate, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<InvestmentResponse>> {
930
+ const localVarAxiosArgs = await localVarAxiosParamCreator.postInvestment(investmentCreate, options);
931
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
932
+ const localVarOperationServerBasePath = operationServerMap['InvestmentApi.postInvestment']?.[localVarOperationServerIndex]?.url;
933
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
934
+ },
935
+ }
936
+ };
937
+
938
+ /**
939
+ * InvestmentApi - factory interface
940
+ */
941
+ export const InvestmentApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
942
+ const localVarFp = InvestmentApiFp(configuration)
943
+ return {
944
+ /**
945
+ * Create a new impact under this option.
946
+ * @summary Create an impact for this option
947
+ * @param {string} optionId UUID of the option
948
+ * @param {string} investmentId UUID of the investment
949
+ * @param {ImpactCreate} impactCreate
950
+ * @param {*} [options] Override http request option.
951
+ * @throws {RequiredError}
952
+ */
953
+ createImpactForOption(optionId: string, investmentId: string, impactCreate: ImpactCreate, options?: RawAxiosRequestConfig): AxiosPromise<ImpactAPIResponse> {
954
+ return localVarFp.createImpactForOption(optionId, investmentId, impactCreate, options).then((request) => request(axios, basePath));
955
+ },
956
+ /**
957
+ * Create a new option under this investment.
958
+ * @summary Create an option for this investment
959
+ * @param {string} investmentId UUID of the investment
960
+ * @param {OptionCreate} optionCreate
961
+ * @param {*} [options] Override http request option.
962
+ * @throws {RequiredError}
963
+ */
964
+ createOptionForInvestment(investmentId: string, optionCreate: OptionCreate, options?: RawAxiosRequestConfig): AxiosPromise<OptionResponse> {
965
+ return localVarFp.createOptionForInvestment(investmentId, optionCreate, options).then((request) => request(axios, basePath));
966
+ },
967
+ /**
968
+ * Delete an existing impact by its ID.
969
+ * @summary Delete an impact for this option
970
+ * @param {string} impactId UUID of the impact
971
+ * @param {string} optionId UUID of the option
972
+ * @param {string} investmentId UUID of the investment
973
+ * @param {*} [options] Override http request option.
974
+ * @throws {RequiredError}
975
+ */
976
+ deleteImpactForOption(impactId: string, optionId: string, investmentId: string, options?: RawAxiosRequestConfig): AxiosPromise<void> {
977
+ return localVarFp.deleteImpactForOption(impactId, optionId, investmentId, options).then((request) => request(axios, basePath));
978
+ },
979
+ /**
980
+ * Delete an existing investment by its ID. Associated options are also deleted via cascade.
981
+ * @summary Delete an investment
982
+ * @param {string} investmentId UUID of the investment
983
+ * @param {*} [options] Override http request option.
984
+ * @throws {RequiredError}
985
+ */
986
+ deleteInvestment(investmentId: string, options?: RawAxiosRequestConfig): AxiosPromise<void> {
987
+ return localVarFp.deleteInvestment(investmentId, options).then((request) => request(axios, basePath));
988
+ },
989
+ /**
990
+ * Delete an existing option by its ID. Associated phases and impacts are also deleted via cascade.
991
+ * @summary Delete an option for this investment
992
+ * @param {string} optionId UUID of the option
993
+ * @param {string} investmentId UUID of the investment
994
+ * @param {*} [options] Override http request option.
995
+ * @throws {RequiredError}
996
+ */
997
+ deleteOptionForInvestment(optionId: string, investmentId: string, options?: RawAxiosRequestConfig): AxiosPromise<void> {
998
+ return localVarFp.deleteOptionForInvestment(optionId, investmentId, options).then((request) => request(axios, basePath));
999
+ },
1000
+ /**
1001
+ * Retrieve a specific impact for the option.
1002
+ * @summary Get an impact for this option
1003
+ * @param {string} impactId UUID of the impact
1004
+ * @param {string} optionId UUID of the option
1005
+ * @param {string} investmentId UUID of the investment
1006
+ * @param {*} [options] Override http request option.
1007
+ * @throws {RequiredError}
1008
+ */
1009
+ getImpactForOption(impactId: string, optionId: string, investmentId: string, options?: RawAxiosRequestConfig): AxiosPromise<ImpactAPIResponse> {
1010
+ return localVarFp.getImpactForOption(impactId, optionId, investmentId, options).then((request) => request(axios, basePath));
1011
+ },
1012
+ /**
1013
+ * Retrieve a paginated list of all impacts for a specific option.
1014
+ * @summary List impacts for this option
1015
+ * @param {string} optionId UUID of the option
1016
+ * @param {string} investmentId UUID of the investment
1017
+ * @param {number} [offset] Number of records to skip
1018
+ * @param {number} [limit] Max number of records to return
1019
+ * @param {*} [options] Override http request option.
1020
+ * @throws {RequiredError}
1021
+ */
1022
+ getImpactsForOption(optionId: string, investmentId: string, offset?: number, limit?: number, options?: RawAxiosRequestConfig): AxiosPromise<Array<ImpactAPIResponse>> {
1023
+ return localVarFp.getImpactsForOption(optionId, investmentId, offset, limit, options).then((request) => request(axios, basePath));
1024
+ },
1025
+ /**
1026
+ * Retrieve a single investment by its ID.
1027
+ * @summary Get an investment by ID
1028
+ * @param {string} investmentId UUID of the investment
1029
+ * @param {*} [options] Override http request option.
1030
+ * @throws {RequiredError}
1031
+ */
1032
+ getInvestmentById(investmentId: string, options?: RawAxiosRequestConfig): AxiosPromise<InvestmentResponse> {
1033
+ return localVarFp.getInvestmentById(investmentId, options).then((request) => request(axios, basePath));
1034
+ },
1035
+ /**
1036
+ * Retrieve a paginated list of all investments.
1037
+ * @summary List investments
1038
+ * @param {number} [offset] Number of records to skip
1039
+ * @param {number} [limit] Max number of records to return
1040
+ * @param {*} [options] Override http request option.
1041
+ * @throws {RequiredError}
1042
+ */
1043
+ getInvestments(offset?: number, limit?: number, options?: RawAxiosRequestConfig): AxiosPromise<Array<InvestmentResponse>> {
1044
+ return localVarFp.getInvestments(offset, limit, options).then((request) => request(axios, basePath));
1045
+ },
1046
+ /**
1047
+ * Retrieve a specific option for the investment.
1048
+ * @summary Get an option for this investment
1049
+ * @param {string} optionId UUID of the option
1050
+ * @param {string} investmentId UUID of the investment
1051
+ * @param {*} [options] Override http request option.
1052
+ * @throws {RequiredError}
1053
+ */
1054
+ getOptionForInvestment(optionId: string, investmentId: string, options?: RawAxiosRequestConfig): AxiosPromise<OptionResponse> {
1055
+ return localVarFp.getOptionForInvestment(optionId, investmentId, options).then((request) => request(axios, basePath));
1056
+ },
1057
+ /**
1058
+ * Retrieve a paginated list of all options for a specific investment.
1059
+ * @summary List options for this investment
1060
+ * @param {string} investmentId UUID of the investment
1061
+ * @param {number} [offset] Number of records to skip
1062
+ * @param {number} [limit] Max number of records to return
1063
+ * @param {*} [options] Override http request option.
1064
+ * @throws {RequiredError}
1065
+ */
1066
+ getOptionsForInvestment(investmentId: string, offset?: number, limit?: number, options?: RawAxiosRequestConfig): AxiosPromise<Array<OptionResponse>> {
1067
+ return localVarFp.getOptionsForInvestment(investmentId, offset, limit, options).then((request) => request(axios, basePath));
1068
+ },
1069
+ /**
1070
+ * Update one or more fields of an existing impact. Only the fields included in the request body will be modified; omitted fields remain unchanged.
1071
+ * @summary Partially update an impact for this option
1072
+ * @param {string} impactId UUID of the impact
1073
+ * @param {string} optionId UUID of the option
1074
+ * @param {string} investmentId UUID of the investment
1075
+ * @param {ImpactUpdate} impactUpdate
1076
+ * @param {*} [options] Override http request option.
1077
+ * @throws {RequiredError}
1078
+ */
1079
+ patchImpactForOption(impactId: string, optionId: string, investmentId: string, impactUpdate: ImpactUpdate, options?: RawAxiosRequestConfig): AxiosPromise<ImpactAPIResponse> {
1080
+ return localVarFp.patchImpactForOption(impactId, optionId, investmentId, impactUpdate, options).then((request) => request(axios, basePath));
1081
+ },
1082
+ /**
1083
+ * Update one or more fields of an existing investment. Only the fields included in the request body will be modified; omitted fields remain unchanged.
1084
+ * @summary Partially update an investment
1085
+ * @param {string} investmentId UUID of the investment
1086
+ * @param {InvestmentUpdate} investmentUpdate
1087
+ * @param {*} [options] Override http request option.
1088
+ * @throws {RequiredError}
1089
+ */
1090
+ patchInvestment(investmentId: string, investmentUpdate: InvestmentUpdate, options?: RawAxiosRequestConfig): AxiosPromise<InvestmentResponse> {
1091
+ return localVarFp.patchInvestment(investmentId, investmentUpdate, options).then((request) => request(axios, basePath));
1092
+ },
1093
+ /**
1094
+ * Update one or more fields of an existing option. Only the fields included in the request body will be modified; omitted fields remain unchanged.
1095
+ * @summary Partially update an option for this investment
1096
+ * @param {string} optionId UUID of the option
1097
+ * @param {string} investmentId UUID of the investment
1098
+ * @param {OptionUpdate} optionUpdate
1099
+ * @param {*} [options] Override http request option.
1100
+ * @throws {RequiredError}
1101
+ */
1102
+ patchOptionForInvestment(optionId: string, investmentId: string, optionUpdate: OptionUpdate, options?: RawAxiosRequestConfig): AxiosPromise<OptionResponse> {
1103
+ return localVarFp.patchOptionForInvestment(optionId, investmentId, optionUpdate, options).then((request) => request(axios, basePath));
1104
+ },
1105
+ /**
1106
+ * Create a new investment.
1107
+ * @summary Create an investment
1108
+ * @param {InvestmentCreate} investmentCreate
1109
+ * @param {*} [options] Override http request option.
1110
+ * @throws {RequiredError}
1111
+ */
1112
+ postInvestment(investmentCreate: InvestmentCreate, options?: RawAxiosRequestConfig): AxiosPromise<InvestmentResponse> {
1113
+ return localVarFp.postInvestment(investmentCreate, options).then((request) => request(axios, basePath));
1114
+ },
1115
+ };
1116
+ };
1117
+
1118
+ /**
1119
+ * InvestmentApi - object-oriented interface
1120
+ */
1121
+ export class InvestmentApi extends BaseAPI {
1122
+ /**
1123
+ * Create a new impact under this option.
1124
+ * @summary Create an impact for this option
1125
+ * @param {string} optionId UUID of the option
1126
+ * @param {string} investmentId UUID of the investment
1127
+ * @param {ImpactCreate} impactCreate
1128
+ * @param {*} [options] Override http request option.
1129
+ * @throws {RequiredError}
1130
+ */
1131
+ public createImpactForOption(optionId: string, investmentId: string, impactCreate: ImpactCreate, options?: RawAxiosRequestConfig) {
1132
+ return InvestmentApiFp(this.configuration).createImpactForOption(optionId, investmentId, impactCreate, options).then((request) => request(this.axios, this.basePath));
1133
+ }
1134
+
1135
+ /**
1136
+ * Create a new option under this investment.
1137
+ * @summary Create an option for this investment
1138
+ * @param {string} investmentId UUID of the investment
1139
+ * @param {OptionCreate} optionCreate
1140
+ * @param {*} [options] Override http request option.
1141
+ * @throws {RequiredError}
1142
+ */
1143
+ public createOptionForInvestment(investmentId: string, optionCreate: OptionCreate, options?: RawAxiosRequestConfig) {
1144
+ return InvestmentApiFp(this.configuration).createOptionForInvestment(investmentId, optionCreate, options).then((request) => request(this.axios, this.basePath));
1145
+ }
1146
+
1147
+ /**
1148
+ * Delete an existing impact by its ID.
1149
+ * @summary Delete an impact for this option
1150
+ * @param {string} impactId UUID of the impact
1151
+ * @param {string} optionId UUID of the option
1152
+ * @param {string} investmentId UUID of the investment
1153
+ * @param {*} [options] Override http request option.
1154
+ * @throws {RequiredError}
1155
+ */
1156
+ public deleteImpactForOption(impactId: string, optionId: string, investmentId: string, options?: RawAxiosRequestConfig) {
1157
+ return InvestmentApiFp(this.configuration).deleteImpactForOption(impactId, optionId, investmentId, options).then((request) => request(this.axios, this.basePath));
1158
+ }
1159
+
1160
+ /**
1161
+ * Delete an existing investment by its ID. Associated options are also deleted via cascade.
1162
+ * @summary Delete an investment
1163
+ * @param {string} investmentId UUID of the investment
1164
+ * @param {*} [options] Override http request option.
1165
+ * @throws {RequiredError}
1166
+ */
1167
+ public deleteInvestment(investmentId: string, options?: RawAxiosRequestConfig) {
1168
+ return InvestmentApiFp(this.configuration).deleteInvestment(investmentId, options).then((request) => request(this.axios, this.basePath));
1169
+ }
1170
+
1171
+ /**
1172
+ * Delete an existing option by its ID. Associated phases and impacts are also deleted via cascade.
1173
+ * @summary Delete an option for this investment
1174
+ * @param {string} optionId UUID of the option
1175
+ * @param {string} investmentId UUID of the investment
1176
+ * @param {*} [options] Override http request option.
1177
+ * @throws {RequiredError}
1178
+ */
1179
+ public deleteOptionForInvestment(optionId: string, investmentId: string, options?: RawAxiosRequestConfig) {
1180
+ return InvestmentApiFp(this.configuration).deleteOptionForInvestment(optionId, investmentId, options).then((request) => request(this.axios, this.basePath));
1181
+ }
1182
+
1183
+ /**
1184
+ * Retrieve a specific impact for the option.
1185
+ * @summary Get an impact for this option
1186
+ * @param {string} impactId UUID of the impact
1187
+ * @param {string} optionId UUID of the option
1188
+ * @param {string} investmentId UUID of the investment
1189
+ * @param {*} [options] Override http request option.
1190
+ * @throws {RequiredError}
1191
+ */
1192
+ public getImpactForOption(impactId: string, optionId: string, investmentId: string, options?: RawAxiosRequestConfig) {
1193
+ return InvestmentApiFp(this.configuration).getImpactForOption(impactId, optionId, investmentId, options).then((request) => request(this.axios, this.basePath));
1194
+ }
1195
+
1196
+ /**
1197
+ * Retrieve a paginated list of all impacts for a specific option.
1198
+ * @summary List impacts for this option
1199
+ * @param {string} optionId UUID of the option
1200
+ * @param {string} investmentId UUID of the investment
1201
+ * @param {number} [offset] Number of records to skip
1202
+ * @param {number} [limit] Max number of records to return
1203
+ * @param {*} [options] Override http request option.
1204
+ * @throws {RequiredError}
1205
+ */
1206
+ public getImpactsForOption(optionId: string, investmentId: string, offset?: number, limit?: number, options?: RawAxiosRequestConfig) {
1207
+ return InvestmentApiFp(this.configuration).getImpactsForOption(optionId, investmentId, offset, limit, options).then((request) => request(this.axios, this.basePath));
1208
+ }
1209
+
1210
+ /**
1211
+ * Retrieve a single investment by its ID.
1212
+ * @summary Get an investment by ID
1213
+ * @param {string} investmentId UUID of the investment
1214
+ * @param {*} [options] Override http request option.
1215
+ * @throws {RequiredError}
1216
+ */
1217
+ public getInvestmentById(investmentId: string, options?: RawAxiosRequestConfig) {
1218
+ return InvestmentApiFp(this.configuration).getInvestmentById(investmentId, options).then((request) => request(this.axios, this.basePath));
1219
+ }
1220
+
1221
+ /**
1222
+ * Retrieve a paginated list of all investments.
1223
+ * @summary List investments
1224
+ * @param {number} [offset] Number of records to skip
1225
+ * @param {number} [limit] Max number of records to return
1226
+ * @param {*} [options] Override http request option.
1227
+ * @throws {RequiredError}
1228
+ */
1229
+ public getInvestments(offset?: number, limit?: number, options?: RawAxiosRequestConfig) {
1230
+ return InvestmentApiFp(this.configuration).getInvestments(offset, limit, options).then((request) => request(this.axios, this.basePath));
1231
+ }
1232
+
1233
+ /**
1234
+ * Retrieve a specific option for the investment.
1235
+ * @summary Get an option for this investment
1236
+ * @param {string} optionId UUID of the option
1237
+ * @param {string} investmentId UUID of the investment
1238
+ * @param {*} [options] Override http request option.
1239
+ * @throws {RequiredError}
1240
+ */
1241
+ public getOptionForInvestment(optionId: string, investmentId: string, options?: RawAxiosRequestConfig) {
1242
+ return InvestmentApiFp(this.configuration).getOptionForInvestment(optionId, investmentId, options).then((request) => request(this.axios, this.basePath));
1243
+ }
1244
+
1245
+ /**
1246
+ * Retrieve a paginated list of all options for a specific investment.
1247
+ * @summary List options for this investment
1248
+ * @param {string} investmentId UUID of the investment
1249
+ * @param {number} [offset] Number of records to skip
1250
+ * @param {number} [limit] Max number of records to return
1251
+ * @param {*} [options] Override http request option.
1252
+ * @throws {RequiredError}
1253
+ */
1254
+ public getOptionsForInvestment(investmentId: string, offset?: number, limit?: number, options?: RawAxiosRequestConfig) {
1255
+ return InvestmentApiFp(this.configuration).getOptionsForInvestment(investmentId, offset, limit, options).then((request) => request(this.axios, this.basePath));
1256
+ }
1257
+
1258
+ /**
1259
+ * Update one or more fields of an existing impact. Only the fields included in the request body will be modified; omitted fields remain unchanged.
1260
+ * @summary Partially update an impact for this option
1261
+ * @param {string} impactId UUID of the impact
1262
+ * @param {string} optionId UUID of the option
1263
+ * @param {string} investmentId UUID of the investment
1264
+ * @param {ImpactUpdate} impactUpdate
1265
+ * @param {*} [options] Override http request option.
1266
+ * @throws {RequiredError}
1267
+ */
1268
+ public patchImpactForOption(impactId: string, optionId: string, investmentId: string, impactUpdate: ImpactUpdate, options?: RawAxiosRequestConfig) {
1269
+ return InvestmentApiFp(this.configuration).patchImpactForOption(impactId, optionId, investmentId, impactUpdate, options).then((request) => request(this.axios, this.basePath));
1270
+ }
1271
+
1272
+ /**
1273
+ * Update one or more fields of an existing investment. Only the fields included in the request body will be modified; omitted fields remain unchanged.
1274
+ * @summary Partially update an investment
1275
+ * @param {string} investmentId UUID of the investment
1276
+ * @param {InvestmentUpdate} investmentUpdate
1277
+ * @param {*} [options] Override http request option.
1278
+ * @throws {RequiredError}
1279
+ */
1280
+ public patchInvestment(investmentId: string, investmentUpdate: InvestmentUpdate, options?: RawAxiosRequestConfig) {
1281
+ return InvestmentApiFp(this.configuration).patchInvestment(investmentId, investmentUpdate, options).then((request) => request(this.axios, this.basePath));
1282
+ }
1283
+
1284
+ /**
1285
+ * Update one or more fields of an existing option. Only the fields included in the request body will be modified; omitted fields remain unchanged.
1286
+ * @summary Partially update an option for this investment
1287
+ * @param {string} optionId UUID of the option
1288
+ * @param {string} investmentId UUID of the investment
1289
+ * @param {OptionUpdate} optionUpdate
1290
+ * @param {*} [options] Override http request option.
1291
+ * @throws {RequiredError}
1292
+ */
1293
+ public patchOptionForInvestment(optionId: string, investmentId: string, optionUpdate: OptionUpdate, options?: RawAxiosRequestConfig) {
1294
+ return InvestmentApiFp(this.configuration).patchOptionForInvestment(optionId, investmentId, optionUpdate, options).then((request) => request(this.axios, this.basePath));
1295
+ }
1296
+
1297
+ /**
1298
+ * Create a new investment.
1299
+ * @summary Create an investment
1300
+ * @param {InvestmentCreate} investmentCreate
1301
+ * @param {*} [options] Override http request option.
1302
+ * @throws {RequiredError}
1303
+ */
1304
+ public postInvestment(investmentCreate: InvestmentCreate, options?: RawAxiosRequestConfig) {
1305
+ return InvestmentApiFp(this.configuration).postInvestment(investmentCreate, options).then((request) => request(this.axios, this.basePath));
1306
+ }
1307
+ }
1308
+