aws-cdk-lib 2.172.0__py3-none-any.whl → 2.173.1__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 +57 -0
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.172.0.jsii.tgz → aws-cdk-lib@2.173.1.jsii.tgz} +0 -0
  4. aws_cdk/aws_amazonmq/__init__.py +40 -40
  5. aws_cdk/aws_apigateway/__init__.py +111 -64
  6. aws_cdk/aws_applicationautoscaling/__init__.py +141 -66
  7. aws_cdk/aws_appsync/__init__.py +4 -3
  8. aws_cdk/aws_autoscaling/__init__.py +15 -6
  9. aws_cdk/aws_bedrock/__init__.py +32 -44
  10. aws_cdk/aws_chatbot/__init__.py +72 -46
  11. aws_cdk/aws_cleanrooms/__init__.py +4 -6
  12. aws_cdk/aws_cloudfront/__init__.py +4 -2
  13. aws_cdk/aws_cloudtrail/__init__.py +104 -68
  14. aws_cdk/aws_cloudwatch/__init__.py +51 -14
  15. aws_cdk/aws_codebuild/__init__.py +39 -0
  16. aws_cdk/aws_codepipeline/__init__.py +4 -4
  17. aws_cdk/aws_cognito/__init__.py +221 -53
  18. aws_cdk/aws_config/__init__.py +13 -10
  19. aws_cdk/aws_connect/__init__.py +25 -23
  20. aws_cdk/aws_connectcampaignsv2/__init__.py +187 -176
  21. aws_cdk/aws_docdb/__init__.py +128 -0
  22. aws_cdk/aws_dynamodb/__init__.py +256 -0
  23. aws_cdk/aws_ec2/__init__.py +130 -48
  24. aws_cdk/aws_ecs/__init__.py +25 -13
  25. aws_cdk/aws_eks/__init__.py +86 -24
  26. aws_cdk/aws_elasticache/__init__.py +22 -22
  27. aws_cdk/aws_elasticloadbalancingv2/__init__.py +138 -128
  28. aws_cdk/aws_events/__init__.py +39 -26
  29. aws_cdk/aws_fsx/__init__.py +134 -10
  30. aws_cdk/aws_imagebuilder/__init__.py +8 -8
  31. aws_cdk/aws_invoicing/__init__.py +651 -0
  32. aws_cdk/aws_iot/__init__.py +28 -22
  33. aws_cdk/aws_iotfleetwise/__init__.py +473 -332
  34. aws_cdk/aws_iotsitewise/__init__.py +6 -4
  35. aws_cdk/aws_ivs/__init__.py +43 -31
  36. aws_cdk/aws_kendra/__init__.py +4 -0
  37. aws_cdk/aws_lakeformation/__init__.py +2 -1
  38. aws_cdk/aws_lambda/__init__.py +258 -156
  39. aws_cdk/aws_logs/__init__.py +532 -0
  40. aws_cdk/aws_m2/__init__.py +15 -15
  41. aws_cdk/aws_mediaconnect/__init__.py +24 -14
  42. aws_cdk/aws_medialive/__init__.py +2359 -5
  43. aws_cdk/aws_mediapackage/__init__.py +3 -9
  44. aws_cdk/aws_mediapackagev2/__init__.py +19 -17
  45. aws_cdk/aws_memorydb/__init__.py +664 -4
  46. aws_cdk/aws_qbusiness/__init__.py +2018 -66
  47. aws_cdk/aws_rds/__init__.py +30 -0
  48. aws_cdk/aws_resourcegroups/__init__.py +26 -17
  49. aws_cdk/aws_route53/__init__.py +1177 -10
  50. aws_cdk/aws_route53_targets/__init__.py +224 -100
  51. aws_cdk/aws_route53resolver/__init__.py +4 -2
  52. aws_cdk/aws_s3/__init__.py +4 -4
  53. aws_cdk/aws_s3express/__init__.py +30 -19
  54. aws_cdk/aws_sagemaker/__init__.py +783 -9
  55. aws_cdk/aws_secretsmanager/__init__.py +20 -6
  56. aws_cdk/aws_securityhub/__init__.py +64 -32
  57. aws_cdk/aws_servicediscovery/__init__.py +43 -0
  58. aws_cdk/aws_ses/__init__.py +109 -0
  59. aws_cdk/aws_stepfunctions_tasks/__init__.py +190 -35
  60. aws_cdk/aws_synthetics/__init__.py +7 -5
  61. aws_cdk/aws_vpclattice/__init__.py +1479 -122
  62. aws_cdk/aws_wisdom/__init__.py +2698 -232
  63. aws_cdk/aws_workspacesweb/__init__.py +118 -61
  64. {aws_cdk_lib-2.172.0.dist-info → aws_cdk_lib-2.173.1.dist-info}/METADATA +1 -1
  65. {aws_cdk_lib-2.172.0.dist-info → aws_cdk_lib-2.173.1.dist-info}/RECORD +69 -68
  66. {aws_cdk_lib-2.172.0.dist-info → aws_cdk_lib-2.173.1.dist-info}/LICENSE +0 -0
  67. {aws_cdk_lib-2.172.0.dist-info → aws_cdk_lib-2.173.1.dist-info}/NOTICE +0 -0
  68. {aws_cdk_lib-2.172.0.dist-info → aws_cdk_lib-2.173.1.dist-info}/WHEEL +0 -0
  69. {aws_cdk_lib-2.172.0.dist-info → aws_cdk_lib-2.173.1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,651 @@
1
+ r'''
2
+ # AWS::Invoicing 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_invoicing as invoicing
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 Invoicing construct libraries](https://constructs.dev/search?q=invoicing)
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::Invoicing resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_Invoicing.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::Invoicing](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_Invoicing.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
+ IInspectable as _IInspectable_c2943556,
74
+ IResolvable as _IResolvable_da3f097b,
75
+ ITaggableV2 as _ITaggableV2_4e6798f8,
76
+ TagManager as _TagManager_0a598cb3,
77
+ TreeInspector as _TreeInspector_488e0dd5,
78
+ )
79
+
80
+
81
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
82
+ class CfnInvoiceUnit(
83
+ _CfnResource_9df397a6,
84
+ metaclass=jsii.JSIIMeta,
85
+ jsii_type="aws-cdk-lib.aws_invoicing.CfnInvoiceUnit",
86
+ ):
87
+ '''An invoice unit is a set of mutually exclusive accounts that correspond to your business entity.
88
+
89
+ Invoice units allow you to separate AWS account costs and configures your invoice for each business entity.
90
+
91
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-invoicing-invoiceunit.html
92
+ :cloudformationResource: AWS::Invoicing::InvoiceUnit
93
+ :exampleMetadata: fixture=_generated
94
+
95
+ Example::
96
+
97
+ # The code below shows an example of how to instantiate this type.
98
+ # The values are placeholders you should change.
99
+ from aws_cdk import aws_invoicing as invoicing
100
+
101
+ cfn_invoice_unit = invoicing.CfnInvoiceUnit(self, "MyCfnInvoiceUnit",
102
+ invoice_receiver="invoiceReceiver",
103
+ name="name",
104
+ rule=invoicing.CfnInvoiceUnit.RuleProperty(
105
+ linked_accounts=["linkedAccounts"]
106
+ ),
107
+
108
+ # the properties below are optional
109
+ description="description",
110
+ resource_tags=[invoicing.CfnInvoiceUnit.ResourceTagProperty(
111
+ key="key",
112
+ value="value"
113
+ )],
114
+ tax_inheritance_disabled=False
115
+ )
116
+ '''
117
+
118
+ def __init__(
119
+ self,
120
+ scope: _constructs_77d1e7e8.Construct,
121
+ id: builtins.str,
122
+ *,
123
+ invoice_receiver: builtins.str,
124
+ name: builtins.str,
125
+ rule: typing.Union[_IResolvable_da3f097b, typing.Union["CfnInvoiceUnit.RuleProperty", typing.Dict[builtins.str, typing.Any]]],
126
+ description: typing.Optional[builtins.str] = None,
127
+ resource_tags: typing.Optional[typing.Sequence[typing.Union["CfnInvoiceUnit.ResourceTagProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
128
+ tax_inheritance_disabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
129
+ ) -> None:
130
+ '''
131
+ :param scope: Scope in which this resource is defined.
132
+ :param id: Construct identifier for this resource (unique in its scope).
133
+ :param invoice_receiver:
134
+ :param name:
135
+ :param rule:
136
+ :param description:
137
+ :param resource_tags:
138
+ :param tax_inheritance_disabled:
139
+ '''
140
+ if __debug__:
141
+ type_hints = typing.get_type_hints(_typecheckingstub__ec21d6093b38a709121aa7ff8c0297fdced84c912861970ec02e3bc317566bc6)
142
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
143
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
144
+ props = CfnInvoiceUnitProps(
145
+ invoice_receiver=invoice_receiver,
146
+ name=name,
147
+ rule=rule,
148
+ description=description,
149
+ resource_tags=resource_tags,
150
+ tax_inheritance_disabled=tax_inheritance_disabled,
151
+ )
152
+
153
+ jsii.create(self.__class__, self, [scope, id, props])
154
+
155
+ @jsii.member(jsii_name="inspect")
156
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
157
+ '''Examines the CloudFormation resource and discloses attributes.
158
+
159
+ :param inspector: tree inspector to collect and process attributes.
160
+ '''
161
+ if __debug__:
162
+ type_hints = typing.get_type_hints(_typecheckingstub__adc114041b1663662392e373664cbecf8821f20a78009df2b54077dc4acd4a4f)
163
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
164
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
165
+
166
+ @jsii.member(jsii_name="renderProperties")
167
+ def _render_properties(
168
+ self,
169
+ props: typing.Mapping[builtins.str, typing.Any],
170
+ ) -> typing.Mapping[builtins.str, typing.Any]:
171
+ '''
172
+ :param props: -
173
+ '''
174
+ if __debug__:
175
+ type_hints = typing.get_type_hints(_typecheckingstub__107a105e04f9f1089e314bd557a043d7c27143f765a9e1ea9ee1881882b1c045)
176
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
177
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
178
+
179
+ @jsii.python.classproperty
180
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
181
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
182
+ '''The CloudFormation resource type name for this resource class.'''
183
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
184
+
185
+ @builtins.property
186
+ @jsii.member(jsii_name="attrInvoiceUnitArn")
187
+ def attr_invoice_unit_arn(self) -> builtins.str:
188
+ '''
189
+ :cloudformationAttribute: InvoiceUnitArn
190
+ '''
191
+ return typing.cast(builtins.str, jsii.get(self, "attrInvoiceUnitArn"))
192
+
193
+ @builtins.property
194
+ @jsii.member(jsii_name="attrLastModified")
195
+ def attr_last_modified(self) -> _IResolvable_da3f097b:
196
+ '''
197
+ :cloudformationAttribute: LastModified
198
+ '''
199
+ return typing.cast(_IResolvable_da3f097b, jsii.get(self, "attrLastModified"))
200
+
201
+ @builtins.property
202
+ @jsii.member(jsii_name="cdkTagManager")
203
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
204
+ '''Tag Manager which manages the tags for this resource.'''
205
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
206
+
207
+ @builtins.property
208
+ @jsii.member(jsii_name="cfnProperties")
209
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
210
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
211
+
212
+ @builtins.property
213
+ @jsii.member(jsii_name="invoiceReceiver")
214
+ def invoice_receiver(self) -> builtins.str:
215
+ return typing.cast(builtins.str, jsii.get(self, "invoiceReceiver"))
216
+
217
+ @invoice_receiver.setter
218
+ def invoice_receiver(self, value: builtins.str) -> None:
219
+ if __debug__:
220
+ type_hints = typing.get_type_hints(_typecheckingstub__696a83d1411656063bc2e9712df3268ed2ef2248e55f5547394f8f5e78942d54)
221
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
222
+ jsii.set(self, "invoiceReceiver", value) # pyright: ignore[reportArgumentType]
223
+
224
+ @builtins.property
225
+ @jsii.member(jsii_name="name")
226
+ def name(self) -> builtins.str:
227
+ return typing.cast(builtins.str, jsii.get(self, "name"))
228
+
229
+ @name.setter
230
+ def name(self, value: builtins.str) -> None:
231
+ if __debug__:
232
+ type_hints = typing.get_type_hints(_typecheckingstub__d3aae9f9b97db34c63c2be162b2b82f9e0ec45cb8225187a2e441c3d9df5fc6c)
233
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
234
+ jsii.set(self, "name", value) # pyright: ignore[reportArgumentType]
235
+
236
+ @builtins.property
237
+ @jsii.member(jsii_name="rule")
238
+ def rule(
239
+ self,
240
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnInvoiceUnit.RuleProperty"]:
241
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnInvoiceUnit.RuleProperty"], jsii.get(self, "rule"))
242
+
243
+ @rule.setter
244
+ def rule(
245
+ self,
246
+ value: typing.Union[_IResolvable_da3f097b, "CfnInvoiceUnit.RuleProperty"],
247
+ ) -> None:
248
+ if __debug__:
249
+ type_hints = typing.get_type_hints(_typecheckingstub__11bd3886ac3007b56aa51fb96bae09bccc9e9cc9c0abd45264540df233a478a8)
250
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
251
+ jsii.set(self, "rule", value) # pyright: ignore[reportArgumentType]
252
+
253
+ @builtins.property
254
+ @jsii.member(jsii_name="description")
255
+ def description(self) -> typing.Optional[builtins.str]:
256
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "description"))
257
+
258
+ @description.setter
259
+ def description(self, value: typing.Optional[builtins.str]) -> None:
260
+ if __debug__:
261
+ type_hints = typing.get_type_hints(_typecheckingstub__076923c02da9e54ceab543bf61c811c9f8f6d99b2e479b043a782db5a4b4fa76)
262
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
263
+ jsii.set(self, "description", value) # pyright: ignore[reportArgumentType]
264
+
265
+ @builtins.property
266
+ @jsii.member(jsii_name="resourceTags")
267
+ def resource_tags(
268
+ self,
269
+ ) -> typing.Optional[typing.List["CfnInvoiceUnit.ResourceTagProperty"]]:
270
+ return typing.cast(typing.Optional[typing.List["CfnInvoiceUnit.ResourceTagProperty"]], jsii.get(self, "resourceTags"))
271
+
272
+ @resource_tags.setter
273
+ def resource_tags(
274
+ self,
275
+ value: typing.Optional[typing.List["CfnInvoiceUnit.ResourceTagProperty"]],
276
+ ) -> None:
277
+ if __debug__:
278
+ type_hints = typing.get_type_hints(_typecheckingstub__3778014062d8d17e79b38d529c3fb3bb66de99f01976014103eaa0ec3100ef9a)
279
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
280
+ jsii.set(self, "resourceTags", value) # pyright: ignore[reportArgumentType]
281
+
282
+ @builtins.property
283
+ @jsii.member(jsii_name="taxInheritanceDisabled")
284
+ def tax_inheritance_disabled(
285
+ self,
286
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
287
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "taxInheritanceDisabled"))
288
+
289
+ @tax_inheritance_disabled.setter
290
+ def tax_inheritance_disabled(
291
+ self,
292
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
293
+ ) -> None:
294
+ if __debug__:
295
+ type_hints = typing.get_type_hints(_typecheckingstub__42f1928e769bc3f0a10f5fa89984b4cfd7df0a60a619ce30e6135776c65ea23b)
296
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
297
+ jsii.set(self, "taxInheritanceDisabled", value) # pyright: ignore[reportArgumentType]
298
+
299
+ @jsii.data_type(
300
+ jsii_type="aws-cdk-lib.aws_invoicing.CfnInvoiceUnit.ResourceTagProperty",
301
+ jsii_struct_bases=[],
302
+ name_mapping={"key": "key", "value": "value"},
303
+ )
304
+ class ResourceTagProperty:
305
+ def __init__(self, *, key: builtins.str, value: builtins.str) -> None:
306
+ '''
307
+ :param key:
308
+ :param value:
309
+
310
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-invoicing-invoiceunit-resourcetag.html
311
+ :exampleMetadata: fixture=_generated
312
+
313
+ Example::
314
+
315
+ # The code below shows an example of how to instantiate this type.
316
+ # The values are placeholders you should change.
317
+ from aws_cdk import aws_invoicing as invoicing
318
+
319
+ resource_tag_property = invoicing.CfnInvoiceUnit.ResourceTagProperty(
320
+ key="key",
321
+ value="value"
322
+ )
323
+ '''
324
+ if __debug__:
325
+ type_hints = typing.get_type_hints(_typecheckingstub__859a6df074320cbe1a9099b42236f7d3759a4ce5419adf8bb3c001155a98ed4f)
326
+ check_type(argname="argument key", value=key, expected_type=type_hints["key"])
327
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
328
+ self._values: typing.Dict[builtins.str, typing.Any] = {
329
+ "key": key,
330
+ "value": value,
331
+ }
332
+
333
+ @builtins.property
334
+ def key(self) -> builtins.str:
335
+ '''
336
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-invoicing-invoiceunit-resourcetag.html#cfn-invoicing-invoiceunit-resourcetag-key
337
+ '''
338
+ result = self._values.get("key")
339
+ assert result is not None, "Required property 'key' is missing"
340
+ return typing.cast(builtins.str, result)
341
+
342
+ @builtins.property
343
+ def value(self) -> builtins.str:
344
+ '''
345
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-invoicing-invoiceunit-resourcetag.html#cfn-invoicing-invoiceunit-resourcetag-value
346
+ '''
347
+ result = self._values.get("value")
348
+ assert result is not None, "Required property 'value' is missing"
349
+ return typing.cast(builtins.str, result)
350
+
351
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
352
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
353
+
354
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
355
+ return not (rhs == self)
356
+
357
+ def __repr__(self) -> str:
358
+ return "ResourceTagProperty(%s)" % ", ".join(
359
+ k + "=" + repr(v) for k, v in self._values.items()
360
+ )
361
+
362
+ @jsii.data_type(
363
+ jsii_type="aws-cdk-lib.aws_invoicing.CfnInvoiceUnit.RuleProperty",
364
+ jsii_struct_bases=[],
365
+ name_mapping={"linked_accounts": "linkedAccounts"},
366
+ )
367
+ class RuleProperty:
368
+ def __init__(self, *, linked_accounts: typing.Sequence[builtins.str]) -> None:
369
+ '''
370
+ :param linked_accounts:
371
+
372
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-invoicing-invoiceunit-rule.html
373
+ :exampleMetadata: fixture=_generated
374
+
375
+ Example::
376
+
377
+ # The code below shows an example of how to instantiate this type.
378
+ # The values are placeholders you should change.
379
+ from aws_cdk import aws_invoicing as invoicing
380
+
381
+ rule_property = invoicing.CfnInvoiceUnit.RuleProperty(
382
+ linked_accounts=["linkedAccounts"]
383
+ )
384
+ '''
385
+ if __debug__:
386
+ type_hints = typing.get_type_hints(_typecheckingstub__8558be1d7f9b75065f54979d9fa00436e977578b77550f4c1d3e32a6b46a4bea)
387
+ check_type(argname="argument linked_accounts", value=linked_accounts, expected_type=type_hints["linked_accounts"])
388
+ self._values: typing.Dict[builtins.str, typing.Any] = {
389
+ "linked_accounts": linked_accounts,
390
+ }
391
+
392
+ @builtins.property
393
+ def linked_accounts(self) -> typing.List[builtins.str]:
394
+ '''
395
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-invoicing-invoiceunit-rule.html#cfn-invoicing-invoiceunit-rule-linkedaccounts
396
+ '''
397
+ result = self._values.get("linked_accounts")
398
+ assert result is not None, "Required property 'linked_accounts' is missing"
399
+ return typing.cast(typing.List[builtins.str], result)
400
+
401
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
402
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
403
+
404
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
405
+ return not (rhs == self)
406
+
407
+ def __repr__(self) -> str:
408
+ return "RuleProperty(%s)" % ", ".join(
409
+ k + "=" + repr(v) for k, v in self._values.items()
410
+ )
411
+
412
+
413
+ @jsii.data_type(
414
+ jsii_type="aws-cdk-lib.aws_invoicing.CfnInvoiceUnitProps",
415
+ jsii_struct_bases=[],
416
+ name_mapping={
417
+ "invoice_receiver": "invoiceReceiver",
418
+ "name": "name",
419
+ "rule": "rule",
420
+ "description": "description",
421
+ "resource_tags": "resourceTags",
422
+ "tax_inheritance_disabled": "taxInheritanceDisabled",
423
+ },
424
+ )
425
+ class CfnInvoiceUnitProps:
426
+ def __init__(
427
+ self,
428
+ *,
429
+ invoice_receiver: builtins.str,
430
+ name: builtins.str,
431
+ rule: typing.Union[_IResolvable_da3f097b, typing.Union[CfnInvoiceUnit.RuleProperty, typing.Dict[builtins.str, typing.Any]]],
432
+ description: typing.Optional[builtins.str] = None,
433
+ resource_tags: typing.Optional[typing.Sequence[typing.Union[CfnInvoiceUnit.ResourceTagProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
434
+ tax_inheritance_disabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
435
+ ) -> None:
436
+ '''Properties for defining a ``CfnInvoiceUnit``.
437
+
438
+ :param invoice_receiver:
439
+ :param name:
440
+ :param rule:
441
+ :param description:
442
+ :param resource_tags:
443
+ :param tax_inheritance_disabled:
444
+
445
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-invoicing-invoiceunit.html
446
+ :exampleMetadata: fixture=_generated
447
+
448
+ Example::
449
+
450
+ # The code below shows an example of how to instantiate this type.
451
+ # The values are placeholders you should change.
452
+ from aws_cdk import aws_invoicing as invoicing
453
+
454
+ cfn_invoice_unit_props = invoicing.CfnInvoiceUnitProps(
455
+ invoice_receiver="invoiceReceiver",
456
+ name="name",
457
+ rule=invoicing.CfnInvoiceUnit.RuleProperty(
458
+ linked_accounts=["linkedAccounts"]
459
+ ),
460
+
461
+ # the properties below are optional
462
+ description="description",
463
+ resource_tags=[invoicing.CfnInvoiceUnit.ResourceTagProperty(
464
+ key="key",
465
+ value="value"
466
+ )],
467
+ tax_inheritance_disabled=False
468
+ )
469
+ '''
470
+ if __debug__:
471
+ type_hints = typing.get_type_hints(_typecheckingstub__a4fdf29b8c64b38c209320f998b71b0ce2601c2ac744bde28886f66b3cefdce6)
472
+ check_type(argname="argument invoice_receiver", value=invoice_receiver, expected_type=type_hints["invoice_receiver"])
473
+ check_type(argname="argument name", value=name, expected_type=type_hints["name"])
474
+ check_type(argname="argument rule", value=rule, expected_type=type_hints["rule"])
475
+ check_type(argname="argument description", value=description, expected_type=type_hints["description"])
476
+ check_type(argname="argument resource_tags", value=resource_tags, expected_type=type_hints["resource_tags"])
477
+ check_type(argname="argument tax_inheritance_disabled", value=tax_inheritance_disabled, expected_type=type_hints["tax_inheritance_disabled"])
478
+ self._values: typing.Dict[builtins.str, typing.Any] = {
479
+ "invoice_receiver": invoice_receiver,
480
+ "name": name,
481
+ "rule": rule,
482
+ }
483
+ if description is not None:
484
+ self._values["description"] = description
485
+ if resource_tags is not None:
486
+ self._values["resource_tags"] = resource_tags
487
+ if tax_inheritance_disabled is not None:
488
+ self._values["tax_inheritance_disabled"] = tax_inheritance_disabled
489
+
490
+ @builtins.property
491
+ def invoice_receiver(self) -> builtins.str:
492
+ '''
493
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-invoicing-invoiceunit.html#cfn-invoicing-invoiceunit-invoicereceiver
494
+ '''
495
+ result = self._values.get("invoice_receiver")
496
+ assert result is not None, "Required property 'invoice_receiver' is missing"
497
+ return typing.cast(builtins.str, result)
498
+
499
+ @builtins.property
500
+ def name(self) -> builtins.str:
501
+ '''
502
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-invoicing-invoiceunit.html#cfn-invoicing-invoiceunit-name
503
+ '''
504
+ result = self._values.get("name")
505
+ assert result is not None, "Required property 'name' is missing"
506
+ return typing.cast(builtins.str, result)
507
+
508
+ @builtins.property
509
+ def rule(self) -> typing.Union[_IResolvable_da3f097b, CfnInvoiceUnit.RuleProperty]:
510
+ '''
511
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-invoicing-invoiceunit.html#cfn-invoicing-invoiceunit-rule
512
+ '''
513
+ result = self._values.get("rule")
514
+ assert result is not None, "Required property 'rule' is missing"
515
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnInvoiceUnit.RuleProperty], result)
516
+
517
+ @builtins.property
518
+ def description(self) -> typing.Optional[builtins.str]:
519
+ '''
520
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-invoicing-invoiceunit.html#cfn-invoicing-invoiceunit-description
521
+ '''
522
+ result = self._values.get("description")
523
+ return typing.cast(typing.Optional[builtins.str], result)
524
+
525
+ @builtins.property
526
+ def resource_tags(
527
+ self,
528
+ ) -> typing.Optional[typing.List[CfnInvoiceUnit.ResourceTagProperty]]:
529
+ '''
530
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-invoicing-invoiceunit.html#cfn-invoicing-invoiceunit-resourcetags
531
+ '''
532
+ result = self._values.get("resource_tags")
533
+ return typing.cast(typing.Optional[typing.List[CfnInvoiceUnit.ResourceTagProperty]], result)
534
+
535
+ @builtins.property
536
+ def tax_inheritance_disabled(
537
+ self,
538
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
539
+ '''
540
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-invoicing-invoiceunit.html#cfn-invoicing-invoiceunit-taxinheritancedisabled
541
+ '''
542
+ result = self._values.get("tax_inheritance_disabled")
543
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
544
+
545
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
546
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
547
+
548
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
549
+ return not (rhs == self)
550
+
551
+ def __repr__(self) -> str:
552
+ return "CfnInvoiceUnitProps(%s)" % ", ".join(
553
+ k + "=" + repr(v) for k, v in self._values.items()
554
+ )
555
+
556
+
557
+ __all__ = [
558
+ "CfnInvoiceUnit",
559
+ "CfnInvoiceUnitProps",
560
+ ]
561
+
562
+ publication.publish()
563
+
564
+ def _typecheckingstub__ec21d6093b38a709121aa7ff8c0297fdced84c912861970ec02e3bc317566bc6(
565
+ scope: _constructs_77d1e7e8.Construct,
566
+ id: builtins.str,
567
+ *,
568
+ invoice_receiver: builtins.str,
569
+ name: builtins.str,
570
+ rule: typing.Union[_IResolvable_da3f097b, typing.Union[CfnInvoiceUnit.RuleProperty, typing.Dict[builtins.str, typing.Any]]],
571
+ description: typing.Optional[builtins.str] = None,
572
+ resource_tags: typing.Optional[typing.Sequence[typing.Union[CfnInvoiceUnit.ResourceTagProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
573
+ tax_inheritance_disabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
574
+ ) -> None:
575
+ """Type checking stubs"""
576
+ pass
577
+
578
+ def _typecheckingstub__adc114041b1663662392e373664cbecf8821f20a78009df2b54077dc4acd4a4f(
579
+ inspector: _TreeInspector_488e0dd5,
580
+ ) -> None:
581
+ """Type checking stubs"""
582
+ pass
583
+
584
+ def _typecheckingstub__107a105e04f9f1089e314bd557a043d7c27143f765a9e1ea9ee1881882b1c045(
585
+ props: typing.Mapping[builtins.str, typing.Any],
586
+ ) -> None:
587
+ """Type checking stubs"""
588
+ pass
589
+
590
+ def _typecheckingstub__696a83d1411656063bc2e9712df3268ed2ef2248e55f5547394f8f5e78942d54(
591
+ value: builtins.str,
592
+ ) -> None:
593
+ """Type checking stubs"""
594
+ pass
595
+
596
+ def _typecheckingstub__d3aae9f9b97db34c63c2be162b2b82f9e0ec45cb8225187a2e441c3d9df5fc6c(
597
+ value: builtins.str,
598
+ ) -> None:
599
+ """Type checking stubs"""
600
+ pass
601
+
602
+ def _typecheckingstub__11bd3886ac3007b56aa51fb96bae09bccc9e9cc9c0abd45264540df233a478a8(
603
+ value: typing.Union[_IResolvable_da3f097b, CfnInvoiceUnit.RuleProperty],
604
+ ) -> None:
605
+ """Type checking stubs"""
606
+ pass
607
+
608
+ def _typecheckingstub__076923c02da9e54ceab543bf61c811c9f8f6d99b2e479b043a782db5a4b4fa76(
609
+ value: typing.Optional[builtins.str],
610
+ ) -> None:
611
+ """Type checking stubs"""
612
+ pass
613
+
614
+ def _typecheckingstub__3778014062d8d17e79b38d529c3fb3bb66de99f01976014103eaa0ec3100ef9a(
615
+ value: typing.Optional[typing.List[CfnInvoiceUnit.ResourceTagProperty]],
616
+ ) -> None:
617
+ """Type checking stubs"""
618
+ pass
619
+
620
+ def _typecheckingstub__42f1928e769bc3f0a10f5fa89984b4cfd7df0a60a619ce30e6135776c65ea23b(
621
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
622
+ ) -> None:
623
+ """Type checking stubs"""
624
+ pass
625
+
626
+ def _typecheckingstub__859a6df074320cbe1a9099b42236f7d3759a4ce5419adf8bb3c001155a98ed4f(
627
+ *,
628
+ key: builtins.str,
629
+ value: builtins.str,
630
+ ) -> None:
631
+ """Type checking stubs"""
632
+ pass
633
+
634
+ def _typecheckingstub__8558be1d7f9b75065f54979d9fa00436e977578b77550f4c1d3e32a6b46a4bea(
635
+ *,
636
+ linked_accounts: typing.Sequence[builtins.str],
637
+ ) -> None:
638
+ """Type checking stubs"""
639
+ pass
640
+
641
+ def _typecheckingstub__a4fdf29b8c64b38c209320f998b71b0ce2601c2ac744bde28886f66b3cefdce6(
642
+ *,
643
+ invoice_receiver: builtins.str,
644
+ name: builtins.str,
645
+ rule: typing.Union[_IResolvable_da3f097b, typing.Union[CfnInvoiceUnit.RuleProperty, typing.Dict[builtins.str, typing.Any]]],
646
+ description: typing.Optional[builtins.str] = None,
647
+ resource_tags: typing.Optional[typing.Sequence[typing.Union[CfnInvoiceUnit.ResourceTagProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
648
+ tax_inheritance_disabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
649
+ ) -> None:
650
+ """Type checking stubs"""
651
+ pass