localstack-core 4.10.1.dev7__py3-none-any.whl → 4.11.2.dev14__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 localstack-core might be problematic. Click here for more details.

Files changed (152) hide show
  1. localstack/aws/api/acm/__init__.py +122 -122
  2. localstack/aws/api/apigateway/__init__.py +604 -561
  3. localstack/aws/api/cloudcontrol/__init__.py +63 -63
  4. localstack/aws/api/cloudformation/__init__.py +1201 -969
  5. localstack/aws/api/cloudwatch/__init__.py +375 -375
  6. localstack/aws/api/config/__init__.py +784 -786
  7. localstack/aws/api/dynamodb/__init__.py +753 -759
  8. localstack/aws/api/dynamodbstreams/__init__.py +74 -74
  9. localstack/aws/api/ec2/__init__.py +10062 -8826
  10. localstack/aws/api/es/__init__.py +453 -453
  11. localstack/aws/api/events/__init__.py +552 -552
  12. localstack/aws/api/firehose/__init__.py +541 -543
  13. localstack/aws/api/iam/__init__.py +866 -572
  14. localstack/aws/api/kinesis/__init__.py +235 -147
  15. localstack/aws/api/kms/__init__.py +341 -336
  16. localstack/aws/api/lambda_/__init__.py +974 -621
  17. localstack/aws/api/logs/__init__.py +988 -675
  18. localstack/aws/api/opensearch/__init__.py +903 -785
  19. localstack/aws/api/pipes/__init__.py +336 -336
  20. localstack/aws/api/redshift/__init__.py +1257 -1166
  21. localstack/aws/api/resource_groups/__init__.py +175 -175
  22. localstack/aws/api/resourcegroupstaggingapi/__init__.py +103 -67
  23. localstack/aws/api/route53/__init__.py +296 -254
  24. localstack/aws/api/route53resolver/__init__.py +397 -396
  25. localstack/aws/api/s3/__init__.py +1412 -1349
  26. localstack/aws/api/s3control/__init__.py +594 -594
  27. localstack/aws/api/scheduler/__init__.py +118 -118
  28. localstack/aws/api/secretsmanager/__init__.py +221 -216
  29. localstack/aws/api/ses/__init__.py +227 -227
  30. localstack/aws/api/sns/__init__.py +115 -115
  31. localstack/aws/api/sqs/__init__.py +100 -100
  32. localstack/aws/api/ssm/__init__.py +1977 -1971
  33. localstack/aws/api/stepfunctions/__init__.py +375 -333
  34. localstack/aws/api/sts/__init__.py +142 -66
  35. localstack/aws/api/support/__init__.py +112 -112
  36. localstack/aws/api/swf/__init__.py +378 -386
  37. localstack/aws/api/transcribe/__init__.py +425 -425
  38. localstack/aws/handlers/logging.py +8 -4
  39. localstack/aws/handlers/service.py +22 -3
  40. localstack/aws/protocol/parser.py +1 -1
  41. localstack/aws/protocol/serializer.py +1 -1
  42. localstack/aws/scaffold.py +15 -17
  43. localstack/cli/localstack.py +6 -1
  44. localstack/deprecations.py +0 -6
  45. localstack/dev/kubernetes/__main__.py +38 -3
  46. localstack/services/acm/provider.py +4 -0
  47. localstack/services/apigateway/helpers.py +5 -9
  48. localstack/services/apigateway/legacy/provider.py +60 -24
  49. localstack/services/apigateway/patches.py +0 -9
  50. localstack/services/cloudformation/engine/template_preparer.py +6 -2
  51. localstack/services/cloudformation/engine/v2/change_set_model_preproc.py +12 -0
  52. localstack/services/cloudformation/provider.py +2 -2
  53. localstack/services/cloudformation/v2/provider.py +6 -6
  54. localstack/services/cloudwatch/provider.py +10 -3
  55. localstack/services/cloudwatch/provider_v2.py +6 -3
  56. localstack/services/configservice/provider.py +5 -1
  57. localstack/services/dynamodb/provider.py +1 -0
  58. localstack/services/dynamodb/v2/provider.py +1 -0
  59. localstack/services/dynamodbstreams/provider.py +6 -0
  60. localstack/services/dynamodbstreams/v2/provider.py +6 -0
  61. localstack/services/ec2/provider.py +6 -0
  62. localstack/services/es/provider.py +6 -0
  63. localstack/services/events/provider.py +4 -0
  64. localstack/services/events/v1/provider.py +9 -0
  65. localstack/services/firehose/provider.py +5 -0
  66. localstack/services/iam/provider.py +4 -0
  67. localstack/services/kinesis/packages.py +1 -1
  68. localstack/services/kms/models.py +44 -24
  69. localstack/services/kms/provider.py +97 -16
  70. localstack/services/lambda_/api_utils.py +40 -21
  71. localstack/services/lambda_/event_source_mapping/pollers/stream_poller.py +1 -1
  72. localstack/services/lambda_/invocation/assignment.py +4 -1
  73. localstack/services/lambda_/invocation/execution_environment.py +21 -2
  74. localstack/services/lambda_/invocation/lambda_models.py +27 -2
  75. localstack/services/lambda_/invocation/lambda_service.py +51 -3
  76. localstack/services/lambda_/invocation/models.py +9 -1
  77. localstack/services/lambda_/invocation/version_manager.py +18 -3
  78. localstack/services/lambda_/packages.py +1 -1
  79. localstack/services/lambda_/provider.py +240 -96
  80. localstack/services/lambda_/resource_providers/aws_lambda_function.py +33 -1
  81. localstack/services/lambda_/runtimes.py +10 -3
  82. localstack/services/logs/provider.py +45 -19
  83. localstack/services/opensearch/provider.py +53 -3
  84. localstack/services/resource_groups/provider.py +5 -1
  85. localstack/services/resourcegroupstaggingapi/provider.py +6 -1
  86. localstack/services/s3/provider.py +29 -16
  87. localstack/services/s3/utils.py +35 -14
  88. localstack/services/s3control/provider.py +101 -2
  89. localstack/services/s3control/validation.py +50 -0
  90. localstack/services/sns/constants.py +3 -1
  91. localstack/services/sns/publisher.py +15 -6
  92. localstack/services/sns/v2/models.py +30 -1
  93. localstack/services/sns/v2/provider.py +794 -31
  94. localstack/services/sns/v2/utils.py +20 -0
  95. localstack/services/sqs/models.py +37 -10
  96. localstack/services/stepfunctions/asl/component/common/path/result_path.py +1 -1
  97. localstack/services/stepfunctions/asl/component/state/state_execution/execute_state.py +0 -1
  98. localstack/services/stepfunctions/asl/component/state/state_execution/state_map/state_map.py +0 -1
  99. localstack/services/stepfunctions/asl/component/state/state_execution/state_task/lambda_eval_utils.py +8 -8
  100. localstack/services/stepfunctions/asl/component/state/state_execution/state_task/{mock_eval_utils.py → local_mock_eval_utils.py} +13 -9
  101. localstack/services/stepfunctions/asl/component/state/state_execution/state_task/service/state_task_service.py +6 -6
  102. localstack/services/stepfunctions/asl/component/state/state_execution/state_task/service/state_task_service_callback.py +1 -1
  103. localstack/services/stepfunctions/asl/component/state/state_fail/state_fail.py +4 -0
  104. localstack/services/stepfunctions/asl/component/test_state/state/base_mock.py +118 -0
  105. localstack/services/stepfunctions/asl/component/test_state/state/common.py +82 -0
  106. localstack/services/stepfunctions/asl/component/test_state/state/execution.py +139 -0
  107. localstack/services/stepfunctions/asl/component/test_state/state/map.py +77 -0
  108. localstack/services/stepfunctions/asl/component/test_state/state/task.py +44 -0
  109. localstack/services/stepfunctions/asl/eval/environment.py +30 -22
  110. localstack/services/stepfunctions/asl/eval/states.py +1 -1
  111. localstack/services/stepfunctions/asl/eval/test_state/environment.py +49 -9
  112. localstack/services/stepfunctions/asl/eval/test_state/program_state.py +22 -0
  113. localstack/services/stepfunctions/asl/jsonata/jsonata.py +5 -1
  114. localstack/services/stepfunctions/asl/parse/preprocessor.py +67 -24
  115. localstack/services/stepfunctions/asl/parse/test_state/asl_parser.py +5 -4
  116. localstack/services/stepfunctions/asl/parse/test_state/preprocessor.py +222 -31
  117. localstack/services/stepfunctions/asl/static_analyser/test_state/test_state_analyser.py +170 -22
  118. localstack/services/stepfunctions/backend/execution.py +6 -6
  119. localstack/services/stepfunctions/backend/execution_worker.py +5 -5
  120. localstack/services/stepfunctions/backend/test_state/execution.py +36 -0
  121. localstack/services/stepfunctions/backend/test_state/execution_worker.py +33 -1
  122. localstack/services/stepfunctions/backend/test_state/test_state_mock.py +127 -0
  123. localstack/services/stepfunctions/local_mocking/__init__.py +9 -0
  124. localstack/services/stepfunctions/{mocking → local_mocking}/mock_config.py +24 -17
  125. localstack/services/stepfunctions/provider.py +78 -27
  126. localstack/services/stepfunctions/test_state/mock_config.py +47 -0
  127. localstack/testing/pytest/fixtures.py +28 -0
  128. localstack/testing/snapshots/transformer_utility.py +7 -0
  129. localstack/testing/testselection/matching.py +0 -1
  130. localstack/utils/analytics/publisher.py +37 -155
  131. localstack/utils/analytics/service_request_aggregator.py +6 -4
  132. localstack/utils/aws/arns.py +7 -0
  133. localstack/utils/aws/client_types.py +0 -8
  134. localstack/utils/batching.py +258 -0
  135. localstack/utils/catalog/catalog_loader.py +111 -3
  136. localstack/utils/collections.py +23 -11
  137. localstack/utils/crypto.py +109 -0
  138. localstack/version.py +2 -2
  139. {localstack_core-4.10.1.dev7.dist-info → localstack_core-4.11.2.dev14.dist-info}/METADATA +7 -6
  140. {localstack_core-4.10.1.dev7.dist-info → localstack_core-4.11.2.dev14.dist-info}/RECORD +149 -141
  141. localstack_core-4.11.2.dev14.dist-info/plux.json +1 -0
  142. localstack/services/stepfunctions/mocking/__init__.py +0 -0
  143. localstack/utils/batch_policy.py +0 -124
  144. localstack_core-4.10.1.dev7.dist-info/plux.json +0 -1
  145. /localstack/services/stepfunctions/{mocking → local_mocking}/mock_config_file.py +0 -0
  146. {localstack_core-4.10.1.dev7.data → localstack_core-4.11.2.dev14.data}/scripts/localstack +0 -0
  147. {localstack_core-4.10.1.dev7.data → localstack_core-4.11.2.dev14.data}/scripts/localstack-supervisor +0 -0
  148. {localstack_core-4.10.1.dev7.data → localstack_core-4.11.2.dev14.data}/scripts/localstack.bat +0 -0
  149. {localstack_core-4.10.1.dev7.dist-info → localstack_core-4.11.2.dev14.dist-info}/WHEEL +0 -0
  150. {localstack_core-4.10.1.dev7.dist-info → localstack_core-4.11.2.dev14.dist-info}/entry_points.txt +0 -0
  151. {localstack_core-4.10.1.dev7.dist-info → localstack_core-4.11.2.dev14.dist-info}/licenses/LICENSE.txt +0 -0
  152. {localstack_core-4.10.1.dev7.dist-info → localstack_core-4.11.2.dev14.dist-info}/top_level.txt +0 -0
@@ -1,5 +1,5 @@
1
1
  from enum import StrEnum
2
- from typing import Dict, List, Optional, TypedDict
2
+ from typing import TypedDict
3
3
 
4
4
  from localstack.aws.api import RequestContext, ServiceException, ServiceRequest, handler
5
5
 
@@ -224,8 +224,8 @@ class UnsupportedOperation(ServiceException):
224
224
  status_code: int = 400
225
225
 
226
226
 
227
- AWSAccountIdList = List[String]
228
- ActionNameList = List[String]
227
+ AWSAccountIdList = list[String]
228
+ ActionNameList = list[String]
229
229
 
230
230
 
231
231
  class AddPermissionRequest(ServiceRequest):
@@ -235,19 +235,19 @@ class AddPermissionRequest(ServiceRequest):
235
235
  Actions: ActionNameList
236
236
 
237
237
 
238
- AttributeNameList = List[QueueAttributeName]
238
+ AttributeNameList = list[QueueAttributeName]
239
239
 
240
240
 
241
241
  class BatchResultErrorEntry(TypedDict, total=False):
242
242
  Id: String
243
243
  SenderFault: Boolean
244
244
  Code: String
245
- Message: Optional[String]
245
+ Message: String | None
246
246
 
247
247
 
248
- BatchResultErrorEntryList = List[BatchResultErrorEntry]
248
+ BatchResultErrorEntryList = list[BatchResultErrorEntry]
249
249
  Binary = bytes
250
- BinaryList = List[Binary]
250
+ BinaryList = list[Binary]
251
251
 
252
252
 
253
253
  class CancelMessageMoveTaskRequest(ServiceRequest):
@@ -258,16 +258,16 @@ Long = int
258
258
 
259
259
 
260
260
  class CancelMessageMoveTaskResult(TypedDict, total=False):
261
- ApproximateNumberOfMessagesMoved: Optional[Long]
261
+ ApproximateNumberOfMessagesMoved: Long | None
262
262
 
263
263
 
264
264
  class ChangeMessageVisibilityBatchRequestEntry(TypedDict, total=False):
265
265
  Id: String
266
266
  ReceiptHandle: String
267
- VisibilityTimeout: Optional[NullableInteger]
267
+ VisibilityTimeout: NullableInteger | None
268
268
 
269
269
 
270
- ChangeMessageVisibilityBatchRequestEntryList = List[ChangeMessageVisibilityBatchRequestEntry]
270
+ ChangeMessageVisibilityBatchRequestEntryList = list[ChangeMessageVisibilityBatchRequestEntry]
271
271
 
272
272
 
273
273
  class ChangeMessageVisibilityBatchRequest(ServiceRequest):
@@ -279,7 +279,7 @@ class ChangeMessageVisibilityBatchResultEntry(TypedDict, total=False):
279
279
  Id: String
280
280
 
281
281
 
282
- ChangeMessageVisibilityBatchResultEntryList = List[ChangeMessageVisibilityBatchResultEntry]
282
+ ChangeMessageVisibilityBatchResultEntryList = list[ChangeMessageVisibilityBatchResultEntry]
283
283
 
284
284
 
285
285
  class ChangeMessageVisibilityBatchResult(TypedDict, total=False):
@@ -293,18 +293,18 @@ class ChangeMessageVisibilityRequest(ServiceRequest):
293
293
  VisibilityTimeout: NullableInteger
294
294
 
295
295
 
296
- TagMap = Dict[TagKey, TagValue]
297
- QueueAttributeMap = Dict[QueueAttributeName, String]
296
+ TagMap = dict[TagKey, TagValue]
297
+ QueueAttributeMap = dict[QueueAttributeName, String]
298
298
 
299
299
 
300
300
  class CreateQueueRequest(ServiceRequest):
301
301
  QueueName: String
302
- Attributes: Optional[QueueAttributeMap]
303
- tags: Optional[TagMap]
302
+ Attributes: QueueAttributeMap | None
303
+ tags: TagMap | None
304
304
 
305
305
 
306
306
  class CreateQueueResult(TypedDict, total=False):
307
- QueueUrl: Optional[String]
307
+ QueueUrl: String | None
308
308
 
309
309
 
310
310
  class DeleteMessageBatchRequestEntry(TypedDict, total=False):
@@ -312,7 +312,7 @@ class DeleteMessageBatchRequestEntry(TypedDict, total=False):
312
312
  ReceiptHandle: String
313
313
 
314
314
 
315
- DeleteMessageBatchRequestEntryList = List[DeleteMessageBatchRequestEntry]
315
+ DeleteMessageBatchRequestEntryList = list[DeleteMessageBatchRequestEntry]
316
316
 
317
317
 
318
318
  class DeleteMessageBatchRequest(ServiceRequest):
@@ -324,7 +324,7 @@ class DeleteMessageBatchResultEntry(TypedDict, total=False):
324
324
  Id: String
325
325
 
326
326
 
327
- DeleteMessageBatchResultEntryList = List[DeleteMessageBatchResultEntry]
327
+ DeleteMessageBatchResultEntryList = list[DeleteMessageBatchResultEntry]
328
328
 
329
329
 
330
330
  class DeleteMessageBatchResult(TypedDict, total=False):
@@ -343,61 +343,61 @@ class DeleteQueueRequest(ServiceRequest):
343
343
 
344
344
  class GetQueueAttributesRequest(ServiceRequest):
345
345
  QueueUrl: String
346
- AttributeNames: Optional[AttributeNameList]
346
+ AttributeNames: AttributeNameList | None
347
347
 
348
348
 
349
349
  class GetQueueAttributesResult(TypedDict, total=False):
350
- Attributes: Optional[QueueAttributeMap]
350
+ Attributes: QueueAttributeMap | None
351
351
 
352
352
 
353
353
  class GetQueueUrlRequest(ServiceRequest):
354
354
  QueueName: String
355
- QueueOwnerAWSAccountId: Optional[String]
355
+ QueueOwnerAWSAccountId: String | None
356
356
 
357
357
 
358
358
  class GetQueueUrlResult(TypedDict, total=False):
359
- QueueUrl: Optional[String]
359
+ QueueUrl: String | None
360
360
 
361
361
 
362
362
  class ListDeadLetterSourceQueuesRequest(ServiceRequest):
363
363
  QueueUrl: String
364
- NextToken: Optional[Token]
365
- MaxResults: Optional[BoxedInteger]
364
+ NextToken: Token | None
365
+ MaxResults: BoxedInteger | None
366
366
 
367
367
 
368
- QueueUrlList = List[String]
368
+ QueueUrlList = list[String]
369
369
 
370
370
 
371
371
  class ListDeadLetterSourceQueuesResult(TypedDict, total=False):
372
372
  queueUrls: QueueUrlList
373
- NextToken: Optional[Token]
373
+ NextToken: Token | None
374
374
 
375
375
 
376
376
  class ListMessageMoveTasksRequest(ServiceRequest):
377
377
  SourceArn: String
378
- MaxResults: Optional[NullableInteger]
378
+ MaxResults: NullableInteger | None
379
379
 
380
380
 
381
381
  NullableLong = int
382
382
 
383
383
 
384
384
  class ListMessageMoveTasksResultEntry(TypedDict, total=False):
385
- TaskHandle: Optional[String]
386
- Status: Optional[String]
387
- SourceArn: Optional[String]
388
- DestinationArn: Optional[String]
389
- MaxNumberOfMessagesPerSecond: Optional[NullableInteger]
390
- ApproximateNumberOfMessagesMoved: Optional[Long]
391
- ApproximateNumberOfMessagesToMove: Optional[NullableLong]
392
- FailureReason: Optional[String]
393
- StartedTimestamp: Optional[Long]
385
+ TaskHandle: String | None
386
+ Status: String | None
387
+ SourceArn: String | None
388
+ DestinationArn: String | None
389
+ MaxNumberOfMessagesPerSecond: NullableInteger | None
390
+ ApproximateNumberOfMessagesMoved: Long | None
391
+ ApproximateNumberOfMessagesToMove: NullableLong | None
392
+ FailureReason: String | None
393
+ StartedTimestamp: Long | None
394
394
 
395
395
 
396
- ListMessageMoveTasksResultEntryList = List[ListMessageMoveTasksResultEntry]
396
+ ListMessageMoveTasksResultEntryList = list[ListMessageMoveTasksResultEntry]
397
397
 
398
398
 
399
399
  class ListMessageMoveTasksResult(TypedDict, total=False):
400
- Results: Optional[ListMessageMoveTasksResultEntryList]
400
+ Results: ListMessageMoveTasksResultEntryList | None
401
401
 
402
402
 
403
403
  class ListQueueTagsRequest(ServiceRequest):
@@ -405,61 +405,61 @@ class ListQueueTagsRequest(ServiceRequest):
405
405
 
406
406
 
407
407
  class ListQueueTagsResult(TypedDict, total=False):
408
- Tags: Optional[TagMap]
408
+ Tags: TagMap | None
409
409
 
410
410
 
411
411
  class ListQueuesRequest(ServiceRequest):
412
- QueueNamePrefix: Optional[String]
413
- NextToken: Optional[Token]
414
- MaxResults: Optional[BoxedInteger]
412
+ QueueNamePrefix: String | None
413
+ NextToken: Token | None
414
+ MaxResults: BoxedInteger | None
415
415
 
416
416
 
417
417
  class ListQueuesResult(TypedDict, total=False):
418
- QueueUrls: Optional[QueueUrlList]
419
- NextToken: Optional[Token]
418
+ QueueUrls: QueueUrlList | None
419
+ NextToken: Token | None
420
420
 
421
421
 
422
- StringList = List[String]
422
+ StringList = list[String]
423
423
 
424
424
 
425
425
  class MessageAttributeValue(TypedDict, total=False):
426
- StringValue: Optional[String]
427
- BinaryValue: Optional[Binary]
428
- StringListValues: Optional[StringList]
429
- BinaryListValues: Optional[BinaryList]
426
+ StringValue: String | None
427
+ BinaryValue: Binary | None
428
+ StringListValues: StringList | None
429
+ BinaryListValues: BinaryList | None
430
430
  DataType: String
431
431
 
432
432
 
433
- MessageBodyAttributeMap = Dict[String, MessageAttributeValue]
434
- MessageSystemAttributeMap = Dict[MessageSystemAttributeName, String]
433
+ MessageBodyAttributeMap = dict[String, MessageAttributeValue]
434
+ MessageSystemAttributeMap = dict[MessageSystemAttributeName, String]
435
435
 
436
436
 
437
437
  class Message(TypedDict, total=False):
438
- MessageId: Optional[String]
439
- ReceiptHandle: Optional[String]
440
- MD5OfBody: Optional[String]
441
- Body: Optional[String]
442
- Attributes: Optional[MessageSystemAttributeMap]
443
- MD5OfMessageAttributes: Optional[String]
444
- MessageAttributes: Optional[MessageBodyAttributeMap]
438
+ MessageId: String | None
439
+ ReceiptHandle: String | None
440
+ MD5OfBody: String | None
441
+ Body: String | None
442
+ Attributes: MessageSystemAttributeMap | None
443
+ MD5OfMessageAttributes: String | None
444
+ MessageAttributes: MessageBodyAttributeMap | None
445
445
 
446
446
 
447
- MessageAttributeNameList = List[MessageAttributeName]
447
+ MessageAttributeNameList = list[MessageAttributeName]
448
448
 
449
449
 
450
450
  class MessageSystemAttributeValue(TypedDict, total=False):
451
- StringValue: Optional[String]
452
- BinaryValue: Optional[Binary]
453
- StringListValues: Optional[StringList]
454
- BinaryListValues: Optional[BinaryList]
451
+ StringValue: String | None
452
+ BinaryValue: Binary | None
453
+ StringListValues: StringList | None
454
+ BinaryListValues: BinaryList | None
455
455
  DataType: String
456
456
 
457
457
 
458
- MessageBodySystemAttributeMap = Dict[
458
+ MessageBodySystemAttributeMap = dict[
459
459
  MessageSystemAttributeNameForSends, MessageSystemAttributeValue
460
460
  ]
461
- MessageList = List[Message]
462
- MessageSystemAttributeList = List[MessageSystemAttributeName]
461
+ MessageList = list[Message]
462
+ MessageSystemAttributeList = list[MessageSystemAttributeName]
463
463
 
464
464
 
465
465
  class PurgeQueueRequest(ServiceRequest):
@@ -468,17 +468,17 @@ class PurgeQueueRequest(ServiceRequest):
468
468
 
469
469
  class ReceiveMessageRequest(ServiceRequest):
470
470
  QueueUrl: String
471
- AttributeNames: Optional[AttributeNameList]
472
- MessageSystemAttributeNames: Optional[MessageSystemAttributeList]
473
- MessageAttributeNames: Optional[MessageAttributeNameList]
474
- MaxNumberOfMessages: Optional[NullableInteger]
475
- VisibilityTimeout: Optional[NullableInteger]
476
- WaitTimeSeconds: Optional[NullableInteger]
477
- ReceiveRequestAttemptId: Optional[String]
471
+ AttributeNames: AttributeNameList | None
472
+ MessageSystemAttributeNames: MessageSystemAttributeList | None
473
+ MessageAttributeNames: MessageAttributeNameList | None
474
+ MaxNumberOfMessages: NullableInteger | None
475
+ VisibilityTimeout: NullableInteger | None
476
+ WaitTimeSeconds: NullableInteger | None
477
+ ReceiveRequestAttemptId: String | None
478
478
 
479
479
 
480
480
  class ReceiveMessageResult(TypedDict, total=False):
481
- Messages: Optional[MessageList]
481
+ Messages: MessageList | None
482
482
 
483
483
 
484
484
  class RemovePermissionRequest(ServiceRequest):
@@ -489,14 +489,14 @@ class RemovePermissionRequest(ServiceRequest):
489
489
  class SendMessageBatchRequestEntry(TypedDict, total=False):
490
490
  Id: String
491
491
  MessageBody: String
492
- DelaySeconds: Optional[NullableInteger]
493
- MessageAttributes: Optional[MessageBodyAttributeMap]
494
- MessageSystemAttributes: Optional[MessageBodySystemAttributeMap]
495
- MessageDeduplicationId: Optional[String]
496
- MessageGroupId: Optional[String]
492
+ DelaySeconds: NullableInteger | None
493
+ MessageAttributes: MessageBodyAttributeMap | None
494
+ MessageSystemAttributes: MessageBodySystemAttributeMap | None
495
+ MessageDeduplicationId: String | None
496
+ MessageGroupId: String | None
497
497
 
498
498
 
499
- SendMessageBatchRequestEntryList = List[SendMessageBatchRequestEntry]
499
+ SendMessageBatchRequestEntryList = list[SendMessageBatchRequestEntry]
500
500
 
501
501
 
502
502
  class SendMessageBatchRequest(ServiceRequest):
@@ -508,12 +508,12 @@ class SendMessageBatchResultEntry(TypedDict, total=False):
508
508
  Id: String
509
509
  MessageId: String
510
510
  MD5OfMessageBody: String
511
- MD5OfMessageAttributes: Optional[String]
512
- MD5OfMessageSystemAttributes: Optional[String]
513
- SequenceNumber: Optional[String]
511
+ MD5OfMessageAttributes: String | None
512
+ MD5OfMessageSystemAttributes: String | None
513
+ SequenceNumber: String | None
514
514
 
515
515
 
516
- SendMessageBatchResultEntryList = List[SendMessageBatchResultEntry]
516
+ SendMessageBatchResultEntryList = list[SendMessageBatchResultEntry]
517
517
 
518
518
 
519
519
  class SendMessageBatchResult(TypedDict, total=False):
@@ -524,19 +524,19 @@ class SendMessageBatchResult(TypedDict, total=False):
524
524
  class SendMessageRequest(ServiceRequest):
525
525
  QueueUrl: String
526
526
  MessageBody: String
527
- DelaySeconds: Optional[NullableInteger]
528
- MessageAttributes: Optional[MessageBodyAttributeMap]
529
- MessageSystemAttributes: Optional[MessageBodySystemAttributeMap]
530
- MessageDeduplicationId: Optional[String]
531
- MessageGroupId: Optional[String]
527
+ DelaySeconds: NullableInteger | None
528
+ MessageAttributes: MessageBodyAttributeMap | None
529
+ MessageSystemAttributes: MessageBodySystemAttributeMap | None
530
+ MessageDeduplicationId: String | None
531
+ MessageGroupId: String | None
532
532
 
533
533
 
534
534
  class SendMessageResult(TypedDict, total=False):
535
- MD5OfMessageBody: Optional[String]
536
- MD5OfMessageAttributes: Optional[String]
537
- MD5OfMessageSystemAttributes: Optional[String]
538
- MessageId: Optional[String]
539
- SequenceNumber: Optional[String]
535
+ MD5OfMessageBody: String | None
536
+ MD5OfMessageAttributes: String | None
537
+ MD5OfMessageSystemAttributes: String | None
538
+ MessageId: String | None
539
+ SequenceNumber: String | None
540
540
 
541
541
 
542
542
  class SetQueueAttributesRequest(ServiceRequest):
@@ -546,15 +546,15 @@ class SetQueueAttributesRequest(ServiceRequest):
546
546
 
547
547
  class StartMessageMoveTaskRequest(ServiceRequest):
548
548
  SourceArn: String
549
- DestinationArn: Optional[String]
550
- MaxNumberOfMessagesPerSecond: Optional[NullableInteger]
549
+ DestinationArn: String | None
550
+ MaxNumberOfMessagesPerSecond: NullableInteger | None
551
551
 
552
552
 
553
553
  class StartMessageMoveTaskResult(TypedDict, total=False):
554
- TaskHandle: Optional[String]
554
+ TaskHandle: String | None
555
555
 
556
556
 
557
- TagKeyList = List[TagKey]
557
+ TagKeyList = list[TagKey]
558
558
 
559
559
 
560
560
  class TagQueueRequest(ServiceRequest):
@@ -568,8 +568,8 @@ class UntagQueueRequest(ServiceRequest):
568
568
 
569
569
 
570
570
  class SqsApi:
571
- service = "sqs"
572
- version = "2012-11-05"
571
+ service: str = "sqs"
572
+ version: str = "2012-11-05"
573
573
 
574
574
  @handler("AddPermission")
575
575
  def add_permission(