@scaleway/sdk-account 1.0.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.
@@ -0,0 +1,314 @@
1
+ import randomName from "@scaleway/random-name";
2
+ import { resolveOneOf, isJSONObject, unmarshalDate, unmarshalArrayOfObject } from "@scaleway/sdk-client";
3
+ const unmarshalContract = (data) => {
4
+ if (!isJSONObject(data)) {
5
+ throw new TypeError(
6
+ `Unmarshalling the type 'Contract' failed as data isn't a dictionary.`
7
+ );
8
+ }
9
+ return {
10
+ createdAt: unmarshalDate(data.created_at),
11
+ id: data.id,
12
+ name: data.name,
13
+ type: data.type,
14
+ updatedAt: unmarshalDate(data.updated_at),
15
+ version: data.version
16
+ };
17
+ };
18
+ const unmarshalContractSignature = (data) => {
19
+ if (!isJSONObject(data)) {
20
+ throw new TypeError(
21
+ `Unmarshalling the type 'ContractSignature' failed as data isn't a dictionary.`
22
+ );
23
+ }
24
+ return {
25
+ contract: data.contract ? unmarshalContract(data.contract) : void 0,
26
+ createdAt: unmarshalDate(data.created_at),
27
+ expiresAt: unmarshalDate(data.expires_at),
28
+ id: data.id,
29
+ organizationId: data.organization_id,
30
+ signedAt: unmarshalDate(data.signed_at)
31
+ };
32
+ };
33
+ const unmarshalQualificationAiMachine = (data) => {
34
+ if (!isJSONObject(data)) {
35
+ throw new TypeError(
36
+ `Unmarshalling the type 'QualificationAiMachine' failed as data isn't a dictionary.`
37
+ );
38
+ }
39
+ return {
40
+ subUseCase: data.sub_use_case
41
+ };
42
+ };
43
+ const unmarshalQualificationArchiveData = (data) => {
44
+ if (!isJSONObject(data)) {
45
+ throw new TypeError(
46
+ `Unmarshalling the type 'QualificationArchiveData' failed as data isn't a dictionary.`
47
+ );
48
+ }
49
+ return {
50
+ subUseCase: data.sub_use_case
51
+ };
52
+ };
53
+ const unmarshalQualificationContainer = (data) => {
54
+ if (!isJSONObject(data)) {
55
+ throw new TypeError(
56
+ `Unmarshalling the type 'QualificationContainer' failed as data isn't a dictionary.`
57
+ );
58
+ }
59
+ return {
60
+ subUseCase: data.sub_use_case
61
+ };
62
+ };
63
+ const unmarshalQualificationDeploySoftware = (data) => {
64
+ if (!isJSONObject(data)) {
65
+ throw new TypeError(
66
+ `Unmarshalling the type 'QualificationDeploySoftware' failed as data isn't a dictionary.`
67
+ );
68
+ }
69
+ return {
70
+ subUseCase: data.sub_use_case
71
+ };
72
+ };
73
+ const unmarshalQualificationHostApplication = (data) => {
74
+ if (!isJSONObject(data)) {
75
+ throw new TypeError(
76
+ `Unmarshalling the type 'QualificationHostApplication' failed as data isn't a dictionary.`
77
+ );
78
+ }
79
+ return {
80
+ subUseCase: data.sub_use_case
81
+ };
82
+ };
83
+ const unmarshalQualificationHostWebsite = (data) => {
84
+ if (!isJSONObject(data)) {
85
+ throw new TypeError(
86
+ `Unmarshalling the type 'QualificationHostWebsite' failed as data isn't a dictionary.`
87
+ );
88
+ }
89
+ return {
90
+ subUseCase: data.sub_use_case
91
+ };
92
+ };
93
+ const unmarshalQualificationOtherUseCase = (data) => {
94
+ if (!isJSONObject(data)) {
95
+ throw new TypeError(
96
+ `Unmarshalling the type 'QualificationOtherUseCase' failed as data isn't a dictionary.`
97
+ );
98
+ }
99
+ return {
100
+ subUseCase: data.sub_use_case
101
+ };
102
+ };
103
+ const unmarshalQualificationSetScalewayEnvironment = (data) => {
104
+ if (!isJSONObject(data)) {
105
+ throw new TypeError(
106
+ `Unmarshalling the type 'QualificationSetScalewayEnvironment' failed as data isn't a dictionary.`
107
+ );
108
+ }
109
+ return {
110
+ subUseCase: data.sub_use_case
111
+ };
112
+ };
113
+ const unmarshalQualificationShareData = (data) => {
114
+ if (!isJSONObject(data)) {
115
+ throw new TypeError(
116
+ `Unmarshalling the type 'QualificationShareData' failed as data isn't a dictionary.`
117
+ );
118
+ }
119
+ return {
120
+ subUseCase: data.sub_use_case
121
+ };
122
+ };
123
+ const unmarshalQualification = (data) => {
124
+ if (!isJSONObject(data)) {
125
+ throw new TypeError(
126
+ `Unmarshalling the type 'Qualification' failed as data isn't a dictionary.`
127
+ );
128
+ }
129
+ return {
130
+ aiMachine: data.ai_machine ? unmarshalQualificationAiMachine(data.ai_machine) : void 0,
131
+ architectureType: data.architecture_type,
132
+ archiveData: data.archive_data ? unmarshalQualificationArchiveData(data.archive_data) : void 0,
133
+ container: data.container ? unmarshalQualificationContainer(data.container) : void 0,
134
+ deploySoftware: data.deploy_software ? unmarshalQualificationDeploySoftware(data.deploy_software) : void 0,
135
+ hostApplication: data.host_application ? unmarshalQualificationHostApplication(data.host_application) : void 0,
136
+ hostWebsite: data.host_website ? unmarshalQualificationHostWebsite(data.host_website) : void 0,
137
+ otherUseCase: data.other_use_case ? unmarshalQualificationOtherUseCase(data.other_use_case) : void 0,
138
+ setScalewayEnvironment: data.set_scaleway_environment ? unmarshalQualificationSetScalewayEnvironment(
139
+ data.set_scaleway_environment
140
+ ) : void 0,
141
+ shareData: data.share_data ? unmarshalQualificationShareData(data.share_data) : void 0
142
+ };
143
+ };
144
+ const unmarshalProject = (data) => {
145
+ if (!isJSONObject(data)) {
146
+ throw new TypeError(
147
+ `Unmarshalling the type 'Project' failed as data isn't a dictionary.`
148
+ );
149
+ }
150
+ return {
151
+ createdAt: unmarshalDate(data.created_at),
152
+ description: data.description,
153
+ id: data.id,
154
+ name: data.name,
155
+ organizationId: data.organization_id,
156
+ qualification: data.qualification ? unmarshalQualification(data.qualification) : void 0,
157
+ updatedAt: unmarshalDate(data.updated_at)
158
+ };
159
+ };
160
+ const unmarshalCheckContractSignatureResponse = (data) => {
161
+ if (!isJSONObject(data)) {
162
+ throw new TypeError(
163
+ `Unmarshalling the type 'CheckContractSignatureResponse' failed as data isn't a dictionary.`
164
+ );
165
+ }
166
+ return {
167
+ created: data.created,
168
+ validated: data.validated
169
+ };
170
+ };
171
+ const unmarshalListContractSignaturesResponse = (data) => {
172
+ if (!isJSONObject(data)) {
173
+ throw new TypeError(
174
+ `Unmarshalling the type 'ListContractSignaturesResponse' failed as data isn't a dictionary.`
175
+ );
176
+ }
177
+ return {
178
+ contractSignatures: unmarshalArrayOfObject(
179
+ data.contract_signatures,
180
+ unmarshalContractSignature
181
+ ),
182
+ totalCount: data.total_count
183
+ };
184
+ };
185
+ const unmarshalListProjectsResponse = (data) => {
186
+ if (!isJSONObject(data)) {
187
+ throw new TypeError(
188
+ `Unmarshalling the type 'ListProjectsResponse' failed as data isn't a dictionary.`
189
+ );
190
+ }
191
+ return {
192
+ projects: unmarshalArrayOfObject(data.projects, unmarshalProject),
193
+ totalCount: data.total_count
194
+ };
195
+ };
196
+ const unmarshalProjectQualification = (data) => {
197
+ if (!isJSONObject(data)) {
198
+ throw new TypeError(
199
+ `Unmarshalling the type 'ProjectQualification' failed as data isn't a dictionary.`
200
+ );
201
+ }
202
+ return {
203
+ projectId: data.project_id,
204
+ qualification: data.qualification ? unmarshalQualification(data.qualification) : void 0
205
+ };
206
+ };
207
+ const marshalContractApiCheckContractSignatureRequest = (request, defaults) => ({
208
+ contract_name: request.contractName,
209
+ contract_type: request.contractType,
210
+ organization_id: request.organizationId ?? defaults.defaultOrganizationId
211
+ });
212
+ const marshalContractApiCreateContractSignatureRequest = (request, defaults) => ({
213
+ contract_name: request.contractName,
214
+ contract_type: request.contractType,
215
+ organization_id: request.organizationId ?? defaults.defaultOrganizationId,
216
+ validated: request.validated
217
+ });
218
+ const marshalProjectApiCreateProjectRequest = (request, defaults) => ({
219
+ description: request.description,
220
+ name: request.name || randomName("proj"),
221
+ organization_id: request.organizationId ?? defaults.defaultOrganizationId
222
+ });
223
+ const marshalQualificationAiMachine = (request, defaults) => ({
224
+ sub_use_case: request.subUseCase
225
+ });
226
+ const marshalQualificationArchiveData = (request, defaults) => ({
227
+ sub_use_case: request.subUseCase
228
+ });
229
+ const marshalQualificationContainer = (request, defaults) => ({
230
+ sub_use_case: request.subUseCase
231
+ });
232
+ const marshalQualificationDeploySoftware = (request, defaults) => ({
233
+ sub_use_case: request.subUseCase
234
+ });
235
+ const marshalQualificationHostApplication = (request, defaults) => ({
236
+ sub_use_case: request.subUseCase
237
+ });
238
+ const marshalQualificationHostWebsite = (request, defaults) => ({
239
+ sub_use_case: request.subUseCase
240
+ });
241
+ const marshalQualificationOtherUseCase = (request, defaults) => ({
242
+ sub_use_case: request.subUseCase
243
+ });
244
+ const marshalQualificationSetScalewayEnvironment = (request, defaults) => ({
245
+ sub_use_case: request.subUseCase
246
+ });
247
+ const marshalQualificationShareData = (request, defaults) => ({
248
+ sub_use_case: request.subUseCase
249
+ });
250
+ const marshalQualification = (request, defaults) => ({
251
+ architecture_type: request.architectureType,
252
+ ...resolveOneOf([
253
+ {
254
+ param: "host_website",
255
+ value: request.hostWebsite !== void 0 ? marshalQualificationHostWebsite(request.hostWebsite) : void 0
256
+ },
257
+ {
258
+ param: "host_application",
259
+ value: request.hostApplication !== void 0 ? marshalQualificationHostApplication(
260
+ request.hostApplication
261
+ ) : void 0
262
+ },
263
+ {
264
+ param: "deploy_software",
265
+ value: request.deploySoftware !== void 0 ? marshalQualificationDeploySoftware(request.deploySoftware) : void 0
266
+ },
267
+ {
268
+ param: "set_scaleway_environment",
269
+ value: request.setScalewayEnvironment !== void 0 ? marshalQualificationSetScalewayEnvironment(
270
+ request.setScalewayEnvironment
271
+ ) : void 0
272
+ },
273
+ {
274
+ param: "ai_machine",
275
+ value: request.aiMachine !== void 0 ? marshalQualificationAiMachine(request.aiMachine) : void 0
276
+ },
277
+ {
278
+ param: "container",
279
+ value: request.container !== void 0 ? marshalQualificationContainer(request.container) : void 0
280
+ },
281
+ {
282
+ param: "archive_data",
283
+ value: request.archiveData !== void 0 ? marshalQualificationArchiveData(request.archiveData) : void 0
284
+ },
285
+ {
286
+ param: "share_data",
287
+ value: request.shareData !== void 0 ? marshalQualificationShareData(request.shareData) : void 0
288
+ },
289
+ {
290
+ param: "other_use_case",
291
+ value: request.otherUseCase !== void 0 ? marshalQualificationOtherUseCase(request.otherUseCase) : void 0
292
+ }
293
+ ])
294
+ });
295
+ const marshalProjectApiSetProjectQualificationRequest = (request, defaults) => ({
296
+ qualification: request.qualification !== void 0 ? marshalQualification(request.qualification) : void 0
297
+ });
298
+ const marshalProjectApiUpdateProjectRequest = (request, defaults) => ({
299
+ description: request.description,
300
+ name: request.name
301
+ });
302
+ export {
303
+ marshalContractApiCheckContractSignatureRequest,
304
+ marshalContractApiCreateContractSignatureRequest,
305
+ marshalProjectApiCreateProjectRequest,
306
+ marshalProjectApiSetProjectQualificationRequest,
307
+ marshalProjectApiUpdateProjectRequest,
308
+ unmarshalCheckContractSignatureResponse,
309
+ unmarshalContractSignature,
310
+ unmarshalListContractSignaturesResponse,
311
+ unmarshalListProjectsResponse,
312
+ unmarshalProject,
313
+ unmarshalProjectQualification
314
+ };
@@ -0,0 +1,356 @@
1
+ import type { LanguageCode as StdLanguageCode } from '@scaleway/sdk-std';
2
+ export type ContractType = 'unknown_type' | 'global' | 'k8s' | 'instance' | 'container' | 'baremetal';
3
+ export type ListContractSignaturesRequestOrderBy = 'signed_at_asc' | 'signed_at_desc' | 'expires_at_asc' | 'expires_at_desc' | 'name_asc' | 'name_desc';
4
+ export type ListProjectsRequestOrderBy = 'created_at_asc' | 'created_at_desc' | 'name_asc' | 'name_desc';
5
+ export type QualificationAiMachineSubUseCase = 'unknown_sub_use_case';
6
+ export type QualificationArchitectureType = 'unknown_architecture_type' | 'object_storage' | 'web_hosting' | 'instance' | 'elastic' | 'kubernetes' | 'serverless' | 'dedicated_server' | 'other_architecture_type';
7
+ export type QualificationArchiveDataSubUseCase = 'unknown_sub_use_case';
8
+ export type QualificationContainerSubUseCase = 'unknown_sub_use_case';
9
+ export type QualificationDeploySoftwareSubUseCase = 'unknown_sub_use_case';
10
+ export type QualificationHostApplicationSubUseCase = 'unknown_sub_use_case' | 'saas_app' | 'government_app';
11
+ export type QualificationHostWebsiteSubUseCase = 'unknown_sub_use_case' | 'information_website' | 'ecommerce_website' | 'high_website' | 'other_sub_use_case';
12
+ export type QualificationOtherUseCaseSubUseCase = 'unknown_sub_use_case';
13
+ export type QualificationSetScalewayEnvironmentSubUseCase = 'unknown_sub_use_case';
14
+ export type QualificationShareDataSubUseCase = 'unknown_sub_use_case';
15
+ export interface QualificationAiMachine {
16
+ subUseCase: QualificationAiMachineSubUseCase;
17
+ }
18
+ export interface QualificationArchiveData {
19
+ subUseCase: QualificationArchiveDataSubUseCase;
20
+ }
21
+ export interface QualificationContainer {
22
+ subUseCase: QualificationContainerSubUseCase;
23
+ }
24
+ export interface QualificationDeploySoftware {
25
+ subUseCase: QualificationDeploySoftwareSubUseCase;
26
+ }
27
+ export interface QualificationHostApplication {
28
+ subUseCase: QualificationHostApplicationSubUseCase;
29
+ }
30
+ export interface QualificationHostWebsite {
31
+ subUseCase: QualificationHostWebsiteSubUseCase;
32
+ }
33
+ export interface QualificationOtherUseCase {
34
+ subUseCase: QualificationOtherUseCaseSubUseCase;
35
+ }
36
+ export interface QualificationSetScalewayEnvironment {
37
+ subUseCase: QualificationSetScalewayEnvironmentSubUseCase;
38
+ }
39
+ export interface QualificationShareData {
40
+ subUseCase: QualificationShareDataSubUseCase;
41
+ }
42
+ export interface Contract {
43
+ /**
44
+ * ID of the contract.
45
+ */
46
+ id: string;
47
+ /**
48
+ * The type of the contract.
49
+ */
50
+ type: ContractType;
51
+ /**
52
+ * The name of the contract.
53
+ */
54
+ name: string;
55
+ /**
56
+ * The version of the contract.
57
+ */
58
+ version: number;
59
+ /**
60
+ * The creation date of the contract.
61
+ */
62
+ createdAt?: Date;
63
+ /**
64
+ * The last modification date of the contract.
65
+ */
66
+ updatedAt?: Date;
67
+ }
68
+ export interface Qualification {
69
+ /**
70
+ * Architecture type of the qualification.
71
+ */
72
+ architectureType: QualificationArchitectureType;
73
+ /**
74
+ *
75
+ * One-of ('useCase'): at most one of 'hostWebsite', 'hostApplication', 'deploySoftware', 'setScalewayEnvironment', 'aiMachine', 'container', 'archiveData', 'shareData', 'otherUseCase' could be set.
76
+ */
77
+ hostWebsite?: QualificationHostWebsite;
78
+ /**
79
+ *
80
+ * One-of ('useCase'): at most one of 'hostWebsite', 'hostApplication', 'deploySoftware', 'setScalewayEnvironment', 'aiMachine', 'container', 'archiveData', 'shareData', 'otherUseCase' could be set.
81
+ */
82
+ hostApplication?: QualificationHostApplication;
83
+ /**
84
+ *
85
+ * One-of ('useCase'): at most one of 'hostWebsite', 'hostApplication', 'deploySoftware', 'setScalewayEnvironment', 'aiMachine', 'container', 'archiveData', 'shareData', 'otherUseCase' could be set.
86
+ */
87
+ deploySoftware?: QualificationDeploySoftware;
88
+ /**
89
+ *
90
+ * One-of ('useCase'): at most one of 'hostWebsite', 'hostApplication', 'deploySoftware', 'setScalewayEnvironment', 'aiMachine', 'container', 'archiveData', 'shareData', 'otherUseCase' could be set.
91
+ */
92
+ setScalewayEnvironment?: QualificationSetScalewayEnvironment;
93
+ /**
94
+ *
95
+ * One-of ('useCase'): at most one of 'hostWebsite', 'hostApplication', 'deploySoftware', 'setScalewayEnvironment', 'aiMachine', 'container', 'archiveData', 'shareData', 'otherUseCase' could be set.
96
+ */
97
+ aiMachine?: QualificationAiMachine;
98
+ /**
99
+ *
100
+ * One-of ('useCase'): at most one of 'hostWebsite', 'hostApplication', 'deploySoftware', 'setScalewayEnvironment', 'aiMachine', 'container', 'archiveData', 'shareData', 'otherUseCase' could be set.
101
+ */
102
+ container?: QualificationContainer;
103
+ /**
104
+ *
105
+ * One-of ('useCase'): at most one of 'hostWebsite', 'hostApplication', 'deploySoftware', 'setScalewayEnvironment', 'aiMachine', 'container', 'archiveData', 'shareData', 'otherUseCase' could be set.
106
+ */
107
+ archiveData?: QualificationArchiveData;
108
+ /**
109
+ *
110
+ * One-of ('useCase'): at most one of 'hostWebsite', 'hostApplication', 'deploySoftware', 'setScalewayEnvironment', 'aiMachine', 'container', 'archiveData', 'shareData', 'otherUseCase' could be set.
111
+ */
112
+ shareData?: QualificationShareData;
113
+ /**
114
+ *
115
+ * One-of ('useCase'): at most one of 'hostWebsite', 'hostApplication', 'deploySoftware', 'setScalewayEnvironment', 'aiMachine', 'container', 'archiveData', 'shareData', 'otherUseCase' could be set.
116
+ */
117
+ otherUseCase?: QualificationOtherUseCase;
118
+ }
119
+ export interface ContractSignature {
120
+ /**
121
+ * ID of the contract signature.
122
+ */
123
+ id: string;
124
+ /**
125
+ * The Organization ID which signed the contract.
126
+ */
127
+ organizationId: string;
128
+ /**
129
+ * The creation date of the contract signature.
130
+ */
131
+ createdAt?: Date;
132
+ /**
133
+ * The signing date of the contract signature.
134
+ */
135
+ signedAt?: Date;
136
+ /**
137
+ * The expiration date of the contract signature.
138
+ */
139
+ expiresAt?: Date;
140
+ /**
141
+ * The contract signed.
142
+ */
143
+ contract?: Contract;
144
+ }
145
+ export interface Project {
146
+ /**
147
+ * ID of the Project.
148
+ */
149
+ id: string;
150
+ /**
151
+ * Name of the Project.
152
+ */
153
+ name: string;
154
+ /**
155
+ * Organization ID of the Project.
156
+ */
157
+ organizationId: string;
158
+ /**
159
+ * Creation date of the Project.
160
+ */
161
+ createdAt?: Date;
162
+ /**
163
+ * Update date of the Project.
164
+ */
165
+ updatedAt?: Date;
166
+ /**
167
+ * Description of the Project.
168
+ */
169
+ description: string;
170
+ /**
171
+ * Qualification of the Project.
172
+ */
173
+ qualification?: Qualification;
174
+ }
175
+ export interface CheckContractSignatureResponse {
176
+ /**
177
+ * Whether a signature has been requested for this contract.
178
+ */
179
+ created: boolean;
180
+ /**
181
+ * Whether the signature for this contract has been validated.
182
+ */
183
+ validated: boolean;
184
+ }
185
+ export type ContractApiCheckContractSignatureRequest = {
186
+ /**
187
+ * ID of the Organization to check the contract signature for.
188
+ */
189
+ organizationId?: string;
190
+ /**
191
+ * Filter on contract type.
192
+ */
193
+ contractType?: ContractType;
194
+ /**
195
+ * Filter on contract name.
196
+ */
197
+ contractName: string;
198
+ };
199
+ export type ContractApiCreateContractSignatureRequest = {
200
+ /**
201
+ * The type of the contract.
202
+ */
203
+ contractType?: ContractType;
204
+ /**
205
+ * The name of the contract.
206
+ */
207
+ contractName: string;
208
+ /**
209
+ * Whether the contract is validated at creation.
210
+ */
211
+ validated: boolean;
212
+ /**
213
+ * ID of the Organization.
214
+ */
215
+ organizationId?: string;
216
+ };
217
+ export type ContractApiDownloadContractSignatureRequest = {
218
+ /**
219
+ * The contract signature ID.
220
+ */
221
+ contractSignatureId: string;
222
+ /**
223
+ * The locale requested for the content of the contract.
224
+ */
225
+ locale?: StdLanguageCode;
226
+ };
227
+ export type ContractApiListContractSignaturesRequest = {
228
+ /**
229
+ * The page number for the returned contracts.
230
+ */
231
+ page?: number;
232
+ /**
233
+ * The maximum number of contracts per page.
234
+ */
235
+ pageSize?: number;
236
+ /**
237
+ * How the contracts are ordered in the response.
238
+ */
239
+ orderBy?: ListContractSignaturesRequestOrderBy;
240
+ /**
241
+ * Filter on Organization ID.
242
+ */
243
+ organizationId?: string;
244
+ };
245
+ export type ContractApiValidateContractSignatureRequest = {
246
+ /**
247
+ * The contract linked to your Organization you want to sign.
248
+ */
249
+ contractSignatureId: string;
250
+ };
251
+ export interface ListContractSignaturesResponse {
252
+ /**
253
+ * The total number of contract signatures.
254
+ */
255
+ totalCount: number;
256
+ /**
257
+ * The paginated returned contract signatures.
258
+ */
259
+ contractSignatures: ContractSignature[];
260
+ }
261
+ export interface ListProjectsResponse {
262
+ /**
263
+ * Total number of Projects.
264
+ */
265
+ totalCount: number;
266
+ /**
267
+ * Paginated returned Projects.
268
+ */
269
+ projects: Project[];
270
+ }
271
+ export type ProjectApiCreateProjectRequest = {
272
+ /**
273
+ * Name of the Project.
274
+ */
275
+ name?: string;
276
+ /**
277
+ * Organization ID of the Project.
278
+ */
279
+ organizationId?: string;
280
+ /**
281
+ * Description of the Project.
282
+ */
283
+ description: string;
284
+ };
285
+ export type ProjectApiDeleteProjectRequest = {
286
+ /**
287
+ * Project ID of the Project.
288
+ */
289
+ projectId?: string;
290
+ };
291
+ export type ProjectApiGetProjectRequest = {
292
+ /**
293
+ * Project ID of the Project.
294
+ */
295
+ projectId?: string;
296
+ };
297
+ export type ProjectApiListProjectsRequest = {
298
+ /**
299
+ * Organization ID of the Project.
300
+ */
301
+ organizationId?: string;
302
+ /**
303
+ * Name of the Project.
304
+ */
305
+ name?: string;
306
+ /**
307
+ * Page number for the returned Projects.
308
+ */
309
+ page?: number;
310
+ /**
311
+ * Maximum number of Project per page.
312
+ */
313
+ pageSize?: number;
314
+ /**
315
+ * Sort order of the returned Projects.
316
+ */
317
+ orderBy?: ListProjectsRequestOrderBy;
318
+ /**
319
+ * Project IDs to filter for. The results will be limited to any Projects with an ID in this array.
320
+ */
321
+ projectIds?: string[];
322
+ };
323
+ export type ProjectApiSetProjectQualificationRequest = {
324
+ /**
325
+ * Project ID.
326
+ */
327
+ projectId?: string;
328
+ /**
329
+ * Use case chosen for the Project.
330
+ */
331
+ qualification?: Qualification;
332
+ };
333
+ export type ProjectApiUpdateProjectRequest = {
334
+ /**
335
+ * Project ID of the Project.
336
+ */
337
+ projectId?: string;
338
+ /**
339
+ * Name of the Project.
340
+ */
341
+ name?: string;
342
+ /**
343
+ * Description of the Project.
344
+ */
345
+ description?: string;
346
+ };
347
+ export interface ProjectQualification {
348
+ /**
349
+ * Project ID.
350
+ */
351
+ projectId: string;
352
+ /**
353
+ * Qualification of the Project.
354
+ */
355
+ qualification?: Qualification;
356
+ }