aws-cdk-lib 2.201.0__py3-none-any.whl → 2.203.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 (69) hide show
  1. aws_cdk/__init__.py +70 -71
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.201.0.jsii.tgz → aws-cdk-lib@2.203.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_accessanalyzer/__init__.py +310 -4
  5. aws_cdk/aws_aiops/__init__.py +964 -0
  6. aws_cdk/aws_amplify/__init__.py +127 -0
  7. aws_cdk/aws_arczonalshift/__init__.py +8 -8
  8. aws_cdk/aws_athena/__init__.py +12 -11
  9. aws_cdk/aws_b2bi/__init__.py +782 -3
  10. aws_cdk/aws_backup/__init__.py +22 -0
  11. aws_cdk/aws_batch/__init__.py +53 -1
  12. aws_cdk/aws_bedrock/__init__.py +123 -9
  13. aws_cdk/aws_cleanrooms/__init__.py +157 -154
  14. aws_cdk/aws_cloudformation/__init__.py +28 -28
  15. aws_cdk/aws_cloudfront/__init__.py +92 -57
  16. aws_cdk/aws_cloudfront/experimental/__init__.py +42 -3
  17. aws_cdk/aws_cloudwatch/__init__.py +228 -2
  18. aws_cdk/aws_connect/__init__.py +120 -8
  19. aws_cdk/aws_connectcampaignsv2/__init__.py +25 -4
  20. aws_cdk/aws_customerprofiles/__init__.py +150 -30
  21. aws_cdk/aws_datazone/__init__.py +23 -4
  22. aws_cdk/aws_deadline/__init__.py +4 -4
  23. aws_cdk/aws_dsql/__init__.py +148 -0
  24. aws_cdk/aws_ec2/__init__.py +321 -19
  25. aws_cdk/aws_ecr/__init__.py +3 -3
  26. aws_cdk/aws_ecs/__init__.py +48 -13
  27. aws_cdk/aws_efs/__init__.py +17 -6
  28. aws_cdk/aws_eks/__init__.py +180 -158
  29. aws_cdk/aws_elasticloadbalancingv2/__init__.py +4 -2
  30. aws_cdk/aws_emrserverless/__init__.py +118 -0
  31. aws_cdk/aws_fsx/__init__.py +891 -0
  32. aws_cdk/aws_glue/__init__.py +58 -24
  33. aws_cdk/aws_iam/__init__.py +11 -11
  34. aws_cdk/aws_inspectorv2/__init__.py +442 -3
  35. aws_cdk/aws_kendra/__init__.py +10 -5
  36. aws_cdk/aws_kms/__init__.py +24 -12
  37. aws_cdk/aws_lambda/__init__.py +938 -36
  38. aws_cdk/aws_lambda_event_sources/__init__.py +638 -1
  39. aws_cdk/aws_lambda_nodejs/__init__.py +37 -3
  40. aws_cdk/aws_lex/__init__.py +703 -0
  41. aws_cdk/aws_logs/__init__.py +144 -0
  42. aws_cdk/aws_mediatailor/__init__.py +399 -0
  43. aws_cdk/aws_mpa/__init__.py +1475 -0
  44. aws_cdk/aws_msk/__init__.py +21 -2
  45. aws_cdk/aws_mwaa/__init__.py +45 -2
  46. aws_cdk/aws_networkfirewall/__init__.py +4 -2
  47. aws_cdk/aws_networkmanager/__init__.py +51 -3
  48. aws_cdk/aws_opsworkscm/__init__.py +44 -2
  49. aws_cdk/aws_rds/__init__.py +175 -42
  50. aws_cdk/aws_redshiftserverless/__init__.py +632 -0
  51. aws_cdk/aws_route53resolver/__init__.py +58 -10
  52. aws_cdk/aws_s3/__init__.py +19 -1
  53. aws_cdk/aws_s3tables/__init__.py +230 -0
  54. aws_cdk/aws_sagemaker/__init__.py +14 -10
  55. aws_cdk/aws_securityhub/__init__.py +2887 -56
  56. aws_cdk/aws_synthetics/__init__.py +21 -0
  57. aws_cdk/aws_vpclattice/__init__.py +6 -4
  58. aws_cdk/aws_wafv2/__init__.py +849 -18
  59. aws_cdk/aws_workspacesinstances/__init__.py +3243 -0
  60. aws_cdk/cloud_assembly_schema/__init__.py +200 -4
  61. aws_cdk/cx_api/__init__.py +29 -14
  62. aws_cdk/pipelines/__init__.py +178 -41
  63. aws_cdk/triggers/__init__.py +41 -4
  64. {aws_cdk_lib-2.201.0.dist-info → aws_cdk_lib-2.203.0.dist-info}/METADATA +3 -3
  65. {aws_cdk_lib-2.201.0.dist-info → aws_cdk_lib-2.203.0.dist-info}/RECORD +69 -66
  66. {aws_cdk_lib-2.201.0.dist-info → aws_cdk_lib-2.203.0.dist-info}/LICENSE +0 -0
  67. {aws_cdk_lib-2.201.0.dist-info → aws_cdk_lib-2.203.0.dist-info}/NOTICE +0 -0
  68. {aws_cdk_lib-2.201.0.dist-info → aws_cdk_lib-2.203.0.dist-info}/WHEEL +0 -0
  69. {aws_cdk_lib-2.201.0.dist-info → aws_cdk_lib-2.203.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1475 @@
1
+ r'''
2
+ # AWS::MPA Construct Library
3
+
4
+ <!--BEGIN STABILITY BANNER-->---
5
+
6
+
7
+ ![cfn-resources: Stable](https://img.shields.io/badge/cfn--resources-stable-success.svg?style=for-the-badge)
8
+
9
+ > All classes with the `Cfn` prefix in this module ([CFN Resources](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib)) are always stable and safe to use.
10
+
11
+ ---
12
+ <!--END STABILITY BANNER-->
13
+
14
+ This module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project.
15
+
16
+ ```python
17
+ import aws_cdk.aws_mpa as mpa
18
+ ```
19
+
20
+ <!--BEGIN CFNONLY DISCLAIMER-->
21
+
22
+ There are no official hand-written ([L2](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib)) constructs for this service yet. Here are some suggestions on how to proceed:
23
+
24
+ * Search [Construct Hub for MPA construct libraries](https://constructs.dev/search?q=mpa)
25
+ * Use the automatically generated [L1](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_l1_using) constructs, in the same way you would use [the CloudFormation AWS::MPA resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_MPA.html) directly.
26
+
27
+ <!--BEGIN CFNONLY DISCLAIMER-->
28
+
29
+ There are no hand-written ([L2](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib)) constructs for this service yet.
30
+ However, you can still use the automatically generated [L1](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_l1_using) constructs, and use this service exactly as you would using CloudFormation directly.
31
+
32
+ For more information on the resources and properties available for this service, see the [CloudFormation documentation for AWS::MPA](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_MPA.html).
33
+
34
+ (Read the [CDK Contributing Guide](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and submit an RFC if you are interested in contributing to this construct library.)
35
+
36
+ <!--END CFNONLY DISCLAIMER-->
37
+ '''
38
+ from pkgutil import extend_path
39
+ __path__ = extend_path(__path__, __name__)
40
+
41
+ import abc
42
+ import builtins
43
+ import datetime
44
+ import enum
45
+ import typing
46
+
47
+ import jsii
48
+ import publication
49
+ import typing_extensions
50
+
51
+ import typeguard
52
+ from importlib.metadata import version as _metadata_package_version
53
+ TYPEGUARD_MAJOR_VERSION = int(_metadata_package_version('typeguard').split('.')[0])
54
+
55
+ def check_type(argname: str, value: object, expected_type: typing.Any) -> typing.Any:
56
+ if TYPEGUARD_MAJOR_VERSION <= 2:
57
+ return typeguard.check_type(argname=argname, value=value, expected_type=expected_type) # type:ignore
58
+ else:
59
+ if isinstance(value, jsii._reference_map.InterfaceDynamicProxy): # pyright: ignore [reportAttributeAccessIssue]
60
+ pass
61
+ else:
62
+ if TYPEGUARD_MAJOR_VERSION == 3:
63
+ typeguard.config.collection_check_strategy = typeguard.CollectionCheckStrategy.ALL_ITEMS # type:ignore
64
+ typeguard.check_type(value=value, expected_type=expected_type) # type:ignore
65
+ else:
66
+ typeguard.check_type(value=value, expected_type=expected_type, collection_check_strategy=typeguard.CollectionCheckStrategy.ALL_ITEMS) # type:ignore
67
+
68
+ from .._jsii import *
69
+
70
+ import constructs as _constructs_77d1e7e8
71
+ from .. import (
72
+ CfnResource as _CfnResource_9df397a6,
73
+ CfnTag as _CfnTag_f6864754,
74
+ IInspectable as _IInspectable_c2943556,
75
+ IResolvable as _IResolvable_da3f097b,
76
+ ITaggableV2 as _ITaggableV2_4e6798f8,
77
+ TagManager as _TagManager_0a598cb3,
78
+ TreeInspector as _TreeInspector_488e0dd5,
79
+ )
80
+
81
+
82
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
83
+ class CfnApprovalTeam(
84
+ _CfnResource_9df397a6,
85
+ metaclass=jsii.JSIIMeta,
86
+ jsii_type="aws-cdk-lib.aws_mpa.CfnApprovalTeam",
87
+ ):
88
+ '''Creates a new approval team.
89
+
90
+ For more information, see `Approval team <https://docs.aws.amazon.com/mpa/latest/userguide/mpa-concepts.html>`_ in the *Multi-party approval User Guide* .
91
+
92
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-approvalteam.html
93
+ :cloudformationResource: AWS::MPA::ApprovalTeam
94
+ :exampleMetadata: fixture=_generated
95
+
96
+ Example::
97
+
98
+ # The code below shows an example of how to instantiate this type.
99
+ # The values are placeholders you should change.
100
+ from aws_cdk import aws_mpa as mpa
101
+
102
+ cfn_approval_team = mpa.CfnApprovalTeam(self, "MyCfnApprovalTeam",
103
+ approval_strategy=mpa.CfnApprovalTeam.ApprovalStrategyProperty(
104
+ mof_n=mpa.CfnApprovalTeam.MofNApprovalStrategyProperty(
105
+ min_approvals_required=123
106
+ )
107
+ ),
108
+ approvers=[mpa.CfnApprovalTeam.ApproverProperty(
109
+ primary_identity_id="primaryIdentityId",
110
+ primary_identity_source_arn="primaryIdentitySourceArn",
111
+
112
+ # the properties below are optional
113
+ approver_id="approverId",
114
+ primary_identity_status="primaryIdentityStatus",
115
+ response_time="responseTime"
116
+ )],
117
+ description="description",
118
+ name="name",
119
+ policies=[mpa.CfnApprovalTeam.PolicyProperty(
120
+ policy_arn="policyArn"
121
+ )],
122
+
123
+ # the properties below are optional
124
+ tags=[CfnTag(
125
+ key="key",
126
+ value="value"
127
+ )]
128
+ )
129
+ '''
130
+
131
+ def __init__(
132
+ self,
133
+ scope: _constructs_77d1e7e8.Construct,
134
+ id: builtins.str,
135
+ *,
136
+ approval_strategy: typing.Union[_IResolvable_da3f097b, typing.Union["CfnApprovalTeam.ApprovalStrategyProperty", typing.Dict[builtins.str, typing.Any]]],
137
+ approvers: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnApprovalTeam.ApproverProperty", typing.Dict[builtins.str, typing.Any]]]]],
138
+ description: builtins.str,
139
+ name: builtins.str,
140
+ policies: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnApprovalTeam.PolicyProperty", typing.Dict[builtins.str, typing.Any]]]]],
141
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
142
+ ) -> None:
143
+ '''
144
+ :param scope: Scope in which this resource is defined.
145
+ :param id: Construct identifier for this resource (unique in its scope).
146
+ :param approval_strategy: Contains details for how an approval team grants approval.
147
+ :param approvers: Contains details for an approver.
148
+ :param description: Description for the team.
149
+ :param name: Name of the team.
150
+ :param policies: Contains details for a policy. Policies define what operations a team that define the permissions for team resources.
151
+ :param tags: Tags that you have added to the specified resource.
152
+ '''
153
+ if __debug__:
154
+ type_hints = typing.get_type_hints(_typecheckingstub__386990d7f44b867156b4ae1be61f59dcf68b732d47a10262382c529e91f18365)
155
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
156
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
157
+ props = CfnApprovalTeamProps(
158
+ approval_strategy=approval_strategy,
159
+ approvers=approvers,
160
+ description=description,
161
+ name=name,
162
+ policies=policies,
163
+ tags=tags,
164
+ )
165
+
166
+ jsii.create(self.__class__, self, [scope, id, props])
167
+
168
+ @jsii.member(jsii_name="inspect")
169
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
170
+ '''Examines the CloudFormation resource and discloses attributes.
171
+
172
+ :param inspector: tree inspector to collect and process attributes.
173
+ '''
174
+ if __debug__:
175
+ type_hints = typing.get_type_hints(_typecheckingstub__dba069c00d1a308983f1858c860837ee043b1a2f961d8a9723e5b6ab33cc7f30)
176
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
177
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
178
+
179
+ @jsii.member(jsii_name="renderProperties")
180
+ def _render_properties(
181
+ self,
182
+ props: typing.Mapping[builtins.str, typing.Any],
183
+ ) -> typing.Mapping[builtins.str, typing.Any]:
184
+ '''
185
+ :param props: -
186
+ '''
187
+ if __debug__:
188
+ type_hints = typing.get_type_hints(_typecheckingstub__75ba9035ba86d7cbf51b44474da24ea7dc3325fb3d54c692b9f7bd885fa89138)
189
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
190
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
191
+
192
+ @jsii.python.classproperty
193
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
194
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
195
+ '''The CloudFormation resource type name for this resource class.'''
196
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
197
+
198
+ @builtins.property
199
+ @jsii.member(jsii_name="attrArn")
200
+ def attr_arn(self) -> builtins.str:
201
+ '''Amazon Resource Name (ARN) for the team.
202
+
203
+ :cloudformationAttribute: Arn
204
+ '''
205
+ return typing.cast(builtins.str, jsii.get(self, "attrArn"))
206
+
207
+ @builtins.property
208
+ @jsii.member(jsii_name="attrCreationTime")
209
+ def attr_creation_time(self) -> builtins.str:
210
+ '''Timestamp when the team was created.
211
+
212
+ :cloudformationAttribute: CreationTime
213
+ '''
214
+ return typing.cast(builtins.str, jsii.get(self, "attrCreationTime"))
215
+
216
+ @builtins.property
217
+ @jsii.member(jsii_name="attrLastUpdateTime")
218
+ def attr_last_update_time(self) -> builtins.str:
219
+ '''Timestamp when the team was last updated.
220
+
221
+ :cloudformationAttribute: LastUpdateTime
222
+ '''
223
+ return typing.cast(builtins.str, jsii.get(self, "attrLastUpdateTime"))
224
+
225
+ @builtins.property
226
+ @jsii.member(jsii_name="attrNumberOfApprovers")
227
+ def attr_number_of_approvers(self) -> jsii.Number:
228
+ '''Total number of approvers in the team.
229
+
230
+ :cloudformationAttribute: NumberOfApprovers
231
+ '''
232
+ return typing.cast(jsii.Number, jsii.get(self, "attrNumberOfApprovers"))
233
+
234
+ @builtins.property
235
+ @jsii.member(jsii_name="attrStatus")
236
+ def attr_status(self) -> builtins.str:
237
+ '''Status for the team.
238
+
239
+ For more information, see `Team health <https://docs.aws.amazon.com/mpa/latest/userguide/mpa-health.html>`_ in the *Multi-party approval User Guide* .
240
+
241
+ :cloudformationAttribute: Status
242
+ '''
243
+ return typing.cast(builtins.str, jsii.get(self, "attrStatus"))
244
+
245
+ @builtins.property
246
+ @jsii.member(jsii_name="attrStatusCode")
247
+ def attr_status_code(self) -> builtins.str:
248
+ '''Status code for the team.
249
+
250
+ For more information, see `Team health <https://docs.aws.amazon.com/mpa/latest/userguide/mpa-health.html>`_ in the *Multi-party approval User Guide* .
251
+
252
+ :cloudformationAttribute: StatusCode
253
+ '''
254
+ return typing.cast(builtins.str, jsii.get(self, "attrStatusCode"))
255
+
256
+ @builtins.property
257
+ @jsii.member(jsii_name="attrStatusMessage")
258
+ def attr_status_message(self) -> builtins.str:
259
+ '''Message describing the status for the team.
260
+
261
+ :cloudformationAttribute: StatusMessage
262
+ '''
263
+ return typing.cast(builtins.str, jsii.get(self, "attrStatusMessage"))
264
+
265
+ @builtins.property
266
+ @jsii.member(jsii_name="attrUpdateSessionArn")
267
+ def attr_update_session_arn(self) -> builtins.str:
268
+ '''Timestamp when the team was last updated.
269
+
270
+ :cloudformationAttribute: UpdateSessionArn
271
+ '''
272
+ return typing.cast(builtins.str, jsii.get(self, "attrUpdateSessionArn"))
273
+
274
+ @builtins.property
275
+ @jsii.member(jsii_name="attrVersionId")
276
+ def attr_version_id(self) -> builtins.str:
277
+ '''Version ID for the team.
278
+
279
+ :cloudformationAttribute: VersionId
280
+ '''
281
+ return typing.cast(builtins.str, jsii.get(self, "attrVersionId"))
282
+
283
+ @builtins.property
284
+ @jsii.member(jsii_name="cdkTagManager")
285
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
286
+ '''Tag Manager which manages the tags for this resource.'''
287
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
288
+
289
+ @builtins.property
290
+ @jsii.member(jsii_name="cfnProperties")
291
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
292
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
293
+
294
+ @builtins.property
295
+ @jsii.member(jsii_name="approvalStrategy")
296
+ def approval_strategy(
297
+ self,
298
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnApprovalTeam.ApprovalStrategyProperty"]:
299
+ '''Contains details for how an approval team grants approval.'''
300
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnApprovalTeam.ApprovalStrategyProperty"], jsii.get(self, "approvalStrategy"))
301
+
302
+ @approval_strategy.setter
303
+ def approval_strategy(
304
+ self,
305
+ value: typing.Union[_IResolvable_da3f097b, "CfnApprovalTeam.ApprovalStrategyProperty"],
306
+ ) -> None:
307
+ if __debug__:
308
+ type_hints = typing.get_type_hints(_typecheckingstub__4ec22b692d714a3a436a85095d2cb14c5395173e9390a7d17279d7b92a0e5186)
309
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
310
+ jsii.set(self, "approvalStrategy", value) # pyright: ignore[reportArgumentType]
311
+
312
+ @builtins.property
313
+ @jsii.member(jsii_name="approvers")
314
+ def approvers(
315
+ self,
316
+ ) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnApprovalTeam.ApproverProperty"]]]:
317
+ '''Contains details for an approver.'''
318
+ return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnApprovalTeam.ApproverProperty"]]], jsii.get(self, "approvers"))
319
+
320
+ @approvers.setter
321
+ def approvers(
322
+ self,
323
+ value: typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnApprovalTeam.ApproverProperty"]]],
324
+ ) -> None:
325
+ if __debug__:
326
+ type_hints = typing.get_type_hints(_typecheckingstub__f0eaf16236f7ec9b60a4b70a3f4b6ec8d4c38b2a19b3bcfd2b71bc112aa84697)
327
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
328
+ jsii.set(self, "approvers", value) # pyright: ignore[reportArgumentType]
329
+
330
+ @builtins.property
331
+ @jsii.member(jsii_name="description")
332
+ def description(self) -> builtins.str:
333
+ '''Description for the team.'''
334
+ return typing.cast(builtins.str, jsii.get(self, "description"))
335
+
336
+ @description.setter
337
+ def description(self, value: builtins.str) -> None:
338
+ if __debug__:
339
+ type_hints = typing.get_type_hints(_typecheckingstub__5329ac4998f7b59d7d1e54592bf7342bbee963874c6616e24205a5f906bb7c8a)
340
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
341
+ jsii.set(self, "description", value) # pyright: ignore[reportArgumentType]
342
+
343
+ @builtins.property
344
+ @jsii.member(jsii_name="name")
345
+ def name(self) -> builtins.str:
346
+ '''Name of the team.'''
347
+ return typing.cast(builtins.str, jsii.get(self, "name"))
348
+
349
+ @name.setter
350
+ def name(self, value: builtins.str) -> None:
351
+ if __debug__:
352
+ type_hints = typing.get_type_hints(_typecheckingstub__e39f33a9d3b76bbe323d54d7d73234df05c9a544c11e71f2803cfa2ba185bfde)
353
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
354
+ jsii.set(self, "name", value) # pyright: ignore[reportArgumentType]
355
+
356
+ @builtins.property
357
+ @jsii.member(jsii_name="policies")
358
+ def policies(
359
+ self,
360
+ ) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnApprovalTeam.PolicyProperty"]]]:
361
+ '''Contains details for a policy.'''
362
+ return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnApprovalTeam.PolicyProperty"]]], jsii.get(self, "policies"))
363
+
364
+ @policies.setter
365
+ def policies(
366
+ self,
367
+ value: typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnApprovalTeam.PolicyProperty"]]],
368
+ ) -> None:
369
+ if __debug__:
370
+ type_hints = typing.get_type_hints(_typecheckingstub__d3a7c415cd8a7816dfb413751381ef0ef0d82b8795bc1c9d3776bc7988dc32fe)
371
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
372
+ jsii.set(self, "policies", value) # pyright: ignore[reportArgumentType]
373
+
374
+ @builtins.property
375
+ @jsii.member(jsii_name="tags")
376
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
377
+ '''Tags that you have added to the specified resource.'''
378
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
379
+
380
+ @tags.setter
381
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
382
+ if __debug__:
383
+ type_hints = typing.get_type_hints(_typecheckingstub__d31b1fab5555e70c4496aadbffef5ef28d65db31b88ab4e99ebb5030f3b22bad)
384
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
385
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
386
+
387
+ @jsii.data_type(
388
+ jsii_type="aws-cdk-lib.aws_mpa.CfnApprovalTeam.ApprovalStrategyProperty",
389
+ jsii_struct_bases=[],
390
+ name_mapping={"mof_n": "mofN"},
391
+ )
392
+ class ApprovalStrategyProperty:
393
+ def __init__(
394
+ self,
395
+ *,
396
+ mof_n: typing.Union[_IResolvable_da3f097b, typing.Union["CfnApprovalTeam.MofNApprovalStrategyProperty", typing.Dict[builtins.str, typing.Any]]],
397
+ ) -> None:
398
+ '''Strategy for how an approval team grants approval.
399
+
400
+ :param mof_n: Minimum number of approvals (M) required for a total number of approvers (N).
401
+
402
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-approvalteam-approvalstrategy.html
403
+ :exampleMetadata: fixture=_generated
404
+
405
+ Example::
406
+
407
+ # The code below shows an example of how to instantiate this type.
408
+ # The values are placeholders you should change.
409
+ from aws_cdk import aws_mpa as mpa
410
+
411
+ approval_strategy_property = mpa.CfnApprovalTeam.ApprovalStrategyProperty(
412
+ mof_n=mpa.CfnApprovalTeam.MofNApprovalStrategyProperty(
413
+ min_approvals_required=123
414
+ )
415
+ )
416
+ '''
417
+ if __debug__:
418
+ type_hints = typing.get_type_hints(_typecheckingstub__cace1306ec287bf286eedec7b306e0183888aef06e1e0a1d74cc4532b3ae145b)
419
+ check_type(argname="argument mof_n", value=mof_n, expected_type=type_hints["mof_n"])
420
+ self._values: typing.Dict[builtins.str, typing.Any] = {
421
+ "mof_n": mof_n,
422
+ }
423
+
424
+ @builtins.property
425
+ def mof_n(
426
+ self,
427
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnApprovalTeam.MofNApprovalStrategyProperty"]:
428
+ '''Minimum number of approvals (M) required for a total number of approvers (N).
429
+
430
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-approvalteam-approvalstrategy.html#cfn-mpa-approvalteam-approvalstrategy-mofn
431
+ '''
432
+ result = self._values.get("mof_n")
433
+ assert result is not None, "Required property 'mof_n' is missing"
434
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnApprovalTeam.MofNApprovalStrategyProperty"], result)
435
+
436
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
437
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
438
+
439
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
440
+ return not (rhs == self)
441
+
442
+ def __repr__(self) -> str:
443
+ return "ApprovalStrategyProperty(%s)" % ", ".join(
444
+ k + "=" + repr(v) for k, v in self._values.items()
445
+ )
446
+
447
+ @jsii.data_type(
448
+ jsii_type="aws-cdk-lib.aws_mpa.CfnApprovalTeam.ApproverProperty",
449
+ jsii_struct_bases=[],
450
+ name_mapping={
451
+ "primary_identity_id": "primaryIdentityId",
452
+ "primary_identity_source_arn": "primaryIdentitySourceArn",
453
+ "approver_id": "approverId",
454
+ "primary_identity_status": "primaryIdentityStatus",
455
+ "response_time": "responseTime",
456
+ },
457
+ )
458
+ class ApproverProperty:
459
+ def __init__(
460
+ self,
461
+ *,
462
+ primary_identity_id: builtins.str,
463
+ primary_identity_source_arn: builtins.str,
464
+ approver_id: typing.Optional[builtins.str] = None,
465
+ primary_identity_status: typing.Optional[builtins.str] = None,
466
+ response_time: typing.Optional[builtins.str] = None,
467
+ ) -> None:
468
+ '''Contains details for an approver.
469
+
470
+ :param primary_identity_id: ID for the user.
471
+ :param primary_identity_source_arn: Amazon Resource Name (ARN) for the identity source. The identity source manages the user authentication for approvers.
472
+ :param approver_id: ID for the approver.
473
+ :param primary_identity_status: Status for the identity source. For example, if an approver has accepted a team invitation with a user authentication method managed by the identity source.
474
+ :param response_time: Timestamp when the approver responded to an approval team invitation.
475
+
476
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-approvalteam-approver.html
477
+ :exampleMetadata: fixture=_generated
478
+
479
+ Example::
480
+
481
+ # The code below shows an example of how to instantiate this type.
482
+ # The values are placeholders you should change.
483
+ from aws_cdk import aws_mpa as mpa
484
+
485
+ approver_property = mpa.CfnApprovalTeam.ApproverProperty(
486
+ primary_identity_id="primaryIdentityId",
487
+ primary_identity_source_arn="primaryIdentitySourceArn",
488
+
489
+ # the properties below are optional
490
+ approver_id="approverId",
491
+ primary_identity_status="primaryIdentityStatus",
492
+ response_time="responseTime"
493
+ )
494
+ '''
495
+ if __debug__:
496
+ type_hints = typing.get_type_hints(_typecheckingstub__36558bdfdc85f3fc5feb84a058bedb6b2533db65993cd67119e308af416d59bd)
497
+ check_type(argname="argument primary_identity_id", value=primary_identity_id, expected_type=type_hints["primary_identity_id"])
498
+ check_type(argname="argument primary_identity_source_arn", value=primary_identity_source_arn, expected_type=type_hints["primary_identity_source_arn"])
499
+ check_type(argname="argument approver_id", value=approver_id, expected_type=type_hints["approver_id"])
500
+ check_type(argname="argument primary_identity_status", value=primary_identity_status, expected_type=type_hints["primary_identity_status"])
501
+ check_type(argname="argument response_time", value=response_time, expected_type=type_hints["response_time"])
502
+ self._values: typing.Dict[builtins.str, typing.Any] = {
503
+ "primary_identity_id": primary_identity_id,
504
+ "primary_identity_source_arn": primary_identity_source_arn,
505
+ }
506
+ if approver_id is not None:
507
+ self._values["approver_id"] = approver_id
508
+ if primary_identity_status is not None:
509
+ self._values["primary_identity_status"] = primary_identity_status
510
+ if response_time is not None:
511
+ self._values["response_time"] = response_time
512
+
513
+ @builtins.property
514
+ def primary_identity_id(self) -> builtins.str:
515
+ '''ID for the user.
516
+
517
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-approvalteam-approver.html#cfn-mpa-approvalteam-approver-primaryidentityid
518
+ '''
519
+ result = self._values.get("primary_identity_id")
520
+ assert result is not None, "Required property 'primary_identity_id' is missing"
521
+ return typing.cast(builtins.str, result)
522
+
523
+ @builtins.property
524
+ def primary_identity_source_arn(self) -> builtins.str:
525
+ '''Amazon Resource Name (ARN) for the identity source.
526
+
527
+ The identity source manages the user authentication for approvers.
528
+
529
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-approvalteam-approver.html#cfn-mpa-approvalteam-approver-primaryidentitysourcearn
530
+ '''
531
+ result = self._values.get("primary_identity_source_arn")
532
+ assert result is not None, "Required property 'primary_identity_source_arn' is missing"
533
+ return typing.cast(builtins.str, result)
534
+
535
+ @builtins.property
536
+ def approver_id(self) -> typing.Optional[builtins.str]:
537
+ '''ID for the approver.
538
+
539
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-approvalteam-approver.html#cfn-mpa-approvalteam-approver-approverid
540
+ '''
541
+ result = self._values.get("approver_id")
542
+ return typing.cast(typing.Optional[builtins.str], result)
543
+
544
+ @builtins.property
545
+ def primary_identity_status(self) -> typing.Optional[builtins.str]:
546
+ '''Status for the identity source.
547
+
548
+ For example, if an approver has accepted a team invitation with a user authentication method managed by the identity source.
549
+
550
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-approvalteam-approver.html#cfn-mpa-approvalteam-approver-primaryidentitystatus
551
+ '''
552
+ result = self._values.get("primary_identity_status")
553
+ return typing.cast(typing.Optional[builtins.str], result)
554
+
555
+ @builtins.property
556
+ def response_time(self) -> typing.Optional[builtins.str]:
557
+ '''Timestamp when the approver responded to an approval team invitation.
558
+
559
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-approvalteam-approver.html#cfn-mpa-approvalteam-approver-responsetime
560
+ '''
561
+ result = self._values.get("response_time")
562
+ return typing.cast(typing.Optional[builtins.str], result)
563
+
564
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
565
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
566
+
567
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
568
+ return not (rhs == self)
569
+
570
+ def __repr__(self) -> str:
571
+ return "ApproverProperty(%s)" % ", ".join(
572
+ k + "=" + repr(v) for k, v in self._values.items()
573
+ )
574
+
575
+ @jsii.data_type(
576
+ jsii_type="aws-cdk-lib.aws_mpa.CfnApprovalTeam.MofNApprovalStrategyProperty",
577
+ jsii_struct_bases=[],
578
+ name_mapping={"min_approvals_required": "minApprovalsRequired"},
579
+ )
580
+ class MofNApprovalStrategyProperty:
581
+ def __init__(self, *, min_approvals_required: jsii.Number) -> None:
582
+ '''Strategy for how an approval team grants approval.
583
+
584
+ :param min_approvals_required: Minimum number of approvals (M) required for a total number of approvers (N).
585
+
586
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-approvalteam-mofnapprovalstrategy.html
587
+ :exampleMetadata: fixture=_generated
588
+
589
+ Example::
590
+
591
+ # The code below shows an example of how to instantiate this type.
592
+ # The values are placeholders you should change.
593
+ from aws_cdk import aws_mpa as mpa
594
+
595
+ mof_nApproval_strategy_property = mpa.CfnApprovalTeam.MofNApprovalStrategyProperty(
596
+ min_approvals_required=123
597
+ )
598
+ '''
599
+ if __debug__:
600
+ type_hints = typing.get_type_hints(_typecheckingstub__c9128fe21a2ecc0edffaa444518ee4e665f9c001202934e3a6ce10274d631042)
601
+ check_type(argname="argument min_approvals_required", value=min_approvals_required, expected_type=type_hints["min_approvals_required"])
602
+ self._values: typing.Dict[builtins.str, typing.Any] = {
603
+ "min_approvals_required": min_approvals_required,
604
+ }
605
+
606
+ @builtins.property
607
+ def min_approvals_required(self) -> jsii.Number:
608
+ '''Minimum number of approvals (M) required for a total number of approvers (N).
609
+
610
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-approvalteam-mofnapprovalstrategy.html#cfn-mpa-approvalteam-mofnapprovalstrategy-minapprovalsrequired
611
+ '''
612
+ result = self._values.get("min_approvals_required")
613
+ assert result is not None, "Required property 'min_approvals_required' is missing"
614
+ return typing.cast(jsii.Number, result)
615
+
616
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
617
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
618
+
619
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
620
+ return not (rhs == self)
621
+
622
+ def __repr__(self) -> str:
623
+ return "MofNApprovalStrategyProperty(%s)" % ", ".join(
624
+ k + "=" + repr(v) for k, v in self._values.items()
625
+ )
626
+
627
+ @jsii.data_type(
628
+ jsii_type="aws-cdk-lib.aws_mpa.CfnApprovalTeam.PolicyProperty",
629
+ jsii_struct_bases=[],
630
+ name_mapping={"policy_arn": "policyArn"},
631
+ )
632
+ class PolicyProperty:
633
+ def __init__(self, *, policy_arn: builtins.str) -> None:
634
+ '''Contains details for a policy.
635
+
636
+ Policies define what operations a team that define the permissions for team resources.
637
+
638
+ :param policy_arn:
639
+
640
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-approvalteam-policy.html
641
+ :exampleMetadata: fixture=_generated
642
+
643
+ Example::
644
+
645
+ # The code below shows an example of how to instantiate this type.
646
+ # The values are placeholders you should change.
647
+ from aws_cdk import aws_mpa as mpa
648
+
649
+ policy_property = mpa.CfnApprovalTeam.PolicyProperty(
650
+ policy_arn="policyArn"
651
+ )
652
+ '''
653
+ if __debug__:
654
+ type_hints = typing.get_type_hints(_typecheckingstub__75ccc78545af23823b4f234ee8de6d1d0e7b956206086f97f9aa04f82d00b6f1)
655
+ check_type(argname="argument policy_arn", value=policy_arn, expected_type=type_hints["policy_arn"])
656
+ self._values: typing.Dict[builtins.str, typing.Any] = {
657
+ "policy_arn": policy_arn,
658
+ }
659
+
660
+ @builtins.property
661
+ def policy_arn(self) -> builtins.str:
662
+ '''
663
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-approvalteam-policy.html#cfn-mpa-approvalteam-policy-policyarn
664
+ '''
665
+ result = self._values.get("policy_arn")
666
+ assert result is not None, "Required property 'policy_arn' is missing"
667
+ return typing.cast(builtins.str, result)
668
+
669
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
670
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
671
+
672
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
673
+ return not (rhs == self)
674
+
675
+ def __repr__(self) -> str:
676
+ return "PolicyProperty(%s)" % ", ".join(
677
+ k + "=" + repr(v) for k, v in self._values.items()
678
+ )
679
+
680
+
681
+ @jsii.data_type(
682
+ jsii_type="aws-cdk-lib.aws_mpa.CfnApprovalTeamProps",
683
+ jsii_struct_bases=[],
684
+ name_mapping={
685
+ "approval_strategy": "approvalStrategy",
686
+ "approvers": "approvers",
687
+ "description": "description",
688
+ "name": "name",
689
+ "policies": "policies",
690
+ "tags": "tags",
691
+ },
692
+ )
693
+ class CfnApprovalTeamProps:
694
+ def __init__(
695
+ self,
696
+ *,
697
+ approval_strategy: typing.Union[_IResolvable_da3f097b, typing.Union[CfnApprovalTeam.ApprovalStrategyProperty, typing.Dict[builtins.str, typing.Any]]],
698
+ approvers: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnApprovalTeam.ApproverProperty, typing.Dict[builtins.str, typing.Any]]]]],
699
+ description: builtins.str,
700
+ name: builtins.str,
701
+ policies: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnApprovalTeam.PolicyProperty, typing.Dict[builtins.str, typing.Any]]]]],
702
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
703
+ ) -> None:
704
+ '''Properties for defining a ``CfnApprovalTeam``.
705
+
706
+ :param approval_strategy: Contains details for how an approval team grants approval.
707
+ :param approvers: Contains details for an approver.
708
+ :param description: Description for the team.
709
+ :param name: Name of the team.
710
+ :param policies: Contains details for a policy. Policies define what operations a team that define the permissions for team resources.
711
+ :param tags: Tags that you have added to the specified resource.
712
+
713
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-approvalteam.html
714
+ :exampleMetadata: fixture=_generated
715
+
716
+ Example::
717
+
718
+ # The code below shows an example of how to instantiate this type.
719
+ # The values are placeholders you should change.
720
+ from aws_cdk import aws_mpa as mpa
721
+
722
+ cfn_approval_team_props = mpa.CfnApprovalTeamProps(
723
+ approval_strategy=mpa.CfnApprovalTeam.ApprovalStrategyProperty(
724
+ mof_n=mpa.CfnApprovalTeam.MofNApprovalStrategyProperty(
725
+ min_approvals_required=123
726
+ )
727
+ ),
728
+ approvers=[mpa.CfnApprovalTeam.ApproverProperty(
729
+ primary_identity_id="primaryIdentityId",
730
+ primary_identity_source_arn="primaryIdentitySourceArn",
731
+
732
+ # the properties below are optional
733
+ approver_id="approverId",
734
+ primary_identity_status="primaryIdentityStatus",
735
+ response_time="responseTime"
736
+ )],
737
+ description="description",
738
+ name="name",
739
+ policies=[mpa.CfnApprovalTeam.PolicyProperty(
740
+ policy_arn="policyArn"
741
+ )],
742
+
743
+ # the properties below are optional
744
+ tags=[CfnTag(
745
+ key="key",
746
+ value="value"
747
+ )]
748
+ )
749
+ '''
750
+ if __debug__:
751
+ type_hints = typing.get_type_hints(_typecheckingstub__23c8b69a9c24f10b33222467e81cbea79a3fbb6feb302fe9dea7e9fc448dae98)
752
+ check_type(argname="argument approval_strategy", value=approval_strategy, expected_type=type_hints["approval_strategy"])
753
+ check_type(argname="argument approvers", value=approvers, expected_type=type_hints["approvers"])
754
+ check_type(argname="argument description", value=description, expected_type=type_hints["description"])
755
+ check_type(argname="argument name", value=name, expected_type=type_hints["name"])
756
+ check_type(argname="argument policies", value=policies, expected_type=type_hints["policies"])
757
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
758
+ self._values: typing.Dict[builtins.str, typing.Any] = {
759
+ "approval_strategy": approval_strategy,
760
+ "approvers": approvers,
761
+ "description": description,
762
+ "name": name,
763
+ "policies": policies,
764
+ }
765
+ if tags is not None:
766
+ self._values["tags"] = tags
767
+
768
+ @builtins.property
769
+ def approval_strategy(
770
+ self,
771
+ ) -> typing.Union[_IResolvable_da3f097b, CfnApprovalTeam.ApprovalStrategyProperty]:
772
+ '''Contains details for how an approval team grants approval.
773
+
774
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-approvalteam.html#cfn-mpa-approvalteam-approvalstrategy
775
+ '''
776
+ result = self._values.get("approval_strategy")
777
+ assert result is not None, "Required property 'approval_strategy' is missing"
778
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnApprovalTeam.ApprovalStrategyProperty], result)
779
+
780
+ @builtins.property
781
+ def approvers(
782
+ self,
783
+ ) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnApprovalTeam.ApproverProperty]]]:
784
+ '''Contains details for an approver.
785
+
786
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-approvalteam.html#cfn-mpa-approvalteam-approvers
787
+ '''
788
+ result = self._values.get("approvers")
789
+ assert result is not None, "Required property 'approvers' is missing"
790
+ return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnApprovalTeam.ApproverProperty]]], result)
791
+
792
+ @builtins.property
793
+ def description(self) -> builtins.str:
794
+ '''Description for the team.
795
+
796
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-approvalteam.html#cfn-mpa-approvalteam-description
797
+ '''
798
+ result = self._values.get("description")
799
+ assert result is not None, "Required property 'description' is missing"
800
+ return typing.cast(builtins.str, result)
801
+
802
+ @builtins.property
803
+ def name(self) -> builtins.str:
804
+ '''Name of the team.
805
+
806
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-approvalteam.html#cfn-mpa-approvalteam-name
807
+ '''
808
+ result = self._values.get("name")
809
+ assert result is not None, "Required property 'name' is missing"
810
+ return typing.cast(builtins.str, result)
811
+
812
+ @builtins.property
813
+ def policies(
814
+ self,
815
+ ) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnApprovalTeam.PolicyProperty]]]:
816
+ '''Contains details for a policy.
817
+
818
+ Policies define what operations a team that define the permissions for team resources.
819
+
820
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-approvalteam.html#cfn-mpa-approvalteam-policies
821
+ '''
822
+ result = self._values.get("policies")
823
+ assert result is not None, "Required property 'policies' is missing"
824
+ return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnApprovalTeam.PolicyProperty]]], result)
825
+
826
+ @builtins.property
827
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
828
+ '''Tags that you have added to the specified resource.
829
+
830
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-approvalteam.html#cfn-mpa-approvalteam-tags
831
+ '''
832
+ result = self._values.get("tags")
833
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
834
+
835
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
836
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
837
+
838
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
839
+ return not (rhs == self)
840
+
841
+ def __repr__(self) -> str:
842
+ return "CfnApprovalTeamProps(%s)" % ", ".join(
843
+ k + "=" + repr(v) for k, v in self._values.items()
844
+ )
845
+
846
+
847
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
848
+ class CfnIdentitySource(
849
+ _CfnResource_9df397a6,
850
+ metaclass=jsii.JSIIMeta,
851
+ jsii_type="aws-cdk-lib.aws_mpa.CfnIdentitySource",
852
+ ):
853
+ '''Creates a new identity source.
854
+
855
+ For more information, see `Identity Source <https://docs.aws.amazon.com/mpa/latest/userguide/mpa-concepts.html>`_ in the *Multi-party approval User Guide* .
856
+
857
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-identitysource.html
858
+ :cloudformationResource: AWS::MPA::IdentitySource
859
+ :exampleMetadata: fixture=_generated
860
+
861
+ Example::
862
+
863
+ # The code below shows an example of how to instantiate this type.
864
+ # The values are placeholders you should change.
865
+ from aws_cdk import aws_mpa as mpa
866
+
867
+ cfn_identity_source = mpa.CfnIdentitySource(self, "MyCfnIdentitySource",
868
+ identity_source_parameters=mpa.CfnIdentitySource.IdentitySourceParametersProperty(
869
+ iam_identity_center=mpa.CfnIdentitySource.IamIdentityCenterProperty(
870
+ instance_arn="instanceArn",
871
+ region="region",
872
+
873
+ # the properties below are optional
874
+ approval_portal_url="approvalPortalUrl"
875
+ )
876
+ ),
877
+
878
+ # the properties below are optional
879
+ tags=[CfnTag(
880
+ key="key",
881
+ value="value"
882
+ )]
883
+ )
884
+ '''
885
+
886
+ def __init__(
887
+ self,
888
+ scope: _constructs_77d1e7e8.Construct,
889
+ id: builtins.str,
890
+ *,
891
+ identity_source_parameters: typing.Union[_IResolvable_da3f097b, typing.Union["CfnIdentitySource.IdentitySourceParametersProperty", typing.Dict[builtins.str, typing.Any]]],
892
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
893
+ ) -> None:
894
+ '''
895
+ :param scope: Scope in which this resource is defined.
896
+ :param id: Construct identifier for this resource (unique in its scope).
897
+ :param identity_source_parameters: A ``IdentitySourceParameters`` object. Contains details for the resource that provides identities to the identity source. For example, an IAM Identity Center instance.
898
+ :param tags: Tags that you have added to the specified resource.
899
+ '''
900
+ if __debug__:
901
+ type_hints = typing.get_type_hints(_typecheckingstub__4ccadabc10958f9b34637bf63683a7ae402b738916eaae8b4554005edd9a7f4e)
902
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
903
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
904
+ props = CfnIdentitySourceProps(
905
+ identity_source_parameters=identity_source_parameters, tags=tags
906
+ )
907
+
908
+ jsii.create(self.__class__, self, [scope, id, props])
909
+
910
+ @jsii.member(jsii_name="inspect")
911
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
912
+ '''Examines the CloudFormation resource and discloses attributes.
913
+
914
+ :param inspector: tree inspector to collect and process attributes.
915
+ '''
916
+ if __debug__:
917
+ type_hints = typing.get_type_hints(_typecheckingstub__958a95f31b67e8f309896314f9522aadfa2c69a0264848ce97b3ad043e59f942)
918
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
919
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
920
+
921
+ @jsii.member(jsii_name="renderProperties")
922
+ def _render_properties(
923
+ self,
924
+ props: typing.Mapping[builtins.str, typing.Any],
925
+ ) -> typing.Mapping[builtins.str, typing.Any]:
926
+ '''
927
+ :param props: -
928
+ '''
929
+ if __debug__:
930
+ type_hints = typing.get_type_hints(_typecheckingstub__c387c3be49c9c1559f9200673f4589cb8729c2ec8c7770beb57a1e5e35378256)
931
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
932
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
933
+
934
+ @jsii.python.classproperty
935
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
936
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
937
+ '''The CloudFormation resource type name for this resource class.'''
938
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
939
+
940
+ @builtins.property
941
+ @jsii.member(jsii_name="attrCreationTime")
942
+ def attr_creation_time(self) -> builtins.str:
943
+ '''Timestamp when the identity source was created.
944
+
945
+ :cloudformationAttribute: CreationTime
946
+ '''
947
+ return typing.cast(builtins.str, jsii.get(self, "attrCreationTime"))
948
+
949
+ @builtins.property
950
+ @jsii.member(jsii_name="attrIdentitySourceArn")
951
+ def attr_identity_source_arn(self) -> builtins.str:
952
+ '''Amazon Resource Name (ARN) for the identity source.
953
+
954
+ :cloudformationAttribute: IdentitySourceArn
955
+ '''
956
+ return typing.cast(builtins.str, jsii.get(self, "attrIdentitySourceArn"))
957
+
958
+ @builtins.property
959
+ @jsii.member(jsii_name="attrIdentitySourceParametersIamIdentityCenterApprovalPortalUrl")
960
+ def attr_identity_source_parameters_iam_identity_center_approval_portal_url(
961
+ self,
962
+ ) -> builtins.str:
963
+ '''URL for the approval portal associated with the IAM Identity Center instance.
964
+
965
+ :cloudformationAttribute: IdentitySourceParameters.IamIdentityCenter.ApprovalPortalUrl
966
+ '''
967
+ return typing.cast(builtins.str, jsii.get(self, "attrIdentitySourceParametersIamIdentityCenterApprovalPortalUrl"))
968
+
969
+ @builtins.property
970
+ @jsii.member(jsii_name="attrIdentitySourceType")
971
+ def attr_identity_source_type(self) -> builtins.str:
972
+ '''The type of resource that provided identities to the identity source.
973
+
974
+ For example, an IAM Identity Center instance.
975
+
976
+ :cloudformationAttribute: IdentitySourceType
977
+ '''
978
+ return typing.cast(builtins.str, jsii.get(self, "attrIdentitySourceType"))
979
+
980
+ @builtins.property
981
+ @jsii.member(jsii_name="attrStatus")
982
+ def attr_status(self) -> builtins.str:
983
+ '''Status for the identity source.
984
+
985
+ For example, if the identity source is ``ACTIVE`` .
986
+
987
+ :cloudformationAttribute: Status
988
+ '''
989
+ return typing.cast(builtins.str, jsii.get(self, "attrStatus"))
990
+
991
+ @builtins.property
992
+ @jsii.member(jsii_name="attrStatusCode")
993
+ def attr_status_code(self) -> builtins.str:
994
+ '''Status code of the identity source.
995
+
996
+ :cloudformationAttribute: StatusCode
997
+ '''
998
+ return typing.cast(builtins.str, jsii.get(self, "attrStatusCode"))
999
+
1000
+ @builtins.property
1001
+ @jsii.member(jsii_name="attrStatusMessage")
1002
+ def attr_status_message(self) -> builtins.str:
1003
+ '''Message describing the status for the identity source.
1004
+
1005
+ :cloudformationAttribute: StatusMessage
1006
+ '''
1007
+ return typing.cast(builtins.str, jsii.get(self, "attrStatusMessage"))
1008
+
1009
+ @builtins.property
1010
+ @jsii.member(jsii_name="cdkTagManager")
1011
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
1012
+ '''Tag Manager which manages the tags for this resource.'''
1013
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
1014
+
1015
+ @builtins.property
1016
+ @jsii.member(jsii_name="cfnProperties")
1017
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
1018
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
1019
+
1020
+ @builtins.property
1021
+ @jsii.member(jsii_name="identitySourceParameters")
1022
+ def identity_source_parameters(
1023
+ self,
1024
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnIdentitySource.IdentitySourceParametersProperty"]:
1025
+ '''A ``IdentitySourceParameters`` object.'''
1026
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnIdentitySource.IdentitySourceParametersProperty"], jsii.get(self, "identitySourceParameters"))
1027
+
1028
+ @identity_source_parameters.setter
1029
+ def identity_source_parameters(
1030
+ self,
1031
+ value: typing.Union[_IResolvable_da3f097b, "CfnIdentitySource.IdentitySourceParametersProperty"],
1032
+ ) -> None:
1033
+ if __debug__:
1034
+ type_hints = typing.get_type_hints(_typecheckingstub__edf6a9866153061ef7d7e82b292ccb765e9c0faa36bd2f2b5fbe62010c82e44f)
1035
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1036
+ jsii.set(self, "identitySourceParameters", value) # pyright: ignore[reportArgumentType]
1037
+
1038
+ @builtins.property
1039
+ @jsii.member(jsii_name="tags")
1040
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
1041
+ '''Tags that you have added to the specified resource.'''
1042
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
1043
+
1044
+ @tags.setter
1045
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
1046
+ if __debug__:
1047
+ type_hints = typing.get_type_hints(_typecheckingstub__2348313ff968eefe1739ee64d5e35820f3cb200528d000a5072b402def990d94)
1048
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1049
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
1050
+
1051
+ @jsii.data_type(
1052
+ jsii_type="aws-cdk-lib.aws_mpa.CfnIdentitySource.IamIdentityCenterProperty",
1053
+ jsii_struct_bases=[],
1054
+ name_mapping={
1055
+ "instance_arn": "instanceArn",
1056
+ "region": "region",
1057
+ "approval_portal_url": "approvalPortalUrl",
1058
+ },
1059
+ )
1060
+ class IamIdentityCenterProperty:
1061
+ def __init__(
1062
+ self,
1063
+ *,
1064
+ instance_arn: builtins.str,
1065
+ region: builtins.str,
1066
+ approval_portal_url: typing.Optional[builtins.str] = None,
1067
+ ) -> None:
1068
+ '''AWS IAM Identity Center credentials.
1069
+
1070
+ For more information see, `AWS IAM Identity Center <https://docs.aws.amazon.com/identity-center/>`_ .
1071
+
1072
+ :param instance_arn: Amazon Resource Name (ARN) for the IAM Identity Center instance.
1073
+ :param region: AWS Region where the IAM Identity Center instance is located.
1074
+ :param approval_portal_url: URL for the approval portal associated with the IAM Identity Center instance.
1075
+
1076
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-identitysource-iamidentitycenter.html
1077
+ :exampleMetadata: fixture=_generated
1078
+
1079
+ Example::
1080
+
1081
+ # The code below shows an example of how to instantiate this type.
1082
+ # The values are placeholders you should change.
1083
+ from aws_cdk import aws_mpa as mpa
1084
+
1085
+ iam_identity_center_property = mpa.CfnIdentitySource.IamIdentityCenterProperty(
1086
+ instance_arn="instanceArn",
1087
+ region="region",
1088
+
1089
+ # the properties below are optional
1090
+ approval_portal_url="approvalPortalUrl"
1091
+ )
1092
+ '''
1093
+ if __debug__:
1094
+ type_hints = typing.get_type_hints(_typecheckingstub__ad03e7c03292e16adba0239cd21aae5665927b223a3d024fb5b1e7a0e5d618f0)
1095
+ check_type(argname="argument instance_arn", value=instance_arn, expected_type=type_hints["instance_arn"])
1096
+ check_type(argname="argument region", value=region, expected_type=type_hints["region"])
1097
+ check_type(argname="argument approval_portal_url", value=approval_portal_url, expected_type=type_hints["approval_portal_url"])
1098
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1099
+ "instance_arn": instance_arn,
1100
+ "region": region,
1101
+ }
1102
+ if approval_portal_url is not None:
1103
+ self._values["approval_portal_url"] = approval_portal_url
1104
+
1105
+ @builtins.property
1106
+ def instance_arn(self) -> builtins.str:
1107
+ '''Amazon Resource Name (ARN) for the IAM Identity Center instance.
1108
+
1109
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-identitysource-iamidentitycenter.html#cfn-mpa-identitysource-iamidentitycenter-instancearn
1110
+ '''
1111
+ result = self._values.get("instance_arn")
1112
+ assert result is not None, "Required property 'instance_arn' is missing"
1113
+ return typing.cast(builtins.str, result)
1114
+
1115
+ @builtins.property
1116
+ def region(self) -> builtins.str:
1117
+ '''AWS Region where the IAM Identity Center instance is located.
1118
+
1119
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-identitysource-iamidentitycenter.html#cfn-mpa-identitysource-iamidentitycenter-region
1120
+ '''
1121
+ result = self._values.get("region")
1122
+ assert result is not None, "Required property 'region' is missing"
1123
+ return typing.cast(builtins.str, result)
1124
+
1125
+ @builtins.property
1126
+ def approval_portal_url(self) -> typing.Optional[builtins.str]:
1127
+ '''URL for the approval portal associated with the IAM Identity Center instance.
1128
+
1129
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-identitysource-iamidentitycenter.html#cfn-mpa-identitysource-iamidentitycenter-approvalportalurl
1130
+ '''
1131
+ result = self._values.get("approval_portal_url")
1132
+ return typing.cast(typing.Optional[builtins.str], result)
1133
+
1134
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1135
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1136
+
1137
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1138
+ return not (rhs == self)
1139
+
1140
+ def __repr__(self) -> str:
1141
+ return "IamIdentityCenterProperty(%s)" % ", ".join(
1142
+ k + "=" + repr(v) for k, v in self._values.items()
1143
+ )
1144
+
1145
+ @jsii.data_type(
1146
+ jsii_type="aws-cdk-lib.aws_mpa.CfnIdentitySource.IdentitySourceParametersProperty",
1147
+ jsii_struct_bases=[],
1148
+ name_mapping={"iam_identity_center": "iamIdentityCenter"},
1149
+ )
1150
+ class IdentitySourceParametersProperty:
1151
+ def __init__(
1152
+ self,
1153
+ *,
1154
+ iam_identity_center: typing.Union[_IResolvable_da3f097b, typing.Union["CfnIdentitySource.IamIdentityCenterProperty", typing.Dict[builtins.str, typing.Any]]],
1155
+ ) -> None:
1156
+ '''Contains details for the resource that provides identities to the identity source.
1157
+
1158
+ For example, an IAM Identity Center instance.
1159
+
1160
+ :param iam_identity_center: AWS IAM Identity Center credentials.
1161
+
1162
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-identitysource-identitysourceparameters.html
1163
+ :exampleMetadata: fixture=_generated
1164
+
1165
+ Example::
1166
+
1167
+ # The code below shows an example of how to instantiate this type.
1168
+ # The values are placeholders you should change.
1169
+ from aws_cdk import aws_mpa as mpa
1170
+
1171
+ identity_source_parameters_property = mpa.CfnIdentitySource.IdentitySourceParametersProperty(
1172
+ iam_identity_center=mpa.CfnIdentitySource.IamIdentityCenterProperty(
1173
+ instance_arn="instanceArn",
1174
+ region="region",
1175
+
1176
+ # the properties below are optional
1177
+ approval_portal_url="approvalPortalUrl"
1178
+ )
1179
+ )
1180
+ '''
1181
+ if __debug__:
1182
+ type_hints = typing.get_type_hints(_typecheckingstub__cdb131b4f18fdc2f28197cd3ec3c8e53cc57a860dfad6d92280cc24753500fc2)
1183
+ check_type(argname="argument iam_identity_center", value=iam_identity_center, expected_type=type_hints["iam_identity_center"])
1184
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1185
+ "iam_identity_center": iam_identity_center,
1186
+ }
1187
+
1188
+ @builtins.property
1189
+ def iam_identity_center(
1190
+ self,
1191
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnIdentitySource.IamIdentityCenterProperty"]:
1192
+ '''AWS IAM Identity Center credentials.
1193
+
1194
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mpa-identitysource-identitysourceparameters.html#cfn-mpa-identitysource-identitysourceparameters-iamidentitycenter
1195
+ '''
1196
+ result = self._values.get("iam_identity_center")
1197
+ assert result is not None, "Required property 'iam_identity_center' is missing"
1198
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnIdentitySource.IamIdentityCenterProperty"], result)
1199
+
1200
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1201
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1202
+
1203
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1204
+ return not (rhs == self)
1205
+
1206
+ def __repr__(self) -> str:
1207
+ return "IdentitySourceParametersProperty(%s)" % ", ".join(
1208
+ k + "=" + repr(v) for k, v in self._values.items()
1209
+ )
1210
+
1211
+
1212
+ @jsii.data_type(
1213
+ jsii_type="aws-cdk-lib.aws_mpa.CfnIdentitySourceProps",
1214
+ jsii_struct_bases=[],
1215
+ name_mapping={
1216
+ "identity_source_parameters": "identitySourceParameters",
1217
+ "tags": "tags",
1218
+ },
1219
+ )
1220
+ class CfnIdentitySourceProps:
1221
+ def __init__(
1222
+ self,
1223
+ *,
1224
+ identity_source_parameters: typing.Union[_IResolvable_da3f097b, typing.Union[CfnIdentitySource.IdentitySourceParametersProperty, typing.Dict[builtins.str, typing.Any]]],
1225
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1226
+ ) -> None:
1227
+ '''Properties for defining a ``CfnIdentitySource``.
1228
+
1229
+ :param identity_source_parameters: A ``IdentitySourceParameters`` object. Contains details for the resource that provides identities to the identity source. For example, an IAM Identity Center instance.
1230
+ :param tags: Tags that you have added to the specified resource.
1231
+
1232
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-identitysource.html
1233
+ :exampleMetadata: fixture=_generated
1234
+
1235
+ Example::
1236
+
1237
+ # The code below shows an example of how to instantiate this type.
1238
+ # The values are placeholders you should change.
1239
+ from aws_cdk import aws_mpa as mpa
1240
+
1241
+ cfn_identity_source_props = mpa.CfnIdentitySourceProps(
1242
+ identity_source_parameters=mpa.CfnIdentitySource.IdentitySourceParametersProperty(
1243
+ iam_identity_center=mpa.CfnIdentitySource.IamIdentityCenterProperty(
1244
+ instance_arn="instanceArn",
1245
+ region="region",
1246
+
1247
+ # the properties below are optional
1248
+ approval_portal_url="approvalPortalUrl"
1249
+ )
1250
+ ),
1251
+
1252
+ # the properties below are optional
1253
+ tags=[CfnTag(
1254
+ key="key",
1255
+ value="value"
1256
+ )]
1257
+ )
1258
+ '''
1259
+ if __debug__:
1260
+ type_hints = typing.get_type_hints(_typecheckingstub__acb62a986f58f3a0fe81121a9d10976dc06320f2f60c079b3562b20316f0e79b)
1261
+ check_type(argname="argument identity_source_parameters", value=identity_source_parameters, expected_type=type_hints["identity_source_parameters"])
1262
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
1263
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1264
+ "identity_source_parameters": identity_source_parameters,
1265
+ }
1266
+ if tags is not None:
1267
+ self._values["tags"] = tags
1268
+
1269
+ @builtins.property
1270
+ def identity_source_parameters(
1271
+ self,
1272
+ ) -> typing.Union[_IResolvable_da3f097b, CfnIdentitySource.IdentitySourceParametersProperty]:
1273
+ '''A ``IdentitySourceParameters`` object.
1274
+
1275
+ Contains details for the resource that provides identities to the identity source. For example, an IAM Identity Center instance.
1276
+
1277
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-identitysource.html#cfn-mpa-identitysource-identitysourceparameters
1278
+ '''
1279
+ result = self._values.get("identity_source_parameters")
1280
+ assert result is not None, "Required property 'identity_source_parameters' is missing"
1281
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnIdentitySource.IdentitySourceParametersProperty], result)
1282
+
1283
+ @builtins.property
1284
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
1285
+ '''Tags that you have added to the specified resource.
1286
+
1287
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-identitysource.html#cfn-mpa-identitysource-tags
1288
+ '''
1289
+ result = self._values.get("tags")
1290
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
1291
+
1292
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1293
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1294
+
1295
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1296
+ return not (rhs == self)
1297
+
1298
+ def __repr__(self) -> str:
1299
+ return "CfnIdentitySourceProps(%s)" % ", ".join(
1300
+ k + "=" + repr(v) for k, v in self._values.items()
1301
+ )
1302
+
1303
+
1304
+ __all__ = [
1305
+ "CfnApprovalTeam",
1306
+ "CfnApprovalTeamProps",
1307
+ "CfnIdentitySource",
1308
+ "CfnIdentitySourceProps",
1309
+ ]
1310
+
1311
+ publication.publish()
1312
+
1313
+ def _typecheckingstub__386990d7f44b867156b4ae1be61f59dcf68b732d47a10262382c529e91f18365(
1314
+ scope: _constructs_77d1e7e8.Construct,
1315
+ id: builtins.str,
1316
+ *,
1317
+ approval_strategy: typing.Union[_IResolvable_da3f097b, typing.Union[CfnApprovalTeam.ApprovalStrategyProperty, typing.Dict[builtins.str, typing.Any]]],
1318
+ approvers: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnApprovalTeam.ApproverProperty, typing.Dict[builtins.str, typing.Any]]]]],
1319
+ description: builtins.str,
1320
+ name: builtins.str,
1321
+ policies: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnApprovalTeam.PolicyProperty, typing.Dict[builtins.str, typing.Any]]]]],
1322
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1323
+ ) -> None:
1324
+ """Type checking stubs"""
1325
+ pass
1326
+
1327
+ def _typecheckingstub__dba069c00d1a308983f1858c860837ee043b1a2f961d8a9723e5b6ab33cc7f30(
1328
+ inspector: _TreeInspector_488e0dd5,
1329
+ ) -> None:
1330
+ """Type checking stubs"""
1331
+ pass
1332
+
1333
+ def _typecheckingstub__75ba9035ba86d7cbf51b44474da24ea7dc3325fb3d54c692b9f7bd885fa89138(
1334
+ props: typing.Mapping[builtins.str, typing.Any],
1335
+ ) -> None:
1336
+ """Type checking stubs"""
1337
+ pass
1338
+
1339
+ def _typecheckingstub__4ec22b692d714a3a436a85095d2cb14c5395173e9390a7d17279d7b92a0e5186(
1340
+ value: typing.Union[_IResolvable_da3f097b, CfnApprovalTeam.ApprovalStrategyProperty],
1341
+ ) -> None:
1342
+ """Type checking stubs"""
1343
+ pass
1344
+
1345
+ def _typecheckingstub__f0eaf16236f7ec9b60a4b70a3f4b6ec8d4c38b2a19b3bcfd2b71bc112aa84697(
1346
+ value: typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnApprovalTeam.ApproverProperty]]],
1347
+ ) -> None:
1348
+ """Type checking stubs"""
1349
+ pass
1350
+
1351
+ def _typecheckingstub__5329ac4998f7b59d7d1e54592bf7342bbee963874c6616e24205a5f906bb7c8a(
1352
+ value: builtins.str,
1353
+ ) -> None:
1354
+ """Type checking stubs"""
1355
+ pass
1356
+
1357
+ def _typecheckingstub__e39f33a9d3b76bbe323d54d7d73234df05c9a544c11e71f2803cfa2ba185bfde(
1358
+ value: builtins.str,
1359
+ ) -> None:
1360
+ """Type checking stubs"""
1361
+ pass
1362
+
1363
+ def _typecheckingstub__d3a7c415cd8a7816dfb413751381ef0ef0d82b8795bc1c9d3776bc7988dc32fe(
1364
+ value: typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnApprovalTeam.PolicyProperty]]],
1365
+ ) -> None:
1366
+ """Type checking stubs"""
1367
+ pass
1368
+
1369
+ def _typecheckingstub__d31b1fab5555e70c4496aadbffef5ef28d65db31b88ab4e99ebb5030f3b22bad(
1370
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
1371
+ ) -> None:
1372
+ """Type checking stubs"""
1373
+ pass
1374
+
1375
+ def _typecheckingstub__cace1306ec287bf286eedec7b306e0183888aef06e1e0a1d74cc4532b3ae145b(
1376
+ *,
1377
+ mof_n: typing.Union[_IResolvable_da3f097b, typing.Union[CfnApprovalTeam.MofNApprovalStrategyProperty, typing.Dict[builtins.str, typing.Any]]],
1378
+ ) -> None:
1379
+ """Type checking stubs"""
1380
+ pass
1381
+
1382
+ def _typecheckingstub__36558bdfdc85f3fc5feb84a058bedb6b2533db65993cd67119e308af416d59bd(
1383
+ *,
1384
+ primary_identity_id: builtins.str,
1385
+ primary_identity_source_arn: builtins.str,
1386
+ approver_id: typing.Optional[builtins.str] = None,
1387
+ primary_identity_status: typing.Optional[builtins.str] = None,
1388
+ response_time: typing.Optional[builtins.str] = None,
1389
+ ) -> None:
1390
+ """Type checking stubs"""
1391
+ pass
1392
+
1393
+ def _typecheckingstub__c9128fe21a2ecc0edffaa444518ee4e665f9c001202934e3a6ce10274d631042(
1394
+ *,
1395
+ min_approvals_required: jsii.Number,
1396
+ ) -> None:
1397
+ """Type checking stubs"""
1398
+ pass
1399
+
1400
+ def _typecheckingstub__75ccc78545af23823b4f234ee8de6d1d0e7b956206086f97f9aa04f82d00b6f1(
1401
+ *,
1402
+ policy_arn: builtins.str,
1403
+ ) -> None:
1404
+ """Type checking stubs"""
1405
+ pass
1406
+
1407
+ def _typecheckingstub__23c8b69a9c24f10b33222467e81cbea79a3fbb6feb302fe9dea7e9fc448dae98(
1408
+ *,
1409
+ approval_strategy: typing.Union[_IResolvable_da3f097b, typing.Union[CfnApprovalTeam.ApprovalStrategyProperty, typing.Dict[builtins.str, typing.Any]]],
1410
+ approvers: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnApprovalTeam.ApproverProperty, typing.Dict[builtins.str, typing.Any]]]]],
1411
+ description: builtins.str,
1412
+ name: builtins.str,
1413
+ policies: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnApprovalTeam.PolicyProperty, typing.Dict[builtins.str, typing.Any]]]]],
1414
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1415
+ ) -> None:
1416
+ """Type checking stubs"""
1417
+ pass
1418
+
1419
+ def _typecheckingstub__4ccadabc10958f9b34637bf63683a7ae402b738916eaae8b4554005edd9a7f4e(
1420
+ scope: _constructs_77d1e7e8.Construct,
1421
+ id: builtins.str,
1422
+ *,
1423
+ identity_source_parameters: typing.Union[_IResolvable_da3f097b, typing.Union[CfnIdentitySource.IdentitySourceParametersProperty, typing.Dict[builtins.str, typing.Any]]],
1424
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1425
+ ) -> None:
1426
+ """Type checking stubs"""
1427
+ pass
1428
+
1429
+ def _typecheckingstub__958a95f31b67e8f309896314f9522aadfa2c69a0264848ce97b3ad043e59f942(
1430
+ inspector: _TreeInspector_488e0dd5,
1431
+ ) -> None:
1432
+ """Type checking stubs"""
1433
+ pass
1434
+
1435
+ def _typecheckingstub__c387c3be49c9c1559f9200673f4589cb8729c2ec8c7770beb57a1e5e35378256(
1436
+ props: typing.Mapping[builtins.str, typing.Any],
1437
+ ) -> None:
1438
+ """Type checking stubs"""
1439
+ pass
1440
+
1441
+ def _typecheckingstub__edf6a9866153061ef7d7e82b292ccb765e9c0faa36bd2f2b5fbe62010c82e44f(
1442
+ value: typing.Union[_IResolvable_da3f097b, CfnIdentitySource.IdentitySourceParametersProperty],
1443
+ ) -> None:
1444
+ """Type checking stubs"""
1445
+ pass
1446
+
1447
+ def _typecheckingstub__2348313ff968eefe1739ee64d5e35820f3cb200528d000a5072b402def990d94(
1448
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
1449
+ ) -> None:
1450
+ """Type checking stubs"""
1451
+ pass
1452
+
1453
+ def _typecheckingstub__ad03e7c03292e16adba0239cd21aae5665927b223a3d024fb5b1e7a0e5d618f0(
1454
+ *,
1455
+ instance_arn: builtins.str,
1456
+ region: builtins.str,
1457
+ approval_portal_url: typing.Optional[builtins.str] = None,
1458
+ ) -> None:
1459
+ """Type checking stubs"""
1460
+ pass
1461
+
1462
+ def _typecheckingstub__cdb131b4f18fdc2f28197cd3ec3c8e53cc57a860dfad6d92280cc24753500fc2(
1463
+ *,
1464
+ iam_identity_center: typing.Union[_IResolvable_da3f097b, typing.Union[CfnIdentitySource.IamIdentityCenterProperty, typing.Dict[builtins.str, typing.Any]]],
1465
+ ) -> None:
1466
+ """Type checking stubs"""
1467
+ pass
1468
+
1469
+ def _typecheckingstub__acb62a986f58f3a0fe81121a9d10976dc06320f2f60c079b3562b20316f0e79b(
1470
+ *,
1471
+ identity_source_parameters: typing.Union[_IResolvable_da3f097b, typing.Union[CfnIdentitySource.IdentitySourceParametersProperty, typing.Dict[builtins.str, typing.Any]]],
1472
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1473
+ ) -> None:
1474
+ """Type checking stubs"""
1475
+ pass