@scaleway/sdk-mongodb 2.1.1 → 2.3.0

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.
@@ -1,6 +1,6 @@
1
1
  import type { ApiLocality, WaitForOptions } from '@scaleway/sdk-client';
2
2
  import { API as ParentAPI } from '@scaleway/sdk-client';
3
- import type { CreateEndpointRequest, CreateInstanceRequest, CreateSnapshotRequest, CreateUserRequest, DeleteEndpointRequest, DeleteInstanceRequest, DeleteSnapshotRequest, DeleteUserRequest, Endpoint, GetInstanceCertificateRequest, GetInstanceRequest, GetSnapshotRequest, Instance, ListDatabasesRequest, ListDatabasesResponse, ListInstancesRequest, ListInstancesResponse, ListNodeTypesRequest, ListNodeTypesResponse, ListSnapshotsRequest, ListSnapshotsResponse, ListUsersRequest, ListUsersResponse, ListVersionsRequest, ListVersionsResponse, RestoreSnapshotRequest, SetUserRoleRequest, Snapshot, UpdateInstanceRequest, UpdateSnapshotRequest, UpdateUserRequest, UpgradeInstanceRequest, User } from './types.gen.js';
3
+ import type { ApplyMaintenanceRequest, CreateEndpointRequest, CreateInstanceRequest, CreateSnapshotRequest, CreateUserRequest, DeleteEndpointRequest, DeleteInstanceRequest, DeleteSnapshotRequest, DeleteUserRequest, Endpoint, GetInstanceCertificateRequest, GetInstanceRequest, GetMaintenanceRequest, GetSnapshotRequest, Instance, ListDatabasesRequest, ListDatabasesResponse, ListInstancesRequest, ListInstancesResponse, ListMaintenancesRequest, ListMaintenancesResponse, ListNodeTypesRequest, ListNodeTypesResponse, ListSnapshotsRequest, ListSnapshotsResponse, ListUsersRequest, ListUsersResponse, ListVersionsRequest, ListVersionsResponse, Maintenance, RestoreSnapshotRequest, SetUserRoleRequest, Snapshot, UpdateInstanceRequest, UpdateSnapshotRequest, UpdateUserRequest, UpgradeInstanceRequest, User } from './types.gen.js';
4
4
  /**
5
5
  * Managed MongoDB®.
6
6
 
@@ -211,4 +211,37 @@ export declare class API extends ParentAPI {
211
211
  * @returns A Promise of Endpoint
212
212
  */
213
213
  createEndpoint: (request: Readonly<CreateEndpointRequest>) => Promise<Endpoint>;
214
+ protected pageOfListMaintenances: (request: Readonly<ListMaintenancesRequest>) => Promise<ListMaintenancesResponse>;
215
+ /**
216
+ * List all the maintenances of a MongoDB® Database Instance.. List all the maintenances of a MongoDB® Database Instance.
217
+ *
218
+ * @param request - The request {@link ListMaintenancesRequest}
219
+ * @returns A Promise of ListMaintenancesResponse
220
+ */
221
+ listMaintenances: (request: Readonly<ListMaintenancesRequest>) => Promise<ListMaintenancesResponse> & {
222
+ all: () => Promise<Maintenance[]>;
223
+ [Symbol.asyncIterator]: () => AsyncGenerator<Maintenance[], void, void>;
224
+ };
225
+ /**
226
+ * Get a maintenance of a MongoDB® Database Instance.. Get a maintenance of a MongoDB® Database Instance.
227
+ *
228
+ * @param request - The request {@link GetMaintenanceRequest}
229
+ * @returns A Promise of Maintenance
230
+ */
231
+ getMaintenance: (request: Readonly<GetMaintenanceRequest>) => Promise<Maintenance>;
232
+ /**
233
+ * Waits for {@link Maintenance} to be in a final state.
234
+ *
235
+ * @param request - The request {@link GetMaintenanceRequest}
236
+ * @param options - The waiting options
237
+ * @returns A Promise of Maintenance
238
+ */
239
+ waitForMaintenance: (request: Readonly<GetMaintenanceRequest>, options?: Readonly<WaitForOptions<Maintenance>>) => Promise<Maintenance>;
240
+ /**
241
+ * Apply a maintenance of a MongoDB® Database Instance.. Apply a maintenance of a MongoDB® Database Instance.
242
+ *
243
+ * @param request - The request {@link ApplyMaintenanceRequest}
244
+ * @returns A Promise of Maintenance
245
+ */
246
+ applyMaintenance: (request: Readonly<ApplyMaintenanceRequest>) => Promise<Maintenance>;
214
247
  }
@@ -1,6 +1,6 @@
1
1
  import { API as API$1, toApiLocality, urlParams, validatePathParam, enrichForPagination, waitForResource } from "@scaleway/sdk-client";
2
- import { INSTANCE_TRANSIENT_STATUSES, SNAPSHOT_TRANSIENT_STATUSES } from "./content.gen.js";
3
- import { unmarshalListNodeTypesResponse, unmarshalListVersionsResponse, unmarshalListInstancesResponse, unmarshalInstance, marshalCreateInstanceRequest, marshalUpdateInstanceRequest, marshalUpgradeInstanceRequest, marshalCreateSnapshotRequest, unmarshalSnapshot, marshalUpdateSnapshotRequest, marshalRestoreSnapshotRequest, unmarshalListSnapshotsResponse, unmarshalListUsersResponse, marshalCreateUserRequest, unmarshalUser, marshalUpdateUserRequest, marshalSetUserRoleRequest, unmarshalListDatabasesResponse, marshalCreateEndpointRequest, unmarshalEndpoint } from "./marshalling.gen.js";
2
+ import { INSTANCE_TRANSIENT_STATUSES, SNAPSHOT_TRANSIENT_STATUSES, MAINTENANCE_TRANSIENT_STATUSES } from "./content.gen.js";
3
+ import { unmarshalListNodeTypesResponse, unmarshalListVersionsResponse, unmarshalListInstancesResponse, unmarshalInstance, marshalCreateInstanceRequest, marshalUpdateInstanceRequest, marshalUpgradeInstanceRequest, marshalCreateSnapshotRequest, unmarshalSnapshot, marshalUpdateSnapshotRequest, marshalRestoreSnapshotRequest, unmarshalListSnapshotsResponse, unmarshalListUsersResponse, marshalCreateUserRequest, unmarshalUser, marshalUpdateUserRequest, marshalSetUserRoleRequest, unmarshalListDatabasesResponse, marshalCreateEndpointRequest, unmarshalEndpoint, unmarshalListMaintenancesResponse, unmarshalMaintenance } from "./marshalling.gen.js";
4
4
  const jsonContentHeaders = {
5
5
  "Content-Type": "application/json; charset=utf-8"
6
6
  };
@@ -10,9 +10,7 @@ class API extends API$1 {
10
10
  * type ∈ {'zone','region','global','unspecified'}
11
11
  */
12
12
  static LOCALITY = toApiLocality({
13
- regions: [
14
- "fr-par"
15
- ]
13
+ regions: ["fr-par"]
16
14
  });
17
15
  pageOfListNodeTypes = (request = {}) => this.client.fetch(
18
16
  {
@@ -21,7 +19,10 @@ class API extends API$1 {
21
19
  urlParams: urlParams(
22
20
  ["include_disabled", request.includeDisabled],
23
21
  ["page", request.page],
24
- ["page_size", request.pageSize ?? this.client.settings.defaultPageSize]
22
+ [
23
+ "page_size",
24
+ request.pageSize ?? this.client.settings.defaultPageSize
25
+ ]
25
26
  )
26
27
  },
27
28
  unmarshalListNodeTypesResponse
@@ -39,7 +40,10 @@ class API extends API$1 {
39
40
  path: `/mongodb/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/versions`,
40
41
  urlParams: urlParams(
41
42
  ["page", request.page],
42
- ["page_size", request.pageSize ?? this.client.settings.defaultPageSize],
43
+ [
44
+ "page_size",
45
+ request.pageSize ?? this.client.settings.defaultPageSize
46
+ ],
43
47
  ["version", request.version]
44
48
  )
45
49
  },
@@ -61,7 +65,10 @@ class API extends API$1 {
61
65
  ["order_by", request.orderBy],
62
66
  ["organization_id", request.organizationId],
63
67
  ["page", request.page],
64
- ["page_size", request.pageSize ?? this.client.settings.defaultPageSize],
68
+ [
69
+ "page_size",
70
+ request.pageSize ?? this.client.settings.defaultPageSize
71
+ ],
65
72
  ["project_id", request.projectId],
66
73
  ["tags", request.tags]
67
74
  )
@@ -96,7 +103,9 @@ class API extends API$1 {
96
103
  * @returns A Promise of Instance
97
104
  */
98
105
  waitForInstance = (request, options) => waitForResource(
99
- options?.stop ?? ((res) => Promise.resolve(!INSTANCE_TRANSIENT_STATUSES.includes(res.status))),
106
+ options?.stop ?? ((res) => Promise.resolve(
107
+ !INSTANCE_TRANSIENT_STATUSES.includes(res.status)
108
+ )),
100
109
  this.getInstance,
101
110
  request,
102
111
  options
@@ -171,16 +180,12 @@ class API extends API$1 {
171
180
  * @param request - The request {@link GetInstanceCertificateRequest}
172
181
  * @returns A Promise of Blob
173
182
  */
174
- getInstanceCertificate = (request) => this.client.fetch(
175
- {
176
- method: "GET",
177
- path: `/mongodb/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/instances/${validatePathParam("instanceId", request.instanceId)}/certificate`,
178
- urlParams: urlParams(
179
- ["dl", 1]
180
- ),
181
- responseType: "blob"
182
- }
183
- );
183
+ getInstanceCertificate = (request) => this.client.fetch({
184
+ method: "GET",
185
+ path: `/mongodb/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/instances/${validatePathParam("instanceId", request.instanceId)}/certificate`,
186
+ urlParams: urlParams(["dl", 1]),
187
+ responseType: "blob"
188
+ });
184
189
  /**
185
190
  * Create a Database Instance snapshot. Create a new snapshot of a Database Instance. You must define the `name` and `instance_id` parameters in the request.
186
191
  *
@@ -219,7 +224,9 @@ class API extends API$1 {
219
224
  * @returns A Promise of Snapshot
220
225
  */
221
226
  waitForSnapshot = (request, options) => waitForResource(
222
- options?.stop ?? ((res) => Promise.resolve(!SNAPSHOT_TRANSIENT_STATUSES.includes(res.status))),
227
+ options?.stop ?? ((res) => Promise.resolve(
228
+ !SNAPSHOT_TRANSIENT_STATUSES.includes(res.status)
229
+ )),
223
230
  this.getSnapshot,
224
231
  request,
225
232
  options
@@ -268,7 +275,10 @@ class API extends API$1 {
268
275
  ["order_by", request.orderBy],
269
276
  ["organization_id", request.organizationId],
270
277
  ["page", request.page],
271
- ["page_size", request.pageSize ?? this.client.settings.defaultPageSize],
278
+ [
279
+ "page_size",
280
+ request.pageSize ?? this.client.settings.defaultPageSize
281
+ ],
272
282
  ["project_id", request.projectId]
273
283
  )
274
284
  },
@@ -302,7 +312,10 @@ class API extends API$1 {
302
312
  ["name", request.name],
303
313
  ["order_by", request.orderBy],
304
314
  ["page", request.page],
305
- ["page_size", request.pageSize ?? this.client.settings.defaultPageSize]
315
+ [
316
+ "page_size",
317
+ request.pageSize ?? this.client.settings.defaultPageSize
318
+ ]
306
319
  )
307
320
  },
308
321
  unmarshalListUsersResponse
@@ -353,12 +366,10 @@ class API extends API$1 {
353
366
  *
354
367
  * @param request - The request {@link DeleteUserRequest}
355
368
  */
356
- deleteUser = (request) => this.client.fetch(
357
- {
358
- method: "DELETE",
359
- path: `/mongodb/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/instances/${validatePathParam("instanceId", request.instanceId)}/users/${validatePathParam("name", request.name)}`
360
- }
361
- );
369
+ deleteUser = (request) => this.client.fetch({
370
+ method: "DELETE",
371
+ path: `/mongodb/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/instances/${validatePathParam("instanceId", request.instanceId)}/users/${validatePathParam("name", request.name)}`
372
+ });
362
373
  /**
363
374
  * Apply user roles. Apply preset roles for a user in a Database Instance.
364
375
  *
@@ -383,7 +394,10 @@ class API extends API$1 {
383
394
  urlParams: urlParams(
384
395
  ["order_by", request.orderBy],
385
396
  ["page", request.page],
386
- ["page_size", request.pageSize ?? this.client.settings.defaultPageSize]
397
+ [
398
+ "page_size",
399
+ request.pageSize ?? this.client.settings.defaultPageSize
400
+ ]
387
401
  )
388
402
  },
389
403
  unmarshalListDatabasesResponse
@@ -400,12 +414,10 @@ class API extends API$1 {
400
414
  *
401
415
  * @param request - The request {@link DeleteEndpointRequest}
402
416
  */
403
- deleteEndpoint = (request) => this.client.fetch(
404
- {
405
- method: "DELETE",
406
- path: `/mongodb/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/endpoints/${validatePathParam("endpointId", request.endpointId)}`
407
- }
408
- );
417
+ deleteEndpoint = (request) => this.client.fetch({
418
+ method: "DELETE",
419
+ path: `/mongodb/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/endpoints/${validatePathParam("endpointId", request.endpointId)}`
420
+ });
409
421
  /**
410
422
  * Create a new Instance endpoint. Create a new endpoint for a MongoDB® Database Instance. You can add `public_network` or `private_network` specifications to the body of the request.
411
423
  *
@@ -423,6 +435,72 @@ class API extends API$1 {
423
435
  },
424
436
  unmarshalEndpoint
425
437
  );
438
+ pageOfListMaintenances = (request) => this.client.fetch(
439
+ {
440
+ method: "GET",
441
+ path: `/mongodb/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/maintenances`,
442
+ urlParams: urlParams(
443
+ ["instance_id", request.instanceId],
444
+ ["order_by", request.orderBy],
445
+ ["page", request.page],
446
+ [
447
+ "page_size",
448
+ request.pageSize ?? this.client.settings.defaultPageSize
449
+ ]
450
+ )
451
+ },
452
+ unmarshalListMaintenancesResponse
453
+ );
454
+ /**
455
+ * List all the maintenances of a MongoDB® Database Instance.. List all the maintenances of a MongoDB® Database Instance.
456
+ *
457
+ * @param request - The request {@link ListMaintenancesRequest}
458
+ * @returns A Promise of ListMaintenancesResponse
459
+ */
460
+ listMaintenances = (request) => enrichForPagination("maintenances", this.pageOfListMaintenances, request);
461
+ /**
462
+ * Get a maintenance of a MongoDB® Database Instance.. Get a maintenance of a MongoDB® Database Instance.
463
+ *
464
+ * @param request - The request {@link GetMaintenanceRequest}
465
+ * @returns A Promise of Maintenance
466
+ */
467
+ getMaintenance = (request) => this.client.fetch(
468
+ {
469
+ method: "GET",
470
+ path: `/mongodb/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/maintenances/${validatePathParam("maintenanceId", request.maintenanceId)}`
471
+ },
472
+ unmarshalMaintenance
473
+ );
474
+ /**
475
+ * Waits for {@link Maintenance} to be in a final state.
476
+ *
477
+ * @param request - The request {@link GetMaintenanceRequest}
478
+ * @param options - The waiting options
479
+ * @returns A Promise of Maintenance
480
+ */
481
+ waitForMaintenance = (request, options) => waitForResource(
482
+ options?.stop ?? ((res) => Promise.resolve(
483
+ !MAINTENANCE_TRANSIENT_STATUSES.includes(res.status)
484
+ )),
485
+ this.getMaintenance,
486
+ request,
487
+ options
488
+ );
489
+ /**
490
+ * Apply a maintenance of a MongoDB® Database Instance.. Apply a maintenance of a MongoDB® Database Instance.
491
+ *
492
+ * @param request - The request {@link ApplyMaintenanceRequest}
493
+ * @returns A Promise of Maintenance
494
+ */
495
+ applyMaintenance = (request) => this.client.fetch(
496
+ {
497
+ body: "{}",
498
+ headers: jsonContentHeaders,
499
+ method: "POST",
500
+ path: `/mongodb/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/maintenances/${validatePathParam("maintenanceId", request.maintenanceId)}/apply`
501
+ },
502
+ unmarshalMaintenance
503
+ );
426
504
  }
427
505
  export {
428
506
  API
@@ -1,5 +1,7 @@
1
- import type { InstanceStatus, SnapshotStatus } from './types.gen.js';
1
+ import type { InstanceStatus, MaintenanceStatus, SnapshotStatus } from './types.gen.js';
2
2
  /** Lists transient statutes of the enum {@link InstanceStatus}. */
3
3
  export declare const INSTANCE_TRANSIENT_STATUSES: InstanceStatus[];
4
+ /** Lists transient statutes of the enum {@link MaintenanceStatus}. */
5
+ export declare const MAINTENANCE_TRANSIENT_STATUSES: MaintenanceStatus[];
4
6
  /** Lists transient statutes of the enum {@link SnapshotStatus}. */
5
7
  export declare const SNAPSHOT_TRANSIENT_STATUSES: SnapshotStatus[];
@@ -5,6 +5,7 @@ const INSTANCE_TRANSIENT_STATUSES = [
5
5
  "initializing",
6
6
  "snapshotting"
7
7
  ];
8
+ const MAINTENANCE_TRANSIENT_STATUSES = ["ongoing"];
8
9
  const SNAPSHOT_TRANSIENT_STATUSES = [
9
10
  "creating",
10
11
  "restoring",
@@ -12,5 +13,6 @@ const SNAPSHOT_TRANSIENT_STATUSES = [
12
13
  ];
13
14
  export {
14
15
  INSTANCE_TRANSIENT_STATUSES,
16
+ MAINTENANCE_TRANSIENT_STATUSES,
15
17
  SNAPSHOT_TRANSIENT_STATUSES
16
18
  };
@@ -1,5 +1,5 @@
1
- export { API, } from './api.gen.js';
1
+ export { API } from './api.gen.js';
2
2
  export * from './content.gen.js';
3
3
  export * from './marshalling.gen.js';
4
- export type { CreateEndpointRequest, CreateInstanceRequest, CreateSnapshotRequest, CreateUserRequest, Database, DeleteEndpointRequest, DeleteInstanceRequest, DeleteSnapshotRequest, DeleteUserRequest, Endpoint, EndpointPrivateNetworkDetails, EndpointPublicNetworkDetails, EndpointSpec, EndpointSpecPrivateNetworkDetails, EndpointSpecPublicNetworkDetails, GetInstanceCertificateRequest, GetInstanceRequest, GetSnapshotRequest, Instance, InstanceSnapshotSchedule, InstanceStatus, ListDatabasesRequest, ListDatabasesRequestOrderBy, ListDatabasesResponse, ListInstancesRequest, ListInstancesRequestOrderBy, ListInstancesResponse, ListNodeTypesRequest, ListNodeTypesResponse, ListSnapshotsRequest, ListSnapshotsRequestOrderBy, ListSnapshotsResponse, ListUsersRequest, ListUsersRequestOrderBy, ListUsersResponse, ListVersionsRequest, ListVersionsResponse, NodeType, NodeTypeStock, NodeTypeVolumeType, RestoreSnapshotRequest, SetUserRoleRequest, Snapshot, SnapshotStatus, UpdateInstanceRequest, UpdateSnapshotRequest, UpdateUserRequest, UpgradeInstanceRequest, User, UserRole, UserRoleRole, Version, Volume, VolumeType, } from './types.gen.js';
4
+ export type { ApplyMaintenanceRequest, CreateEndpointRequest, CreateInstanceRequest, CreateSnapshotRequest, CreateUserRequest, Database, DeleteEndpointRequest, DeleteInstanceRequest, DeleteSnapshotRequest, DeleteUserRequest, Endpoint, EndpointPrivateNetworkDetails, EndpointPublicNetworkDetails, EndpointSpec, EndpointSpecPrivateNetworkDetails, EndpointSpecPublicNetworkDetails, EngineUpgrade, GetInstanceCertificateRequest, GetInstanceRequest, GetMaintenanceRequest, GetSnapshotRequest, Instance, InstanceSnapshotSchedule, InstanceStatus, ListDatabasesRequest, ListDatabasesRequestOrderBy, ListDatabasesResponse, ListInstancesRequest, ListInstancesRequestOrderBy, ListInstancesResponse, ListMaintenancesRequest, ListMaintenancesRequestOrderBy, ListMaintenancesResponse, ListNodeTypesRequest, ListNodeTypesResponse, ListSnapshotsRequest, ListSnapshotsRequestOrderBy, ListSnapshotsResponse, ListUsersRequest, ListUsersRequestOrderBy, ListUsersResponse, ListVersionsRequest, ListVersionsResponse, Maintenance, MaintenanceAppliedBy, MaintenanceStatus, NodeType, NodeTypeStock, NodeTypeVolumeType, RestoreSnapshotRequest, ServiceUpdate, SetUserRoleRequest, Snapshot, SnapshotStatus, UpdateInstanceRequest, UpdateSnapshotRequest, UpdateUserRequest, UpgradeInstanceRequest, User, UserRole, UserRoleRole, Version, Volume, VolumeType, Workflow, } from './types.gen.js';
5
5
  export * as ValidationRules from './validation-rules.gen.js';
@@ -1,10 +1,11 @@
1
1
  import { API } from "./api.gen.js";
2
- import { INSTANCE_TRANSIENT_STATUSES, SNAPSHOT_TRANSIENT_STATUSES } from "./content.gen.js";
3
- import { marshalCreateEndpointRequest, marshalCreateInstanceRequest, marshalCreateSnapshotRequest, marshalCreateUserRequest, marshalRestoreSnapshotRequest, marshalSetUserRoleRequest, marshalUpdateInstanceRequest, marshalUpdateSnapshotRequest, marshalUpdateUserRequest, marshalUpgradeInstanceRequest, unmarshalEndpoint, unmarshalInstance, unmarshalListDatabasesResponse, unmarshalListInstancesResponse, unmarshalListNodeTypesResponse, unmarshalListSnapshotsResponse, unmarshalListUsersResponse, unmarshalListVersionsResponse, unmarshalSnapshot, unmarshalUser } from "./marshalling.gen.js";
2
+ import { INSTANCE_TRANSIENT_STATUSES, MAINTENANCE_TRANSIENT_STATUSES, SNAPSHOT_TRANSIENT_STATUSES } from "./content.gen.js";
3
+ import { marshalCreateEndpointRequest, marshalCreateInstanceRequest, marshalCreateSnapshotRequest, marshalCreateUserRequest, marshalRestoreSnapshotRequest, marshalSetUserRoleRequest, marshalUpdateInstanceRequest, marshalUpdateSnapshotRequest, marshalUpdateUserRequest, marshalUpgradeInstanceRequest, unmarshalEndpoint, unmarshalInstance, unmarshalListDatabasesResponse, unmarshalListInstancesResponse, unmarshalListMaintenancesResponse, unmarshalListNodeTypesResponse, unmarshalListSnapshotsResponse, unmarshalListUsersResponse, unmarshalListVersionsResponse, unmarshalMaintenance, unmarshalSnapshot, unmarshalUser } from "./marshalling.gen.js";
4
4
  import * as validationRules_gen from "./validation-rules.gen.js";
5
5
  export {
6
6
  API,
7
7
  INSTANCE_TRANSIENT_STATUSES,
8
+ MAINTENANCE_TRANSIENT_STATUSES,
8
9
  SNAPSHOT_TRANSIENT_STATUSES,
9
10
  validationRules_gen as ValidationRules,
10
11
  marshalCreateEndpointRequest,
@@ -21,10 +22,12 @@ export {
21
22
  unmarshalInstance,
22
23
  unmarshalListDatabasesResponse,
23
24
  unmarshalListInstancesResponse,
25
+ unmarshalListMaintenancesResponse,
24
26
  unmarshalListNodeTypesResponse,
25
27
  unmarshalListSnapshotsResponse,
26
28
  unmarshalListUsersResponse,
27
29
  unmarshalListVersionsResponse,
30
+ unmarshalMaintenance,
28
31
  unmarshalSnapshot,
29
32
  unmarshalUser
30
33
  };
@@ -1,11 +1,13 @@
1
1
  import type { DefaultValues } from '@scaleway/sdk-client';
2
- import type { CreateEndpointRequest, CreateInstanceRequest, CreateSnapshotRequest, CreateUserRequest, Endpoint, Instance, ListDatabasesResponse, ListInstancesResponse, ListNodeTypesResponse, ListSnapshotsResponse, ListUsersResponse, ListVersionsResponse, RestoreSnapshotRequest, SetUserRoleRequest, Snapshot, UpdateInstanceRequest, UpdateSnapshotRequest, UpdateUserRequest, UpgradeInstanceRequest, User } from './types.gen.js';
2
+ import type { CreateEndpointRequest, CreateInstanceRequest, CreateSnapshotRequest, CreateUserRequest, Endpoint, Instance, ListDatabasesResponse, ListInstancesResponse, ListMaintenancesResponse, ListNodeTypesResponse, ListSnapshotsResponse, ListUsersResponse, ListVersionsResponse, Maintenance, RestoreSnapshotRequest, SetUserRoleRequest, Snapshot, UpdateInstanceRequest, UpdateSnapshotRequest, UpdateUserRequest, UpgradeInstanceRequest, User } from './types.gen.js';
3
3
  export declare const unmarshalEndpoint: (data: unknown) => Endpoint;
4
4
  export declare const unmarshalInstance: (data: unknown) => Instance;
5
+ export declare const unmarshalMaintenance: (data: unknown) => Maintenance;
5
6
  export declare const unmarshalSnapshot: (data: unknown) => Snapshot;
6
7
  export declare const unmarshalUser: (data: unknown) => User;
7
8
  export declare const unmarshalListDatabasesResponse: (data: unknown) => ListDatabasesResponse;
8
9
  export declare const unmarshalListInstancesResponse: (data: unknown) => ListInstancesResponse;
10
+ export declare const unmarshalListMaintenancesResponse: (data: unknown) => ListMaintenancesResponse;
9
11
  export declare const unmarshalListNodeTypesResponse: (data: unknown) => ListNodeTypesResponse;
10
12
  export declare const unmarshalListSnapshotsResponse: (data: unknown) => ListSnapshotsResponse;
11
13
  export declare const unmarshalListUsersResponse: (data: unknown) => ListUsersResponse;
@@ -80,6 +80,57 @@ const unmarshalInstance = (data) => {
80
80
  volume: data.volume ? unmarshalVolume(data.volume) : void 0
81
81
  };
82
82
  };
83
+ const unmarshalEngineUpgrade = (data) => {
84
+ if (!isJSONObject(data)) {
85
+ throw new TypeError(
86
+ `Unmarshalling the type 'EngineUpgrade' failed as data isn't a dictionary.`
87
+ );
88
+ }
89
+ return {
90
+ newVersionId: data.new_version_id
91
+ };
92
+ };
93
+ const unmarshalServiceUpdate = (data) => {
94
+ if (!isJSONObject(data)) {
95
+ throw new TypeError(
96
+ `Unmarshalling the type 'ServiceUpdate' failed as data isn't a dictionary.`
97
+ );
98
+ }
99
+ return {
100
+ serviceName: data.service_name
101
+ };
102
+ };
103
+ const unmarshalWorkflow = (data) => {
104
+ if (!isJSONObject(data)) {
105
+ throw new TypeError(
106
+ `Unmarshalling the type 'Workflow' failed as data isn't a dictionary.`
107
+ );
108
+ }
109
+ return {
110
+ engineUpgrade: data.engine_upgrade ? unmarshalEngineUpgrade(data.engine_upgrade) : void 0,
111
+ serviceUpdate: data.service_update ? unmarshalServiceUpdate(data.service_update) : void 0
112
+ };
113
+ };
114
+ const unmarshalMaintenance = (data) => {
115
+ if (!isJSONObject(data)) {
116
+ throw new TypeError(
117
+ `Unmarshalling the type 'Maintenance' failed as data isn't a dictionary.`
118
+ );
119
+ }
120
+ return {
121
+ appliedAt: unmarshalDate(data.applied_at),
122
+ appliedBy: data.applied_by,
123
+ createdAt: unmarshalDate(data.created_at),
124
+ forcedAt: unmarshalDate(data.forced_at),
125
+ id: data.id,
126
+ instanceId: data.instance_id,
127
+ reason: data.reason,
128
+ startsAt: unmarshalDate(data.starts_at),
129
+ status: data.status,
130
+ stopsAt: unmarshalDate(data.stops_at),
131
+ workflow: data.workflow ? unmarshalWorkflow(data.workflow) : void 0
132
+ };
133
+ };
83
134
  const unmarshalSnapshot = (data) => {
84
135
  if (!isJSONObject(data)) {
85
136
  throw new TypeError(
@@ -156,6 +207,20 @@ const unmarshalListInstancesResponse = (data) => {
156
207
  totalCount: data.total_count
157
208
  };
158
209
  };
210
+ const unmarshalListMaintenancesResponse = (data) => {
211
+ if (!isJSONObject(data)) {
212
+ throw new TypeError(
213
+ `Unmarshalling the type 'ListMaintenancesResponse' failed as data isn't a dictionary.`
214
+ );
215
+ }
216
+ return {
217
+ maintenances: unmarshalArrayOfObject(
218
+ data.maintenances,
219
+ unmarshalMaintenance
220
+ ),
221
+ totalCount: data.total_count
222
+ };
223
+ };
159
224
  const unmarshalNodeTypeVolumeType = (data) => {
160
225
  if (!isJSONObject(data)) {
161
226
  throw new TypeError(
@@ -177,7 +242,10 @@ const unmarshalNodeType = (data) => {
177
242
  );
178
243
  }
179
244
  return {
180
- availableVolumeTypes: unmarshalArrayOfObject(data.available_volume_types, unmarshalNodeTypeVolumeType),
245
+ availableVolumeTypes: unmarshalArrayOfObject(
246
+ data.available_volume_types,
247
+ unmarshalNodeTypeVolumeType
248
+ ),
181
249
  beta: data.beta,
182
250
  description: data.description,
183
251
  disabled: data.disabled,
@@ -251,11 +319,15 @@ const marshalEndpointSpec = (request, defaults) => ({
251
319
  ...resolveOneOf([
252
320
  {
253
321
  param: "public_network",
254
- value: request.publicNetwork !== void 0 ? marshalEndpointSpecPublicNetworkDetails(request.publicNetwork) : void 0
322
+ value: request.publicNetwork !== void 0 ? marshalEndpointSpecPublicNetworkDetails(
323
+ request.publicNetwork
324
+ ) : void 0
255
325
  },
256
326
  {
257
327
  param: "private_network",
258
- value: request.privateNetwork !== void 0 ? marshalEndpointSpecPrivateNetworkDetails(request.privateNetwork) : void 0
328
+ value: request.privateNetwork !== void 0 ? marshalEndpointSpecPrivateNetworkDetails(
329
+ request.privateNetwork
330
+ ) : void 0
259
331
  }
260
332
  ])
261
333
  });
@@ -297,14 +369,8 @@ const marshalRestoreSnapshotRequest = (request, defaults) => ({
297
369
  const marshalUserRole = (request, defaults) => ({
298
370
  role: request.role,
299
371
  ...resolveOneOf([
300
- {
301
- param: "database_name",
302
- value: request.databaseName
303
- },
304
- {
305
- param: "any_database",
306
- value: request.anyDatabase
307
- }
372
+ { param: "database_name", value: request.databaseName },
373
+ { param: "any_database", value: request.anyDatabase }
308
374
  ])
309
375
  });
310
376
  const marshalSetUserRoleRequest = (request, defaults) => ({
@@ -327,10 +393,8 @@ const marshalUpdateUserRequest = (request, defaults) => ({
327
393
  });
328
394
  const marshalUpgradeInstanceRequest = (request, defaults) => ({
329
395
  ...resolveOneOf([
330
- {
331
- param: "volume_size_bytes",
332
- value: request.volumeSizeBytes
333
- }
396
+ { param: "volume_size_bytes", value: request.volumeSizeBytes },
397
+ { param: "version_id", value: request.versionId }
334
398
  ])
335
399
  });
336
400
  export {
@@ -348,10 +412,12 @@ export {
348
412
  unmarshalInstance,
349
413
  unmarshalListDatabasesResponse,
350
414
  unmarshalListInstancesResponse,
415
+ unmarshalListMaintenancesResponse,
351
416
  unmarshalListNodeTypesResponse,
352
417
  unmarshalListSnapshotsResponse,
353
418
  unmarshalListUsersResponse,
354
419
  unmarshalListVersionsResponse,
420
+ unmarshalMaintenance,
355
421
  unmarshalSnapshot,
356
422
  unmarshalUser
357
423
  };
@@ -2,8 +2,11 @@ import type { Region as ScwRegion } from '@scaleway/sdk-client';
2
2
  export type InstanceStatus = 'unknown_status' | 'ready' | 'provisioning' | 'configuring' | 'deleting' | 'error' | 'initializing' | 'locked' | 'snapshotting';
3
3
  export type ListDatabasesRequestOrderBy = 'name_asc' | 'name_desc';
4
4
  export type ListInstancesRequestOrderBy = 'created_at_asc' | 'created_at_desc' | 'name_asc' | 'name_desc' | 'status_asc' | 'status_desc';
5
+ export type ListMaintenancesRequestOrderBy = 'created_at_asc' | 'created_at_desc' | 'starts_at_asc' | 'starts_at_desc' | 'stops_at_asc' | 'stops_at_desc';
5
6
  export type ListSnapshotsRequestOrderBy = 'created_at_asc' | 'created_at_desc' | 'name_asc' | 'name_desc' | 'expires_at_asc' | 'expires_at_desc';
6
7
  export type ListUsersRequestOrderBy = 'name_asc' | 'name_desc';
8
+ export type MaintenanceAppliedBy = 'unknown_applied_by' | 'user' | 'admin';
9
+ export type MaintenanceStatus = 'unknown_status' | 'planned' | 'done' | 'cancelled' | 'ongoing';
7
10
  export type NodeTypeStock = 'unknown_stock' | 'low_stock' | 'out_of_stock' | 'available';
8
11
  export type SnapshotStatus = 'unknown_status' | 'creating' | 'ready' | 'restoring' | 'deleting' | 'error' | 'locked';
9
12
  export type UserRoleRole = 'unknown_role' | 'read' | 'read_write' | 'db_admin' | 'sync';
@@ -22,6 +25,12 @@ export interface EndpointPrivateNetworkDetails {
22
25
  */
23
26
  export interface EndpointPublicNetworkDetails {
24
27
  }
28
+ export interface EngineUpgrade {
29
+ newVersionId: string;
30
+ }
31
+ export interface ServiceUpdate {
32
+ serviceName: string;
33
+ }
25
34
  export interface EndpointSpecPrivateNetworkDetails {
26
35
  /**
27
36
  * UUID of the Private Network.
@@ -73,6 +82,18 @@ export interface Volume {
73
82
  */
74
83
  sizeBytes: number;
75
84
  }
85
+ export interface Workflow {
86
+ /**
87
+ *
88
+ * One-of ('workflowType'): at most one of 'engineUpgrade', 'serviceUpdate' could be set.
89
+ */
90
+ engineUpgrade?: EngineUpgrade;
91
+ /**
92
+ *
93
+ * One-of ('workflowType'): at most one of 'engineUpgrade', 'serviceUpdate' could be set.
94
+ */
95
+ serviceUpdate?: ServiceUpdate;
96
+ }
76
97
  export interface NodeTypeVolumeType {
77
98
  /**
78
99
  * Volume Type.
@@ -186,6 +207,52 @@ export interface Instance {
186
207
  */
187
208
  snapshotSchedule?: InstanceSnapshotSchedule;
188
209
  }
210
+ export interface Maintenance {
211
+ /**
212
+ * ID of the maintenance.
213
+ */
214
+ id: string;
215
+ /**
216
+ * ID of the instance on which the maintenance is applied.
217
+ */
218
+ instanceId: string;
219
+ /**
220
+ * Creation date of the maintenance.
221
+ */
222
+ createdAt?: Date;
223
+ /**
224
+ * Start date of the maintenance.
225
+ */
226
+ startsAt?: Date;
227
+ /**
228
+ * Stop date of the maintenance.
229
+ */
230
+ stopsAt?: Date;
231
+ /**
232
+ * Current status of the maintenance.
233
+ */
234
+ status: MaintenanceStatus;
235
+ /**
236
+ * Forced application date of the maintenance.
237
+ */
238
+ forcedAt?: Date;
239
+ /**
240
+ * Application date of the maintenance.
241
+ */
242
+ appliedAt?: Date;
243
+ /**
244
+ * Usertype who launched the maintenance.
245
+ */
246
+ appliedBy: MaintenanceAppliedBy;
247
+ /**
248
+ * Workflow to be applied during maintenance.
249
+ */
250
+ workflow?: Workflow;
251
+ /**
252
+ * Reason of the maintenance.
253
+ */
254
+ reason: string;
255
+ }
189
256
  export interface NodeType {
190
257
  /**
191
258
  * Node type name identifier.
@@ -294,6 +361,13 @@ export interface Version {
294
361
  */
295
362
  endOfLifeAt?: Date;
296
363
  }
364
+ export type ApplyMaintenanceRequest = {
365
+ /**
366
+ * Region to target. If none is passed will use default region from the config.
367
+ */
368
+ region?: ScwRegion;
369
+ maintenanceId: string;
370
+ };
297
371
  export type CreateEndpointRequest = {
298
372
  /**
299
373
  * Region to target. If none is passed will use default region from the config.
@@ -454,6 +528,16 @@ export type GetInstanceRequest = {
454
528
  */
455
529
  instanceId: string;
456
530
  };
531
+ export type GetMaintenanceRequest = {
532
+ /**
533
+ * Region to target. If none is passed will use default region from the config.
534
+ */
535
+ region?: ScwRegion;
536
+ /**
537
+ * ID of the maintenance.
538
+ */
539
+ maintenanceId: string;
540
+ };
457
541
  export type GetSnapshotRequest = {
458
542
  /**
459
543
  * Region to target. If none is passed will use default region from the config.
@@ -528,6 +612,32 @@ export interface ListInstancesResponse {
528
612
  */
529
613
  totalCount: number;
530
614
  }
615
+ export type ListMaintenancesRequest = {
616
+ /**
617
+ * Region to target. If none is passed will use default region from the config.
618
+ */
619
+ region?: ScwRegion;
620
+ /**
621
+ * ID of the instance.
622
+ */
623
+ instanceId: string;
624
+ /**
625
+ * Criteria to use when requesting user listing.
626
+ */
627
+ orderBy?: ListMaintenancesRequestOrderBy;
628
+ page?: number;
629
+ pageSize?: number;
630
+ };
631
+ export interface ListMaintenancesResponse {
632
+ /**
633
+ * List of maintenances of a MongoDB© instance.
634
+ */
635
+ maintenances: Maintenance[];
636
+ /**
637
+ * Total count of maintenances of a MongoDB© instance.
638
+ */
639
+ totalCount: number;
640
+ }
531
641
  export type ListNodeTypesRequest = {
532
642
  /**
533
643
  * Region to target. If none is passed will use default region from the config.
@@ -759,7 +869,12 @@ export type UpgradeInstanceRequest = {
759
869
  /**
760
870
  * Increase your Block Storage volume size.
761
871
  *
762
- * One-of ('upgradeTarget'): at most one of 'volumeSizeBytes' could be set.
872
+ * One-of ('upgradeTarget'): at most one of 'volumeSizeBytes', 'versionId' could be set.
763
873
  */
764
874
  volumeSizeBytes?: number;
875
+ /**
876
+ *
877
+ * One-of ('upgradeTarget'): at most one of 'volumeSizeBytes', 'versionId' could be set.
878
+ */
879
+ versionId?: string;
765
880
  };
@@ -74,6 +74,15 @@ export declare const ListInstancesRequest: {
74
74
  lessThanOrEqual: number;
75
75
  };
76
76
  };
77
+ export declare const ListMaintenancesRequest: {
78
+ page: {
79
+ greaterThanOrEqual: number;
80
+ };
81
+ pageSize: {
82
+ greaterThanOrEqual: number;
83
+ lessThanOrEqual: number;
84
+ };
85
+ };
77
86
  export declare const ListNodeTypesRequest: {
78
87
  page: {
79
88
  greaterThanOrEqual: number;
@@ -74,6 +74,15 @@ const ListInstancesRequest = {
74
74
  lessThanOrEqual: 100
75
75
  }
76
76
  };
77
+ const ListMaintenancesRequest = {
78
+ page: {
79
+ greaterThanOrEqual: 1
80
+ },
81
+ pageSize: {
82
+ greaterThanOrEqual: 1,
83
+ lessThanOrEqual: 100
84
+ }
85
+ };
77
86
  const ListNodeTypesRequest = {
78
87
  page: {
79
88
  greaterThanOrEqual: 1
@@ -186,6 +195,7 @@ export {
186
195
  DeleteUserRequest,
187
196
  ListDatabasesRequest,
188
197
  ListInstancesRequest,
198
+ ListMaintenancesRequest,
189
199
  ListNodeTypesRequest,
190
200
  ListSnapshotsRequest,
191
201
  ListUsersRequest,
@@ -10,9 +10,7 @@ class API extends API$1 {
10
10
  * type ∈ {'zone','region','global','unspecified'}
11
11
  */
12
12
  static LOCALITY = toApiLocality({
13
- regions: [
14
- "fr-par"
15
- ]
13
+ regions: ["fr-par"]
16
14
  });
17
15
  pageOfListNodeTypes = (request = {}) => this.client.fetch(
18
16
  {
@@ -21,7 +19,10 @@ class API extends API$1 {
21
19
  urlParams: urlParams(
22
20
  ["include_disabled_types", request.includeDisabledTypes],
23
21
  ["page", request.page],
24
- ["page_size", request.pageSize ?? this.client.settings.defaultPageSize]
22
+ [
23
+ "page_size",
24
+ request.pageSize ?? this.client.settings.defaultPageSize
25
+ ]
25
26
  )
26
27
  },
27
28
  unmarshalListNodeTypesResponse
@@ -39,7 +40,10 @@ class API extends API$1 {
39
40
  path: `/mongodb/v1alpha1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/versions`,
40
41
  urlParams: urlParams(
41
42
  ["page", request.page],
42
- ["page_size", request.pageSize ?? this.client.settings.defaultPageSize],
43
+ [
44
+ "page_size",
45
+ request.pageSize ?? this.client.settings.defaultPageSize
46
+ ],
43
47
  ["version", request.version]
44
48
  )
45
49
  },
@@ -61,7 +65,10 @@ class API extends API$1 {
61
65
  ["order_by", request.orderBy],
62
66
  ["organization_id", request.organizationId],
63
67
  ["page", request.page],
64
- ["page_size", request.pageSize ?? this.client.settings.defaultPageSize],
68
+ [
69
+ "page_size",
70
+ request.pageSize ?? this.client.settings.defaultPageSize
71
+ ],
65
72
  ["project_id", request.projectId],
66
73
  ["tags", request.tags]
67
74
  )
@@ -96,7 +103,9 @@ class API extends API$1 {
96
103
  * @returns A Promise of Instance
97
104
  */
98
105
  waitForInstance = (request, options) => waitForResource(
99
- options?.stop ?? ((res) => Promise.resolve(!INSTANCE_TRANSIENT_STATUSES.includes(res.status))),
106
+ options?.stop ?? ((res) => Promise.resolve(
107
+ !INSTANCE_TRANSIENT_STATUSES.includes(res.status)
108
+ )),
100
109
  this.getInstance,
101
110
  request,
102
111
  options
@@ -171,16 +180,12 @@ class API extends API$1 {
171
180
  * @param request - The request {@link GetInstanceCertificateRequest}
172
181
  * @returns A Promise of Blob
173
182
  */
174
- getInstanceCertificate = (request) => this.client.fetch(
175
- {
176
- method: "GET",
177
- path: `/mongodb/v1alpha1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/instances/${validatePathParam("instanceId", request.instanceId)}/certificate`,
178
- urlParams: urlParams(
179
- ["dl", 1]
180
- ),
181
- responseType: "blob"
182
- }
183
- );
183
+ getInstanceCertificate = (request) => this.client.fetch({
184
+ method: "GET",
185
+ path: `/mongodb/v1alpha1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/instances/${validatePathParam("instanceId", request.instanceId)}/certificate`,
186
+ urlParams: urlParams(["dl", 1]),
187
+ responseType: "blob"
188
+ });
184
189
  /**
185
190
  * Create a Database Instance snapshot. Create a new snapshot of a Database Instance. You must define the `name` and `instance_id` parameters in the request.
186
191
  *
@@ -219,7 +224,9 @@ class API extends API$1 {
219
224
  * @returns A Promise of Snapshot
220
225
  */
221
226
  waitForSnapshot = (request, options) => waitForResource(
222
- options?.stop ?? ((res) => Promise.resolve(!SNAPSHOT_TRANSIENT_STATUSES.includes(res.status))),
227
+ options?.stop ?? ((res) => Promise.resolve(
228
+ !SNAPSHOT_TRANSIENT_STATUSES.includes(res.status)
229
+ )),
223
230
  this.getSnapshot,
224
231
  request,
225
232
  options
@@ -268,7 +275,10 @@ class API extends API$1 {
268
275
  ["order_by", request.orderBy],
269
276
  ["organization_id", request.organizationId],
270
277
  ["page", request.page],
271
- ["page_size", request.pageSize ?? this.client.settings.defaultPageSize],
278
+ [
279
+ "page_size",
280
+ request.pageSize ?? this.client.settings.defaultPageSize
281
+ ],
272
282
  ["project_id", request.projectId]
273
283
  )
274
284
  },
@@ -302,7 +312,10 @@ class API extends API$1 {
302
312
  ["name", request.name],
303
313
  ["order_by", request.orderBy],
304
314
  ["page", request.page],
305
- ["page_size", request.pageSize ?? this.client.settings.defaultPageSize]
315
+ [
316
+ "page_size",
317
+ request.pageSize ?? this.client.settings.defaultPageSize
318
+ ]
306
319
  )
307
320
  },
308
321
  unmarshalListUsersResponse
@@ -353,14 +366,12 @@ class API extends API$1 {
353
366
  *
354
367
  * @param request - The request {@link DeleteUserRequest}
355
368
  */
356
- deleteUser = (request) => this.client.fetch(
357
- {
358
- body: "{}",
359
- headers: jsonContentHeaders,
360
- method: "DELETE",
361
- path: `/mongodb/v1alpha1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/instances/${validatePathParam("instanceId", request.instanceId)}/users/${validatePathParam("name", request.name)}`
362
- }
363
- );
369
+ deleteUser = (request) => this.client.fetch({
370
+ body: "{}",
371
+ headers: jsonContentHeaders,
372
+ method: "DELETE",
373
+ path: `/mongodb/v1alpha1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/instances/${validatePathParam("instanceId", request.instanceId)}/users/${validatePathParam("name", request.name)}`
374
+ });
364
375
  /**
365
376
  * Apply user roles. Apply preset roles for a user in a Database Instance.
366
377
  *
@@ -383,12 +394,10 @@ class API extends API$1 {
383
394
  *
384
395
  * @param request - The request {@link DeleteEndpointRequest}
385
396
  */
386
- deleteEndpoint = (request) => this.client.fetch(
387
- {
388
- method: "DELETE",
389
- path: `/mongodb/v1alpha1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/endpoints/${validatePathParam("endpointId", request.endpointId)}`
390
- }
391
- );
397
+ deleteEndpoint = (request) => this.client.fetch({
398
+ method: "DELETE",
399
+ path: `/mongodb/v1alpha1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/endpoints/${validatePathParam("endpointId", request.endpointId)}`
400
+ });
392
401
  /**
393
402
  * Create a new Instance endpoint. Create a new endpoint for a MongoDB® Database Instance. You can add `public_network` or `private_network` specifications to the body of the request.
394
403
  *
@@ -1,4 +1,4 @@
1
- export { API, } from './api.gen.js';
1
+ export { API } from './api.gen.js';
2
2
  export * from './content.gen.js';
3
3
  export * from './marshalling.gen.js';
4
4
  export type { CreateEndpointRequest, CreateInstanceRequest, CreateInstanceRequestVolumeDetails, CreateSnapshotRequest, CreateUserRequest, DeleteEndpointRequest, DeleteInstanceRequest, DeleteSnapshotRequest, DeleteUserRequest, Endpoint, EndpointPrivateNetworkDetails, EndpointPublicDetails, EndpointSpec, EndpointSpecPrivateNetworkDetails, EndpointSpecPublicDetails, GetInstanceCertificateRequest, GetInstanceRequest, GetSnapshotRequest, Instance, InstanceSetting, InstanceSnapshotSchedule, InstanceStatus, ListInstancesRequest, ListInstancesRequestOrderBy, ListInstancesResponse, ListNodeTypesRequest, ListNodeTypesResponse, ListSnapshotsRequest, ListSnapshotsRequestOrderBy, ListSnapshotsResponse, ListUsersRequest, ListUsersRequestOrderBy, ListUsersResponse, ListVersionsRequest, ListVersionsResponse, NodeType, NodeTypeStock, NodeTypeVolumeType, RestoreSnapshotRequest, RestoreSnapshotRequestVolumeDetails, Setting, SettingPropertyType, SetUserRoleRequest, Snapshot, SnapshotStatus, SnapshotVolumeType, UpdateInstanceRequest, UpdateSnapshotRequest, UpdateUserRequest, UpgradeInstanceRequest, User, UserRole, UserRoleRole, Version, Volume, VolumeType, } from './types.gen.js';
@@ -178,7 +178,10 @@ const unmarshalNodeType = (data) => {
178
178
  );
179
179
  }
180
180
  return {
181
- availableVolumeTypes: unmarshalArrayOfObject(data.available_volume_types, unmarshalNodeTypeVolumeType),
181
+ availableVolumeTypes: unmarshalArrayOfObject(
182
+ data.available_volume_types,
183
+ unmarshalNodeTypeVolumeType
184
+ ),
182
185
  beta: data.beta,
183
186
  description: data.description,
184
187
  disabled: data.disabled,
@@ -249,7 +252,10 @@ const unmarshalVersion = (data) => {
249
252
  );
250
253
  }
251
254
  return {
252
- availableSettings: unmarshalArrayOfObject(data.available_settings, unmarshalSetting),
255
+ availableSettings: unmarshalArrayOfObject(
256
+ data.available_settings,
257
+ unmarshalSetting
258
+ ),
253
259
  endOfLifeAt: unmarshalDate(data.end_of_life_at),
254
260
  version: data.version
255
261
  };
@@ -277,7 +283,9 @@ const marshalEndpointSpec = (request, defaults) => ({
277
283
  },
278
284
  {
279
285
  param: "private_network",
280
- value: request.privateNetwork !== void 0 ? marshalEndpointSpecPrivateNetworkDetails(request.privateNetwork) : void 0
286
+ value: request.privateNetwork !== void 0 ? marshalEndpointSpecPrivateNetworkDetails(
287
+ request.privateNetwork
288
+ ) : void 0
281
289
  }
282
290
  ])
283
291
  });
@@ -321,14 +329,8 @@ const marshalRestoreSnapshotRequest = (request, defaults) => ({
321
329
  const marshalUserRole = (request, defaults) => ({
322
330
  role: request.role,
323
331
  ...resolveOneOf([
324
- {
325
- param: "database",
326
- value: request.database
327
- },
328
- {
329
- param: "any_database",
330
- value: request.anyDatabase
331
- }
332
+ { param: "database", value: request.database },
333
+ { param: "any_database", value: request.anyDatabase }
332
334
  ])
333
335
  });
334
336
  const marshalSetUserRoleRequest = (request, defaults) => ({
@@ -347,12 +349,7 @@ const marshalUpdateUserRequest = (request, defaults) => ({
347
349
  password: request.password
348
350
  });
349
351
  const marshalUpgradeInstanceRequest = (request, defaults) => ({
350
- ...resolveOneOf([
351
- {
352
- param: "volume_size",
353
- value: request.volumeSize
354
- }
355
- ])
352
+ ...resolveOneOf([{ param: "volume_size", value: request.volumeSize }])
356
353
  });
357
354
  export {
358
355
  marshalCreateEndpointRequest,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scaleway/sdk-mongodb",
3
- "version": "2.1.1",
3
+ "version": "2.3.0",
4
4
  "description": "Scaleway SDK mongodb",
5
5
  "license": "Apache-2.0",
6
6
  "files": [