@scaleway/sdk-mongodb 1.0.4 → 1.0.6

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,189 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const CreateInstanceRequest = {
4
+ name: {
5
+ maxLength: 255,
6
+ minLength: 1,
7
+ pattern: /^[A-Za-z0-9\-_]+$/
8
+ },
9
+ nodeAmount: {
10
+ greaterThanOrEqual: 1,
11
+ lessThanOrEqual: 3
12
+ },
13
+ nodeType: {
14
+ maxLength: 128,
15
+ minLength: 1,
16
+ pattern: /^[A-Za-z0-9\-_]+$/
17
+ },
18
+ password: {
19
+ maxLength: 128,
20
+ minLength: 8
21
+ },
22
+ userName: {
23
+ maxLength: 63,
24
+ minLength: 1,
25
+ pattern: /^[a-zA-Z0-9_\-]*$/
26
+ },
27
+ version: {
28
+ pattern: /^[0-9]+\.[0-9]+$/
29
+ }
30
+ };
31
+ const CreateSnapshotRequest = {
32
+ name: {
33
+ maxLength: 255,
34
+ minLength: 1,
35
+ pattern: /^[A-Za-z0-9\-_]+$/
36
+ }
37
+ };
38
+ const CreateUserRequest = {
39
+ name: {
40
+ maxLength: 63,
41
+ minLength: 1,
42
+ pattern: /^[a-zA-Z0-9_\-]*$/
43
+ },
44
+ password: {
45
+ maxLength: 128,
46
+ minLength: 8
47
+ }
48
+ };
49
+ const DeleteUserRequest = {
50
+ name: {
51
+ maxLength: 63,
52
+ minLength: 1,
53
+ pattern: /^[a-zA-Z0-9_\-]*$/
54
+ }
55
+ };
56
+ const ListInstancesRequest = {
57
+ name: {
58
+ maxLength: 255,
59
+ minLength: 1,
60
+ pattern: /^[A-Za-z0-9\-_]+$/
61
+ },
62
+ page: {
63
+ greaterThanOrEqual: 1
64
+ },
65
+ pageSize: {
66
+ greaterThanOrEqual: 1,
67
+ lessThanOrEqual: 100
68
+ }
69
+ };
70
+ const ListNodeTypesRequest = {
71
+ page: {
72
+ greaterThanOrEqual: 1
73
+ },
74
+ pageSize: {
75
+ greaterThanOrEqual: 1,
76
+ lessThanOrEqual: 100
77
+ }
78
+ };
79
+ const ListSnapshotsRequest = {
80
+ name: {
81
+ maxLength: 255,
82
+ minLength: 1,
83
+ pattern: /^[A-Za-z0-9\-_]+$/
84
+ },
85
+ page: {
86
+ greaterThanOrEqual: 1
87
+ },
88
+ pageSize: {
89
+ greaterThanOrEqual: 1,
90
+ lessThanOrEqual: 100
91
+ }
92
+ };
93
+ const ListUsersRequest = {
94
+ name: {
95
+ maxLength: 63,
96
+ minLength: 1,
97
+ pattern: /^[a-zA-Z0-9_\-]*$/
98
+ },
99
+ page: {
100
+ greaterThanOrEqual: 1
101
+ },
102
+ pageSize: {
103
+ greaterThanOrEqual: 1,
104
+ lessThanOrEqual: 100
105
+ }
106
+ };
107
+ const ListVersionsRequest = {
108
+ page: {
109
+ greaterThanOrEqual: 1
110
+ },
111
+ pageSize: {
112
+ greaterThanOrEqual: 1,
113
+ lessThanOrEqual: 100
114
+ },
115
+ version: {
116
+ pattern: /^[0-9]+\.[0-9]+$/
117
+ }
118
+ };
119
+ const RestoreSnapshotRequest = {
120
+ instanceName: {
121
+ maxLength: 255,
122
+ minLength: 1,
123
+ pattern: /^[A-Za-z0-9\-_]+$/
124
+ },
125
+ nodeAmount: {
126
+ greaterThanOrEqual: 1,
127
+ lessThanOrEqual: 3
128
+ }
129
+ };
130
+ const SetUserRoleRequest = {
131
+ userName: {
132
+ maxLength: 63,
133
+ minLength: 1,
134
+ pattern: /^[a-zA-Z0-9_\-]*$/
135
+ }
136
+ };
137
+ const UpdateInstanceRequest = {
138
+ name: {
139
+ maxLength: 255,
140
+ minLength: 1,
141
+ pattern: /^[A-Za-z0-9\-_]+$/
142
+ },
143
+ snapshotScheduleFrequencyHours: {
144
+ greaterThanOrEqual: 1,
145
+ lessThanOrEqual: 24
146
+ },
147
+ snapshotScheduleRetentionDays: {
148
+ greaterThanOrEqual: 1,
149
+ lessThanOrEqual: 365
150
+ }
151
+ };
152
+ const UpdateSnapshotRequest = {
153
+ name: {
154
+ maxLength: 255,
155
+ minLength: 1,
156
+ pattern: /^[A-Za-z0-9\-_]+$/
157
+ }
158
+ };
159
+ const UpdateUserRequest = {
160
+ name: {
161
+ maxLength: 63,
162
+ minLength: 1,
163
+ pattern: /^[a-zA-Z0-9_\-]*$/
164
+ },
165
+ password: {
166
+ maxLength: 128,
167
+ minLength: 8
168
+ }
169
+ };
170
+ const Volume = {
171
+ sizeBytes: {
172
+ greaterThanOrEqual: 1e9
173
+ }
174
+ };
175
+ exports.CreateInstanceRequest = CreateInstanceRequest;
176
+ exports.CreateSnapshotRequest = CreateSnapshotRequest;
177
+ exports.CreateUserRequest = CreateUserRequest;
178
+ exports.DeleteUserRequest = DeleteUserRequest;
179
+ exports.ListInstancesRequest = ListInstancesRequest;
180
+ exports.ListNodeTypesRequest = ListNodeTypesRequest;
181
+ exports.ListSnapshotsRequest = ListSnapshotsRequest;
182
+ exports.ListUsersRequest = ListUsersRequest;
183
+ exports.ListVersionsRequest = ListVersionsRequest;
184
+ exports.RestoreSnapshotRequest = RestoreSnapshotRequest;
185
+ exports.SetUserRoleRequest = SetUserRoleRequest;
186
+ exports.UpdateInstanceRequest = UpdateInstanceRequest;
187
+ exports.UpdateSnapshotRequest = UpdateSnapshotRequest;
188
+ exports.UpdateUserRequest = UpdateUserRequest;
189
+ exports.Volume = Volume;
@@ -0,0 +1,172 @@
1
+ export declare const CreateInstanceRequest: {
2
+ name: {
3
+ maxLength: number;
4
+ minLength: number;
5
+ pattern: RegExp;
6
+ };
7
+ nodeAmount: {
8
+ greaterThanOrEqual: number;
9
+ lessThanOrEqual: number;
10
+ };
11
+ nodeType: {
12
+ maxLength: number;
13
+ minLength: number;
14
+ pattern: RegExp;
15
+ };
16
+ password: {
17
+ maxLength: number;
18
+ minLength: number;
19
+ };
20
+ userName: {
21
+ maxLength: number;
22
+ minLength: number;
23
+ pattern: RegExp;
24
+ };
25
+ version: {
26
+ pattern: RegExp;
27
+ };
28
+ };
29
+ export declare const CreateSnapshotRequest: {
30
+ name: {
31
+ maxLength: number;
32
+ minLength: number;
33
+ pattern: RegExp;
34
+ };
35
+ };
36
+ export declare const CreateUserRequest: {
37
+ name: {
38
+ maxLength: number;
39
+ minLength: number;
40
+ pattern: RegExp;
41
+ };
42
+ password: {
43
+ maxLength: number;
44
+ minLength: number;
45
+ };
46
+ };
47
+ export declare const DeleteUserRequest: {
48
+ name: {
49
+ maxLength: number;
50
+ minLength: number;
51
+ pattern: RegExp;
52
+ };
53
+ };
54
+ export declare const ListInstancesRequest: {
55
+ name: {
56
+ maxLength: number;
57
+ minLength: number;
58
+ pattern: RegExp;
59
+ };
60
+ page: {
61
+ greaterThanOrEqual: number;
62
+ };
63
+ pageSize: {
64
+ greaterThanOrEqual: number;
65
+ lessThanOrEqual: number;
66
+ };
67
+ };
68
+ export declare const ListNodeTypesRequest: {
69
+ page: {
70
+ greaterThanOrEqual: number;
71
+ };
72
+ pageSize: {
73
+ greaterThanOrEqual: number;
74
+ lessThanOrEqual: number;
75
+ };
76
+ };
77
+ export declare const ListSnapshotsRequest: {
78
+ name: {
79
+ maxLength: number;
80
+ minLength: number;
81
+ pattern: RegExp;
82
+ };
83
+ page: {
84
+ greaterThanOrEqual: number;
85
+ };
86
+ pageSize: {
87
+ greaterThanOrEqual: number;
88
+ lessThanOrEqual: number;
89
+ };
90
+ };
91
+ export declare const ListUsersRequest: {
92
+ name: {
93
+ maxLength: number;
94
+ minLength: number;
95
+ pattern: RegExp;
96
+ };
97
+ page: {
98
+ greaterThanOrEqual: number;
99
+ };
100
+ pageSize: {
101
+ greaterThanOrEqual: number;
102
+ lessThanOrEqual: number;
103
+ };
104
+ };
105
+ export declare const ListVersionsRequest: {
106
+ page: {
107
+ greaterThanOrEqual: number;
108
+ };
109
+ pageSize: {
110
+ greaterThanOrEqual: number;
111
+ lessThanOrEqual: number;
112
+ };
113
+ version: {
114
+ pattern: RegExp;
115
+ };
116
+ };
117
+ export declare const RestoreSnapshotRequest: {
118
+ instanceName: {
119
+ maxLength: number;
120
+ minLength: number;
121
+ pattern: RegExp;
122
+ };
123
+ nodeAmount: {
124
+ greaterThanOrEqual: number;
125
+ lessThanOrEqual: number;
126
+ };
127
+ };
128
+ export declare const SetUserRoleRequest: {
129
+ userName: {
130
+ maxLength: number;
131
+ minLength: number;
132
+ pattern: RegExp;
133
+ };
134
+ };
135
+ export declare const UpdateInstanceRequest: {
136
+ name: {
137
+ maxLength: number;
138
+ minLength: number;
139
+ pattern: RegExp;
140
+ };
141
+ snapshotScheduleFrequencyHours: {
142
+ greaterThanOrEqual: number;
143
+ lessThanOrEqual: number;
144
+ };
145
+ snapshotScheduleRetentionDays: {
146
+ greaterThanOrEqual: number;
147
+ lessThanOrEqual: number;
148
+ };
149
+ };
150
+ export declare const UpdateSnapshotRequest: {
151
+ name: {
152
+ maxLength: number;
153
+ minLength: number;
154
+ pattern: RegExp;
155
+ };
156
+ };
157
+ export declare const UpdateUserRequest: {
158
+ name: {
159
+ maxLength: number;
160
+ minLength: number;
161
+ pattern: RegExp;
162
+ };
163
+ password: {
164
+ maxLength: number;
165
+ minLength: number;
166
+ };
167
+ };
168
+ export declare const Volume: {
169
+ sizeBytes: {
170
+ greaterThanOrEqual: number;
171
+ };
172
+ };
@@ -0,0 +1,189 @@
1
+ const CreateInstanceRequest = {
2
+ name: {
3
+ maxLength: 255,
4
+ minLength: 1,
5
+ pattern: /^[A-Za-z0-9\-_]+$/
6
+ },
7
+ nodeAmount: {
8
+ greaterThanOrEqual: 1,
9
+ lessThanOrEqual: 3
10
+ },
11
+ nodeType: {
12
+ maxLength: 128,
13
+ minLength: 1,
14
+ pattern: /^[A-Za-z0-9\-_]+$/
15
+ },
16
+ password: {
17
+ maxLength: 128,
18
+ minLength: 8
19
+ },
20
+ userName: {
21
+ maxLength: 63,
22
+ minLength: 1,
23
+ pattern: /^[a-zA-Z0-9_\-]*$/
24
+ },
25
+ version: {
26
+ pattern: /^[0-9]+\.[0-9]+$/
27
+ }
28
+ };
29
+ const CreateSnapshotRequest = {
30
+ name: {
31
+ maxLength: 255,
32
+ minLength: 1,
33
+ pattern: /^[A-Za-z0-9\-_]+$/
34
+ }
35
+ };
36
+ const CreateUserRequest = {
37
+ name: {
38
+ maxLength: 63,
39
+ minLength: 1,
40
+ pattern: /^[a-zA-Z0-9_\-]*$/
41
+ },
42
+ password: {
43
+ maxLength: 128,
44
+ minLength: 8
45
+ }
46
+ };
47
+ const DeleteUserRequest = {
48
+ name: {
49
+ maxLength: 63,
50
+ minLength: 1,
51
+ pattern: /^[a-zA-Z0-9_\-]*$/
52
+ }
53
+ };
54
+ const ListInstancesRequest = {
55
+ name: {
56
+ maxLength: 255,
57
+ minLength: 1,
58
+ pattern: /^[A-Za-z0-9\-_]+$/
59
+ },
60
+ page: {
61
+ greaterThanOrEqual: 1
62
+ },
63
+ pageSize: {
64
+ greaterThanOrEqual: 1,
65
+ lessThanOrEqual: 100
66
+ }
67
+ };
68
+ const ListNodeTypesRequest = {
69
+ page: {
70
+ greaterThanOrEqual: 1
71
+ },
72
+ pageSize: {
73
+ greaterThanOrEqual: 1,
74
+ lessThanOrEqual: 100
75
+ }
76
+ };
77
+ const ListSnapshotsRequest = {
78
+ name: {
79
+ maxLength: 255,
80
+ minLength: 1,
81
+ pattern: /^[A-Za-z0-9\-_]+$/
82
+ },
83
+ page: {
84
+ greaterThanOrEqual: 1
85
+ },
86
+ pageSize: {
87
+ greaterThanOrEqual: 1,
88
+ lessThanOrEqual: 100
89
+ }
90
+ };
91
+ const ListUsersRequest = {
92
+ name: {
93
+ maxLength: 63,
94
+ minLength: 1,
95
+ pattern: /^[a-zA-Z0-9_\-]*$/
96
+ },
97
+ page: {
98
+ greaterThanOrEqual: 1
99
+ },
100
+ pageSize: {
101
+ greaterThanOrEqual: 1,
102
+ lessThanOrEqual: 100
103
+ }
104
+ };
105
+ const ListVersionsRequest = {
106
+ page: {
107
+ greaterThanOrEqual: 1
108
+ },
109
+ pageSize: {
110
+ greaterThanOrEqual: 1,
111
+ lessThanOrEqual: 100
112
+ },
113
+ version: {
114
+ pattern: /^[0-9]+\.[0-9]+$/
115
+ }
116
+ };
117
+ const RestoreSnapshotRequest = {
118
+ instanceName: {
119
+ maxLength: 255,
120
+ minLength: 1,
121
+ pattern: /^[A-Za-z0-9\-_]+$/
122
+ },
123
+ nodeAmount: {
124
+ greaterThanOrEqual: 1,
125
+ lessThanOrEqual: 3
126
+ }
127
+ };
128
+ const SetUserRoleRequest = {
129
+ userName: {
130
+ maxLength: 63,
131
+ minLength: 1,
132
+ pattern: /^[a-zA-Z0-9_\-]*$/
133
+ }
134
+ };
135
+ const UpdateInstanceRequest = {
136
+ name: {
137
+ maxLength: 255,
138
+ minLength: 1,
139
+ pattern: /^[A-Za-z0-9\-_]+$/
140
+ },
141
+ snapshotScheduleFrequencyHours: {
142
+ greaterThanOrEqual: 1,
143
+ lessThanOrEqual: 24
144
+ },
145
+ snapshotScheduleRetentionDays: {
146
+ greaterThanOrEqual: 1,
147
+ lessThanOrEqual: 365
148
+ }
149
+ };
150
+ const UpdateSnapshotRequest = {
151
+ name: {
152
+ maxLength: 255,
153
+ minLength: 1,
154
+ pattern: /^[A-Za-z0-9\-_]+$/
155
+ }
156
+ };
157
+ const UpdateUserRequest = {
158
+ name: {
159
+ maxLength: 63,
160
+ minLength: 1,
161
+ pattern: /^[a-zA-Z0-9_\-]*$/
162
+ },
163
+ password: {
164
+ maxLength: 128,
165
+ minLength: 8
166
+ }
167
+ };
168
+ const Volume = {
169
+ sizeBytes: {
170
+ greaterThanOrEqual: 1e9
171
+ }
172
+ };
173
+ export {
174
+ CreateInstanceRequest,
175
+ CreateSnapshotRequest,
176
+ CreateUserRequest,
177
+ DeleteUserRequest,
178
+ ListInstancesRequest,
179
+ ListNodeTypesRequest,
180
+ ListSnapshotsRequest,
181
+ ListUsersRequest,
182
+ ListVersionsRequest,
183
+ RestoreSnapshotRequest,
184
+ SetUserRoleRequest,
185
+ UpdateInstanceRequest,
186
+ UpdateSnapshotRequest,
187
+ UpdateUserRequest,
188
+ Volume
189
+ };
@@ -7,8 +7,13 @@ const jsonContentHeaders = {
7
7
  "Content-Type": "application/json; charset=utf-8"
8
8
  };
9
9
  class API extends sdkClient.API {
10
- /** Lists the available regions of the API. */
11
- static LOCALITIES = ["fr-par"];
10
+ /**
11
+ * Locality of this API.
12
+ * type ∈ {'zone','region','global','unspecified'}
13
+ */
14
+ static LOCALITY = sdkClient.toApiLocality({
15
+ regions: ["fr-par"]
16
+ });
12
17
  pageOfListNodeTypes = (request = {}) => this.client.fetch(
13
18
  {
14
19
  method: "GET",
@@ -1,5 +1,5 @@
1
1
  import { API as ParentAPI } from '@scaleway/sdk-client';
2
- import type { Region as ScwRegion, WaitForOptions } from '@scaleway/sdk-client';
2
+ import type { ApiLocality, WaitForOptions } from '@scaleway/sdk-client';
3
3
  import type { CreateEndpointRequest, CreateInstanceRequest, CreateSnapshotRequest, CreateUserRequest, DeleteEndpointRequest, DeleteInstanceRequest, DeleteSnapshotRequest, DeleteUserRequest, Endpoint, GetInstanceCertificateRequest, GetInstanceRequest, GetSnapshotRequest, Instance, ListInstancesRequest, ListInstancesResponse, ListNodeTypesRequest, ListNodeTypesResponse, ListSnapshotsRequest, ListSnapshotsResponse, ListUsersRequest, ListUsersResponse, ListVersionsRequest, ListVersionsResponse, RestoreSnapshotRequest, SetUserRoleRequest, Snapshot, UpdateInstanceRequest, UpdateSnapshotRequest, UpdateUserRequest, UpgradeInstanceRequest, User } from './types.gen';
4
4
  /**
5
5
  * Managed MongoDB®.
@@ -7,8 +7,11 @@ import type { CreateEndpointRequest, CreateInstanceRequest, CreateSnapshotReques
7
7
  This API allows you to manage your Managed Databases for MongoDB®.
8
8
  */
9
9
  export declare class API extends ParentAPI {
10
- /** Lists the available regions of the API. */
11
- static readonly LOCALITIES: ScwRegion[];
10
+ /**
11
+ * Locality of this API.
12
+ * type ∈ {'zone','region','global','unspecified'}
13
+ */
14
+ static readonly LOCALITY: ApiLocality;
12
15
  protected pageOfListNodeTypes: (request?: Readonly<ListNodeTypesRequest>) => Promise<ListNodeTypesResponse>;
13
16
  /**
14
17
  * List available node types.
@@ -1,12 +1,17 @@
1
- import { API as API$1, urlParams, validatePathParam, enrichForPagination, waitForResource } from "@scaleway/sdk-client";
1
+ import { API as API$1, toApiLocality, urlParams, validatePathParam, enrichForPagination, waitForResource } from "@scaleway/sdk-client";
2
2
  import { INSTANCE_TRANSIENT_STATUSES, SNAPSHOT_TRANSIENT_STATUSES } from "./content.gen.js";
3
3
  import { unmarshalListNodeTypesResponse, unmarshalListVersionsResponse, unmarshalListInstancesResponse, unmarshalInstance, marshalCreateInstanceRequest, marshalUpdateInstanceRequest, marshalUpgradeInstanceRequest, marshalCreateSnapshotRequest, unmarshalSnapshot, marshalUpdateSnapshotRequest, marshalRestoreSnapshotRequest, unmarshalListSnapshotsResponse, unmarshalListUsersResponse, marshalCreateUserRequest, unmarshalUser, marshalUpdateUserRequest, marshalSetUserRoleRequest, marshalCreateEndpointRequest, unmarshalEndpoint } from "./marshalling.gen.js";
4
4
  const jsonContentHeaders = {
5
5
  "Content-Type": "application/json; charset=utf-8"
6
6
  };
7
7
  class API extends API$1 {
8
- /** Lists the available regions of the API. */
9
- static LOCALITIES = ["fr-par"];
8
+ /**
9
+ * Locality of this API.
10
+ * type ∈ {'zone','region','global','unspecified'}
11
+ */
12
+ static LOCALITY = toApiLocality({
13
+ regions: ["fr-par"]
14
+ });
10
15
  pageOfListNodeTypes = (request = {}) => this.client.fetch(
11
16
  {
12
17
  method: "GET",
@@ -20,6 +20,7 @@ exports.marshalUpgradeInstanceRequest = marshalling_gen.marshalUpgradeInstanceRe
20
20
  exports.unmarshalEndpoint = marshalling_gen.unmarshalEndpoint;
21
21
  exports.unmarshalInstance = marshalling_gen.unmarshalInstance;
22
22
  exports.unmarshalInstanceSetting = marshalling_gen.unmarshalInstanceSetting;
23
+ exports.unmarshalInstanceSnapshotSchedule = marshalling_gen.unmarshalInstanceSnapshotSchedule;
23
24
  exports.unmarshalListInstancesResponse = marshalling_gen.unmarshalListInstancesResponse;
24
25
  exports.unmarshalListNodeTypesResponse = marshalling_gen.unmarshalListNodeTypesResponse;
25
26
  exports.unmarshalListSnapshotsResponse = marshalling_gen.unmarshalListSnapshotsResponse;
@@ -1,5 +1,5 @@
1
1
  export { API } from './api.gen';
2
2
  export * from './content.gen';
3
3
  export * from './marshalling.gen';
4
- export type { CreateEndpointRequest, CreateInstanceRequest, CreateInstanceRequestVolumeDetails, CreateSnapshotRequest, CreateUserRequest, DeleteEndpointRequest, DeleteInstanceRequest, DeleteSnapshotRequest, DeleteUserRequest, Endpoint, EndpointPrivateNetworkDetails, EndpointPublicDetails, EndpointSpec, EndpointSpecPrivateNetworkDetails, EndpointSpecPublicDetails, GetInstanceCertificateRequest, GetInstanceRequest, GetSnapshotRequest, Instance, InstanceSetting, InstanceStatus, ListInstancesRequest, ListInstancesRequestOrderBy, ListInstancesResponse, ListNodeTypesRequest, ListNodeTypesResponse, ListSnapshotsRequest, ListSnapshotsRequestOrderBy, ListSnapshotsResponse, ListUsersRequest, ListUsersRequestOrderBy, ListUsersResponse, ListVersionsRequest, ListVersionsResponse, NodeType, NodeTypeStock, NodeTypeVolumeType, RestoreSnapshotRequest, RestoreSnapshotRequestVolumeDetails, SetUserRoleRequest, Setting, SettingPropertyType, Snapshot, SnapshotStatus, SnapshotVolumeType, UpdateInstanceRequest, UpdateSnapshotRequest, UpdateUserRequest, UpgradeInstanceRequest, User, UserRole, UserRoleRole, Version, Volume, VolumeType, } from './types.gen';
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, SetUserRoleRequest, Setting, SettingPropertyType, Snapshot, SnapshotStatus, SnapshotVolumeType, UpdateInstanceRequest, UpdateSnapshotRequest, UpdateUserRequest, UpgradeInstanceRequest, User, UserRole, UserRoleRole, Version, Volume, VolumeType, } from './types.gen';
5
5
  export * as ValidationRules from './validation-rules.gen';
@@ -1,6 +1,6 @@
1
1
  import { API } from "./api.gen.js";
2
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, unmarshalInstanceSetting, unmarshalListInstancesResponse, unmarshalListNodeTypesResponse, unmarshalListSnapshotsResponse, unmarshalListUsersResponse, unmarshalListVersionsResponse, unmarshalSnapshot, unmarshalUser, unmarshalVolume } from "./marshalling.gen.js";
3
+ import { marshalCreateEndpointRequest, marshalCreateInstanceRequest, marshalCreateSnapshotRequest, marshalCreateUserRequest, marshalRestoreSnapshotRequest, marshalSetUserRoleRequest, marshalUpdateInstanceRequest, marshalUpdateSnapshotRequest, marshalUpdateUserRequest, marshalUpgradeInstanceRequest, unmarshalEndpoint, unmarshalInstance, unmarshalInstanceSetting, unmarshalInstanceSnapshotSchedule, unmarshalListInstancesResponse, unmarshalListNodeTypesResponse, unmarshalListSnapshotsResponse, unmarshalListUsersResponse, unmarshalListVersionsResponse, unmarshalSnapshot, unmarshalUser, unmarshalVolume } from "./marshalling.gen.js";
4
4
  import * as validationRules_gen from "./validation-rules.gen.js";
5
5
  export {
6
6
  API,
@@ -20,6 +20,7 @@ export {
20
20
  unmarshalEndpoint,
21
21
  unmarshalInstance,
22
22
  unmarshalInstanceSetting,
23
+ unmarshalInstanceSnapshotSchedule,
23
24
  unmarshalListInstancesResponse,
24
25
  unmarshalListNodeTypesResponse,
25
26
  unmarshalListSnapshotsResponse,
@@ -46,6 +46,20 @@ const unmarshalInstanceSetting = (data) => {
46
46
  value: data.value
47
47
  };
48
48
  };
49
+ const unmarshalInstanceSnapshotSchedule = (data) => {
50
+ if (!sdkClient.isJSONObject(data)) {
51
+ throw new TypeError(
52
+ `Unmarshalling the type 'InstanceSnapshotSchedule' failed as data isn't a dictionary.`
53
+ );
54
+ }
55
+ return {
56
+ enabled: data.enabled,
57
+ frequencyHours: data.frequency_hours,
58
+ lastRun: sdkClient.unmarshalDate(data.last_run),
59
+ nextUpdate: sdkClient.unmarshalDate(data.next_update),
60
+ retentionDays: data.retention_days
61
+ };
62
+ };
49
63
  const unmarshalVolume = (data) => {
50
64
  if (!sdkClient.isJSONObject(data)) {
51
65
  throw new TypeError(
@@ -73,6 +87,7 @@ const unmarshalInstance = (data) => {
73
87
  projectId: data.project_id,
74
88
  region: data.region,
75
89
  settings: sdkClient.unmarshalArrayOfObject(data.settings, unmarshalInstanceSetting),
90
+ snapshotSchedule: data.snapshot_schedule ? unmarshalInstanceSnapshotSchedule(data.snapshot_schedule) : void 0,
76
91
  status: data.status,
77
92
  tags: data.tags,
78
93
  version: data.version,
@@ -351,6 +366,7 @@ exports.marshalUpgradeInstanceRequest = marshalUpgradeInstanceRequest;
351
366
  exports.unmarshalEndpoint = unmarshalEndpoint;
352
367
  exports.unmarshalInstance = unmarshalInstance;
353
368
  exports.unmarshalInstanceSetting = unmarshalInstanceSetting;
369
+ exports.unmarshalInstanceSnapshotSchedule = unmarshalInstanceSnapshotSchedule;
354
370
  exports.unmarshalListInstancesResponse = unmarshalListInstancesResponse;
355
371
  exports.unmarshalListNodeTypesResponse = unmarshalListNodeTypesResponse;
356
372
  exports.unmarshalListSnapshotsResponse = unmarshalListSnapshotsResponse;
@@ -1,7 +1,8 @@
1
1
  import type { DefaultValues } from '@scaleway/sdk-client';
2
- import type { CreateEndpointRequest, CreateInstanceRequest, CreateSnapshotRequest, CreateUserRequest, Endpoint, Instance, InstanceSetting, ListInstancesResponse, ListNodeTypesResponse, ListSnapshotsResponse, ListUsersResponse, ListVersionsResponse, RestoreSnapshotRequest, SetUserRoleRequest, Snapshot, UpdateInstanceRequest, UpdateSnapshotRequest, UpdateUserRequest, UpgradeInstanceRequest, User, Volume } from './types.gen';
2
+ import type { CreateEndpointRequest, CreateInstanceRequest, CreateSnapshotRequest, CreateUserRequest, Endpoint, Instance, InstanceSetting, InstanceSnapshotSchedule, ListInstancesResponse, ListNodeTypesResponse, ListSnapshotsResponse, ListUsersResponse, ListVersionsResponse, RestoreSnapshotRequest, SetUserRoleRequest, Snapshot, UpdateInstanceRequest, UpdateSnapshotRequest, UpdateUserRequest, UpgradeInstanceRequest, User, Volume } from './types.gen';
3
3
  export declare const unmarshalEndpoint: (data: unknown) => Endpoint;
4
4
  export declare const unmarshalInstanceSetting: (data: unknown) => InstanceSetting;
5
+ export declare const unmarshalInstanceSnapshotSchedule: (data: unknown) => InstanceSnapshotSchedule;
5
6
  export declare const unmarshalVolume: (data: unknown) => Volume;
6
7
  export declare const unmarshalInstance: (data: unknown) => Instance;
7
8
  export declare const unmarshalSnapshot: (data: unknown) => Snapshot;