@scaleway/sdk-product-catalog 2.3.0 → 2.4.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,4 +1,4 @@
1
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, 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';
@@ -88,6 +88,30 @@ const unmarshalPublicCatalogProductPropertiesHardwareStorage = (data) => {
88
88
  total: data.total
89
89
  };
90
90
  };
91
+ const unmarshalPublicCatalogProductPropertiesKubernetesKapsuleControlPlaneType = (data) => {
92
+ if (!isJSONObject(data)) {
93
+ throw new TypeError(
94
+ `Unmarshalling the type 'PublicCatalogProductPropertiesKubernetesKapsuleControlPlaneType' failed as data isn't a dictionary.`
95
+ );
96
+ }
97
+ return {};
98
+ };
99
+ const unmarshalPublicCatalogProductPropertiesKubernetesKosmosControlPlaneType = (data) => {
100
+ if (!isJSONObject(data)) {
101
+ throw new TypeError(
102
+ `Unmarshalling the type 'PublicCatalogProductPropertiesKubernetesKosmosControlPlaneType' failed as data isn't a dictionary.`
103
+ );
104
+ }
105
+ return {};
106
+ };
107
+ const unmarshalPublicCatalogProductPropertiesKubernetesKosmosNodeType = (data) => {
108
+ if (!isJSONObject(data)) {
109
+ throw new TypeError(
110
+ `Unmarshalling the type 'PublicCatalogProductPropertiesKubernetesKosmosNodeType' failed as data isn't a dictionary.`
111
+ );
112
+ }
113
+ return {};
114
+ };
91
115
  const unmarshalPublicCatalogProductPropertiesObjectStorageClassType = (data) => {
92
116
  if (!isJSONObject(data)) {
93
117
  throw new TypeError(
@@ -218,6 +242,24 @@ const unmarshalPublicCatalogProductPropertiesKeyManager = (data) => {
218
242
  }
219
243
  return {};
220
244
  };
245
+ const unmarshalPublicCatalogProductPropertiesKubernetes = (data) => {
246
+ if (!isJSONObject(data)) {
247
+ throw new TypeError(
248
+ `Unmarshalling the type 'PublicCatalogProductPropertiesKubernetes' failed as data isn't a dictionary.`
249
+ );
250
+ }
251
+ return {
252
+ kapsuleControlPlane: data.kapsule_control_plane ? unmarshalPublicCatalogProductPropertiesKubernetesKapsuleControlPlaneType(
253
+ data.kapsule_control_plane
254
+ ) : void 0,
255
+ kosmosControlPlane: data.kosmos_control_plane ? unmarshalPublicCatalogProductPropertiesKubernetesKosmosControlPlaneType(
256
+ data.kosmos_control_plane
257
+ ) : void 0,
258
+ kosmosNode: data.kosmos_node ? unmarshalPublicCatalogProductPropertiesKubernetesKosmosNodeType(
259
+ data.kosmos_node
260
+ ) : void 0
261
+ };
262
+ };
221
263
  const unmarshalPublicCatalogProductPropertiesLoadBalancer = (data) => {
222
264
  if (!isJSONObject(data)) {
223
265
  throw new TypeError(
@@ -324,6 +366,7 @@ const unmarshalPublicCatalogProductProperties = (data) => {
324
366
  hardware: data.hardware ? unmarshalPublicCatalogProductPropertiesHardware(data.hardware) : void 0,
325
367
  instance: data.instance ? unmarshalPublicCatalogProductPropertiesInstance(data.instance) : void 0,
326
368
  keyManager: data.key_manager ? unmarshalPublicCatalogProductPropertiesKeyManager(data.key_manager) : void 0,
369
+ kubernetes: data.kubernetes ? unmarshalPublicCatalogProductPropertiesKubernetes(data.kubernetes) : void 0,
327
370
  loadBalancer: data.load_balancer ? unmarshalPublicCatalogProductPropertiesLoadBalancer(data.load_balancer) : void 0,
328
371
  managedInference: data.managed_inference ? unmarshalPublicCatalogProductPropertiesManagedInference(
329
372
  data.managed_inference
@@ -359,7 +402,9 @@ const unmarshalPublicCatalogProduct = (data) => {
359
402
  return {
360
403
  badges: data.badges,
361
404
  description: data.description,
405
+ endOfGrowthAt: unmarshalDate(data.end_of_growth_at),
362
406
  endOfLifeAt: unmarshalDate(data.end_of_life_at),
407
+ endOfSaleAt: unmarshalDate(data.end_of_sale_at),
363
408
  environmentalImpactEstimation: data.environmental_impact_estimation ? unmarshalPublicCatalogProductEnvironmentalImpactEstimation(
364
409
  data.environmental_impact_estimation
365
410
  ) : void 0,
@@ -1,5 +1,5 @@
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';
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';
@@ -123,6 +123,12 @@ export interface PublicCatalogProductPropertiesHardwareStorage {
123
123
  */
124
124
  total: number;
125
125
  }
126
+ export interface PublicCatalogProductPropertiesKubernetesKapsuleControlPlaneType {
127
+ }
128
+ export interface PublicCatalogProductPropertiesKubernetesKosmosControlPlaneType {
129
+ }
130
+ export interface PublicCatalogProductPropertiesKubernetesKosmosNodeType {
131
+ }
126
132
  export interface PublicCatalogProductPropertiesObjectStorageClassType {
127
133
  /**
128
134
  * The storage class.
@@ -230,6 +236,26 @@ export interface PublicCatalogProductPropertiesInstance {
230
236
  }
231
237
  export interface PublicCatalogProductPropertiesKeyManager {
232
238
  }
239
+ export interface PublicCatalogProductPropertiesKubernetes {
240
+ /**
241
+ * The properties related to Kapsule Control Plane products.
242
+ *
243
+ * One-of ('type'): at most one of 'kapsuleControlPlane', 'kosmosControlPlane', 'kosmosNode' could be set.
244
+ */
245
+ kapsuleControlPlane?: PublicCatalogProductPropertiesKubernetesKapsuleControlPlaneType;
246
+ /**
247
+ * The properties related to Kosmos Control Plane products.
248
+ *
249
+ * One-of ('type'): at most one of 'kapsuleControlPlane', 'kosmosControlPlane', 'kosmosNode' could be set.
250
+ */
251
+ kosmosControlPlane?: PublicCatalogProductPropertiesKubernetesKosmosControlPlaneType;
252
+ /**
253
+ * The properties related to Kosmos nodes.
254
+ *
255
+ * One-of ('type'): at most one of 'kapsuleControlPlane', 'kosmosControlPlane', 'kosmosNode' could be set.
256
+ */
257
+ kosmosNode?: PublicCatalogProductPropertiesKubernetesKosmosNodeType;
258
+ }
233
259
  export interface PublicCatalogProductPropertiesLoadBalancer {
234
260
  }
235
261
  export interface PublicCatalogProductPropertiesManagedInference {
@@ -312,73 +338,79 @@ export interface PublicCatalogProductProperties {
312
338
  /**
313
339
  * The properties of Dedibox products.
314
340
  *
315
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
341
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes' could be set.
316
342
  */
317
343
  dedibox?: PublicCatalogProductPropertiesDedibox;
318
344
  /**
319
345
  * The properties of Elastic Metal products.
320
346
  *
321
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
347
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes' could be set.
322
348
  */
323
349
  elasticMetal?: PublicCatalogProductPropertiesElasticMetal;
324
350
  /**
325
351
  * The properties of Apple Silicon products.
326
352
  *
327
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
353
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes' could be set.
328
354
  */
329
355
  appleSilicon?: PublicCatalogProductPropertiesAppleSilicon;
330
356
  /**
331
357
  * The properties of Instance products.
332
358
  *
333
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
359
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes' could be set.
334
360
  */
335
361
  instance?: PublicCatalogProductPropertiesInstance;
336
362
  /**
337
363
  * The properties of Block Storage products.
338
364
  *
339
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
365
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes' could be set.
340
366
  */
341
367
  blockStorage?: PublicCatalogProductPropertiesBlockStorage;
342
368
  /**
343
369
  * The properties of Object Storage products.
344
370
  *
345
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
371
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes' could be set.
346
372
  */
347
373
  objectStorage?: PublicCatalogProductPropertiesObjectStorage;
348
374
  /**
349
375
  * The properties of Managed Inference products.
350
376
  *
351
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
377
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes' could be set.
352
378
  */
353
379
  managedInference?: PublicCatalogProductPropertiesManagedInference;
354
380
  /**
355
381
  * The properties of Generative APIs products.
356
382
  *
357
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
383
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes' could be set.
358
384
  */
359
385
  generativeApis?: PublicCatalogProductPropertiesGenerativeApis;
360
386
  /**
361
387
  * The properties of Load Balancer products.
362
388
  *
363
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
389
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes' could be set.
364
390
  */
365
391
  loadBalancer?: PublicCatalogProductPropertiesLoadBalancer;
366
392
  /**
367
393
  *
368
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
394
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes' could be set.
369
395
  */
370
396
  secretManager?: PublicCatalogProductPropertiesSecretManager;
371
397
  /**
372
398
  * The properties of Managed Redis Database products.
373
399
  *
374
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
400
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes' could be set.
375
401
  */
376
402
  managedRedisDatabase?: PublicCatalogProductPropertiesManagedRedisDatabase;
377
403
  /**
378
404
  *
379
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager' could be set.
405
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes' could be set.
380
406
  */
381
407
  keyManager?: PublicCatalogProductPropertiesKeyManager;
408
+ /**
409
+ * The properties of Kubernetes products.
410
+ *
411
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage', 'managedInference', 'generativeApis', 'loadBalancer', 'secretManager', 'managedRedisDatabase', 'keyManager', 'kubernetes' could be set.
412
+ */
413
+ kubernetes?: PublicCatalogProductPropertiesKubernetes;
382
414
  }
383
415
  export interface PublicCatalogProductUnitOfMeasure {
384
416
  unit: PublicCatalogProductUnitOfMeasureCountableUnit;
@@ -437,6 +469,14 @@ export interface PublicCatalogProduct {
437
469
  * The end of life date of the product.
438
470
  */
439
471
  endOfLifeAt?: Date;
472
+ /**
473
+ * The end of growth date of the product.
474
+ */
475
+ endOfGrowthAt?: Date;
476
+ /**
477
+ * The end of sale date of the product.
478
+ */
479
+ endOfSaleAt?: Date;
440
480
  /**
441
481
  * Different badges that can be associated with the product.
442
482
  */
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.0",
4
4
  "description": "Scaleway SDK product-catalog",
5
5
  "license": "Apache-2.0",
6
6
  "files": [