aws-cdk-lib 2.171.0__py3-none-any.whl → 2.172.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 (47) hide show
  1. aws_cdk/__init__.py +471 -161
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.171.0.jsii.tgz → aws-cdk-lib@2.172.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_apigateway/__init__.py +1314 -124
  5. aws_cdk/aws_appsync/__init__.py +159 -136
  6. aws_cdk/aws_autoscaling/__init__.py +81 -24
  7. aws_cdk/aws_bedrock/__init__.py +48 -0
  8. aws_cdk/aws_chatbot/__init__.py +775 -0
  9. aws_cdk/aws_cloudformation/__init__.py +240 -159
  10. aws_cdk/aws_cloudfront/__init__.py +11 -5
  11. aws_cdk/aws_cloudtrail/__init__.py +753 -0
  12. aws_cdk/aws_cognito/__init__.py +825 -4
  13. aws_cdk/aws_connect/__init__.py +429 -0
  14. aws_cdk/aws_customerprofiles/__init__.py +3148 -0
  15. aws_cdk/aws_ec2/__init__.py +872 -5
  16. aws_cdk/aws_ecs/__init__.py +12 -7
  17. aws_cdk/aws_eks/__init__.py +709 -0
  18. aws_cdk/aws_elasticloadbalancingv2/__init__.py +309 -55
  19. aws_cdk/aws_events/__init__.py +515 -8
  20. aws_cdk/aws_iot/__init__.py +42 -4
  21. aws_cdk/aws_iotfleetwise/__init__.py +510 -0
  22. aws_cdk/aws_iotsitewise/__init__.py +156 -0
  23. aws_cdk/aws_lambda/__init__.py +14 -8
  24. aws_cdk/aws_lambda_event_sources/__init__.py +2 -1
  25. aws_cdk/aws_lambda_nodejs/__init__.py +11 -11
  26. aws_cdk/aws_m2/__init__.py +289 -0
  27. aws_cdk/aws_mwaa/__init__.py +6 -6
  28. aws_cdk/aws_opensearchserverless/__init__.py +249 -1
  29. aws_cdk/aws_pipes/__init__.py +14 -30
  30. aws_cdk/aws_qbusiness/__init__.py +3 -1
  31. aws_cdk/aws_quicksight/__init__.py +8270 -10
  32. aws_cdk/aws_rbin/__init__.py +53 -34
  33. aws_cdk/aws_rds/__init__.py +140 -8
  34. aws_cdk/aws_resourcegroups/__init__.py +349 -0
  35. aws_cdk/aws_route53_targets/__init__.py +82 -0
  36. aws_cdk/aws_route53resolver/__init__.py +15 -6
  37. aws_cdk/aws_s3express/__init__.py +403 -2
  38. aws_cdk/aws_sagemaker/__init__.py +124 -112
  39. aws_cdk/aws_ses/__init__.py +79 -41
  40. aws_cdk/aws_wisdom/__init__.py +4713 -172
  41. aws_cdk/aws_workspacesweb/__init__.py +1024 -0
  42. {aws_cdk_lib-2.171.0.dist-info → aws_cdk_lib-2.172.0.dist-info}/METADATA +1 -1
  43. {aws_cdk_lib-2.171.0.dist-info → aws_cdk_lib-2.172.0.dist-info}/RECORD +47 -47
  44. {aws_cdk_lib-2.171.0.dist-info → aws_cdk_lib-2.172.0.dist-info}/LICENSE +0 -0
  45. {aws_cdk_lib-2.171.0.dist-info → aws_cdk_lib-2.172.0.dist-info}/NOTICE +0 -0
  46. {aws_cdk_lib-2.171.0.dist-info → aws_cdk_lib-2.172.0.dist-info}/WHEEL +0 -0
  47. {aws_cdk_lib-2.171.0.dist-info → aws_cdk_lib-2.172.0.dist-info}/top_level.txt +0 -0
@@ -261,7 +261,9 @@ class CfnGuardHook(
261
261
  metaclass=jsii.JSIIMeta,
262
262
  jsii_type="aws-cdk-lib.aws_cloudformation.CfnGuardHook",
263
263
  ):
264
- '''This is a CloudFormation resource for activating the first-party AWS::Hooks::GuardHook.
264
+ '''The ``AWS::CloudFormation::GuardHook`` resource creates a Guard Hook with the specified attributes within your CloudFormation template.
265
+
266
+ Using the Guard domain specific language (DSL), you can author Hooks to evaluate your resources before allowing stack creation, modification, or deletion. For more information, see `Guard Hooks <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/guard-hooks.html>`_ in the *AWS CloudFormation Hooks User Guide* .
265
267
 
266
268
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html
267
269
  :cloudformationResource: AWS::CloudFormation::GuardHook
@@ -336,16 +338,16 @@ class CfnGuardHook(
336
338
  '''
337
339
  :param scope: Scope in which this resource is defined.
338
340
  :param id: Construct identifier for this resource (unique in its scope).
339
- :param alias: The typename alias for the hook.
340
- :param execution_role: IAM Role ARN.
341
- :param failure_mode: Attribute to specify CloudFormation behavior on hook failure. Default: - "WARN"
342
- :param hook_status: Attribute to specify which stacks this hook applies to or should get invoked for. Default: - "DISABLED"
343
- :param rule_location: S3 Source Location for the Guard files.
344
- :param target_operations: Which operations should this Hook run against? Resource changes, stacks or change sets.
345
- :param log_bucket: S3 Bucket where the guard validate report will be uploaded to.
346
- :param options:
347
- :param stack_filters: Filters to allow hooks to target specific stack attributes.
348
- :param target_filters:
341
+ :param alias: The type name alias for the Hook. This alias must be unique per account and Region. The alias must be in the form ``Name1::Name2::Name3`` and must not begin with ``AWS`` . For example, ``Private::Guard::MyTestHook`` .
342
+ :param execution_role: The IAM role that the Hook assumes to retrieve your Guard rules from S3 and optionally write a detailed Guard output report back.
343
+ :param failure_mode: Specifies how the Hook responds when rules fail their evaluation. - ``FAIL`` : Prevents the action from proceeding. This is helpful for enforcing strict compliance or security policies. - ``WARN`` : Issues warnings to users but allows actions to continue. This is useful for non-critical validations or informational checks. Default: - "WARN"
344
+ :param hook_status: Specifies if the Hook is ``ENABLED`` or ``DISABLED`` . Default: - "DISABLED"
345
+ :param rule_location: Specifies the S3 location of your Guard rules.
346
+ :param target_operations: Specifies which type of operation the Hook is run against. Valid values: ``STACK`` | ``RESOURCE`` | ``CHANGE_SET`` | ``CLOUD_CONTROL``
347
+ :param log_bucket: Specifies the name of an S3 bucket to store the Guard output report. This report contains the results of your Guard rule validations.
348
+ :param options: Specifies the S3 location of your input parameters.
349
+ :param stack_filters: Specifies the stack level filters for the Hook.
350
+ :param target_filters: Specifies the target filters for the Hook.
349
351
  '''
350
352
  if __debug__:
351
353
  type_hints = typing.get_type_hints(_typecheckingstub__03161d7a487fda6efdcca08ffddf765149d688cda393f699958050fcb318e260)
@@ -399,7 +401,7 @@ class CfnGuardHook(
399
401
  @builtins.property
400
402
  @jsii.member(jsii_name="attrHookArn")
401
403
  def attr_hook_arn(self) -> builtins.str:
402
- '''The Amazon Resource Name (ARN) of the activated hook.
404
+ '''Returns the ARN of a Guard Hook.
403
405
 
404
406
  :cloudformationAttribute: HookArn
405
407
  '''
@@ -413,7 +415,10 @@ class CfnGuardHook(
413
415
  @builtins.property
414
416
  @jsii.member(jsii_name="alias")
415
417
  def alias(self) -> builtins.str:
416
- '''The typename alias for the hook.'''
418
+ '''The type name alias for the Hook.
419
+
420
+ This alias must be unique per account and Region.
421
+ '''
417
422
  return typing.cast(builtins.str, jsii.get(self, "alias"))
418
423
 
419
424
  @alias.setter
@@ -426,7 +431,7 @@ class CfnGuardHook(
426
431
  @builtins.property
427
432
  @jsii.member(jsii_name="executionRole")
428
433
  def execution_role(self) -> builtins.str:
429
- '''IAM Role ARN.'''
434
+ '''The IAM role that the Hook assumes to retrieve your Guard rules from S3 and optionally write a detailed Guard output report back.'''
430
435
  return typing.cast(builtins.str, jsii.get(self, "executionRole"))
431
436
 
432
437
  @execution_role.setter
@@ -439,7 +444,7 @@ class CfnGuardHook(
439
444
  @builtins.property
440
445
  @jsii.member(jsii_name="failureMode")
441
446
  def failure_mode(self) -> builtins.str:
442
- '''Attribute to specify CloudFormation behavior on hook failure.'''
447
+ '''Specifies how the Hook responds when rules fail their evaluation.'''
443
448
  return typing.cast(builtins.str, jsii.get(self, "failureMode"))
444
449
 
445
450
  @failure_mode.setter
@@ -452,7 +457,7 @@ class CfnGuardHook(
452
457
  @builtins.property
453
458
  @jsii.member(jsii_name="hookStatus")
454
459
  def hook_status(self) -> builtins.str:
455
- '''Attribute to specify which stacks this hook applies to or should get invoked for.'''
460
+ '''Specifies if the Hook is ``ENABLED`` or ``DISABLED`` .'''
456
461
  return typing.cast(builtins.str, jsii.get(self, "hookStatus"))
457
462
 
458
463
  @hook_status.setter
@@ -467,7 +472,7 @@ class CfnGuardHook(
467
472
  def rule_location(
468
473
  self,
469
474
  ) -> typing.Union[_IResolvable_da3f097b, "CfnGuardHook.S3LocationProperty"]:
470
- '''S3 Source Location for the Guard files.'''
475
+ '''Specifies the S3 location of your Guard rules.'''
471
476
  return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnGuardHook.S3LocationProperty"], jsii.get(self, "ruleLocation"))
472
477
 
473
478
  @rule_location.setter
@@ -483,7 +488,7 @@ class CfnGuardHook(
483
488
  @builtins.property
484
489
  @jsii.member(jsii_name="targetOperations")
485
490
  def target_operations(self) -> typing.List[builtins.str]:
486
- '''Which operations should this Hook run against?'''
491
+ '''Specifies which type of operation the Hook is run against.'''
487
492
  return typing.cast(typing.List[builtins.str], jsii.get(self, "targetOperations"))
488
493
 
489
494
  @target_operations.setter
@@ -496,7 +501,7 @@ class CfnGuardHook(
496
501
  @builtins.property
497
502
  @jsii.member(jsii_name="logBucket")
498
503
  def log_bucket(self) -> typing.Optional[builtins.str]:
499
- '''S3 Bucket where the guard validate report will be uploaded to.'''
504
+ '''Specifies the name of an S3 bucket to store the Guard output report.'''
500
505
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "logBucket"))
501
506
 
502
507
  @log_bucket.setter
@@ -511,6 +516,7 @@ class CfnGuardHook(
511
516
  def options(
512
517
  self,
513
518
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardHook.OptionsProperty"]]:
519
+ '''Specifies the S3 location of your input parameters.'''
514
520
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardHook.OptionsProperty"]], jsii.get(self, "options"))
515
521
 
516
522
  @options.setter
@@ -528,7 +534,7 @@ class CfnGuardHook(
528
534
  def stack_filters(
529
535
  self,
530
536
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardHook.StackFiltersProperty"]]:
531
- '''Filters to allow hooks to target specific stack attributes.'''
537
+ '''Specifies the stack level filters for the Hook.'''
532
538
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardHook.StackFiltersProperty"]], jsii.get(self, "stackFilters"))
533
539
 
534
540
  @stack_filters.setter
@@ -546,6 +552,7 @@ class CfnGuardHook(
546
552
  def target_filters(
547
553
  self,
548
554
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardHook.TargetFiltersProperty"]]:
555
+ '''Specifies the target filters for the Hook.'''
549
556
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardHook.TargetFiltersProperty"]], jsii.get(self, "targetFilters"))
550
557
 
551
558
  @target_filters.setter
@@ -569,8 +576,9 @@ class CfnGuardHook(
569
576
  *,
570
577
  input_params: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGuardHook.S3LocationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
571
578
  ) -> None:
572
- '''
573
- :param input_params: S3 Source Location for the Guard files.
579
+ '''Specifies the input parameters for a Guard Hook.
580
+
581
+ :param input_params: Specifies the S3 location where your input parameters are located.
574
582
 
575
583
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-options.html
576
584
  :exampleMetadata: fixture=_generated
@@ -601,7 +609,7 @@ class CfnGuardHook(
601
609
  def input_params(
602
610
  self,
603
611
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardHook.S3LocationProperty"]]:
604
- '''S3 Source Location for the Guard files.
612
+ '''Specifies the S3 location where your input parameters are located.
605
613
 
606
614
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-options.html#cfn-cloudformation-guardhook-options-inputparams
607
615
  '''
@@ -631,10 +639,10 @@ class CfnGuardHook(
631
639
  uri: builtins.str,
632
640
  version_id: typing.Optional[builtins.str] = None,
633
641
  ) -> None:
634
- '''S3 Source Location for the Guard files.
642
+ '''Specifies the S3 location where your Guard rules or input parameters are located.
635
643
 
636
- :param uri: S3 uri of Guard files.
637
- :param version_id: S3 object version.
644
+ :param uri: Specifies the S3 path to the file containing your Guard rules or input parameters (in the form ``s3://<bucket name>/<file name>`` ). For Guard rules, the object stored in S3 must have one of the following file extensions: ``.guard`` , ``.zip`` , or ``.tar.gz`` . For input parameters, the object stored in S3 must have one of the following file extensions: ``.yaml`` , ``.json`` , ``.zip`` , or ``.tar.gz`` .
645
+ :param version_id: For S3 buckets with versioning enabled, specifies the unique ID of the S3 object version to download your Guard rules or input parameters from. The Guard Hook downloads files from S3 every time the Hook is invoked. To prevent accidental changes or deletions, we recommend using a version when configuring your Guard Hook.
638
646
 
639
647
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-s3location.html
640
648
  :exampleMetadata: fixture=_generated
@@ -664,7 +672,11 @@ class CfnGuardHook(
664
672
 
665
673
  @builtins.property
666
674
  def uri(self) -> builtins.str:
667
- '''S3 uri of Guard files.
675
+ '''Specifies the S3 path to the file containing your Guard rules or input parameters (in the form ``s3://<bucket name>/<file name>`` ).
676
+
677
+ For Guard rules, the object stored in S3 must have one of the following file extensions: ``.guard`` , ``.zip`` , or ``.tar.gz`` .
678
+
679
+ For input parameters, the object stored in S3 must have one of the following file extensions: ``.yaml`` , ``.json`` , ``.zip`` , or ``.tar.gz`` .
668
680
 
669
681
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-s3location.html#cfn-cloudformation-guardhook-s3location-uri
670
682
  '''
@@ -674,7 +686,9 @@ class CfnGuardHook(
674
686
 
675
687
  @builtins.property
676
688
  def version_id(self) -> typing.Optional[builtins.str]:
677
- '''S3 object version.
689
+ '''For S3 buckets with versioning enabled, specifies the unique ID of the S3 object version to download your Guard rules or input parameters from.
690
+
691
+ The Guard Hook downloads files from S3 every time the Hook is invoked. To prevent accidental changes or deletions, we recommend using a version when configuring your Guard Hook.
678
692
 
679
693
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-s3location.html#cfn-cloudformation-guardhook-s3location-versionid
680
694
  '''
@@ -709,11 +723,15 @@ class CfnGuardHook(
709
723
  stack_names: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGuardHook.StackNamesProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
710
724
  stack_roles: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGuardHook.StackRolesProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
711
725
  ) -> None:
712
- '''Filters to allow hooks to target specific stack attributes.
726
+ '''The ``StackFilters`` property type specifies stack level filters for a Hook.
727
+
728
+ The ``StackNames`` or ``StackRoles`` properties are optional. However, you must specify at least one of these properties.
729
+
730
+ For more information, see `AWS CloudFormation Hooks stack level filters <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-stack-level-filtering.html>`_ .
713
731
 
714
- :param filtering_criteria: Attribute to specify the filtering behavior. ANY will make the Hook pass if one filter matches. ALL will make the Hook pass if all filters match Default: - "ALL"
715
- :param stack_names: List of stack names as filters.
716
- :param stack_roles: List of stack roles that are performing the stack operations.
732
+ :param filtering_criteria: The filtering criteria. - All stack names and stack roles ( ``All`` ): The Hook will only be invoked when all specified filters match. - Any stack names and stack roles ( ``Any`` ): The Hook will be invoked if at least one of the specified filters match. Default: - "ALL"
733
+ :param stack_names: Includes or excludes specific stacks from Hook invocations.
734
+ :param stack_roles: Includes or excludes specific stacks from Hook invocations based on their associated IAM roles.
717
735
 
718
736
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-stackfilters.html
719
737
  :exampleMetadata: fixture=_generated
@@ -753,9 +771,10 @@ class CfnGuardHook(
753
771
 
754
772
  @builtins.property
755
773
  def filtering_criteria(self) -> builtins.str:
756
- '''Attribute to specify the filtering behavior.
774
+ '''The filtering criteria.
757
775
 
758
- ANY will make the Hook pass if one filter matches. ALL will make the Hook pass if all filters match
776
+ - All stack names and stack roles ( ``All`` ): The Hook will only be invoked when all specified filters match.
777
+ - Any stack names and stack roles ( ``Any`` ): The Hook will be invoked if at least one of the specified filters match.
759
778
 
760
779
  :default: - "ALL"
761
780
 
@@ -769,7 +788,7 @@ class CfnGuardHook(
769
788
  def stack_names(
770
789
  self,
771
790
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardHook.StackNamesProperty"]]:
772
- '''List of stack names as filters.
791
+ '''Includes or excludes specific stacks from Hook invocations.
773
792
 
774
793
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-stackfilters.html#cfn-cloudformation-guardhook-stackfilters-stacknames
775
794
  '''
@@ -780,7 +799,7 @@ class CfnGuardHook(
780
799
  def stack_roles(
781
800
  self,
782
801
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardHook.StackRolesProperty"]]:
783
- '''List of stack roles that are performing the stack operations.
802
+ '''Includes or excludes specific stacks from Hook invocations based on their associated IAM roles.
784
803
 
785
804
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-stackfilters.html#cfn-cloudformation-guardhook-stackfilters-stackroles
786
805
  '''
@@ -810,10 +829,12 @@ class CfnGuardHook(
810
829
  exclude: typing.Optional[typing.Sequence[builtins.str]] = None,
811
830
  include: typing.Optional[typing.Sequence[builtins.str]] = None,
812
831
  ) -> None:
813
- '''List of stack names as filters.
832
+ '''Specifies the stack names for the ``StackFilters`` property type to include or exclude specific stacks from Hook invocations.
814
833
 
815
- :param exclude: List of stack names that the hook is going to be excluded from.
816
- :param include: List of stack names that the hook is going to target.
834
+ For more information, see `AWS CloudFormation Hooks stack level filters <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-stack-level-filtering.html>`_ .
835
+
836
+ :param exclude: The stack names to exclude. All stacks except those listed here will invoke the Hook.
837
+ :param include: The stack names to include. Only the stacks specified in this list will invoke the Hook.
817
838
 
818
839
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-stacknames.html
819
840
  :exampleMetadata: fixture=_generated
@@ -841,7 +862,9 @@ class CfnGuardHook(
841
862
 
842
863
  @builtins.property
843
864
  def exclude(self) -> typing.Optional[typing.List[builtins.str]]:
844
- '''List of stack names that the hook is going to be excluded from.
865
+ '''The stack names to exclude.
866
+
867
+ All stacks except those listed here will invoke the Hook.
845
868
 
846
869
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-stacknames.html#cfn-cloudformation-guardhook-stacknames-exclude
847
870
  '''
@@ -850,7 +873,9 @@ class CfnGuardHook(
850
873
 
851
874
  @builtins.property
852
875
  def include(self) -> typing.Optional[typing.List[builtins.str]]:
853
- '''List of stack names that the hook is going to target.
876
+ '''The stack names to include.
877
+
878
+ Only the stacks specified in this list will invoke the Hook.
854
879
 
855
880
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-stacknames.html#cfn-cloudformation-guardhook-stacknames-include
856
881
  '''
@@ -880,10 +905,12 @@ class CfnGuardHook(
880
905
  exclude: typing.Optional[typing.Sequence[builtins.str]] = None,
881
906
  include: typing.Optional[typing.Sequence[builtins.str]] = None,
882
907
  ) -> None:
883
- '''List of stack roles that are performing the stack operations.
908
+ '''Specifies the stack roles for the ``StackFilters`` property type to include or exclude specific stacks from Hook invocations based on their associated IAM roles.
884
909
 
885
- :param exclude: List of stack roles that the hook is going to be excluded from.
886
- :param include: List of stack roles that the hook is going to target.
910
+ For more information, see `AWS CloudFormation Hooks stack level filters <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-stack-level-filtering.html>`_ .
911
+
912
+ :param exclude: The IAM role ARNs for stacks you want to exclude. The Hook will be invoked on all stacks except those initiated by the specified roles.
913
+ :param include: The IAM role ARNs to target stacks associated with these roles. Only stack operations initiated by these roles will invoke the Hook.
887
914
 
888
915
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-stackroles.html
889
916
  :exampleMetadata: fixture=_generated
@@ -911,7 +938,9 @@ class CfnGuardHook(
911
938
 
912
939
  @builtins.property
913
940
  def exclude(self) -> typing.Optional[typing.List[builtins.str]]:
914
- '''List of stack roles that the hook is going to be excluded from.
941
+ '''The IAM role ARNs for stacks you want to exclude.
942
+
943
+ The Hook will be invoked on all stacks except those initiated by the specified roles.
915
944
 
916
945
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-stackroles.html#cfn-cloudformation-guardhook-stackroles-exclude
917
946
  '''
@@ -920,7 +949,9 @@ class CfnGuardHook(
920
949
 
921
950
  @builtins.property
922
951
  def include(self) -> typing.Optional[typing.List[builtins.str]]:
923
- '''List of stack roles that the hook is going to target.
952
+ '''The IAM role ARNs to target stacks associated with these roles.
953
+
954
+ Only stack operations initiated by these roles will invoke the Hook.
924
955
 
925
956
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-stackroles.html#cfn-cloudformation-guardhook-stackroles-include
926
957
  '''
@@ -955,7 +986,10 @@ class CfnGuardHook(
955
986
  invocation_points: typing.Optional[typing.Sequence[builtins.str]] = None,
956
987
  target_names: typing.Optional[typing.Sequence[builtins.str]] = None,
957
988
  ) -> None:
958
- '''
989
+ '''The ``TargetFilters`` property type specifies the target filters for the Hook.
990
+
991
+ For more information, see `AWS CloudFormation Hook target filters <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/specify-hook-configuration-targetfilters.html>`_ .
992
+
959
993
  :param actions: List of actions that the hook is going to target.
960
994
  :param invocation_points: List of invocation points that the hook is going to target.
961
995
  :param target_names: List of type names that the hook is going to target.
@@ -1060,16 +1094,16 @@ class CfnGuardHookProps:
1060
1094
  ) -> None:
1061
1095
  '''Properties for defining a ``CfnGuardHook``.
1062
1096
 
1063
- :param alias: The typename alias for the hook.
1064
- :param execution_role: IAM Role ARN.
1065
- :param failure_mode: Attribute to specify CloudFormation behavior on hook failure. Default: - "WARN"
1066
- :param hook_status: Attribute to specify which stacks this hook applies to or should get invoked for. Default: - "DISABLED"
1067
- :param rule_location: S3 Source Location for the Guard files.
1068
- :param target_operations: Which operations should this Hook run against? Resource changes, stacks or change sets.
1069
- :param log_bucket: S3 Bucket where the guard validate report will be uploaded to.
1070
- :param options:
1071
- :param stack_filters: Filters to allow hooks to target specific stack attributes.
1072
- :param target_filters:
1097
+ :param alias: The type name alias for the Hook. This alias must be unique per account and Region. The alias must be in the form ``Name1::Name2::Name3`` and must not begin with ``AWS`` . For example, ``Private::Guard::MyTestHook`` .
1098
+ :param execution_role: The IAM role that the Hook assumes to retrieve your Guard rules from S3 and optionally write a detailed Guard output report back.
1099
+ :param failure_mode: Specifies how the Hook responds when rules fail their evaluation. - ``FAIL`` : Prevents the action from proceeding. This is helpful for enforcing strict compliance or security policies. - ``WARN`` : Issues warnings to users but allows actions to continue. This is useful for non-critical validations or informational checks. Default: - "WARN"
1100
+ :param hook_status: Specifies if the Hook is ``ENABLED`` or ``DISABLED`` . Default: - "DISABLED"
1101
+ :param rule_location: Specifies the S3 location of your Guard rules.
1102
+ :param target_operations: Specifies which type of operation the Hook is run against. Valid values: ``STACK`` | ``RESOURCE`` | ``CHANGE_SET`` | ``CLOUD_CONTROL``
1103
+ :param log_bucket: Specifies the name of an S3 bucket to store the Guard output report. This report contains the results of your Guard rule validations.
1104
+ :param options: Specifies the S3 location of your input parameters.
1105
+ :param stack_filters: Specifies the stack level filters for the Hook.
1106
+ :param target_filters: Specifies the target filters for the Hook.
1073
1107
 
1074
1108
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html
1075
1109
  :exampleMetadata: fixture=_generated
@@ -1154,7 +1188,9 @@ class CfnGuardHookProps:
1154
1188
 
1155
1189
  @builtins.property
1156
1190
  def alias(self) -> builtins.str:
1157
- '''The typename alias for the hook.
1191
+ '''The type name alias for the Hook. This alias must be unique per account and Region.
1192
+
1193
+ The alias must be in the form ``Name1::Name2::Name3`` and must not begin with ``AWS`` . For example, ``Private::Guard::MyTestHook`` .
1158
1194
 
1159
1195
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html#cfn-cloudformation-guardhook-alias
1160
1196
  '''
@@ -1164,7 +1200,7 @@ class CfnGuardHookProps:
1164
1200
 
1165
1201
  @builtins.property
1166
1202
  def execution_role(self) -> builtins.str:
1167
- '''IAM Role ARN.
1203
+ '''The IAM role that the Hook assumes to retrieve your Guard rules from S3 and optionally write a detailed Guard output report back.
1168
1204
 
1169
1205
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html#cfn-cloudformation-guardhook-executionrole
1170
1206
  '''
@@ -1174,7 +1210,10 @@ class CfnGuardHookProps:
1174
1210
 
1175
1211
  @builtins.property
1176
1212
  def failure_mode(self) -> builtins.str:
1177
- '''Attribute to specify CloudFormation behavior on hook failure.
1213
+ '''Specifies how the Hook responds when rules fail their evaluation.
1214
+
1215
+ - ``FAIL`` : Prevents the action from proceeding. This is helpful for enforcing strict compliance or security policies.
1216
+ - ``WARN`` : Issues warnings to users but allows actions to continue. This is useful for non-critical validations or informational checks.
1178
1217
 
1179
1218
  :default: - "WARN"
1180
1219
 
@@ -1186,7 +1225,7 @@ class CfnGuardHookProps:
1186
1225
 
1187
1226
  @builtins.property
1188
1227
  def hook_status(self) -> builtins.str:
1189
- '''Attribute to specify which stacks this hook applies to or should get invoked for.
1228
+ '''Specifies if the Hook is ``ENABLED`` or ``DISABLED`` .
1190
1229
 
1191
1230
  :default: - "DISABLED"
1192
1231
 
@@ -1200,7 +1239,7 @@ class CfnGuardHookProps:
1200
1239
  def rule_location(
1201
1240
  self,
1202
1241
  ) -> typing.Union[_IResolvable_da3f097b, CfnGuardHook.S3LocationProperty]:
1203
- '''S3 Source Location for the Guard files.
1242
+ '''Specifies the S3 location of your Guard rules.
1204
1243
 
1205
1244
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html#cfn-cloudformation-guardhook-rulelocation
1206
1245
  '''
@@ -1210,9 +1249,9 @@ class CfnGuardHookProps:
1210
1249
 
1211
1250
  @builtins.property
1212
1251
  def target_operations(self) -> typing.List[builtins.str]:
1213
- '''Which operations should this Hook run against?
1252
+ '''Specifies which type of operation the Hook is run against.
1214
1253
 
1215
- Resource changes, stacks or change sets.
1254
+ Valid values: ``STACK`` | ``RESOURCE`` | ``CHANGE_SET`` | ``CLOUD_CONTROL``
1216
1255
 
1217
1256
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html#cfn-cloudformation-guardhook-targetoperations
1218
1257
  '''
@@ -1222,7 +1261,9 @@ class CfnGuardHookProps:
1222
1261
 
1223
1262
  @builtins.property
1224
1263
  def log_bucket(self) -> typing.Optional[builtins.str]:
1225
- '''S3 Bucket where the guard validate report will be uploaded to.
1264
+ '''Specifies the name of an S3 bucket to store the Guard output report.
1265
+
1266
+ This report contains the results of your Guard rule validations.
1226
1267
 
1227
1268
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html#cfn-cloudformation-guardhook-logbucket
1228
1269
  '''
@@ -1233,7 +1274,8 @@ class CfnGuardHookProps:
1233
1274
  def options(
1234
1275
  self,
1235
1276
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardHook.OptionsProperty]]:
1236
- '''
1277
+ '''Specifies the S3 location of your input parameters.
1278
+
1237
1279
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html#cfn-cloudformation-guardhook-options
1238
1280
  '''
1239
1281
  result = self._values.get("options")
@@ -1243,7 +1285,7 @@ class CfnGuardHookProps:
1243
1285
  def stack_filters(
1244
1286
  self,
1245
1287
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardHook.StackFiltersProperty]]:
1246
- '''Filters to allow hooks to target specific stack attributes.
1288
+ '''Specifies the stack level filters for the Hook.
1247
1289
 
1248
1290
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html#cfn-cloudformation-guardhook-stackfilters
1249
1291
  '''
@@ -1254,7 +1296,8 @@ class CfnGuardHookProps:
1254
1296
  def target_filters(
1255
1297
  self,
1256
1298
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardHook.TargetFiltersProperty]]:
1257
- '''
1299
+ '''Specifies the target filters for the Hook.
1300
+
1258
1301
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html#cfn-cloudformation-guardhook-targetfilters
1259
1302
  '''
1260
1303
  result = self._values.get("target_filters")
@@ -1278,9 +1321,9 @@ class CfnHookDefaultVersion(
1278
1321
  metaclass=jsii.JSIIMeta,
1279
1322
  jsii_type="aws-cdk-lib.aws_cloudformation.CfnHookDefaultVersion",
1280
1323
  ):
1281
- '''The ``HookDefaultVersion`` resource specifies the default version of the hook.
1324
+ '''The ``HookDefaultVersion`` resource specifies the default version of the Hook.
1282
1325
 
1283
- The default version of the hook is used in CloudFormation operations for this AWS account and AWS Region .
1326
+ The default version of the Hook is used in CloudFormation operations for this AWS account and AWS Region .
1284
1327
 
1285
1328
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookdefaultversion.html
1286
1329
  :cloudformationResource: AWS::CloudFormation::HookDefaultVersion
@@ -1311,7 +1354,7 @@ class CfnHookDefaultVersion(
1311
1354
  '''
1312
1355
  :param scope: Scope in which this resource is defined.
1313
1356
  :param id: Construct identifier for this resource (unique in its scope).
1314
- :param type_name: The name of the hook. You must specify either ``TypeVersionArn`` , or ``TypeName`` and ``VersionId`` .
1357
+ :param type_name: The name of the Hook. You must specify either ``TypeVersionArn`` , or ``TypeName`` and ``VersionId`` .
1315
1358
  :param type_version_arn: The version ID of the type configuration. You must specify either ``TypeVersionArn`` , or ``TypeName`` and ``VersionId`` .
1316
1359
  :param version_id: The version ID of the type specified. You must specify either ``TypeVersionArn`` , or ``TypeName`` and ``VersionId`` .
1317
1360
  '''
@@ -1374,7 +1417,7 @@ class CfnHookDefaultVersion(
1374
1417
  @builtins.property
1375
1418
  @jsii.member(jsii_name="typeName")
1376
1419
  def type_name(self) -> typing.Optional[builtins.str]:
1377
- '''The name of the hook.'''
1420
+ '''The name of the Hook.'''
1378
1421
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "typeName"))
1379
1422
 
1380
1423
  @type_name.setter
@@ -1430,7 +1473,7 @@ class CfnHookDefaultVersionProps:
1430
1473
  ) -> None:
1431
1474
  '''Properties for defining a ``CfnHookDefaultVersion``.
1432
1475
 
1433
- :param type_name: The name of the hook. You must specify either ``TypeVersionArn`` , or ``TypeName`` and ``VersionId`` .
1476
+ :param type_name: The name of the Hook. You must specify either ``TypeVersionArn`` , or ``TypeName`` and ``VersionId`` .
1434
1477
  :param type_version_arn: The version ID of the type configuration. You must specify either ``TypeVersionArn`` , or ``TypeName`` and ``VersionId`` .
1435
1478
  :param version_id: The version ID of the type specified. You must specify either ``TypeVersionArn`` , or ``TypeName`` and ``VersionId`` .
1436
1479
 
@@ -1464,7 +1507,7 @@ class CfnHookDefaultVersionProps:
1464
1507
 
1465
1508
  @builtins.property
1466
1509
  def type_name(self) -> typing.Optional[builtins.str]:
1467
- '''The name of the hook.
1510
+ '''The name of the Hook.
1468
1511
 
1469
1512
  You must specify either ``TypeVersionArn`` , or ``TypeName`` and ``VersionId`` .
1470
1513
 
@@ -1513,7 +1556,7 @@ class CfnHookTypeConfig(
1513
1556
  metaclass=jsii.JSIIMeta,
1514
1557
  jsii_type="aws-cdk-lib.aws_cloudformation.CfnHookTypeConfig",
1515
1558
  ):
1516
- '''The ``HookTypeConfig`` resource specifies the configuration of a hook.
1559
+ '''The ``HookTypeConfig`` resource specifies the configuration of a Hook.
1517
1560
 
1518
1561
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html
1519
1562
  :cloudformationResource: AWS::CloudFormation::HookTypeConfig
@@ -1548,10 +1591,10 @@ class CfnHookTypeConfig(
1548
1591
  '''
1549
1592
  :param scope: Scope in which this resource is defined.
1550
1593
  :param id: Construct identifier for this resource (unique in its scope).
1551
- :param configuration: Specifies the activated hook type configuration, in this AWS account and AWS Region . You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1552
- :param configuration_alias: Specifies the activated hook type configuration, in this AWS account and AWS Region . Defaults to ``default`` alias. Hook types currently support default configuration alias. Default: - "default"
1553
- :param type_arn: The Amazon Resource Number (ARN) for the hook to set ``Configuration`` for. You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1554
- :param type_name: The unique name for your hook. Specifies a three-part namespace for your hook, with a recommended pattern of ``Organization::Service::Hook`` . You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1594
+ :param configuration: Specifies the activated Hook type configuration, in this AWS account and AWS Region . You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1595
+ :param configuration_alias: Specifies the activated Hook type configuration, in this AWS account and AWS Region . Defaults to ``default`` alias. Hook types currently support default configuration alias. Default: - "default"
1596
+ :param type_arn: The Amazon Resource Number (ARN) for the Hook to set ``Configuration`` for. You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1597
+ :param type_name: The unique name for your Hook. Specifies a three-part namespace for your Hook, with a recommended pattern of ``Organization::Service::Hook`` . You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1555
1598
  '''
1556
1599
  if __debug__:
1557
1600
  type_hints = typing.get_type_hints(_typecheckingstub__1aa75e15214f256047fa6d0b79cceb9720316dd5d5524cca649ba63b4b4613e3)
@@ -1599,7 +1642,7 @@ class CfnHookTypeConfig(
1599
1642
  @builtins.property
1600
1643
  @jsii.member(jsii_name="attrConfigurationArn")
1601
1644
  def attr_configuration_arn(self) -> builtins.str:
1602
- '''The Amazon Resource Number (ARN) of the activated hook type configuration, in this account and Region.
1645
+ '''The Amazon Resource Number (ARN) of the activated Hook type configuration, in this account and Region.
1603
1646
 
1604
1647
  :cloudformationAttribute: ConfigurationArn
1605
1648
  '''
@@ -1613,7 +1656,7 @@ class CfnHookTypeConfig(
1613
1656
  @builtins.property
1614
1657
  @jsii.member(jsii_name="configuration")
1615
1658
  def configuration(self) -> builtins.str:
1616
- '''Specifies the activated hook type configuration, in this AWS account and AWS Region .'''
1659
+ '''Specifies the activated Hook type configuration, in this AWS account and AWS Region .'''
1617
1660
  return typing.cast(builtins.str, jsii.get(self, "configuration"))
1618
1661
 
1619
1662
  @configuration.setter
@@ -1626,7 +1669,7 @@ class CfnHookTypeConfig(
1626
1669
  @builtins.property
1627
1670
  @jsii.member(jsii_name="configurationAlias")
1628
1671
  def configuration_alias(self) -> typing.Optional[builtins.str]:
1629
- '''Specifies the activated hook type configuration, in this AWS account and AWS Region .'''
1672
+ '''Specifies the activated Hook type configuration, in this AWS account and AWS Region .'''
1630
1673
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "configurationAlias"))
1631
1674
 
1632
1675
  @configuration_alias.setter
@@ -1639,7 +1682,7 @@ class CfnHookTypeConfig(
1639
1682
  @builtins.property
1640
1683
  @jsii.member(jsii_name="typeArn")
1641
1684
  def type_arn(self) -> typing.Optional[builtins.str]:
1642
- '''The Amazon Resource Number (ARN) for the hook to set ``Configuration`` for.'''
1685
+ '''The Amazon Resource Number (ARN) for the Hook to set ``Configuration`` for.'''
1643
1686
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "typeArn"))
1644
1687
 
1645
1688
  @type_arn.setter
@@ -1652,7 +1695,7 @@ class CfnHookTypeConfig(
1652
1695
  @builtins.property
1653
1696
  @jsii.member(jsii_name="typeName")
1654
1697
  def type_name(self) -> typing.Optional[builtins.str]:
1655
- '''The unique name for your hook.'''
1698
+ '''The unique name for your Hook.'''
1656
1699
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "typeName"))
1657
1700
 
1658
1701
  @type_name.setter
@@ -1684,10 +1727,10 @@ class CfnHookTypeConfigProps:
1684
1727
  ) -> None:
1685
1728
  '''Properties for defining a ``CfnHookTypeConfig``.
1686
1729
 
1687
- :param configuration: Specifies the activated hook type configuration, in this AWS account and AWS Region . You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1688
- :param configuration_alias: Specifies the activated hook type configuration, in this AWS account and AWS Region . Defaults to ``default`` alias. Hook types currently support default configuration alias. Default: - "default"
1689
- :param type_arn: The Amazon Resource Number (ARN) for the hook to set ``Configuration`` for. You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1690
- :param type_name: The unique name for your hook. Specifies a three-part namespace for your hook, with a recommended pattern of ``Organization::Service::Hook`` . You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1730
+ :param configuration: Specifies the activated Hook type configuration, in this AWS account and AWS Region . You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1731
+ :param configuration_alias: Specifies the activated Hook type configuration, in this AWS account and AWS Region . Defaults to ``default`` alias. Hook types currently support default configuration alias. Default: - "default"
1732
+ :param type_arn: The Amazon Resource Number (ARN) for the Hook to set ``Configuration`` for. You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1733
+ :param type_name: The unique name for your Hook. Specifies a three-part namespace for your Hook, with a recommended pattern of ``Organization::Service::Hook`` . You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1691
1734
 
1692
1735
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html
1693
1736
  :exampleMetadata: fixture=_generated
@@ -1725,7 +1768,7 @@ class CfnHookTypeConfigProps:
1725
1768
 
1726
1769
  @builtins.property
1727
1770
  def configuration(self) -> builtins.str:
1728
- '''Specifies the activated hook type configuration, in this AWS account and AWS Region .
1771
+ '''Specifies the activated Hook type configuration, in this AWS account and AWS Region .
1729
1772
 
1730
1773
  You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1731
1774
 
@@ -1737,7 +1780,7 @@ class CfnHookTypeConfigProps:
1737
1780
 
1738
1781
  @builtins.property
1739
1782
  def configuration_alias(self) -> typing.Optional[builtins.str]:
1740
- '''Specifies the activated hook type configuration, in this AWS account and AWS Region .
1783
+ '''Specifies the activated Hook type configuration, in this AWS account and AWS Region .
1741
1784
 
1742
1785
  Defaults to ``default`` alias. Hook types currently support default configuration alias.
1743
1786
 
@@ -1750,7 +1793,7 @@ class CfnHookTypeConfigProps:
1750
1793
 
1751
1794
  @builtins.property
1752
1795
  def type_arn(self) -> typing.Optional[builtins.str]:
1753
- '''The Amazon Resource Number (ARN) for the hook to set ``Configuration`` for.
1796
+ '''The Amazon Resource Number (ARN) for the Hook to set ``Configuration`` for.
1754
1797
 
1755
1798
  You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1756
1799
 
@@ -1761,9 +1804,9 @@ class CfnHookTypeConfigProps:
1761
1804
 
1762
1805
  @builtins.property
1763
1806
  def type_name(self) -> typing.Optional[builtins.str]:
1764
- '''The unique name for your hook.
1807
+ '''The unique name for your Hook.
1765
1808
 
1766
- Specifies a three-part namespace for your hook, with a recommended pattern of ``Organization::Service::Hook`` .
1809
+ Specifies a three-part namespace for your Hook, with a recommended pattern of ``Organization::Service::Hook`` .
1767
1810
 
1768
1811
  You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
1769
1812
 
@@ -1790,7 +1833,7 @@ class CfnHookVersion(
1790
1833
  metaclass=jsii.JSIIMeta,
1791
1834
  jsii_type="aws-cdk-lib.aws_cloudformation.CfnHookVersion",
1792
1835
  ):
1793
- '''The ``HookVersion`` resource publishes new or first hook version to the AWS CloudFormation registry.
1836
+ '''The ``HookVersion`` resource publishes new or first Hook version to the AWS CloudFormation registry.
1794
1837
 
1795
1838
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html
1796
1839
  :cloudformationResource: AWS::CloudFormation::HookVersion
@@ -1828,9 +1871,9 @@ class CfnHookVersion(
1828
1871
  '''
1829
1872
  :param scope: Scope in which this resource is defined.
1830
1873
  :param id: Construct identifier for this resource (unique in its scope).
1831
- :param schema_handler_package: A URL to the Amazon S3 bucket containing the hook project package that contains the necessary files for the hook you want to register. For information on generating a schema handler package for the resource you want to register, see `submit <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html>`_ in the *CloudFormation CLI User Guide for Extension Development* . .. epigraph:: The user registering the resource must be able to access the package in the S3 bucket. That's, the user must have `GetObject <https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html>`_ permissions for the schema handler package. For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
1874
+ :param schema_handler_package: A URL to the Amazon S3 bucket containing the Hook project package that contains the necessary files for the Hook you want to register. For information on generating a schema handler package for the resource you want to register, see `submit <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html>`_ in the *CloudFormation CLI User Guide for Extension Development* . .. epigraph:: The user registering the resource must be able to access the package in the S3 bucket. That's, the user must have `GetObject <https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html>`_ permissions for the schema handler package. For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
1832
1875
  :param type_name: The unique name for your hook. Specifies a three-part namespace for your hook, with a recommended pattern of ``Organization::Service::Hook`` . .. epigraph:: The following organization namespaces are reserved and can't be used in your hook type names: - ``Alexa`` - ``AMZN`` - ``Amazon`` - ``ASK`` - ``AWS`` - ``Custom`` - ``Dev``
1833
- :param execution_role_arn: The Amazon Resource Name (ARN) of the task execution role that grants the hook permission.
1876
+ :param execution_role_arn: The Amazon Resource Name (ARN) of the task execution role that grants the Hook permission.
1834
1877
  :param logging_config: Contains logging configuration information for an extension.
1835
1878
  '''
1836
1879
  if __debug__:
@@ -1879,7 +1922,7 @@ class CfnHookVersion(
1879
1922
  @builtins.property
1880
1923
  @jsii.member(jsii_name="attrArn")
1881
1924
  def attr_arn(self) -> builtins.str:
1882
- '''The Amazon Resource Name (ARN) of the hook.
1925
+ '''The Amazon Resource Name (ARN) of the Hook.
1883
1926
 
1884
1927
  :cloudformationAttribute: Arn
1885
1928
  '''
@@ -1888,7 +1931,7 @@ class CfnHookVersion(
1888
1931
  @builtins.property
1889
1932
  @jsii.member(jsii_name="attrIsDefaultVersion")
1890
1933
  def attr_is_default_version(self) -> _IResolvable_da3f097b:
1891
- '''Whether the specified hook version is set as the default version.
1934
+ '''Whether the specified Hook version is set as the default version.
1892
1935
 
1893
1936
  :cloudformationAttribute: IsDefaultVersion
1894
1937
  '''
@@ -1897,7 +1940,7 @@ class CfnHookVersion(
1897
1940
  @builtins.property
1898
1941
  @jsii.member(jsii_name="attrTypeArn")
1899
1942
  def attr_type_arn(self) -> builtins.str:
1900
- '''The Amazon Resource Number (ARN) assigned to this version of the hook.
1943
+ '''The Amazon Resource Number (ARN) assigned to this version of the Hook.
1901
1944
 
1902
1945
  :cloudformationAttribute: TypeArn
1903
1946
  '''
@@ -1906,7 +1949,7 @@ class CfnHookVersion(
1906
1949
  @builtins.property
1907
1950
  @jsii.member(jsii_name="attrVersionId")
1908
1951
  def attr_version_id(self) -> builtins.str:
1909
- '''The ID of this version of the hook.
1952
+ '''The ID of this version of the Hook.
1910
1953
 
1911
1954
  :cloudformationAttribute: VersionId
1912
1955
  '''
@@ -1934,7 +1977,7 @@ class CfnHookVersion(
1934
1977
  @builtins.property
1935
1978
  @jsii.member(jsii_name="schemaHandlerPackage")
1936
1979
  def schema_handler_package(self) -> builtins.str:
1937
- '''A URL to the Amazon S3 bucket containing the hook project package that contains the necessary files for the hook you want to register.'''
1980
+ '''A URL to the Amazon S3 bucket containing the Hook project package that contains the necessary files for the Hook you want to register.'''
1938
1981
  return typing.cast(builtins.str, jsii.get(self, "schemaHandlerPackage"))
1939
1982
 
1940
1983
  @schema_handler_package.setter
@@ -1960,7 +2003,7 @@ class CfnHookVersion(
1960
2003
  @builtins.property
1961
2004
  @jsii.member(jsii_name="executionRoleArn")
1962
2005
  def execution_role_arn(self) -> typing.Optional[builtins.str]:
1963
- '''The Amazon Resource Name (ARN) of the task execution role that grants the hook permission.'''
2006
+ '''The Amazon Resource Name (ARN) of the task execution role that grants the Hook permission.'''
1964
2007
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "executionRoleArn"))
1965
2008
 
1966
2009
  @execution_role_arn.setter
@@ -2080,9 +2123,9 @@ class CfnHookVersionProps:
2080
2123
  ) -> None:
2081
2124
  '''Properties for defining a ``CfnHookVersion``.
2082
2125
 
2083
- :param schema_handler_package: A URL to the Amazon S3 bucket containing the hook project package that contains the necessary files for the hook you want to register. For information on generating a schema handler package for the resource you want to register, see `submit <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html>`_ in the *CloudFormation CLI User Guide for Extension Development* . .. epigraph:: The user registering the resource must be able to access the package in the S3 bucket. That's, the user must have `GetObject <https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html>`_ permissions for the schema handler package. For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
2126
+ :param schema_handler_package: A URL to the Amazon S3 bucket containing the Hook project package that contains the necessary files for the Hook you want to register. For information on generating a schema handler package for the resource you want to register, see `submit <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html>`_ in the *CloudFormation CLI User Guide for Extension Development* . .. epigraph:: The user registering the resource must be able to access the package in the S3 bucket. That's, the user must have `GetObject <https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html>`_ permissions for the schema handler package. For more information, see `Actions, Resources, and Condition Keys for Amazon S3 <https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html>`_ in the *AWS Identity and Access Management User Guide* .
2084
2127
  :param type_name: The unique name for your hook. Specifies a three-part namespace for your hook, with a recommended pattern of ``Organization::Service::Hook`` . .. epigraph:: The following organization namespaces are reserved and can't be used in your hook type names: - ``Alexa`` - ``AMZN`` - ``Amazon`` - ``ASK`` - ``AWS`` - ``Custom`` - ``Dev``
2085
- :param execution_role_arn: The Amazon Resource Name (ARN) of the task execution role that grants the hook permission.
2128
+ :param execution_role_arn: The Amazon Resource Name (ARN) of the task execution role that grants the Hook permission.
2086
2129
  :param logging_config: Contains logging configuration information for an extension.
2087
2130
 
2088
2131
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html
@@ -2123,7 +2166,7 @@ class CfnHookVersionProps:
2123
2166
 
2124
2167
  @builtins.property
2125
2168
  def schema_handler_package(self) -> builtins.str:
2126
- '''A URL to the Amazon S3 bucket containing the hook project package that contains the necessary files for the hook you want to register.
2169
+ '''A URL to the Amazon S3 bucket containing the Hook project package that contains the necessary files for the Hook you want to register.
2127
2170
 
2128
2171
  For information on generating a schema handler package for the resource you want to register, see `submit <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html>`_ in the *CloudFormation CLI User Guide for Extension Development* .
2129
2172
  .. epigraph::
@@ -2161,7 +2204,7 @@ class CfnHookVersionProps:
2161
2204
 
2162
2205
  @builtins.property
2163
2206
  def execution_role_arn(self) -> typing.Optional[builtins.str]:
2164
- '''The Amazon Resource Name (ARN) of the task execution role that grants the hook permission.
2207
+ '''The Amazon Resource Name (ARN) of the task execution role that grants the Hook permission.
2165
2208
 
2166
2209
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html#cfn-cloudformation-hookversion-executionrolearn
2167
2210
  '''
@@ -2197,7 +2240,9 @@ class CfnLambdaHook(
2197
2240
  metaclass=jsii.JSIIMeta,
2198
2241
  jsii_type="aws-cdk-lib.aws_cloudformation.CfnLambdaHook",
2199
2242
  ):
2200
- '''This is a CloudFormation resource for the first-party AWS::Hooks::LambdaHook.
2243
+ '''The ``AWS::CloudFormation::LambdaHook`` resource creates a Lambda Hook with the specified attributes within your CloudFormation template.
2244
+
2245
+ You can use a Lambda Hook to evaluate your resources before allowing stack creation, modification, or deletion. This resource forwards requests for resource evaluation to a Lambda function. For more information, see `Lambda Hooks <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/lambda-hooks.html>`_ in the *AWS CloudFormation Hooks User Guide* .
2201
2246
 
2202
2247
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html
2203
2248
  :cloudformationResource: AWS::CloudFormation::LambdaHook
@@ -2256,14 +2301,14 @@ class CfnLambdaHook(
2256
2301
  '''
2257
2302
  :param scope: Scope in which this resource is defined.
2258
2303
  :param id: Construct identifier for this resource (unique in its scope).
2259
- :param alias: The typename alias for the hook.
2260
- :param execution_role: IAM Role ARN.
2261
- :param failure_mode: Attribute to specify CloudFormation behavior on hook failure.
2262
- :param hook_status: Attribute to specify which stacks this hook applies to or should get invoked for. Default: - "ENABLED"
2263
- :param lambda_function: Amazon Resource Name (ARN), Partial ARN, name, version, or alias of the Lambda function to invoke with this hook.
2264
- :param target_operations: Which operations should this Hook run against? Resource changes, stacks or change sets.
2265
- :param stack_filters: Filters to allow hooks to target specific stack attributes.
2266
- :param target_filters:
2304
+ :param alias: The type name alias for the Hook. This alias must be unique per account and Region. The alias must be in the form ``Name1::Name2::Name3`` and must not begin with ``AWS`` . For example, ``Private::Lambda::MyTestHook`` .
2305
+ :param execution_role: The IAM role that the Hook assumes to invoke your Lambda function.
2306
+ :param failure_mode: Specifies how the Hook responds when the Lambda function invoked by the Hook returns a ``FAILED`` response. - ``FAIL`` : Prevents the action from proceeding. This is helpful for enforcing strict compliance or security policies. - ``WARN`` : Issues warnings to users but allows actions to continue. This is useful for non-critical validations or informational checks.
2307
+ :param hook_status: Specifies if the Hook is ``ENABLED`` or ``DISABLED`` . Default: - "ENABLED"
2308
+ :param lambda_function: Specifies the Lambda function for the Hook. You can use:. - The full Amazon Resource Name (ARN) without a suffix. - A qualified ARN with a version or alias suffix.
2309
+ :param target_operations: Specifies which type of operation the Hook is run against. Valid values: ``STACK`` | ``RESOURCE`` | ``CHANGE_SET`` | ``CLOUD_CONTROL``
2310
+ :param stack_filters: Specifies the stack level filters for the Hook.
2311
+ :param target_filters: Specifies the target filters for the Hook.
2267
2312
  '''
2268
2313
  if __debug__:
2269
2314
  type_hints = typing.get_type_hints(_typecheckingstub__fec9ac58a382959177810e26366e5dddc9f912aaf73b09411981c9ecbce1010a)
@@ -2315,7 +2360,7 @@ class CfnLambdaHook(
2315
2360
  @builtins.property
2316
2361
  @jsii.member(jsii_name="attrHookArn")
2317
2362
  def attr_hook_arn(self) -> builtins.str:
2318
- '''The Amazon Resource Name (ARN) of the activated hook.
2363
+ '''Returns the ARN of a Lambda Hook.
2319
2364
 
2320
2365
  :cloudformationAttribute: HookArn
2321
2366
  '''
@@ -2329,7 +2374,10 @@ class CfnLambdaHook(
2329
2374
  @builtins.property
2330
2375
  @jsii.member(jsii_name="alias")
2331
2376
  def alias(self) -> builtins.str:
2332
- '''The typename alias for the hook.'''
2377
+ '''The type name alias for the Hook.
2378
+
2379
+ This alias must be unique per account and Region.
2380
+ '''
2333
2381
  return typing.cast(builtins.str, jsii.get(self, "alias"))
2334
2382
 
2335
2383
  @alias.setter
@@ -2342,7 +2390,7 @@ class CfnLambdaHook(
2342
2390
  @builtins.property
2343
2391
  @jsii.member(jsii_name="executionRole")
2344
2392
  def execution_role(self) -> builtins.str:
2345
- '''IAM Role ARN.'''
2393
+ '''The IAM role that the Hook assumes to invoke your Lambda function.'''
2346
2394
  return typing.cast(builtins.str, jsii.get(self, "executionRole"))
2347
2395
 
2348
2396
  @execution_role.setter
@@ -2355,7 +2403,7 @@ class CfnLambdaHook(
2355
2403
  @builtins.property
2356
2404
  @jsii.member(jsii_name="failureMode")
2357
2405
  def failure_mode(self) -> builtins.str:
2358
- '''Attribute to specify CloudFormation behavior on hook failure.'''
2406
+ '''Specifies how the Hook responds when the Lambda function invoked by the Hook returns a ``FAILED`` response.'''
2359
2407
  return typing.cast(builtins.str, jsii.get(self, "failureMode"))
2360
2408
 
2361
2409
  @failure_mode.setter
@@ -2368,7 +2416,7 @@ class CfnLambdaHook(
2368
2416
  @builtins.property
2369
2417
  @jsii.member(jsii_name="hookStatus")
2370
2418
  def hook_status(self) -> builtins.str:
2371
- '''Attribute to specify which stacks this hook applies to or should get invoked for.'''
2419
+ '''Specifies if the Hook is ``ENABLED`` or ``DISABLED`` .'''
2372
2420
  return typing.cast(builtins.str, jsii.get(self, "hookStatus"))
2373
2421
 
2374
2422
  @hook_status.setter
@@ -2381,7 +2429,10 @@ class CfnLambdaHook(
2381
2429
  @builtins.property
2382
2430
  @jsii.member(jsii_name="lambdaFunction")
2383
2431
  def lambda_function(self) -> builtins.str:
2384
- '''Amazon Resource Name (ARN), Partial ARN, name, version, or alias of the Lambda function to invoke with this hook.'''
2432
+ '''Specifies the Lambda function for the Hook.
2433
+
2434
+ You can use:.
2435
+ '''
2385
2436
  return typing.cast(builtins.str, jsii.get(self, "lambdaFunction"))
2386
2437
 
2387
2438
  @lambda_function.setter
@@ -2394,7 +2445,7 @@ class CfnLambdaHook(
2394
2445
  @builtins.property
2395
2446
  @jsii.member(jsii_name="targetOperations")
2396
2447
  def target_operations(self) -> typing.List[builtins.str]:
2397
- '''Which operations should this Hook run against?'''
2448
+ '''Specifies which type of operation the Hook is run against.'''
2398
2449
  return typing.cast(typing.List[builtins.str], jsii.get(self, "targetOperations"))
2399
2450
 
2400
2451
  @target_operations.setter
@@ -2409,7 +2460,7 @@ class CfnLambdaHook(
2409
2460
  def stack_filters(
2410
2461
  self,
2411
2462
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLambdaHook.StackFiltersProperty"]]:
2412
- '''Filters to allow hooks to target specific stack attributes.'''
2463
+ '''Specifies the stack level filters for the Hook.'''
2413
2464
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLambdaHook.StackFiltersProperty"]], jsii.get(self, "stackFilters"))
2414
2465
 
2415
2466
  @stack_filters.setter
@@ -2427,6 +2478,7 @@ class CfnLambdaHook(
2427
2478
  def target_filters(
2428
2479
  self,
2429
2480
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLambdaHook.TargetFiltersProperty"]]:
2481
+ '''Specifies the target filters for the Hook.'''
2430
2482
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLambdaHook.TargetFiltersProperty"]], jsii.get(self, "targetFilters"))
2431
2483
 
2432
2484
  @target_filters.setter
@@ -2456,11 +2508,15 @@ class CfnLambdaHook(
2456
2508
  stack_names: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLambdaHook.StackNamesProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2457
2509
  stack_roles: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLambdaHook.StackRolesProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2458
2510
  ) -> None:
2459
- '''Filters to allow hooks to target specific stack attributes.
2511
+ '''The ``StackFilters`` property type specifies stack level filters for a Hook.
2512
+
2513
+ The ``StackNames`` or ``StackRoles`` properties are optional. However, you must specify at least one of these properties.
2460
2514
 
2461
- :param filtering_criteria: Attribute to specify the filtering behavior. ANY will make the Hook pass if one filter matches. ALL will make the Hook pass if all filters match Default: - "ALL"
2462
- :param stack_names: List of stack names as filters.
2463
- :param stack_roles: List of stack roles that are performing the stack operations.
2515
+ For more information, see `AWS CloudFormation Hooks stack level filters <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-stack-level-filtering.html>`_ .
2516
+
2517
+ :param filtering_criteria: The filtering criteria. - All stack names and stack roles ( ``All`` ): The Hook will only be invoked when all specified filters match. - Any stack names and stack roles ( ``Any`` ): The Hook will be invoked if at least one of the specified filters match. Default: - "ALL"
2518
+ :param stack_names: Includes or excludes specific stacks from Hook invocations.
2519
+ :param stack_roles: Includes or excludes specific stacks from Hook invocations based on their associated IAM roles.
2464
2520
 
2465
2521
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-lambdahook-stackfilters.html
2466
2522
  :exampleMetadata: fixture=_generated
@@ -2500,9 +2556,10 @@ class CfnLambdaHook(
2500
2556
 
2501
2557
  @builtins.property
2502
2558
  def filtering_criteria(self) -> builtins.str:
2503
- '''Attribute to specify the filtering behavior.
2559
+ '''The filtering criteria.
2504
2560
 
2505
- ANY will make the Hook pass if one filter matches. ALL will make the Hook pass if all filters match
2561
+ - All stack names and stack roles ( ``All`` ): The Hook will only be invoked when all specified filters match.
2562
+ - Any stack names and stack roles ( ``Any`` ): The Hook will be invoked if at least one of the specified filters match.
2506
2563
 
2507
2564
  :default: - "ALL"
2508
2565
 
@@ -2516,7 +2573,7 @@ class CfnLambdaHook(
2516
2573
  def stack_names(
2517
2574
  self,
2518
2575
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLambdaHook.StackNamesProperty"]]:
2519
- '''List of stack names as filters.
2576
+ '''Includes or excludes specific stacks from Hook invocations.
2520
2577
 
2521
2578
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-lambdahook-stackfilters.html#cfn-cloudformation-lambdahook-stackfilters-stacknames
2522
2579
  '''
@@ -2527,7 +2584,7 @@ class CfnLambdaHook(
2527
2584
  def stack_roles(
2528
2585
  self,
2529
2586
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLambdaHook.StackRolesProperty"]]:
2530
- '''List of stack roles that are performing the stack operations.
2587
+ '''Includes or excludes specific stacks from Hook invocations based on their associated IAM roles.
2531
2588
 
2532
2589
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-lambdahook-stackfilters.html#cfn-cloudformation-lambdahook-stackfilters-stackroles
2533
2590
  '''
@@ -2557,10 +2614,12 @@ class CfnLambdaHook(
2557
2614
  exclude: typing.Optional[typing.Sequence[builtins.str]] = None,
2558
2615
  include: typing.Optional[typing.Sequence[builtins.str]] = None,
2559
2616
  ) -> None:
2560
- '''List of stack names as filters.
2617
+ '''Specifies the stack names for the ``StackFilters`` property type to include or exclude specific stacks from Hook invocations.
2618
+
2619
+ For more information, see `AWS CloudFormation Hooks stack level filters <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-stack-level-filtering.html>`_ .
2561
2620
 
2562
- :param exclude: List of stack names that the hook is going to be excluded from.
2563
- :param include: List of stack names that the hook is going to target.
2621
+ :param exclude: The stack names to exclude. All stacks except those listed here will invoke the Hook.
2622
+ :param include: The stack names to include. Only the stacks specified in this list will invoke the Hook.
2564
2623
 
2565
2624
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-lambdahook-stacknames.html
2566
2625
  :exampleMetadata: fixture=_generated
@@ -2588,7 +2647,9 @@ class CfnLambdaHook(
2588
2647
 
2589
2648
  @builtins.property
2590
2649
  def exclude(self) -> typing.Optional[typing.List[builtins.str]]:
2591
- '''List of stack names that the hook is going to be excluded from.
2650
+ '''The stack names to exclude.
2651
+
2652
+ All stacks except those listed here will invoke the Hook.
2592
2653
 
2593
2654
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-lambdahook-stacknames.html#cfn-cloudformation-lambdahook-stacknames-exclude
2594
2655
  '''
@@ -2597,7 +2658,9 @@ class CfnLambdaHook(
2597
2658
 
2598
2659
  @builtins.property
2599
2660
  def include(self) -> typing.Optional[typing.List[builtins.str]]:
2600
- '''List of stack names that the hook is going to target.
2661
+ '''The stack names to include.
2662
+
2663
+ Only the stacks specified in this list will invoke the Hook.
2601
2664
 
2602
2665
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-lambdahook-stacknames.html#cfn-cloudformation-lambdahook-stacknames-include
2603
2666
  '''
@@ -2627,10 +2690,12 @@ class CfnLambdaHook(
2627
2690
  exclude: typing.Optional[typing.Sequence[builtins.str]] = None,
2628
2691
  include: typing.Optional[typing.Sequence[builtins.str]] = None,
2629
2692
  ) -> None:
2630
- '''List of stack roles that are performing the stack operations.
2693
+ '''Specifies the stack roles for the ``StackFilters`` property type to include or exclude specific stacks from Hook invocations based on their associated IAM roles.
2694
+
2695
+ For more information, see `AWS CloudFormation Hooks stack level filters <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-stack-level-filtering.html>`_ .
2631
2696
 
2632
- :param exclude: List of stack roles that the hook is going to be excluded from.
2633
- :param include: List of stack roles that the hook is going to target.
2697
+ :param exclude: The IAM role ARNs for stacks you want to exclude. The Hook will be invoked on all stacks except those initiated by the specified roles.
2698
+ :param include: The IAM role ARNs to target stacks associated with these roles. Only stack operations initiated by these roles will invoke the Hook.
2634
2699
 
2635
2700
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-lambdahook-stackroles.html
2636
2701
  :exampleMetadata: fixture=_generated
@@ -2658,7 +2723,9 @@ class CfnLambdaHook(
2658
2723
 
2659
2724
  @builtins.property
2660
2725
  def exclude(self) -> typing.Optional[typing.List[builtins.str]]:
2661
- '''List of stack roles that the hook is going to be excluded from.
2726
+ '''The IAM role ARNs for stacks you want to exclude.
2727
+
2728
+ The Hook will be invoked on all stacks except those initiated by the specified roles.
2662
2729
 
2663
2730
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-lambdahook-stackroles.html#cfn-cloudformation-lambdahook-stackroles-exclude
2664
2731
  '''
@@ -2667,7 +2734,9 @@ class CfnLambdaHook(
2667
2734
 
2668
2735
  @builtins.property
2669
2736
  def include(self) -> typing.Optional[typing.List[builtins.str]]:
2670
- '''List of stack roles that the hook is going to target.
2737
+ '''The IAM role ARNs to target stacks associated with these roles.
2738
+
2739
+ Only stack operations initiated by these roles will invoke the Hook.
2671
2740
 
2672
2741
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-lambdahook-stackroles.html#cfn-cloudformation-lambdahook-stackroles-include
2673
2742
  '''
@@ -2702,7 +2771,10 @@ class CfnLambdaHook(
2702
2771
  invocation_points: typing.Optional[typing.Sequence[builtins.str]] = None,
2703
2772
  target_names: typing.Optional[typing.Sequence[builtins.str]] = None,
2704
2773
  ) -> None:
2705
- '''
2774
+ '''The ``TargetFilters`` property type specifies the target filters for the Hook.
2775
+
2776
+ For more information, see `AWS CloudFormation Hook target filters <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/specify-hook-configuration-targetfilters.html>`_ .
2777
+
2706
2778
  :param actions: List of actions that the hook is going to target.
2707
2779
  :param invocation_points: List of invocation points that the hook is going to target.
2708
2780
  :param target_names: List of type names that the hook is going to target.
@@ -2803,14 +2875,14 @@ class CfnLambdaHookProps:
2803
2875
  ) -> None:
2804
2876
  '''Properties for defining a ``CfnLambdaHook``.
2805
2877
 
2806
- :param alias: The typename alias for the hook.
2807
- :param execution_role: IAM Role ARN.
2808
- :param failure_mode: Attribute to specify CloudFormation behavior on hook failure.
2809
- :param hook_status: Attribute to specify which stacks this hook applies to or should get invoked for. Default: - "ENABLED"
2810
- :param lambda_function: Amazon Resource Name (ARN), Partial ARN, name, version, or alias of the Lambda function to invoke with this hook.
2811
- :param target_operations: Which operations should this Hook run against? Resource changes, stacks or change sets.
2812
- :param stack_filters: Filters to allow hooks to target specific stack attributes.
2813
- :param target_filters:
2878
+ :param alias: The type name alias for the Hook. This alias must be unique per account and Region. The alias must be in the form ``Name1::Name2::Name3`` and must not begin with ``AWS`` . For example, ``Private::Lambda::MyTestHook`` .
2879
+ :param execution_role: The IAM role that the Hook assumes to invoke your Lambda function.
2880
+ :param failure_mode: Specifies how the Hook responds when the Lambda function invoked by the Hook returns a ``FAILED`` response. - ``FAIL`` : Prevents the action from proceeding. This is helpful for enforcing strict compliance or security policies. - ``WARN`` : Issues warnings to users but allows actions to continue. This is useful for non-critical validations or informational checks.
2881
+ :param hook_status: Specifies if the Hook is ``ENABLED`` or ``DISABLED`` . Default: - "ENABLED"
2882
+ :param lambda_function: Specifies the Lambda function for the Hook. You can use:. - The full Amazon Resource Name (ARN) without a suffix. - A qualified ARN with a version or alias suffix.
2883
+ :param target_operations: Specifies which type of operation the Hook is run against. Valid values: ``STACK`` | ``RESOURCE`` | ``CHANGE_SET`` | ``CLOUD_CONTROL``
2884
+ :param stack_filters: Specifies the stack level filters for the Hook.
2885
+ :param target_filters: Specifies the target filters for the Hook.
2814
2886
 
2815
2887
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html
2816
2888
  :exampleMetadata: fixture=_generated
@@ -2875,7 +2947,9 @@ class CfnLambdaHookProps:
2875
2947
 
2876
2948
  @builtins.property
2877
2949
  def alias(self) -> builtins.str:
2878
- '''The typename alias for the hook.
2950
+ '''The type name alias for the Hook. This alias must be unique per account and Region.
2951
+
2952
+ The alias must be in the form ``Name1::Name2::Name3`` and must not begin with ``AWS`` . For example, ``Private::Lambda::MyTestHook`` .
2879
2953
 
2880
2954
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html#cfn-cloudformation-lambdahook-alias
2881
2955
  '''
@@ -2885,7 +2959,7 @@ class CfnLambdaHookProps:
2885
2959
 
2886
2960
  @builtins.property
2887
2961
  def execution_role(self) -> builtins.str:
2888
- '''IAM Role ARN.
2962
+ '''The IAM role that the Hook assumes to invoke your Lambda function.
2889
2963
 
2890
2964
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html#cfn-cloudformation-lambdahook-executionrole
2891
2965
  '''
@@ -2895,7 +2969,10 @@ class CfnLambdaHookProps:
2895
2969
 
2896
2970
  @builtins.property
2897
2971
  def failure_mode(self) -> builtins.str:
2898
- '''Attribute to specify CloudFormation behavior on hook failure.
2972
+ '''Specifies how the Hook responds when the Lambda function invoked by the Hook returns a ``FAILED`` response.
2973
+
2974
+ - ``FAIL`` : Prevents the action from proceeding. This is helpful for enforcing strict compliance or security policies.
2975
+ - ``WARN`` : Issues warnings to users but allows actions to continue. This is useful for non-critical validations or informational checks.
2899
2976
 
2900
2977
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html#cfn-cloudformation-lambdahook-failuremode
2901
2978
  '''
@@ -2905,7 +2982,7 @@ class CfnLambdaHookProps:
2905
2982
 
2906
2983
  @builtins.property
2907
2984
  def hook_status(self) -> builtins.str:
2908
- '''Attribute to specify which stacks this hook applies to or should get invoked for.
2985
+ '''Specifies if the Hook is ``ENABLED`` or ``DISABLED`` .
2909
2986
 
2910
2987
  :default: - "ENABLED"
2911
2988
 
@@ -2917,7 +2994,10 @@ class CfnLambdaHookProps:
2917
2994
 
2918
2995
  @builtins.property
2919
2996
  def lambda_function(self) -> builtins.str:
2920
- '''Amazon Resource Name (ARN), Partial ARN, name, version, or alias of the Lambda function to invoke with this hook.
2997
+ '''Specifies the Lambda function for the Hook. You can use:.
2998
+
2999
+ - The full Amazon Resource Name (ARN) without a suffix.
3000
+ - A qualified ARN with a version or alias suffix.
2921
3001
 
2922
3002
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html#cfn-cloudformation-lambdahook-lambdafunction
2923
3003
  '''
@@ -2927,9 +3007,9 @@ class CfnLambdaHookProps:
2927
3007
 
2928
3008
  @builtins.property
2929
3009
  def target_operations(self) -> typing.List[builtins.str]:
2930
- '''Which operations should this Hook run against?
3010
+ '''Specifies which type of operation the Hook is run against.
2931
3011
 
2932
- Resource changes, stacks or change sets.
3012
+ Valid values: ``STACK`` | ``RESOURCE`` | ``CHANGE_SET`` | ``CLOUD_CONTROL``
2933
3013
 
2934
3014
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html#cfn-cloudformation-lambdahook-targetoperations
2935
3015
  '''
@@ -2941,7 +3021,7 @@ class CfnLambdaHookProps:
2941
3021
  def stack_filters(
2942
3022
  self,
2943
3023
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnLambdaHook.StackFiltersProperty]]:
2944
- '''Filters to allow hooks to target specific stack attributes.
3024
+ '''Specifies the stack level filters for the Hook.
2945
3025
 
2946
3026
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html#cfn-cloudformation-lambdahook-stackfilters
2947
3027
  '''
@@ -2952,7 +3032,8 @@ class CfnLambdaHookProps:
2952
3032
  def target_filters(
2953
3033
  self,
2954
3034
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnLambdaHook.TargetFiltersProperty]]:
2955
- '''
3035
+ '''Specifies the target filters for the Hook.
3036
+
2956
3037
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html#cfn-cloudformation-lambdahook-targetfilters
2957
3038
  '''
2958
3039
  result = self._values.get("target_filters")