aws-cdk-lib 2.165.0__py3-none-any.whl → 2.167.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 (60) hide show
  1. aws_cdk/__init__.py +1 -1
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.165.0.jsii.tgz → aws-cdk-lib@2.167.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_apigateway/__init__.py +9 -0
  5. aws_cdk/aws_appsync/__init__.py +2271 -359
  6. aws_cdk/aws_backup/__init__.py +57 -31
  7. aws_cdk/aws_bedrock/__init__.py +994 -197
  8. aws_cdk/aws_cleanrooms/__init__.py +66 -5
  9. aws_cdk/aws_cloudfront/__init__.py +21 -3
  10. aws_cdk/aws_cloudfront/experimental/__init__.py +3 -3
  11. aws_cdk/aws_codebuild/__init__.py +59 -29
  12. aws_cdk/aws_codepipeline/__init__.py +98 -5
  13. aws_cdk/aws_codestar/__init__.py +1 -1
  14. aws_cdk/aws_cognito/__init__.py +0 -8
  15. aws_cdk/aws_connect/__init__.py +1 -1
  16. aws_cdk/aws_datasync/__init__.py +60 -7
  17. aws_cdk/aws_devopsguru/__init__.py +2 -2
  18. aws_cdk/aws_dms/__init__.py +762 -0
  19. aws_cdk/aws_dynamodb/__init__.py +13 -8
  20. aws_cdk/aws_ec2/__init__.py +316 -11
  21. aws_cdk/aws_ecs/__init__.py +20 -7
  22. aws_cdk/aws_elasticache/__init__.py +16 -9
  23. aws_cdk/aws_elasticloadbalancingv2/__init__.py +73 -46
  24. aws_cdk/aws_emrserverless/__init__.py +35 -33
  25. aws_cdk/aws_events/__init__.py +25 -30
  26. aws_cdk/aws_gamelift/__init__.py +52 -40
  27. aws_cdk/aws_inspectorv2/__init__.py +6 -12
  28. aws_cdk/aws_kinesis/__init__.py +297 -1
  29. aws_cdk/aws_kms/__init__.py +2 -0
  30. aws_cdk/aws_lambda/__init__.py +339 -22
  31. aws_cdk/aws_lambda_nodejs/__init__.py +3 -3
  32. aws_cdk/aws_logs/__init__.py +214 -0
  33. aws_cdk/aws_m2/__init__.py +58 -58
  34. aws_cdk/aws_mediapackagev2/__init__.py +191 -0
  35. aws_cdk/aws_networkfirewall/__init__.py +14 -5
  36. aws_cdk/aws_nimblestudio/__init__.py +6 -103
  37. aws_cdk/aws_opensearchservice/__init__.py +969 -0
  38. aws_cdk/aws_pipes/__init__.py +1 -1
  39. aws_cdk/aws_qbusiness/__init__.py +2 -0
  40. aws_cdk/aws_quicksight/__init__.py +481 -10
  41. aws_cdk/aws_rds/__init__.py +667 -16
  42. aws_cdk/aws_route53/__init__.py +38 -12
  43. aws_cdk/aws_s3_assets/__init__.py +37 -0
  44. aws_cdk/aws_s3_deployment/__init__.py +18 -7
  45. aws_cdk/aws_sagemaker/__init__.py +61 -25
  46. aws_cdk/aws_secretsmanager/__init__.py +2 -1
  47. aws_cdk/aws_servicecatalog/__init__.py +52 -4
  48. aws_cdk/aws_ses/__init__.py +22 -1
  49. aws_cdk/aws_sqs/__init__.py +12 -9
  50. aws_cdk/aws_stepfunctions/__init__.py +8 -0
  51. aws_cdk/aws_synthetics/__init__.py +133 -1
  52. aws_cdk/aws_timestream/__init__.py +41 -0
  53. aws_cdk/aws_wisdom/__init__.py +2348 -54
  54. aws_cdk/triggers/__init__.py +3 -3
  55. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/METADATA +1 -1
  56. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/RECORD +60 -60
  57. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/WHEEL +1 -1
  58. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/LICENSE +0 -0
  59. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/NOTICE +0 -0
  60. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/top_level.txt +0 -0
@@ -5348,6 +5348,7 @@ class DefinitionBody(
5348
5348
  *,
5349
5349
  deploy_time: typing.Optional[builtins.bool] = None,
5350
5350
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
5351
+ source_kms_key: typing.Optional[_IKey_5f11635f] = None,
5351
5352
  asset_hash: typing.Optional[builtins.str] = None,
5352
5353
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
5353
5354
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -5359,6 +5360,7 @@ class DefinitionBody(
5359
5360
  :param path: -
5360
5361
  :param deploy_time: Whether or not the asset needs to exist beyond deployment time; i.e. are copied over to a different location and not needed afterwards. Setting this property to true has an impact on the lifecycle of the asset, because we will assume that it is safe to delete after the CloudFormation deployment succeeds. For example, Lambda Function assets are copied over to Lambda during deployment. Therefore, it is not necessary to store the asset in S3, so we consider those deployTime assets. Default: false
5361
5362
  :param readers: A list of principals that should be able to read this asset from S3. You can use ``asset.grantRead(principal)`` to grant read permissions later. Default: - No principals that can read file asset.
5363
+ :param source_kms_key: The ARN of the KMS key used to encrypt the handler code. Default: - the default server-side encryption with Amazon S3 managed keys(SSE-S3) key will be used.
5362
5364
  :param asset_hash: Specify a custom hash for this asset. If ``assetHashType`` is set it must be set to ``AssetHashType.CUSTOM``. For consistency, this custom hash will be SHA256 hashed and encoded as hex. The resulting hash will be the asset hash. NOTE: the hash is used in order to identify a specific revision of the asset, and used for optimizing and caching deployment activities related to this asset such as packaging, uploading to Amazon S3, etc. If you chose to customize the hash, you will need to make sure it is updated every time the asset changes, or otherwise it is possible that some deployments will not be invalidated. Default: - based on ``assetHashType``
5363
5365
  :param asset_hash_type: Specifies the type of hash to calculate for this asset. If ``assetHash`` is configured, this option must be ``undefined`` or ``AssetHashType.CUSTOM``. Default: - the default is ``AssetHashType.SOURCE``, but if ``assetHash`` is explicitly specified this value defaults to ``AssetHashType.CUSTOM``.
5364
5366
  :param bundling: Bundle the asset by executing a command in a Docker container or a custom bundling provider. The asset path will be mounted at ``/asset-input``. The Docker container is responsible for putting content at ``/asset-output``. The content at ``/asset-output`` will be zipped and used as the final asset. Default: - uploaded as-is to S3 if the asset is a regular file or a .zip file, archived into a .zip file and uploaded to S3 otherwise
@@ -5372,6 +5374,7 @@ class DefinitionBody(
5372
5374
  options = _AssetOptions_2aa69621(
5373
5375
  deploy_time=deploy_time,
5374
5376
  readers=readers,
5377
+ source_kms_key=source_kms_key,
5375
5378
  asset_hash=asset_hash,
5376
5379
  asset_hash_type=asset_hash_type,
5377
5380
  bundling=bundling,
@@ -5920,6 +5923,7 @@ class FileDefinitionBody(
5920
5923
  *,
5921
5924
  deploy_time: typing.Optional[builtins.bool] = None,
5922
5925
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
5926
+ source_kms_key: typing.Optional[_IKey_5f11635f] = None,
5923
5927
  asset_hash: typing.Optional[builtins.str] = None,
5924
5928
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
5925
5929
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -5931,6 +5935,7 @@ class FileDefinitionBody(
5931
5935
  :param path: -
5932
5936
  :param deploy_time: Whether or not the asset needs to exist beyond deployment time; i.e. are copied over to a different location and not needed afterwards. Setting this property to true has an impact on the lifecycle of the asset, because we will assume that it is safe to delete after the CloudFormation deployment succeeds. For example, Lambda Function assets are copied over to Lambda during deployment. Therefore, it is not necessary to store the asset in S3, so we consider those deployTime assets. Default: false
5933
5937
  :param readers: A list of principals that should be able to read this asset from S3. You can use ``asset.grantRead(principal)`` to grant read permissions later. Default: - No principals that can read file asset.
5938
+ :param source_kms_key: The ARN of the KMS key used to encrypt the handler code. Default: - the default server-side encryption with Amazon S3 managed keys(SSE-S3) key will be used.
5934
5939
  :param asset_hash: Specify a custom hash for this asset. If ``assetHashType`` is set it must be set to ``AssetHashType.CUSTOM``. For consistency, this custom hash will be SHA256 hashed and encoded as hex. The resulting hash will be the asset hash. NOTE: the hash is used in order to identify a specific revision of the asset, and used for optimizing and caching deployment activities related to this asset such as packaging, uploading to Amazon S3, etc. If you chose to customize the hash, you will need to make sure it is updated every time the asset changes, or otherwise it is possible that some deployments will not be invalidated. Default: - based on ``assetHashType``
5935
5940
  :param asset_hash_type: Specifies the type of hash to calculate for this asset. If ``assetHash`` is configured, this option must be ``undefined`` or ``AssetHashType.CUSTOM``. Default: - the default is ``AssetHashType.SOURCE``, but if ``assetHash`` is explicitly specified this value defaults to ``AssetHashType.CUSTOM``.
5936
5941
  :param bundling: Bundle the asset by executing a command in a Docker container or a custom bundling provider. The asset path will be mounted at ``/asset-input``. The Docker container is responsible for putting content at ``/asset-output``. The content at ``/asset-output`` will be zipped and used as the final asset. Default: - uploaded as-is to S3 if the asset is a regular file or a .zip file, archived into a .zip file and uploaded to S3 otherwise
@@ -5944,6 +5949,7 @@ class FileDefinitionBody(
5944
5949
  options = _AssetOptions_2aa69621(
5945
5950
  deploy_time=deploy_time,
5946
5951
  readers=readers,
5952
+ source_kms_key=source_kms_key,
5947
5953
  asset_hash=asset_hash,
5948
5954
  asset_hash_type=asset_hash_type,
5949
5955
  bundling=bundling,
@@ -17493,6 +17499,7 @@ def _typecheckingstub__2e34fabd0367a0519a35d86d419baa37e6fe26ad05457e96b236a55bb
17493
17499
  *,
17494
17500
  deploy_time: typing.Optional[builtins.bool] = None,
17495
17501
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
17502
+ source_kms_key: typing.Optional[_IKey_5f11635f] = None,
17496
17503
  asset_hash: typing.Optional[builtins.str] = None,
17497
17504
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
17498
17505
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -17574,6 +17581,7 @@ def _typecheckingstub__526ef9213812e76ec99bd530d4fbea7cc137d220b92525fe763d6d315
17574
17581
  *,
17575
17582
  deploy_time: typing.Optional[builtins.bool] = None,
17576
17583
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
17584
+ source_kms_key: typing.Optional[_IKey_5f11635f] = None,
17577
17585
  asset_hash: typing.Optional[builtins.str] = None,
17578
17586
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
17579
17587
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -307,6 +307,33 @@ canary = synthetics.Canary(self, "MyCanary",
307
307
  )]
308
308
  )
309
309
  ```
310
+
311
+ Canary artifacts are encrypted at rest using an AWS-managed key by default.
312
+
313
+ You can choose the encryption options SSE-S3 or SSE-KMS by setting the `artifactS3EncryptionMode` property.
314
+
315
+ When you use SSE-KMS, you can also supply your own external KMS key by specifying the `kmsKey` property. If you don't, a KMS key will be automatically created and associated with the canary.
316
+
317
+ ```python
318
+ import aws_cdk.aws_kms as kms
319
+
320
+
321
+ key = kms.Key(self, "myKey")
322
+
323
+ canary = synthetics.Canary(self, "MyCanary",
324
+ schedule=synthetics.Schedule.rate(Duration.minutes(5)),
325
+ test=synthetics.Test.custom(
326
+ code=synthetics.Code.from_asset(path.join(__dirname, "canary")),
327
+ handler="index.handler"
328
+ ),
329
+ runtime=synthetics.Runtime.SYNTHETICS_NODEJS_PUPPETEER_7_0,
330
+ artifacts_bucket_lifecycle_rules=[LifecycleRule(
331
+ expiration=Duration.days(30)
332
+ )],
333
+ artifact_s3_encryption_mode=synthetics.ArtifactsEncryptionMode.KMS,
334
+ artifact_s3_kms_key=key
335
+ )
336
+ ```
310
337
  '''
311
338
  from pkgutil import extend_path
312
339
  __path__ = extend_path(__path__, __name__)
@@ -370,6 +397,7 @@ from ..aws_ec2 import (
370
397
  SubnetSelection as _SubnetSelection_e57d76df,
371
398
  )
372
399
  from ..aws_iam import IGrantable as _IGrantable_71c4f5de, IRole as _IRole_235f5d8e
400
+ from ..aws_kms import IKey as _IKey_5f11635f
373
401
  from ..aws_s3 import (
374
402
  IBucket as _IBucket_42e086fd,
375
403
  LifecycleRule as _LifecycleRule_bb74e6ff,
@@ -456,6 +484,40 @@ class ArtifactsBucketLocation:
456
484
  )
457
485
 
458
486
 
487
+ @jsii.enum(jsii_type="aws-cdk-lib.aws_synthetics.ArtifactsEncryptionMode")
488
+ class ArtifactsEncryptionMode(enum.Enum):
489
+ '''Encryption mode for canary artifacts.
490
+
491
+ :exampleMetadata: infused
492
+
493
+ Example::
494
+
495
+ import aws_cdk.aws_kms as kms
496
+
497
+
498
+ key = kms.Key(self, "myKey")
499
+
500
+ canary = synthetics.Canary(self, "MyCanary",
501
+ schedule=synthetics.Schedule.rate(Duration.minutes(5)),
502
+ test=synthetics.Test.custom(
503
+ code=synthetics.Code.from_asset(path.join(__dirname, "canary")),
504
+ handler="index.handler"
505
+ ),
506
+ runtime=synthetics.Runtime.SYNTHETICS_NODEJS_PUPPETEER_7_0,
507
+ artifacts_bucket_lifecycle_rules=[LifecycleRule(
508
+ expiration=Duration.days(30)
509
+ )],
510
+ artifact_s3_encryption_mode=synthetics.ArtifactsEncryptionMode.KMS,
511
+ artifact_s3_kms_key=key
512
+ )
513
+ '''
514
+
515
+ S3_MANAGED = "S3_MANAGED"
516
+ '''Server-side encryption (SSE) with an Amazon S3-managed key.'''
517
+ KMS = "KMS"
518
+ '''Server-side encryption (SSE) with an AWS KMS customer managed key.'''
519
+
520
+
459
521
  @jsii.implements(_IConnectable_10015a05)
460
522
  class Canary(
461
523
  _Resource_45bc6135,
@@ -490,6 +552,8 @@ class Canary(
490
552
  runtime: "Runtime",
491
553
  test: "Test",
492
554
  active_tracing: typing.Optional[builtins.bool] = None,
555
+ artifact_s3_encryption_mode: typing.Optional[ArtifactsEncryptionMode] = None,
556
+ artifact_s3_kms_key: typing.Optional[_IKey_5f11635f] = None,
493
557
  artifacts_bucket_lifecycle_rules: typing.Optional[typing.Sequence[typing.Union[_LifecycleRule_bb74e6ff, typing.Dict[builtins.str, typing.Any]]]] = None,
494
558
  artifacts_bucket_location: typing.Optional[typing.Union[ArtifactsBucketLocation, typing.Dict[builtins.str, typing.Any]]] = None,
495
559
  canary_name: typing.Optional[builtins.str] = None,
@@ -513,6 +577,8 @@ class Canary(
513
577
  :param runtime: Specify the runtime version to use for the canary.
514
578
  :param test: The type of test that you want your canary to run. Use ``Test.custom()`` to specify the test to run.
515
579
  :param active_tracing: Specifies whether this canary is to use active AWS X-Ray tracing when it runs. Active tracing enables this canary run to be displayed in the ServiceLens and X-Ray service maps even if the canary does not hit an endpoint that has X-Ray tracing enabled. Using X-Ray tracing incurs charges. You can enable active tracing only for canaries that use version ``syn-nodejs-2.0`` or later for their canary runtime. Default: false
580
+ :param artifact_s3_encryption_mode: Canary Artifacts in S3 encryption mode. Artifact encryption is only supported for canaries that use Synthetics runtime version ``syn-nodejs-puppeteer-3.3`` or later. Default: - Artifacts are encrypted at rest using an AWS managed key. ``ArtifactsEncryptionMode.KMS`` is set if you specify ``artifactS3KmsKey``.
581
+ :param artifact_s3_kms_key: The KMS key used to encrypt canary artifacts. Default: - no kms key if ``artifactS3EncryptionMode`` is set to ``S3_MANAGED``. A key will be created if one is not provided and ``artifactS3EncryptionMode`` is set to ``KMS``.
516
582
  :param artifacts_bucket_lifecycle_rules: Lifecycle rules for the generated canary artifact bucket. Has no effect if a bucket is passed to ``artifactsBucketLocation``. If you pass a bucket to ``artifactsBucketLocation``, you can add lifecycle rules to the bucket itself. Default: - no rules applied to the generated bucket.
517
583
  :param artifacts_bucket_location: The s3 location that stores the data of the canary runs. Default: - A new s3 bucket will be created without a prefix.
518
584
  :param canary_name: The name of the canary. Be sure to give it a descriptive name that distinguishes it from other canaries in your account. Do not include secrets or proprietary information in your canary name. The canary name makes up part of the canary ARN, which is included in outbound calls over the internet. Default: - A unique name will be generated from the construct ID
@@ -538,6 +604,8 @@ class Canary(
538
604
  runtime=runtime,
539
605
  test=test,
540
606
  active_tracing=active_tracing,
607
+ artifact_s3_encryption_mode=artifact_s3_encryption_mode,
608
+ artifact_s3_kms_key=artifact_s3_kms_key,
541
609
  artifacts_bucket_lifecycle_rules=artifacts_bucket_lifecycle_rules,
542
610
  artifacts_bucket_location=artifacts_bucket_location,
543
611
  canary_name=canary_name,
@@ -733,6 +801,8 @@ class Canary(
733
801
  "runtime": "runtime",
734
802
  "test": "test",
735
803
  "active_tracing": "activeTracing",
804
+ "artifact_s3_encryption_mode": "artifactS3EncryptionMode",
805
+ "artifact_s3_kms_key": "artifactS3KmsKey",
736
806
  "artifacts_bucket_lifecycle_rules": "artifactsBucketLifecycleRules",
737
807
  "artifacts_bucket_location": "artifactsBucketLocation",
738
808
  "canary_name": "canaryName",
@@ -758,6 +828,8 @@ class CanaryProps:
758
828
  runtime: "Runtime",
759
829
  test: "Test",
760
830
  active_tracing: typing.Optional[builtins.bool] = None,
831
+ artifact_s3_encryption_mode: typing.Optional[ArtifactsEncryptionMode] = None,
832
+ artifact_s3_kms_key: typing.Optional[_IKey_5f11635f] = None,
761
833
  artifacts_bucket_lifecycle_rules: typing.Optional[typing.Sequence[typing.Union[_LifecycleRule_bb74e6ff, typing.Dict[builtins.str, typing.Any]]]] = None,
762
834
  artifacts_bucket_location: typing.Optional[typing.Union[ArtifactsBucketLocation, typing.Dict[builtins.str, typing.Any]]] = None,
763
835
  canary_name: typing.Optional[builtins.str] = None,
@@ -780,6 +852,8 @@ class CanaryProps:
780
852
  :param runtime: Specify the runtime version to use for the canary.
781
853
  :param test: The type of test that you want your canary to run. Use ``Test.custom()`` to specify the test to run.
782
854
  :param active_tracing: Specifies whether this canary is to use active AWS X-Ray tracing when it runs. Active tracing enables this canary run to be displayed in the ServiceLens and X-Ray service maps even if the canary does not hit an endpoint that has X-Ray tracing enabled. Using X-Ray tracing incurs charges. You can enable active tracing only for canaries that use version ``syn-nodejs-2.0`` or later for their canary runtime. Default: false
855
+ :param artifact_s3_encryption_mode: Canary Artifacts in S3 encryption mode. Artifact encryption is only supported for canaries that use Synthetics runtime version ``syn-nodejs-puppeteer-3.3`` or later. Default: - Artifacts are encrypted at rest using an AWS managed key. ``ArtifactsEncryptionMode.KMS`` is set if you specify ``artifactS3KmsKey``.
856
+ :param artifact_s3_kms_key: The KMS key used to encrypt canary artifacts. Default: - no kms key if ``artifactS3EncryptionMode`` is set to ``S3_MANAGED``. A key will be created if one is not provided and ``artifactS3EncryptionMode`` is set to ``KMS``.
783
857
  :param artifacts_bucket_lifecycle_rules: Lifecycle rules for the generated canary artifact bucket. Has no effect if a bucket is passed to ``artifactsBucketLocation``. If you pass a bucket to ``artifactsBucketLocation``, you can add lifecycle rules to the bucket itself. Default: - no rules applied to the generated bucket.
784
858
  :param artifacts_bucket_location: The s3 location that stores the data of the canary runs. Default: - A new s3 bucket will be created without a prefix.
785
859
  :param canary_name: The name of the canary. Be sure to give it a descriptive name that distinguishes it from other canaries in your account. Do not include secrets or proprietary information in your canary name. The canary name makes up part of the canary ARN, which is included in outbound calls over the internet. Default: - A unique name will be generated from the construct ID
@@ -823,6 +897,8 @@ class CanaryProps:
823
897
  check_type(argname="argument runtime", value=runtime, expected_type=type_hints["runtime"])
824
898
  check_type(argname="argument test", value=test, expected_type=type_hints["test"])
825
899
  check_type(argname="argument active_tracing", value=active_tracing, expected_type=type_hints["active_tracing"])
900
+ check_type(argname="argument artifact_s3_encryption_mode", value=artifact_s3_encryption_mode, expected_type=type_hints["artifact_s3_encryption_mode"])
901
+ check_type(argname="argument artifact_s3_kms_key", value=artifact_s3_kms_key, expected_type=type_hints["artifact_s3_kms_key"])
826
902
  check_type(argname="argument artifacts_bucket_lifecycle_rules", value=artifacts_bucket_lifecycle_rules, expected_type=type_hints["artifacts_bucket_lifecycle_rules"])
827
903
  check_type(argname="argument artifacts_bucket_location", value=artifacts_bucket_location, expected_type=type_hints["artifacts_bucket_location"])
828
904
  check_type(argname="argument canary_name", value=canary_name, expected_type=type_hints["canary_name"])
@@ -845,6 +921,10 @@ class CanaryProps:
845
921
  }
846
922
  if active_tracing is not None:
847
923
  self._values["active_tracing"] = active_tracing
924
+ if artifact_s3_encryption_mode is not None:
925
+ self._values["artifact_s3_encryption_mode"] = artifact_s3_encryption_mode
926
+ if artifact_s3_kms_key is not None:
927
+ self._values["artifact_s3_kms_key"] = artifact_s3_kms_key
848
928
  if artifacts_bucket_lifecycle_rules is not None:
849
929
  self._values["artifacts_bucket_lifecycle_rules"] = artifacts_bucket_lifecycle_rules
850
930
  if artifacts_bucket_location is not None:
@@ -914,6 +994,29 @@ class CanaryProps:
914
994
  result = self._values.get("active_tracing")
915
995
  return typing.cast(typing.Optional[builtins.bool], result)
916
996
 
997
+ @builtins.property
998
+ def artifact_s3_encryption_mode(self) -> typing.Optional[ArtifactsEncryptionMode]:
999
+ '''Canary Artifacts in S3 encryption mode.
1000
+
1001
+ Artifact encryption is only supported for canaries that use Synthetics runtime
1002
+ version ``syn-nodejs-puppeteer-3.3`` or later.
1003
+
1004
+ :default: - Artifacts are encrypted at rest using an AWS managed key. ``ArtifactsEncryptionMode.KMS`` is set if you specify ``artifactS3KmsKey``.
1005
+
1006
+ :see: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_artifact_encryption.html
1007
+ '''
1008
+ result = self._values.get("artifact_s3_encryption_mode")
1009
+ return typing.cast(typing.Optional[ArtifactsEncryptionMode], result)
1010
+
1011
+ @builtins.property
1012
+ def artifact_s3_kms_key(self) -> typing.Optional[_IKey_5f11635f]:
1013
+ '''The KMS key used to encrypt canary artifacts.
1014
+
1015
+ :default: - no kms key if ``artifactS3EncryptionMode`` is set to ``S3_MANAGED``. A key will be created if one is not provided and ``artifactS3EncryptionMode`` is set to ``KMS``.
1016
+ '''
1017
+ result = self._values.get("artifact_s3_kms_key")
1018
+ return typing.cast(typing.Optional[_IKey_5f11635f], result)
1019
+
917
1020
  @builtins.property
918
1021
  def artifacts_bucket_lifecycle_rules(
919
1022
  self,
@@ -3089,6 +3192,7 @@ class Code(
3089
3192
  *,
3090
3193
  deploy_time: typing.Optional[builtins.bool] = None,
3091
3194
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
3195
+ source_kms_key: typing.Optional[_IKey_5f11635f] = None,
3092
3196
  asset_hash: typing.Optional[builtins.str] = None,
3093
3197
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
3094
3198
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -3103,6 +3207,7 @@ class Code(
3103
3207
  :param asset_path: Either a directory or a .zip file.
3104
3208
  :param deploy_time: Whether or not the asset needs to exist beyond deployment time; i.e. are copied over to a different location and not needed afterwards. Setting this property to true has an impact on the lifecycle of the asset, because we will assume that it is safe to delete after the CloudFormation deployment succeeds. For example, Lambda Function assets are copied over to Lambda during deployment. Therefore, it is not necessary to store the asset in S3, so we consider those deployTime assets. Default: false
3105
3209
  :param readers: A list of principals that should be able to read this asset from S3. You can use ``asset.grantRead(principal)`` to grant read permissions later. Default: - No principals that can read file asset.
3210
+ :param source_kms_key: The ARN of the KMS key used to encrypt the handler code. Default: - the default server-side encryption with Amazon S3 managed keys(SSE-S3) key will be used.
3106
3211
  :param asset_hash: Specify a custom hash for this asset. If ``assetHashType`` is set it must be set to ``AssetHashType.CUSTOM``. For consistency, this custom hash will be SHA256 hashed and encoded as hex. The resulting hash will be the asset hash. NOTE: the hash is used in order to identify a specific revision of the asset, and used for optimizing and caching deployment activities related to this asset such as packaging, uploading to Amazon S3, etc. If you chose to customize the hash, you will need to make sure it is updated every time the asset changes, or otherwise it is possible that some deployments will not be invalidated. Default: - based on ``assetHashType``
3107
3212
  :param asset_hash_type: Specifies the type of hash to calculate for this asset. If ``assetHash`` is configured, this option must be ``undefined`` or ``AssetHashType.CUSTOM``. Default: - the default is ``AssetHashType.SOURCE``, but if ``assetHash`` is explicitly specified this value defaults to ``AssetHashType.CUSTOM``.
3108
3213
  :param bundling: Bundle the asset by executing a command in a Docker container or a custom bundling provider. The asset path will be mounted at ``/asset-input``. The Docker container is responsible for putting content at ``/asset-output``. The content at ``/asset-output`` will be zipped and used as the final asset. Default: - uploaded as-is to S3 if the asset is a regular file or a .zip file, archived into a .zip file and uploaded to S3 otherwise
@@ -3120,6 +3225,7 @@ class Code(
3120
3225
  options = _AssetOptions_2aa69621(
3121
3226
  deploy_time=deploy_time,
3122
3227
  readers=readers,
3228
+ source_kms_key=source_kms_key,
3123
3229
  asset_hash=asset_hash,
3124
3230
  asset_hash_type=asset_hash_type,
3125
3231
  bundling=bundling,
@@ -3794,6 +3900,19 @@ class Runtime(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.aws_synthetics.Run
3794
3900
  '''
3795
3901
  return typing.cast("Runtime", jsii.sget(cls, "SYNTHETICS_NODEJS_PUPPETEER_9_0"))
3796
3902
 
3903
+ @jsii.python.classproperty
3904
+ @jsii.member(jsii_name="SYNTHETICS_NODEJS_PUPPETEER_9_1")
3905
+ def SYNTHETICS_NODEJS_PUPPETEER_9_1(cls) -> "Runtime":
3906
+ '''``syn-nodejs-puppeteer-9.1`` includes the following: - Lambda runtime Node.js 20.x - Puppeteer-core version 22.12.1 - Chromium version 126.0.6478.126.
3907
+
3908
+ New Features:
3909
+
3910
+ - **Bug fixes** Bug fix related to date ranges and pending requests in HAR files.
3911
+
3912
+ :see: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Library_nodejs_puppeteer.html#CloudWatch_Synthetics_runtimeversion-nodejs-puppeteer-9.1
3913
+ '''
3914
+ return typing.cast("Runtime", jsii.sget(cls, "SYNTHETICS_NODEJS_PUPPETEER_9_1"))
3915
+
3797
3916
  @jsii.python.classproperty
3798
3917
  @jsii.member(jsii_name="SYNTHETICS_PYTHON_SELENIUM_1_0")
3799
3918
  def SYNTHETICS_PYTHON_SELENIUM_1_0(cls) -> "Runtime":
@@ -4155,10 +4274,12 @@ class AssetCode(
4155
4274
  # The values are placeholders you should change.
4156
4275
  import aws_cdk as cdk
4157
4276
  from aws_cdk import aws_iam as iam
4277
+ from aws_cdk import aws_kms as kms
4158
4278
  from aws_cdk import aws_synthetics as synthetics
4159
4279
 
4160
4280
  # docker_image: cdk.DockerImage
4161
4281
  # grantable: iam.IGrantable
4282
+ # key: kms.Key
4162
4283
  # local_bundling: cdk.ILocalBundling
4163
4284
 
4164
4285
  asset_code = synthetics.AssetCode("assetPath",
@@ -4194,7 +4315,8 @@ class AssetCode(
4194
4315
  exclude=["exclude"],
4195
4316
  follow_symlinks=cdk.SymlinkFollowMode.NEVER,
4196
4317
  ignore_mode=cdk.IgnoreMode.GLOB,
4197
- readers=[grantable]
4318
+ readers=[grantable],
4319
+ source_kMSKey=key
4198
4320
  )
4199
4321
  '''
4200
4322
 
@@ -4204,6 +4326,7 @@ class AssetCode(
4204
4326
  *,
4205
4327
  deploy_time: typing.Optional[builtins.bool] = None,
4206
4328
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
4329
+ source_kms_key: typing.Optional[_IKey_5f11635f] = None,
4207
4330
  asset_hash: typing.Optional[builtins.str] = None,
4208
4331
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
4209
4332
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -4215,6 +4338,7 @@ class AssetCode(
4215
4338
  :param asset_path: The path to the asset file or directory.
4216
4339
  :param deploy_time: Whether or not the asset needs to exist beyond deployment time; i.e. are copied over to a different location and not needed afterwards. Setting this property to true has an impact on the lifecycle of the asset, because we will assume that it is safe to delete after the CloudFormation deployment succeeds. For example, Lambda Function assets are copied over to Lambda during deployment. Therefore, it is not necessary to store the asset in S3, so we consider those deployTime assets. Default: false
4217
4340
  :param readers: A list of principals that should be able to read this asset from S3. You can use ``asset.grantRead(principal)`` to grant read permissions later. Default: - No principals that can read file asset.
4341
+ :param source_kms_key: The ARN of the KMS key used to encrypt the handler code. Default: - the default server-side encryption with Amazon S3 managed keys(SSE-S3) key will be used.
4218
4342
  :param asset_hash: Specify a custom hash for this asset. If ``assetHashType`` is set it must be set to ``AssetHashType.CUSTOM``. For consistency, this custom hash will be SHA256 hashed and encoded as hex. The resulting hash will be the asset hash. NOTE: the hash is used in order to identify a specific revision of the asset, and used for optimizing and caching deployment activities related to this asset such as packaging, uploading to Amazon S3, etc. If you chose to customize the hash, you will need to make sure it is updated every time the asset changes, or otherwise it is possible that some deployments will not be invalidated. Default: - based on ``assetHashType``
4219
4343
  :param asset_hash_type: Specifies the type of hash to calculate for this asset. If ``assetHash`` is configured, this option must be ``undefined`` or ``AssetHashType.CUSTOM``. Default: - the default is ``AssetHashType.SOURCE``, but if ``assetHash`` is explicitly specified this value defaults to ``AssetHashType.CUSTOM``.
4220
4344
  :param bundling: Bundle the asset by executing a command in a Docker container or a custom bundling provider. The asset path will be mounted at ``/asset-input``. The Docker container is responsible for putting content at ``/asset-output``. The content at ``/asset-output`` will be zipped and used as the final asset. Default: - uploaded as-is to S3 if the asset is a regular file or a .zip file, archived into a .zip file and uploaded to S3 otherwise
@@ -4228,6 +4352,7 @@ class AssetCode(
4228
4352
  options = _AssetOptions_2aa69621(
4229
4353
  deploy_time=deploy_time,
4230
4354
  readers=readers,
4355
+ source_kms_key=source_kms_key,
4231
4356
  asset_hash=asset_hash,
4232
4357
  asset_hash_type=asset_hash_type,
4233
4358
  bundling=bundling,
@@ -4261,6 +4386,7 @@ class AssetCode(
4261
4386
 
4262
4387
  __all__ = [
4263
4388
  "ArtifactsBucketLocation",
4389
+ "ArtifactsEncryptionMode",
4264
4390
  "AssetCode",
4265
4391
  "Canary",
4266
4392
  "CanaryProps",
@@ -4298,6 +4424,8 @@ def _typecheckingstub__b3b6d76e5f93e31884e16cc00a9b4fc93e6782ff7db09c74aa1ef9346
4298
4424
  runtime: Runtime,
4299
4425
  test: Test,
4300
4426
  active_tracing: typing.Optional[builtins.bool] = None,
4427
+ artifact_s3_encryption_mode: typing.Optional[ArtifactsEncryptionMode] = None,
4428
+ artifact_s3_kms_key: typing.Optional[_IKey_5f11635f] = None,
4301
4429
  artifacts_bucket_lifecycle_rules: typing.Optional[typing.Sequence[typing.Union[_LifecycleRule_bb74e6ff, typing.Dict[builtins.str, typing.Any]]]] = None,
4302
4430
  artifacts_bucket_location: typing.Optional[typing.Union[ArtifactsBucketLocation, typing.Dict[builtins.str, typing.Any]]] = None,
4303
4431
  canary_name: typing.Optional[builtins.str] = None,
@@ -4323,6 +4451,8 @@ def _typecheckingstub__44ec0b14d52b66927d4daebe6f97bb070f3629bb0eb86e21668ca7862
4323
4451
  runtime: Runtime,
4324
4452
  test: Test,
4325
4453
  active_tracing: typing.Optional[builtins.bool] = None,
4454
+ artifact_s3_encryption_mode: typing.Optional[ArtifactsEncryptionMode] = None,
4455
+ artifact_s3_kms_key: typing.Optional[_IKey_5f11635f] = None,
4326
4456
  artifacts_bucket_lifecycle_rules: typing.Optional[typing.Sequence[typing.Union[_LifecycleRule_bb74e6ff, typing.Dict[builtins.str, typing.Any]]]] = None,
4327
4457
  artifacts_bucket_location: typing.Optional[typing.Union[ArtifactsBucketLocation, typing.Dict[builtins.str, typing.Any]]] = None,
4328
4458
  canary_name: typing.Optional[builtins.str] = None,
@@ -4622,6 +4752,7 @@ def _typecheckingstub__02201c2190b076bbceced8708b435fab8189f7f505650002941cc7a50
4622
4752
  *,
4623
4753
  deploy_time: typing.Optional[builtins.bool] = None,
4624
4754
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
4755
+ source_kms_key: typing.Optional[_IKey_5f11635f] = None,
4625
4756
  asset_hash: typing.Optional[builtins.str] = None,
4626
4757
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
4627
4758
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -4735,6 +4866,7 @@ def _typecheckingstub__60a29a536d66536254f2ca409a65dc32f30e483b29091222d42f32106
4735
4866
  *,
4736
4867
  deploy_time: typing.Optional[builtins.bool] = None,
4737
4868
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
4869
+ source_kms_key: typing.Optional[_IKey_5f11635f] = None,
4738
4870
  asset_hash: typing.Optional[builtins.str] = None,
4739
4871
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
4740
4872
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -347,6 +347,7 @@ class CfnInfluxDBInstance(
347
347
  name="name",
348
348
  organization="organization",
349
349
  password="password",
350
+ port=123,
350
351
  publicly_accessible=False,
351
352
  tags=[CfnTag(
352
353
  key="key",
@@ -373,6 +374,7 @@ class CfnInfluxDBInstance(
373
374
  name: typing.Optional[builtins.str] = None,
374
375
  organization: typing.Optional[builtins.str] = None,
375
376
  password: typing.Optional[builtins.str] = None,
377
+ port: typing.Optional[jsii.Number] = None,
376
378
  publicly_accessible: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
377
379
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
378
380
  username: typing.Optional[builtins.str] = None,
@@ -392,6 +394,7 @@ class CfnInfluxDBInstance(
392
394
  :param name: The name that uniquely identifies the DB instance when interacting with the Amazon Timestream for InfluxDB API and CLI commands. This name will also be a prefix included in the endpoint. DB instance names must be unique per customer and per region.
393
395
  :param organization: The name of the initial organization for the initial admin user in InfluxDB. An InfluxDB organization is a workspace for a group of users.
394
396
  :param password: The password of the initial admin user created in InfluxDB. This password will allow you to access the InfluxDB UI to perform various administrative tasks and also use the InfluxDB CLI to create an operator token. These attributes will be stored in a Secret created in Amazon SecretManager in your account.
397
+ :param port: The port number on which InfluxDB accepts connections.
395
398
  :param publicly_accessible: Configures the DB instance with a public IP to facilitate access. Default: - false
396
399
  :param tags: A list of key-value pairs to associate with the DB instance.
397
400
  :param username: The username of the initial admin user created in InfluxDB. Must start with a letter and can't end with a hyphen or contain two consecutive hyphens. For example, my-user1. This username will allow you to access the InfluxDB UI to perform various administrative tasks and also use the InfluxDB CLI to create an operator token. These attributes will be stored in a Secret created in Amazon Secrets Manager in your account.
@@ -413,6 +416,7 @@ class CfnInfluxDBInstance(
413
416
  name=name,
414
417
  organization=organization,
415
418
  password=password,
419
+ port=port,
416
420
  publicly_accessible=publicly_accessible,
417
421
  tags=tags,
418
422
  username=username,
@@ -670,6 +674,19 @@ class CfnInfluxDBInstance(
670
674
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
671
675
  jsii.set(self, "password", value) # pyright: ignore[reportArgumentType]
672
676
 
677
+ @builtins.property
678
+ @jsii.member(jsii_name="port")
679
+ def port(self) -> typing.Optional[jsii.Number]:
680
+ '''The port number on which InfluxDB accepts connections.'''
681
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "port"))
682
+
683
+ @port.setter
684
+ def port(self, value: typing.Optional[jsii.Number]) -> None:
685
+ if __debug__:
686
+ type_hints = typing.get_type_hints(_typecheckingstub__9ae9e68a1bb2222ab6cb849a3a301ca28375e9ce32277709782f39c7cb9ce7d4)
687
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
688
+ jsii.set(self, "port", value) # pyright: ignore[reportArgumentType]
689
+
673
690
  @builtins.property
674
691
  @jsii.member(jsii_name="publiclyAccessible")
675
692
  def publicly_accessible(
@@ -890,6 +907,7 @@ class CfnInfluxDBInstance(
890
907
  "name": "name",
891
908
  "organization": "organization",
892
909
  "password": "password",
910
+ "port": "port",
893
911
  "publicly_accessible": "publiclyAccessible",
894
912
  "tags": "tags",
895
913
  "username": "username",
@@ -911,6 +929,7 @@ class CfnInfluxDBInstanceProps:
911
929
  name: typing.Optional[builtins.str] = None,
912
930
  organization: typing.Optional[builtins.str] = None,
913
931
  password: typing.Optional[builtins.str] = None,
932
+ port: typing.Optional[jsii.Number] = None,
914
933
  publicly_accessible: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
915
934
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
916
935
  username: typing.Optional[builtins.str] = None,
@@ -929,6 +948,7 @@ class CfnInfluxDBInstanceProps:
929
948
  :param name: The name that uniquely identifies the DB instance when interacting with the Amazon Timestream for InfluxDB API and CLI commands. This name will also be a prefix included in the endpoint. DB instance names must be unique per customer and per region.
930
949
  :param organization: The name of the initial organization for the initial admin user in InfluxDB. An InfluxDB organization is a workspace for a group of users.
931
950
  :param password: The password of the initial admin user created in InfluxDB. This password will allow you to access the InfluxDB UI to perform various administrative tasks and also use the InfluxDB CLI to create an operator token. These attributes will be stored in a Secret created in Amazon SecretManager in your account.
951
+ :param port: The port number on which InfluxDB accepts connections.
932
952
  :param publicly_accessible: Configures the DB instance with a public IP to facilitate access. Default: - false
933
953
  :param tags: A list of key-value pairs to associate with the DB instance.
934
954
  :param username: The username of the initial admin user created in InfluxDB. Must start with a letter and can't end with a hyphen or contain two consecutive hyphens. For example, my-user1. This username will allow you to access the InfluxDB UI to perform various administrative tasks and also use the InfluxDB CLI to create an operator token. These attributes will be stored in a Secret created in Amazon Secrets Manager in your account.
@@ -960,6 +980,7 @@ class CfnInfluxDBInstanceProps:
960
980
  name="name",
961
981
  organization="organization",
962
982
  password="password",
983
+ port=123,
963
984
  publicly_accessible=False,
964
985
  tags=[CfnTag(
965
986
  key="key",
@@ -982,6 +1003,7 @@ class CfnInfluxDBInstanceProps:
982
1003
  check_type(argname="argument name", value=name, expected_type=type_hints["name"])
983
1004
  check_type(argname="argument organization", value=organization, expected_type=type_hints["organization"])
984
1005
  check_type(argname="argument password", value=password, expected_type=type_hints["password"])
1006
+ check_type(argname="argument port", value=port, expected_type=type_hints["port"])
985
1007
  check_type(argname="argument publicly_accessible", value=publicly_accessible, expected_type=type_hints["publicly_accessible"])
986
1008
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
987
1009
  check_type(argname="argument username", value=username, expected_type=type_hints["username"])
@@ -1008,6 +1030,8 @@ class CfnInfluxDBInstanceProps:
1008
1030
  self._values["organization"] = organization
1009
1031
  if password is not None:
1010
1032
  self._values["password"] = password
1033
+ if port is not None:
1034
+ self._values["port"] = port
1011
1035
  if publicly_accessible is not None:
1012
1036
  self._values["publicly_accessible"] = publicly_accessible
1013
1037
  if tags is not None:
@@ -1127,6 +1151,15 @@ class CfnInfluxDBInstanceProps:
1127
1151
  result = self._values.get("password")
1128
1152
  return typing.cast(typing.Optional[builtins.str], result)
1129
1153
 
1154
+ @builtins.property
1155
+ def port(self) -> typing.Optional[jsii.Number]:
1156
+ '''The port number on which InfluxDB accepts connections.
1157
+
1158
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-port
1159
+ '''
1160
+ result = self._values.get("port")
1161
+ return typing.cast(typing.Optional[jsii.Number], result)
1162
+
1130
1163
  @builtins.property
1131
1164
  def publicly_accessible(
1132
1165
  self,
@@ -3926,6 +3959,7 @@ def _typecheckingstub__261e4a43f1d3c329e317698aa3b0f0428b7e7d3646c4c536f48fd191f
3926
3959
  name: typing.Optional[builtins.str] = None,
3927
3960
  organization: typing.Optional[builtins.str] = None,
3928
3961
  password: typing.Optional[builtins.str] = None,
3962
+ port: typing.Optional[jsii.Number] = None,
3929
3963
  publicly_accessible: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3930
3964
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3931
3965
  username: typing.Optional[builtins.str] = None,
@@ -4007,6 +4041,12 @@ def _typecheckingstub__74f7e1c43a2306182a51c50f7081008d44b95cb4e9c3b52de43127db0
4007
4041
  """Type checking stubs"""
4008
4042
  pass
4009
4043
 
4044
+ def _typecheckingstub__9ae9e68a1bb2222ab6cb849a3a301ca28375e9ce32277709782f39c7cb9ce7d4(
4045
+ value: typing.Optional[jsii.Number],
4046
+ ) -> None:
4047
+ """Type checking stubs"""
4048
+ pass
4049
+
4010
4050
  def _typecheckingstub__f4fc7c874876ac199eadc5d0947e02e2e8f42717e865d6b225956129df9bcf9b(
4011
4051
  value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
4012
4052
  ) -> None:
@@ -4064,6 +4104,7 @@ def _typecheckingstub__d0e1a256f4abdadd4b29eda8fd45f16d71b49061c796d179f90eb728f
4064
4104
  name: typing.Optional[builtins.str] = None,
4065
4105
  organization: typing.Optional[builtins.str] = None,
4066
4106
  password: typing.Optional[builtins.str] = None,
4107
+ port: typing.Optional[jsii.Number] = None,
4067
4108
  publicly_accessible: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
4068
4109
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4069
4110
  username: typing.Optional[builtins.str] = None,