aws-cdk-lib 2.216.0__py3-none-any.whl → 2.218.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 (151) 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.218.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_acmpca/__init__.py +1 -1
  5. aws_cdk/aws_amazonmq/__init__.py +87 -0
  6. aws_cdk/aws_amplify/__init__.py +8 -8
  7. aws_cdk/aws_apigateway/__init__.py +229 -6
  8. aws_cdk/aws_apigatewayv2/__init__.py +60 -2
  9. aws_cdk/aws_appconfig/__init__.py +145 -0
  10. aws_cdk/aws_appflow/__init__.py +116 -0
  11. aws_cdk/aws_appintegrations/__init__.py +116 -0
  12. aws_cdk/aws_appmesh/__init__.py +12 -12
  13. aws_cdk/aws_appstream/__init__.py +101 -4
  14. aws_cdk/aws_appsync/__init__.py +61 -3
  15. aws_cdk/aws_apptest/__init__.py +58 -0
  16. aws_cdk/aws_aps/__init__.py +459 -0
  17. aws_cdk/aws_athena/__init__.py +58 -0
  18. aws_cdk/aws_auditmanager/__init__.py +58 -0
  19. aws_cdk/aws_backup/__init__.py +145 -0
  20. aws_cdk/aws_batch/__init__.py +64 -2
  21. aws_cdk/aws_bedrock/__init__.py +277 -0
  22. aws_cdk/aws_bedrockagentcore/__init__.py +3178 -0
  23. aws_cdk/aws_cassandra/__init__.py +29 -0
  24. aws_cdk/aws_certificatemanager/__init__.py +38 -10
  25. aws_cdk/aws_cleanrooms/__init__.py +163 -0
  26. aws_cdk/aws_cloudformation/__init__.py +14 -14
  27. aws_cdk/aws_cloudfront/__init__.py +69 -8
  28. aws_cdk/aws_cloudfront_origins/__init__.py +87 -7
  29. aws_cdk/aws_cloudtrail/__init__.py +58 -0
  30. aws_cdk/aws_cloudwatch/__init__.py +145 -0
  31. aws_cdk/aws_codebuild/__init__.py +115 -12
  32. aws_cdk/aws_codedeploy/__init__.py +29 -0
  33. aws_cdk/aws_codeguruprofiler/__init__.py +58 -0
  34. aws_cdk/aws_codepipeline/__init__.py +29 -0
  35. aws_cdk/aws_cognito/__init__.py +89 -2
  36. aws_cdk/aws_config/__init__.py +58 -0
  37. aws_cdk/aws_connect/__init__.py +138 -10
  38. aws_cdk/aws_cur/__init__.py +86 -3
  39. aws_cdk/aws_customerprofiles/__init__.py +58 -0
  40. aws_cdk/aws_datapipeline/__init__.py +29 -0
  41. aws_cdk/aws_datasync/__init__.py +351 -0
  42. aws_cdk/aws_datazone/__init__.py +733 -2
  43. aws_cdk/aws_directoryservice/__init__.py +29 -0
  44. aws_cdk/aws_dms/__init__.py +58 -0
  45. aws_cdk/aws_docdb/__init__.py +153 -25
  46. aws_cdk/aws_dsql/__init__.py +29 -0
  47. aws_cdk/aws_dynamodb/__init__.py +181 -0
  48. aws_cdk/aws_ec2/__init__.py +2031 -10
  49. aws_cdk/aws_ecr/__init__.py +116 -0
  50. aws_cdk/aws_ecs/__init__.py +142 -12
  51. aws_cdk/aws_efs/__init__.py +116 -0
  52. aws_cdk/aws_eks/__init__.py +118 -0
  53. aws_cdk/aws_elasticache/__init__.py +261 -0
  54. aws_cdk/aws_elasticbeanstalk/__init__.py +29 -0
  55. aws_cdk/aws_elasticloadbalancingv2/__init__.py +48 -0
  56. aws_cdk/aws_elasticsearch/__init__.py +2 -2
  57. aws_cdk/aws_emr/__init__.py +87 -0
  58. aws_cdk/aws_emrcontainers/__init__.py +58 -0
  59. aws_cdk/aws_emrserverless/__init__.py +58 -0
  60. aws_cdk/aws_entityresolution/__init__.py +145 -0
  61. aws_cdk/aws_events/__init__.py +290 -0
  62. aws_cdk/aws_evs/__init__.py +58 -4
  63. aws_cdk/aws_finspace/__init__.py +58 -0
  64. aws_cdk/aws_gamelift/__init__.py +507 -56
  65. aws_cdk/aws_glue/__init__.py +145 -0
  66. aws_cdk/aws_greengrass/__init__.py +464 -0
  67. aws_cdk/aws_groundstation/__init__.py +87 -0
  68. aws_cdk/aws_guardduty/__init__.py +87 -0
  69. aws_cdk/aws_healthimaging/__init__.py +58 -0
  70. aws_cdk/aws_healthlake/__init__.py +29 -0
  71. aws_cdk/aws_iam/__init__.py +1 -1
  72. aws_cdk/aws_internetmonitor/__init__.py +58 -0
  73. aws_cdk/aws_iot/__init__.py +957 -0
  74. aws_cdk/aws_iotanalytics/__init__.py +116 -0
  75. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +93 -38
  76. aws_cdk/aws_iotevents/__init__.py +87 -0
  77. aws_cdk/aws_iotfleethub/__init__.py +58 -0
  78. aws_cdk/aws_iotfleetwise/__init__.py +116 -0
  79. aws_cdk/aws_iotsitewise/__init__.py +568 -111
  80. aws_cdk/aws_iottwinmaker/__init__.py +145 -0
  81. aws_cdk/aws_iotwireless/__init__.py +464 -0
  82. aws_cdk/aws_kendra/__init__.py +116 -0
  83. aws_cdk/aws_kinesis/__init__.py +58 -0
  84. aws_cdk/aws_kinesisanalytics/__init__.py +31 -0
  85. aws_cdk/aws_kinesisanalyticsv2/__init__.py +29 -0
  86. aws_cdk/aws_kinesisfirehose/__init__.py +58 -0
  87. aws_cdk/aws_kinesisvideo/__init__.py +29 -0
  88. aws_cdk/aws_kms/__init__.py +68 -2
  89. aws_cdk/aws_lambda/__init__.py +104 -0
  90. aws_cdk/aws_lex/__init__.py +29 -0
  91. aws_cdk/aws_location/__init__.py +348 -0
  92. aws_cdk/aws_logs/__init__.py +232 -0
  93. aws_cdk/aws_lookoutequipment/__init__.py +29 -0
  94. aws_cdk/aws_lookoutvision/__init__.py +58 -0
  95. aws_cdk/aws_managedblockchain/__init__.py +145 -0
  96. aws_cdk/aws_medialive/__init__.py +562 -0
  97. aws_cdk/aws_mediapackage/__init__.py +2 -2
  98. aws_cdk/aws_mediatailor/__init__.py +174 -0
  99. aws_cdk/aws_memorydb/__init__.py +203 -0
  100. aws_cdk/aws_mwaa/__init__.py +58 -0
  101. aws_cdk/aws_networkfirewall/__init__.py +10 -10
  102. aws_cdk/aws_networkmanager/__init__.py +92 -0
  103. aws_cdk/aws_nimblestudio/__init__.py +29 -0
  104. aws_cdk/aws_odb/__init__.py +2082 -195
  105. aws_cdk/aws_omics/__init__.py +1520 -103
  106. aws_cdk/aws_opensearchserverless/__init__.py +222 -21
  107. aws_cdk/aws_opensearchservice/__init__.py +5 -4
  108. aws_cdk/aws_opsworks/__init__.py +29 -0
  109. aws_cdk/aws_opsworkscm/__init__.py +29 -0
  110. aws_cdk/aws_organizations/__init__.py +116 -0
  111. aws_cdk/aws_panorama/__init__.py +116 -0
  112. aws_cdk/aws_pcs/__init__.py +9 -9
  113. aws_cdk/aws_pinpoint/__init__.py +116 -0
  114. aws_cdk/aws_qbusiness/__init__.py +232 -0
  115. aws_cdk/aws_qldb/__init__.py +29 -0
  116. aws_cdk/aws_quicksight/__init__.py +295 -3
  117. aws_cdk/aws_rds/__init__.py +402 -58
  118. aws_cdk/aws_redshift/__init__.py +29 -0
  119. aws_cdk/aws_rekognition/__init__.py +87 -0
  120. aws_cdk/aws_resourcegroups/__init__.py +58 -0
  121. aws_cdk/aws_rolesanywhere/__init__.py +145 -0
  122. aws_cdk/aws_route53recoveryreadiness/__init__.py +58 -0
  123. aws_cdk/aws_route53resolver/__init__.py +29 -0
  124. aws_cdk/aws_s3/__init__.py +116 -0
  125. aws_cdk/aws_s3express/__init__.py +116 -0
  126. aws_cdk/aws_sagemaker/__init__.py +715 -1
  127. aws_cdk/aws_scheduler/__init__.py +29 -0
  128. aws_cdk/aws_secretsmanager/__init__.py +29 -0
  129. aws_cdk/aws_servicecatalog/__init__.py +191 -154
  130. aws_cdk/aws_servicecatalogappregistry/__init__.py +116 -0
  131. aws_cdk/aws_servicediscovery/__init__.py +58 -0
  132. aws_cdk/aws_ses/__init__.py +261 -0
  133. aws_cdk/aws_simspaceweaver/__init__.py +29 -0
  134. aws_cdk/aws_smsvoice/__init__.py +5218 -0
  135. aws_cdk/aws_ssm/__init__.py +87 -0
  136. aws_cdk/aws_synthetics/__init__.py +29 -0
  137. aws_cdk/aws_timestream/__init__.py +87 -0
  138. aws_cdk/aws_transfer/__init__.py +274 -12
  139. aws_cdk/aws_verifiedpermissions/__init__.py +59 -1
  140. aws_cdk/aws_voiceid/__init__.py +29 -0
  141. aws_cdk/aws_wisdom/__init__.py +232 -0
  142. aws_cdk/aws_workspaces/__init__.py +58 -0
  143. aws_cdk/aws_workspacesinstances/__init__.py +670 -2
  144. aws_cdk/aws_workspacesthinclient/__init__.py +58 -0
  145. aws_cdk/pipelines/__init__.py +5 -1
  146. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.218.0.dist-info}/METADATA +1 -1
  147. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.218.0.dist-info}/RECORD +151 -149
  148. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.218.0.dist-info}/LICENSE +0 -0
  149. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.218.0.dist-info}/NOTICE +0 -0
  150. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.218.0.dist-info}/WHEEL +0 -0
  151. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.218.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(
@@ -1456,6 +1506,27 @@ class CfnWorkspaceInstance(
1456
1506
 
1457
1507
  jsii.create(self.__class__, self, [scope, id, props])
1458
1508
 
1509
+ @jsii.member(jsii_name="fromWorkspaceInstanceId")
1510
+ @builtins.classmethod
1511
+ def from_workspace_instance_id(
1512
+ cls,
1513
+ scope: _constructs_77d1e7e8.Construct,
1514
+ id: builtins.str,
1515
+ workspace_instance_id: builtins.str,
1516
+ ) -> IWorkspaceInstanceRef:
1517
+ '''Creates a new IWorkspaceInstanceRef from a workspaceInstanceId.
1518
+
1519
+ :param scope: -
1520
+ :param id: -
1521
+ :param workspace_instance_id: -
1522
+ '''
1523
+ if __debug__:
1524
+ type_hints = typing.get_type_hints(_typecheckingstub__a94e20479c19b53a7fbafb99ee8ea99ff43ba48f27b5660512919fc6b36a8f4f)
1525
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
1526
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
1527
+ check_type(argname="argument workspace_instance_id", value=workspace_instance_id, expected_type=type_hints["workspace_instance_id"])
1528
+ return typing.cast(IWorkspaceInstanceRef, jsii.sinvoke(cls, "fromWorkspaceInstanceId", [scope, id, workspace_instance_id]))
1529
+
1459
1530
  @jsii.member(jsii_name="inspect")
1460
1531
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
1461
1532
  '''Examines the CloudFormation resource and discloses attributes.
@@ -1675,6 +1746,153 @@ class CfnWorkspaceInstance(
1675
1746
  k + "=" + repr(v) for k, v in self._values.items()
1676
1747
  )
1677
1748
 
1749
+ @jsii.data_type(
1750
+ jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.CapacityReservationSpecificationProperty",
1751
+ jsii_struct_bases=[],
1752
+ name_mapping={
1753
+ "capacity_reservation_preference": "capacityReservationPreference",
1754
+ "capacity_reservation_target": "capacityReservationTarget",
1755
+ },
1756
+ )
1757
+ class CapacityReservationSpecificationProperty:
1758
+ def __init__(
1759
+ self,
1760
+ *,
1761
+ capacity_reservation_preference: typing.Optional[builtins.str] = None,
1762
+ capacity_reservation_target: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.CapacityReservationTargetProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1763
+ ) -> None:
1764
+ '''
1765
+ :param capacity_reservation_preference:
1766
+ :param capacity_reservation_target:
1767
+
1768
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-capacityreservationspecification.html
1769
+ :exampleMetadata: fixture=_generated
1770
+
1771
+ Example::
1772
+
1773
+ # The code below shows an example of how to instantiate this type.
1774
+ # The values are placeholders you should change.
1775
+ from aws_cdk import aws_workspacesinstances as workspacesinstances
1776
+
1777
+ capacity_reservation_specification_property = workspacesinstances.CfnWorkspaceInstance.CapacityReservationSpecificationProperty(
1778
+ capacity_reservation_preference="capacityReservationPreference",
1779
+ capacity_reservation_target=workspacesinstances.CfnWorkspaceInstance.CapacityReservationTargetProperty(
1780
+ capacity_reservation_id="capacityReservationId",
1781
+ capacity_reservation_resource_group_arn="capacityReservationResourceGroupArn"
1782
+ )
1783
+ )
1784
+ '''
1785
+ if __debug__:
1786
+ type_hints = typing.get_type_hints(_typecheckingstub__2c7447c1d8e8482ef6a31cfa322dfe54d81154cc75e07f12f4604ce41d71d250)
1787
+ check_type(argname="argument capacity_reservation_preference", value=capacity_reservation_preference, expected_type=type_hints["capacity_reservation_preference"])
1788
+ check_type(argname="argument capacity_reservation_target", value=capacity_reservation_target, expected_type=type_hints["capacity_reservation_target"])
1789
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
1790
+ if capacity_reservation_preference is not None:
1791
+ self._values["capacity_reservation_preference"] = capacity_reservation_preference
1792
+ if capacity_reservation_target is not None:
1793
+ self._values["capacity_reservation_target"] = capacity_reservation_target
1794
+
1795
+ @builtins.property
1796
+ def capacity_reservation_preference(self) -> typing.Optional[builtins.str]:
1797
+ '''
1798
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-capacityreservationspecification.html#cfn-workspacesinstances-workspaceinstance-capacityreservationspecification-capacityreservationpreference
1799
+ '''
1800
+ result = self._values.get("capacity_reservation_preference")
1801
+ return typing.cast(typing.Optional[builtins.str], result)
1802
+
1803
+ @builtins.property
1804
+ def capacity_reservation_target(
1805
+ self,
1806
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.CapacityReservationTargetProperty"]]:
1807
+ '''
1808
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-capacityreservationspecification.html#cfn-workspacesinstances-workspaceinstance-capacityreservationspecification-capacityreservationtarget
1809
+ '''
1810
+ result = self._values.get("capacity_reservation_target")
1811
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.CapacityReservationTargetProperty"]], result)
1812
+
1813
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1814
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1815
+
1816
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1817
+ return not (rhs == self)
1818
+
1819
+ def __repr__(self) -> str:
1820
+ return "CapacityReservationSpecificationProperty(%s)" % ", ".join(
1821
+ k + "=" + repr(v) for k, v in self._values.items()
1822
+ )
1823
+
1824
+ @jsii.data_type(
1825
+ jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.CapacityReservationTargetProperty",
1826
+ jsii_struct_bases=[],
1827
+ name_mapping={
1828
+ "capacity_reservation_id": "capacityReservationId",
1829
+ "capacity_reservation_resource_group_arn": "capacityReservationResourceGroupArn",
1830
+ },
1831
+ )
1832
+ class CapacityReservationTargetProperty:
1833
+ def __init__(
1834
+ self,
1835
+ *,
1836
+ capacity_reservation_id: typing.Optional[builtins.str] = None,
1837
+ capacity_reservation_resource_group_arn: typing.Optional[builtins.str] = None,
1838
+ ) -> None:
1839
+ '''
1840
+ :param capacity_reservation_id:
1841
+ :param capacity_reservation_resource_group_arn:
1842
+
1843
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-capacityreservationtarget.html
1844
+ :exampleMetadata: fixture=_generated
1845
+
1846
+ Example::
1847
+
1848
+ # The code below shows an example of how to instantiate this type.
1849
+ # The values are placeholders you should change.
1850
+ from aws_cdk import aws_workspacesinstances as workspacesinstances
1851
+
1852
+ capacity_reservation_target_property = workspacesinstances.CfnWorkspaceInstance.CapacityReservationTargetProperty(
1853
+ capacity_reservation_id="capacityReservationId",
1854
+ capacity_reservation_resource_group_arn="capacityReservationResourceGroupArn"
1855
+ )
1856
+ '''
1857
+ if __debug__:
1858
+ type_hints = typing.get_type_hints(_typecheckingstub__d9f436a25da0d1e919f4f55d90c75f8795f4997204e2fa4a394b043328fc1f18)
1859
+ check_type(argname="argument capacity_reservation_id", value=capacity_reservation_id, expected_type=type_hints["capacity_reservation_id"])
1860
+ check_type(argname="argument capacity_reservation_resource_group_arn", value=capacity_reservation_resource_group_arn, expected_type=type_hints["capacity_reservation_resource_group_arn"])
1861
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
1862
+ if capacity_reservation_id is not None:
1863
+ self._values["capacity_reservation_id"] = capacity_reservation_id
1864
+ if capacity_reservation_resource_group_arn is not None:
1865
+ self._values["capacity_reservation_resource_group_arn"] = capacity_reservation_resource_group_arn
1866
+
1867
+ @builtins.property
1868
+ def capacity_reservation_id(self) -> typing.Optional[builtins.str]:
1869
+ '''
1870
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-capacityreservationtarget.html#cfn-workspacesinstances-workspaceinstance-capacityreservationtarget-capacityreservationid
1871
+ '''
1872
+ result = self._values.get("capacity_reservation_id")
1873
+ return typing.cast(typing.Optional[builtins.str], result)
1874
+
1875
+ @builtins.property
1876
+ def capacity_reservation_resource_group_arn(
1877
+ self,
1878
+ ) -> typing.Optional[builtins.str]:
1879
+ '''
1880
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-capacityreservationtarget.html#cfn-workspacesinstances-workspaceinstance-capacityreservationtarget-capacityreservationresourcegrouparn
1881
+ '''
1882
+ result = self._values.get("capacity_reservation_resource_group_arn")
1883
+ return typing.cast(typing.Optional[builtins.str], result)
1884
+
1885
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1886
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1887
+
1888
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1889
+ return not (rhs == self)
1890
+
1891
+ def __repr__(self) -> str:
1892
+ return "CapacityReservationTargetProperty(%s)" % ", ".join(
1893
+ k + "=" + repr(v) for k, v in self._values.items()
1894
+ )
1895
+
1678
1896
  @jsii.data_type(
1679
1897
  jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.CpuOptionsRequestProperty",
1680
1898
  jsii_struct_bases=[],
@@ -2093,11 +2311,17 @@ class CfnWorkspaceInstance(
2093
2311
  @jsii.data_type(
2094
2312
  jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.IamInstanceProfileSpecificationProperty",
2095
2313
  jsii_struct_bases=[],
2096
- name_mapping={"name": "name"},
2314
+ name_mapping={"arn": "arn", "name": "name"},
2097
2315
  )
2098
2316
  class IamInstanceProfileSpecificationProperty:
2099
- def __init__(self, *, name: typing.Optional[builtins.str] = None) -> None:
2317
+ def __init__(
2318
+ self,
2319
+ *,
2320
+ arn: typing.Optional[builtins.str] = None,
2321
+ name: typing.Optional[builtins.str] = None,
2322
+ ) -> None:
2100
2323
  '''
2324
+ :param arn:
2101
2325
  :param name:
2102
2326
 
2103
2327
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-iaminstanceprofilespecification.html
@@ -2110,16 +2334,28 @@ class CfnWorkspaceInstance(
2110
2334
  from aws_cdk import aws_workspacesinstances as workspacesinstances
2111
2335
 
2112
2336
  iam_instance_profile_specification_property = workspacesinstances.CfnWorkspaceInstance.IamInstanceProfileSpecificationProperty(
2337
+ arn="arn",
2113
2338
  name="name"
2114
2339
  )
2115
2340
  '''
2116
2341
  if __debug__:
2117
2342
  type_hints = typing.get_type_hints(_typecheckingstub__46446ab38acd11b881b5c7aac1c73f790aba6f0b8215d39325f4bb1081daf531)
2343
+ check_type(argname="argument arn", value=arn, expected_type=type_hints["arn"])
2118
2344
  check_type(argname="argument name", value=name, expected_type=type_hints["name"])
2119
2345
  self._values: typing.Dict[builtins.str, typing.Any] = {}
2346
+ if arn is not None:
2347
+ self._values["arn"] = arn
2120
2348
  if name is not None:
2121
2349
  self._values["name"] = name
2122
2350
 
2351
+ @builtins.property
2352
+ def arn(self) -> typing.Optional[builtins.str]:
2353
+ '''
2354
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-iaminstanceprofilespecification.html#cfn-workspacesinstances-workspaceinstance-iaminstanceprofilespecification-arn
2355
+ '''
2356
+ result = self._values.get("arn")
2357
+ return typing.cast(typing.Optional[builtins.str], result)
2358
+
2123
2359
  @builtins.property
2124
2360
  def name(self) -> typing.Optional[builtins.str]:
2125
2361
  '''
@@ -2192,6 +2428,80 @@ class CfnWorkspaceInstance(
2192
2428
  k + "=" + repr(v) for k, v in self._values.items()
2193
2429
  )
2194
2430
 
2431
+ @jsii.data_type(
2432
+ jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty",
2433
+ jsii_struct_bases=[],
2434
+ name_mapping={"market_type": "marketType", "spot_options": "spotOptions"},
2435
+ )
2436
+ class InstanceMarketOptionsRequestProperty:
2437
+ def __init__(
2438
+ self,
2439
+ *,
2440
+ market_type: typing.Optional[builtins.str] = None,
2441
+ spot_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.SpotMarketOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2442
+ ) -> None:
2443
+ '''
2444
+ :param market_type:
2445
+ :param spot_options:
2446
+
2447
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-instancemarketoptionsrequest.html
2448
+ :exampleMetadata: fixture=_generated
2449
+
2450
+ Example::
2451
+
2452
+ # The code below shows an example of how to instantiate this type.
2453
+ # The values are placeholders you should change.
2454
+ from aws_cdk import aws_workspacesinstances as workspacesinstances
2455
+
2456
+ instance_market_options_request_property = workspacesinstances.CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty(
2457
+ market_type="marketType",
2458
+ spot_options=workspacesinstances.CfnWorkspaceInstance.SpotMarketOptionsProperty(
2459
+ instance_interruption_behavior="instanceInterruptionBehavior",
2460
+ max_price="maxPrice",
2461
+ spot_instance_type="spotInstanceType",
2462
+ valid_until_utc="validUntilUtc"
2463
+ )
2464
+ )
2465
+ '''
2466
+ if __debug__:
2467
+ type_hints = typing.get_type_hints(_typecheckingstub__b98b268bcbc4c8517d4411ff3cec97b75028e2bf24bcfbe5187fddb5e5ddf912)
2468
+ check_type(argname="argument market_type", value=market_type, expected_type=type_hints["market_type"])
2469
+ check_type(argname="argument spot_options", value=spot_options, expected_type=type_hints["spot_options"])
2470
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
2471
+ if market_type is not None:
2472
+ self._values["market_type"] = market_type
2473
+ if spot_options is not None:
2474
+ self._values["spot_options"] = spot_options
2475
+
2476
+ @builtins.property
2477
+ def market_type(self) -> typing.Optional[builtins.str]:
2478
+ '''
2479
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-instancemarketoptionsrequest.html#cfn-workspacesinstances-workspaceinstance-instancemarketoptionsrequest-markettype
2480
+ '''
2481
+ result = self._values.get("market_type")
2482
+ return typing.cast(typing.Optional[builtins.str], result)
2483
+
2484
+ @builtins.property
2485
+ def spot_options(
2486
+ self,
2487
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.SpotMarketOptionsProperty"]]:
2488
+ '''
2489
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-instancemarketoptionsrequest.html#cfn-workspacesinstances-workspaceinstance-instancemarketoptionsrequest-spotoptions
2490
+ '''
2491
+ result = self._values.get("spot_options")
2492
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.SpotMarketOptionsProperty"]], result)
2493
+
2494
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2495
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2496
+
2497
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2498
+ return not (rhs == self)
2499
+
2500
+ def __repr__(self) -> str:
2501
+ return "InstanceMarketOptionsRequestProperty(%s)" % ", ".join(
2502
+ k + "=" + repr(v) for k, v in self._values.items()
2503
+ )
2504
+
2195
2505
  @jsii.data_type(
2196
2506
  jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.InstanceMetadataOptionsRequestProperty",
2197
2507
  jsii_struct_bases=[],
@@ -2460,6 +2770,59 @@ class CfnWorkspaceInstance(
2460
2770
  k + "=" + repr(v) for k, v in self._values.items()
2461
2771
  )
2462
2772
 
2773
+ @jsii.data_type(
2774
+ jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.LicenseConfigurationRequestProperty",
2775
+ jsii_struct_bases=[],
2776
+ name_mapping={"license_configuration_arn": "licenseConfigurationArn"},
2777
+ )
2778
+ class LicenseConfigurationRequestProperty:
2779
+ def __init__(
2780
+ self,
2781
+ *,
2782
+ license_configuration_arn: typing.Optional[builtins.str] = None,
2783
+ ) -> None:
2784
+ '''
2785
+ :param license_configuration_arn:
2786
+
2787
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-licenseconfigurationrequest.html
2788
+ :exampleMetadata: fixture=_generated
2789
+
2790
+ Example::
2791
+
2792
+ # The code below shows an example of how to instantiate this type.
2793
+ # The values are placeholders you should change.
2794
+ from aws_cdk import aws_workspacesinstances as workspacesinstances
2795
+
2796
+ license_configuration_request_property = workspacesinstances.CfnWorkspaceInstance.LicenseConfigurationRequestProperty(
2797
+ license_configuration_arn="licenseConfigurationArn"
2798
+ )
2799
+ '''
2800
+ if __debug__:
2801
+ type_hints = typing.get_type_hints(_typecheckingstub__88bcc842cecd4571abd8f35580c280ee36aed2ea9152364e215ff691575d151e)
2802
+ check_type(argname="argument license_configuration_arn", value=license_configuration_arn, expected_type=type_hints["license_configuration_arn"])
2803
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
2804
+ if license_configuration_arn is not None:
2805
+ self._values["license_configuration_arn"] = license_configuration_arn
2806
+
2807
+ @builtins.property
2808
+ def license_configuration_arn(self) -> typing.Optional[builtins.str]:
2809
+ '''
2810
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-licenseconfigurationrequest.html#cfn-workspacesinstances-workspaceinstance-licenseconfigurationrequest-licenseconfigurationarn
2811
+ '''
2812
+ result = self._values.get("license_configuration_arn")
2813
+ return typing.cast(typing.Optional[builtins.str], result)
2814
+
2815
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2816
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2817
+
2818
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2819
+ return not (rhs == self)
2820
+
2821
+ def __repr__(self) -> str:
2822
+ return "LicenseConfigurationRequestProperty(%s)" % ", ".join(
2823
+ k + "=" + repr(v) for k, v in self._values.items()
2824
+ )
2825
+
2463
2826
  @jsii.data_type(
2464
2827
  jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.ManagedInstanceProperty",
2465
2828
  jsii_struct_bases=[],
@@ -2467,14 +2830,19 @@ class CfnWorkspaceInstance(
2467
2830
  "image_id": "imageId",
2468
2831
  "instance_type": "instanceType",
2469
2832
  "block_device_mappings": "blockDeviceMappings",
2833
+ "capacity_reservation_specification": "capacityReservationSpecification",
2470
2834
  "cpu_options": "cpuOptions",
2471
2835
  "credit_specification": "creditSpecification",
2472
2836
  "disable_api_stop": "disableApiStop",
2473
2837
  "ebs_optimized": "ebsOptimized",
2838
+ "enable_primary_ipv6": "enablePrimaryIpv6",
2474
2839
  "enclave_options": "enclaveOptions",
2475
2840
  "hibernation_options": "hibernationOptions",
2476
2841
  "iam_instance_profile": "iamInstanceProfile",
2842
+ "instance_market_options": "instanceMarketOptions",
2843
+ "ipv6_address_count": "ipv6AddressCount",
2477
2844
  "key_name": "keyName",
2845
+ "license_specifications": "licenseSpecifications",
2478
2846
  "maintenance_options": "maintenanceOptions",
2479
2847
  "metadata_options": "metadataOptions",
2480
2848
  "monitoring": "monitoring",
@@ -2482,6 +2850,7 @@ class CfnWorkspaceInstance(
2482
2850
  "network_performance_options": "networkPerformanceOptions",
2483
2851
  "placement": "placement",
2484
2852
  "private_dns_name_options": "privateDnsNameOptions",
2853
+ "subnet_id": "subnetId",
2485
2854
  "tag_specifications": "tagSpecifications",
2486
2855
  "user_data": "userData",
2487
2856
  },
@@ -2493,14 +2862,19 @@ class CfnWorkspaceInstance(
2493
2862
  image_id: builtins.str,
2494
2863
  instance_type: builtins.str,
2495
2864
  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,
2865
+ capacity_reservation_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.CapacityReservationSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2496
2866
  cpu_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.CpuOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2497
2867
  credit_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.CreditSpecificationRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2498
2868
  disable_api_stop: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2499
2869
  ebs_optimized: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2870
+ enable_primary_ipv6: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2500
2871
  enclave_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.EnclaveOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2501
2872
  hibernation_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.HibernationOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2502
2873
  iam_instance_profile: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.IamInstanceProfileSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2874
+ instance_market_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2875
+ ipv6_address_count: typing.Optional[jsii.Number] = None,
2503
2876
  key_name: typing.Optional[builtins.str] = None,
2877
+ 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
2878
  maintenance_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.InstanceMaintenanceOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2505
2879
  metadata_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.InstanceMetadataOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2506
2880
  monitoring: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.RunInstancesMonitoringEnabledProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -2508,6 +2882,7 @@ class CfnWorkspaceInstance(
2508
2882
  network_performance_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.InstanceNetworkPerformanceOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2509
2883
  placement: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.PlacementProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2510
2884
  private_dns_name_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkspaceInstance.PrivateDnsNameOptionsRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2885
+ subnet_id: typing.Optional[builtins.str] = None,
2511
2886
  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
2887
  user_data: typing.Optional[builtins.str] = None,
2513
2888
  ) -> None:
@@ -2515,14 +2890,19 @@ class CfnWorkspaceInstance(
2515
2890
  :param image_id:
2516
2891
  :param instance_type:
2517
2892
  :param block_device_mappings:
2893
+ :param capacity_reservation_specification:
2518
2894
  :param cpu_options:
2519
2895
  :param credit_specification:
2520
2896
  :param disable_api_stop:
2521
2897
  :param ebs_optimized:
2898
+ :param enable_primary_ipv6:
2522
2899
  :param enclave_options:
2523
2900
  :param hibernation_options:
2524
2901
  :param iam_instance_profile:
2902
+ :param instance_market_options:
2903
+ :param ipv6_address_count:
2525
2904
  :param key_name:
2905
+ :param license_specifications:
2526
2906
  :param maintenance_options:
2527
2907
  :param metadata_options:
2528
2908
  :param monitoring:
@@ -2530,6 +2910,7 @@ class CfnWorkspaceInstance(
2530
2910
  :param network_performance_options:
2531
2911
  :param placement:
2532
2912
  :param private_dns_name_options:
2913
+ :param subnet_id:
2533
2914
  :param tag_specifications:
2534
2915
  :param user_data:
2535
2916
 
@@ -2560,6 +2941,13 @@ class CfnWorkspaceInstance(
2560
2941
  no_device="noDevice",
2561
2942
  virtual_name="virtualName"
2562
2943
  )],
2944
+ capacity_reservation_specification=workspacesinstances.CfnWorkspaceInstance.CapacityReservationSpecificationProperty(
2945
+ capacity_reservation_preference="capacityReservationPreference",
2946
+ capacity_reservation_target=workspacesinstances.CfnWorkspaceInstance.CapacityReservationTargetProperty(
2947
+ capacity_reservation_id="capacityReservationId",
2948
+ capacity_reservation_resource_group_arn="capacityReservationResourceGroupArn"
2949
+ )
2950
+ ),
2563
2951
  cpu_options=workspacesinstances.CfnWorkspaceInstance.CpuOptionsRequestProperty(
2564
2952
  core_count=123,
2565
2953
  threads_per_core=123
@@ -2569,6 +2957,7 @@ class CfnWorkspaceInstance(
2569
2957
  ),
2570
2958
  disable_api_stop=False,
2571
2959
  ebs_optimized=False,
2960
+ enable_primary_ipv6=False,
2572
2961
  enclave_options=workspacesinstances.CfnWorkspaceInstance.EnclaveOptionsRequestProperty(
2573
2962
  enabled=False
2574
2963
  ),
@@ -2576,9 +2965,23 @@ class CfnWorkspaceInstance(
2576
2965
  configured=False
2577
2966
  ),
2578
2967
  iam_instance_profile=workspacesinstances.CfnWorkspaceInstance.IamInstanceProfileSpecificationProperty(
2968
+ arn="arn",
2579
2969
  name="name"
2580
2970
  ),
2971
+ instance_market_options=workspacesinstances.CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty(
2972
+ market_type="marketType",
2973
+ spot_options=workspacesinstances.CfnWorkspaceInstance.SpotMarketOptionsProperty(
2974
+ instance_interruption_behavior="instanceInterruptionBehavior",
2975
+ max_price="maxPrice",
2976
+ spot_instance_type="spotInstanceType",
2977
+ valid_until_utc="validUntilUtc"
2978
+ )
2979
+ ),
2980
+ ipv6_address_count=123,
2581
2981
  key_name="keyName",
2982
+ license_specifications=[workspacesinstances.CfnWorkspaceInstance.LicenseConfigurationRequestProperty(
2983
+ license_configuration_arn="licenseConfigurationArn"
2984
+ )],
2582
2985
  maintenance_options=workspacesinstances.CfnWorkspaceInstance.InstanceMaintenanceOptionsRequestProperty(
2583
2986
  auto_recovery="autoRecovery"
2584
2987
  ),
@@ -2603,7 +3006,9 @@ class CfnWorkspaceInstance(
2603
3006
  ),
2604
3007
  placement=workspacesinstances.CfnWorkspaceInstance.PlacementProperty(
2605
3008
  availability_zone="availabilityZone",
3009
+ group_id="groupId",
2606
3010
  group_name="groupName",
3011
+ partition_number=123,
2607
3012
  tenancy="tenancy"
2608
3013
  ),
2609
3014
  private_dns_name_options=workspacesinstances.CfnWorkspaceInstance.PrivateDnsNameOptionsRequestProperty(
@@ -2611,6 +3016,7 @@ class CfnWorkspaceInstance(
2611
3016
  enable_resource_name_dns_aRecord=False,
2612
3017
  hostname_type="hostnameType"
2613
3018
  ),
3019
+ subnet_id="subnetId",
2614
3020
  tag_specifications=[workspacesinstances.CfnWorkspaceInstance.TagSpecificationProperty(
2615
3021
  resource_type="resourceType",
2616
3022
  tags=[CfnTag(
@@ -2626,14 +3032,19 @@ class CfnWorkspaceInstance(
2626
3032
  check_type(argname="argument image_id", value=image_id, expected_type=type_hints["image_id"])
2627
3033
  check_type(argname="argument instance_type", value=instance_type, expected_type=type_hints["instance_type"])
2628
3034
  check_type(argname="argument block_device_mappings", value=block_device_mappings, expected_type=type_hints["block_device_mappings"])
3035
+ check_type(argname="argument capacity_reservation_specification", value=capacity_reservation_specification, expected_type=type_hints["capacity_reservation_specification"])
2629
3036
  check_type(argname="argument cpu_options", value=cpu_options, expected_type=type_hints["cpu_options"])
2630
3037
  check_type(argname="argument credit_specification", value=credit_specification, expected_type=type_hints["credit_specification"])
2631
3038
  check_type(argname="argument disable_api_stop", value=disable_api_stop, expected_type=type_hints["disable_api_stop"])
2632
3039
  check_type(argname="argument ebs_optimized", value=ebs_optimized, expected_type=type_hints["ebs_optimized"])
3040
+ check_type(argname="argument enable_primary_ipv6", value=enable_primary_ipv6, expected_type=type_hints["enable_primary_ipv6"])
2633
3041
  check_type(argname="argument enclave_options", value=enclave_options, expected_type=type_hints["enclave_options"])
2634
3042
  check_type(argname="argument hibernation_options", value=hibernation_options, expected_type=type_hints["hibernation_options"])
2635
3043
  check_type(argname="argument iam_instance_profile", value=iam_instance_profile, expected_type=type_hints["iam_instance_profile"])
3044
+ check_type(argname="argument instance_market_options", value=instance_market_options, expected_type=type_hints["instance_market_options"])
3045
+ check_type(argname="argument ipv6_address_count", value=ipv6_address_count, expected_type=type_hints["ipv6_address_count"])
2636
3046
  check_type(argname="argument key_name", value=key_name, expected_type=type_hints["key_name"])
3047
+ check_type(argname="argument license_specifications", value=license_specifications, expected_type=type_hints["license_specifications"])
2637
3048
  check_type(argname="argument maintenance_options", value=maintenance_options, expected_type=type_hints["maintenance_options"])
2638
3049
  check_type(argname="argument metadata_options", value=metadata_options, expected_type=type_hints["metadata_options"])
2639
3050
  check_type(argname="argument monitoring", value=monitoring, expected_type=type_hints["monitoring"])
@@ -2641,6 +3052,7 @@ class CfnWorkspaceInstance(
2641
3052
  check_type(argname="argument network_performance_options", value=network_performance_options, expected_type=type_hints["network_performance_options"])
2642
3053
  check_type(argname="argument placement", value=placement, expected_type=type_hints["placement"])
2643
3054
  check_type(argname="argument private_dns_name_options", value=private_dns_name_options, expected_type=type_hints["private_dns_name_options"])
3055
+ check_type(argname="argument subnet_id", value=subnet_id, expected_type=type_hints["subnet_id"])
2644
3056
  check_type(argname="argument tag_specifications", value=tag_specifications, expected_type=type_hints["tag_specifications"])
2645
3057
  check_type(argname="argument user_data", value=user_data, expected_type=type_hints["user_data"])
2646
3058
  self._values: typing.Dict[builtins.str, typing.Any] = {
@@ -2649,6 +3061,8 @@ class CfnWorkspaceInstance(
2649
3061
  }
2650
3062
  if block_device_mappings is not None:
2651
3063
  self._values["block_device_mappings"] = block_device_mappings
3064
+ if capacity_reservation_specification is not None:
3065
+ self._values["capacity_reservation_specification"] = capacity_reservation_specification
2652
3066
  if cpu_options is not None:
2653
3067
  self._values["cpu_options"] = cpu_options
2654
3068
  if credit_specification is not None:
@@ -2657,14 +3071,22 @@ class CfnWorkspaceInstance(
2657
3071
  self._values["disable_api_stop"] = disable_api_stop
2658
3072
  if ebs_optimized is not None:
2659
3073
  self._values["ebs_optimized"] = ebs_optimized
3074
+ if enable_primary_ipv6 is not None:
3075
+ self._values["enable_primary_ipv6"] = enable_primary_ipv6
2660
3076
  if enclave_options is not None:
2661
3077
  self._values["enclave_options"] = enclave_options
2662
3078
  if hibernation_options is not None:
2663
3079
  self._values["hibernation_options"] = hibernation_options
2664
3080
  if iam_instance_profile is not None:
2665
3081
  self._values["iam_instance_profile"] = iam_instance_profile
3082
+ if instance_market_options is not None:
3083
+ self._values["instance_market_options"] = instance_market_options
3084
+ if ipv6_address_count is not None:
3085
+ self._values["ipv6_address_count"] = ipv6_address_count
2666
3086
  if key_name is not None:
2667
3087
  self._values["key_name"] = key_name
3088
+ if license_specifications is not None:
3089
+ self._values["license_specifications"] = license_specifications
2668
3090
  if maintenance_options is not None:
2669
3091
  self._values["maintenance_options"] = maintenance_options
2670
3092
  if metadata_options is not None:
@@ -2679,6 +3101,8 @@ class CfnWorkspaceInstance(
2679
3101
  self._values["placement"] = placement
2680
3102
  if private_dns_name_options is not None:
2681
3103
  self._values["private_dns_name_options"] = private_dns_name_options
3104
+ if subnet_id is not None:
3105
+ self._values["subnet_id"] = subnet_id
2682
3106
  if tag_specifications is not None:
2683
3107
  self._values["tag_specifications"] = tag_specifications
2684
3108
  if user_data is not None:
@@ -2712,6 +3136,16 @@ class CfnWorkspaceInstance(
2712
3136
  result = self._values.get("block_device_mappings")
2713
3137
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.BlockDeviceMappingProperty"]]]], result)
2714
3138
 
3139
+ @builtins.property
3140
+ def capacity_reservation_specification(
3141
+ self,
3142
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.CapacityReservationSpecificationProperty"]]:
3143
+ '''
3144
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-managedinstance.html#cfn-workspacesinstances-workspaceinstance-managedinstance-capacityreservationspecification
3145
+ '''
3146
+ result = self._values.get("capacity_reservation_specification")
3147
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.CapacityReservationSpecificationProperty"]], result)
3148
+
2715
3149
  @builtins.property
2716
3150
  def cpu_options(
2717
3151
  self,
@@ -2752,6 +3186,16 @@ class CfnWorkspaceInstance(
2752
3186
  result = self._values.get("ebs_optimized")
2753
3187
  return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
2754
3188
 
3189
+ @builtins.property
3190
+ def enable_primary_ipv6(
3191
+ self,
3192
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
3193
+ '''
3194
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-managedinstance.html#cfn-workspacesinstances-workspaceinstance-managedinstance-enableprimaryipv6
3195
+ '''
3196
+ result = self._values.get("enable_primary_ipv6")
3197
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
3198
+
2755
3199
  @builtins.property
2756
3200
  def enclave_options(
2757
3201
  self,
@@ -2782,6 +3226,24 @@ class CfnWorkspaceInstance(
2782
3226
  result = self._values.get("iam_instance_profile")
2783
3227
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.IamInstanceProfileSpecificationProperty"]], result)
2784
3228
 
3229
+ @builtins.property
3230
+ def instance_market_options(
3231
+ self,
3232
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty"]]:
3233
+ '''
3234
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-managedinstance.html#cfn-workspacesinstances-workspaceinstance-managedinstance-instancemarketoptions
3235
+ '''
3236
+ result = self._values.get("instance_market_options")
3237
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty"]], result)
3238
+
3239
+ @builtins.property
3240
+ def ipv6_address_count(self) -> typing.Optional[jsii.Number]:
3241
+ '''
3242
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-managedinstance.html#cfn-workspacesinstances-workspaceinstance-managedinstance-ipv6addresscount
3243
+ '''
3244
+ result = self._values.get("ipv6_address_count")
3245
+ return typing.cast(typing.Optional[jsii.Number], result)
3246
+
2785
3247
  @builtins.property
2786
3248
  def key_name(self) -> typing.Optional[builtins.str]:
2787
3249
  '''
@@ -2790,6 +3252,16 @@ class CfnWorkspaceInstance(
2790
3252
  result = self._values.get("key_name")
2791
3253
  return typing.cast(typing.Optional[builtins.str], result)
2792
3254
 
3255
+ @builtins.property
3256
+ def license_specifications(
3257
+ self,
3258
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.LicenseConfigurationRequestProperty"]]]]:
3259
+ '''
3260
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-managedinstance.html#cfn-workspacesinstances-workspaceinstance-managedinstance-licensespecifications
3261
+ '''
3262
+ result = self._values.get("license_specifications")
3263
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.LicenseConfigurationRequestProperty"]]]], result)
3264
+
2793
3265
  @builtins.property
2794
3266
  def maintenance_options(
2795
3267
  self,
@@ -2860,6 +3332,14 @@ class CfnWorkspaceInstance(
2860
3332
  result = self._values.get("private_dns_name_options")
2861
3333
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkspaceInstance.PrivateDnsNameOptionsRequestProperty"]], result)
2862
3334
 
3335
+ @builtins.property
3336
+ def subnet_id(self) -> typing.Optional[builtins.str]:
3337
+ '''
3338
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-managedinstance.html#cfn-workspacesinstances-workspaceinstance-managedinstance-subnetid
3339
+ '''
3340
+ result = self._values.get("subnet_id")
3341
+ return typing.cast(typing.Optional[builtins.str], result)
3342
+
2863
3343
  @builtins.property
2864
3344
  def tag_specifications(
2865
3345
  self,
@@ -2894,7 +3374,9 @@ class CfnWorkspaceInstance(
2894
3374
  jsii_struct_bases=[],
2895
3375
  name_mapping={
2896
3376
  "availability_zone": "availabilityZone",
3377
+ "group_id": "groupId",
2897
3378
  "group_name": "groupName",
3379
+ "partition_number": "partitionNumber",
2898
3380
  "tenancy": "tenancy",
2899
3381
  },
2900
3382
  )
@@ -2903,12 +3385,16 @@ class CfnWorkspaceInstance(
2903
3385
  self,
2904
3386
  *,
2905
3387
  availability_zone: typing.Optional[builtins.str] = None,
3388
+ group_id: typing.Optional[builtins.str] = None,
2906
3389
  group_name: typing.Optional[builtins.str] = None,
3390
+ partition_number: typing.Optional[jsii.Number] = None,
2907
3391
  tenancy: typing.Optional[builtins.str] = None,
2908
3392
  ) -> None:
2909
3393
  '''
2910
3394
  :param availability_zone:
3395
+ :param group_id:
2911
3396
  :param group_name:
3397
+ :param partition_number:
2912
3398
  :param tenancy:
2913
3399
 
2914
3400
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-placement.html
@@ -2922,20 +3408,28 @@ class CfnWorkspaceInstance(
2922
3408
 
2923
3409
  placement_property = workspacesinstances.CfnWorkspaceInstance.PlacementProperty(
2924
3410
  availability_zone="availabilityZone",
3411
+ group_id="groupId",
2925
3412
  group_name="groupName",
3413
+ partition_number=123,
2926
3414
  tenancy="tenancy"
2927
3415
  )
2928
3416
  '''
2929
3417
  if __debug__:
2930
3418
  type_hints = typing.get_type_hints(_typecheckingstub__74aaa065dbb77262ecab6552e5fde4ac2723c645be4dde2327c06e281386c1f8)
2931
3419
  check_type(argname="argument availability_zone", value=availability_zone, expected_type=type_hints["availability_zone"])
3420
+ check_type(argname="argument group_id", value=group_id, expected_type=type_hints["group_id"])
2932
3421
  check_type(argname="argument group_name", value=group_name, expected_type=type_hints["group_name"])
3422
+ check_type(argname="argument partition_number", value=partition_number, expected_type=type_hints["partition_number"])
2933
3423
  check_type(argname="argument tenancy", value=tenancy, expected_type=type_hints["tenancy"])
2934
3424
  self._values: typing.Dict[builtins.str, typing.Any] = {}
2935
3425
  if availability_zone is not None:
2936
3426
  self._values["availability_zone"] = availability_zone
3427
+ if group_id is not None:
3428
+ self._values["group_id"] = group_id
2937
3429
  if group_name is not None:
2938
3430
  self._values["group_name"] = group_name
3431
+ if partition_number is not None:
3432
+ self._values["partition_number"] = partition_number
2939
3433
  if tenancy is not None:
2940
3434
  self._values["tenancy"] = tenancy
2941
3435
 
@@ -2947,6 +3441,14 @@ class CfnWorkspaceInstance(
2947
3441
  result = self._values.get("availability_zone")
2948
3442
  return typing.cast(typing.Optional[builtins.str], result)
2949
3443
 
3444
+ @builtins.property
3445
+ def group_id(self) -> typing.Optional[builtins.str]:
3446
+ '''
3447
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-placement.html#cfn-workspacesinstances-workspaceinstance-placement-groupid
3448
+ '''
3449
+ result = self._values.get("group_id")
3450
+ return typing.cast(typing.Optional[builtins.str], result)
3451
+
2950
3452
  @builtins.property
2951
3453
  def group_name(self) -> typing.Optional[builtins.str]:
2952
3454
  '''
@@ -2955,6 +3457,14 @@ class CfnWorkspaceInstance(
2955
3457
  result = self._values.get("group_name")
2956
3458
  return typing.cast(typing.Optional[builtins.str], result)
2957
3459
 
3460
+ @builtins.property
3461
+ def partition_number(self) -> typing.Optional[jsii.Number]:
3462
+ '''
3463
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-placement.html#cfn-workspacesinstances-workspaceinstance-placement-partitionnumber
3464
+ '''
3465
+ result = self._values.get("partition_number")
3466
+ return typing.cast(typing.Optional[jsii.Number], result)
3467
+
2958
3468
  @builtins.property
2959
3469
  def tenancy(self) -> typing.Optional[builtins.str]:
2960
3470
  '''
@@ -3118,6 +3628,106 @@ class CfnWorkspaceInstance(
3118
3628
  k + "=" + repr(v) for k, v in self._values.items()
3119
3629
  )
3120
3630
 
3631
+ @jsii.data_type(
3632
+ jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.SpotMarketOptionsProperty",
3633
+ jsii_struct_bases=[],
3634
+ name_mapping={
3635
+ "instance_interruption_behavior": "instanceInterruptionBehavior",
3636
+ "max_price": "maxPrice",
3637
+ "spot_instance_type": "spotInstanceType",
3638
+ "valid_until_utc": "validUntilUtc",
3639
+ },
3640
+ )
3641
+ class SpotMarketOptionsProperty:
3642
+ def __init__(
3643
+ self,
3644
+ *,
3645
+ instance_interruption_behavior: typing.Optional[builtins.str] = None,
3646
+ max_price: typing.Optional[builtins.str] = None,
3647
+ spot_instance_type: typing.Optional[builtins.str] = None,
3648
+ valid_until_utc: typing.Optional[builtins.str] = None,
3649
+ ) -> None:
3650
+ '''
3651
+ :param instance_interruption_behavior:
3652
+ :param max_price:
3653
+ :param spot_instance_type:
3654
+ :param valid_until_utc:
3655
+
3656
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-spotmarketoptions.html
3657
+ :exampleMetadata: fixture=_generated
3658
+
3659
+ Example::
3660
+
3661
+ # The code below shows an example of how to instantiate this type.
3662
+ # The values are placeholders you should change.
3663
+ from aws_cdk import aws_workspacesinstances as workspacesinstances
3664
+
3665
+ spot_market_options_property = workspacesinstances.CfnWorkspaceInstance.SpotMarketOptionsProperty(
3666
+ instance_interruption_behavior="instanceInterruptionBehavior",
3667
+ max_price="maxPrice",
3668
+ spot_instance_type="spotInstanceType",
3669
+ valid_until_utc="validUntilUtc"
3670
+ )
3671
+ '''
3672
+ if __debug__:
3673
+ type_hints = typing.get_type_hints(_typecheckingstub__3f2b025a20b39464357aca8413f9d8b09d278990163112ca1429525ca31400ea)
3674
+ check_type(argname="argument instance_interruption_behavior", value=instance_interruption_behavior, expected_type=type_hints["instance_interruption_behavior"])
3675
+ check_type(argname="argument max_price", value=max_price, expected_type=type_hints["max_price"])
3676
+ check_type(argname="argument spot_instance_type", value=spot_instance_type, expected_type=type_hints["spot_instance_type"])
3677
+ check_type(argname="argument valid_until_utc", value=valid_until_utc, expected_type=type_hints["valid_until_utc"])
3678
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
3679
+ if instance_interruption_behavior is not None:
3680
+ self._values["instance_interruption_behavior"] = instance_interruption_behavior
3681
+ if max_price is not None:
3682
+ self._values["max_price"] = max_price
3683
+ if spot_instance_type is not None:
3684
+ self._values["spot_instance_type"] = spot_instance_type
3685
+ if valid_until_utc is not None:
3686
+ self._values["valid_until_utc"] = valid_until_utc
3687
+
3688
+ @builtins.property
3689
+ def instance_interruption_behavior(self) -> typing.Optional[builtins.str]:
3690
+ '''
3691
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-spotmarketoptions.html#cfn-workspacesinstances-workspaceinstance-spotmarketoptions-instanceinterruptionbehavior
3692
+ '''
3693
+ result = self._values.get("instance_interruption_behavior")
3694
+ return typing.cast(typing.Optional[builtins.str], result)
3695
+
3696
+ @builtins.property
3697
+ def max_price(self) -> typing.Optional[builtins.str]:
3698
+ '''
3699
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-spotmarketoptions.html#cfn-workspacesinstances-workspaceinstance-spotmarketoptions-maxprice
3700
+ '''
3701
+ result = self._values.get("max_price")
3702
+ return typing.cast(typing.Optional[builtins.str], result)
3703
+
3704
+ @builtins.property
3705
+ def spot_instance_type(self) -> typing.Optional[builtins.str]:
3706
+ '''
3707
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-spotmarketoptions.html#cfn-workspacesinstances-workspaceinstance-spotmarketoptions-spotinstancetype
3708
+ '''
3709
+ result = self._values.get("spot_instance_type")
3710
+ return typing.cast(typing.Optional[builtins.str], result)
3711
+
3712
+ @builtins.property
3713
+ def valid_until_utc(self) -> typing.Optional[builtins.str]:
3714
+ '''
3715
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-spotmarketoptions.html#cfn-workspacesinstances-workspaceinstance-spotmarketoptions-validuntilutc
3716
+ '''
3717
+ result = self._values.get("valid_until_utc")
3718
+ return typing.cast(typing.Optional[builtins.str], result)
3719
+
3720
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3721
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3722
+
3723
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3724
+ return not (rhs == self)
3725
+
3726
+ def __repr__(self) -> str:
3727
+ return "SpotMarketOptionsProperty(%s)" % ", ".join(
3728
+ k + "=" + repr(v) for k, v in self._values.items()
3729
+ )
3730
+
3121
3731
  @jsii.data_type(
3122
3732
  jsii_type="aws-cdk-lib.aws_workspacesinstances.CfnWorkspaceInstance.TagSpecificationProperty",
3123
3733
  jsii_struct_bases=[],
@@ -3411,6 +4021,14 @@ def _typecheckingstub__fe297a4f0279d14c1f9c904fa95a44f828762333773f7e3a7c9943d3b
3411
4021
  """Type checking stubs"""
3412
4022
  pass
3413
4023
 
4024
+ def _typecheckingstub__a94e20479c19b53a7fbafb99ee8ea99ff43ba48f27b5660512919fc6b36a8f4f(
4025
+ scope: _constructs_77d1e7e8.Construct,
4026
+ id: builtins.str,
4027
+ workspace_instance_id: builtins.str,
4028
+ ) -> None:
4029
+ """Type checking stubs"""
4030
+ pass
4031
+
3414
4032
  def _typecheckingstub__2bdc42635ac5557f3eb11885f29e281607cfb0594c2e299de906f90030a10deb(
3415
4033
  inspector: _TreeInspector_488e0dd5,
3416
4034
  ) -> None:
@@ -3445,6 +4063,22 @@ def _typecheckingstub__6f2d2dc4f023dfee96411ef0d53c3f207f589b520679a75d9c4a2ca08
3445
4063
  """Type checking stubs"""
3446
4064
  pass
3447
4065
 
4066
+ def _typecheckingstub__2c7447c1d8e8482ef6a31cfa322dfe54d81154cc75e07f12f4604ce41d71d250(
4067
+ *,
4068
+ capacity_reservation_preference: typing.Optional[builtins.str] = None,
4069
+ capacity_reservation_target: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.CapacityReservationTargetProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4070
+ ) -> None:
4071
+ """Type checking stubs"""
4072
+ pass
4073
+
4074
+ def _typecheckingstub__d9f436a25da0d1e919f4f55d90c75f8795f4997204e2fa4a394b043328fc1f18(
4075
+ *,
4076
+ capacity_reservation_id: typing.Optional[builtins.str] = None,
4077
+ capacity_reservation_resource_group_arn: typing.Optional[builtins.str] = None,
4078
+ ) -> None:
4079
+ """Type checking stubs"""
4080
+ pass
4081
+
3448
4082
  def _typecheckingstub__baf2483b6c10091ca1060d8ca8cb538b6f9eb1223193ab69470e79d02ae05c0f(
3449
4083
  *,
3450
4084
  core_count: typing.Optional[jsii.Number] = None,
@@ -3495,6 +4129,7 @@ def _typecheckingstub__6c8991a0b12bd7048f141f964633e62a1f4e02c6996cbf5ff8a1bf165
3495
4129
 
3496
4130
  def _typecheckingstub__46446ab38acd11b881b5c7aac1c73f790aba6f0b8215d39325f4bb1081daf531(
3497
4131
  *,
4132
+ arn: typing.Optional[builtins.str] = None,
3498
4133
  name: typing.Optional[builtins.str] = None,
3499
4134
  ) -> None:
3500
4135
  """Type checking stubs"""
@@ -3507,6 +4142,14 @@ def _typecheckingstub__5785155bdccebc0d8fada1620d3c62726134a88a6a448d54e8ea0f622
3507
4142
  """Type checking stubs"""
3508
4143
  pass
3509
4144
 
4145
+ def _typecheckingstub__b98b268bcbc4c8517d4411ff3cec97b75028e2bf24bcfbe5187fddb5e5ddf912(
4146
+ *,
4147
+ market_type: typing.Optional[builtins.str] = None,
4148
+ spot_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.SpotMarketOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4149
+ ) -> None:
4150
+ """Type checking stubs"""
4151
+ pass
4152
+
3510
4153
  def _typecheckingstub__d879a9a1ea939eed5a5bf31a9e53a33bef78538d965c45115d7750157f87c88b(
3511
4154
  *,
3512
4155
  http_endpoint: typing.Optional[builtins.str] = None,
@@ -3535,19 +4178,31 @@ def _typecheckingstub__8457689e343afe3fd18713b744f081cee9dcd43310c6b6befb13b25b5
3535
4178
  """Type checking stubs"""
3536
4179
  pass
3537
4180
 
4181
+ def _typecheckingstub__88bcc842cecd4571abd8f35580c280ee36aed2ea9152364e215ff691575d151e(
4182
+ *,
4183
+ license_configuration_arn: typing.Optional[builtins.str] = None,
4184
+ ) -> None:
4185
+ """Type checking stubs"""
4186
+ pass
4187
+
3538
4188
  def _typecheckingstub__122edb12e6993ba3ae146e0faaf65a6eef7a6651e2293cb5479f0afe37198259(
3539
4189
  *,
3540
4190
  image_id: builtins.str,
3541
4191
  instance_type: builtins.str,
3542
4192
  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,
4193
+ capacity_reservation_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.CapacityReservationSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3543
4194
  cpu_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.CpuOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3544
4195
  credit_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.CreditSpecificationRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3545
4196
  disable_api_stop: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3546
4197
  ebs_optimized: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
4198
+ enable_primary_ipv6: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3547
4199
  enclave_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.EnclaveOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3548
4200
  hibernation_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.HibernationOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3549
4201
  iam_instance_profile: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.IamInstanceProfileSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4202
+ instance_market_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.InstanceMarketOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4203
+ ipv6_address_count: typing.Optional[jsii.Number] = None,
3550
4204
  key_name: typing.Optional[builtins.str] = None,
4205
+ 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
4206
  maintenance_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.InstanceMaintenanceOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3552
4207
  metadata_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.InstanceMetadataOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3553
4208
  monitoring: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.RunInstancesMonitoringEnabledProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -3555,6 +4210,7 @@ def _typecheckingstub__122edb12e6993ba3ae146e0faaf65a6eef7a6651e2293cb5479f0afe3
3555
4210
  network_performance_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.InstanceNetworkPerformanceOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3556
4211
  placement: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.PlacementProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3557
4212
  private_dns_name_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkspaceInstance.PrivateDnsNameOptionsRequestProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4213
+ subnet_id: typing.Optional[builtins.str] = None,
3558
4214
  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
4215
  user_data: typing.Optional[builtins.str] = None,
3560
4216
  ) -> None:
@@ -3564,7 +4220,9 @@ def _typecheckingstub__122edb12e6993ba3ae146e0faaf65a6eef7a6651e2293cb5479f0afe3
3564
4220
  def _typecheckingstub__74aaa065dbb77262ecab6552e5fde4ac2723c645be4dde2327c06e281386c1f8(
3565
4221
  *,
3566
4222
  availability_zone: typing.Optional[builtins.str] = None,
4223
+ group_id: typing.Optional[builtins.str] = None,
3567
4224
  group_name: typing.Optional[builtins.str] = None,
4225
+ partition_number: typing.Optional[jsii.Number] = None,
3568
4226
  tenancy: typing.Optional[builtins.str] = None,
3569
4227
  ) -> None:
3570
4228
  """Type checking stubs"""
@@ -3586,6 +4244,16 @@ def _typecheckingstub__6fcd9d05f58e0d776ba7b11b076d5a7c565bc9ea5ce223eab03cdac46
3586
4244
  """Type checking stubs"""
3587
4245
  pass
3588
4246
 
4247
+ def _typecheckingstub__3f2b025a20b39464357aca8413f9d8b09d278990163112ca1429525ca31400ea(
4248
+ *,
4249
+ instance_interruption_behavior: typing.Optional[builtins.str] = None,
4250
+ max_price: typing.Optional[builtins.str] = None,
4251
+ spot_instance_type: typing.Optional[builtins.str] = None,
4252
+ valid_until_utc: typing.Optional[builtins.str] = None,
4253
+ ) -> None:
4254
+ """Type checking stubs"""
4255
+ pass
4256
+
3589
4257
  def _typecheckingstub__a80a115a0fb3e43ec2f01b3395420a80cbdd00bb61da5e1c9176167d6eb9bbf0(
3590
4258
  *,
3591
4259
  resource_type: typing.Optional[builtins.str] = None,