aws-cdk-lib 2.146.0__py3-none-any.whl → 2.147.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 (67) hide show
  1. aws_cdk/__init__.py +10 -11
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.146.0.jsii.tgz → aws-cdk-lib@2.147.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_apigateway/__init__.py +32 -12
  5. aws_cdk/aws_apigatewayv2/__init__.py +48 -2
  6. aws_cdk/aws_apigatewayv2_integrations/__init__.py +142 -4
  7. aws_cdk/aws_appconfig/__init__.py +8 -4
  8. aws_cdk/aws_applicationsignals/__init__.py +1766 -0
  9. aws_cdk/aws_auditmanager/__init__.py +5 -1
  10. aws_cdk/aws_autoscaling/__init__.py +65 -20
  11. aws_cdk/aws_batch/__init__.py +215 -0
  12. aws_cdk/aws_bedrock/__init__.py +272 -103
  13. aws_cdk/aws_cloudformation/__init__.py +5 -11
  14. aws_cdk/aws_cloudfront/__init__.py +10 -3
  15. aws_cdk/aws_cloudtrail/__init__.py +56 -2
  16. aws_cdk/aws_codebuild/__init__.py +62 -29
  17. aws_cdk/aws_codepipeline/__init__.py +10 -5
  18. aws_cdk/aws_datazone/__init__.py +80 -68
  19. aws_cdk/aws_deadline/__init__.py +603 -17
  20. aws_cdk/aws_ec2/__init__.py +237 -112
  21. aws_cdk/aws_ecs/__init__.py +20 -18
  22. aws_cdk/aws_eks/__init__.py +15 -9
  23. aws_cdk/aws_elasticloadbalancingv2/__init__.py +11 -5
  24. aws_cdk/aws_emrserverless/__init__.py +5 -5
  25. aws_cdk/aws_events/__init__.py +36 -16
  26. aws_cdk/aws_fsx/__init__.py +126 -21
  27. aws_cdk/aws_globalaccelerator/__init__.py +2 -1
  28. aws_cdk/aws_globalaccelerator_endpoints/__init__.py +35 -4
  29. aws_cdk/aws_glue/__init__.py +26 -0
  30. aws_cdk/aws_grafana/__init__.py +4 -4
  31. aws_cdk/aws_groundstation/__init__.py +55 -35
  32. aws_cdk/aws_guardduty/__init__.py +826 -0
  33. aws_cdk/aws_iot/__init__.py +3 -3
  34. aws_cdk/aws_lambda/__init__.py +7 -5
  35. aws_cdk/aws_lightsail/__init__.py +1 -1
  36. aws_cdk/aws_location/__init__.py +10 -11
  37. aws_cdk/aws_mediapackagev2/__init__.py +38 -20
  38. aws_cdk/aws_mediatailor/__init__.py +2 -2
  39. aws_cdk/aws_msk/__init__.py +4 -4
  40. aws_cdk/aws_mwaa/__init__.py +16 -8
  41. aws_cdk/aws_nimblestudio/__init__.py +9 -9
  42. aws_cdk/aws_opensearchservice/__init__.py +5 -4
  43. aws_cdk/aws_opsworks/__init__.py +3 -3
  44. aws_cdk/aws_osis/__init__.py +33 -4
  45. aws_cdk/aws_pipes/__init__.py +97 -45
  46. aws_cdk/aws_quicksight/__init__.py +23 -21
  47. aws_cdk/aws_rds/__init__.py +43 -11
  48. aws_cdk/aws_refactorspaces/__init__.py +3 -3
  49. aws_cdk/aws_rolesanywhere/__init__.py +21 -14
  50. aws_cdk/aws_sagemaker/__init__.py +5 -2
  51. aws_cdk/aws_securityhub/__init__.py +163 -78
  52. aws_cdk/aws_securitylake/__init__.py +7 -5
  53. aws_cdk/aws_ses/__init__.py +117 -0
  54. aws_cdk/aws_simspaceweaver/__init__.py +2 -2
  55. aws_cdk/aws_sns/__init__.py +6 -4
  56. aws_cdk/aws_sqs/__init__.py +3 -3
  57. aws_cdk/aws_stepfunctions/__init__.py +51 -28
  58. aws_cdk/aws_stepfunctions_tasks/__init__.py +56 -2
  59. aws_cdk/aws_transfer/__init__.py +8 -2
  60. aws_cdk/aws_wafv2/__init__.py +10 -10
  61. aws_cdk/aws_workspacesweb/__init__.py +8 -8
  62. {aws_cdk_lib-2.146.0.dist-info → aws_cdk_lib-2.147.0.dist-info}/METADATA +1 -1
  63. {aws_cdk_lib-2.146.0.dist-info → aws_cdk_lib-2.147.0.dist-info}/RECORD +67 -66
  64. {aws_cdk_lib-2.146.0.dist-info → aws_cdk_lib-2.147.0.dist-info}/LICENSE +0 -0
  65. {aws_cdk_lib-2.146.0.dist-info → aws_cdk_lib-2.147.0.dist-info}/NOTICE +0 -0
  66. {aws_cdk_lib-2.146.0.dist-info → aws_cdk_lib-2.147.0.dist-info}/WHEEL +0 -0
  67. {aws_cdk_lib-2.146.0.dist-info → aws_cdk_lib-2.147.0.dist-info}/top_level.txt +0 -0
@@ -49,6 +49,7 @@ from .. import (
49
49
  IInspectable as _IInspectable_c2943556,
50
50
  IResolvable as _IResolvable_da3f097b,
51
51
  ITaggable as _ITaggable_36806126,
52
+ ITaggableV2 as _ITaggableV2_4e6798f8,
52
53
  TagManager as _TagManager_0a598cb3,
53
54
  TreeInspector as _TreeInspector_488e0dd5,
54
55
  )
@@ -2267,6 +2268,726 @@ class CfnIPSetProps:
2267
2268
  )
2268
2269
 
2269
2270
 
2271
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
2272
+ class CfnMalwareProtectionPlan(
2273
+ _CfnResource_9df397a6,
2274
+ metaclass=jsii.JSIIMeta,
2275
+ jsii_type="aws-cdk-lib.aws_guardduty.CfnMalwareProtectionPlan",
2276
+ ):
2277
+ '''Resource Type definition for AWS::GuardDuty::MalwareProtectionPlan.
2278
+
2279
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html
2280
+ :cloudformationResource: AWS::GuardDuty::MalwareProtectionPlan
2281
+ :exampleMetadata: fixture=_generated
2282
+
2283
+ Example::
2284
+
2285
+ # The code below shows an example of how to instantiate this type.
2286
+ # The values are placeholders you should change.
2287
+ from aws_cdk import aws_guardduty as guardduty
2288
+
2289
+ cfn_malware_protection_plan = guardduty.CfnMalwareProtectionPlan(self, "MyCfnMalwareProtectionPlan",
2290
+ protected_resource=guardduty.CfnMalwareProtectionPlan.CFNProtectedResourceProperty(
2291
+ s3_bucket=guardduty.CfnMalwareProtectionPlan.S3BucketProperty(
2292
+ bucket_name="bucketName",
2293
+ object_prefixes=["objectPrefixes"]
2294
+ )
2295
+ ),
2296
+ role="role",
2297
+
2298
+ # the properties below are optional
2299
+ actions=guardduty.CfnMalwareProtectionPlan.CFNActionsProperty(
2300
+ tagging=guardduty.CfnMalwareProtectionPlan.CFNTaggingProperty(
2301
+ status="status"
2302
+ )
2303
+ ),
2304
+ tags=[guardduty.CfnMalwareProtectionPlan.TagItemProperty(
2305
+ key="key",
2306
+ value="value"
2307
+ )]
2308
+ )
2309
+ '''
2310
+
2311
+ def __init__(
2312
+ self,
2313
+ scope: _constructs_77d1e7e8.Construct,
2314
+ id: builtins.str,
2315
+ *,
2316
+ protected_resource: typing.Union[_IResolvable_da3f097b, typing.Union["CfnMalwareProtectionPlan.CFNProtectedResourceProperty", typing.Dict[builtins.str, typing.Any]]],
2317
+ role: builtins.str,
2318
+ actions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnMalwareProtectionPlan.CFNActionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2319
+ tags: typing.Optional[typing.Sequence[typing.Union["CfnMalwareProtectionPlan.TagItemProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2320
+ ) -> None:
2321
+ '''
2322
+ :param scope: Scope in which this resource is defined.
2323
+ :param id: Construct identifier for this resource (unique in its scope).
2324
+ :param protected_resource:
2325
+ :param role: IAM role that includes the permissions required to scan and add tags to the associated protected resource.
2326
+ :param actions:
2327
+ :param tags:
2328
+ '''
2329
+ if __debug__:
2330
+ type_hints = typing.get_type_hints(_typecheckingstub__00ef930fce1d868abb00d70b721805e86a6ec1fb82c9df9f9974877a5ec00349)
2331
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
2332
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
2333
+ props = CfnMalwareProtectionPlanProps(
2334
+ protected_resource=protected_resource,
2335
+ role=role,
2336
+ actions=actions,
2337
+ tags=tags,
2338
+ )
2339
+
2340
+ jsii.create(self.__class__, self, [scope, id, props])
2341
+
2342
+ @jsii.member(jsii_name="inspect")
2343
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
2344
+ '''Examines the CloudFormation resource and discloses attributes.
2345
+
2346
+ :param inspector: tree inspector to collect and process attributes.
2347
+ '''
2348
+ if __debug__:
2349
+ type_hints = typing.get_type_hints(_typecheckingstub__f305bc4bdb4472c75f91bda6264efa88f5fca08c3003eadba070f5026ad64459)
2350
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
2351
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
2352
+
2353
+ @jsii.member(jsii_name="renderProperties")
2354
+ def _render_properties(
2355
+ self,
2356
+ props: typing.Mapping[builtins.str, typing.Any],
2357
+ ) -> typing.Mapping[builtins.str, typing.Any]:
2358
+ '''
2359
+ :param props: -
2360
+ '''
2361
+ if __debug__:
2362
+ type_hints = typing.get_type_hints(_typecheckingstub__3729873a5c0f10b8c53c86823e89a48570fefe0fa2cd1460c5970a77eecf6f5e)
2363
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
2364
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
2365
+
2366
+ @jsii.python.classproperty
2367
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
2368
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
2369
+ '''The CloudFormation resource type name for this resource class.'''
2370
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
2371
+
2372
+ @builtins.property
2373
+ @jsii.member(jsii_name="attrArn")
2374
+ def attr_arn(self) -> builtins.str:
2375
+ '''Amazon Resource Name (ARN) of the protected resource.
2376
+
2377
+ :cloudformationAttribute: Arn
2378
+ '''
2379
+ return typing.cast(builtins.str, jsii.get(self, "attrArn"))
2380
+
2381
+ @builtins.property
2382
+ @jsii.member(jsii_name="attrCreatedAt")
2383
+ def attr_created_at(self) -> builtins.str:
2384
+ '''The timestamp when the Malware Protection plan resource was created.
2385
+
2386
+ :cloudformationAttribute: CreatedAt
2387
+ '''
2388
+ return typing.cast(builtins.str, jsii.get(self, "attrCreatedAt"))
2389
+
2390
+ @builtins.property
2391
+ @jsii.member(jsii_name="attrMalwareProtectionPlanId")
2392
+ def attr_malware_protection_plan_id(self) -> builtins.str:
2393
+ '''A unique identifier associated with Malware Protection plan resource.
2394
+
2395
+ :cloudformationAttribute: MalwareProtectionPlanId
2396
+ '''
2397
+ return typing.cast(builtins.str, jsii.get(self, "attrMalwareProtectionPlanId"))
2398
+
2399
+ @builtins.property
2400
+ @jsii.member(jsii_name="attrStatus")
2401
+ def attr_status(self) -> builtins.str:
2402
+ '''Malware Protection plan status.
2403
+
2404
+ :cloudformationAttribute: Status
2405
+ '''
2406
+ return typing.cast(builtins.str, jsii.get(self, "attrStatus"))
2407
+
2408
+ @builtins.property
2409
+ @jsii.member(jsii_name="attrStatusReasons")
2410
+ def attr_status_reasons(self) -> _IResolvable_da3f097b:
2411
+ '''Information about the issue code and message associated to the status of your Malware Protection plan.
2412
+
2413
+ :cloudformationAttribute: StatusReasons
2414
+ '''
2415
+ return typing.cast(_IResolvable_da3f097b, jsii.get(self, "attrStatusReasons"))
2416
+
2417
+ @builtins.property
2418
+ @jsii.member(jsii_name="cdkTagManager")
2419
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
2420
+ '''Tag Manager which manages the tags for this resource.'''
2421
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
2422
+
2423
+ @builtins.property
2424
+ @jsii.member(jsii_name="cfnProperties")
2425
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
2426
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
2427
+
2428
+ @builtins.property
2429
+ @jsii.member(jsii_name="protectedResource")
2430
+ def protected_resource(
2431
+ self,
2432
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnMalwareProtectionPlan.CFNProtectedResourceProperty"]:
2433
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnMalwareProtectionPlan.CFNProtectedResourceProperty"], jsii.get(self, "protectedResource"))
2434
+
2435
+ @protected_resource.setter
2436
+ def protected_resource(
2437
+ self,
2438
+ value: typing.Union[_IResolvable_da3f097b, "CfnMalwareProtectionPlan.CFNProtectedResourceProperty"],
2439
+ ) -> None:
2440
+ if __debug__:
2441
+ type_hints = typing.get_type_hints(_typecheckingstub__a380560cce55c21ddf0570542e599e109af7dd74da03656308d8f1082ea92bc6)
2442
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2443
+ jsii.set(self, "protectedResource", value)
2444
+
2445
+ @builtins.property
2446
+ @jsii.member(jsii_name="role")
2447
+ def role(self) -> builtins.str:
2448
+ '''IAM role that includes the permissions required to scan and add tags to the associated protected resource.'''
2449
+ return typing.cast(builtins.str, jsii.get(self, "role"))
2450
+
2451
+ @role.setter
2452
+ def role(self, value: builtins.str) -> None:
2453
+ if __debug__:
2454
+ type_hints = typing.get_type_hints(_typecheckingstub__9e1689d4159388f617156dc7b47e3c0ac9eeebcf7d4134a0ad0467e91d311f60)
2455
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2456
+ jsii.set(self, "role", value)
2457
+
2458
+ @builtins.property
2459
+ @jsii.member(jsii_name="actions")
2460
+ def actions(
2461
+ self,
2462
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnMalwareProtectionPlan.CFNActionsProperty"]]:
2463
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnMalwareProtectionPlan.CFNActionsProperty"]], jsii.get(self, "actions"))
2464
+
2465
+ @actions.setter
2466
+ def actions(
2467
+ self,
2468
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnMalwareProtectionPlan.CFNActionsProperty"]],
2469
+ ) -> None:
2470
+ if __debug__:
2471
+ type_hints = typing.get_type_hints(_typecheckingstub__87536f4fee47b32d2726bd495eeb160305899f097f41d5953ef86e973512fe4b)
2472
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2473
+ jsii.set(self, "actions", value)
2474
+
2475
+ @builtins.property
2476
+ @jsii.member(jsii_name="tags")
2477
+ def tags(
2478
+ self,
2479
+ ) -> typing.Optional[typing.List["CfnMalwareProtectionPlan.TagItemProperty"]]:
2480
+ return typing.cast(typing.Optional[typing.List["CfnMalwareProtectionPlan.TagItemProperty"]], jsii.get(self, "tags"))
2481
+
2482
+ @tags.setter
2483
+ def tags(
2484
+ self,
2485
+ value: typing.Optional[typing.List["CfnMalwareProtectionPlan.TagItemProperty"]],
2486
+ ) -> None:
2487
+ if __debug__:
2488
+ type_hints = typing.get_type_hints(_typecheckingstub__5c90cd61fbec14272b0c810d0552a8021fd2371b9b4b27d087d461ef7a265fe7)
2489
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2490
+ jsii.set(self, "tags", value)
2491
+
2492
+ @jsii.data_type(
2493
+ jsii_type="aws-cdk-lib.aws_guardduty.CfnMalwareProtectionPlan.CFNActionsProperty",
2494
+ jsii_struct_bases=[],
2495
+ name_mapping={"tagging": "tagging"},
2496
+ )
2497
+ class CFNActionsProperty:
2498
+ def __init__(
2499
+ self,
2500
+ *,
2501
+ tagging: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnMalwareProtectionPlan.CFNTaggingProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2502
+ ) -> None:
2503
+ '''
2504
+ :param tagging:
2505
+
2506
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-cfnactions.html
2507
+ :exampleMetadata: fixture=_generated
2508
+
2509
+ Example::
2510
+
2511
+ # The code below shows an example of how to instantiate this type.
2512
+ # The values are placeholders you should change.
2513
+ from aws_cdk import aws_guardduty as guardduty
2514
+
2515
+ c_fNActions_property = guardduty.CfnMalwareProtectionPlan.CFNActionsProperty(
2516
+ tagging=guardduty.CfnMalwareProtectionPlan.CFNTaggingProperty(
2517
+ status="status"
2518
+ )
2519
+ )
2520
+ '''
2521
+ if __debug__:
2522
+ type_hints = typing.get_type_hints(_typecheckingstub__ab1851950cd03a36dd43bad75c8285e8f44efc5d2997fa39dee35d95e43eff22)
2523
+ check_type(argname="argument tagging", value=tagging, expected_type=type_hints["tagging"])
2524
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
2525
+ if tagging is not None:
2526
+ self._values["tagging"] = tagging
2527
+
2528
+ @builtins.property
2529
+ def tagging(
2530
+ self,
2531
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnMalwareProtectionPlan.CFNTaggingProperty"]]:
2532
+ '''
2533
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-cfnactions.html#cfn-guardduty-malwareprotectionplan-cfnactions-tagging
2534
+ '''
2535
+ result = self._values.get("tagging")
2536
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnMalwareProtectionPlan.CFNTaggingProperty"]], result)
2537
+
2538
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2539
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2540
+
2541
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2542
+ return not (rhs == self)
2543
+
2544
+ def __repr__(self) -> str:
2545
+ return "CFNActionsProperty(%s)" % ", ".join(
2546
+ k + "=" + repr(v) for k, v in self._values.items()
2547
+ )
2548
+
2549
+ @jsii.data_type(
2550
+ jsii_type="aws-cdk-lib.aws_guardduty.CfnMalwareProtectionPlan.CFNProtectedResourceProperty",
2551
+ jsii_struct_bases=[],
2552
+ name_mapping={"s3_bucket": "s3Bucket"},
2553
+ )
2554
+ class CFNProtectedResourceProperty:
2555
+ def __init__(
2556
+ self,
2557
+ *,
2558
+ s3_bucket: typing.Union[_IResolvable_da3f097b, typing.Union["CfnMalwareProtectionPlan.S3BucketProperty", typing.Dict[builtins.str, typing.Any]]],
2559
+ ) -> None:
2560
+ '''
2561
+ :param s3_bucket: Information about the protected S3 bucket resource.
2562
+
2563
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-cfnprotectedresource.html
2564
+ :exampleMetadata: fixture=_generated
2565
+
2566
+ Example::
2567
+
2568
+ # The code below shows an example of how to instantiate this type.
2569
+ # The values are placeholders you should change.
2570
+ from aws_cdk import aws_guardduty as guardduty
2571
+
2572
+ c_fNProtected_resource_property = guardduty.CfnMalwareProtectionPlan.CFNProtectedResourceProperty(
2573
+ s3_bucket=guardduty.CfnMalwareProtectionPlan.S3BucketProperty(
2574
+ bucket_name="bucketName",
2575
+ object_prefixes=["objectPrefixes"]
2576
+ )
2577
+ )
2578
+ '''
2579
+ if __debug__:
2580
+ type_hints = typing.get_type_hints(_typecheckingstub__628bb2098aad45bbd3dc6562b2fef1b446c6209c8204251fa8278f0a3578da62)
2581
+ check_type(argname="argument s3_bucket", value=s3_bucket, expected_type=type_hints["s3_bucket"])
2582
+ self._values: typing.Dict[builtins.str, typing.Any] = {
2583
+ "s3_bucket": s3_bucket,
2584
+ }
2585
+
2586
+ @builtins.property
2587
+ def s3_bucket(
2588
+ self,
2589
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnMalwareProtectionPlan.S3BucketProperty"]:
2590
+ '''Information about the protected S3 bucket resource.
2591
+
2592
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-cfnprotectedresource.html#cfn-guardduty-malwareprotectionplan-cfnprotectedresource-s3bucket
2593
+ '''
2594
+ result = self._values.get("s3_bucket")
2595
+ assert result is not None, "Required property 's3_bucket' is missing"
2596
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnMalwareProtectionPlan.S3BucketProperty"], result)
2597
+
2598
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2599
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2600
+
2601
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2602
+ return not (rhs == self)
2603
+
2604
+ def __repr__(self) -> str:
2605
+ return "CFNProtectedResourceProperty(%s)" % ", ".join(
2606
+ k + "=" + repr(v) for k, v in self._values.items()
2607
+ )
2608
+
2609
+ @jsii.data_type(
2610
+ jsii_type="aws-cdk-lib.aws_guardduty.CfnMalwareProtectionPlan.CFNStatusReasonsProperty",
2611
+ jsii_struct_bases=[],
2612
+ name_mapping={"code": "code", "message": "message"},
2613
+ )
2614
+ class CFNStatusReasonsProperty:
2615
+ def __init__(
2616
+ self,
2617
+ *,
2618
+ code: typing.Optional[builtins.str] = None,
2619
+ message: typing.Optional[builtins.str] = None,
2620
+ ) -> None:
2621
+ '''
2622
+ :param code: Issue code.
2623
+ :param message: Issue message that specifies the reason.
2624
+
2625
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-cfnstatusreasons.html
2626
+ :exampleMetadata: fixture=_generated
2627
+
2628
+ Example::
2629
+
2630
+ # The code below shows an example of how to instantiate this type.
2631
+ # The values are placeholders you should change.
2632
+ from aws_cdk import aws_guardduty as guardduty
2633
+
2634
+ c_fNStatus_reasons_property = guardduty.CfnMalwareProtectionPlan.CFNStatusReasonsProperty(
2635
+ code="code",
2636
+ message="message"
2637
+ )
2638
+ '''
2639
+ if __debug__:
2640
+ type_hints = typing.get_type_hints(_typecheckingstub__3ec77ecd0e9062aee3249224fcb9027f42ecf7302ac504b68356fe2f59b900da)
2641
+ check_type(argname="argument code", value=code, expected_type=type_hints["code"])
2642
+ check_type(argname="argument message", value=message, expected_type=type_hints["message"])
2643
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
2644
+ if code is not None:
2645
+ self._values["code"] = code
2646
+ if message is not None:
2647
+ self._values["message"] = message
2648
+
2649
+ @builtins.property
2650
+ def code(self) -> typing.Optional[builtins.str]:
2651
+ '''Issue code.
2652
+
2653
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-cfnstatusreasons.html#cfn-guardduty-malwareprotectionplan-cfnstatusreasons-code
2654
+ '''
2655
+ result = self._values.get("code")
2656
+ return typing.cast(typing.Optional[builtins.str], result)
2657
+
2658
+ @builtins.property
2659
+ def message(self) -> typing.Optional[builtins.str]:
2660
+ '''Issue message that specifies the reason.
2661
+
2662
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-cfnstatusreasons.html#cfn-guardduty-malwareprotectionplan-cfnstatusreasons-message
2663
+ '''
2664
+ result = self._values.get("message")
2665
+ return typing.cast(typing.Optional[builtins.str], result)
2666
+
2667
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2668
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2669
+
2670
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2671
+ return not (rhs == self)
2672
+
2673
+ def __repr__(self) -> str:
2674
+ return "CFNStatusReasonsProperty(%s)" % ", ".join(
2675
+ k + "=" + repr(v) for k, v in self._values.items()
2676
+ )
2677
+
2678
+ @jsii.data_type(
2679
+ jsii_type="aws-cdk-lib.aws_guardduty.CfnMalwareProtectionPlan.CFNTaggingProperty",
2680
+ jsii_struct_bases=[],
2681
+ name_mapping={"status": "status"},
2682
+ )
2683
+ class CFNTaggingProperty:
2684
+ def __init__(self, *, status: typing.Optional[builtins.str] = None) -> None:
2685
+ '''
2686
+ :param status: Indicates whether or not the tags will added.
2687
+
2688
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-cfntagging.html
2689
+ :exampleMetadata: fixture=_generated
2690
+
2691
+ Example::
2692
+
2693
+ # The code below shows an example of how to instantiate this type.
2694
+ # The values are placeholders you should change.
2695
+ from aws_cdk import aws_guardduty as guardduty
2696
+
2697
+ c_fNTagging_property = guardduty.CfnMalwareProtectionPlan.CFNTaggingProperty(
2698
+ status="status"
2699
+ )
2700
+ '''
2701
+ if __debug__:
2702
+ type_hints = typing.get_type_hints(_typecheckingstub__4c35ec5bbb51f8391a385436dad3b9dc0b8432a67385f66a397a691b630ac0ac)
2703
+ check_type(argname="argument status", value=status, expected_type=type_hints["status"])
2704
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
2705
+ if status is not None:
2706
+ self._values["status"] = status
2707
+
2708
+ @builtins.property
2709
+ def status(self) -> typing.Optional[builtins.str]:
2710
+ '''Indicates whether or not the tags will added.
2711
+
2712
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-cfntagging.html#cfn-guardduty-malwareprotectionplan-cfntagging-status
2713
+ '''
2714
+ result = self._values.get("status")
2715
+ return typing.cast(typing.Optional[builtins.str], result)
2716
+
2717
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2718
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2719
+
2720
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2721
+ return not (rhs == self)
2722
+
2723
+ def __repr__(self) -> str:
2724
+ return "CFNTaggingProperty(%s)" % ", ".join(
2725
+ k + "=" + repr(v) for k, v in self._values.items()
2726
+ )
2727
+
2728
+ @jsii.data_type(
2729
+ jsii_type="aws-cdk-lib.aws_guardduty.CfnMalwareProtectionPlan.S3BucketProperty",
2730
+ jsii_struct_bases=[],
2731
+ name_mapping={
2732
+ "bucket_name": "bucketName",
2733
+ "object_prefixes": "objectPrefixes",
2734
+ },
2735
+ )
2736
+ class S3BucketProperty:
2737
+ def __init__(
2738
+ self,
2739
+ *,
2740
+ bucket_name: typing.Optional[builtins.str] = None,
2741
+ object_prefixes: typing.Optional[typing.Sequence[builtins.str]] = None,
2742
+ ) -> None:
2743
+ '''Information about the protected S3 bucket resource.
2744
+
2745
+ :param bucket_name: Name of the S3 bucket.
2746
+ :param object_prefixes: Information about the specified object prefixes. The S3 object will be scanned only if it belongs to any of the specified object prefixes.
2747
+
2748
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-s3bucket.html
2749
+ :exampleMetadata: fixture=_generated
2750
+
2751
+ Example::
2752
+
2753
+ # The code below shows an example of how to instantiate this type.
2754
+ # The values are placeholders you should change.
2755
+ from aws_cdk import aws_guardduty as guardduty
2756
+
2757
+ s3_bucket_property = guardduty.CfnMalwareProtectionPlan.S3BucketProperty(
2758
+ bucket_name="bucketName",
2759
+ object_prefixes=["objectPrefixes"]
2760
+ )
2761
+ '''
2762
+ if __debug__:
2763
+ type_hints = typing.get_type_hints(_typecheckingstub__a4a8e70e5aca51f1d1d53ca3b54ead0d17508c006f3f219e0bf90cccb08502d3)
2764
+ check_type(argname="argument bucket_name", value=bucket_name, expected_type=type_hints["bucket_name"])
2765
+ check_type(argname="argument object_prefixes", value=object_prefixes, expected_type=type_hints["object_prefixes"])
2766
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
2767
+ if bucket_name is not None:
2768
+ self._values["bucket_name"] = bucket_name
2769
+ if object_prefixes is not None:
2770
+ self._values["object_prefixes"] = object_prefixes
2771
+
2772
+ @builtins.property
2773
+ def bucket_name(self) -> typing.Optional[builtins.str]:
2774
+ '''Name of the S3 bucket.
2775
+
2776
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-s3bucket.html#cfn-guardduty-malwareprotectionplan-s3bucket-bucketname
2777
+ '''
2778
+ result = self._values.get("bucket_name")
2779
+ return typing.cast(typing.Optional[builtins.str], result)
2780
+
2781
+ @builtins.property
2782
+ def object_prefixes(self) -> typing.Optional[typing.List[builtins.str]]:
2783
+ '''Information about the specified object prefixes.
2784
+
2785
+ The S3 object will be scanned only if it belongs to any of the specified object prefixes.
2786
+
2787
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-s3bucket.html#cfn-guardduty-malwareprotectionplan-s3bucket-objectprefixes
2788
+ '''
2789
+ result = self._values.get("object_prefixes")
2790
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
2791
+
2792
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2793
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2794
+
2795
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2796
+ return not (rhs == self)
2797
+
2798
+ def __repr__(self) -> str:
2799
+ return "S3BucketProperty(%s)" % ", ".join(
2800
+ k + "=" + repr(v) for k, v in self._values.items()
2801
+ )
2802
+
2803
+ @jsii.data_type(
2804
+ jsii_type="aws-cdk-lib.aws_guardduty.CfnMalwareProtectionPlan.TagItemProperty",
2805
+ jsii_struct_bases=[],
2806
+ name_mapping={"key": "key", "value": "value"},
2807
+ )
2808
+ class TagItemProperty:
2809
+ def __init__(self, *, key: builtins.str, value: builtins.str) -> None:
2810
+ '''
2811
+ :param key:
2812
+ :param value:
2813
+
2814
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-tagitem.html
2815
+ :exampleMetadata: fixture=_generated
2816
+
2817
+ Example::
2818
+
2819
+ # The code below shows an example of how to instantiate this type.
2820
+ # The values are placeholders you should change.
2821
+ from aws_cdk import aws_guardduty as guardduty
2822
+
2823
+ tag_item_property = guardduty.CfnMalwareProtectionPlan.TagItemProperty(
2824
+ key="key",
2825
+ value="value"
2826
+ )
2827
+ '''
2828
+ if __debug__:
2829
+ type_hints = typing.get_type_hints(_typecheckingstub__25ebd716f82a226adc91a692f31af8c4a126ad6c6c4f7cdb2b00143232b72d2f)
2830
+ check_type(argname="argument key", value=key, expected_type=type_hints["key"])
2831
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2832
+ self._values: typing.Dict[builtins.str, typing.Any] = {
2833
+ "key": key,
2834
+ "value": value,
2835
+ }
2836
+
2837
+ @builtins.property
2838
+ def key(self) -> builtins.str:
2839
+ '''
2840
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-tagitem.html#cfn-guardduty-malwareprotectionplan-tagitem-key
2841
+ '''
2842
+ result = self._values.get("key")
2843
+ assert result is not None, "Required property 'key' is missing"
2844
+ return typing.cast(builtins.str, result)
2845
+
2846
+ @builtins.property
2847
+ def value(self) -> builtins.str:
2848
+ '''
2849
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-malwareprotectionplan-tagitem.html#cfn-guardduty-malwareprotectionplan-tagitem-value
2850
+ '''
2851
+ result = self._values.get("value")
2852
+ assert result is not None, "Required property 'value' is missing"
2853
+ return typing.cast(builtins.str, result)
2854
+
2855
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2856
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2857
+
2858
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2859
+ return not (rhs == self)
2860
+
2861
+ def __repr__(self) -> str:
2862
+ return "TagItemProperty(%s)" % ", ".join(
2863
+ k + "=" + repr(v) for k, v in self._values.items()
2864
+ )
2865
+
2866
+
2867
+ @jsii.data_type(
2868
+ jsii_type="aws-cdk-lib.aws_guardduty.CfnMalwareProtectionPlanProps",
2869
+ jsii_struct_bases=[],
2870
+ name_mapping={
2871
+ "protected_resource": "protectedResource",
2872
+ "role": "role",
2873
+ "actions": "actions",
2874
+ "tags": "tags",
2875
+ },
2876
+ )
2877
+ class CfnMalwareProtectionPlanProps:
2878
+ def __init__(
2879
+ self,
2880
+ *,
2881
+ protected_resource: typing.Union[_IResolvable_da3f097b, typing.Union[CfnMalwareProtectionPlan.CFNProtectedResourceProperty, typing.Dict[builtins.str, typing.Any]]],
2882
+ role: builtins.str,
2883
+ actions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnMalwareProtectionPlan.CFNActionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2884
+ tags: typing.Optional[typing.Sequence[typing.Union[CfnMalwareProtectionPlan.TagItemProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2885
+ ) -> None:
2886
+ '''Properties for defining a ``CfnMalwareProtectionPlan``.
2887
+
2888
+ :param protected_resource:
2889
+ :param role: IAM role that includes the permissions required to scan and add tags to the associated protected resource.
2890
+ :param actions:
2891
+ :param tags:
2892
+
2893
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html
2894
+ :exampleMetadata: fixture=_generated
2895
+
2896
+ Example::
2897
+
2898
+ # The code below shows an example of how to instantiate this type.
2899
+ # The values are placeholders you should change.
2900
+ from aws_cdk import aws_guardduty as guardduty
2901
+
2902
+ cfn_malware_protection_plan_props = guardduty.CfnMalwareProtectionPlanProps(
2903
+ protected_resource=guardduty.CfnMalwareProtectionPlan.CFNProtectedResourceProperty(
2904
+ s3_bucket=guardduty.CfnMalwareProtectionPlan.S3BucketProperty(
2905
+ bucket_name="bucketName",
2906
+ object_prefixes=["objectPrefixes"]
2907
+ )
2908
+ ),
2909
+ role="role",
2910
+
2911
+ # the properties below are optional
2912
+ actions=guardduty.CfnMalwareProtectionPlan.CFNActionsProperty(
2913
+ tagging=guardduty.CfnMalwareProtectionPlan.CFNTaggingProperty(
2914
+ status="status"
2915
+ )
2916
+ ),
2917
+ tags=[guardduty.CfnMalwareProtectionPlan.TagItemProperty(
2918
+ key="key",
2919
+ value="value"
2920
+ )]
2921
+ )
2922
+ '''
2923
+ if __debug__:
2924
+ type_hints = typing.get_type_hints(_typecheckingstub__82e43dbe3124ce5f5e04970117a0d20d3ccdfd803e79608a9dc049755c802f5c)
2925
+ check_type(argname="argument protected_resource", value=protected_resource, expected_type=type_hints["protected_resource"])
2926
+ check_type(argname="argument role", value=role, expected_type=type_hints["role"])
2927
+ check_type(argname="argument actions", value=actions, expected_type=type_hints["actions"])
2928
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
2929
+ self._values: typing.Dict[builtins.str, typing.Any] = {
2930
+ "protected_resource": protected_resource,
2931
+ "role": role,
2932
+ }
2933
+ if actions is not None:
2934
+ self._values["actions"] = actions
2935
+ if tags is not None:
2936
+ self._values["tags"] = tags
2937
+
2938
+ @builtins.property
2939
+ def protected_resource(
2940
+ self,
2941
+ ) -> typing.Union[_IResolvable_da3f097b, CfnMalwareProtectionPlan.CFNProtectedResourceProperty]:
2942
+ '''
2943
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html#cfn-guardduty-malwareprotectionplan-protectedresource
2944
+ '''
2945
+ result = self._values.get("protected_resource")
2946
+ assert result is not None, "Required property 'protected_resource' is missing"
2947
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnMalwareProtectionPlan.CFNProtectedResourceProperty], result)
2948
+
2949
+ @builtins.property
2950
+ def role(self) -> builtins.str:
2951
+ '''IAM role that includes the permissions required to scan and add tags to the associated protected resource.
2952
+
2953
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html#cfn-guardduty-malwareprotectionplan-role
2954
+ '''
2955
+ result = self._values.get("role")
2956
+ assert result is not None, "Required property 'role' is missing"
2957
+ return typing.cast(builtins.str, result)
2958
+
2959
+ @builtins.property
2960
+ def actions(
2961
+ self,
2962
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnMalwareProtectionPlan.CFNActionsProperty]]:
2963
+ '''
2964
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html#cfn-guardduty-malwareprotectionplan-actions
2965
+ '''
2966
+ result = self._values.get("actions")
2967
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnMalwareProtectionPlan.CFNActionsProperty]], result)
2968
+
2969
+ @builtins.property
2970
+ def tags(
2971
+ self,
2972
+ ) -> typing.Optional[typing.List[CfnMalwareProtectionPlan.TagItemProperty]]:
2973
+ '''
2974
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html#cfn-guardduty-malwareprotectionplan-tags
2975
+ '''
2976
+ result = self._values.get("tags")
2977
+ return typing.cast(typing.Optional[typing.List[CfnMalwareProtectionPlan.TagItemProperty]], result)
2978
+
2979
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2980
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2981
+
2982
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2983
+ return not (rhs == self)
2984
+
2985
+ def __repr__(self) -> str:
2986
+ return "CfnMalwareProtectionPlanProps(%s)" % ", ".join(
2987
+ k + "=" + repr(v) for k, v in self._values.items()
2988
+ )
2989
+
2990
+
2270
2991
  @jsii.implements(_IInspectable_c2943556)
2271
2992
  class CfnMaster(
2272
2993
  _CfnResource_9df397a6,
@@ -3187,6 +3908,8 @@ __all__ = [
3187
3908
  "CfnFilterProps",
3188
3909
  "CfnIPSet",
3189
3910
  "CfnIPSetProps",
3911
+ "CfnMalwareProtectionPlan",
3912
+ "CfnMalwareProtectionPlanProps",
3190
3913
  "CfnMaster",
3191
3914
  "CfnMasterProps",
3192
3915
  "CfnMember",
@@ -3514,6 +4237,109 @@ def _typecheckingstub__f47aa340c89b95bf1878c9cb7463920b568c23940ad283e6f2c2bb481
3514
4237
  """Type checking stubs"""
3515
4238
  pass
3516
4239
 
4240
+ def _typecheckingstub__00ef930fce1d868abb00d70b721805e86a6ec1fb82c9df9f9974877a5ec00349(
4241
+ scope: _constructs_77d1e7e8.Construct,
4242
+ id: builtins.str,
4243
+ *,
4244
+ protected_resource: typing.Union[_IResolvable_da3f097b, typing.Union[CfnMalwareProtectionPlan.CFNProtectedResourceProperty, typing.Dict[builtins.str, typing.Any]]],
4245
+ role: builtins.str,
4246
+ actions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnMalwareProtectionPlan.CFNActionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4247
+ tags: typing.Optional[typing.Sequence[typing.Union[CfnMalwareProtectionPlan.TagItemProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4248
+ ) -> None:
4249
+ """Type checking stubs"""
4250
+ pass
4251
+
4252
+ def _typecheckingstub__f305bc4bdb4472c75f91bda6264efa88f5fca08c3003eadba070f5026ad64459(
4253
+ inspector: _TreeInspector_488e0dd5,
4254
+ ) -> None:
4255
+ """Type checking stubs"""
4256
+ pass
4257
+
4258
+ def _typecheckingstub__3729873a5c0f10b8c53c86823e89a48570fefe0fa2cd1460c5970a77eecf6f5e(
4259
+ props: typing.Mapping[builtins.str, typing.Any],
4260
+ ) -> None:
4261
+ """Type checking stubs"""
4262
+ pass
4263
+
4264
+ def _typecheckingstub__a380560cce55c21ddf0570542e599e109af7dd74da03656308d8f1082ea92bc6(
4265
+ value: typing.Union[_IResolvable_da3f097b, CfnMalwareProtectionPlan.CFNProtectedResourceProperty],
4266
+ ) -> None:
4267
+ """Type checking stubs"""
4268
+ pass
4269
+
4270
+ def _typecheckingstub__9e1689d4159388f617156dc7b47e3c0ac9eeebcf7d4134a0ad0467e91d311f60(
4271
+ value: builtins.str,
4272
+ ) -> None:
4273
+ """Type checking stubs"""
4274
+ pass
4275
+
4276
+ def _typecheckingstub__87536f4fee47b32d2726bd495eeb160305899f097f41d5953ef86e973512fe4b(
4277
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnMalwareProtectionPlan.CFNActionsProperty]],
4278
+ ) -> None:
4279
+ """Type checking stubs"""
4280
+ pass
4281
+
4282
+ def _typecheckingstub__5c90cd61fbec14272b0c810d0552a8021fd2371b9b4b27d087d461ef7a265fe7(
4283
+ value: typing.Optional[typing.List[CfnMalwareProtectionPlan.TagItemProperty]],
4284
+ ) -> None:
4285
+ """Type checking stubs"""
4286
+ pass
4287
+
4288
+ def _typecheckingstub__ab1851950cd03a36dd43bad75c8285e8f44efc5d2997fa39dee35d95e43eff22(
4289
+ *,
4290
+ tagging: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnMalwareProtectionPlan.CFNTaggingProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4291
+ ) -> None:
4292
+ """Type checking stubs"""
4293
+ pass
4294
+
4295
+ def _typecheckingstub__628bb2098aad45bbd3dc6562b2fef1b446c6209c8204251fa8278f0a3578da62(
4296
+ *,
4297
+ s3_bucket: typing.Union[_IResolvable_da3f097b, typing.Union[CfnMalwareProtectionPlan.S3BucketProperty, typing.Dict[builtins.str, typing.Any]]],
4298
+ ) -> None:
4299
+ """Type checking stubs"""
4300
+ pass
4301
+
4302
+ def _typecheckingstub__3ec77ecd0e9062aee3249224fcb9027f42ecf7302ac504b68356fe2f59b900da(
4303
+ *,
4304
+ code: typing.Optional[builtins.str] = None,
4305
+ message: typing.Optional[builtins.str] = None,
4306
+ ) -> None:
4307
+ """Type checking stubs"""
4308
+ pass
4309
+
4310
+ def _typecheckingstub__4c35ec5bbb51f8391a385436dad3b9dc0b8432a67385f66a397a691b630ac0ac(
4311
+ *,
4312
+ status: typing.Optional[builtins.str] = None,
4313
+ ) -> None:
4314
+ """Type checking stubs"""
4315
+ pass
4316
+
4317
+ def _typecheckingstub__a4a8e70e5aca51f1d1d53ca3b54ead0d17508c006f3f219e0bf90cccb08502d3(
4318
+ *,
4319
+ bucket_name: typing.Optional[builtins.str] = None,
4320
+ object_prefixes: typing.Optional[typing.Sequence[builtins.str]] = None,
4321
+ ) -> None:
4322
+ """Type checking stubs"""
4323
+ pass
4324
+
4325
+ def _typecheckingstub__25ebd716f82a226adc91a692f31af8c4a126ad6c6c4f7cdb2b00143232b72d2f(
4326
+ *,
4327
+ key: builtins.str,
4328
+ value: builtins.str,
4329
+ ) -> None:
4330
+ """Type checking stubs"""
4331
+ pass
4332
+
4333
+ def _typecheckingstub__82e43dbe3124ce5f5e04970117a0d20d3ccdfd803e79608a9dc049755c802f5c(
4334
+ *,
4335
+ protected_resource: typing.Union[_IResolvable_da3f097b, typing.Union[CfnMalwareProtectionPlan.CFNProtectedResourceProperty, typing.Dict[builtins.str, typing.Any]]],
4336
+ role: builtins.str,
4337
+ actions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnMalwareProtectionPlan.CFNActionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4338
+ tags: typing.Optional[typing.Sequence[typing.Union[CfnMalwareProtectionPlan.TagItemProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4339
+ ) -> None:
4340
+ """Type checking stubs"""
4341
+ pass
4342
+
3517
4343
  def _typecheckingstub__d5d03095d03ec71c014c1cfc8e78531e9220fec576d321a24de280815b0d72c0(
3518
4344
  scope: _constructs_77d1e7e8.Construct,
3519
4345
  id: builtins.str,