@cirrobio/api-client 0.1.30 → 0.2.1

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 (98) hide show
  1. package/.openapi-generator/FILES +22 -0
  2. package/README.md +1 -1
  3. package/dist/apis/FileApi.d.ts +14 -0
  4. package/dist/apis/FileApi.js +60 -0
  5. package/dist/apis/GovernanceApi.d.ts +127 -1
  6. package/dist/apis/GovernanceApi.js +555 -1
  7. package/dist/apis/SharingApi.d.ts +131 -0
  8. package/dist/apis/SharingApi.js +545 -0
  9. package/dist/apis/ToolsApi.d.ts +31 -0
  10. package/dist/apis/ToolsApi.js +137 -0
  11. package/dist/apis/index.d.ts +2 -0
  12. package/dist/apis/index.js +2 -0
  13. package/dist/models/AccessType.d.ts +3 -1
  14. package/dist/models/AccessType.js +2 -0
  15. package/dist/models/ClassificationInput.d.ts +6 -0
  16. package/dist/models/ClassificationInput.js +3 -0
  17. package/dist/models/ContactInput.d.ts +55 -0
  18. package/dist/models/ContactInput.js +62 -0
  19. package/dist/models/DatasetCondition.d.ts +38 -0
  20. package/dist/models/DatasetCondition.js +54 -0
  21. package/dist/models/DatasetConditionField.d.ts +24 -0
  22. package/dist/models/DatasetConditionField.js +39 -0
  23. package/dist/models/GovernanceClassification.d.ts +6 -0
  24. package/dist/models/GovernanceClassification.js +3 -0
  25. package/dist/models/GovernanceContact.d.ts +61 -0
  26. package/dist/models/GovernanceContact.js +65 -0
  27. package/dist/models/GovernanceExpiry.d.ts +44 -0
  28. package/dist/models/GovernanceExpiry.js +55 -0
  29. package/dist/models/GovernanceExpiryType.d.ts +25 -0
  30. package/dist/models/GovernanceExpiryType.js +40 -0
  31. package/dist/models/GovernanceFile.d.ts +50 -0
  32. package/dist/models/GovernanceFile.js +57 -0
  33. package/dist/models/GovernanceFileType.d.ts +23 -0
  34. package/dist/models/GovernanceFileType.js +38 -0
  35. package/dist/models/GovernanceRequirement.d.ts +108 -0
  36. package/dist/models/GovernanceRequirement.js +81 -0
  37. package/dist/models/GovernanceRequirementFile.d.ts +50 -0
  38. package/dist/models/GovernanceRequirementFile.js +57 -0
  39. package/dist/models/GovernanceScope.d.ts +23 -0
  40. package/dist/models/GovernanceScope.js +38 -0
  41. package/dist/models/GovernanceTrainingVerification.d.ts +23 -0
  42. package/dist/models/GovernanceTrainingVerification.js +38 -0
  43. package/dist/models/GovernanceType.d.ts +26 -0
  44. package/dist/models/GovernanceType.js +41 -0
  45. package/dist/models/MoveDatasetInput.d.ts +43 -0
  46. package/dist/models/MoveDatasetInput.js +56 -0
  47. package/dist/models/MoveDatasetResponse.d.ts +43 -0
  48. package/dist/models/MoveDatasetResponse.js +56 -0
  49. package/dist/models/NamedItem.d.ts +37 -0
  50. package/dist/models/NamedItem.js +53 -0
  51. package/dist/models/ProjectSettings.d.ts +6 -0
  52. package/dist/models/ProjectSettings.js +2 -0
  53. package/dist/models/RequirementInput.d.ts +96 -0
  54. package/dist/models/RequirementInput.js +81 -0
  55. package/dist/models/Share.d.ts +86 -0
  56. package/dist/models/Share.js +78 -0
  57. package/dist/models/ShareDetail.d.ts +106 -0
  58. package/dist/models/ShareDetail.js +89 -0
  59. package/dist/models/ShareInput.d.ts +62 -0
  60. package/dist/models/ShareInput.js +65 -0
  61. package/dist/models/ShareType.d.ts +24 -0
  62. package/dist/models/ShareType.js +39 -0
  63. package/dist/models/index.d.ts +20 -0
  64. package/dist/models/index.js +20 -0
  65. package/dist/runtime.js +1 -1
  66. package/package.json +1 -1
  67. package/src/apis/FileApi.ts +52 -0
  68. package/src/apis/GovernanceApi.ts +457 -1
  69. package/src/apis/SharingApi.ts +442 -0
  70. package/src/apis/ToolsApi.ts +80 -0
  71. package/src/apis/index.ts +2 -0
  72. package/src/models/AccessType.ts +3 -1
  73. package/src/models/ClassificationInput.ts +9 -0
  74. package/src/models/ContactInput.ts +102 -0
  75. package/src/models/DatasetCondition.ts +82 -0
  76. package/src/models/DatasetConditionField.ts +38 -0
  77. package/src/models/GovernanceClassification.ts +9 -0
  78. package/src/models/GovernanceContact.ts +111 -0
  79. package/src/models/GovernanceExpiry.ts +88 -0
  80. package/src/models/GovernanceExpiryType.ts +39 -0
  81. package/src/models/GovernanceFile.ts +96 -0
  82. package/src/models/GovernanceFileType.ts +37 -0
  83. package/src/models/GovernanceRequirement.ts +194 -0
  84. package/src/models/GovernanceRequirementFile.ts +96 -0
  85. package/src/models/GovernanceScope.ts +37 -0
  86. package/src/models/GovernanceTrainingVerification.ts +37 -0
  87. package/src/models/GovernanceType.ts +40 -0
  88. package/src/models/MoveDatasetInput.ts +84 -0
  89. package/src/models/MoveDatasetResponse.ts +84 -0
  90. package/src/models/NamedItem.ts +75 -0
  91. package/src/models/ProjectSettings.ts +8 -0
  92. package/src/models/RequirementInput.ts +182 -0
  93. package/src/models/Share.ts +154 -0
  94. package/src/models/ShareDetail.ts +193 -0
  95. package/src/models/ShareInput.ts +116 -0
  96. package/src/models/ShareType.ts +38 -0
  97. package/src/models/index.ts +20 -0
  98. package/src/runtime.ts +1 -1
@@ -0,0 +1,442 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Cirro Data
5
+ * Cirro Data Platform service API
6
+ *
7
+ * The version of the OpenAPI document: latest
8
+ * Contact: support@cirro.bio
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 * as runtime from '../runtime';
17
+ import type {
18
+ CreateResponse,
19
+ PaginatedResponseDatasetListDto,
20
+ Share,
21
+ ShareDetail,
22
+ ShareInput,
23
+ } from '../models/index';
24
+ import {
25
+ CreateResponseFromJSON,
26
+ CreateResponseToJSON,
27
+ PaginatedResponseDatasetListDtoFromJSON,
28
+ PaginatedResponseDatasetListDtoToJSON,
29
+ ShareFromJSON,
30
+ ShareToJSON,
31
+ ShareDetailFromJSON,
32
+ ShareDetailToJSON,
33
+ ShareInputFromJSON,
34
+ ShareInputToJSON,
35
+ } from '../models/index';
36
+
37
+ export interface CreateShareRequest {
38
+ projectId: string;
39
+ shareInput: ShareInput;
40
+ }
41
+
42
+ export interface DeleteShareRequest {
43
+ projectId: string;
44
+ shareId: string;
45
+ }
46
+
47
+ export interface GetDiscoverableSharesRequest {
48
+ projectId: string;
49
+ }
50
+
51
+ export interface GetShareRequest {
52
+ projectId: string;
53
+ shareId: string;
54
+ }
55
+
56
+ export interface GetSharedDatasetsRequest {
57
+ projectId: string;
58
+ shareId: string;
59
+ limit?: number;
60
+ nextToken?: string;
61
+ }
62
+
63
+ export interface GetSharesRequest {
64
+ projectId: string;
65
+ }
66
+
67
+ export interface SubscribeShareRequest {
68
+ projectId: string;
69
+ shareId: string;
70
+ }
71
+
72
+ export interface UpdateShareRequest {
73
+ projectId: string;
74
+ shareId: string;
75
+ shareInput: ShareInput;
76
+ }
77
+
78
+ /**
79
+ *
80
+ */
81
+ export class SharingApi extends runtime.BaseAPI {
82
+
83
+ /**
84
+ * Create a new share to publish to other projects
85
+ * Create share
86
+ */
87
+ async createShareRaw(requestParameters: CreateShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CreateResponse>> {
88
+ if (requestParameters.projectId === null || requestParameters.projectId === undefined) {
89
+ throw new runtime.RequiredError('projectId','Required parameter requestParameters.projectId was null or undefined when calling createShare.');
90
+ }
91
+
92
+ if (requestParameters.shareInput === null || requestParameters.shareInput === undefined) {
93
+ throw new runtime.RequiredError('shareInput','Required parameter requestParameters.shareInput was null or undefined when calling createShare.');
94
+ }
95
+
96
+ const queryParameters: any = {};
97
+
98
+ const headerParameters: runtime.HTTPHeaders = {};
99
+
100
+ headerParameters['Content-Type'] = 'application/json';
101
+
102
+ if (this.configuration && this.configuration.accessToken) {
103
+ const token = this.configuration.accessToken;
104
+ const tokenString = await token("accessToken", []);
105
+
106
+ if (tokenString) {
107
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
108
+ }
109
+ }
110
+ const response = await this.request({
111
+ path: `/projects/{projectId}/shares`.replace(`{${"projectId"}}`, encodeURIComponent(String(requestParameters.projectId))),
112
+ method: 'POST',
113
+ headers: headerParameters,
114
+ query: queryParameters,
115
+ body: ShareInputToJSON(requestParameters.shareInput),
116
+ }, initOverrides);
117
+
118
+ return new runtime.JSONApiResponse(response, (jsonValue) => CreateResponseFromJSON(jsonValue));
119
+ }
120
+
121
+ /**
122
+ * Create a new share to publish to other projects
123
+ * Create share
124
+ */
125
+ async createShare(requestParameters: CreateShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CreateResponse> {
126
+ const response = await this.createShareRaw(requestParameters, initOverrides);
127
+ return await response.value();
128
+ }
129
+
130
+ /**
131
+ * Delete a share that you\'ve published
132
+ * Delete share
133
+ */
134
+ async deleteShareRaw(requestParameters: DeleteShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
135
+ if (requestParameters.projectId === null || requestParameters.projectId === undefined) {
136
+ throw new runtime.RequiredError('projectId','Required parameter requestParameters.projectId was null or undefined when calling deleteShare.');
137
+ }
138
+
139
+ if (requestParameters.shareId === null || requestParameters.shareId === undefined) {
140
+ throw new runtime.RequiredError('shareId','Required parameter requestParameters.shareId was null or undefined when calling deleteShare.');
141
+ }
142
+
143
+ const queryParameters: any = {};
144
+
145
+ const headerParameters: runtime.HTTPHeaders = {};
146
+
147
+ if (this.configuration && this.configuration.accessToken) {
148
+ const token = this.configuration.accessToken;
149
+ const tokenString = await token("accessToken", []);
150
+
151
+ if (tokenString) {
152
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
153
+ }
154
+ }
155
+ const response = await this.request({
156
+ path: `/projects/{projectId}/shares/{shareId}`.replace(`{${"projectId"}}`, encodeURIComponent(String(requestParameters.projectId))).replace(`{${"shareId"}}`, encodeURIComponent(String(requestParameters.shareId))),
157
+ method: 'DELETE',
158
+ headers: headerParameters,
159
+ query: queryParameters,
160
+ }, initOverrides);
161
+
162
+ return new runtime.VoidApiResponse(response);
163
+ }
164
+
165
+ /**
166
+ * Delete a share that you\'ve published
167
+ * Delete share
168
+ */
169
+ async deleteShare(requestParameters: DeleteShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
170
+ await this.deleteShareRaw(requestParameters, initOverrides);
171
+ }
172
+
173
+ /**
174
+ * Get shares that the project can request access to
175
+ * Get discoverable shares
176
+ */
177
+ async getDiscoverableSharesRaw(requestParameters: GetDiscoverableSharesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<Share>>> {
178
+ if (requestParameters.projectId === null || requestParameters.projectId === undefined) {
179
+ throw new runtime.RequiredError('projectId','Required parameter requestParameters.projectId was null or undefined when calling getDiscoverableShares.');
180
+ }
181
+
182
+ const queryParameters: any = {};
183
+
184
+ const headerParameters: runtime.HTTPHeaders = {};
185
+
186
+ if (this.configuration && this.configuration.accessToken) {
187
+ const token = this.configuration.accessToken;
188
+ const tokenString = await token("accessToken", []);
189
+
190
+ if (tokenString) {
191
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
192
+ }
193
+ }
194
+ const response = await this.request({
195
+ path: `/projects/{projectId}/shares/discover`.replace(`{${"projectId"}}`, encodeURIComponent(String(requestParameters.projectId))),
196
+ method: 'GET',
197
+ headers: headerParameters,
198
+ query: queryParameters,
199
+ }, initOverrides);
200
+
201
+ return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ShareFromJSON));
202
+ }
203
+
204
+ /**
205
+ * Get shares that the project can request access to
206
+ * Get discoverable shares
207
+ */
208
+ async getDiscoverableShares(requestParameters: GetDiscoverableSharesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<Share>> {
209
+ const response = await this.getDiscoverableSharesRaw(requestParameters, initOverrides);
210
+ return await response.value();
211
+ }
212
+
213
+ /**
214
+ * Get details on a share that you\'ve published or subscribed to
215
+ * Get share
216
+ */
217
+ async getShareRaw(requestParameters: GetShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ShareDetail>> {
218
+ if (requestParameters.projectId === null || requestParameters.projectId === undefined) {
219
+ throw new runtime.RequiredError('projectId','Required parameter requestParameters.projectId was null or undefined when calling getShare.');
220
+ }
221
+
222
+ if (requestParameters.shareId === null || requestParameters.shareId === undefined) {
223
+ throw new runtime.RequiredError('shareId','Required parameter requestParameters.shareId was null or undefined when calling getShare.');
224
+ }
225
+
226
+ const queryParameters: any = {};
227
+
228
+ const headerParameters: runtime.HTTPHeaders = {};
229
+
230
+ if (this.configuration && this.configuration.accessToken) {
231
+ const token = this.configuration.accessToken;
232
+ const tokenString = await token("accessToken", []);
233
+
234
+ if (tokenString) {
235
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
236
+ }
237
+ }
238
+ const response = await this.request({
239
+ path: `/projects/{projectId}/shares/{shareId}`.replace(`{${"projectId"}}`, encodeURIComponent(String(requestParameters.projectId))).replace(`{${"shareId"}}`, encodeURIComponent(String(requestParameters.shareId))),
240
+ method: 'GET',
241
+ headers: headerParameters,
242
+ query: queryParameters,
243
+ }, initOverrides);
244
+
245
+ return new runtime.JSONApiResponse(response, (jsonValue) => ShareDetailFromJSON(jsonValue));
246
+ }
247
+
248
+ /**
249
+ * Get details on a share that you\'ve published or subscribed to
250
+ * Get share
251
+ */
252
+ async getShare(requestParameters: GetShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ShareDetail> {
253
+ const response = await this.getShareRaw(requestParameters, initOverrides);
254
+ return await response.value();
255
+ }
256
+
257
+ /**
258
+ * Get dataset listing for a share
259
+ * Get share datasets
260
+ */
261
+ async getSharedDatasetsRaw(requestParameters: GetSharedDatasetsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PaginatedResponseDatasetListDto>> {
262
+ if (requestParameters.projectId === null || requestParameters.projectId === undefined) {
263
+ throw new runtime.RequiredError('projectId','Required parameter requestParameters.projectId was null or undefined when calling getSharedDatasets.');
264
+ }
265
+
266
+ if (requestParameters.shareId === null || requestParameters.shareId === undefined) {
267
+ throw new runtime.RequiredError('shareId','Required parameter requestParameters.shareId was null or undefined when calling getSharedDatasets.');
268
+ }
269
+
270
+ const queryParameters: any = {};
271
+
272
+ if (requestParameters.limit !== undefined) {
273
+ queryParameters['limit'] = requestParameters.limit;
274
+ }
275
+
276
+ if (requestParameters.nextToken !== undefined) {
277
+ queryParameters['nextToken'] = requestParameters.nextToken;
278
+ }
279
+
280
+ const headerParameters: runtime.HTTPHeaders = {};
281
+
282
+ if (this.configuration && this.configuration.accessToken) {
283
+ const token = this.configuration.accessToken;
284
+ const tokenString = await token("accessToken", []);
285
+
286
+ if (tokenString) {
287
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
288
+ }
289
+ }
290
+ const response = await this.request({
291
+ path: `/projects/{projectId}/shares/{shareId}/datasets`.replace(`{${"projectId"}}`, encodeURIComponent(String(requestParameters.projectId))).replace(`{${"shareId"}}`, encodeURIComponent(String(requestParameters.shareId))),
292
+ method: 'GET',
293
+ headers: headerParameters,
294
+ query: queryParameters,
295
+ }, initOverrides);
296
+
297
+ return new runtime.JSONApiResponse(response, (jsonValue) => PaginatedResponseDatasetListDtoFromJSON(jsonValue));
298
+ }
299
+
300
+ /**
301
+ * Get dataset listing for a share
302
+ * Get share datasets
303
+ */
304
+ async getSharedDatasets(requestParameters: GetSharedDatasetsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PaginatedResponseDatasetListDto> {
305
+ const response = await this.getSharedDatasetsRaw(requestParameters, initOverrides);
306
+ return await response.value();
307
+ }
308
+
309
+ /**
310
+ * Get shares for a project (both published and shared with the project)
311
+ * Get shares
312
+ */
313
+ async getSharesRaw(requestParameters: GetSharesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<Share>>> {
314
+ if (requestParameters.projectId === null || requestParameters.projectId === undefined) {
315
+ throw new runtime.RequiredError('projectId','Required parameter requestParameters.projectId was null or undefined when calling getShares.');
316
+ }
317
+
318
+ const queryParameters: any = {};
319
+
320
+ const headerParameters: runtime.HTTPHeaders = {};
321
+
322
+ if (this.configuration && this.configuration.accessToken) {
323
+ const token = this.configuration.accessToken;
324
+ const tokenString = await token("accessToken", []);
325
+
326
+ if (tokenString) {
327
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
328
+ }
329
+ }
330
+ const response = await this.request({
331
+ path: `/projects/{projectId}/shares`.replace(`{${"projectId"}}`, encodeURIComponent(String(requestParameters.projectId))),
332
+ method: 'GET',
333
+ headers: headerParameters,
334
+ query: queryParameters,
335
+ }, initOverrides);
336
+
337
+ return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ShareFromJSON));
338
+ }
339
+
340
+ /**
341
+ * Get shares for a project (both published and shared with the project)
342
+ * Get shares
343
+ */
344
+ async getShares(requestParameters: GetSharesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<Share>> {
345
+ const response = await this.getSharesRaw(requestParameters, initOverrides);
346
+ return await response.value();
347
+ }
348
+
349
+ /**
350
+ * Subscribe to a share that has been shared with your project
351
+ * Subscribe to share
352
+ */
353
+ async subscribeShareRaw(requestParameters: SubscribeShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
354
+ if (requestParameters.projectId === null || requestParameters.projectId === undefined) {
355
+ throw new runtime.RequiredError('projectId','Required parameter requestParameters.projectId was null or undefined when calling subscribeShare.');
356
+ }
357
+
358
+ if (requestParameters.shareId === null || requestParameters.shareId === undefined) {
359
+ throw new runtime.RequiredError('shareId','Required parameter requestParameters.shareId was null or undefined when calling subscribeShare.');
360
+ }
361
+
362
+ const queryParameters: any = {};
363
+
364
+ const headerParameters: runtime.HTTPHeaders = {};
365
+
366
+ if (this.configuration && this.configuration.accessToken) {
367
+ const token = this.configuration.accessToken;
368
+ const tokenString = await token("accessToken", []);
369
+
370
+ if (tokenString) {
371
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
372
+ }
373
+ }
374
+ const response = await this.request({
375
+ path: `/projects/{projectId}/shares/{shareId}:subscribe`.replace(`{${"projectId"}}`, encodeURIComponent(String(requestParameters.projectId))).replace(`{${"shareId"}}`, encodeURIComponent(String(requestParameters.shareId))),
376
+ method: 'PUT',
377
+ headers: headerParameters,
378
+ query: queryParameters,
379
+ }, initOverrides);
380
+
381
+ return new runtime.VoidApiResponse(response);
382
+ }
383
+
384
+ /**
385
+ * Subscribe to a share that has been shared with your project
386
+ * Subscribe to share
387
+ */
388
+ async subscribeShare(requestParameters: SubscribeShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
389
+ await this.subscribeShareRaw(requestParameters, initOverrides);
390
+ }
391
+
392
+ /**
393
+ * Update a share that you\'ve published
394
+ * Update share
395
+ */
396
+ async updateShareRaw(requestParameters: UpdateShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
397
+ if (requestParameters.projectId === null || requestParameters.projectId === undefined) {
398
+ throw new runtime.RequiredError('projectId','Required parameter requestParameters.projectId was null or undefined when calling updateShare.');
399
+ }
400
+
401
+ if (requestParameters.shareId === null || requestParameters.shareId === undefined) {
402
+ throw new runtime.RequiredError('shareId','Required parameter requestParameters.shareId was null or undefined when calling updateShare.');
403
+ }
404
+
405
+ if (requestParameters.shareInput === null || requestParameters.shareInput === undefined) {
406
+ throw new runtime.RequiredError('shareInput','Required parameter requestParameters.shareInput was null or undefined when calling updateShare.');
407
+ }
408
+
409
+ const queryParameters: any = {};
410
+
411
+ const headerParameters: runtime.HTTPHeaders = {};
412
+
413
+ headerParameters['Content-Type'] = 'application/json';
414
+
415
+ if (this.configuration && this.configuration.accessToken) {
416
+ const token = this.configuration.accessToken;
417
+ const tokenString = await token("accessToken", []);
418
+
419
+ if (tokenString) {
420
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
421
+ }
422
+ }
423
+ const response = await this.request({
424
+ path: `/projects/{projectId}/shares/{shareId}`.replace(`{${"projectId"}}`, encodeURIComponent(String(requestParameters.projectId))).replace(`{${"shareId"}}`, encodeURIComponent(String(requestParameters.shareId))),
425
+ method: 'PUT',
426
+ headers: headerParameters,
427
+ query: queryParameters,
428
+ body: ShareInputToJSON(requestParameters.shareInput),
429
+ }, initOverrides);
430
+
431
+ return new runtime.VoidApiResponse(response);
432
+ }
433
+
434
+ /**
435
+ * Update a share that you\'ve published
436
+ * Update share
437
+ */
438
+ async updateShare(requestParameters: UpdateShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
439
+ await this.updateShareRaw(requestParameters, initOverrides);
440
+ }
441
+
442
+ }
@@ -0,0 +1,80 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Cirro Data
5
+ * Cirro Data Platform service API
6
+ *
7
+ * The version of the OpenAPI document: latest
8
+ * Contact: support@cirro.bio
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 * as runtime from '../runtime';
17
+ import type {
18
+ MoveDatasetInput,
19
+ MoveDatasetResponse,
20
+ } from '../models/index';
21
+ import {
22
+ MoveDatasetInputFromJSON,
23
+ MoveDatasetInputToJSON,
24
+ MoveDatasetResponseFromJSON,
25
+ MoveDatasetResponseToJSON,
26
+ } from '../models/index';
27
+
28
+ export interface MoveDatasetRequest {
29
+ moveDatasetInput: MoveDatasetInput;
30
+ }
31
+
32
+ /**
33
+ *
34
+ */
35
+ export class ToolsApi extends runtime.BaseAPI {
36
+
37
+ /**
38
+ * Moves a dataset to a different project. The underlying S3 data is not transferred and will need to be done manually. It is expected the user will also transfer all datasets in the lineage.
39
+ * Move a dataset to a different project
40
+ */
41
+ async moveDatasetRaw(requestParameters: MoveDatasetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<MoveDatasetResponse>> {
42
+ if (requestParameters.moveDatasetInput === null || requestParameters.moveDatasetInput === undefined) {
43
+ throw new runtime.RequiredError('moveDatasetInput','Required parameter requestParameters.moveDatasetInput was null or undefined when calling moveDataset.');
44
+ }
45
+
46
+ const queryParameters: any = {};
47
+
48
+ const headerParameters: runtime.HTTPHeaders = {};
49
+
50
+ headerParameters['Content-Type'] = 'application/json';
51
+
52
+ if (this.configuration && this.configuration.accessToken) {
53
+ const token = this.configuration.accessToken;
54
+ const tokenString = await token("accessToken", []);
55
+
56
+ if (tokenString) {
57
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
58
+ }
59
+ }
60
+ const response = await this.request({
61
+ path: `/tools/move-dataset`,
62
+ method: 'PUT',
63
+ headers: headerParameters,
64
+ query: queryParameters,
65
+ body: MoveDatasetInputToJSON(requestParameters.moveDatasetInput),
66
+ }, initOverrides);
67
+
68
+ return new runtime.JSONApiResponse(response, (jsonValue) => MoveDatasetResponseFromJSON(jsonValue));
69
+ }
70
+
71
+ /**
72
+ * Moves a dataset to a different project. The underlying S3 data is not transferred and will need to be done manually. It is expected the user will also transfer all datasets in the lineage.
73
+ * Move a dataset to a different project
74
+ */
75
+ async moveDataset(requestParameters: MoveDatasetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<MoveDatasetResponse> {
76
+ const response = await this.moveDatasetRaw(requestParameters, initOverrides);
77
+ return await response.value();
78
+ }
79
+
80
+ }
package/src/apis/index.ts CHANGED
@@ -15,5 +15,7 @@ export * from './ProcessesApi';
15
15
  export * from './ProjectRequestsApi';
16
16
  export * from './ProjectsApi';
17
17
  export * from './ReferencesApi';
18
+ export * from './SharingApi';
18
19
  export * from './SystemApi';
20
+ export * from './ToolsApi';
19
21
  export * from './UsersApi';
@@ -21,7 +21,9 @@ export enum AccessType {
21
21
  DatasetUpload = 'DATASET_UPLOAD',
22
22
  SamplesheetUpload = 'SAMPLESHEET_UPLOAD',
23
23
  ReferenceUpload = 'REFERENCE_UPLOAD',
24
- ProjectDownload = 'PROJECT_DOWNLOAD'
24
+ ProjectDownload = 'PROJECT_DOWNLOAD',
25
+ GovernanceUpload = 'GOVERNANCE_UPLOAD',
26
+ GovernanceDownload = 'GOVERNANCE_DOWNLOAD'
25
27
  }
26
28
 
27
29
 
@@ -31,6 +31,12 @@ export interface ClassificationInput {
31
31
  * @memberof ClassificationInput
32
32
  */
33
33
  description: string;
34
+ /**
35
+ *
36
+ * @type {Array<string>}
37
+ * @memberof ClassificationInput
38
+ */
39
+ requirementIds: Array<string>;
34
40
  }
35
41
 
36
42
  /**
@@ -40,6 +46,7 @@ export function instanceOfClassificationInput(value: object): boolean {
40
46
  let isInstance = true;
41
47
  isInstance = isInstance && "name" in value;
42
48
  isInstance = isInstance && "description" in value;
49
+ isInstance = isInstance && "requirementIds" in value;
43
50
 
44
51
  return isInstance;
45
52
  }
@@ -56,6 +63,7 @@ export function ClassificationInputFromJSONTyped(json: any, ignoreDiscriminator:
56
63
 
57
64
  'name': json['name'],
58
65
  'description': json['description'],
66
+ 'requirementIds': json['requirementIds'],
59
67
  };
60
68
  }
61
69
 
@@ -70,6 +78,7 @@ export function ClassificationInputToJSON(value?: ClassificationInput | null): a
70
78
 
71
79
  'name': value.name,
72
80
  'description': value.description,
81
+ 'requirementIds': value.requirementIds,
73
82
  };
74
83
  }
75
84
 
@@ -0,0 +1,102 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Cirro Data
5
+ * Cirro Data Platform service API
6
+ *
7
+ * The version of the OpenAPI document: latest
8
+ * Contact: support@cirro.bio
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
+ import { exists, mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface ContactInput
20
+ */
21
+ export interface ContactInput {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof ContactInput
26
+ */
27
+ title: string;
28
+ /**
29
+ *
30
+ * @type {string}
31
+ * @memberof ContactInput
32
+ */
33
+ description: string;
34
+ /**
35
+ *
36
+ * @type {string}
37
+ * @memberof ContactInput
38
+ */
39
+ name: string;
40
+ /**
41
+ *
42
+ * @type {string}
43
+ * @memberof ContactInput
44
+ */
45
+ phone: string;
46
+ /**
47
+ *
48
+ * @type {string}
49
+ * @memberof ContactInput
50
+ */
51
+ email: string;
52
+ }
53
+
54
+ /**
55
+ * Check if a given object implements the ContactInput interface.
56
+ */
57
+ export function instanceOfContactInput(value: object): boolean {
58
+ let isInstance = true;
59
+ isInstance = isInstance && "title" in value;
60
+ isInstance = isInstance && "description" in value;
61
+ isInstance = isInstance && "name" in value;
62
+ isInstance = isInstance && "phone" in value;
63
+ isInstance = isInstance && "email" in value;
64
+
65
+ return isInstance;
66
+ }
67
+
68
+ export function ContactInputFromJSON(json: any): ContactInput {
69
+ return ContactInputFromJSONTyped(json, false);
70
+ }
71
+
72
+ export function ContactInputFromJSONTyped(json: any, ignoreDiscriminator: boolean): ContactInput {
73
+ if ((json === undefined) || (json === null)) {
74
+ return json;
75
+ }
76
+ return {
77
+
78
+ 'title': json['title'],
79
+ 'description': json['description'],
80
+ 'name': json['name'],
81
+ 'phone': json['phone'],
82
+ 'email': json['email'],
83
+ };
84
+ }
85
+
86
+ export function ContactInputToJSON(value?: ContactInput | null): any {
87
+ if (value === undefined) {
88
+ return undefined;
89
+ }
90
+ if (value === null) {
91
+ return null;
92
+ }
93
+ return {
94
+
95
+ 'title': value.title,
96
+ 'description': value.description,
97
+ 'name': value.name,
98
+ 'phone': value.phone,
99
+ 'email': value.email,
100
+ };
101
+ }
102
+