@scaleway/sdk-product-catalog 2.3.0 → 2.4.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.
@@ -7,28 +7,29 @@ class PublicCatalogAPI extends API {
7
7
  path: `/product-catalog/v2alpha1/public-catalog/products`,
8
8
  urlParams: urlParams(
9
9
  ["page", request.page],
10
- [
11
- "page_size",
12
- request.pageSize ?? this.client.settings.defaultPageSize
13
- ],
10
+ ["page_size", request.pageSize ?? this.client.settings.defaultPageSize],
14
11
  ["product_types", request.productTypes],
15
12
  ["status", request.status],
16
- ...Object.entries(
17
- resolveOneOf([
18
- { param: "global", value: request.global },
19
- {
20
- default: this.client.settings.defaultRegion,
21
- param: "region",
22
- value: request.region
23
- },
24
- {
25
- default: this.client.settings.defaultZone,
26
- param: "zone",
27
- value: request.zone
28
- },
29
- { param: "datacenter", value: request.datacenter }
30
- ])
31
- )
13
+ ...Object.entries(resolveOneOf([
14
+ {
15
+ param: "global",
16
+ value: request.global
17
+ },
18
+ {
19
+ default: this.client.settings.defaultRegion,
20
+ param: "region",
21
+ value: request.region
22
+ },
23
+ {
24
+ default: this.client.settings.defaultZone,
25
+ param: "zone",
26
+ value: request.zone
27
+ },
28
+ {
29
+ param: "datacenter",
30
+ value: request.datacenter
31
+ }
32
+ ]))
32
33
  )
33
34
  },
34
35
  unmarshalListPublicCatalogProductsResponse
@@ -39,11 +40,7 @@ class PublicCatalogAPI extends API {
39
40
  * @param request - The request {@link PublicCatalogApiListPublicCatalogProductsRequest}
40
41
  * @returns A Promise of ListPublicCatalogProductsResponse
41
42
  */
42
- listPublicCatalogProducts = (request = {}) => enrichForPagination(
43
- "products",
44
- this.pageOfListPublicCatalogProducts,
45
- request
46
- );
43
+ listPublicCatalogProducts = (request = {}) => enrichForPagination("products", this.pageOfListPublicCatalogProducts, request);
47
44
  }
48
45
  export {
49
46
  PublicCatalogAPI
@@ -1,4 +1,4 @@
1
- export { PublicCatalogAPI } from './api.gen.js';
1
+ export { PublicCatalogAPI, } from './api.gen.js';
2
2
  export * from './marshalling.gen.js';
3
- export type { ListPublicCatalogProductsRequestProductType, ListPublicCatalogProductsRequestStatus, ListPublicCatalogProductsResponse, PublicCatalogApiListPublicCatalogProductsRequest, PublicCatalogProduct, PublicCatalogProductEnvironmentalImpactEstimation, PublicCatalogProductLocality, PublicCatalogProductPrice, PublicCatalogProductProductBadge, PublicCatalogProductProperties, PublicCatalogProductPropertiesAppleSilicon, PublicCatalogProductPropertiesBlockStorage, PublicCatalogProductPropertiesDedibox, PublicCatalogProductPropertiesElasticMetal, PublicCatalogProductPropertiesGenerativeApis, PublicCatalogProductPropertiesGenerativeApisConsumptionMode, PublicCatalogProductPropertiesHardware, PublicCatalogProductPropertiesHardwareCPU, PublicCatalogProductPropertiesHardwareCPUArch, PublicCatalogProductPropertiesHardwareCPUPhysical, PublicCatalogProductPropertiesHardwareCPUVirtual, PublicCatalogProductPropertiesHardwareGPU, PublicCatalogProductPropertiesHardwareNetwork, PublicCatalogProductPropertiesHardwareRAM, PublicCatalogProductPropertiesHardwareStorage, PublicCatalogProductPropertiesInstance, PublicCatalogProductPropertiesKeyManager, PublicCatalogProductPropertiesLoadBalancer, PublicCatalogProductPropertiesManagedInference, PublicCatalogProductPropertiesManagedRedisDatabase, PublicCatalogProductPropertiesObjectStorage, PublicCatalogProductPropertiesObjectStorageClassType, PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass, PublicCatalogProductPropertiesObjectStorageInternetTrafficType, PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType, PublicCatalogProductPropertiesObjectStorageRegionTrafficType, PublicCatalogProductPropertiesObjectStorageRestoreType, PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType, PublicCatalogProductPropertiesSecretManager, PublicCatalogProductStatus, PublicCatalogProductUnitOfMeasure, PublicCatalogProductUnitOfMeasureCountableUnit, } from './types.gen.js';
3
+ export type { ListPublicCatalogProductsRequestProductType, ListPublicCatalogProductsRequestStatus, ListPublicCatalogProductsResponse, PublicCatalogApiListPublicCatalogProductsRequest, PublicCatalogProduct, PublicCatalogProductEnvironmentalImpactEstimation, PublicCatalogProductLocality, PublicCatalogProductPrice, PublicCatalogProductProductBadge, PublicCatalogProductProperties, PublicCatalogProductPropertiesAppleSilicon, PublicCatalogProductPropertiesBlockStorage, PublicCatalogProductPropertiesDedibox, PublicCatalogProductPropertiesElasticMetal, PublicCatalogProductPropertiesGenerativeApis, PublicCatalogProductPropertiesGenerativeApisConsumptionMode, PublicCatalogProductPropertiesHardware, PublicCatalogProductPropertiesHardwareCPU, PublicCatalogProductPropertiesHardwareCPUArch, PublicCatalogProductPropertiesHardwareCPUPhysical, PublicCatalogProductPropertiesHardwareCPUVirtual, PublicCatalogProductPropertiesHardwareGPU, PublicCatalogProductPropertiesHardwareNetwork, PublicCatalogProductPropertiesHardwareRAM, PublicCatalogProductPropertiesHardwareStorage, PublicCatalogProductPropertiesInstance, PublicCatalogProductPropertiesKeyManager, PublicCatalogProductPropertiesKubernetes, PublicCatalogProductPropertiesKubernetesKapsuleControlPlaneType, PublicCatalogProductPropertiesKubernetesKosmosControlPlaneType, PublicCatalogProductPropertiesKubernetesKosmosNodeType, PublicCatalogProductPropertiesLoadBalancer, PublicCatalogProductPropertiesManagedInference, PublicCatalogProductPropertiesManagedRedisDatabase, PublicCatalogProductPropertiesManagedRelationalDatabase, PublicCatalogProductPropertiesManagedRelationalDatabaseManagementType, PublicCatalogProductPropertiesManagedRelationalDatabaseMultiAzType, PublicCatalogProductPropertiesManagedRelationalDatabaseNodeType, PublicCatalogProductPropertiesManagedRelationalDatabaseStorageType, PublicCatalogProductPropertiesManagedRelationalDatabaseStorageTypeStorageClass, PublicCatalogProductPropertiesObjectStorage, PublicCatalogProductPropertiesObjectStorageClassType, PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass, PublicCatalogProductPropertiesObjectStorageInternetTrafficType, PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType, PublicCatalogProductPropertiesObjectStorageRegionTrafficType, PublicCatalogProductPropertiesObjectStorageRestoreType, PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType, PublicCatalogProductPropertiesSecretManager, PublicCatalogProductStatus, PublicCatalogProductUnitOfMeasure, PublicCatalogProductUnitOfMeasureCountableUnit, } from './types.gen.js';
4
4
  export * as ValidationRules from './validation-rules.gen.js';
@@ -32,9 +32,7 @@ const unmarshalPublicCatalogProductPropertiesHardwareCPU = (data) => {
32
32
  return {
33
33
  arch: data.arch,
34
34
  description: data.description,
35
- physical: data.physical ? unmarshalPublicCatalogProductPropertiesHardwareCPUPhysical(
36
- data.physical
37
- ) : void 0,
35
+ physical: data.physical ? unmarshalPublicCatalogProductPropertiesHardwareCPUPhysical(data.physical) : void 0,
38
36
  threads: data.threads,
39
37
  type: data.type,
40
38
  virtual: data.virtual ? unmarshalPublicCatalogProductPropertiesHardwareCPUVirtual(data.virtual) : void 0
@@ -88,6 +86,64 @@ const unmarshalPublicCatalogProductPropertiesHardwareStorage = (data) => {
88
86
  total: data.total
89
87
  };
90
88
  };
89
+ const unmarshalPublicCatalogProductPropertiesKubernetesKapsuleControlPlaneType = (data) => {
90
+ if (!isJSONObject(data)) {
91
+ throw new TypeError(
92
+ `Unmarshalling the type 'PublicCatalogProductPropertiesKubernetesKapsuleControlPlaneType' failed as data isn't a dictionary.`
93
+ );
94
+ }
95
+ return {};
96
+ };
97
+ const unmarshalPublicCatalogProductPropertiesKubernetesKosmosControlPlaneType = (data) => {
98
+ if (!isJSONObject(data)) {
99
+ throw new TypeError(
100
+ `Unmarshalling the type 'PublicCatalogProductPropertiesKubernetesKosmosControlPlaneType' failed as data isn't a dictionary.`
101
+ );
102
+ }
103
+ return {};
104
+ };
105
+ const unmarshalPublicCatalogProductPropertiesKubernetesKosmosNodeType = (data) => {
106
+ if (!isJSONObject(data)) {
107
+ throw new TypeError(
108
+ `Unmarshalling the type 'PublicCatalogProductPropertiesKubernetesKosmosNodeType' failed as data isn't a dictionary.`
109
+ );
110
+ }
111
+ return {};
112
+ };
113
+ const unmarshalPublicCatalogProductPropertiesManagedRelationalDatabaseManagementType = (data) => {
114
+ if (!isJSONObject(data)) {
115
+ throw new TypeError(
116
+ `Unmarshalling the type 'PublicCatalogProductPropertiesManagedRelationalDatabaseManagementType' failed as data isn't a dictionary.`
117
+ );
118
+ }
119
+ return {};
120
+ };
121
+ const unmarshalPublicCatalogProductPropertiesManagedRelationalDatabaseMultiAzType = (data) => {
122
+ if (!isJSONObject(data)) {
123
+ throw new TypeError(
124
+ `Unmarshalling the type 'PublicCatalogProductPropertiesManagedRelationalDatabaseMultiAzType' failed as data isn't a dictionary.`
125
+ );
126
+ }
127
+ return {};
128
+ };
129
+ const unmarshalPublicCatalogProductPropertiesManagedRelationalDatabaseNodeType = (data) => {
130
+ if (!isJSONObject(data)) {
131
+ throw new TypeError(
132
+ `Unmarshalling the type 'PublicCatalogProductPropertiesManagedRelationalDatabaseNodeType' failed as data isn't a dictionary.`
133
+ );
134
+ }
135
+ return {};
136
+ };
137
+ const unmarshalPublicCatalogProductPropertiesManagedRelationalDatabaseStorageType = (data) => {
138
+ if (!isJSONObject(data)) {
139
+ throw new TypeError(
140
+ `Unmarshalling the type 'PublicCatalogProductPropertiesManagedRelationalDatabaseStorageType' failed as data isn't a dictionary.`
141
+ );
142
+ }
143
+ return {
144
+ storageClass: data.storage_class
145
+ };
146
+ };
91
147
  const unmarshalPublicCatalogProductPropertiesObjectStorageClassType = (data) => {
92
148
  if (!isJSONObject(data)) {
93
149
  throw new TypeError(
@@ -218,6 +274,18 @@ const unmarshalPublicCatalogProductPropertiesKeyManager = (data) => {
218
274
  }
219
275
  return {};
220
276
  };
277
+ const unmarshalPublicCatalogProductPropertiesKubernetes = (data) => {
278
+ if (!isJSONObject(data)) {
279
+ throw new TypeError(
280
+ `Unmarshalling the type 'PublicCatalogProductPropertiesKubernetes' failed as data isn't a dictionary.`
281
+ );
282
+ }
283
+ return {
284
+ kapsuleControlPlane: data.kapsule_control_plane ? unmarshalPublicCatalogProductPropertiesKubernetesKapsuleControlPlaneType(data.kapsule_control_plane) : void 0,
285
+ kosmosControlPlane: data.kosmos_control_plane ? unmarshalPublicCatalogProductPropertiesKubernetesKosmosControlPlaneType(data.kosmos_control_plane) : void 0,
286
+ kosmosNode: data.kosmos_node ? unmarshalPublicCatalogProductPropertiesKubernetesKosmosNodeType(data.kosmos_node) : void 0
287
+ };
288
+ };
221
289
  const unmarshalPublicCatalogProductPropertiesLoadBalancer = (data) => {
222
290
  if (!isJSONObject(data)) {
223
291
  throw new TypeError(
@@ -244,6 +312,19 @@ const unmarshalPublicCatalogProductPropertiesManagedRedisDatabase = (data) => {
244
312
  }
245
313
  return {};
246
314
  };
315
+ const unmarshalPublicCatalogProductPropertiesManagedRelationalDatabase = (data) => {
316
+ if (!isJSONObject(data)) {
317
+ throw new TypeError(
318
+ `Unmarshalling the type 'PublicCatalogProductPropertiesManagedRelationalDatabase' failed as data isn't a dictionary.`
319
+ );
320
+ }
321
+ return {
322
+ management: data.management ? unmarshalPublicCatalogProductPropertiesManagedRelationalDatabaseManagementType(data.management) : void 0,
323
+ multiAz: data.multi_az ? unmarshalPublicCatalogProductPropertiesManagedRelationalDatabaseMultiAzType(data.multi_az) : void 0,
324
+ node: data.node ? unmarshalPublicCatalogProductPropertiesManagedRelationalDatabaseNodeType(data.node) : void 0,
325
+ storage: data.storage ? unmarshalPublicCatalogProductPropertiesManagedRelationalDatabaseStorageType(data.storage) : void 0
326
+ };
327
+ };
247
328
  const unmarshalPublicCatalogProductPropertiesObjectStorage = (data) => {
248
329
  if (!isJSONObject(data)) {
249
330
  throw new TypeError(
@@ -251,18 +332,10 @@ const unmarshalPublicCatalogProductPropertiesObjectStorage = (data) => {
251
332
  );
252
333
  }
253
334
  return {
254
- class: data.class ? unmarshalPublicCatalogProductPropertiesObjectStorageClassType(
255
- data.class
256
- ) : void 0,
257
- internetTraffic: data.internet_traffic ? unmarshalPublicCatalogProductPropertiesObjectStorageInternetTrafficType(
258
- data.internet_traffic
259
- ) : void 0,
260
- regionTraffic: data.region_traffic ? unmarshalPublicCatalogProductPropertiesObjectStorageRegionTrafficType(
261
- data.region_traffic
262
- ) : void 0,
263
- restore: data.restore ? unmarshalPublicCatalogProductPropertiesObjectStorageRestoreType(
264
- data.restore
265
- ) : void 0
335
+ class: data.class ? unmarshalPublicCatalogProductPropertiesObjectStorageClassType(data.class) : void 0,
336
+ internetTraffic: data.internet_traffic ? unmarshalPublicCatalogProductPropertiesObjectStorageInternetTrafficType(data.internet_traffic) : void 0,
337
+ regionTraffic: data.region_traffic ? unmarshalPublicCatalogProductPropertiesObjectStorageRegionTrafficType(data.region_traffic) : void 0,
338
+ restore: data.restore ? unmarshalPublicCatalogProductPropertiesObjectStorageRestoreType(data.restore) : void 0
266
339
  };
267
340
  };
268
341
  const unmarshalPublicCatalogProductPropertiesSecretManager = (data) => {
@@ -318,25 +391,17 @@ const unmarshalPublicCatalogProductProperties = (data) => {
318
391
  blockStorage: data.block_storage ? unmarshalPublicCatalogProductPropertiesBlockStorage(data.block_storage) : void 0,
319
392
  dedibox: data.dedibox ? unmarshalPublicCatalogProductPropertiesDedibox(data.dedibox) : void 0,
320
393
  elasticMetal: data.elastic_metal ? unmarshalPublicCatalogProductPropertiesElasticMetal(data.elastic_metal) : void 0,
321
- generativeApis: data.generative_apis ? unmarshalPublicCatalogProductPropertiesGenerativeApis(
322
- data.generative_apis
323
- ) : void 0,
394
+ generativeApis: data.generative_apis ? unmarshalPublicCatalogProductPropertiesGenerativeApis(data.generative_apis) : void 0,
324
395
  hardware: data.hardware ? unmarshalPublicCatalogProductPropertiesHardware(data.hardware) : void 0,
325
396
  instance: data.instance ? unmarshalPublicCatalogProductPropertiesInstance(data.instance) : void 0,
326
397
  keyManager: data.key_manager ? unmarshalPublicCatalogProductPropertiesKeyManager(data.key_manager) : void 0,
398
+ kubernetes: data.kubernetes ? unmarshalPublicCatalogProductPropertiesKubernetes(data.kubernetes) : void 0,
327
399
  loadBalancer: data.load_balancer ? unmarshalPublicCatalogProductPropertiesLoadBalancer(data.load_balancer) : void 0,
328
- managedInference: data.managed_inference ? unmarshalPublicCatalogProductPropertiesManagedInference(
329
- data.managed_inference
330
- ) : void 0,
331
- managedRedisDatabase: data.managed_redis_database ? unmarshalPublicCatalogProductPropertiesManagedRedisDatabase(
332
- data.managed_redis_database
333
- ) : void 0,
334
- objectStorage: data.object_storage ? unmarshalPublicCatalogProductPropertiesObjectStorage(
335
- data.object_storage
336
- ) : void 0,
337
- secretManager: data.secret_manager ? unmarshalPublicCatalogProductPropertiesSecretManager(
338
- data.secret_manager
339
- ) : void 0
400
+ managedInference: data.managed_inference ? unmarshalPublicCatalogProductPropertiesManagedInference(data.managed_inference) : void 0,
401
+ managedRedisDatabase: data.managed_redis_database ? unmarshalPublicCatalogProductPropertiesManagedRedisDatabase(data.managed_redis_database) : void 0,
402
+ managedRelationalDatabase: data.managed_relational_database ? unmarshalPublicCatalogProductPropertiesManagedRelationalDatabase(data.managed_relational_database) : void 0,
403
+ objectStorage: data.object_storage ? unmarshalPublicCatalogProductPropertiesObjectStorage(data.object_storage) : void 0,
404
+ secretManager: data.secret_manager ? unmarshalPublicCatalogProductPropertiesSecretManager(data.secret_manager) : void 0
340
405
  };
341
406
  };
342
407
  const unmarshalPublicCatalogProductUnitOfMeasure = (data) => {
@@ -359,10 +424,10 @@ const unmarshalPublicCatalogProduct = (data) => {
359
424
  return {
360
425
  badges: data.badges,
361
426
  description: data.description,
427
+ endOfGrowthAt: unmarshalDate(data.end_of_growth_at),
362
428
  endOfLifeAt: unmarshalDate(data.end_of_life_at),
363
- environmentalImpactEstimation: data.environmental_impact_estimation ? unmarshalPublicCatalogProductEnvironmentalImpactEstimation(
364
- data.environmental_impact_estimation
365
- ) : void 0,
429
+ endOfSaleAt: unmarshalDate(data.end_of_sale_at),
430
+ environmentalImpactEstimation: data.environmental_impact_estimation ? unmarshalPublicCatalogProductEnvironmentalImpactEstimation(data.environmental_impact_estimation) : void 0,
366
431
  locality: data.locality ? unmarshalPublicCatalogProductLocality(data.locality) : void 0,
367
432
  price: data.price ? unmarshalPublicCatalogProductPrice(data.price) : void 0,
368
433
  product: data.product,
@@ -382,10 +447,7 @@ const unmarshalListPublicCatalogProductsResponse = (data) => {
382
447
  );
383
448
  }
384
449
  return {
385
- products: unmarshalArrayOfObject(
386
- data.products,
387
- unmarshalPublicCatalogProduct
388
- ),
450
+ products: unmarshalArrayOfObject(data.products, unmarshalPublicCatalogProduct),
389
451
  totalCount: data.total_count
390
452
  };
391
453
  };
@@ -1,9 +1,10 @@
1
1
  import type { Money, Region as ScwRegion, Zone as ScwZone } from '@scaleway/sdk-client';
2
- export type ListPublicCatalogProductsRequestProductType = 'unknown_product_type' | 'instance' | 'apple_silicon' | 'elastic_metal' | 'dedibox' | 'block_storage' | 'object_storage' | 'managed_inference' | 'generative_apis' | 'load_balancer' | 'secret_manager' | 'key_manager' | 'managed_redis_database';
2
+ export type ListPublicCatalogProductsRequestProductType = 'unknown_product_type' | 'instance' | 'apple_silicon' | 'elastic_metal' | 'dedibox' | 'block_storage' | 'object_storage' | 'managed_inference' | 'generative_apis' | 'load_balancer' | 'secret_manager' | 'key_manager' | 'managed_redis_database' | 'kubernetes' | 'managed_relational_database';
3
3
  export type ListPublicCatalogProductsRequestStatus = 'unknown_status' | 'public_beta' | 'preview' | 'general_availability' | 'end_of_new_features' | 'end_of_growth' | 'end_of_deployment' | 'end_of_support' | 'end_of_sale' | 'end_of_life' | 'retired';
4
4
  export type PublicCatalogProductProductBadge = 'unknown_product_badge' | 'new_product' | 'best_seller' | 'best_value' | 'popular';
5
5
  export type PublicCatalogProductPropertiesGenerativeApisConsumptionMode = 'unknown_consumption_mode' | 'realtime' | 'batch';
6
6
  export type PublicCatalogProductPropertiesHardwareCPUArch = 'unknown_arch' | 'x64' | 'arm64' | 'riscv' | 'apple_silicon';
7
+ export type PublicCatalogProductPropertiesManagedRelationalDatabaseStorageTypeStorageClass = 'unknown_storage_class' | 'block_ssd' | 'block_ssd_snapshot' | 'local_ssd' | 'sbs_5k' | 'sbs_5k_snapshot' | 'sbs_15k' | 'sbs_15k_snapshot' | 'backup';
7
8
  export type PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass = 'unknown_storage_class' | 'standard' | 'glacier' | 'onezone_ia';
8
9
  export type PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType = 'unknown_traffic_type' | 'ingress' | 'egress';
9
10
  export type PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType = 'unknown_restore_type' | 'standard';
@@ -123,6 +124,24 @@ export interface PublicCatalogProductPropertiesHardwareStorage {
123
124
  */
124
125
  total: number;
125
126
  }
127
+ export interface PublicCatalogProductPropertiesKubernetesKapsuleControlPlaneType {
128
+ }
129
+ export interface PublicCatalogProductPropertiesKubernetesKosmosControlPlaneType {
130
+ }
131
+ export interface PublicCatalogProductPropertiesKubernetesKosmosNodeType {
132
+ }
133
+ export interface PublicCatalogProductPropertiesManagedRelationalDatabaseManagementType {
134
+ }
135
+ export interface PublicCatalogProductPropertiesManagedRelationalDatabaseMultiAzType {
136
+ }
137
+ export interface PublicCatalogProductPropertiesManagedRelationalDatabaseNodeType {
138
+ }
139
+ export interface PublicCatalogProductPropertiesManagedRelationalDatabaseStorageType {
140
+ /**
141
+ * The type of Storage class.
142
+ */
143
+ storageClass: PublicCatalogProductPropertiesManagedRelationalDatabaseStorageTypeStorageClass;
144
+ }
126
145
  export interface PublicCatalogProductPropertiesObjectStorageClassType {
127
146
  /**
128
147
  * The storage class.
@@ -230,6 +249,26 @@ export interface PublicCatalogProductPropertiesInstance {
230
249
  }
231
250
  export interface PublicCatalogProductPropertiesKeyManager {
232
251
  }
252
+ export interface PublicCatalogProductPropertiesKubernetes {
253
+ /**
254
+ * The properties related to Kapsule Control Plane products.
255
+ *
256
+ * One-of ('type'): at most one of 'kapsuleControlPlane', 'kosmosControlPlane', 'kosmosNode' could be set.
257
+ */
258
+ kapsuleControlPlane?: PublicCatalogProductPropertiesKubernetesKapsuleControlPlaneType;
259
+ /**
260
+ * The properties related to Kosmos Control Plane products.
261
+ *
262
+ * One-of ('type'): at most one of 'kapsuleControlPlane', 'kosmosControlPlane', 'kosmosNode' could be set.
263
+ */
264
+ kosmosControlPlane?: PublicCatalogProductPropertiesKubernetesKosmosControlPlaneType;
265
+ /**
266
+ * The properties related to Kosmos nodes.
267
+ *
268
+ * One-of ('type'): at most one of 'kapsuleControlPlane', 'kosmosControlPlane', 'kosmosNode' could be set.
269
+ */
270
+ kosmosNode?: PublicCatalogProductPropertiesKubernetesKosmosNodeType;
271
+ }
233
272
  export interface PublicCatalogProductPropertiesLoadBalancer {
234
273
  }
235
274
  export interface PublicCatalogProductPropertiesManagedInference {
@@ -240,6 +279,32 @@ export interface PublicCatalogProductPropertiesManagedInference {
240
279
  }
241
280
  export interface PublicCatalogProductPropertiesManagedRedisDatabase {
242
281
  }
282
+ export interface PublicCatalogProductPropertiesManagedRelationalDatabase {
283
+ /**
284
+ * The properties related to Relational Database Management type.
285
+ *
286
+ * One-of ('type'): at most one of 'management', 'node', 'storage', 'multiAz' could be set.
287
+ */
288
+ management?: PublicCatalogProductPropertiesManagedRelationalDatabaseManagementType;
289
+ /**
290
+ * The properties related to Relational Database Nodes.
291
+ *
292
+ * One-of ('type'): at most one of 'management', 'node', 'storage', 'multiAz' could be set.
293
+ */
294
+ node?: PublicCatalogProductPropertiesManagedRelationalDatabaseNodeType;
295
+ /**
296
+ * The properties related to Relational Database Storage type.
297
+ *
298
+ * One-of ('type'): at most one of 'management', 'node', 'storage', 'multiAz' could be set.
299
+ */
300
+ storage?: PublicCatalogProductPropertiesManagedRelationalDatabaseStorageType;
301
+ /**
302
+ * The properties related to Relational Database Multi AZ type.
303
+ *
304
+ * One-of ('type'): at most one of 'management', 'node', 'storage', 'multiAz' could be set.
305
+ */
306
+ multiAz?: PublicCatalogProductPropertiesManagedRelationalDatabaseMultiAzType;
307
+ }
243
308
  export interface PublicCatalogProductPropertiesObjectStorage {
244
309
  /**
245
310
  * The properties related to Object Storage class.
@@ -312,73 +377,85 @@ export interface PublicCatalogProductProperties {
312
377
  /**
313
378
  * The properties of Dedibox products.
314
379
  *
315
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
380
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes', 'managedRelationalDatabase' could be set.
316
381
  */
317
382
  dedibox?: PublicCatalogProductPropertiesDedibox;
318
383
  /**
319
384
  * The properties of Elastic Metal products.
320
385
  *
321
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
386
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes', 'managedRelationalDatabase' could be set.
322
387
  */
323
388
  elasticMetal?: PublicCatalogProductPropertiesElasticMetal;
324
389
  /**
325
390
  * The properties of Apple Silicon products.
326
391
  *
327
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
392
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes', 'managedRelationalDatabase' could be set.
328
393
  */
329
394
  appleSilicon?: PublicCatalogProductPropertiesAppleSilicon;
330
395
  /**
331
396
  * The properties of Instance products.
332
397
  *
333
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
398
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes', 'managedRelationalDatabase' could be set.
334
399
  */
335
400
  instance?: PublicCatalogProductPropertiesInstance;
336
401
  /**
337
402
  * The properties of Block Storage products.
338
403
  *
339
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
404
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes', 'managedRelationalDatabase' could be set.
340
405
  */
341
406
  blockStorage?: PublicCatalogProductPropertiesBlockStorage;
342
407
  /**
343
408
  * The properties of Object Storage products.
344
409
  *
345
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
410
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes', 'managedRelationalDatabase' could be set.
346
411
  */
347
412
  objectStorage?: PublicCatalogProductPropertiesObjectStorage;
348
413
  /**
349
414
  * The properties of Managed Inference products.
350
415
  *
351
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
416
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes', 'managedRelationalDatabase' could be set.
352
417
  */
353
418
  managedInference?: PublicCatalogProductPropertiesManagedInference;
354
419
  /**
355
420
  * The properties of Generative APIs products.
356
421
  *
357
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
422
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes', 'managedRelationalDatabase' could be set.
358
423
  */
359
424
  generativeApis?: PublicCatalogProductPropertiesGenerativeApis;
360
425
  /**
361
426
  * The properties of Load Balancer products.
362
427
  *
363
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
428
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes', 'managedRelationalDatabase' could be set.
364
429
  */
365
430
  loadBalancer?: PublicCatalogProductPropertiesLoadBalancer;
366
431
  /**
367
432
  *
368
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
433
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes', 'managedRelationalDatabase' could be set.
369
434
  */
370
435
  secretManager?: PublicCatalogProductPropertiesSecretManager;
371
436
  /**
372
437
  * The properties of Managed Redis Database products.
373
438
  *
374
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
439
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes', 'managedRelationalDatabase' could be set.
375
440
  */
376
441
  managedRedisDatabase?: PublicCatalogProductPropertiesManagedRedisDatabase;
377
442
  /**
378
443
  *
379
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
444
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes', 'managedRelationalDatabase' could be set.
380
445
  */
381
446
  keyManager?: PublicCatalogProductPropertiesKeyManager;
447
+ /**
448
+ * The properties of Kubernetes products.
449
+ *
450
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes', 'managedRelationalDatabase' could be set.
451
+ */
452
+ kubernetes?: PublicCatalogProductPropertiesKubernetes;
453
+ /**
454
+ * The properties of Managed Relational Database products.
455
+ *
456
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes', 'managedRelationalDatabase' could be set.
457
+ */
458
+ managedRelationalDatabase?: PublicCatalogProductPropertiesManagedRelationalDatabase;
382
459
  }
383
460
  export interface PublicCatalogProductUnitOfMeasure {
384
461
  unit: PublicCatalogProductUnitOfMeasureCountableUnit;
@@ -437,6 +514,14 @@ export interface PublicCatalogProduct {
437
514
  * The end of life date of the product.
438
515
  */
439
516
  endOfLifeAt?: Date;
517
+ /**
518
+ * The end of growth date of the product.
519
+ */
520
+ endOfGrowthAt?: Date;
521
+ /**
522
+ * The end of sale date of the product.
523
+ */
524
+ endOfSaleAt?: Date;
440
525
  /**
441
526
  * Different badges that can be associated with the product.
442
527
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scaleway/sdk-product-catalog",
3
- "version": "2.3.0",
3
+ "version": "2.4.1",
4
4
  "description": "Scaleway SDK product-catalog",
5
5
  "license": "Apache-2.0",
6
6
  "files": [
@@ -27,7 +27,7 @@
27
27
  },
28
28
  "dependencies": {
29
29
  "@scaleway/random-name": "5.1.2",
30
- "@scaleway/sdk-std": "2.1.0"
30
+ "@scaleway/sdk-std": "2.1.1"
31
31
  },
32
32
  "peerDependencies": {
33
33
  "@scaleway/sdk-client": "^2.1.0"