aws-cdk-lib 2.118.0__py3-none-any.whl → 2.119.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 (52) hide show
  1. aws_cdk/__init__.py +4 -0
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.118.0.jsii.tgz → aws-cdk-lib@2.119.0.jsii.tgz} +0 -0
  4. aws_cdk/amzn_sdc/__init__.py +496 -0
  5. aws_cdk/aws_appsync/__init__.py +23 -9
  6. aws_cdk/aws_certificatemanager/__init__.py +164 -3
  7. aws_cdk/aws_cloud9/__init__.py +3 -3
  8. aws_cdk/aws_cloudfront/__init__.py +105 -5
  9. aws_cdk/aws_cloudtrail/__init__.py +54 -34
  10. aws_cdk/aws_cloudwatch_actions/__init__.py +105 -0
  11. aws_cdk/aws_codebuild/__init__.py +1 -0
  12. aws_cdk/aws_codecommit/__init__.py +9 -3
  13. aws_cdk/aws_codetest/__init__.py +788 -0
  14. aws_cdk/aws_cognito/__init__.py +104 -0
  15. aws_cdk/aws_connect/__init__.py +626 -78
  16. aws_cdk/aws_docdb/__init__.py +442 -0
  17. aws_cdk/aws_dynamodb/__init__.py +14 -0
  18. aws_cdk/aws_ec2/__init__.py +372 -44
  19. aws_cdk/aws_emrserverless/__init__.py +20 -13
  20. aws_cdk/aws_events/__init__.py +90 -1
  21. aws_cdk/aws_fis/__init__.py +12 -32
  22. aws_cdk/aws_globalaccelerator/__init__.py +19 -0
  23. aws_cdk/aws_glue/__init__.py +329 -0
  24. aws_cdk/aws_iam/__init__.py +30 -24
  25. aws_cdk/aws_iot/__init__.py +112 -0
  26. aws_cdk/aws_iotsitewise/__init__.py +4 -4
  27. aws_cdk/aws_kendra/__init__.py +10 -5
  28. aws_cdk/aws_kinesisfirehose/__init__.py +111 -0
  29. aws_cdk/aws_location/__init__.py +1132 -17
  30. aws_cdk/aws_mediatailor/__init__.py +120 -17
  31. aws_cdk/aws_networkfirewall/__init__.py +2 -2
  32. aws_cdk/aws_networkmanager/__init__.py +1 -1
  33. aws_cdk/aws_omics/__init__.py +4 -4
  34. aws_cdk/aws_opensearchservice/__init__.py +2 -0
  35. aws_cdk/aws_pinpoint/__init__.py +14 -6
  36. aws_cdk/aws_pipes/__init__.py +7 -2
  37. aws_cdk/aws_rds/__init__.py +15 -9
  38. aws_cdk/aws_redshift/__init__.py +103 -0
  39. aws_cdk/aws_route53/__init__.py +68 -20
  40. aws_cdk/aws_s3/__init__.py +2 -4
  41. aws_cdk/aws_s3objectlambda/__init__.py +2 -2
  42. aws_cdk/aws_servicecatalogappregistry/__init__.py +3 -3
  43. aws_cdk/aws_signer/__init__.py +27 -4
  44. aws_cdk/aws_ssm/__init__.py +76 -13
  45. aws_cdk/aws_stepfunctions/__init__.py +110 -5
  46. aws_cdk/pipelines/__init__.py +136 -37
  47. {aws_cdk_lib-2.118.0.dist-info → aws_cdk_lib-2.119.0.dist-info}/METADATA +2 -2
  48. {aws_cdk_lib-2.118.0.dist-info → aws_cdk_lib-2.119.0.dist-info}/RECORD +52 -50
  49. {aws_cdk_lib-2.118.0.dist-info → aws_cdk_lib-2.119.0.dist-info}/LICENSE +0 -0
  50. {aws_cdk_lib-2.118.0.dist-info → aws_cdk_lib-2.119.0.dist-info}/NOTICE +0 -0
  51. {aws_cdk_lib-2.118.0.dist-info → aws_cdk_lib-2.119.0.dist-info}/WHEEL +0 -0
  52. {aws_cdk_lib-2.118.0.dist-info → aws_cdk_lib-2.119.0.dist-info}/top_level.txt +0 -0
@@ -47,12 +47,638 @@ from .._jsii import *
47
47
  import constructs as _constructs_77d1e7e8
48
48
  from .. import (
49
49
  CfnResource as _CfnResource_9df397a6,
50
+ CfnTag as _CfnTag_f6864754,
50
51
  IInspectable as _IInspectable_c2943556,
51
52
  IResolvable as _IResolvable_da3f097b,
52
53
  TreeInspector as _TreeInspector_488e0dd5,
53
54
  )
54
55
 
55
56
 
57
+ @jsii.implements(_IInspectable_c2943556)
58
+ class CfnAPIKey(
59
+ _CfnResource_9df397a6,
60
+ metaclass=jsii.JSIIMeta,
61
+ jsii_type="aws-cdk-lib.aws_location.CfnAPIKey",
62
+ ):
63
+ '''The API key resource in your AWS account, which lets you grant actions for Amazon Location resources to the API key bearer.
64
+
65
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html
66
+ :cloudformationResource: AWS::Location::APIKey
67
+ :exampleMetadata: fixture=_generated
68
+
69
+ Example::
70
+
71
+ # The code below shows an example of how to instantiate this type.
72
+ # The values are placeholders you should change.
73
+ from aws_cdk import aws_location as location
74
+
75
+ cfn_aPIKey = location.CfnAPIKey(self, "MyCfnAPIKey",
76
+ key_name="keyName",
77
+ restrictions=location.CfnAPIKey.ApiKeyRestrictionsProperty(
78
+ allow_actions=["allowActions"],
79
+ allow_resources=["allowResources"],
80
+
81
+ # the properties below are optional
82
+ allow_referers=["allowReferers"]
83
+ ),
84
+
85
+ # the properties below are optional
86
+ description="description",
87
+ expire_time="expireTime",
88
+ force_delete=False,
89
+ force_update=False,
90
+ no_expiry=False,
91
+ tags=[CfnTag(
92
+ key="key",
93
+ value="value"
94
+ )]
95
+ )
96
+ '''
97
+
98
+ def __init__(
99
+ self,
100
+ scope: _constructs_77d1e7e8.Construct,
101
+ id: builtins.str,
102
+ *,
103
+ key_name: builtins.str,
104
+ restrictions: typing.Union[_IResolvable_da3f097b, typing.Union["CfnAPIKey.ApiKeyRestrictionsProperty", typing.Dict[builtins.str, typing.Any]]],
105
+ description: typing.Optional[builtins.str] = None,
106
+ expire_time: typing.Optional[builtins.str] = None,
107
+ force_delete: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
108
+ force_update: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
109
+ no_expiry: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
110
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
111
+ ) -> None:
112
+ '''
113
+ :param scope: Scope in which this resource is defined.
114
+ :param id: Construct identifier for this resource (unique in its scope).
115
+ :param key_name: A custom name for the API key resource. Requirements: - Contain only alphanumeric characters (A–Z, a–z, 0–9), hyphens (-), periods (.), and underscores (_). - Must be a unique API key name. - No spaces allowed. For example, ``ExampleAPIKey`` .
116
+ :param restrictions: The API key restrictions for the API key resource.
117
+ :param description: Updates the description for the API key resource.
118
+ :param expire_time: The optional timestamp for when the API key resource will expire in `ISO 8601 format <https://docs.aws.amazon.com/https://www.iso.org/iso-8601-date-and-time-format.html>`_ .
119
+ :param force_delete: ForceDelete bypasses an API key's expiry conditions and deletes the key. Set the parameter ``true`` to delete the key or to ``false`` to not preemptively delete the API key. Valid values: ``true`` , or ``false`` . .. epigraph:: This action is irreversible. Only use ForceDelete if you are certain the key is no longer in use.
120
+ :param force_update: The boolean flag to be included for updating ``ExpireTime`` or Restrictions details. Must be set to ``true`` to update an API key resource that has been used in the past 7 days. ``False`` if force update is not preferred.
121
+ :param no_expiry: Whether the API key should expire. Set to ``true`` to set the API key to have no expiration time.
122
+ :param tags: Applies one or more tags to the map resource. A tag is a key-value pair that helps manage, identify, search, and filter your resources by labelling them.
123
+ '''
124
+ if __debug__:
125
+ type_hints = typing.get_type_hints(_typecheckingstub__e2ae0e8c734c36fc4dfc2e50264fbc5e41cc44ca78d64c47f19cac56e4318d32)
126
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
127
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
128
+ props = CfnAPIKeyProps(
129
+ key_name=key_name,
130
+ restrictions=restrictions,
131
+ description=description,
132
+ expire_time=expire_time,
133
+ force_delete=force_delete,
134
+ force_update=force_update,
135
+ no_expiry=no_expiry,
136
+ tags=tags,
137
+ )
138
+
139
+ jsii.create(self.__class__, self, [scope, id, props])
140
+
141
+ @jsii.member(jsii_name="inspect")
142
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
143
+ '''Examines the CloudFormation resource and discloses attributes.
144
+
145
+ :param inspector: tree inspector to collect and process attributes.
146
+ '''
147
+ if __debug__:
148
+ type_hints = typing.get_type_hints(_typecheckingstub__90e4d83d582a33efc0dfeef244e5a4b84a90230cc485853b42d16a3e6f6609a7)
149
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
150
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
151
+
152
+ @jsii.member(jsii_name="renderProperties")
153
+ def _render_properties(
154
+ self,
155
+ props: typing.Mapping[builtins.str, typing.Any],
156
+ ) -> typing.Mapping[builtins.str, typing.Any]:
157
+ '''
158
+ :param props: -
159
+ '''
160
+ if __debug__:
161
+ type_hints = typing.get_type_hints(_typecheckingstub__099c2b5d173d474236a30915cc6fc0919b6fe1cf215f99e6636485c92a9af0ca)
162
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
163
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
164
+
165
+ @jsii.python.classproperty
166
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
167
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
168
+ '''The CloudFormation resource type name for this resource class.'''
169
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
170
+
171
+ @builtins.property
172
+ @jsii.member(jsii_name="attrArn")
173
+ def attr_arn(self) -> builtins.str:
174
+ '''The Amazon Resource Name (ARN) for the resource.
175
+
176
+ Used when you need to specify a resource across all AWS .
177
+
178
+ :cloudformationAttribute: Arn
179
+ '''
180
+ return typing.cast(builtins.str, jsii.get(self, "attrArn"))
181
+
182
+ @builtins.property
183
+ @jsii.member(jsii_name="attrCreateTime")
184
+ def attr_create_time(self) -> builtins.str:
185
+ '''The timestamp for when the API key resource was created in ISO 8601 format: YYYY-MM-DDThh:mm:ss.sssZ.
186
+
187
+ :cloudformationAttribute: CreateTime
188
+ '''
189
+ return typing.cast(builtins.str, jsii.get(self, "attrCreateTime"))
190
+
191
+ @builtins.property
192
+ @jsii.member(jsii_name="attrKeyArn")
193
+ def attr_key_arn(self) -> builtins.str:
194
+ '''The Amazon Resource Name (ARN) for the API key resource.
195
+
196
+ Used when you need to specify a resource across all AWS .
197
+
198
+ :cloudformationAttribute: KeyArn
199
+ '''
200
+ return typing.cast(builtins.str, jsii.get(self, "attrKeyArn"))
201
+
202
+ @builtins.property
203
+ @jsii.member(jsii_name="attrUpdateTime")
204
+ def attr_update_time(self) -> builtins.str:
205
+ '''The timestamp for when the API key resource was last updated in ISO 8601 format: ``YYYY-MM-DDThh:mm:ss.sssZ`` .
206
+
207
+ :cloudformationAttribute: UpdateTime
208
+ '''
209
+ return typing.cast(builtins.str, jsii.get(self, "attrUpdateTime"))
210
+
211
+ @builtins.property
212
+ @jsii.member(jsii_name="cfnProperties")
213
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
214
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
215
+
216
+ @builtins.property
217
+ @jsii.member(jsii_name="keyName")
218
+ def key_name(self) -> builtins.str:
219
+ '''A custom name for the API key resource.'''
220
+ return typing.cast(builtins.str, jsii.get(self, "keyName"))
221
+
222
+ @key_name.setter
223
+ def key_name(self, value: builtins.str) -> None:
224
+ if __debug__:
225
+ type_hints = typing.get_type_hints(_typecheckingstub__c00e03a38669285c7b235bbd87ec7317379694b0537c3a85e4741d27c54c9d3d)
226
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
227
+ jsii.set(self, "keyName", value)
228
+
229
+ @builtins.property
230
+ @jsii.member(jsii_name="restrictions")
231
+ def restrictions(
232
+ self,
233
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnAPIKey.ApiKeyRestrictionsProperty"]:
234
+ '''The API key restrictions for the API key resource.'''
235
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnAPIKey.ApiKeyRestrictionsProperty"], jsii.get(self, "restrictions"))
236
+
237
+ @restrictions.setter
238
+ def restrictions(
239
+ self,
240
+ value: typing.Union[_IResolvable_da3f097b, "CfnAPIKey.ApiKeyRestrictionsProperty"],
241
+ ) -> None:
242
+ if __debug__:
243
+ type_hints = typing.get_type_hints(_typecheckingstub__65682d4a834f16510a57f21e8af7c41ba661e7d0f78293abcd483f9d45afba31)
244
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
245
+ jsii.set(self, "restrictions", value)
246
+
247
+ @builtins.property
248
+ @jsii.member(jsii_name="description")
249
+ def description(self) -> typing.Optional[builtins.str]:
250
+ '''Updates the description for the API key resource.'''
251
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "description"))
252
+
253
+ @description.setter
254
+ def description(self, value: typing.Optional[builtins.str]) -> None:
255
+ if __debug__:
256
+ type_hints = typing.get_type_hints(_typecheckingstub__e1957f4ade558178bedd1746c97b21ac5195a216695895f32ba33d6fe99216c5)
257
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
258
+ jsii.set(self, "description", value)
259
+
260
+ @builtins.property
261
+ @jsii.member(jsii_name="expireTime")
262
+ def expire_time(self) -> typing.Optional[builtins.str]:
263
+ '''The optional timestamp for when the API key resource will expire in `ISO 8601 format <https://docs.aws.amazon.com/https://www.iso.org/iso-8601-date-and-time-format.html>`_ .'''
264
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "expireTime"))
265
+
266
+ @expire_time.setter
267
+ def expire_time(self, value: typing.Optional[builtins.str]) -> None:
268
+ if __debug__:
269
+ type_hints = typing.get_type_hints(_typecheckingstub__8263b20b7b28c2712bf62bdacab9989763120af28d1e026f26e14f6e572ae7c9)
270
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
271
+ jsii.set(self, "expireTime", value)
272
+
273
+ @builtins.property
274
+ @jsii.member(jsii_name="forceDelete")
275
+ def force_delete(
276
+ self,
277
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
278
+ '''ForceDelete bypasses an API key's expiry conditions and deletes the key.'''
279
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "forceDelete"))
280
+
281
+ @force_delete.setter
282
+ def force_delete(
283
+ self,
284
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
285
+ ) -> None:
286
+ if __debug__:
287
+ type_hints = typing.get_type_hints(_typecheckingstub__c8379f2b16717a153383f6b36ff735d0d746008205280dddfc3ffe2f253f29a2)
288
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
289
+ jsii.set(self, "forceDelete", value)
290
+
291
+ @builtins.property
292
+ @jsii.member(jsii_name="forceUpdate")
293
+ def force_update(
294
+ self,
295
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
296
+ '''The boolean flag to be included for updating ``ExpireTime`` or Restrictions details.'''
297
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "forceUpdate"))
298
+
299
+ @force_update.setter
300
+ def force_update(
301
+ self,
302
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
303
+ ) -> None:
304
+ if __debug__:
305
+ type_hints = typing.get_type_hints(_typecheckingstub__6402962818d046984829754f6a1e3957be1c7b7981fc92251adcdb9aaeefd493)
306
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
307
+ jsii.set(self, "forceUpdate", value)
308
+
309
+ @builtins.property
310
+ @jsii.member(jsii_name="noExpiry")
311
+ def no_expiry(
312
+ self,
313
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
314
+ '''Whether the API key should expire.'''
315
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "noExpiry"))
316
+
317
+ @no_expiry.setter
318
+ def no_expiry(
319
+ self,
320
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
321
+ ) -> None:
322
+ if __debug__:
323
+ type_hints = typing.get_type_hints(_typecheckingstub__7f2e8a3ec18117161377722f1dd02cee2566e5eb477a2de4cfbc6a270028941e)
324
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
325
+ jsii.set(self, "noExpiry", value)
326
+
327
+ @builtins.property
328
+ @jsii.member(jsii_name="tags")
329
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
330
+ '''Applies one or more tags to the map resource.'''
331
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
332
+
333
+ @tags.setter
334
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
335
+ if __debug__:
336
+ type_hints = typing.get_type_hints(_typecheckingstub__297a793f153416e3131543d9b1a435c125bf1b45672e8ee10841ec34b14e6d66)
337
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
338
+ jsii.set(self, "tags", value)
339
+
340
+ @jsii.data_type(
341
+ jsii_type="aws-cdk-lib.aws_location.CfnAPIKey.ApiKeyRestrictionsProperty",
342
+ jsii_struct_bases=[],
343
+ name_mapping={
344
+ "allow_actions": "allowActions",
345
+ "allow_resources": "allowResources",
346
+ "allow_referers": "allowReferers",
347
+ },
348
+ )
349
+ class ApiKeyRestrictionsProperty:
350
+ def __init__(
351
+ self,
352
+ *,
353
+ allow_actions: typing.Sequence[builtins.str],
354
+ allow_resources: typing.Sequence[builtins.str],
355
+ allow_referers: typing.Optional[typing.Sequence[builtins.str]] = None,
356
+ ) -> None:
357
+ '''API Restrictions on the allowed actions, resources, and referers for an API key resource.
358
+
359
+ :param allow_actions: A list of allowed actions that an API key resource grants permissions to perform. You must have at least one action for each type of resource. For example, if you have a place resource, you must include at least one place action. The following are valid values for the actions. - *Map actions* - ``geo:GetMap*`` - Allows all actions needed for map rendering. - *Place actions* - ``geo:SearchPlaceIndexForText`` - Allows geocoding. - ``geo:SearchPlaceIndexForPosition`` - Allows reverse geocoding. - ``geo:SearchPlaceIndexForSuggestions`` - Allows generating suggestions from text. - ``geo:GetPlace`` - Allows finding a place by place ID. - *Route actions* - ``geo:CalculateRoute`` - Allows point to point routing. - ``geo:CalculateRouteMatrix`` - Allows calculating a matrix of routes. .. epigraph:: You must use these strings exactly. For example, to provide access to map rendering, the only valid action is ``geo:GetMap*`` as an input to the list. ``["geo:GetMap*"]`` is valid but ``["geo:GetMapTile"]`` is not. Similarly, you cannot use ``["geo:SearchPlaceIndexFor*"]`` - you must list each of the Place actions separately.
360
+ :param allow_resources: A list of allowed resource ARNs that a API key bearer can perform actions on. - The ARN must be the correct ARN for a map, place, or route ARN. You may include wildcards in the resource-id to match multiple resources of the same type. - The resources must be in the same ``partition`` , ``region`` , and ``account-id`` as the key that is being created. - Other than wildcards, you must include the full ARN, including the ``arn`` , ``partition`` , ``service`` , ``region`` , ``account-id`` and ``resource-id`` delimited by colons (:). - No spaces allowed, even with wildcards. For example, ``arn:aws:geo:region: *account-id* :map/ExampleMap*`` . For more information about ARN format, see `Amazon Resource Names (ARNs) <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html>`_ .
361
+ :param allow_referers: An optional list of allowed HTTP referers for which requests must originate from. Requests using this API key from other domains will not be allowed. Requirements: - Contain only alphanumeric characters (A–Z, a–z, 0–9) or any symbols in this list ``$\\-._+!*``(),;/?:@=&` - May contain a percent (%) if followed by 2 hexadecimal digits (A-F, a-f, 0-9); this is used for URL encoding purposes. - May contain wildcard characters question mark (?) and asterisk (*). Question mark (?) will replace any single character (including hexadecimal digits). Asterisk (*) will replace any multiple characters (including multiple hexadecimal digits). - No spaces allowed. For example, ``https://example.com`` .
362
+
363
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-apikeyrestrictions.html
364
+ :exampleMetadata: fixture=_generated
365
+
366
+ Example::
367
+
368
+ # The code below shows an example of how to instantiate this type.
369
+ # The values are placeholders you should change.
370
+ from aws_cdk import aws_location as location
371
+
372
+ api_key_restrictions_property = location.CfnAPIKey.ApiKeyRestrictionsProperty(
373
+ allow_actions=["allowActions"],
374
+ allow_resources=["allowResources"],
375
+
376
+ # the properties below are optional
377
+ allow_referers=["allowReferers"]
378
+ )
379
+ '''
380
+ if __debug__:
381
+ type_hints = typing.get_type_hints(_typecheckingstub__0c74737f1e32f7583c8c63e1c8de07d36792e8e3aee5f799d6c8a265f1a3bebb)
382
+ check_type(argname="argument allow_actions", value=allow_actions, expected_type=type_hints["allow_actions"])
383
+ check_type(argname="argument allow_resources", value=allow_resources, expected_type=type_hints["allow_resources"])
384
+ check_type(argname="argument allow_referers", value=allow_referers, expected_type=type_hints["allow_referers"])
385
+ self._values: typing.Dict[builtins.str, typing.Any] = {
386
+ "allow_actions": allow_actions,
387
+ "allow_resources": allow_resources,
388
+ }
389
+ if allow_referers is not None:
390
+ self._values["allow_referers"] = allow_referers
391
+
392
+ @builtins.property
393
+ def allow_actions(self) -> typing.List[builtins.str]:
394
+ '''A list of allowed actions that an API key resource grants permissions to perform.
395
+
396
+ You must have at least one action for each type of resource. For example, if you have a place resource, you must include at least one place action.
397
+
398
+ The following are valid values for the actions.
399
+
400
+ - *Map actions*
401
+ - ``geo:GetMap*`` - Allows all actions needed for map rendering.
402
+ - *Place actions*
403
+ - ``geo:SearchPlaceIndexForText`` - Allows geocoding.
404
+ - ``geo:SearchPlaceIndexForPosition`` - Allows reverse geocoding.
405
+ - ``geo:SearchPlaceIndexForSuggestions`` - Allows generating suggestions from text.
406
+ - ``geo:GetPlace`` - Allows finding a place by place ID.
407
+ - *Route actions*
408
+ - ``geo:CalculateRoute`` - Allows point to point routing.
409
+ - ``geo:CalculateRouteMatrix`` - Allows calculating a matrix of routes.
410
+
411
+ .. epigraph::
412
+
413
+ You must use these strings exactly. For example, to provide access to map rendering, the only valid action is ``geo:GetMap*`` as an input to the list. ``["geo:GetMap*"]`` is valid but ``["geo:GetMapTile"]`` is not. Similarly, you cannot use ``["geo:SearchPlaceIndexFor*"]`` - you must list each of the Place actions separately.
414
+
415
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-apikeyrestrictions.html#cfn-location-apikey-apikeyrestrictions-allowactions
416
+ '''
417
+ result = self._values.get("allow_actions")
418
+ assert result is not None, "Required property 'allow_actions' is missing"
419
+ return typing.cast(typing.List[builtins.str], result)
420
+
421
+ @builtins.property
422
+ def allow_resources(self) -> typing.List[builtins.str]:
423
+ '''A list of allowed resource ARNs that a API key bearer can perform actions on.
424
+
425
+ - The ARN must be the correct ARN for a map, place, or route ARN. You may include wildcards in the resource-id to match multiple resources of the same type.
426
+ - The resources must be in the same ``partition`` , ``region`` , and ``account-id`` as the key that is being created.
427
+ - Other than wildcards, you must include the full ARN, including the ``arn`` , ``partition`` , ``service`` , ``region`` , ``account-id`` and ``resource-id`` delimited by colons (:).
428
+ - No spaces allowed, even with wildcards. For example, ``arn:aws:geo:region: *account-id* :map/ExampleMap*`` .
429
+
430
+ For more information about ARN format, see `Amazon Resource Names (ARNs) <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html>`_ .
431
+
432
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-apikeyrestrictions.html#cfn-location-apikey-apikeyrestrictions-allowresources
433
+ '''
434
+ result = self._values.get("allow_resources")
435
+ assert result is not None, "Required property 'allow_resources' is missing"
436
+ return typing.cast(typing.List[builtins.str], result)
437
+
438
+ @builtins.property
439
+ def allow_referers(self) -> typing.Optional[typing.List[builtins.str]]:
440
+ '''An optional list of allowed HTTP referers for which requests must originate from.
441
+
442
+ Requests using this API key from other domains will not be allowed.
443
+
444
+ Requirements:
445
+
446
+ - Contain only alphanumeric characters (A–Z, a–z, 0–9) or any symbols in this list ``$\\-._+!*``(),;/?:@=&`
447
+ - May contain a percent (%) if followed by 2 hexadecimal digits (A-F, a-f, 0-9); this is used for URL encoding purposes.
448
+ - May contain wildcard characters question mark (?) and asterisk (*).
449
+
450
+ Question mark (?) will replace any single character (including hexadecimal digits).
451
+
452
+ Asterisk (*) will replace any multiple characters (including multiple hexadecimal digits).
453
+
454
+ - No spaces allowed. For example, ``https://example.com`` .
455
+
456
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-apikeyrestrictions.html#cfn-location-apikey-apikeyrestrictions-allowreferers
457
+ '''
458
+ result = self._values.get("allow_referers")
459
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
460
+
461
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
462
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
463
+
464
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
465
+ return not (rhs == self)
466
+
467
+ def __repr__(self) -> str:
468
+ return "ApiKeyRestrictionsProperty(%s)" % ", ".join(
469
+ k + "=" + repr(v) for k, v in self._values.items()
470
+ )
471
+
472
+
473
+ @jsii.data_type(
474
+ jsii_type="aws-cdk-lib.aws_location.CfnAPIKeyProps",
475
+ jsii_struct_bases=[],
476
+ name_mapping={
477
+ "key_name": "keyName",
478
+ "restrictions": "restrictions",
479
+ "description": "description",
480
+ "expire_time": "expireTime",
481
+ "force_delete": "forceDelete",
482
+ "force_update": "forceUpdate",
483
+ "no_expiry": "noExpiry",
484
+ "tags": "tags",
485
+ },
486
+ )
487
+ class CfnAPIKeyProps:
488
+ def __init__(
489
+ self,
490
+ *,
491
+ key_name: builtins.str,
492
+ restrictions: typing.Union[_IResolvable_da3f097b, typing.Union[CfnAPIKey.ApiKeyRestrictionsProperty, typing.Dict[builtins.str, typing.Any]]],
493
+ description: typing.Optional[builtins.str] = None,
494
+ expire_time: typing.Optional[builtins.str] = None,
495
+ force_delete: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
496
+ force_update: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
497
+ no_expiry: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
498
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
499
+ ) -> None:
500
+ '''Properties for defining a ``CfnAPIKey``.
501
+
502
+ :param key_name: A custom name for the API key resource. Requirements: - Contain only alphanumeric characters (A–Z, a–z, 0–9), hyphens (-), periods (.), and underscores (_). - Must be a unique API key name. - No spaces allowed. For example, ``ExampleAPIKey`` .
503
+ :param restrictions: The API key restrictions for the API key resource.
504
+ :param description: Updates the description for the API key resource.
505
+ :param expire_time: The optional timestamp for when the API key resource will expire in `ISO 8601 format <https://docs.aws.amazon.com/https://www.iso.org/iso-8601-date-and-time-format.html>`_ .
506
+ :param force_delete: ForceDelete bypasses an API key's expiry conditions and deletes the key. Set the parameter ``true`` to delete the key or to ``false`` to not preemptively delete the API key. Valid values: ``true`` , or ``false`` . .. epigraph:: This action is irreversible. Only use ForceDelete if you are certain the key is no longer in use.
507
+ :param force_update: The boolean flag to be included for updating ``ExpireTime`` or Restrictions details. Must be set to ``true`` to update an API key resource that has been used in the past 7 days. ``False`` if force update is not preferred.
508
+ :param no_expiry: Whether the API key should expire. Set to ``true`` to set the API key to have no expiration time.
509
+ :param tags: Applies one or more tags to the map resource. A tag is a key-value pair that helps manage, identify, search, and filter your resources by labelling them.
510
+
511
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html
512
+ :exampleMetadata: fixture=_generated
513
+
514
+ Example::
515
+
516
+ # The code below shows an example of how to instantiate this type.
517
+ # The values are placeholders you should change.
518
+ from aws_cdk import aws_location as location
519
+
520
+ cfn_aPIKey_props = location.CfnAPIKeyProps(
521
+ key_name="keyName",
522
+ restrictions=location.CfnAPIKey.ApiKeyRestrictionsProperty(
523
+ allow_actions=["allowActions"],
524
+ allow_resources=["allowResources"],
525
+
526
+ # the properties below are optional
527
+ allow_referers=["allowReferers"]
528
+ ),
529
+
530
+ # the properties below are optional
531
+ description="description",
532
+ expire_time="expireTime",
533
+ force_delete=False,
534
+ force_update=False,
535
+ no_expiry=False,
536
+ tags=[CfnTag(
537
+ key="key",
538
+ value="value"
539
+ )]
540
+ )
541
+ '''
542
+ if __debug__:
543
+ type_hints = typing.get_type_hints(_typecheckingstub__ebe99c80388f80e304ec3579f14c21edc069b0865131b2673a8f49e8274c07f4)
544
+ check_type(argname="argument key_name", value=key_name, expected_type=type_hints["key_name"])
545
+ check_type(argname="argument restrictions", value=restrictions, expected_type=type_hints["restrictions"])
546
+ check_type(argname="argument description", value=description, expected_type=type_hints["description"])
547
+ check_type(argname="argument expire_time", value=expire_time, expected_type=type_hints["expire_time"])
548
+ check_type(argname="argument force_delete", value=force_delete, expected_type=type_hints["force_delete"])
549
+ check_type(argname="argument force_update", value=force_update, expected_type=type_hints["force_update"])
550
+ check_type(argname="argument no_expiry", value=no_expiry, expected_type=type_hints["no_expiry"])
551
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
552
+ self._values: typing.Dict[builtins.str, typing.Any] = {
553
+ "key_name": key_name,
554
+ "restrictions": restrictions,
555
+ }
556
+ if description is not None:
557
+ self._values["description"] = description
558
+ if expire_time is not None:
559
+ self._values["expire_time"] = expire_time
560
+ if force_delete is not None:
561
+ self._values["force_delete"] = force_delete
562
+ if force_update is not None:
563
+ self._values["force_update"] = force_update
564
+ if no_expiry is not None:
565
+ self._values["no_expiry"] = no_expiry
566
+ if tags is not None:
567
+ self._values["tags"] = tags
568
+
569
+ @builtins.property
570
+ def key_name(self) -> builtins.str:
571
+ '''A custom name for the API key resource.
572
+
573
+ Requirements:
574
+
575
+ - Contain only alphanumeric characters (A–Z, a–z, 0–9), hyphens (-), periods (.), and underscores (_).
576
+ - Must be a unique API key name.
577
+ - No spaces allowed. For example, ``ExampleAPIKey`` .
578
+
579
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html#cfn-location-apikey-keyname
580
+ '''
581
+ result = self._values.get("key_name")
582
+ assert result is not None, "Required property 'key_name' is missing"
583
+ return typing.cast(builtins.str, result)
584
+
585
+ @builtins.property
586
+ def restrictions(
587
+ self,
588
+ ) -> typing.Union[_IResolvable_da3f097b, CfnAPIKey.ApiKeyRestrictionsProperty]:
589
+ '''The API key restrictions for the API key resource.
590
+
591
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html#cfn-location-apikey-restrictions
592
+ '''
593
+ result = self._values.get("restrictions")
594
+ assert result is not None, "Required property 'restrictions' is missing"
595
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnAPIKey.ApiKeyRestrictionsProperty], result)
596
+
597
+ @builtins.property
598
+ def description(self) -> typing.Optional[builtins.str]:
599
+ '''Updates the description for the API key resource.
600
+
601
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html#cfn-location-apikey-description
602
+ '''
603
+ result = self._values.get("description")
604
+ return typing.cast(typing.Optional[builtins.str], result)
605
+
606
+ @builtins.property
607
+ def expire_time(self) -> typing.Optional[builtins.str]:
608
+ '''The optional timestamp for when the API key resource will expire in `ISO 8601 format <https://docs.aws.amazon.com/https://www.iso.org/iso-8601-date-and-time-format.html>`_ .
609
+
610
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html#cfn-location-apikey-expiretime
611
+ '''
612
+ result = self._values.get("expire_time")
613
+ return typing.cast(typing.Optional[builtins.str], result)
614
+
615
+ @builtins.property
616
+ def force_delete(
617
+ self,
618
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
619
+ '''ForceDelete bypasses an API key's expiry conditions and deletes the key.
620
+
621
+ Set the parameter ``true`` to delete the key or to ``false`` to not preemptively delete the API key.
622
+
623
+ Valid values: ``true`` , or ``false`` .
624
+ .. epigraph::
625
+
626
+ This action is irreversible. Only use ForceDelete if you are certain the key is no longer in use.
627
+
628
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html#cfn-location-apikey-forcedelete
629
+ '''
630
+ result = self._values.get("force_delete")
631
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
632
+
633
+ @builtins.property
634
+ def force_update(
635
+ self,
636
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
637
+ '''The boolean flag to be included for updating ``ExpireTime`` or Restrictions details.
638
+
639
+ Must be set to ``true`` to update an API key resource that has been used in the past 7 days. ``False`` if force update is not preferred.
640
+
641
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html#cfn-location-apikey-forceupdate
642
+ '''
643
+ result = self._values.get("force_update")
644
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
645
+
646
+ @builtins.property
647
+ def no_expiry(
648
+ self,
649
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
650
+ '''Whether the API key should expire.
651
+
652
+ Set to ``true`` to set the API key to have no expiration time.
653
+
654
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html#cfn-location-apikey-noexpiry
655
+ '''
656
+ result = self._values.get("no_expiry")
657
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
658
+
659
+ @builtins.property
660
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
661
+ '''Applies one or more tags to the map resource.
662
+
663
+ A tag is a key-value pair that helps manage, identify, search, and filter your resources by labelling them.
664
+
665
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html#cfn-location-apikey-tags
666
+ '''
667
+ result = self._values.get("tags")
668
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
669
+
670
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
671
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
672
+
673
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
674
+ return not (rhs == self)
675
+
676
+ def __repr__(self) -> str:
677
+ return "CfnAPIKeyProps(%s)" % ", ".join(
678
+ k + "=" + repr(v) for k, v in self._values.items()
679
+ )
680
+
681
+
56
682
  @jsii.implements(_IInspectable_c2943556)
57
683
  class CfnGeofenceCollection(
58
684
  _CfnResource_9df397a6,
@@ -78,7 +704,11 @@ class CfnGeofenceCollection(
78
704
  description="description",
79
705
  kms_key_id="kmsKeyId",
80
706
  pricing_plan="pricingPlan",
81
- pricing_plan_data_source="pricingPlanDataSource"
707
+ pricing_plan_data_source="pricingPlanDataSource",
708
+ tags=[CfnTag(
709
+ key="key",
710
+ value="value"
711
+ )]
82
712
  )
83
713
  '''
84
714
 
@@ -92,6 +722,7 @@ class CfnGeofenceCollection(
92
722
  kms_key_id: typing.Optional[builtins.str] = None,
93
723
  pricing_plan: typing.Optional[builtins.str] = None,
94
724
  pricing_plan_data_source: typing.Optional[builtins.str] = None,
725
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
95
726
  ) -> None:
96
727
  '''
97
728
  :param scope: Scope in which this resource is defined.
@@ -101,6 +732,7 @@ class CfnGeofenceCollection(
101
732
  :param kms_key_id: A key identifier for an `AWS KMS customer managed key <https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html>`_ . Enter a key ID, key ARN, alias name, or alias ARN.
102
733
  :param pricing_plan:
103
734
  :param pricing_plan_data_source:
735
+ :param tags: Applies one or more tags to the geofence collection. A tag is a key-value pair helps manage, identify, search, and filter your resources by labelling them. Format: ``"key" : "value"`` Restrictions: - Maximum 50 tags per resource - Each resource tag must be unique with a maximum of one value. - Maximum key length: 128 Unicode characters in UTF-8 - Maximum value length: 256 Unicode characters in UTF-8 - Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : /
104
736
  '''
105
737
  if __debug__:
106
738
  type_hints = typing.get_type_hints(_typecheckingstub__8e0601ccc1fece7d46bccf997c94a7f51bea09a1590d5ce84823ed5c0b2041c1)
@@ -112,6 +744,7 @@ class CfnGeofenceCollection(
112
744
  kms_key_id=kms_key_id,
113
745
  pricing_plan=pricing_plan,
114
746
  pricing_plan_data_source=pricing_plan_data_source,
747
+ tags=tags,
115
748
  )
116
749
 
117
750
  jsii.create(self.__class__, self, [scope, id, props])
@@ -268,6 +901,19 @@ class CfnGeofenceCollection(
268
901
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
269
902
  jsii.set(self, "pricingPlanDataSource", value)
270
903
 
904
+ @builtins.property
905
+ @jsii.member(jsii_name="tags")
906
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
907
+ '''Applies one or more tags to the geofence collection.'''
908
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
909
+
910
+ @tags.setter
911
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
912
+ if __debug__:
913
+ type_hints = typing.get_type_hints(_typecheckingstub__73c685a12991ff080fc342ecb024cac707829ec5c29f69506f34e69631875f71)
914
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
915
+ jsii.set(self, "tags", value)
916
+
271
917
 
272
918
  @jsii.data_type(
273
919
  jsii_type="aws-cdk-lib.aws_location.CfnGeofenceCollectionProps",
@@ -278,6 +924,7 @@ class CfnGeofenceCollection(
278
924
  "kms_key_id": "kmsKeyId",
279
925
  "pricing_plan": "pricingPlan",
280
926
  "pricing_plan_data_source": "pricingPlanDataSource",
927
+ "tags": "tags",
281
928
  },
282
929
  )
283
930
  class CfnGeofenceCollectionProps:
@@ -289,6 +936,7 @@ class CfnGeofenceCollectionProps:
289
936
  kms_key_id: typing.Optional[builtins.str] = None,
290
937
  pricing_plan: typing.Optional[builtins.str] = None,
291
938
  pricing_plan_data_source: typing.Optional[builtins.str] = None,
939
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
292
940
  ) -> None:
293
941
  '''Properties for defining a ``CfnGeofenceCollection``.
294
942
 
@@ -297,6 +945,7 @@ class CfnGeofenceCollectionProps:
297
945
  :param kms_key_id: A key identifier for an `AWS KMS customer managed key <https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html>`_ . Enter a key ID, key ARN, alias name, or alias ARN.
298
946
  :param pricing_plan:
299
947
  :param pricing_plan_data_source:
948
+ :param tags: Applies one or more tags to the geofence collection. A tag is a key-value pair helps manage, identify, search, and filter your resources by labelling them. Format: ``"key" : "value"`` Restrictions: - Maximum 50 tags per resource - Each resource tag must be unique with a maximum of one value. - Maximum key length: 128 Unicode characters in UTF-8 - Maximum value length: 256 Unicode characters in UTF-8 - Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : /
300
949
 
301
950
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-geofencecollection.html
302
951
  :exampleMetadata: fixture=_generated
@@ -314,7 +963,11 @@ class CfnGeofenceCollectionProps:
314
963
  description="description",
315
964
  kms_key_id="kmsKeyId",
316
965
  pricing_plan="pricingPlan",
317
- pricing_plan_data_source="pricingPlanDataSource"
966
+ pricing_plan_data_source="pricingPlanDataSource",
967
+ tags=[CfnTag(
968
+ key="key",
969
+ value="value"
970
+ )]
318
971
  )
319
972
  '''
320
973
  if __debug__:
@@ -324,6 +977,7 @@ class CfnGeofenceCollectionProps:
324
977
  check_type(argname="argument kms_key_id", value=kms_key_id, expected_type=type_hints["kms_key_id"])
325
978
  check_type(argname="argument pricing_plan", value=pricing_plan, expected_type=type_hints["pricing_plan"])
326
979
  check_type(argname="argument pricing_plan_data_source", value=pricing_plan_data_source, expected_type=type_hints["pricing_plan_data_source"])
980
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
327
981
  self._values: typing.Dict[builtins.str, typing.Any] = {
328
982
  "collection_name": collection_name,
329
983
  }
@@ -335,6 +989,8 @@ class CfnGeofenceCollectionProps:
335
989
  self._values["pricing_plan"] = pricing_plan
336
990
  if pricing_plan_data_source is not None:
337
991
  self._values["pricing_plan_data_source"] = pricing_plan_data_source
992
+ if tags is not None:
993
+ self._values["tags"] = tags
338
994
 
339
995
  @builtins.property
340
996
  def collection_name(self) -> builtins.str:
@@ -392,6 +1048,32 @@ class CfnGeofenceCollectionProps:
392
1048
  result = self._values.get("pricing_plan_data_source")
393
1049
  return typing.cast(typing.Optional[builtins.str], result)
394
1050
 
1051
+ @builtins.property
1052
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
1053
+ '''Applies one or more tags to the geofence collection.
1054
+
1055
+ A tag is a key-value pair helps manage, identify, search, and filter your resources by labelling them.
1056
+
1057
+ Format: ``"key" : "value"``
1058
+
1059
+ Restrictions:
1060
+
1061
+ - Maximum 50 tags per resource
1062
+ - Each resource tag must be unique with a maximum of one value.
1063
+ - Maximum key length: 128 Unicode characters in UTF-8
1064
+ - Maximum value length: 256 Unicode characters in UTF-8
1065
+ - Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : /
1066
+
1067
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-geofencecollection.html#cfn-location-geofencecollection-tags
1068
+ ::
1069
+
1070
+ .
1071
+
1072
+ - Cannot use "aws:" as a prefix for a key.
1073
+ '''
1074
+ result = self._values.get("tags")
1075
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
1076
+
395
1077
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
396
1078
  return isinstance(rhs, self.__class__) and rhs._values == self._values
397
1079
 
@@ -424,13 +1106,20 @@ class CfnMap(
424
1106
 
425
1107
  cfn_map = location.CfnMap(self, "MyCfnMap",
426
1108
  configuration=location.CfnMap.MapConfigurationProperty(
427
- style="style"
1109
+ style="style",
1110
+
1111
+ # the properties below are optional
1112
+ political_view="politicalView"
428
1113
  ),
429
1114
  map_name="mapName",
430
1115
 
431
1116
  # the properties below are optional
432
1117
  description="description",
433
- pricing_plan="pricingPlan"
1118
+ pricing_plan="pricingPlan",
1119
+ tags=[CfnTag(
1120
+ key="key",
1121
+ value="value"
1122
+ )]
434
1123
  )
435
1124
  '''
436
1125
 
@@ -443,6 +1132,7 @@ class CfnMap(
443
1132
  map_name: builtins.str,
444
1133
  description: typing.Optional[builtins.str] = None,
445
1134
  pricing_plan: typing.Optional[builtins.str] = None,
1135
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
446
1136
  ) -> None:
447
1137
  '''
448
1138
  :param scope: Scope in which this resource is defined.
@@ -451,6 +1141,7 @@ class CfnMap(
451
1141
  :param map_name: The name for the map resource. Requirements: - Must contain only alphanumeric characters (A–Z, a–z, 0–9), hyphens (-), periods (.), and underscores (_). - Must be a unique map resource name. - No spaces allowed. For example, ``ExampleMap`` .
452
1142
  :param description: An optional description for the map resource.
453
1143
  :param pricing_plan: No longer used. If included, the only allowed value is ``RequestBasedUsage`` . *Allowed Values* : ``RequestBasedUsage``
1144
+ :param tags: Applies one or more tags to the map resource. A tag is a key-value pair helps manage, identify, search, and filter your resources by labelling them. Format: ``"key" : "value"`` Restrictions: - Maximum 50 tags per resource - Each resource tag must be unique with a maximum of one value. - Maximum key length: 128 Unicode characters in UTF-8 - Maximum value length: 256 Unicode characters in UTF-8 - Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : /
454
1145
  '''
455
1146
  if __debug__:
456
1147
  type_hints = typing.get_type_hints(_typecheckingstub__b2dcb0428eb66932a1afc7be03e22130166237e903d48b7c13fc63dbc8f17b8a)
@@ -461,6 +1152,7 @@ class CfnMap(
461
1152
  map_name=map_name,
462
1153
  description=description,
463
1154
  pricing_plan=pricing_plan,
1155
+ tags=tags,
464
1156
  )
465
1157
 
466
1158
  jsii.create(self.__class__, self, [scope, id, props])
@@ -518,8 +1210,7 @@ class CfnMap(
518
1210
  @builtins.property
519
1211
  @jsii.member(jsii_name="attrDataSource")
520
1212
  def attr_data_source(self) -> builtins.str:
521
- '''The data provider for the associated map tiles.
522
-
1213
+ '''
523
1214
  :cloudformationAttribute: DataSource
524
1215
  '''
525
1216
  return typing.cast(builtins.str, jsii.get(self, "attrDataSource"))
@@ -611,16 +1302,35 @@ class CfnMap(
611
1302
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
612
1303
  jsii.set(self, "pricingPlan", value)
613
1304
 
1305
+ @builtins.property
1306
+ @jsii.member(jsii_name="tags")
1307
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
1308
+ '''Applies one or more tags to the map resource.'''
1309
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
1310
+
1311
+ @tags.setter
1312
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
1313
+ if __debug__:
1314
+ type_hints = typing.get_type_hints(_typecheckingstub__bb33fbdbbd66a87cdef71cb76784ef3bcdea2208fa231444865a3178588b36c6)
1315
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1316
+ jsii.set(self, "tags", value)
1317
+
614
1318
  @jsii.data_type(
615
1319
  jsii_type="aws-cdk-lib.aws_location.CfnMap.MapConfigurationProperty",
616
1320
  jsii_struct_bases=[],
617
- name_mapping={"style": "style"},
1321
+ name_mapping={"style": "style", "political_view": "politicalView"},
618
1322
  )
619
1323
  class MapConfigurationProperty:
620
- def __init__(self, *, style: builtins.str) -> None:
1324
+ def __init__(
1325
+ self,
1326
+ *,
1327
+ style: builtins.str,
1328
+ political_view: typing.Optional[builtins.str] = None,
1329
+ ) -> None:
621
1330
  '''Specifies the map tile style selected from an available provider.
622
1331
 
623
1332
  :param style: Specifies the map style selected from an available data provider. Valid `Esri map styles <https://docs.aws.amazon.com/location/latest/developerguide/esri.html>`_ : - ``VectorEsriDarkGrayCanvas`` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content. - ``RasterEsriImagery`` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. - ``VectorEsriLightGrayCanvas`` – The Esri Light Gray Canvas map style, which provides a detailed vector basemap with a light gray, neutral background style with minimal colors, labels, and features that's designed to draw attention to your thematic content. - ``VectorEsriTopographic`` – The Esri Light map style, which provides a detailed vector basemap with a classic Esri map style. - ``VectorEsriStreets`` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map. - ``VectorEsriNavigation`` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices. Valid `HERE Technologies map styles <https://docs.aws.amazon.com/location/latest/developerguide/HERE.html>`_ : - ``VectorHereContrast`` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering. .. epigraph:: The ``VectorHereContrast`` style has been renamed from ``VectorHereBerlin`` . ``VectorHereBerlin`` has been deprecated, but will continue to work in applications that use it. - ``VectorHereExplore`` – A default HERE map style containing a neutral, global map and its features including roads, buildings, landmarks, and water features. It also now includes a fully designed map of Japan. - ``VectorHereExploreTruck`` – A global map containing truck restrictions and attributes (e.g. width / height / HAZMAT) symbolized with highlighted segments and icons on top of HERE Explore to support use cases within transport and logistics. - ``RasterHereExploreSatellite`` – A global map containing high resolution satellite imagery. - ``HybridHereExploreSatellite`` – A global map displaying the road network, street names, and city labels over satellite imagery. This style will automatically retrieve both raster and vector tiles, and your charges will be based on total tiles retrieved. .. epigraph:: Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved. Valid `GrabMaps map styles <https://docs.aws.amazon.com/location/latest/developerguide/grab.html>`_ : - ``VectorGrabStandardLight`` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia. - ``VectorGrabStandardDark`` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia. .. epigraph:: Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( ``ap-southeast-1`` ). For more information, see `GrabMaps countries and area covered <https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area>`_ . Valid `Open Data map styles <https://docs.aws.amazon.com/location/latest/developerguide/open-data.html>`_ : - ``VectorOpenDataStandardLight`` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. - ``VectorOpenDataStandardDark`` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. - ``VectorOpenDataVisualizationLight`` – The Open Data Visualization Light map style is a light-themed style with muted colors and fewer features that aids in understanding overlaid data. - ``VectorOpenDataVisualizationDark`` – The Open Data Visualization Dark map style is a dark-themed style with muted colors and fewer features that aids in understanding overlaid data.
1333
+ :param political_view: Specifies the map political view selected from an available data provider.
624
1334
 
625
1335
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-map-mapconfiguration.html
626
1336
  :exampleMetadata: fixture=_generated
@@ -632,15 +1342,21 @@ class CfnMap(
632
1342
  from aws_cdk import aws_location as location
633
1343
 
634
1344
  map_configuration_property = location.CfnMap.MapConfigurationProperty(
635
- style="style"
1345
+ style="style",
1346
+
1347
+ # the properties below are optional
1348
+ political_view="politicalView"
636
1349
  )
637
1350
  '''
638
1351
  if __debug__:
639
1352
  type_hints = typing.get_type_hints(_typecheckingstub__f994438dc4a55ff175f7c8b92debb9548b8c21e2896a0380a521bcdba4e2a0d6)
640
1353
  check_type(argname="argument style", value=style, expected_type=type_hints["style"])
1354
+ check_type(argname="argument political_view", value=political_view, expected_type=type_hints["political_view"])
641
1355
  self._values: typing.Dict[builtins.str, typing.Any] = {
642
1356
  "style": style,
643
1357
  }
1358
+ if political_view is not None:
1359
+ self._values["political_view"] = political_view
644
1360
 
645
1361
  @builtins.property
646
1362
  def style(self) -> builtins.str:
@@ -694,6 +1410,15 @@ class CfnMap(
694
1410
  assert result is not None, "Required property 'style' is missing"
695
1411
  return typing.cast(builtins.str, result)
696
1412
 
1413
+ @builtins.property
1414
+ def political_view(self) -> typing.Optional[builtins.str]:
1415
+ '''Specifies the map political view selected from an available data provider.
1416
+
1417
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-map-mapconfiguration.html#cfn-location-map-mapconfiguration-politicalview
1418
+ '''
1419
+ result = self._values.get("political_view")
1420
+ return typing.cast(typing.Optional[builtins.str], result)
1421
+
697
1422
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
698
1423
  return isinstance(rhs, self.__class__) and rhs._values == self._values
699
1424
 
@@ -714,6 +1439,7 @@ class CfnMap(
714
1439
  "map_name": "mapName",
715
1440
  "description": "description",
716
1441
  "pricing_plan": "pricingPlan",
1442
+ "tags": "tags",
717
1443
  },
718
1444
  )
719
1445
  class CfnMapProps:
@@ -724,6 +1450,7 @@ class CfnMapProps:
724
1450
  map_name: builtins.str,
725
1451
  description: typing.Optional[builtins.str] = None,
726
1452
  pricing_plan: typing.Optional[builtins.str] = None,
1453
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
727
1454
  ) -> None:
728
1455
  '''Properties for defining a ``CfnMap``.
729
1456
 
@@ -731,6 +1458,7 @@ class CfnMapProps:
731
1458
  :param map_name: The name for the map resource. Requirements: - Must contain only alphanumeric characters (A–Z, a–z, 0–9), hyphens (-), periods (.), and underscores (_). - Must be a unique map resource name. - No spaces allowed. For example, ``ExampleMap`` .
732
1459
  :param description: An optional description for the map resource.
733
1460
  :param pricing_plan: No longer used. If included, the only allowed value is ``RequestBasedUsage`` . *Allowed Values* : ``RequestBasedUsage``
1461
+ :param tags: Applies one or more tags to the map resource. A tag is a key-value pair helps manage, identify, search, and filter your resources by labelling them. Format: ``"key" : "value"`` Restrictions: - Maximum 50 tags per resource - Each resource tag must be unique with a maximum of one value. - Maximum key length: 128 Unicode characters in UTF-8 - Maximum value length: 256 Unicode characters in UTF-8 - Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : /
734
1462
 
735
1463
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-map.html
736
1464
  :exampleMetadata: fixture=_generated
@@ -743,13 +1471,20 @@ class CfnMapProps:
743
1471
 
744
1472
  cfn_map_props = location.CfnMapProps(
745
1473
  configuration=location.CfnMap.MapConfigurationProperty(
746
- style="style"
1474
+ style="style",
1475
+
1476
+ # the properties below are optional
1477
+ political_view="politicalView"
747
1478
  ),
748
1479
  map_name="mapName",
749
1480
 
750
1481
  # the properties below are optional
751
1482
  description="description",
752
- pricing_plan="pricingPlan"
1483
+ pricing_plan="pricingPlan",
1484
+ tags=[CfnTag(
1485
+ key="key",
1486
+ value="value"
1487
+ )]
753
1488
  )
754
1489
  '''
755
1490
  if __debug__:
@@ -758,6 +1493,7 @@ class CfnMapProps:
758
1493
  check_type(argname="argument map_name", value=map_name, expected_type=type_hints["map_name"])
759
1494
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
760
1495
  check_type(argname="argument pricing_plan", value=pricing_plan, expected_type=type_hints["pricing_plan"])
1496
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
761
1497
  self._values: typing.Dict[builtins.str, typing.Any] = {
762
1498
  "configuration": configuration,
763
1499
  "map_name": map_name,
@@ -766,6 +1502,8 @@ class CfnMapProps:
766
1502
  self._values["description"] = description
767
1503
  if pricing_plan is not None:
768
1504
  self._values["pricing_plan"] = pricing_plan
1505
+ if tags is not None:
1506
+ self._values["tags"] = tags
769
1507
 
770
1508
  @builtins.property
771
1509
  def configuration(
@@ -817,6 +1555,32 @@ class CfnMapProps:
817
1555
  result = self._values.get("pricing_plan")
818
1556
  return typing.cast(typing.Optional[builtins.str], result)
819
1557
 
1558
+ @builtins.property
1559
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
1560
+ '''Applies one or more tags to the map resource.
1561
+
1562
+ A tag is a key-value pair helps manage, identify, search, and filter your resources by labelling them.
1563
+
1564
+ Format: ``"key" : "value"``
1565
+
1566
+ Restrictions:
1567
+
1568
+ - Maximum 50 tags per resource
1569
+ - Each resource tag must be unique with a maximum of one value.
1570
+ - Maximum key length: 128 Unicode characters in UTF-8
1571
+ - Maximum value length: 256 Unicode characters in UTF-8
1572
+ - Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : /
1573
+
1574
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-map.html#cfn-location-map-tags
1575
+ ::
1576
+
1577
+ .
1578
+
1579
+ - Cannot use "aws:" as a prefix for a key.
1580
+ '''
1581
+ result = self._values.get("tags")
1582
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
1583
+
820
1584
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
821
1585
  return isinstance(rhs, self.__class__) and rhs._values == self._values
822
1586
 
@@ -861,7 +1625,11 @@ class CfnPlaceIndex(
861
1625
  intended_use="intendedUse"
862
1626
  ),
863
1627
  description="description",
864
- pricing_plan="pricingPlan"
1628
+ pricing_plan="pricingPlan",
1629
+ tags=[CfnTag(
1630
+ key="key",
1631
+ value="value"
1632
+ )]
865
1633
  )
866
1634
  '''
867
1635
 
@@ -875,6 +1643,7 @@ class CfnPlaceIndex(
875
1643
  data_source_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPlaceIndex.DataSourceConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
876
1644
  description: typing.Optional[builtins.str] = None,
877
1645
  pricing_plan: typing.Optional[builtins.str] = None,
1646
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
878
1647
  ) -> None:
879
1648
  '''
880
1649
  :param scope: Scope in which this resource is defined.
@@ -884,6 +1653,7 @@ class CfnPlaceIndex(
884
1653
  :param data_source_configuration: Specifies the data storage option requesting Places.
885
1654
  :param description: The optional description for the place index resource.
886
1655
  :param pricing_plan: No longer used. If included, the only allowed value is ``RequestBasedUsage`` . *Allowed Values* : ``RequestBasedUsage``
1656
+ :param tags: An array of key-value pairs to apply to this resource.
887
1657
  '''
888
1658
  if __debug__:
889
1659
  type_hints = typing.get_type_hints(_typecheckingstub__a86efa72874938a7fdd56ee75ab5f3481754256c4e7be12dd321fb8179b36168)
@@ -895,6 +1665,7 @@ class CfnPlaceIndex(
895
1665
  data_source_configuration=data_source_configuration,
896
1666
  description=description,
897
1667
  pricing_plan=pricing_plan,
1668
+ tags=tags,
898
1669
  )
899
1670
 
900
1671
  jsii.create(self.__class__, self, [scope, id, props])
@@ -1049,6 +1820,19 @@ class CfnPlaceIndex(
1049
1820
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1050
1821
  jsii.set(self, "pricingPlan", value)
1051
1822
 
1823
+ @builtins.property
1824
+ @jsii.member(jsii_name="tags")
1825
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
1826
+ '''An array of key-value pairs to apply to this resource.'''
1827
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
1828
+
1829
+ @tags.setter
1830
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
1831
+ if __debug__:
1832
+ type_hints = typing.get_type_hints(_typecheckingstub__a88e3fcbc3fba96f937cf7669a81dcdb84f3dce7ddea1dd5143fcf5e7eaeb70e)
1833
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1834
+ jsii.set(self, "tags", value)
1835
+
1052
1836
  @jsii.data_type(
1053
1837
  jsii_type="aws-cdk-lib.aws_location.CfnPlaceIndex.DataSourceConfigurationProperty",
1054
1838
  jsii_struct_bases=[],
@@ -1121,6 +1905,7 @@ class CfnPlaceIndex(
1121
1905
  "data_source_configuration": "dataSourceConfiguration",
1122
1906
  "description": "description",
1123
1907
  "pricing_plan": "pricingPlan",
1908
+ "tags": "tags",
1124
1909
  },
1125
1910
  )
1126
1911
  class CfnPlaceIndexProps:
@@ -1132,6 +1917,7 @@ class CfnPlaceIndexProps:
1132
1917
  data_source_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPlaceIndex.DataSourceConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1133
1918
  description: typing.Optional[builtins.str] = None,
1134
1919
  pricing_plan: typing.Optional[builtins.str] = None,
1920
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1135
1921
  ) -> None:
1136
1922
  '''Properties for defining a ``CfnPlaceIndex``.
1137
1923
 
@@ -1140,6 +1926,7 @@ class CfnPlaceIndexProps:
1140
1926
  :param data_source_configuration: Specifies the data storage option requesting Places.
1141
1927
  :param description: The optional description for the place index resource.
1142
1928
  :param pricing_plan: No longer used. If included, the only allowed value is ``RequestBasedUsage`` . *Allowed Values* : ``RequestBasedUsage``
1929
+ :param tags: An array of key-value pairs to apply to this resource.
1143
1930
 
1144
1931
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-placeindex.html
1145
1932
  :exampleMetadata: fixture=_generated
@@ -1159,7 +1946,11 @@ class CfnPlaceIndexProps:
1159
1946
  intended_use="intendedUse"
1160
1947
  ),
1161
1948
  description="description",
1162
- pricing_plan="pricingPlan"
1949
+ pricing_plan="pricingPlan",
1950
+ tags=[CfnTag(
1951
+ key="key",
1952
+ value="value"
1953
+ )]
1163
1954
  )
1164
1955
  '''
1165
1956
  if __debug__:
@@ -1169,6 +1960,7 @@ class CfnPlaceIndexProps:
1169
1960
  check_type(argname="argument data_source_configuration", value=data_source_configuration, expected_type=type_hints["data_source_configuration"])
1170
1961
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
1171
1962
  check_type(argname="argument pricing_plan", value=pricing_plan, expected_type=type_hints["pricing_plan"])
1963
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
1172
1964
  self._values: typing.Dict[builtins.str, typing.Any] = {
1173
1965
  "data_source": data_source,
1174
1966
  "index_name": index_name,
@@ -1179,6 +1971,8 @@ class CfnPlaceIndexProps:
1179
1971
  self._values["description"] = description
1180
1972
  if pricing_plan is not None:
1181
1973
  self._values["pricing_plan"] = pricing_plan
1974
+ if tags is not None:
1975
+ self._values["tags"] = tags
1182
1976
 
1183
1977
  @builtins.property
1184
1978
  def data_source(self) -> builtins.str:
@@ -1253,6 +2047,15 @@ class CfnPlaceIndexProps:
1253
2047
  result = self._values.get("pricing_plan")
1254
2048
  return typing.cast(typing.Optional[builtins.str], result)
1255
2049
 
2050
+ @builtins.property
2051
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
2052
+ '''An array of key-value pairs to apply to this resource.
2053
+
2054
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-placeindex.html#cfn-location-placeindex-tags
2055
+ '''
2056
+ result = self._values.get("tags")
2057
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
2058
+
1256
2059
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
1257
2060
  return isinstance(rhs, self.__class__) and rhs._values == self._values
1258
2061
 
@@ -1294,7 +2097,11 @@ class CfnRouteCalculator(
1294
2097
 
1295
2098
  # the properties below are optional
1296
2099
  description="description",
1297
- pricing_plan="pricingPlan"
2100
+ pricing_plan="pricingPlan",
2101
+ tags=[CfnTag(
2102
+ key="key",
2103
+ value="value"
2104
+ )]
1298
2105
  )
1299
2106
  '''
1300
2107
 
@@ -1307,6 +2114,7 @@ class CfnRouteCalculator(
1307
2114
  data_source: builtins.str,
1308
2115
  description: typing.Optional[builtins.str] = None,
1309
2116
  pricing_plan: typing.Optional[builtins.str] = None,
2117
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1310
2118
  ) -> None:
1311
2119
  '''
1312
2120
  :param scope: Scope in which this resource is defined.
@@ -1315,6 +2123,7 @@ class CfnRouteCalculator(
1315
2123
  :param data_source: Specifies the data provider of traffic and road network data. .. epigraph:: This field is case-sensitive. Enter the valid values as shown. For example, entering ``HERE`` returns an error. Valid values include: - ``Esri`` – For additional information about `Esri <https://docs.aws.amazon.com/location/latest/developerguide/esri.html>`_ 's coverage in your region of interest, see `Esri details on street networks and traffic coverage <https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm>`_ . Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km. - ``Grab`` – Grab provides routing functionality for Southeast Asia. For additional information about `GrabMaps <https://docs.aws.amazon.com/location/latest/developerguide/grab.html>`_ ' coverage, see `GrabMaps countries and areas covered <https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area>`_ . - ``Here`` – For additional information about `HERE Technologies <https://docs.aws.amazon.com/location/latest/developerguide/HERE.html>`_ ' coverage in your region of interest, see `HERE car routing coverage <https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html>`_ and `HERE truck routing coverage <https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html>`_ . For additional information , see `Data providers <https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html>`_ on the *Amazon Location Service Developer Guide* .
1316
2124
  :param description: The optional description for the route calculator resource.
1317
2125
  :param pricing_plan: No longer used. If included, the only allowed value is ``RequestBasedUsage`` . *Allowed Values* : ``RequestBasedUsage``
2126
+ :param tags: An array of key-value pairs to apply to this resource.
1318
2127
  '''
1319
2128
  if __debug__:
1320
2129
  type_hints = typing.get_type_hints(_typecheckingstub__a900f380dbd4e0012dcb474730041f91eeaecc9218db4d6163fd730394a66f3a)
@@ -1325,6 +2134,7 @@ class CfnRouteCalculator(
1325
2134
  data_source=data_source,
1326
2135
  description=description,
1327
2136
  pricing_plan=pricing_plan,
2137
+ tags=tags,
1328
2138
  )
1329
2139
 
1330
2140
  jsii.create(self.__class__, self, [scope, id, props])
@@ -1463,6 +2273,19 @@ class CfnRouteCalculator(
1463
2273
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1464
2274
  jsii.set(self, "pricingPlan", value)
1465
2275
 
2276
+ @builtins.property
2277
+ @jsii.member(jsii_name="tags")
2278
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
2279
+ '''An array of key-value pairs to apply to this resource.'''
2280
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
2281
+
2282
+ @tags.setter
2283
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
2284
+ if __debug__:
2285
+ type_hints = typing.get_type_hints(_typecheckingstub__74454734a6df8a4308849a60f8d80541ab1a10fc08d73d9f6faa0474841ec604)
2286
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2287
+ jsii.set(self, "tags", value)
2288
+
1466
2289
 
1467
2290
  @jsii.data_type(
1468
2291
  jsii_type="aws-cdk-lib.aws_location.CfnRouteCalculatorProps",
@@ -1472,6 +2295,7 @@ class CfnRouteCalculator(
1472
2295
  "data_source": "dataSource",
1473
2296
  "description": "description",
1474
2297
  "pricing_plan": "pricingPlan",
2298
+ "tags": "tags",
1475
2299
  },
1476
2300
  )
1477
2301
  class CfnRouteCalculatorProps:
@@ -1482,6 +2306,7 @@ class CfnRouteCalculatorProps:
1482
2306
  data_source: builtins.str,
1483
2307
  description: typing.Optional[builtins.str] = None,
1484
2308
  pricing_plan: typing.Optional[builtins.str] = None,
2309
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1485
2310
  ) -> None:
1486
2311
  '''Properties for defining a ``CfnRouteCalculator``.
1487
2312
 
@@ -1489,6 +2314,7 @@ class CfnRouteCalculatorProps:
1489
2314
  :param data_source: Specifies the data provider of traffic and road network data. .. epigraph:: This field is case-sensitive. Enter the valid values as shown. For example, entering ``HERE`` returns an error. Valid values include: - ``Esri`` – For additional information about `Esri <https://docs.aws.amazon.com/location/latest/developerguide/esri.html>`_ 's coverage in your region of interest, see `Esri details on street networks and traffic coverage <https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm>`_ . Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km. - ``Grab`` – Grab provides routing functionality for Southeast Asia. For additional information about `GrabMaps <https://docs.aws.amazon.com/location/latest/developerguide/grab.html>`_ ' coverage, see `GrabMaps countries and areas covered <https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area>`_ . - ``Here`` – For additional information about `HERE Technologies <https://docs.aws.amazon.com/location/latest/developerguide/HERE.html>`_ ' coverage in your region of interest, see `HERE car routing coverage <https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html>`_ and `HERE truck routing coverage <https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html>`_ . For additional information , see `Data providers <https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html>`_ on the *Amazon Location Service Developer Guide* .
1490
2315
  :param description: The optional description for the route calculator resource.
1491
2316
  :param pricing_plan: No longer used. If included, the only allowed value is ``RequestBasedUsage`` . *Allowed Values* : ``RequestBasedUsage``
2317
+ :param tags: An array of key-value pairs to apply to this resource.
1492
2318
 
1493
2319
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-routecalculator.html
1494
2320
  :exampleMetadata: fixture=_generated
@@ -1505,7 +2331,11 @@ class CfnRouteCalculatorProps:
1505
2331
 
1506
2332
  # the properties below are optional
1507
2333
  description="description",
1508
- pricing_plan="pricingPlan"
2334
+ pricing_plan="pricingPlan",
2335
+ tags=[CfnTag(
2336
+ key="key",
2337
+ value="value"
2338
+ )]
1509
2339
  )
1510
2340
  '''
1511
2341
  if __debug__:
@@ -1514,6 +2344,7 @@ class CfnRouteCalculatorProps:
1514
2344
  check_type(argname="argument data_source", value=data_source, expected_type=type_hints["data_source"])
1515
2345
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
1516
2346
  check_type(argname="argument pricing_plan", value=pricing_plan, expected_type=type_hints["pricing_plan"])
2347
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
1517
2348
  self._values: typing.Dict[builtins.str, typing.Any] = {
1518
2349
  "calculator_name": calculator_name,
1519
2350
  "data_source": data_source,
@@ -1522,6 +2353,8 @@ class CfnRouteCalculatorProps:
1522
2353
  self._values["description"] = description
1523
2354
  if pricing_plan is not None:
1524
2355
  self._values["pricing_plan"] = pricing_plan
2356
+ if tags is not None:
2357
+ self._values["tags"] = tags
1525
2358
 
1526
2359
  @builtins.property
1527
2360
  def calculator_name(self) -> builtins.str:
@@ -1584,6 +2417,15 @@ class CfnRouteCalculatorProps:
1584
2417
  result = self._values.get("pricing_plan")
1585
2418
  return typing.cast(typing.Optional[builtins.str], result)
1586
2419
 
2420
+ @builtins.property
2421
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
2422
+ '''An array of key-value pairs to apply to this resource.
2423
+
2424
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-routecalculator.html#cfn-location-routecalculator-tags
2425
+ '''
2426
+ result = self._values.get("tags")
2427
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
2428
+
1587
2429
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
1588
2430
  return isinstance(rhs, self.__class__) and rhs._values == self._values
1589
2431
 
@@ -1619,10 +2461,16 @@ class CfnTracker(
1619
2461
 
1620
2462
  # the properties below are optional
1621
2463
  description="description",
2464
+ event_bridge_enabled=False,
2465
+ kms_key_enable_geospatial_queries=False,
1622
2466
  kms_key_id="kmsKeyId",
1623
2467
  position_filtering="positionFiltering",
1624
2468
  pricing_plan="pricingPlan",
1625
- pricing_plan_data_source="pricingPlanDataSource"
2469
+ pricing_plan_data_source="pricingPlanDataSource",
2470
+ tags=[CfnTag(
2471
+ key="key",
2472
+ value="value"
2473
+ )]
1626
2474
  )
1627
2475
  '''
1628
2476
 
@@ -1633,20 +2481,26 @@ class CfnTracker(
1633
2481
  *,
1634
2482
  tracker_name: builtins.str,
1635
2483
  description: typing.Optional[builtins.str] = None,
2484
+ event_bridge_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2485
+ kms_key_enable_geospatial_queries: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
1636
2486
  kms_key_id: typing.Optional[builtins.str] = None,
1637
2487
  position_filtering: typing.Optional[builtins.str] = None,
1638
2488
  pricing_plan: typing.Optional[builtins.str] = None,
1639
2489
  pricing_plan_data_source: typing.Optional[builtins.str] = None,
2490
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1640
2491
  ) -> None:
1641
2492
  '''
1642
2493
  :param scope: Scope in which this resource is defined.
1643
2494
  :param id: Construct identifier for this resource (unique in its scope).
1644
2495
  :param tracker_name: The name for the tracker resource. Requirements: - Contain only alphanumeric characters (A-Z, a-z, 0-9) , hyphens (-), periods (.), and underscores (_). - Must be a unique tracker resource name. - No spaces allowed. For example, ``ExampleTracker`` .
1645
2496
  :param description: An optional description for the tracker resource.
2497
+ :param event_bridge_enabled:
2498
+ :param kms_key_enable_geospatial_queries:
1646
2499
  :param kms_key_id: A key identifier for an `AWS KMS customer managed key <https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html>`_ . Enter a key ID, key ARN, alias name, or alias ARN.
1647
2500
  :param position_filtering: Specifies the position filtering for the tracker resource. Valid values: - ``TimeBased`` - Location updates are evaluated against linked geofence collections, but not every location update is stored. If your update frequency is more often than 30 seconds, only one update per 30 seconds is stored for each unique device ID. - ``DistanceBased`` - If the device has moved less than 30 m (98.4 ft), location updates are ignored. Location updates within this area are neither evaluated against linked geofence collections, nor stored. This helps control costs by reducing the number of geofence evaluations and historical device positions to paginate through. Distance-based filtering can also reduce the effects of GPS noise when displaying device trajectories on a map. - ``AccuracyBased`` - If the device has moved less than the measured accuracy, location updates are ignored. For example, if two consecutive updates from a device have a horizontal accuracy of 5 m and 10 m, the second update is ignored if the device has moved less than 15 m. Ignored location updates are neither evaluated against linked geofence collections, nor stored. This can reduce the effects of GPS noise when displaying device trajectories on a map, and can help control your costs by reducing the number of geofence evaluations. This field is optional. If not specified, the default value is ``TimeBased`` .
1648
2501
  :param pricing_plan:
1649
2502
  :param pricing_plan_data_source:
2503
+ :param tags: An array of key-value pairs to apply to this resource.
1650
2504
  '''
1651
2505
  if __debug__:
1652
2506
  type_hints = typing.get_type_hints(_typecheckingstub__1cd2e07bf97c42a45f9443da7edf34b075c2f9b41a262ae77aee4b2a82a30dc0)
@@ -1655,10 +2509,13 @@ class CfnTracker(
1655
2509
  props = CfnTrackerProps(
1656
2510
  tracker_name=tracker_name,
1657
2511
  description=description,
2512
+ event_bridge_enabled=event_bridge_enabled,
2513
+ kms_key_enable_geospatial_queries=kms_key_enable_geospatial_queries,
1658
2514
  kms_key_id=kms_key_id,
1659
2515
  position_filtering=position_filtering,
1660
2516
  pricing_plan=pricing_plan,
1661
2517
  pricing_plan_data_source=pricing_plan_data_source,
2518
+ tags=tags,
1662
2519
  )
1663
2520
 
1664
2521
  jsii.create(self.__class__, self, [scope, id, props])
@@ -1768,6 +2625,40 @@ class CfnTracker(
1768
2625
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1769
2626
  jsii.set(self, "description", value)
1770
2627
 
2628
+ @builtins.property
2629
+ @jsii.member(jsii_name="eventBridgeEnabled")
2630
+ def event_bridge_enabled(
2631
+ self,
2632
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
2633
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "eventBridgeEnabled"))
2634
+
2635
+ @event_bridge_enabled.setter
2636
+ def event_bridge_enabled(
2637
+ self,
2638
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
2639
+ ) -> None:
2640
+ if __debug__:
2641
+ type_hints = typing.get_type_hints(_typecheckingstub__cd4f7477042ce6ed75f0b9861b25a721854ba28f82072db60305830e07af0d42)
2642
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2643
+ jsii.set(self, "eventBridgeEnabled", value)
2644
+
2645
+ @builtins.property
2646
+ @jsii.member(jsii_name="kmsKeyEnableGeospatialQueries")
2647
+ def kms_key_enable_geospatial_queries(
2648
+ self,
2649
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
2650
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "kmsKeyEnableGeospatialQueries"))
2651
+
2652
+ @kms_key_enable_geospatial_queries.setter
2653
+ def kms_key_enable_geospatial_queries(
2654
+ self,
2655
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
2656
+ ) -> None:
2657
+ if __debug__:
2658
+ type_hints = typing.get_type_hints(_typecheckingstub__b2dd571749bac14762477ff49a8f135c7d6e5b9f96b1f45fdb2f11d55be863ce)
2659
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2660
+ jsii.set(self, "kmsKeyEnableGeospatialQueries", value)
2661
+
1771
2662
  @builtins.property
1772
2663
  @jsii.member(jsii_name="kmsKeyId")
1773
2664
  def kms_key_id(self) -> typing.Optional[builtins.str]:
@@ -1828,6 +2719,19 @@ class CfnTracker(
1828
2719
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1829
2720
  jsii.set(self, "pricingPlanDataSource", value)
1830
2721
 
2722
+ @builtins.property
2723
+ @jsii.member(jsii_name="tags")
2724
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
2725
+ '''An array of key-value pairs to apply to this resource.'''
2726
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
2727
+
2728
+ @tags.setter
2729
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
2730
+ if __debug__:
2731
+ type_hints = typing.get_type_hints(_typecheckingstub__bd4f1b9ba5c51ac5a38d0876f790c1137595037fec38c3aacc1dd70bc872c126)
2732
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2733
+ jsii.set(self, "tags", value)
2734
+
1831
2735
 
1832
2736
  @jsii.implements(_IInspectable_c2943556)
1833
2737
  class CfnTrackerConsumer(
@@ -2032,10 +2936,13 @@ class CfnTrackerConsumerProps:
2032
2936
  name_mapping={
2033
2937
  "tracker_name": "trackerName",
2034
2938
  "description": "description",
2939
+ "event_bridge_enabled": "eventBridgeEnabled",
2940
+ "kms_key_enable_geospatial_queries": "kmsKeyEnableGeospatialQueries",
2035
2941
  "kms_key_id": "kmsKeyId",
2036
2942
  "position_filtering": "positionFiltering",
2037
2943
  "pricing_plan": "pricingPlan",
2038
2944
  "pricing_plan_data_source": "pricingPlanDataSource",
2945
+ "tags": "tags",
2039
2946
  },
2040
2947
  )
2041
2948
  class CfnTrackerProps:
@@ -2044,19 +2951,25 @@ class CfnTrackerProps:
2044
2951
  *,
2045
2952
  tracker_name: builtins.str,
2046
2953
  description: typing.Optional[builtins.str] = None,
2954
+ event_bridge_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2955
+ kms_key_enable_geospatial_queries: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2047
2956
  kms_key_id: typing.Optional[builtins.str] = None,
2048
2957
  position_filtering: typing.Optional[builtins.str] = None,
2049
2958
  pricing_plan: typing.Optional[builtins.str] = None,
2050
2959
  pricing_plan_data_source: typing.Optional[builtins.str] = None,
2960
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2051
2961
  ) -> None:
2052
2962
  '''Properties for defining a ``CfnTracker``.
2053
2963
 
2054
2964
  :param tracker_name: The name for the tracker resource. Requirements: - Contain only alphanumeric characters (A-Z, a-z, 0-9) , hyphens (-), periods (.), and underscores (_). - Must be a unique tracker resource name. - No spaces allowed. For example, ``ExampleTracker`` .
2055
2965
  :param description: An optional description for the tracker resource.
2966
+ :param event_bridge_enabled:
2967
+ :param kms_key_enable_geospatial_queries:
2056
2968
  :param kms_key_id: A key identifier for an `AWS KMS customer managed key <https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html>`_ . Enter a key ID, key ARN, alias name, or alias ARN.
2057
2969
  :param position_filtering: Specifies the position filtering for the tracker resource. Valid values: - ``TimeBased`` - Location updates are evaluated against linked geofence collections, but not every location update is stored. If your update frequency is more often than 30 seconds, only one update per 30 seconds is stored for each unique device ID. - ``DistanceBased`` - If the device has moved less than 30 m (98.4 ft), location updates are ignored. Location updates within this area are neither evaluated against linked geofence collections, nor stored. This helps control costs by reducing the number of geofence evaluations and historical device positions to paginate through. Distance-based filtering can also reduce the effects of GPS noise when displaying device trajectories on a map. - ``AccuracyBased`` - If the device has moved less than the measured accuracy, location updates are ignored. For example, if two consecutive updates from a device have a horizontal accuracy of 5 m and 10 m, the second update is ignored if the device has moved less than 15 m. Ignored location updates are neither evaluated against linked geofence collections, nor stored. This can reduce the effects of GPS noise when displaying device trajectories on a map, and can help control your costs by reducing the number of geofence evaluations. This field is optional. If not specified, the default value is ``TimeBased`` .
2058
2970
  :param pricing_plan:
2059
2971
  :param pricing_plan_data_source:
2972
+ :param tags: An array of key-value pairs to apply to this resource.
2060
2973
 
2061
2974
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-tracker.html
2062
2975
  :exampleMetadata: fixture=_generated
@@ -2072,25 +2985,38 @@ class CfnTrackerProps:
2072
2985
 
2073
2986
  # the properties below are optional
2074
2987
  description="description",
2988
+ event_bridge_enabled=False,
2989
+ kms_key_enable_geospatial_queries=False,
2075
2990
  kms_key_id="kmsKeyId",
2076
2991
  position_filtering="positionFiltering",
2077
2992
  pricing_plan="pricingPlan",
2078
- pricing_plan_data_source="pricingPlanDataSource"
2993
+ pricing_plan_data_source="pricingPlanDataSource",
2994
+ tags=[CfnTag(
2995
+ key="key",
2996
+ value="value"
2997
+ )]
2079
2998
  )
2080
2999
  '''
2081
3000
  if __debug__:
2082
3001
  type_hints = typing.get_type_hints(_typecheckingstub__c4963cd9bb9360f72e2ea99e0d8d6626ac02c1681099b08a5a4acc54e079dfa9)
2083
3002
  check_type(argname="argument tracker_name", value=tracker_name, expected_type=type_hints["tracker_name"])
2084
3003
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
3004
+ check_type(argname="argument event_bridge_enabled", value=event_bridge_enabled, expected_type=type_hints["event_bridge_enabled"])
3005
+ check_type(argname="argument kms_key_enable_geospatial_queries", value=kms_key_enable_geospatial_queries, expected_type=type_hints["kms_key_enable_geospatial_queries"])
2085
3006
  check_type(argname="argument kms_key_id", value=kms_key_id, expected_type=type_hints["kms_key_id"])
2086
3007
  check_type(argname="argument position_filtering", value=position_filtering, expected_type=type_hints["position_filtering"])
2087
3008
  check_type(argname="argument pricing_plan", value=pricing_plan, expected_type=type_hints["pricing_plan"])
2088
3009
  check_type(argname="argument pricing_plan_data_source", value=pricing_plan_data_source, expected_type=type_hints["pricing_plan_data_source"])
3010
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
2089
3011
  self._values: typing.Dict[builtins.str, typing.Any] = {
2090
3012
  "tracker_name": tracker_name,
2091
3013
  }
2092
3014
  if description is not None:
2093
3015
  self._values["description"] = description
3016
+ if event_bridge_enabled is not None:
3017
+ self._values["event_bridge_enabled"] = event_bridge_enabled
3018
+ if kms_key_enable_geospatial_queries is not None:
3019
+ self._values["kms_key_enable_geospatial_queries"] = kms_key_enable_geospatial_queries
2094
3020
  if kms_key_id is not None:
2095
3021
  self._values["kms_key_id"] = kms_key_id
2096
3022
  if position_filtering is not None:
@@ -2099,6 +3025,8 @@ class CfnTrackerProps:
2099
3025
  self._values["pricing_plan"] = pricing_plan
2100
3026
  if pricing_plan_data_source is not None:
2101
3027
  self._values["pricing_plan_data_source"] = pricing_plan_data_source
3028
+ if tags is not None:
3029
+ self._values["tags"] = tags
2102
3030
 
2103
3031
  @builtins.property
2104
3032
  def tracker_name(self) -> builtins.str:
@@ -2125,6 +3053,26 @@ class CfnTrackerProps:
2125
3053
  result = self._values.get("description")
2126
3054
  return typing.cast(typing.Optional[builtins.str], result)
2127
3055
 
3056
+ @builtins.property
3057
+ def event_bridge_enabled(
3058
+ self,
3059
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
3060
+ '''
3061
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-tracker.html#cfn-location-tracker-eventbridgeenabled
3062
+ '''
3063
+ result = self._values.get("event_bridge_enabled")
3064
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
3065
+
3066
+ @builtins.property
3067
+ def kms_key_enable_geospatial_queries(
3068
+ self,
3069
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
3070
+ '''
3071
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-tracker.html#cfn-location-tracker-kmskeyenablegeospatialqueries
3072
+ '''
3073
+ result = self._values.get("kms_key_enable_geospatial_queries")
3074
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
3075
+
2128
3076
  @builtins.property
2129
3077
  def kms_key_id(self) -> typing.Optional[builtins.str]:
2130
3078
  '''A key identifier for an `AWS KMS customer managed key <https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html>`_ . Enter a key ID, key ARN, alias name, or alias ARN.
@@ -2173,6 +3121,15 @@ class CfnTrackerProps:
2173
3121
  result = self._values.get("pricing_plan_data_source")
2174
3122
  return typing.cast(typing.Optional[builtins.str], result)
2175
3123
 
3124
+ @builtins.property
3125
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
3126
+ '''An array of key-value pairs to apply to this resource.
3127
+
3128
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-tracker.html#cfn-location-tracker-tags
3129
+ '''
3130
+ result = self._values.get("tags")
3131
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
3132
+
2176
3133
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
2177
3134
  return isinstance(rhs, self.__class__) and rhs._values == self._values
2178
3135
 
@@ -2186,6 +3143,8 @@ class CfnTrackerProps:
2186
3143
 
2187
3144
 
2188
3145
  __all__ = [
3146
+ "CfnAPIKey",
3147
+ "CfnAPIKeyProps",
2189
3148
  "CfnGeofenceCollection",
2190
3149
  "CfnGeofenceCollectionProps",
2191
3150
  "CfnMap",
@@ -2202,6 +3161,105 @@ __all__ = [
2202
3161
 
2203
3162
  publication.publish()
2204
3163
 
3164
+ def _typecheckingstub__e2ae0e8c734c36fc4dfc2e50264fbc5e41cc44ca78d64c47f19cac56e4318d32(
3165
+ scope: _constructs_77d1e7e8.Construct,
3166
+ id: builtins.str,
3167
+ *,
3168
+ key_name: builtins.str,
3169
+ restrictions: typing.Union[_IResolvable_da3f097b, typing.Union[CfnAPIKey.ApiKeyRestrictionsProperty, typing.Dict[builtins.str, typing.Any]]],
3170
+ description: typing.Optional[builtins.str] = None,
3171
+ expire_time: typing.Optional[builtins.str] = None,
3172
+ force_delete: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3173
+ force_update: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3174
+ no_expiry: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3175
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3176
+ ) -> None:
3177
+ """Type checking stubs"""
3178
+ pass
3179
+
3180
+ def _typecheckingstub__90e4d83d582a33efc0dfeef244e5a4b84a90230cc485853b42d16a3e6f6609a7(
3181
+ inspector: _TreeInspector_488e0dd5,
3182
+ ) -> None:
3183
+ """Type checking stubs"""
3184
+ pass
3185
+
3186
+ def _typecheckingstub__099c2b5d173d474236a30915cc6fc0919b6fe1cf215f99e6636485c92a9af0ca(
3187
+ props: typing.Mapping[builtins.str, typing.Any],
3188
+ ) -> None:
3189
+ """Type checking stubs"""
3190
+ pass
3191
+
3192
+ def _typecheckingstub__c00e03a38669285c7b235bbd87ec7317379694b0537c3a85e4741d27c54c9d3d(
3193
+ value: builtins.str,
3194
+ ) -> None:
3195
+ """Type checking stubs"""
3196
+ pass
3197
+
3198
+ def _typecheckingstub__65682d4a834f16510a57f21e8af7c41ba661e7d0f78293abcd483f9d45afba31(
3199
+ value: typing.Union[_IResolvable_da3f097b, CfnAPIKey.ApiKeyRestrictionsProperty],
3200
+ ) -> None:
3201
+ """Type checking stubs"""
3202
+ pass
3203
+
3204
+ def _typecheckingstub__e1957f4ade558178bedd1746c97b21ac5195a216695895f32ba33d6fe99216c5(
3205
+ value: typing.Optional[builtins.str],
3206
+ ) -> None:
3207
+ """Type checking stubs"""
3208
+ pass
3209
+
3210
+ def _typecheckingstub__8263b20b7b28c2712bf62bdacab9989763120af28d1e026f26e14f6e572ae7c9(
3211
+ value: typing.Optional[builtins.str],
3212
+ ) -> None:
3213
+ """Type checking stubs"""
3214
+ pass
3215
+
3216
+ def _typecheckingstub__c8379f2b16717a153383f6b36ff735d0d746008205280dddfc3ffe2f253f29a2(
3217
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
3218
+ ) -> None:
3219
+ """Type checking stubs"""
3220
+ pass
3221
+
3222
+ def _typecheckingstub__6402962818d046984829754f6a1e3957be1c7b7981fc92251adcdb9aaeefd493(
3223
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
3224
+ ) -> None:
3225
+ """Type checking stubs"""
3226
+ pass
3227
+
3228
+ def _typecheckingstub__7f2e8a3ec18117161377722f1dd02cee2566e5eb477a2de4cfbc6a270028941e(
3229
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
3230
+ ) -> None:
3231
+ """Type checking stubs"""
3232
+ pass
3233
+
3234
+ def _typecheckingstub__297a793f153416e3131543d9b1a435c125bf1b45672e8ee10841ec34b14e6d66(
3235
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
3236
+ ) -> None:
3237
+ """Type checking stubs"""
3238
+ pass
3239
+
3240
+ def _typecheckingstub__0c74737f1e32f7583c8c63e1c8de07d36792e8e3aee5f799d6c8a265f1a3bebb(
3241
+ *,
3242
+ allow_actions: typing.Sequence[builtins.str],
3243
+ allow_resources: typing.Sequence[builtins.str],
3244
+ allow_referers: typing.Optional[typing.Sequence[builtins.str]] = None,
3245
+ ) -> None:
3246
+ """Type checking stubs"""
3247
+ pass
3248
+
3249
+ def _typecheckingstub__ebe99c80388f80e304ec3579f14c21edc069b0865131b2673a8f49e8274c07f4(
3250
+ *,
3251
+ key_name: builtins.str,
3252
+ restrictions: typing.Union[_IResolvable_da3f097b, typing.Union[CfnAPIKey.ApiKeyRestrictionsProperty, typing.Dict[builtins.str, typing.Any]]],
3253
+ description: typing.Optional[builtins.str] = None,
3254
+ expire_time: typing.Optional[builtins.str] = None,
3255
+ force_delete: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3256
+ force_update: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3257
+ no_expiry: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3258
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3259
+ ) -> None:
3260
+ """Type checking stubs"""
3261
+ pass
3262
+
2205
3263
  def _typecheckingstub__8e0601ccc1fece7d46bccf997c94a7f51bea09a1590d5ce84823ed5c0b2041c1(
2206
3264
  scope: _constructs_77d1e7e8.Construct,
2207
3265
  id: builtins.str,
@@ -2211,6 +3269,7 @@ def _typecheckingstub__8e0601ccc1fece7d46bccf997c94a7f51bea09a1590d5ce84823ed5c0
2211
3269
  kms_key_id: typing.Optional[builtins.str] = None,
2212
3270
  pricing_plan: typing.Optional[builtins.str] = None,
2213
3271
  pricing_plan_data_source: typing.Optional[builtins.str] = None,
3272
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2214
3273
  ) -> None:
2215
3274
  """Type checking stubs"""
2216
3275
  pass
@@ -2257,6 +3316,12 @@ def _typecheckingstub__ac440741201f7074f72462a372fb1e02f934a32f1d63e4645ed0506f4
2257
3316
  """Type checking stubs"""
2258
3317
  pass
2259
3318
 
3319
+ def _typecheckingstub__73c685a12991ff080fc342ecb024cac707829ec5c29f69506f34e69631875f71(
3320
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
3321
+ ) -> None:
3322
+ """Type checking stubs"""
3323
+ pass
3324
+
2260
3325
  def _typecheckingstub__307d0c98cf0385e786cd529fa95282bdfb460c6c7bb7e72dde3e3e36be5b809b(
2261
3326
  *,
2262
3327
  collection_name: builtins.str,
@@ -2264,6 +3329,7 @@ def _typecheckingstub__307d0c98cf0385e786cd529fa95282bdfb460c6c7bb7e72dde3e3e36b
2264
3329
  kms_key_id: typing.Optional[builtins.str] = None,
2265
3330
  pricing_plan: typing.Optional[builtins.str] = None,
2266
3331
  pricing_plan_data_source: typing.Optional[builtins.str] = None,
3332
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2267
3333
  ) -> None:
2268
3334
  """Type checking stubs"""
2269
3335
  pass
@@ -2276,6 +3342,7 @@ def _typecheckingstub__b2dcb0428eb66932a1afc7be03e22130166237e903d48b7c13fc63dbc
2276
3342
  map_name: builtins.str,
2277
3343
  description: typing.Optional[builtins.str] = None,
2278
3344
  pricing_plan: typing.Optional[builtins.str] = None,
3345
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2279
3346
  ) -> None:
2280
3347
  """Type checking stubs"""
2281
3348
  pass
@@ -2316,9 +3383,16 @@ def _typecheckingstub__de864d7ca8c9af6ca27a35f5fb304092560e41a384b9dd782f1dd78cc
2316
3383
  """Type checking stubs"""
2317
3384
  pass
2318
3385
 
3386
+ def _typecheckingstub__bb33fbdbbd66a87cdef71cb76784ef3bcdea2208fa231444865a3178588b36c6(
3387
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
3388
+ ) -> None:
3389
+ """Type checking stubs"""
3390
+ pass
3391
+
2319
3392
  def _typecheckingstub__f994438dc4a55ff175f7c8b92debb9548b8c21e2896a0380a521bcdba4e2a0d6(
2320
3393
  *,
2321
3394
  style: builtins.str,
3395
+ political_view: typing.Optional[builtins.str] = None,
2322
3396
  ) -> None:
2323
3397
  """Type checking stubs"""
2324
3398
  pass
@@ -2329,6 +3403,7 @@ def _typecheckingstub__702a4eb1b8c53d553ad5479cf127f6ed1090248f0a9d4806eec0b368c
2329
3403
  map_name: builtins.str,
2330
3404
  description: typing.Optional[builtins.str] = None,
2331
3405
  pricing_plan: typing.Optional[builtins.str] = None,
3406
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2332
3407
  ) -> None:
2333
3408
  """Type checking stubs"""
2334
3409
  pass
@@ -2342,6 +3417,7 @@ def _typecheckingstub__a86efa72874938a7fdd56ee75ab5f3481754256c4e7be12dd321fb817
2342
3417
  data_source_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPlaceIndex.DataSourceConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2343
3418
  description: typing.Optional[builtins.str] = None,
2344
3419
  pricing_plan: typing.Optional[builtins.str] = None,
3420
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2345
3421
  ) -> None:
2346
3422
  """Type checking stubs"""
2347
3423
  pass
@@ -2388,6 +3464,12 @@ def _typecheckingstub__7653a99bc2f680ec231d78959d16db4997e472e731a68a554772f0e08
2388
3464
  """Type checking stubs"""
2389
3465
  pass
2390
3466
 
3467
+ def _typecheckingstub__a88e3fcbc3fba96f937cf7669a81dcdb84f3dce7ddea1dd5143fcf5e7eaeb70e(
3468
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
3469
+ ) -> None:
3470
+ """Type checking stubs"""
3471
+ pass
3472
+
2391
3473
  def _typecheckingstub__b631c3e00c6906f33efa721d356034e81e693d6aa037787fadb69355eaa4ef41(
2392
3474
  *,
2393
3475
  intended_use: typing.Optional[builtins.str] = None,
@@ -2402,6 +3484,7 @@ def _typecheckingstub__fa21f8e355faff509cae18242ebc62f8af877465a5ef051abbedc5885
2402
3484
  data_source_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPlaceIndex.DataSourceConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2403
3485
  description: typing.Optional[builtins.str] = None,
2404
3486
  pricing_plan: typing.Optional[builtins.str] = None,
3487
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2405
3488
  ) -> None:
2406
3489
  """Type checking stubs"""
2407
3490
  pass
@@ -2414,6 +3497,7 @@ def _typecheckingstub__a900f380dbd4e0012dcb474730041f91eeaecc9218db4d6163fd73039
2414
3497
  data_source: builtins.str,
2415
3498
  description: typing.Optional[builtins.str] = None,
2416
3499
  pricing_plan: typing.Optional[builtins.str] = None,
3500
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2417
3501
  ) -> None:
2418
3502
  """Type checking stubs"""
2419
3503
  pass
@@ -2454,12 +3538,19 @@ def _typecheckingstub__3f40cb810c37a798bfec946670c6e7a33c338d2fe035b50de2d1bee9b
2454
3538
  """Type checking stubs"""
2455
3539
  pass
2456
3540
 
3541
+ def _typecheckingstub__74454734a6df8a4308849a60f8d80541ab1a10fc08d73d9f6faa0474841ec604(
3542
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
3543
+ ) -> None:
3544
+ """Type checking stubs"""
3545
+ pass
3546
+
2457
3547
  def _typecheckingstub__986eaab9e9d4b82fd7bedac19af61096151542baed90ee4afaad1d66b4b219c9(
2458
3548
  *,
2459
3549
  calculator_name: builtins.str,
2460
3550
  data_source: builtins.str,
2461
3551
  description: typing.Optional[builtins.str] = None,
2462
3552
  pricing_plan: typing.Optional[builtins.str] = None,
3553
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2463
3554
  ) -> None:
2464
3555
  """Type checking stubs"""
2465
3556
  pass
@@ -2470,10 +3561,13 @@ def _typecheckingstub__1cd2e07bf97c42a45f9443da7edf34b075c2f9b41a262ae77aee4b2a8
2470
3561
  *,
2471
3562
  tracker_name: builtins.str,
2472
3563
  description: typing.Optional[builtins.str] = None,
3564
+ event_bridge_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3565
+ kms_key_enable_geospatial_queries: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2473
3566
  kms_key_id: typing.Optional[builtins.str] = None,
2474
3567
  position_filtering: typing.Optional[builtins.str] = None,
2475
3568
  pricing_plan: typing.Optional[builtins.str] = None,
2476
3569
  pricing_plan_data_source: typing.Optional[builtins.str] = None,
3570
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2477
3571
  ) -> None:
2478
3572
  """Type checking stubs"""
2479
3573
  pass
@@ -2502,6 +3596,18 @@ def _typecheckingstub__432656f1a3249889b4f6340d433951d4b03ec382b366b9cefc7f22db8
2502
3596
  """Type checking stubs"""
2503
3597
  pass
2504
3598
 
3599
+ def _typecheckingstub__cd4f7477042ce6ed75f0b9861b25a721854ba28f82072db60305830e07af0d42(
3600
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
3601
+ ) -> None:
3602
+ """Type checking stubs"""
3603
+ pass
3604
+
3605
+ def _typecheckingstub__b2dd571749bac14762477ff49a8f135c7d6e5b9f96b1f45fdb2f11d55be863ce(
3606
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
3607
+ ) -> None:
3608
+ """Type checking stubs"""
3609
+ pass
3610
+
2505
3611
  def _typecheckingstub__dcc29257a761669c6cc236364e363b6512c47005e61ff4201e14badc85d4b49d(
2506
3612
  value: typing.Optional[builtins.str],
2507
3613
  ) -> None:
@@ -2526,6 +3632,12 @@ def _typecheckingstub__c9f5b36993f4be81b2285747fed230ab9182b4393ef3b93d823765df2
2526
3632
  """Type checking stubs"""
2527
3633
  pass
2528
3634
 
3635
+ def _typecheckingstub__bd4f1b9ba5c51ac5a38d0876f790c1137595037fec38c3aacc1dd70bc872c126(
3636
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
3637
+ ) -> None:
3638
+ """Type checking stubs"""
3639
+ pass
3640
+
2529
3641
  def _typecheckingstub__796f07ade0c1c21cf2be739abf72847e038c9c0f1fe6e69286fa0b51df24a022(
2530
3642
  scope: _constructs_77d1e7e8.Construct,
2531
3643
  id: builtins.str,
@@ -2572,10 +3684,13 @@ def _typecheckingstub__c4963cd9bb9360f72e2ea99e0d8d6626ac02c1681099b08a5a4acc54e
2572
3684
  *,
2573
3685
  tracker_name: builtins.str,
2574
3686
  description: typing.Optional[builtins.str] = None,
3687
+ event_bridge_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3688
+ kms_key_enable_geospatial_queries: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2575
3689
  kms_key_id: typing.Optional[builtins.str] = None,
2576
3690
  position_filtering: typing.Optional[builtins.str] = None,
2577
3691
  pricing_plan: typing.Optional[builtins.str] = None,
2578
3692
  pricing_plan_data_source: typing.Optional[builtins.str] = None,
3693
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2579
3694
  ) -> None:
2580
3695
  """Type checking stubs"""
2581
3696
  pass