aws-cdk-lib 2.216.0__py3-none-any.whl → 2.217.0__py3-none-any.whl

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.

Potentially problematic release.


This version of aws-cdk-lib might be problematic. Click here for more details.

Files changed (58) hide show
  1. aws_cdk/__init__.py +60 -28
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.216.0.jsii.tgz → aws-cdk-lib@2.217.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_acmpca/__init__.py +1 -1
  5. aws_cdk/aws_amplify/__init__.py +8 -8
  6. aws_cdk/aws_apigateway/__init__.py +26 -6
  7. aws_cdk/aws_apigatewayv2/__init__.py +2 -2
  8. aws_cdk/aws_appmesh/__init__.py +12 -12
  9. aws_cdk/aws_appstream/__init__.py +14 -4
  10. aws_cdk/aws_appsync/__init__.py +3 -3
  11. aws_cdk/aws_aps/__init__.py +459 -0
  12. aws_cdk/aws_batch/__init__.py +6 -2
  13. aws_cdk/aws_bedrock/__init__.py +132 -0
  14. aws_cdk/aws_bedrockagentcore/__init__.py +3178 -0
  15. aws_cdk/aws_certificatemanager/__init__.py +9 -10
  16. aws_cdk/aws_cleanrooms/__init__.py +163 -0
  17. aws_cdk/aws_cloudformation/__init__.py +14 -14
  18. aws_cdk/aws_cloudfront/__init__.py +12 -8
  19. aws_cdk/aws_cognito/__init__.py +2 -2
  20. aws_cdk/aws_connect/__init__.py +138 -10
  21. aws_cdk/aws_cur/__init__.py +57 -3
  22. aws_cdk/aws_datasync/__init__.py +351 -0
  23. aws_cdk/aws_datazone/__init__.py +675 -2
  24. aws_cdk/aws_dynamodb/__init__.py +123 -0
  25. aws_cdk/aws_ec2/__init__.py +55 -10
  26. aws_cdk/aws_ecs/__init__.py +55 -12
  27. aws_cdk/aws_elasticloadbalancingv2/__init__.py +48 -0
  28. aws_cdk/aws_elasticsearch/__init__.py +2 -2
  29. aws_cdk/aws_evs/__init__.py +58 -4
  30. aws_cdk/aws_gamelift/__init__.py +72 -56
  31. aws_cdk/aws_iam/__init__.py +1 -1
  32. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +35 -38
  33. aws_cdk/aws_iotsitewise/__init__.py +75 -111
  34. aws_cdk/aws_kms/__init__.py +10 -2
  35. aws_cdk/aws_lambda/__init__.py +46 -0
  36. aws_cdk/aws_medialive/__init__.py +127 -0
  37. aws_cdk/aws_mediapackage/__init__.py +2 -2
  38. aws_cdk/aws_networkfirewall/__init__.py +10 -10
  39. aws_cdk/aws_networkmanager/__init__.py +63 -0
  40. aws_cdk/aws_odb/__init__.py +2082 -195
  41. aws_cdk/aws_omics/__init__.py +1414 -171
  42. aws_cdk/aws_opensearchserverless/__init__.py +164 -21
  43. aws_cdk/aws_opensearchservice/__init__.py +5 -4
  44. aws_cdk/aws_pcs/__init__.py +9 -9
  45. aws_cdk/aws_quicksight/__init__.py +295 -3
  46. aws_cdk/aws_rds/__init__.py +338 -58
  47. aws_cdk/aws_sagemaker/__init__.py +251 -1
  48. aws_cdk/aws_servicecatalog/__init__.py +162 -154
  49. aws_cdk/aws_smsvoice/__init__.py +5218 -0
  50. aws_cdk/aws_transfer/__init__.py +13 -12
  51. aws_cdk/aws_verifiedpermissions/__init__.py +1 -1
  52. aws_cdk/aws_workspacesinstances/__init__.py +641 -2
  53. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.217.0.dist-info}/METADATA +1 -1
  54. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.217.0.dist-info}/RECORD +58 -56
  55. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.217.0.dist-info}/LICENSE +0 -0
  56. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.217.0.dist-info}/NOTICE +0 -0
  57. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.217.0.dist-info}/WHEEL +0 -0
  58. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.217.0.dist-info}/top_level.txt +0 -0
@@ -432,6 +432,13 @@ class CfnWorkspaceInstanceProps:
432
432
  no_device="noDevice",
433
433
  virtual_name="virtualName"
434
434
  )],
435
+ capacity_reservation_specification=workspacesinstances.CfnWorkspaceInstance.CapacityReservationSpecificationProperty(
436
+ capacity_reservation_preference="capacityReservationPreference",
437
+ capacity_reservation_target=workspacesinstances.CfnWorkspaceInstance.CapacityReservationTargetProperty(
438
+ capacity_reservation_id="capacityReservationId",
439
+ capacity_reservation_resource_group_arn="capacityReservationResourceGroupArn"
440
+ )
441
+ ),
435
442
  cpu_options=workspacesinstances.CfnWorkspaceInstance.CpuOptionsRequestProperty(
436
443
  core_count=123,
437
444
  threads_per_core=123
@@ -441,6 +448,7 @@ class CfnWorkspaceInstanceProps:
441
448
  ),
442
449
  disable_api_stop=False,
443
450
  ebs_optimized=False,
451
+ enable_primary_ipv6=False,
444
452
  enclave_options=workspacesinstances.CfnWorkspaceInstance.EnclaveOptionsRequestProperty(
445
453
  enabled=False
446
454
  ),
@@ -448,9 +456,23 @@ class CfnWorkspaceInstanceProps:
448
456
  configured=False
449
457
  ),
450
458
  iam_instance_profile=workspacesinstances.CfnWorkspaceInstance.IamInstanceProfileSpecificationProperty(
459
+ arn="arn",
451
460
  name="name"
452
461
  ),
462
+ instance_market_options=workspacesinstances.CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty(
463
+ market_type="marketType",
464
+ spot_options=workspacesinstances.CfnWorkspaceInstance.SpotMarketOptionsProperty(
465
+ instance_interruption_behavior="instanceInterruptionBehavior",
466
+ max_price="maxPrice",
467
+ spot_instance_type="spotInstanceType",
468
+ valid_until_utc="validUntilUtc"
469
+ )
470
+ ),
471
+ ipv6_address_count=123,
453
472
  key_name="keyName",
473
+ license_specifications=[workspacesinstances.CfnWorkspaceInstance.LicenseConfigurationRequestProperty(
474
+ license_configuration_arn="licenseConfigurationArn"
475
+ )],
454
476
  maintenance_options=workspacesinstances.CfnWorkspaceInstance.InstanceMaintenanceOptionsRequestProperty(
455
477
  auto_recovery="autoRecovery"
456
478
  ),
@@ -475,7 +497,9 @@ class CfnWorkspaceInstanceProps:
475
497
  ),
476
498
  placement=workspacesinstances.CfnWorkspaceInstance.PlacementProperty(
477
499
  availability_zone="availabilityZone",
500
+ group_id="groupId",
478
501
  group_name="groupName",
502
+ partition_number=123,
479
503
  tenancy="tenancy"
480
504
  ),
481
505
  private_dns_name_options=workspacesinstances.CfnWorkspaceInstance.PrivateDnsNameOptionsRequestProperty(
@@ -483,6 +507,7 @@ class CfnWorkspaceInstanceProps:
483
507
  enable_resource_name_dns_aRecord=False,
484
508
  hostname_type="hostnameType"
485
509
  ),
510
+ subnet_id="subnetId",
486
511
  tag_specifications=[workspacesinstances.CfnWorkspaceInstance.TagSpecificationProperty(
487
512
  resource_type="resourceType",
488
513
  tags=[CfnTag(
@@ -1367,6 +1392,13 @@ class CfnWorkspaceInstance(
1367
1392
  no_device="noDevice",
1368
1393
  virtual_name="virtualName"
1369
1394
  )],
1395
+ capacity_reservation_specification=workspacesinstances.CfnWorkspaceInstance.CapacityReservationSpecificationProperty(
1396
+ capacity_reservation_preference="capacityReservationPreference",
1397
+ capacity_reservation_target=workspacesinstances.CfnWorkspaceInstance.CapacityReservationTargetProperty(
1398
+ capacity_reservation_id="capacityReservationId",
1399
+ capacity_reservation_resource_group_arn="capacityReservationResourceGroupArn"
1400
+ )
1401
+ ),
1370
1402
  cpu_options=workspacesinstances.CfnWorkspaceInstance.CpuOptionsRequestProperty(
1371
1403
  core_count=123,
1372
1404
  threads_per_core=123
@@ -1376,6 +1408,7 @@ class CfnWorkspaceInstance(
1376
1408
  ),
1377
1409
  disable_api_stop=False,
1378
1410
  ebs_optimized=False,
1411
+ enable_primary_ipv6=False,
1379
1412
  enclave_options=workspacesinstances.CfnWorkspaceInstance.EnclaveOptionsRequestProperty(
1380
1413
  enabled=False
1381
1414
  ),
@@ -1383,9 +1416,23 @@ class CfnWorkspaceInstance(
1383
1416
  configured=False
1384
1417
  ),
1385
1418
  iam_instance_profile=workspacesinstances.CfnWorkspaceInstance.IamInstanceProfileSpecificationProperty(
1419
+ arn="arn",
1386
1420
  name="name"
1387
1421
  ),
1422
+ instance_market_options=workspacesinstances.CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty(
1423
+ market_type="marketType",
1424
+ spot_options=workspacesinstances.CfnWorkspaceInstance.SpotMarketOptionsProperty(
1425
+ instance_interruption_behavior="instanceInterruptionBehavior",
1426
+ max_price="maxPrice",
1427
+ spot_instance_type="spotInstanceType",
1428
+ valid_until_utc="validUntilUtc"
1429
+ )
1430
+ ),
1431
+ ipv6_address_count=123,
1388
1432
  key_name="keyName",
1433
+ license_specifications=[workspacesinstances.CfnWorkspaceInstance.LicenseConfigurationRequestProperty(
1434
+ license_configuration_arn="licenseConfigurationArn"
1435
+ )],
1389
1436
  maintenance_options=workspacesinstances.CfnWorkspaceInstance.InstanceMaintenanceOptionsRequestProperty(
1390
1437
  auto_recovery="autoRecovery"
1391
1438
  ),
@@ -1410,7 +1457,9 @@ class CfnWorkspaceInstance(
1410
1457
  ),
1411
1458
  placement=workspacesinstances.CfnWorkspaceInstance.PlacementProperty(
1412
1459
  availability_zone="availabilityZone",
1460
+ group_id="groupId",
1413
1461
  group_name="groupName",
1462
+ partition_number=123,
1414
1463
  tenancy="tenancy"
1415
1464
  ),
1416
1465
  private_dns_name_options=workspacesinstances.CfnWorkspaceInstance.PrivateDnsNameOptionsRequestProperty(
@@ -1418,6 +1467,7 @@ class CfnWorkspaceInstance(
1418
1467
  enable_resource_name_dns_aRecord=False,
1419
1468
  hostname_type="hostnameType"
1420
1469
  ),
1470
+ subnet_id="subnetId",
1421
1471
  tag_specifications=[workspacesinstances.CfnWorkspaceInstance.TagSpecificationProperty(
1422
1472
  resource_type="resourceType",
1423
1473
  tags=[CfnTag(
@@ -1675,6 +1725,153 @@ class CfnWorkspaceInstance(
1675
1725
  k + "=" + repr(v) for k, v in self._values.items()
1676
1726
  )
1677
1727
 
1728
+ @jsii.data_type(
1729
+ jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.CapacityReservationSpecificationProperty",
1730
+ jsii_struct_bases=[],
1731
+ name_mapping={
1732
+ "capacity_reservation_preference": "capacityReservationPreference",
1733
+ "capacity_reservation_target": "capacityReservationTarget",
1734
+ },
1735
+ )
1736
+ class CapacityReservationSpecificationProperty:
1737
+ def __init__(
1738
+ self,
1739
+ *,
1740
+ capacity_reservation_preference: typing.Optional[builtins.str] = None,
1741
+ capacity_reservation_target: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.CapacityReservationTargetProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1742
+ ) -> None:
1743
+ '''
1744
+ :param capacity_reservation_preference:
1745
+ :param capacity_reservation_target:
1746
+
1747
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-capacityreservationspecification.html
1748
+ :exampleMetadata: fixture=_generated
1749
+
1750
+ Example::
1751
+
1752
+ # The code below shows an example of how to instantiate this type.
1753
+ # The values are placeholders you should change.
1754
+ from aws_cdk import aws_workspacesinstances as workspacesinstances
1755
+
1756
+ capacity_reservation_specification_property = workspacesinstances.CfnWorkspaceInstance.CapacityReservationSpecificationProperty(
1757
+ capacity_reservation_preference="capacityReservationPreference",
1758
+ capacity_reservation_target=workspacesinstances.CfnWorkspaceInstance.CapacityReservationTargetProperty(
1759
+ capacity_reservation_id="capacityReservationId",
1760
+ capacity_reservation_resource_group_arn="capacityReservationResourceGroupArn"
1761
+ )
1762
+ )
1763
+ '''
1764
+ if __debug__:
1765
+ type_hints = typing.get_type_hints(_typecheckingstub__2c7447c1d8e8482ef6a31cfa322dfe54d81154cc75e07f12f4604ce41d71d250)
1766
+ check_type(argname="argument capacity_reservation_preference", value=capacity_reservation_preference, expected_type=type_hints["capacity_reservation_preference"])
1767
+ check_type(argname="argument capacity_reservation_target", value=capacity_reservation_target, expected_type=type_hints["capacity_reservation_target"])
1768
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
1769
+ if capacity_reservation_preference is not None:
1770
+ self._values["capacity_reservation_preference"] = capacity_reservation_preference
1771
+ if capacity_reservation_target is not None:
1772
+ self._values["capacity_reservation_target"] = capacity_reservation_target
1773
+
1774
+ @builtins.property
1775
+ def capacity_reservation_preference(self) -> typing.Optional[builtins.str]:
1776
+ '''
1777
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-capacityreservationspecification.html#cfn-workspacesinstances-workspaceinstance-capacityreservationspecification-capacityreservationpreference
1778
+ '''
1779
+ result = self._values.get("capacity_reservation_preference")
1780
+ return typing.cast(typing.Optional[builtins.str], result)
1781
+
1782
+ @builtins.property
1783
+ def capacity_reservation_target(
1784
+ self,
1785
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.CapacityReservationTargetProperty"]]:
1786
+ '''
1787
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-capacityreservationspecification.html#cfn-workspacesinstances-workspaceinstance-capacityreservationspecification-capacityreservationtarget
1788
+ '''
1789
+ result = self._values.get("capacity_reservation_target")
1790
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.CapacityReservationTargetProperty"]], result)
1791
+
1792
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1793
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1794
+
1795
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1796
+ return not (rhs == self)
1797
+
1798
+ def __repr__(self) -> str:
1799
+ return "CapacityReservationSpecificationProperty(%s)" % ", ".join(
1800
+ k + "=" + repr(v) for k, v in self._values.items()
1801
+ )
1802
+
1803
+ @jsii.data_type(
1804
+ jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.CapacityReservationTargetProperty",
1805
+ jsii_struct_bases=[],
1806
+ name_mapping={
1807
+ "capacity_reservation_id": "capacityReservationId",
1808
+ "capacity_reservation_resource_group_arn": "capacityReservationResourceGroupArn",
1809
+ },
1810
+ )
1811
+ class CapacityReservationTargetProperty:
1812
+ def __init__(
1813
+ self,
1814
+ *,
1815
+ capacity_reservation_id: typing.Optional[builtins.str] = None,
1816
+ capacity_reservation_resource_group_arn: typing.Optional[builtins.str] = None,
1817
+ ) -> None:
1818
+ '''
1819
+ :param capacity_reservation_id:
1820
+ :param capacity_reservation_resource_group_arn:
1821
+
1822
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-capacityreservationtarget.html
1823
+ :exampleMetadata: fixture=_generated
1824
+
1825
+ Example::
1826
+
1827
+ # The code below shows an example of how to instantiate this type.
1828
+ # The values are placeholders you should change.
1829
+ from aws_cdk import aws_workspacesinstances as workspacesinstances
1830
+
1831
+ capacity_reservation_target_property = workspacesinstances.CfnWorkspaceInstance.CapacityReservationTargetProperty(
1832
+ capacity_reservation_id="capacityReservationId",
1833
+ capacity_reservation_resource_group_arn="capacityReservationResourceGroupArn"
1834
+ )
1835
+ '''
1836
+ if __debug__:
1837
+ type_hints = typing.get_type_hints(_typecheckingstub__d9f436a25da0d1e919f4f55d90c75f8795f4997204e2fa4a394b043328fc1f18)
1838
+ check_type(argname="argument capacity_reservation_id", value=capacity_reservation_id, expected_type=type_hints["capacity_reservation_id"])
1839
+ check_type(argname="argument capacity_reservation_resource_group_arn", value=capacity_reservation_resource_group_arn, expected_type=type_hints["capacity_reservation_resource_group_arn"])
1840
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
1841
+ if capacity_reservation_id is not None:
1842
+ self._values["capacity_reservation_id"] = capacity_reservation_id
1843
+ if capacity_reservation_resource_group_arn is not None:
1844
+ self._values["capacity_reservation_resource_group_arn"] = capacity_reservation_resource_group_arn
1845
+
1846
+ @builtins.property
1847
+ def capacity_reservation_id(self) -> typing.Optional[builtins.str]:
1848
+ '''
1849
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-capacityreservationtarget.html#cfn-workspacesinstances-workspaceinstance-capacityreservationtarget-capacityreservationid
1850
+ '''
1851
+ result = self._values.get("capacity_reservation_id")
1852
+ return typing.cast(typing.Optional[builtins.str], result)
1853
+
1854
+ @builtins.property
1855
+ def capacity_reservation_resource_group_arn(
1856
+ self,
1857
+ ) -> typing.Optional[builtins.str]:
1858
+ '''
1859
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-capacityreservationtarget.html#cfn-workspacesinstances-workspaceinstance-capacityreservationtarget-capacityreservationresourcegrouparn
1860
+ '''
1861
+ result = self._values.get("capacity_reservation_resource_group_arn")
1862
+ return typing.cast(typing.Optional[builtins.str], result)
1863
+
1864
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1865
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1866
+
1867
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1868
+ return not (rhs == self)
1869
+
1870
+ def __repr__(self) -> str:
1871
+ return "CapacityReservationTargetProperty(%s)" % ", ".join(
1872
+ k + "=" + repr(v) for k, v in self._values.items()
1873
+ )
1874
+
1678
1875
  @jsii.data_type(
1679
1876
  jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.CpuOptionsRequestProperty",
1680
1877
  jsii_struct_bases=[],
@@ -2093,11 +2290,17 @@ class CfnWorkspaceInstance(
2093
2290
  @jsii.data_type(
2094
2291
  jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.IamInstanceProfileSpecificationProperty",
2095
2292
  jsii_struct_bases=[],
2096
- name_mapping={"name": "name"},
2293
+ name_mapping={"arn": "arn", "name": "name"},
2097
2294
  )
2098
2295
  class IamInstanceProfileSpecificationProperty:
2099
- def __init__(self, *, name: typing.Optional[builtins.str] = None) -> None:
2296
+ def __init__(
2297
+ self,
2298
+ *,
2299
+ arn: typing.Optional[builtins.str] = None,
2300
+ name: typing.Optional[builtins.str] = None,
2301
+ ) -> None:
2100
2302
  '''
2303
+ :param arn:
2101
2304
  :param name:
2102
2305
 
2103
2306
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-iaminstanceprofilespecification.html
@@ -2110,16 +2313,28 @@ class CfnWorkspaceInstance(
2110
2313
  from aws_cdk import aws_workspacesinstances as workspacesinstances
2111
2314
 
2112
2315
  iam_instance_profile_specification_property = workspacesinstances.CfnWorkspaceInstance.IamInstanceProfileSpecificationProperty(
2316
+ arn="arn",
2113
2317
  name="name"
2114
2318
  )
2115
2319
  '''
2116
2320
  if __debug__:
2117
2321
  type_hints = typing.get_type_hints(_typecheckingstub__46446ab38acd11b881b5c7aac1c73f790aba6f0b8215d39325f4bb1081daf531)
2322
+ check_type(argname="argument arn", value=arn, expected_type=type_hints["arn"])
2118
2323
  check_type(argname="argument name", value=name, expected_type=type_hints["name"])
2119
2324
  self._values: typing.Dict[builtins.str, typing.Any] = {}
2325
+ if arn is not None:
2326
+ self._values["arn"] = arn
2120
2327
  if name is not None:
2121
2328
  self._values["name"] = name
2122
2329
 
2330
+ @builtins.property
2331
+ def arn(self) -> typing.Optional[builtins.str]:
2332
+ '''
2333
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-iaminstanceprofilespecification.html#cfn-workspacesinstances-workspaceinstance-iaminstanceprofilespecification-arn
2334
+ '''
2335
+ result = self._values.get("arn")
2336
+ return typing.cast(typing.Optional[builtins.str], result)
2337
+
2123
2338
  @builtins.property
2124
2339
  def name(self) -> typing.Optional[builtins.str]:
2125
2340
  '''
@@ -2192,6 +2407,80 @@ class CfnWorkspaceInstance(
2192
2407
  k + "=" + repr(v) for k, v in self._values.items()
2193
2408
  )
2194
2409
 
2410
+ @jsii.data_type(
2411
+ jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty",
2412
+ jsii_struct_bases=[],
2413
+ name_mapping={"market_type": "marketType", "spot_options": "spotOptions"},
2414
+ )
2415
+ class InstanceMarketOptionsRequestProperty:
2416
+ def __init__(
2417
+ self,
2418
+ *,
2419
+ market_type: typing.Optional[builtins.str] = None,
2420
+ spot_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.SpotMarketOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2421
+ ) -> None:
2422
+ '''
2423
+ :param market_type:
2424
+ :param spot_options:
2425
+
2426
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-instancemarketoptionsrequest.html
2427
+ :exampleMetadata: fixture=_generated
2428
+
2429
+ Example::
2430
+
2431
+ # The code below shows an example of how to instantiate this type.
2432
+ # The values are placeholders you should change.
2433
+ from aws_cdk import aws_workspacesinstances as workspacesinstances
2434
+
2435
+ instance_market_options_request_property = workspacesinstances.CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty(
2436
+ market_type="marketType",
2437
+ spot_options=workspacesinstances.CfnWorkspaceInstance.SpotMarketOptionsProperty(
2438
+ instance_interruption_behavior="instanceInterruptionBehavior",
2439
+ max_price="maxPrice",
2440
+ spot_instance_type="spotInstanceType",
2441
+ valid_until_utc="validUntilUtc"
2442
+ )
2443
+ )
2444
+ '''
2445
+ if __debug__:
2446
+ type_hints = typing.get_type_hints(_typecheckingstub__b98b268bcbc4c8517d4411ff3cec97b75028e2bf24bcfbe5187fddb5e5ddf912)
2447
+ check_type(argname="argument market_type", value=market_type, expected_type=type_hints["market_type"])
2448
+ check_type(argname="argument spot_options", value=spot_options, expected_type=type_hints["spot_options"])
2449
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
2450
+ if market_type is not None:
2451
+ self._values["market_type"] = market_type
2452
+ if spot_options is not None:
2453
+ self._values["spot_options"] = spot_options
2454
+
2455
+ @builtins.property
2456
+ def market_type(self) -> typing.Optional[builtins.str]:
2457
+ '''
2458
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-instancemarketoptionsrequest.html#cfn-workspacesinstances-workspaceinstance-instancemarketoptionsrequest-markettype
2459
+ '''
2460
+ result = self._values.get("market_type")
2461
+ return typing.cast(typing.Optional[builtins.str], result)
2462
+
2463
+ @builtins.property
2464
+ def spot_options(
2465
+ self,
2466
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.SpotMarketOptionsProperty"]]:
2467
+ '''
2468
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-instancemarketoptionsrequest.html#cfn-workspacesinstances-workspaceinstance-instancemarketoptionsrequest-spotoptions
2469
+ '''
2470
+ result = self._values.get("spot_options")
2471
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.SpotMarketOptionsProperty"]], result)
2472
+
2473
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2474
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2475
+
2476
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2477
+ return not (rhs == self)
2478
+
2479
+ def __repr__(self) -> str:
2480
+ return "InstanceMarketOptionsRequestProperty(%s)" % ", ".join(
2481
+ k + "=" + repr(v) for k, v in self._values.items()
2482
+ )
2483
+
2195
2484
  @jsii.data_type(
2196
2485
  jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.InstanceMetadataOptionsRequestProperty",
2197
2486
  jsii_struct_bases=[],
@@ -2460,6 +2749,59 @@ class CfnWorkspaceInstance(
2460
2749
  k + "=" + repr(v) for k, v in self._values.items()
2461
2750
  )
2462
2751
 
2752
+ @jsii.data_type(
2753
+ jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.LicenseConfigurationRequestProperty",
2754
+ jsii_struct_bases=[],
2755
+ name_mapping={"license_configuration_arn": "licenseConfigurationArn"},
2756
+ )
2757
+ class LicenseConfigurationRequestProperty:
2758
+ def __init__(
2759
+ self,
2760
+ *,
2761
+ license_configuration_arn: typing.Optional[builtins.str] = None,
2762
+ ) -> None:
2763
+ '''
2764
+ :param license_configuration_arn:
2765
+
2766
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-licenseconfigurationrequest.html
2767
+ :exampleMetadata: fixture=_generated
2768
+
2769
+ Example::
2770
+
2771
+ # The code below shows an example of how to instantiate this type.
2772
+ # The values are placeholders you should change.
2773
+ from aws_cdk import aws_workspacesinstances as workspacesinstances
2774
+
2775
+ license_configuration_request_property = workspacesinstances.CfnWorkspaceInstance.LicenseConfigurationRequestProperty(
2776
+ license_configuration_arn="licenseConfigurationArn"
2777
+ )
2778
+ '''
2779
+ if __debug__:
2780
+ type_hints = typing.get_type_hints(_typecheckingstub__88bcc842cecd4571abd8f35580c280ee36aed2ea9152364e215ff691575d151e)
2781
+ check_type(argname="argument license_configuration_arn", value=license_configuration_arn, expected_type=type_hints["license_configuration_arn"])
2782
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
2783
+ if license_configuration_arn is not None:
2784
+ self._values["license_configuration_arn"] = license_configuration_arn
2785
+
2786
+ @builtins.property
2787
+ def license_configuration_arn(self) -> typing.Optional[builtins.str]:
2788
+ '''
2789
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-licenseconfigurationrequest.html#cfn-workspacesinstances-workspaceinstance-licenseconfigurationrequest-licenseconfigurationarn
2790
+ '''
2791
+ result = self._values.get("license_configuration_arn")
2792
+ return typing.cast(typing.Optional[builtins.str], result)
2793
+
2794
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2795
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2796
+
2797
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2798
+ return not (rhs == self)
2799
+
2800
+ def __repr__(self) -> str:
2801
+ return "LicenseConfigurationRequestProperty(%s)" % ", ".join(
2802
+ k + "=" + repr(v) for k, v in self._values.items()
2803
+ )
2804
+
2463
2805
  @jsii.data_type(
2464
2806
  jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.ManagedInstanceProperty",
2465
2807
  jsii_struct_bases=[],
@@ -2467,14 +2809,19 @@ class CfnWorkspaceInstance(
2467
2809
  "image_id": "imageId",
2468
2810
  "instance_type": "instanceType",
2469
2811
  "block_device_mappings": "blockDeviceMappings",
2812
+ "capacity_reservation_specification": "capacityReservationSpecification",
2470
2813
  "cpu_options": "cpuOptions",
2471
2814
  "credit_specification": "creditSpecification",
2472
2815
  "disable_api_stop": "disableApiStop",
2473
2816
  "ebs_optimized": "ebsOptimized",
2817
+ "enable_primary_ipv6": "enablePrimaryIpv6",
2474
2818
  "enclave_options": "enclaveOptions",
2475
2819
  "hibernation_options": "hibernationOptions",
2476
2820
  "iam_instance_profile": "iamInstanceProfile",
2821
+ "instance_market_options": "instanceMarketOptions",
2822
+ "ipv6_address_count": "ipv6AddressCount",
2477
2823
  "key_name": "keyName",
2824
+ "license_specifications": "licenseSpecifications",
2478
2825
  "maintenance_options": "maintenanceOptions",
2479
2826
  "metadata_options": "metadataOptions",
2480
2827
  "monitoring": "monitoring",
@@ -2482,6 +2829,7 @@ class CfnWorkspaceInstance(
2482
2829
  "network_performance_options": "networkPerformanceOptions",
2483
2830
  "placement": "placement",
2484
2831
  "private_dns_name_options": "privateDnsNameOptions",
2832
+ "subnet_id": "subnetId",
2485
2833
  "tag_specifications": "tagSpecifications",
2486
2834
  "user_data": "userData",
2487
2835
  },
@@ -2493,14 +2841,19 @@ class CfnWorkspaceInstance(
2493
2841
  image_id: builtins.str,
2494
2842
  instance_type: builtins.str,
2495
2843
  block_device_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.BlockDeviceMappingProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
2844
+ capacity_reservation_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.CapacityReservationSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2496
2845
  cpu_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.CpuOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2497
2846
  credit_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.CreditSpecificationRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2498
2847
  disable_api_stop: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2499
2848
  ebs_optimized: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2849
+ enable_primary_ipv6: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2500
2850
  enclave_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.EnclaveOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2501
2851
  hibernation_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.HibernationOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2502
2852
  iam_instance_profile: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.IamInstanceProfileSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2853
+ instance_market_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2854
+ ipv6_address_count: typing.Optional[jsii.Number] = None,
2503
2855
  key_name: typing.Optional[builtins.str] = None,
2856
+ license_specifications: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.LicenseConfigurationRequestProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
2504
2857
  maintenance_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.InstanceMaintenanceOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2505
2858
  metadata_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.InstanceMetadataOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2506
2859
  monitoring: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.RunInstancesMonitoringEnabledProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -2508,6 +2861,7 @@ class CfnWorkspaceInstance(
2508
2861
  network_performance_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.InstanceNetworkPerformanceOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2509
2862
  placement: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.PlacementProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2510
2863
  private_dns_name_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.PrivateDnsNameOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2864
+ subnet_id: typing.Optional[builtins.str] = None,
2511
2865
  tag_specifications: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.TagSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
2512
2866
  user_data: typing.Optional[builtins.str] = None,
2513
2867
  ) -> None:
@@ -2515,14 +2869,19 @@ class CfnWorkspaceInstance(
2515
2869
  :param image_id:
2516
2870
  :param instance_type:
2517
2871
  :param block_device_mappings:
2872
+ :param capacity_reservation_specification:
2518
2873
  :param cpu_options:
2519
2874
  :param credit_specification:
2520
2875
  :param disable_api_stop:
2521
2876
  :param ebs_optimized:
2877
+ :param enable_primary_ipv6:
2522
2878
  :param enclave_options:
2523
2879
  :param hibernation_options:
2524
2880
  :param iam_instance_profile:
2881
+ :param instance_market_options:
2882
+ :param ipv6_address_count:
2525
2883
  :param key_name:
2884
+ :param license_specifications:
2526
2885
  :param maintenance_options:
2527
2886
  :param metadata_options:
2528
2887
  :param monitoring:
@@ -2530,6 +2889,7 @@ class CfnWorkspaceInstance(
2530
2889
  :param network_performance_options:
2531
2890
  :param placement:
2532
2891
  :param private_dns_name_options:
2892
+ :param subnet_id:
2533
2893
  :param tag_specifications:
2534
2894
  :param user_data:
2535
2895
 
@@ -2560,6 +2920,13 @@ class CfnWorkspaceInstance(
2560
2920
  no_device="noDevice",
2561
2921
  virtual_name="virtualName"
2562
2922
  )],
2923
+ capacity_reservation_specification=workspacesinstances.CfnWorkspaceInstance.CapacityReservationSpecificationProperty(
2924
+ capacity_reservation_preference="capacityReservationPreference",
2925
+ capacity_reservation_target=workspacesinstances.CfnWorkspaceInstance.CapacityReservationTargetProperty(
2926
+ capacity_reservation_id="capacityReservationId",
2927
+ capacity_reservation_resource_group_arn="capacityReservationResourceGroupArn"
2928
+ )
2929
+ ),
2563
2930
  cpu_options=workspacesinstances.CfnWorkspaceInstance.CpuOptionsRequestProperty(
2564
2931
  core_count=123,
2565
2932
  threads_per_core=123
@@ -2569,6 +2936,7 @@ class CfnWorkspaceInstance(
2569
2936
  ),
2570
2937
  disable_api_stop=False,
2571
2938
  ebs_optimized=False,
2939
+ enable_primary_ipv6=False,
2572
2940
  enclave_options=workspacesinstances.CfnWorkspaceInstance.EnclaveOptionsRequestProperty(
2573
2941
  enabled=False
2574
2942
  ),
@@ -2576,9 +2944,23 @@ class CfnWorkspaceInstance(
2576
2944
  configured=False
2577
2945
  ),
2578
2946
  iam_instance_profile=workspacesinstances.CfnWorkspaceInstance.IamInstanceProfileSpecificationProperty(
2947
+ arn="arn",
2579
2948
  name="name"
2580
2949
  ),
2950
+ instance_market_options=workspacesinstances.CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty(
2951
+ market_type="marketType",
2952
+ spot_options=workspacesinstances.CfnWorkspaceInstance.SpotMarketOptionsProperty(
2953
+ instance_interruption_behavior="instanceInterruptionBehavior",
2954
+ max_price="maxPrice",
2955
+ spot_instance_type="spotInstanceType",
2956
+ valid_until_utc="validUntilUtc"
2957
+ )
2958
+ ),
2959
+ ipv6_address_count=123,
2581
2960
  key_name="keyName",
2961
+ license_specifications=[workspacesinstances.CfnWorkspaceInstance.LicenseConfigurationRequestProperty(
2962
+ license_configuration_arn="licenseConfigurationArn"
2963
+ )],
2582
2964
  maintenance_options=workspacesinstances.CfnWorkspaceInstance.InstanceMaintenanceOptionsRequestProperty(
2583
2965
  auto_recovery="autoRecovery"
2584
2966
  ),
@@ -2603,7 +2985,9 @@ class CfnWorkspaceInstance(
2603
2985
  ),
2604
2986
  placement=workspacesinstances.CfnWorkspaceInstance.PlacementProperty(
2605
2987
  availability_zone="availabilityZone",
2988
+ group_id="groupId",
2606
2989
  group_name="groupName",
2990
+ partition_number=123,
2607
2991
  tenancy="tenancy"
2608
2992
  ),
2609
2993
  private_dns_name_options=workspacesinstances.CfnWorkspaceInstance.PrivateDnsNameOptionsRequestProperty(
@@ -2611,6 +2995,7 @@ class CfnWorkspaceInstance(
2611
2995
  enable_resource_name_dns_aRecord=False,
2612
2996
  hostname_type="hostnameType"
2613
2997
  ),
2998
+ subnet_id="subnetId",
2614
2999
  tag_specifications=[workspacesinstances.CfnWorkspaceInstance.TagSpecificationProperty(
2615
3000
  resource_type="resourceType",
2616
3001
  tags=[CfnTag(
@@ -2626,14 +3011,19 @@ class CfnWorkspaceInstance(
2626
3011
  check_type(argname="argument image_id", value=image_id, expected_type=type_hints["image_id"])
2627
3012
  check_type(argname="argument instance_type", value=instance_type, expected_type=type_hints["instance_type"])
2628
3013
  check_type(argname="argument block_device_mappings", value=block_device_mappings, expected_type=type_hints["block_device_mappings"])
3014
+ check_type(argname="argument capacity_reservation_specification", value=capacity_reservation_specification, expected_type=type_hints["capacity_reservation_specification"])
2629
3015
  check_type(argname="argument cpu_options", value=cpu_options, expected_type=type_hints["cpu_options"])
2630
3016
  check_type(argname="argument credit_specification", value=credit_specification, expected_type=type_hints["credit_specification"])
2631
3017
  check_type(argname="argument disable_api_stop", value=disable_api_stop, expected_type=type_hints["disable_api_stop"])
2632
3018
  check_type(argname="argument ebs_optimized", value=ebs_optimized, expected_type=type_hints["ebs_optimized"])
3019
+ check_type(argname="argument enable_primary_ipv6", value=enable_primary_ipv6, expected_type=type_hints["enable_primary_ipv6"])
2633
3020
  check_type(argname="argument enclave_options", value=enclave_options, expected_type=type_hints["enclave_options"])
2634
3021
  check_type(argname="argument hibernation_options", value=hibernation_options, expected_type=type_hints["hibernation_options"])
2635
3022
  check_type(argname="argument iam_instance_profile", value=iam_instance_profile, expected_type=type_hints["iam_instance_profile"])
3023
+ check_type(argname="argument instance_market_options", value=instance_market_options, expected_type=type_hints["instance_market_options"])
3024
+ check_type(argname="argument ipv6_address_count", value=ipv6_address_count, expected_type=type_hints["ipv6_address_count"])
2636
3025
  check_type(argname="argument key_name", value=key_name, expected_type=type_hints["key_name"])
3026
+ check_type(argname="argument license_specifications", value=license_specifications, expected_type=type_hints["license_specifications"])
2637
3027
  check_type(argname="argument maintenance_options", value=maintenance_options, expected_type=type_hints["maintenance_options"])
2638
3028
  check_type(argname="argument metadata_options", value=metadata_options, expected_type=type_hints["metadata_options"])
2639
3029
  check_type(argname="argument monitoring", value=monitoring, expected_type=type_hints["monitoring"])
@@ -2641,6 +3031,7 @@ class CfnWorkspaceInstance(
2641
3031
  check_type(argname="argument network_performance_options", value=network_performance_options, expected_type=type_hints["network_performance_options"])
2642
3032
  check_type(argname="argument placement", value=placement, expected_type=type_hints["placement"])
2643
3033
  check_type(argname="argument private_dns_name_options", value=private_dns_name_options, expected_type=type_hints["private_dns_name_options"])
3034
+ check_type(argname="argument subnet_id", value=subnet_id, expected_type=type_hints["subnet_id"])
2644
3035
  check_type(argname="argument tag_specifications", value=tag_specifications, expected_type=type_hints["tag_specifications"])
2645
3036
  check_type(argname="argument user_data", value=user_data, expected_type=type_hints["user_data"])
2646
3037
  self._values: typing.Dict[builtins.str, typing.Any] = {
@@ -2649,6 +3040,8 @@ class CfnWorkspaceInstance(
2649
3040
  }
2650
3041
  if block_device_mappings is not None:
2651
3042
  self._values["block_device_mappings"] = block_device_mappings
3043
+ if capacity_reservation_specification is not None:
3044
+ self._values["capacity_reservation_specification"] = capacity_reservation_specification
2652
3045
  if cpu_options is not None:
2653
3046
  self._values["cpu_options"] = cpu_options
2654
3047
  if credit_specification is not None:
@@ -2657,14 +3050,22 @@ class CfnWorkspaceInstance(
2657
3050
  self._values["disable_api_stop"] = disable_api_stop
2658
3051
  if ebs_optimized is not None:
2659
3052
  self._values["ebs_optimized"] = ebs_optimized
3053
+ if enable_primary_ipv6 is not None:
3054
+ self._values["enable_primary_ipv6"] = enable_primary_ipv6
2660
3055
  if enclave_options is not None:
2661
3056
  self._values["enclave_options"] = enclave_options
2662
3057
  if hibernation_options is not None:
2663
3058
  self._values["hibernation_options"] = hibernation_options
2664
3059
  if iam_instance_profile is not None:
2665
3060
  self._values["iam_instance_profile"] = iam_instance_profile
3061
+ if instance_market_options is not None:
3062
+ self._values["instance_market_options"] = instance_market_options
3063
+ if ipv6_address_count is not None:
3064
+ self._values["ipv6_address_count"] = ipv6_address_count
2666
3065
  if key_name is not None:
2667
3066
  self._values["key_name"] = key_name
3067
+ if license_specifications is not None:
3068
+ self._values["license_specifications"] = license_specifications
2668
3069
  if maintenance_options is not None:
2669
3070
  self._values["maintenance_options"] = maintenance_options
2670
3071
  if metadata_options is not None:
@@ -2679,6 +3080,8 @@ class CfnWorkspaceInstance(
2679
3080
  self._values["placement"] = placement
2680
3081
  if private_dns_name_options is not None:
2681
3082
  self._values["private_dns_name_options"] = private_dns_name_options
3083
+ if subnet_id is not None:
3084
+ self._values["subnet_id"] = subnet_id
2682
3085
  if tag_specifications is not None:
2683
3086
  self._values["tag_specifications"] = tag_specifications
2684
3087
  if user_data is not None:
@@ -2712,6 +3115,16 @@ class CfnWorkspaceInstance(
2712
3115
  result = self._values.get("block_device_mappings")
2713
3116
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.BlockDeviceMappingProperty"]]]], result)
2714
3117
 
3118
+ @builtins.property
3119
+ def capacity_reservation_specification(
3120
+ self,
3121
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.CapacityReservationSpecificationProperty"]]:
3122
+ '''
3123
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-managedinstance.html#cfn-workspacesinstances-workspaceinstance-managedinstance-capacityreservationspecification
3124
+ '''
3125
+ result = self._values.get("capacity_reservation_specification")
3126
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.CapacityReservationSpecificationProperty"]], result)
3127
+
2715
3128
  @builtins.property
2716
3129
  def cpu_options(
2717
3130
  self,
@@ -2752,6 +3165,16 @@ class CfnWorkspaceInstance(
2752
3165
  result = self._values.get("ebs_optimized")
2753
3166
  return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
2754
3167
 
3168
+ @builtins.property
3169
+ def enable_primary_ipv6(
3170
+ self,
3171
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
3172
+ '''
3173
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-managedinstance.html#cfn-workspacesinstances-workspaceinstance-managedinstance-enableprimaryipv6
3174
+ '''
3175
+ result = self._values.get("enable_primary_ipv6")
3176
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
3177
+
2755
3178
  @builtins.property
2756
3179
  def enclave_options(
2757
3180
  self,
@@ -2782,6 +3205,24 @@ class CfnWorkspaceInstance(
2782
3205
  result = self._values.get("iam_instance_profile")
2783
3206
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.IamInstanceProfileSpecificationProperty"]], result)
2784
3207
 
3208
+ @builtins.property
3209
+ def instance_market_options(
3210
+ self,
3211
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty"]]:
3212
+ '''
3213
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-managedinstance.html#cfn-workspacesinstances-workspaceinstance-managedinstance-instancemarketoptions
3214
+ '''
3215
+ result = self._values.get("instance_market_options")
3216
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty"]], result)
3217
+
3218
+ @builtins.property
3219
+ def ipv6_address_count(self) -> typing.Optional[jsii.Number]:
3220
+ '''
3221
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-managedinstance.html#cfn-workspacesinstances-workspaceinstance-managedinstance-ipv6addresscount
3222
+ '''
3223
+ result = self._values.get("ipv6_address_count")
3224
+ return typing.cast(typing.Optional[jsii.Number], result)
3225
+
2785
3226
  @builtins.property
2786
3227
  def key_name(self) -> typing.Optional[builtins.str]:
2787
3228
  '''
@@ -2790,6 +3231,16 @@ class CfnWorkspaceInstance(
2790
3231
  result = self._values.get("key_name")
2791
3232
  return typing.cast(typing.Optional[builtins.str], result)
2792
3233
 
3234
+ @builtins.property
3235
+ def license_specifications(
3236
+ self,
3237
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.LicenseConfigurationRequestProperty"]]]]:
3238
+ '''
3239
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-managedinstance.html#cfn-workspacesinstances-workspaceinstance-managedinstance-licensespecifications
3240
+ '''
3241
+ result = self._values.get("license_specifications")
3242
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.LicenseConfigurationRequestProperty"]]]], result)
3243
+
2793
3244
  @builtins.property
2794
3245
  def maintenance_options(
2795
3246
  self,
@@ -2860,6 +3311,14 @@ class CfnWorkspaceInstance(
2860
3311
  result = self._values.get("private_dns_name_options")
2861
3312
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.PrivateDnsNameOptionsRequestProperty"]], result)
2862
3313
 
3314
+ @builtins.property
3315
+ def subnet_id(self) -> typing.Optional[builtins.str]:
3316
+ '''
3317
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-managedinstance.html#cfn-workspacesinstances-workspaceinstance-managedinstance-subnetid
3318
+ '''
3319
+ result = self._values.get("subnet_id")
3320
+ return typing.cast(typing.Optional[builtins.str], result)
3321
+
2863
3322
  @builtins.property
2864
3323
  def tag_specifications(
2865
3324
  self,
@@ -2894,7 +3353,9 @@ class CfnWorkspaceInstance(
2894
3353
  jsii_struct_bases=[],
2895
3354
  name_mapping={
2896
3355
  "availability_zone": "availabilityZone",
3356
+ "group_id": "groupId",
2897
3357
  "group_name": "groupName",
3358
+ "partition_number": "partitionNumber",
2898
3359
  "tenancy": "tenancy",
2899
3360
  },
2900
3361
  )
@@ -2903,12 +3364,16 @@ class CfnWorkspaceInstance(
2903
3364
  self,
2904
3365
  *,
2905
3366
  availability_zone: typing.Optional[builtins.str] = None,
3367
+ group_id: typing.Optional[builtins.str] = None,
2906
3368
  group_name: typing.Optional[builtins.str] = None,
3369
+ partition_number: typing.Optional[jsii.Number] = None,
2907
3370
  tenancy: typing.Optional[builtins.str] = None,
2908
3371
  ) -> None:
2909
3372
  '''
2910
3373
  :param availability_zone:
3374
+ :param group_id:
2911
3375
  :param group_name:
3376
+ :param partition_number:
2912
3377
  :param tenancy:
2913
3378
 
2914
3379
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-placement.html
@@ -2922,20 +3387,28 @@ class CfnWorkspaceInstance(
2922
3387
 
2923
3388
  placement_property = workspacesinstances.CfnWorkspaceInstance.PlacementProperty(
2924
3389
  availability_zone="availabilityZone",
3390
+ group_id="groupId",
2925
3391
  group_name="groupName",
3392
+ partition_number=123,
2926
3393
  tenancy="tenancy"
2927
3394
  )
2928
3395
  '''
2929
3396
  if __debug__:
2930
3397
  type_hints = typing.get_type_hints(_typecheckingstub__74aaa065dbb77262ecab6552e5fde4ac2723c645be4dde2327c06e281386c1f8)
2931
3398
  check_type(argname="argument availability_zone", value=availability_zone, expected_type=type_hints["availability_zone"])
3399
+ check_type(argname="argument group_id", value=group_id, expected_type=type_hints["group_id"])
2932
3400
  check_type(argname="argument group_name", value=group_name, expected_type=type_hints["group_name"])
3401
+ check_type(argname="argument partition_number", value=partition_number, expected_type=type_hints["partition_number"])
2933
3402
  check_type(argname="argument tenancy", value=tenancy, expected_type=type_hints["tenancy"])
2934
3403
  self._values: typing.Dict[builtins.str, typing.Any] = {}
2935
3404
  if availability_zone is not None:
2936
3405
  self._values["availability_zone"] = availability_zone
3406
+ if group_id is not None:
3407
+ self._values["group_id"] = group_id
2937
3408
  if group_name is not None:
2938
3409
  self._values["group_name"] = group_name
3410
+ if partition_number is not None:
3411
+ self._values["partition_number"] = partition_number
2939
3412
  if tenancy is not None:
2940
3413
  self._values["tenancy"] = tenancy
2941
3414
 
@@ -2947,6 +3420,14 @@ class CfnWorkspaceInstance(
2947
3420
  result = self._values.get("availability_zone")
2948
3421
  return typing.cast(typing.Optional[builtins.str], result)
2949
3422
 
3423
+ @builtins.property
3424
+ def group_id(self) -> typing.Optional[builtins.str]:
3425
+ '''
3426
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-placement.html#cfn-workspacesinstances-workspaceinstance-placement-groupid
3427
+ '''
3428
+ result = self._values.get("group_id")
3429
+ return typing.cast(typing.Optional[builtins.str], result)
3430
+
2950
3431
  @builtins.property
2951
3432
  def group_name(self) -> typing.Optional[builtins.str]:
2952
3433
  '''
@@ -2955,6 +3436,14 @@ class CfnWorkspaceInstance(
2955
3436
  result = self._values.get("group_name")
2956
3437
  return typing.cast(typing.Optional[builtins.str], result)
2957
3438
 
3439
+ @builtins.property
3440
+ def partition_number(self) -> typing.Optional[jsii.Number]:
3441
+ '''
3442
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-placement.html#cfn-workspacesinstances-workspaceinstance-placement-partitionnumber
3443
+ '''
3444
+ result = self._values.get("partition_number")
3445
+ return typing.cast(typing.Optional[jsii.Number], result)
3446
+
2958
3447
  @builtins.property
2959
3448
  def tenancy(self) -> typing.Optional[builtins.str]:
2960
3449
  '''
@@ -3118,6 +3607,106 @@ class CfnWorkspaceInstance(
3118
3607
  k + "=" + repr(v) for k, v in self._values.items()
3119
3608
  )
3120
3609
 
3610
+ @jsii.data_type(
3611
+ jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.SpotMarketOptionsProperty",
3612
+ jsii_struct_bases=[],
3613
+ name_mapping={
3614
+ "instance_interruption_behavior": "instanceInterruptionBehavior",
3615
+ "max_price": "maxPrice",
3616
+ "spot_instance_type": "spotInstanceType",
3617
+ "valid_until_utc": "validUntilUtc",
3618
+ },
3619
+ )
3620
+ class SpotMarketOptionsProperty:
3621
+ def __init__(
3622
+ self,
3623
+ *,
3624
+ instance_interruption_behavior: typing.Optional[builtins.str] = None,
3625
+ max_price: typing.Optional[builtins.str] = None,
3626
+ spot_instance_type: typing.Optional[builtins.str] = None,
3627
+ valid_until_utc: typing.Optional[builtins.str] = None,
3628
+ ) -> None:
3629
+ '''
3630
+ :param instance_interruption_behavior:
3631
+ :param max_price:
3632
+ :param spot_instance_type:
3633
+ :param valid_until_utc:
3634
+
3635
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-spotmarketoptions.html
3636
+ :exampleMetadata: fixture=_generated
3637
+
3638
+ Example::
3639
+
3640
+ # The code below shows an example of how to instantiate this type.
3641
+ # The values are placeholders you should change.
3642
+ from aws_cdk import aws_workspacesinstances as workspacesinstances
3643
+
3644
+ spot_market_options_property = workspacesinstances.CfnWorkspaceInstance.SpotMarketOptionsProperty(
3645
+ instance_interruption_behavior="instanceInterruptionBehavior",
3646
+ max_price="maxPrice",
3647
+ spot_instance_type="spotInstanceType",
3648
+ valid_until_utc="validUntilUtc"
3649
+ )
3650
+ '''
3651
+ if __debug__:
3652
+ type_hints = typing.get_type_hints(_typecheckingstub__3f2b025a20b39464357aca8413f9d8b09d278990163112ca1429525ca31400ea)
3653
+ check_type(argname="argument instance_interruption_behavior", value=instance_interruption_behavior, expected_type=type_hints["instance_interruption_behavior"])
3654
+ check_type(argname="argument max_price", value=max_price, expected_type=type_hints["max_price"])
3655
+ check_type(argname="argument spot_instance_type", value=spot_instance_type, expected_type=type_hints["spot_instance_type"])
3656
+ check_type(argname="argument valid_until_utc", value=valid_until_utc, expected_type=type_hints["valid_until_utc"])
3657
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
3658
+ if instance_interruption_behavior is not None:
3659
+ self._values["instance_interruption_behavior"] = instance_interruption_behavior
3660
+ if max_price is not None:
3661
+ self._values["max_price"] = max_price
3662
+ if spot_instance_type is not None:
3663
+ self._values["spot_instance_type"] = spot_instance_type
3664
+ if valid_until_utc is not None:
3665
+ self._values["valid_until_utc"] = valid_until_utc
3666
+
3667
+ @builtins.property
3668
+ def instance_interruption_behavior(self) -> typing.Optional[builtins.str]:
3669
+ '''
3670
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-spotmarketoptions.html#cfn-workspacesinstances-workspaceinstance-spotmarketoptions-instanceinterruptionbehavior
3671
+ '''
3672
+ result = self._values.get("instance_interruption_behavior")
3673
+ return typing.cast(typing.Optional[builtins.str], result)
3674
+
3675
+ @builtins.property
3676
+ def max_price(self) -> typing.Optional[builtins.str]:
3677
+ '''
3678
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-spotmarketoptions.html#cfn-workspacesinstances-workspaceinstance-spotmarketoptions-maxprice
3679
+ '''
3680
+ result = self._values.get("max_price")
3681
+ return typing.cast(typing.Optional[builtins.str], result)
3682
+
3683
+ @builtins.property
3684
+ def spot_instance_type(self) -> typing.Optional[builtins.str]:
3685
+ '''
3686
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-spotmarketoptions.html#cfn-workspacesinstances-workspaceinstance-spotmarketoptions-spotinstancetype
3687
+ '''
3688
+ result = self._values.get("spot_instance_type")
3689
+ return typing.cast(typing.Optional[builtins.str], result)
3690
+
3691
+ @builtins.property
3692
+ def valid_until_utc(self) -> typing.Optional[builtins.str]:
3693
+ '''
3694
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-spotmarketoptions.html#cfn-workspacesinstances-workspaceinstance-spotmarketoptions-validuntilutc
3695
+ '''
3696
+ result = self._values.get("valid_until_utc")
3697
+ return typing.cast(typing.Optional[builtins.str], result)
3698
+
3699
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3700
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3701
+
3702
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3703
+ return not (rhs == self)
3704
+
3705
+ def __repr__(self) -> str:
3706
+ return "SpotMarketOptionsProperty(%s)" % ", ".join(
3707
+ k + "=" + repr(v) for k, v in self._values.items()
3708
+ )
3709
+
3121
3710
  @jsii.data_type(
3122
3711
  jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.TagSpecificationProperty",
3123
3712
  jsii_struct_bases=[],
@@ -3445,6 +4034,22 @@ def _typecheckingstub__6f2d2dc4f023dfee96411ef0d53c3f207f589b520679a75d9c4a2ca08
3445
4034
  """Type checking stubs"""
3446
4035
  pass
3447
4036
 
4037
+ def _typecheckingstub__2c7447c1d8e8482ef6a31cfa322dfe54d81154cc75e07f12f4604ce41d71d250(
4038
+ *,
4039
+ capacity_reservation_preference: typing.Optional[builtins.str] = None,
4040
+ capacity_reservation_target: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.CapacityReservationTargetProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4041
+ ) -> None:
4042
+ """Type checking stubs"""
4043
+ pass
4044
+
4045
+ def _typecheckingstub__d9f436a25da0d1e919f4f55d90c75f8795f4997204e2fa4a394b043328fc1f18(
4046
+ *,
4047
+ capacity_reservation_id: typing.Optional[builtins.str] = None,
4048
+ capacity_reservation_resource_group_arn: typing.Optional[builtins.str] = None,
4049
+ ) -> None:
4050
+ """Type checking stubs"""
4051
+ pass
4052
+
3448
4053
  def _typecheckingstub__baf2483b6c10091ca1060d8ca8cb538b6f9eb1223193ab69470e79d02ae05c0f(
3449
4054
  *,
3450
4055
  core_count: typing.Optional[jsii.Number] = None,
@@ -3495,6 +4100,7 @@ def _typecheckingstub__6c8991a0b12bd7048f141f964633e62a1f4e02c6996cbf5ff8a1bf165
3495
4100
 
3496
4101
  def _typecheckingstub__46446ab38acd11b881b5c7aac1c73f790aba6f0b8215d39325f4bb1081daf531(
3497
4102
  *,
4103
+ arn: typing.Optional[builtins.str] = None,
3498
4104
  name: typing.Optional[builtins.str] = None,
3499
4105
  ) -> None:
3500
4106
  """Type checking stubs"""
@@ -3507,6 +4113,14 @@ def _typecheckingstub__5785155bdccebc0d8fada1620d3c62726134a88a6a448d54e8ea0f622
3507
4113
  """Type checking stubs"""
3508
4114
  pass
3509
4115
 
4116
+ def _typecheckingstub__b98b268bcbc4c8517d4411ff3cec97b75028e2bf24bcfbe5187fddb5e5ddf912(
4117
+ *,
4118
+ market_type: typing.Optional[builtins.str] = None,
4119
+ spot_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.SpotMarketOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4120
+ ) -> None:
4121
+ """Type checking stubs"""
4122
+ pass
4123
+
3510
4124
  def _typecheckingstub__d879a9a1ea939eed5a5bf31a9e53a33bef78538d965c45115d7750157f87c88b(
3511
4125
  *,
3512
4126
  http_endpoint: typing.Optional[builtins.str] = None,
@@ -3535,19 +4149,31 @@ def _typecheckingstub__8457689e343afe3fd18713b744f081cee9dcd43310c6b6befb13b25b5
3535
4149
  """Type checking stubs"""
3536
4150
  pass
3537
4151
 
4152
+ def _typecheckingstub__88bcc842cecd4571abd8f35580c280ee36aed2ea9152364e215ff691575d151e(
4153
+ *,
4154
+ license_configuration_arn: typing.Optional[builtins.str] = None,
4155
+ ) -> None:
4156
+ """Type checking stubs"""
4157
+ pass
4158
+
3538
4159
  def _typecheckingstub__122edb12e6993ba3ae146e0faaf65a6eef7a6651e2293cb5479f0afe37198259(
3539
4160
  *,
3540
4161
  image_id: builtins.str,
3541
4162
  instance_type: builtins.str,
3542
4163
  block_device_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.BlockDeviceMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
4164
+ capacity_reservation_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.CapacityReservationSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3543
4165
  cpu_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.CpuOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3544
4166
  credit_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.CreditSpecificationRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3545
4167
  disable_api_stop: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3546
4168
  ebs_optimized: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
4169
+ enable_primary_ipv6: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3547
4170
  enclave_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.EnclaveOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3548
4171
  hibernation_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.HibernationOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3549
4172
  iam_instance_profile: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.IamInstanceProfileSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4173
+ instance_market_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4174
+ ipv6_address_count: typing.Optional[jsii.Number] = None,
3550
4175
  key_name: typing.Optional[builtins.str] = None,
4176
+ license_specifications: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.LicenseConfigurationRequestProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
3551
4177
  maintenance_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.InstanceMaintenanceOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3552
4178
  metadata_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.InstanceMetadataOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3553
4179
  monitoring: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.RunInstancesMonitoringEnabledProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -3555,6 +4181,7 @@ def _typecheckingstub__122edb12e6993ba3ae146e0faaf65a6eef7a6651e2293cb5479f0afe3
3555
4181
  network_performance_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.InstanceNetworkPerformanceOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3556
4182
  placement: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.PlacementProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3557
4183
  private_dns_name_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.PrivateDnsNameOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4184
+ subnet_id: typing.Optional[builtins.str] = None,
3558
4185
  tag_specifications: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.TagSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
3559
4186
  user_data: typing.Optional[builtins.str] = None,
3560
4187
  ) -> None:
@@ -3564,7 +4191,9 @@ def _typecheckingstub__122edb12e6993ba3ae146e0faaf65a6eef7a6651e2293cb5479f0afe3
3564
4191
  def _typecheckingstub__74aaa065dbb77262ecab6552e5fde4ac2723c645be4dde2327c06e281386c1f8(
3565
4192
  *,
3566
4193
  availability_zone: typing.Optional[builtins.str] = None,
4194
+ group_id: typing.Optional[builtins.str] = None,
3567
4195
  group_name: typing.Optional[builtins.str] = None,
4196
+ partition_number: typing.Optional[jsii.Number] = None,
3568
4197
  tenancy: typing.Optional[builtins.str] = None,
3569
4198
  ) -> None:
3570
4199
  """Type checking stubs"""
@@ -3586,6 +4215,16 @@ def _typecheckingstub__6fcd9d05f58e0d776ba7b11b076d5a7c565bc9ea5ce223eab03cdac46
3586
4215
  """Type checking stubs"""
3587
4216
  pass
3588
4217
 
4218
+ def _typecheckingstub__3f2b025a20b39464357aca8413f9d8b09d278990163112ca1429525ca31400ea(
4219
+ *,
4220
+ instance_interruption_behavior: typing.Optional[builtins.str] = None,
4221
+ max_price: typing.Optional[builtins.str] = None,
4222
+ spot_instance_type: typing.Optional[builtins.str] = None,
4223
+ valid_until_utc: typing.Optional[builtins.str] = None,
4224
+ ) -> None:
4225
+ """Type checking stubs"""
4226
+ pass
4227
+
3589
4228
  def _typecheckingstub__a80a115a0fb3e43ec2f01b3395420a80cbdd00bb61da5e1c9176167d6eb9bbf0(
3590
4229
  *,
3591
4230
  resource_type: typing.Optional[builtins.str] = None,