@cirrobio/api-client 0.2.0 → 0.2.2

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 (74) hide show
  1. package/.openapi-generator/FILES +11 -0
  2. package/README.md +1 -1
  3. package/dist/apis/DatasetsApi.d.ts +6 -6
  4. package/dist/apis/DatasetsApi.js +6 -6
  5. package/dist/apis/FileApi.d.ts +14 -0
  6. package/dist/apis/FileApi.js +60 -0
  7. package/dist/apis/GovernanceApi.d.ts +127 -1
  8. package/dist/apis/GovernanceApi.js +555 -1
  9. package/dist/apis/SharingApi.d.ts +19 -3
  10. package/dist/apis/SharingApi.js +63 -1
  11. package/dist/models/AccessType.d.ts +3 -1
  12. package/dist/models/AccessType.js +2 -0
  13. package/dist/models/ClassificationInput.d.ts +6 -0
  14. package/dist/models/ClassificationInput.js +3 -0
  15. package/dist/models/ContactInput.d.ts +55 -0
  16. package/dist/models/ContactInput.js +62 -0
  17. package/dist/models/DatasetDetail.d.ts +13 -0
  18. package/dist/models/DatasetDetail.js +7 -0
  19. package/dist/models/GovernanceClassification.d.ts +6 -0
  20. package/dist/models/GovernanceClassification.js +3 -0
  21. package/dist/models/GovernanceContact.d.ts +79 -0
  22. package/dist/models/GovernanceContact.js +74 -0
  23. package/dist/models/GovernanceExpiry.d.ts +44 -0
  24. package/dist/models/GovernanceExpiry.js +55 -0
  25. package/dist/models/GovernanceExpiryType.d.ts +25 -0
  26. package/dist/models/GovernanceExpiryType.js +40 -0
  27. package/dist/models/GovernanceFile.d.ts +50 -0
  28. package/dist/models/GovernanceFile.js +57 -0
  29. package/dist/models/GovernanceFileType.d.ts +23 -0
  30. package/dist/models/GovernanceFileType.js +38 -0
  31. package/dist/models/GovernanceRequirement.d.ts +132 -0
  32. package/dist/models/GovernanceRequirement.js +98 -0
  33. package/dist/models/GovernanceRequirementFile.d.ts +50 -0
  34. package/dist/models/GovernanceRequirementFile.js +57 -0
  35. package/dist/models/GovernanceScope.d.ts +23 -0
  36. package/dist/models/GovernanceScope.js +38 -0
  37. package/dist/models/GovernanceTrainingVerification.d.ts +23 -0
  38. package/dist/models/GovernanceTrainingVerification.js +38 -0
  39. package/dist/models/GovernanceType.d.ts +26 -0
  40. package/dist/models/GovernanceType.js +41 -0
  41. package/dist/models/RequirementInput.d.ts +102 -0
  42. package/dist/models/RequirementInput.js +83 -0
  43. package/dist/models/Share.d.ts +7 -0
  44. package/dist/models/Share.js +4 -0
  45. package/dist/models/ShareDetail.d.ts +1 -1
  46. package/dist/models/ShareDetail.js +3 -3
  47. package/dist/models/index.d.ts +11 -0
  48. package/dist/models/index.js +11 -0
  49. package/dist/runtime.js +1 -1
  50. package/package.json +1 -1
  51. package/src/apis/DatasetsApi.ts +6 -6
  52. package/src/apis/FileApi.ts +52 -0
  53. package/src/apis/GovernanceApi.ts +457 -1
  54. package/src/apis/SharingApi.ts +64 -6
  55. package/src/models/AccessType.ts +3 -1
  56. package/src/models/ClassificationInput.ts +9 -0
  57. package/src/models/ContactInput.ts +102 -0
  58. package/src/models/DatasetDetail.ts +23 -0
  59. package/src/models/GovernanceClassification.ts +9 -0
  60. package/src/models/GovernanceContact.ts +138 -0
  61. package/src/models/GovernanceExpiry.ts +88 -0
  62. package/src/models/GovernanceExpiryType.ts +39 -0
  63. package/src/models/GovernanceFile.ts +96 -0
  64. package/src/models/GovernanceFileType.ts +37 -0
  65. package/src/models/GovernanceRequirement.ts +235 -0
  66. package/src/models/GovernanceRequirementFile.ts +96 -0
  67. package/src/models/GovernanceScope.ts +37 -0
  68. package/src/models/GovernanceTrainingVerification.ts +37 -0
  69. package/src/models/GovernanceType.ts +40 -0
  70. package/src/models/RequirementInput.ts +190 -0
  71. package/src/models/Share.ts +15 -0
  72. package/src/models/ShareDetail.ts +4 -3
  73. package/src/models/index.ts +11 -0
  74. package/src/runtime.ts +1 -1
@@ -0,0 +1,235 @@
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
+ import type { GovernanceExpiry } from './GovernanceExpiry';
17
+ import {
18
+ GovernanceExpiryFromJSON,
19
+ GovernanceExpiryFromJSONTyped,
20
+ GovernanceExpiryToJSON,
21
+ } from './GovernanceExpiry';
22
+ import type { GovernanceFile } from './GovernanceFile';
23
+ import {
24
+ GovernanceFileFromJSON,
25
+ GovernanceFileFromJSONTyped,
26
+ GovernanceFileToJSON,
27
+ } from './GovernanceFile';
28
+ import type { GovernanceScope } from './GovernanceScope';
29
+ import {
30
+ GovernanceScopeFromJSON,
31
+ GovernanceScopeFromJSONTyped,
32
+ GovernanceScopeToJSON,
33
+ } from './GovernanceScope';
34
+ import type { GovernanceTrainingVerification } from './GovernanceTrainingVerification';
35
+ import {
36
+ GovernanceTrainingVerificationFromJSON,
37
+ GovernanceTrainingVerificationFromJSONTyped,
38
+ GovernanceTrainingVerificationToJSON,
39
+ } from './GovernanceTrainingVerification';
40
+ import type { GovernanceType } from './GovernanceType';
41
+ import {
42
+ GovernanceTypeFromJSON,
43
+ GovernanceTypeFromJSONTyped,
44
+ GovernanceTypeToJSON,
45
+ } from './GovernanceType';
46
+
47
+ /**
48
+ *
49
+ * @export
50
+ * @interface GovernanceRequirement
51
+ */
52
+ export interface GovernanceRequirement {
53
+ /**
54
+ * The unique identifier for the requirement
55
+ * @type {string}
56
+ * @memberof GovernanceRequirement
57
+ */
58
+ id: string;
59
+ /**
60
+ * The name of the requirement
61
+ * @type {string}
62
+ * @memberof GovernanceRequirement
63
+ */
64
+ name: string;
65
+ /**
66
+ * A brief description of the requirement
67
+ * @type {string}
68
+ * @memberof GovernanceRequirement
69
+ */
70
+ description: string;
71
+ /**
72
+ *
73
+ * @type {GovernanceType}
74
+ * @memberof GovernanceRequirement
75
+ */
76
+ type: GovernanceType;
77
+ /**
78
+ * S3 prefix where files for the requirement are saved
79
+ * @type {string}
80
+ * @memberof GovernanceRequirement
81
+ */
82
+ path: string;
83
+ /**
84
+ *
85
+ * @type {GovernanceScope}
86
+ * @memberof GovernanceRequirement
87
+ */
88
+ scope: GovernanceScope;
89
+ /**
90
+ *
91
+ * @type {GovernanceScope}
92
+ * @memberof GovernanceRequirement
93
+ */
94
+ acceptance?: GovernanceScope | null;
95
+ /**
96
+ * The IDs of governance contacts assigned to the requirement.
97
+ * @type {Array<string>}
98
+ * @memberof GovernanceRequirement
99
+ */
100
+ contactIds: Array<string>;
101
+ /**
102
+ *
103
+ * @type {GovernanceExpiry}
104
+ * @memberof GovernanceRequirement
105
+ */
106
+ expiration: GovernanceExpiry;
107
+ /**
108
+ * The date of enactment for a requirement
109
+ * @type {Date}
110
+ * @memberof GovernanceRequirement
111
+ */
112
+ enactmentDate?: Date | null;
113
+ /**
114
+ * Optional files with extra information, e.g. templates for documents, links, etc
115
+ * @type {Array<GovernanceFile>}
116
+ * @memberof GovernanceRequirement
117
+ */
118
+ supplementalDocs?: Array<GovernanceFile> | null;
119
+ /**
120
+ *
121
+ * @type {GovernanceFile}
122
+ * @memberof GovernanceRequirement
123
+ */
124
+ file?: GovernanceFile | null;
125
+ /**
126
+ *
127
+ * @type {GovernanceScope}
128
+ * @memberof GovernanceRequirement
129
+ */
130
+ authorship?: GovernanceScope | null;
131
+ /**
132
+ *
133
+ * @type {GovernanceTrainingVerification}
134
+ * @memberof GovernanceRequirement
135
+ */
136
+ verification?: GovernanceTrainingVerification | null;
137
+ /**
138
+ *
139
+ * @type {string}
140
+ * @memberof GovernanceRequirement
141
+ */
142
+ createdBy: string;
143
+ /**
144
+ *
145
+ * @type {Date}
146
+ * @memberof GovernanceRequirement
147
+ */
148
+ createdAt: Date;
149
+ /**
150
+ *
151
+ * @type {Date}
152
+ * @memberof GovernanceRequirement
153
+ */
154
+ updatedAt: Date;
155
+ }
156
+
157
+ /**
158
+ * Check if a given object implements the GovernanceRequirement interface.
159
+ */
160
+ export function instanceOfGovernanceRequirement(value: object): boolean {
161
+ let isInstance = true;
162
+ isInstance = isInstance && "id" in value;
163
+ isInstance = isInstance && "name" in value;
164
+ isInstance = isInstance && "description" in value;
165
+ isInstance = isInstance && "type" in value;
166
+ isInstance = isInstance && "path" in value;
167
+ isInstance = isInstance && "scope" in value;
168
+ isInstance = isInstance && "contactIds" in value;
169
+ isInstance = isInstance && "expiration" in value;
170
+ isInstance = isInstance && "createdBy" in value;
171
+ isInstance = isInstance && "createdAt" in value;
172
+ isInstance = isInstance && "updatedAt" in value;
173
+
174
+ return isInstance;
175
+ }
176
+
177
+ export function GovernanceRequirementFromJSON(json: any): GovernanceRequirement {
178
+ return GovernanceRequirementFromJSONTyped(json, false);
179
+ }
180
+
181
+ export function GovernanceRequirementFromJSONTyped(json: any, ignoreDiscriminator: boolean): GovernanceRequirement {
182
+ if ((json === undefined) || (json === null)) {
183
+ return json;
184
+ }
185
+ return {
186
+
187
+ 'id': json['id'],
188
+ 'name': json['name'],
189
+ 'description': json['description'],
190
+ 'type': GovernanceTypeFromJSON(json['type']),
191
+ 'path': json['path'],
192
+ 'scope': GovernanceScopeFromJSON(json['scope']),
193
+ 'acceptance': !exists(json, 'acceptance') ? undefined : GovernanceScopeFromJSON(json['acceptance']),
194
+ 'contactIds': json['contactIds'],
195
+ 'expiration': GovernanceExpiryFromJSON(json['expiration']),
196
+ 'enactmentDate': !exists(json, 'enactmentDate') ? undefined : (json['enactmentDate'] === null ? null : new Date(json['enactmentDate'])),
197
+ 'supplementalDocs': !exists(json, 'supplementalDocs') ? undefined : (json['supplementalDocs'] === null ? null : (json['supplementalDocs'] as Array<any>).map(GovernanceFileFromJSON)),
198
+ 'file': !exists(json, 'file') ? undefined : GovernanceFileFromJSON(json['file']),
199
+ 'authorship': !exists(json, 'authorship') ? undefined : GovernanceScopeFromJSON(json['authorship']),
200
+ 'verification': !exists(json, 'verification') ? undefined : GovernanceTrainingVerificationFromJSON(json['verification']),
201
+ 'createdBy': json['createdBy'],
202
+ 'createdAt': (new Date(json['createdAt'])),
203
+ 'updatedAt': (new Date(json['updatedAt'])),
204
+ };
205
+ }
206
+
207
+ export function GovernanceRequirementToJSON(value?: GovernanceRequirement | null): any {
208
+ if (value === undefined) {
209
+ return undefined;
210
+ }
211
+ if (value === null) {
212
+ return null;
213
+ }
214
+ return {
215
+
216
+ 'id': value.id,
217
+ 'name': value.name,
218
+ 'description': value.description,
219
+ 'type': GovernanceTypeToJSON(value.type),
220
+ 'path': value.path,
221
+ 'scope': GovernanceScopeToJSON(value.scope),
222
+ 'acceptance': GovernanceScopeToJSON(value.acceptance),
223
+ 'contactIds': value.contactIds,
224
+ 'expiration': GovernanceExpiryToJSON(value.expiration),
225
+ 'enactmentDate': value.enactmentDate === undefined ? undefined : (value.enactmentDate === null ? null : value.enactmentDate.toISOString()),
226
+ 'supplementalDocs': value.supplementalDocs === undefined ? undefined : (value.supplementalDocs === null ? null : (value.supplementalDocs as Array<any>).map(GovernanceFileToJSON)),
227
+ 'file': GovernanceFileToJSON(value.file),
228
+ 'authorship': GovernanceScopeToJSON(value.authorship),
229
+ 'verification': GovernanceTrainingVerificationToJSON(value.verification),
230
+ 'createdBy': value.createdBy,
231
+ 'createdAt': (value.createdAt.toISOString()),
232
+ 'updatedAt': (value.updatedAt.toISOString()),
233
+ };
234
+ }
235
+
@@ -0,0 +1,96 @@
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
+ import type { GovernanceFileType } from './GovernanceFileType';
17
+ import {
18
+ GovernanceFileTypeFromJSON,
19
+ GovernanceFileTypeFromJSONTyped,
20
+ GovernanceFileTypeToJSON,
21
+ } from './GovernanceFileType';
22
+
23
+ /**
24
+ * The document uploaded for the requirement: only if agreement or document object has a matching scope and authorship
25
+ * @export
26
+ * @interface GovernanceRequirementFile
27
+ */
28
+ export interface GovernanceRequirementFile {
29
+ /**
30
+ * The title of the resource visible to users
31
+ * @type {string}
32
+ * @memberof GovernanceRequirementFile
33
+ */
34
+ name?: string;
35
+ /**
36
+ * A description of the resource visible to users
37
+ * @type {string}
38
+ * @memberof GovernanceRequirementFile
39
+ */
40
+ description?: string;
41
+ /**
42
+ * The file name without path or the full link path
43
+ * @type {string}
44
+ * @memberof GovernanceRequirementFile
45
+ */
46
+ src?: string;
47
+ /**
48
+ *
49
+ * @type {GovernanceFileType}
50
+ * @memberof GovernanceRequirementFile
51
+ */
52
+ type?: GovernanceFileType;
53
+ }
54
+
55
+ /**
56
+ * Check if a given object implements the GovernanceRequirementFile interface.
57
+ */
58
+ export function instanceOfGovernanceRequirementFile(value: object): boolean {
59
+ let isInstance = true;
60
+
61
+ return isInstance;
62
+ }
63
+
64
+ export function GovernanceRequirementFileFromJSON(json: any): GovernanceRequirementFile {
65
+ return GovernanceRequirementFileFromJSONTyped(json, false);
66
+ }
67
+
68
+ export function GovernanceRequirementFileFromJSONTyped(json: any, ignoreDiscriminator: boolean): GovernanceRequirementFile {
69
+ if ((json === undefined) || (json === null)) {
70
+ return json;
71
+ }
72
+ return {
73
+
74
+ 'name': !exists(json, 'name') ? undefined : json['name'],
75
+ 'description': !exists(json, 'description') ? undefined : json['description'],
76
+ 'src': !exists(json, 'src') ? undefined : json['src'],
77
+ 'type': !exists(json, 'type') ? undefined : GovernanceFileTypeFromJSON(json['type']),
78
+ };
79
+ }
80
+
81
+ export function GovernanceRequirementFileToJSON(value?: GovernanceRequirementFile | null): any {
82
+ if (value === undefined) {
83
+ return undefined;
84
+ }
85
+ if (value === null) {
86
+ return null;
87
+ }
88
+ return {
89
+
90
+ 'name': value.name,
91
+ 'description': value.description,
92
+ 'src': value.src,
93
+ 'type': GovernanceFileTypeToJSON(value.type),
94
+ };
95
+ }
96
+
@@ -0,0 +1,37 @@
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
+ * The levels at which governance requirements can be enforced
17
+ * @export
18
+ * @enum {string}
19
+ */
20
+ export enum GovernanceScope {
21
+ Tenant = 'TENANT',
22
+ Project = 'PROJECT'
23
+ }
24
+
25
+
26
+ export function GovernanceScopeFromJSON(json: any): GovernanceScope {
27
+ return GovernanceScopeFromJSONTyped(json, false);
28
+ }
29
+
30
+ export function GovernanceScopeFromJSONTyped(json: any, ignoreDiscriminator: boolean): GovernanceScope {
31
+ return json as GovernanceScope;
32
+ }
33
+
34
+ export function GovernanceScopeToJSON(value?: GovernanceScope | null): any {
35
+ return value as any;
36
+ }
37
+
@@ -0,0 +1,37 @@
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
+ * The ways in which the completion of training can be verified.
17
+ * @export
18
+ * @enum {string}
19
+ */
20
+ export enum GovernanceTrainingVerification {
21
+ Self = 'SELF',
22
+ Certificate = 'CERTIFICATE'
23
+ }
24
+
25
+
26
+ export function GovernanceTrainingVerificationFromJSON(json: any): GovernanceTrainingVerification {
27
+ return GovernanceTrainingVerificationFromJSONTyped(json, false);
28
+ }
29
+
30
+ export function GovernanceTrainingVerificationFromJSONTyped(json: any, ignoreDiscriminator: boolean): GovernanceTrainingVerification {
31
+ return json as GovernanceTrainingVerification;
32
+ }
33
+
34
+ export function GovernanceTrainingVerificationToJSON(value?: GovernanceTrainingVerification | null): any {
35
+ return value as any;
36
+ }
37
+
@@ -0,0 +1,40 @@
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
+ * The types of governance requirements that can be enforced
17
+ * @export
18
+ * @enum {string}
19
+ */
20
+ export enum GovernanceType {
21
+ Document = 'DOCUMENT',
22
+ Agreement = 'AGREEMENT',
23
+ Training = 'TRAINING',
24
+ Contact = 'CONTACT',
25
+ Classification = 'CLASSIFICATION'
26
+ }
27
+
28
+
29
+ export function GovernanceTypeFromJSON(json: any): GovernanceType {
30
+ return GovernanceTypeFromJSONTyped(json, false);
31
+ }
32
+
33
+ export function GovernanceTypeFromJSONTyped(json: any, ignoreDiscriminator: boolean): GovernanceType {
34
+ return json as GovernanceType;
35
+ }
36
+
37
+ export function GovernanceTypeToJSON(value?: GovernanceType | null): any {
38
+ return value as any;
39
+ }
40
+
@@ -0,0 +1,190 @@
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
+ import type { GovernanceExpiry } from './GovernanceExpiry';
17
+ import {
18
+ GovernanceExpiryFromJSON,
19
+ GovernanceExpiryFromJSONTyped,
20
+ GovernanceExpiryToJSON,
21
+ } from './GovernanceExpiry';
22
+ import type { GovernanceFile } from './GovernanceFile';
23
+ import {
24
+ GovernanceFileFromJSON,
25
+ GovernanceFileFromJSONTyped,
26
+ GovernanceFileToJSON,
27
+ } from './GovernanceFile';
28
+ import type { GovernanceScope } from './GovernanceScope';
29
+ import {
30
+ GovernanceScopeFromJSON,
31
+ GovernanceScopeFromJSONTyped,
32
+ GovernanceScopeToJSON,
33
+ } from './GovernanceScope';
34
+ import type { GovernanceTrainingVerification } from './GovernanceTrainingVerification';
35
+ import {
36
+ GovernanceTrainingVerificationFromJSON,
37
+ GovernanceTrainingVerificationFromJSONTyped,
38
+ GovernanceTrainingVerificationToJSON,
39
+ } from './GovernanceTrainingVerification';
40
+ import type { GovernanceType } from './GovernanceType';
41
+ import {
42
+ GovernanceTypeFromJSON,
43
+ GovernanceTypeFromJSONTyped,
44
+ GovernanceTypeToJSON,
45
+ } from './GovernanceType';
46
+
47
+ /**
48
+ *
49
+ * @export
50
+ * @interface RequirementInput
51
+ */
52
+ export interface RequirementInput {
53
+ /**
54
+ *
55
+ * @type {string}
56
+ * @memberof RequirementInput
57
+ */
58
+ name: string;
59
+ /**
60
+ *
61
+ * @type {string}
62
+ * @memberof RequirementInput
63
+ */
64
+ description: string;
65
+ /**
66
+ *
67
+ * @type {GovernanceType}
68
+ * @memberof RequirementInput
69
+ */
70
+ type: GovernanceType;
71
+ /**
72
+ *
73
+ * @type {GovernanceScope}
74
+ * @memberof RequirementInput
75
+ */
76
+ scope: GovernanceScope;
77
+ /**
78
+ *
79
+ * @type {GovernanceScope}
80
+ * @memberof RequirementInput
81
+ */
82
+ acceptance?: GovernanceScope | null;
83
+ /**
84
+ *
85
+ * @type {Array<string>}
86
+ * @memberof RequirementInput
87
+ */
88
+ contactIds: Array<string>;
89
+ /**
90
+ *
91
+ * @type {GovernanceExpiry}
92
+ * @memberof RequirementInput
93
+ */
94
+ expiration: GovernanceExpiry;
95
+ /**
96
+ *
97
+ * @type {Date}
98
+ * @memberof RequirementInput
99
+ */
100
+ enactmentDate?: Date | null;
101
+ /**
102
+ *
103
+ * @type {Array<GovernanceFile>}
104
+ * @memberof RequirementInput
105
+ */
106
+ supplementalDocs?: Array<GovernanceFile> | null;
107
+ /**
108
+ *
109
+ * @type {GovernanceFile}
110
+ * @memberof RequirementInput
111
+ */
112
+ file?: GovernanceFile | null;
113
+ /**
114
+ *
115
+ * @type {GovernanceScope}
116
+ * @memberof RequirementInput
117
+ */
118
+ authorship?: GovernanceScope | null;
119
+ /**
120
+ *
121
+ * @type {GovernanceTrainingVerification}
122
+ * @memberof RequirementInput
123
+ */
124
+ verification?: GovernanceTrainingVerification | null;
125
+ }
126
+
127
+ /**
128
+ * Check if a given object implements the RequirementInput interface.
129
+ */
130
+ export function instanceOfRequirementInput(value: object): boolean {
131
+ let isInstance = true;
132
+ isInstance = isInstance && "name" in value;
133
+ isInstance = isInstance && "description" in value;
134
+ isInstance = isInstance && "type" in value;
135
+ isInstance = isInstance && "scope" in value;
136
+ isInstance = isInstance && "contactIds" in value;
137
+ isInstance = isInstance && "expiration" in value;
138
+
139
+ return isInstance;
140
+ }
141
+
142
+ export function RequirementInputFromJSON(json: any): RequirementInput {
143
+ return RequirementInputFromJSONTyped(json, false);
144
+ }
145
+
146
+ export function RequirementInputFromJSONTyped(json: any, ignoreDiscriminator: boolean): RequirementInput {
147
+ if ((json === undefined) || (json === null)) {
148
+ return json;
149
+ }
150
+ return {
151
+
152
+ 'name': json['name'],
153
+ 'description': json['description'],
154
+ 'type': GovernanceTypeFromJSON(json['type']),
155
+ 'scope': GovernanceScopeFromJSON(json['scope']),
156
+ 'acceptance': !exists(json, 'acceptance') ? undefined : GovernanceScopeFromJSON(json['acceptance']),
157
+ 'contactIds': json['contactIds'],
158
+ 'expiration': GovernanceExpiryFromJSON(json['expiration']),
159
+ 'enactmentDate': !exists(json, 'enactmentDate') ? undefined : (json['enactmentDate'] === null ? null : new Date(json['enactmentDate'])),
160
+ 'supplementalDocs': !exists(json, 'supplementalDocs') ? undefined : (json['supplementalDocs'] === null ? null : (json['supplementalDocs'] as Array<any>).map(GovernanceFileFromJSON)),
161
+ 'file': !exists(json, 'file') ? undefined : GovernanceFileFromJSON(json['file']),
162
+ 'authorship': !exists(json, 'authorship') ? undefined : GovernanceScopeFromJSON(json['authorship']),
163
+ 'verification': !exists(json, 'verification') ? undefined : GovernanceTrainingVerificationFromJSON(json['verification']),
164
+ };
165
+ }
166
+
167
+ export function RequirementInputToJSON(value?: RequirementInput | null): any {
168
+ if (value === undefined) {
169
+ return undefined;
170
+ }
171
+ if (value === null) {
172
+ return null;
173
+ }
174
+ return {
175
+
176
+ 'name': value.name,
177
+ 'description': value.description,
178
+ 'type': GovernanceTypeToJSON(value.type),
179
+ 'scope': GovernanceScopeToJSON(value.scope),
180
+ 'acceptance': GovernanceScopeToJSON(value.acceptance),
181
+ 'contactIds': value.contactIds,
182
+ 'expiration': GovernanceExpiryToJSON(value.expiration),
183
+ 'enactmentDate': value.enactmentDate === undefined ? undefined : (value.enactmentDate === null ? null : value.enactmentDate.toISOString()),
184
+ 'supplementalDocs': value.supplementalDocs === undefined ? undefined : (value.supplementalDocs === null ? null : (value.supplementalDocs as Array<any>).map(GovernanceFileToJSON)),
185
+ 'file': GovernanceFileToJSON(value.file),
186
+ 'authorship': GovernanceScopeToJSON(value.authorship),
187
+ 'verification': GovernanceTrainingVerificationToJSON(value.verification),
188
+ };
189
+ }
190
+
@@ -13,6 +13,12 @@
13
13
  */
14
14
 
15
15
  import { exists, mapValues } from '../runtime';
16
+ import type { DatasetCondition } from './DatasetCondition';
17
+ import {
18
+ DatasetConditionFromJSON,
19
+ DatasetConditionFromJSONTyped,
20
+ DatasetConditionToJSON,
21
+ } from './DatasetCondition';
16
22
  import type { ShareType } from './ShareType';
17
23
  import {
18
24
  ShareTypeFromJSON,
@@ -56,6 +62,12 @@ export interface Share {
56
62
  * @memberof Share
57
63
  */
58
64
  shareType: ShareType;
65
+ /**
66
+ *
67
+ * @type {Array<DatasetCondition>}
68
+ * @memberof Share
69
+ */
70
+ conditions: Array<DatasetCondition>;
59
71
  /**
60
72
  *
61
73
  * @type {Array<string>}
@@ -98,6 +110,7 @@ export function instanceOfShare(value: object): boolean {
98
110
  isInstance = isInstance && "description" in value;
99
111
  isInstance = isInstance && "originatingProjectId" in value;
100
112
  isInstance = isInstance && "shareType" in value;
113
+ isInstance = isInstance && "conditions" in value;
101
114
  isInstance = isInstance && "classificationIds" in value;
102
115
  isInstance = isInstance && "keywords" in value;
103
116
  isInstance = isInstance && "createdBy" in value;
@@ -122,6 +135,7 @@ export function ShareFromJSONTyped(json: any, ignoreDiscriminator: boolean): Sha
122
135
  'description': json['description'],
123
136
  'originatingProjectId': json['originatingProjectId'],
124
137
  'shareType': ShareTypeFromJSON(json['shareType']),
138
+ 'conditions': ((json['conditions'] as Array<any>).map(DatasetConditionFromJSON)),
125
139
  'classificationIds': json['classificationIds'],
126
140
  'keywords': json['keywords'],
127
141
  'createdBy': json['createdBy'],
@@ -144,6 +158,7 @@ export function ShareToJSON(value?: Share | null): any {
144
158
  'description': value.description,
145
159
  'originatingProjectId': value.originatingProjectId,
146
160
  'shareType': ShareTypeToJSON(value.shareType),
161
+ 'conditions': ((value.conditions as Array<any>).map(DatasetConditionToJSON)),
147
162
  'classificationIds': value.classificationIds,
148
163
  'keywords': value.keywords,
149
164
  'createdBy': value.createdBy,