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,6 +1,6 @@
1
1
  from datetime import datetime
2
2
  from enum import StrEnum
3
- from typing import Dict, List, Optional, TypedDict
3
+ from typing import TypedDict
4
4
 
5
5
  from localstack.aws.api import RequestContext, ServiceException, ServiceRequest, handler
6
6
 
@@ -132,23 +132,23 @@ class ValidationException(ServiceException):
132
132
  status_code: int = 400
133
133
 
134
134
 
135
- Subnets = List[Subnet]
136
- SecurityGroups = List[SecurityGroup]
135
+ Subnets = list[Subnet]
136
+ SecurityGroups = list[SecurityGroup]
137
137
 
138
138
 
139
139
  class AwsVpcConfiguration(TypedDict, total=False):
140
- AssignPublicIp: Optional[AssignPublicIp]
141
- SecurityGroups: Optional[SecurityGroups]
140
+ AssignPublicIp: AssignPublicIp | None
141
+ SecurityGroups: SecurityGroups | None
142
142
  Subnets: Subnets
143
143
 
144
144
 
145
145
  class CapacityProviderStrategyItem(TypedDict, total=False):
146
- base: Optional[CapacityProviderStrategyItemBase]
146
+ base: CapacityProviderStrategyItemBase | None
147
147
  capacityProvider: CapacityProvider
148
- weight: Optional[CapacityProviderStrategyItemWeight]
148
+ weight: CapacityProviderStrategyItemWeight | None
149
149
 
150
150
 
151
- CapacityProviderStrategy = List[CapacityProviderStrategyItem]
151
+ CapacityProviderStrategy = list[CapacityProviderStrategyItem]
152
152
 
153
153
 
154
154
  class Tag(TypedDict, total=False):
@@ -156,13 +156,13 @@ class Tag(TypedDict, total=False):
156
156
  Value: TagValue
157
157
 
158
158
 
159
- TagList = List[Tag]
159
+ TagList = list[Tag]
160
160
 
161
161
 
162
162
  class CreateScheduleGroupInput(ServiceRequest):
163
- ClientToken: Optional[ClientToken]
163
+ ClientToken: ClientToken | None
164
164
  Name: ScheduleGroupName
165
- Tags: Optional[TagList]
165
+ Tags: TagList | None
166
166
 
167
167
 
168
168
  class CreateScheduleGroupOutput(TypedDict, total=False):
@@ -170,7 +170,7 @@ class CreateScheduleGroupOutput(TypedDict, total=False):
170
170
 
171
171
 
172
172
  class SqsParameters(TypedDict, total=False):
173
- MessageGroupId: Optional[MessageGroupId]
173
+ MessageGroupId: MessageGroupId | None
174
174
 
175
175
 
176
176
  class SageMakerPipelineParameter(TypedDict, total=False):
@@ -178,16 +178,16 @@ class SageMakerPipelineParameter(TypedDict, total=False):
178
178
  Value: SageMakerPipelineParameterValue
179
179
 
180
180
 
181
- SageMakerPipelineParameterList = List[SageMakerPipelineParameter]
181
+ SageMakerPipelineParameterList = list[SageMakerPipelineParameter]
182
182
 
183
183
 
184
184
  class SageMakerPipelineParameters(TypedDict, total=False):
185
- PipelineParameterList: Optional[SageMakerPipelineParameterList]
185
+ PipelineParameterList: SageMakerPipelineParameterList | None
186
186
 
187
187
 
188
188
  class RetryPolicy(TypedDict, total=False):
189
- MaximumEventAgeInSeconds: Optional[MaximumEventAgeInSeconds]
190
- MaximumRetryAttempts: Optional[MaximumRetryAttempts]
189
+ MaximumEventAgeInSeconds: MaximumEventAgeInSeconds | None
190
+ MaximumRetryAttempts: MaximumRetryAttempts | None
191
191
 
192
192
 
193
193
  class KinesisParameters(TypedDict, total=False):
@@ -199,69 +199,69 @@ class EventBridgeParameters(TypedDict, total=False):
199
199
  Source: Source
200
200
 
201
201
 
202
- TagMap = Dict[TagKey, TagValue]
203
- Tags = List[TagMap]
202
+ TagMap = dict[TagKey, TagValue]
203
+ Tags = list[TagMap]
204
204
 
205
205
 
206
206
  class PlacementStrategy(TypedDict, total=False):
207
- field: Optional[PlacementStrategyField]
208
- type: Optional[PlacementStrategyType]
207
+ field: PlacementStrategyField | None
208
+ type: PlacementStrategyType | None
209
209
 
210
210
 
211
- PlacementStrategies = List[PlacementStrategy]
211
+ PlacementStrategies = list[PlacementStrategy]
212
212
 
213
213
 
214
214
  class PlacementConstraint(TypedDict, total=False):
215
- expression: Optional[PlacementConstraintExpression]
216
- type: Optional[PlacementConstraintType]
215
+ expression: PlacementConstraintExpression | None
216
+ type: PlacementConstraintType | None
217
217
 
218
218
 
219
- PlacementConstraints = List[PlacementConstraint]
219
+ PlacementConstraints = list[PlacementConstraint]
220
220
 
221
221
 
222
222
  class NetworkConfiguration(TypedDict, total=False):
223
- awsvpcConfiguration: Optional[AwsVpcConfiguration]
223
+ awsvpcConfiguration: AwsVpcConfiguration | None
224
224
 
225
225
 
226
226
  class EcsParameters(TypedDict, total=False):
227
- CapacityProviderStrategy: Optional[CapacityProviderStrategy]
228
- EnableECSManagedTags: Optional[EnableECSManagedTags]
229
- EnableExecuteCommand: Optional[EnableExecuteCommand]
230
- Group: Optional[Group]
231
- LaunchType: Optional[LaunchType]
232
- NetworkConfiguration: Optional[NetworkConfiguration]
233
- PlacementConstraints: Optional[PlacementConstraints]
234
- PlacementStrategy: Optional[PlacementStrategies]
235
- PlatformVersion: Optional[PlatformVersion]
236
- PropagateTags: Optional[PropagateTags]
237
- ReferenceId: Optional[ReferenceId]
238
- Tags: Optional[Tags]
239
- TaskCount: Optional[TaskCount]
227
+ CapacityProviderStrategy: CapacityProviderStrategy | None
228
+ EnableECSManagedTags: EnableECSManagedTags | None
229
+ EnableExecuteCommand: EnableExecuteCommand | None
230
+ Group: Group | None
231
+ LaunchType: LaunchType | None
232
+ NetworkConfiguration: NetworkConfiguration | None
233
+ PlacementConstraints: PlacementConstraints | None
234
+ PlacementStrategy: PlacementStrategies | None
235
+ PlatformVersion: PlatformVersion | None
236
+ PropagateTags: PropagateTags | None
237
+ ReferenceId: ReferenceId | None
238
+ Tags: Tags | None
239
+ TaskCount: TaskCount | None
240
240
  TaskDefinitionArn: TaskDefinitionArn
241
241
 
242
242
 
243
243
  class DeadLetterConfig(TypedDict, total=False):
244
- Arn: Optional[DeadLetterConfigArnString]
244
+ Arn: DeadLetterConfigArnString | None
245
245
 
246
246
 
247
247
  class Target(TypedDict, total=False):
248
248
  Arn: TargetArn
249
- DeadLetterConfig: Optional[DeadLetterConfig]
250
- EcsParameters: Optional[EcsParameters]
251
- EventBridgeParameters: Optional[EventBridgeParameters]
252
- Input: Optional[TargetInput]
253
- KinesisParameters: Optional[KinesisParameters]
254
- RetryPolicy: Optional[RetryPolicy]
249
+ DeadLetterConfig: DeadLetterConfig | None
250
+ EcsParameters: EcsParameters | None
251
+ EventBridgeParameters: EventBridgeParameters | None
252
+ Input: TargetInput | None
253
+ KinesisParameters: KinesisParameters | None
254
+ RetryPolicy: RetryPolicy | None
255
255
  RoleArn: RoleArn
256
- SageMakerPipelineParameters: Optional[SageMakerPipelineParameters]
257
- SqsParameters: Optional[SqsParameters]
256
+ SageMakerPipelineParameters: SageMakerPipelineParameters | None
257
+ SqsParameters: SqsParameters | None
258
258
 
259
259
 
260
260
  StartDate = datetime
261
261
 
262
262
 
263
263
  class FlexibleTimeWindow(TypedDict, total=False):
264
- MaximumWindowInMinutes: Optional[MaximumWindowInMinutes]
264
+ MaximumWindowInMinutes: MaximumWindowInMinutes | None
265
265
  Mode: FlexibleTimeWindowMode
266
266
 
267
267
 
@@ -269,18 +269,18 @@ EndDate = datetime
269
269
 
270
270
 
271
271
  class CreateScheduleInput(ServiceRequest):
272
- ActionAfterCompletion: Optional[ActionAfterCompletion]
273
- ClientToken: Optional[ClientToken]
274
- Description: Optional[Description]
275
- EndDate: Optional[EndDate]
272
+ ActionAfterCompletion: ActionAfterCompletion | None
273
+ ClientToken: ClientToken | None
274
+ Description: Description | None
275
+ EndDate: EndDate | None
276
276
  FlexibleTimeWindow: FlexibleTimeWindow
277
- GroupName: Optional[ScheduleGroupName]
278
- KmsKeyArn: Optional[KmsKeyArn]
277
+ GroupName: ScheduleGroupName | None
278
+ KmsKeyArn: KmsKeyArn | None
279
279
  Name: Name
280
280
  ScheduleExpression: ScheduleExpression
281
- ScheduleExpressionTimezone: Optional[ScheduleExpressionTimezone]
282
- StartDate: Optional[StartDate]
283
- State: Optional[ScheduleState]
281
+ ScheduleExpressionTimezone: ScheduleExpressionTimezone | None
282
+ StartDate: StartDate | None
283
+ State: ScheduleState | None
284
284
  Target: Target
285
285
 
286
286
 
@@ -292,7 +292,7 @@ CreationDate = datetime
292
292
 
293
293
 
294
294
  class DeleteScheduleGroupInput(ServiceRequest):
295
- ClientToken: Optional[ClientToken]
295
+ ClientToken: ClientToken | None
296
296
  Name: ScheduleGroupName
297
297
 
298
298
 
@@ -301,8 +301,8 @@ class DeleteScheduleGroupOutput(TypedDict, total=False):
301
301
 
302
302
 
303
303
  class DeleteScheduleInput(ServiceRequest):
304
- ClientToken: Optional[ClientToken]
305
- GroupName: Optional[ScheduleGroupName]
304
+ ClientToken: ClientToken | None
305
+ GroupName: ScheduleGroupName | None
306
306
  Name: Name
307
307
 
308
308
 
@@ -318,64 +318,64 @@ LastModificationDate = datetime
318
318
 
319
319
 
320
320
  class GetScheduleGroupOutput(TypedDict, total=False):
321
- Arn: Optional[ScheduleGroupArn]
322
- CreationDate: Optional[CreationDate]
323
- LastModificationDate: Optional[LastModificationDate]
324
- Name: Optional[ScheduleGroupName]
325
- State: Optional[ScheduleGroupState]
321
+ Arn: ScheduleGroupArn | None
322
+ CreationDate: CreationDate | None
323
+ LastModificationDate: LastModificationDate | None
324
+ Name: ScheduleGroupName | None
325
+ State: ScheduleGroupState | None
326
326
 
327
327
 
328
328
  class GetScheduleInput(ServiceRequest):
329
- GroupName: Optional[ScheduleGroupName]
329
+ GroupName: ScheduleGroupName | None
330
330
  Name: Name
331
331
 
332
332
 
333
333
  class GetScheduleOutput(TypedDict, total=False):
334
- ActionAfterCompletion: Optional[ActionAfterCompletion]
335
- Arn: Optional[ScheduleArn]
336
- CreationDate: Optional[CreationDate]
337
- Description: Optional[Description]
338
- EndDate: Optional[EndDate]
339
- FlexibleTimeWindow: Optional[FlexibleTimeWindow]
340
- GroupName: Optional[ScheduleGroupName]
341
- KmsKeyArn: Optional[KmsKeyArn]
342
- LastModificationDate: Optional[LastModificationDate]
343
- Name: Optional[Name]
344
- ScheduleExpression: Optional[ScheduleExpression]
345
- ScheduleExpressionTimezone: Optional[ScheduleExpressionTimezone]
346
- StartDate: Optional[StartDate]
347
- State: Optional[ScheduleState]
348
- Target: Optional[Target]
334
+ ActionAfterCompletion: ActionAfterCompletion | None
335
+ Arn: ScheduleArn | None
336
+ CreationDate: CreationDate | None
337
+ Description: Description | None
338
+ EndDate: EndDate | None
339
+ FlexibleTimeWindow: FlexibleTimeWindow | None
340
+ GroupName: ScheduleGroupName | None
341
+ KmsKeyArn: KmsKeyArn | None
342
+ LastModificationDate: LastModificationDate | None
343
+ Name: Name | None
344
+ ScheduleExpression: ScheduleExpression | None
345
+ ScheduleExpressionTimezone: ScheduleExpressionTimezone | None
346
+ StartDate: StartDate | None
347
+ State: ScheduleState | None
348
+ Target: Target | None
349
349
 
350
350
 
351
351
  class ListScheduleGroupsInput(ServiceRequest):
352
- MaxResults: Optional[MaxResults]
353
- NamePrefix: Optional[ScheduleGroupNamePrefix]
354
- NextToken: Optional[NextToken]
352
+ MaxResults: MaxResults | None
353
+ NamePrefix: ScheduleGroupNamePrefix | None
354
+ NextToken: NextToken | None
355
355
 
356
356
 
357
357
  class ScheduleGroupSummary(TypedDict, total=False):
358
- Arn: Optional[ScheduleGroupArn]
359
- CreationDate: Optional[CreationDate]
360
- LastModificationDate: Optional[LastModificationDate]
361
- Name: Optional[ScheduleGroupName]
362
- State: Optional[ScheduleGroupState]
358
+ Arn: ScheduleGroupArn | None
359
+ CreationDate: CreationDate | None
360
+ LastModificationDate: LastModificationDate | None
361
+ Name: ScheduleGroupName | None
362
+ State: ScheduleGroupState | None
363
363
 
364
364
 
365
- ScheduleGroupList = List[ScheduleGroupSummary]
365
+ ScheduleGroupList = list[ScheduleGroupSummary]
366
366
 
367
367
 
368
368
  class ListScheduleGroupsOutput(TypedDict, total=False):
369
- NextToken: Optional[NextToken]
369
+ NextToken: NextToken | None
370
370
  ScheduleGroups: ScheduleGroupList
371
371
 
372
372
 
373
373
  class ListSchedulesInput(ServiceRequest):
374
- GroupName: Optional[ScheduleGroupName]
375
- MaxResults: Optional[MaxResults]
376
- NamePrefix: Optional[NamePrefix]
377
- NextToken: Optional[NextToken]
378
- State: Optional[ScheduleState]
374
+ GroupName: ScheduleGroupName | None
375
+ MaxResults: MaxResults | None
376
+ NamePrefix: NamePrefix | None
377
+ NextToken: NextToken | None
378
+ State: ScheduleState | None
379
379
 
380
380
 
381
381
  class TargetSummary(TypedDict, total=False):
@@ -383,20 +383,20 @@ class TargetSummary(TypedDict, total=False):
383
383
 
384
384
 
385
385
  class ScheduleSummary(TypedDict, total=False):
386
- Arn: Optional[ScheduleArn]
387
- CreationDate: Optional[CreationDate]
388
- GroupName: Optional[ScheduleGroupName]
389
- LastModificationDate: Optional[LastModificationDate]
390
- Name: Optional[Name]
391
- State: Optional[ScheduleState]
392
- Target: Optional[TargetSummary]
386
+ Arn: ScheduleArn | None
387
+ CreationDate: CreationDate | None
388
+ GroupName: ScheduleGroupName | None
389
+ LastModificationDate: LastModificationDate | None
390
+ Name: Name | None
391
+ State: ScheduleState | None
392
+ Target: TargetSummary | None
393
393
 
394
394
 
395
- ScheduleList = List[ScheduleSummary]
395
+ ScheduleList = list[ScheduleSummary]
396
396
 
397
397
 
398
398
  class ListSchedulesOutput(TypedDict, total=False):
399
- NextToken: Optional[NextToken]
399
+ NextToken: NextToken | None
400
400
  Schedules: ScheduleList
401
401
 
402
402
 
@@ -405,10 +405,10 @@ class ListTagsForResourceInput(ServiceRequest):
405
405
 
406
406
 
407
407
  class ListTagsForResourceOutput(TypedDict, total=False):
408
- Tags: Optional[TagList]
408
+ Tags: TagList | None
409
409
 
410
410
 
411
- TagKeyList = List[TagKey]
411
+ TagKeyList = list[TagKey]
412
412
 
413
413
 
414
414
  class TagResourceInput(ServiceRequest):
@@ -430,18 +430,18 @@ class UntagResourceOutput(TypedDict, total=False):
430
430
 
431
431
 
432
432
  class UpdateScheduleInput(ServiceRequest):
433
- ActionAfterCompletion: Optional[ActionAfterCompletion]
434
- ClientToken: Optional[ClientToken]
435
- Description: Optional[Description]
436
- EndDate: Optional[EndDate]
433
+ ActionAfterCompletion: ActionAfterCompletion | None
434
+ ClientToken: ClientToken | None
435
+ Description: Description | None
436
+ EndDate: EndDate | None
437
437
  FlexibleTimeWindow: FlexibleTimeWindow
438
- GroupName: Optional[ScheduleGroupName]
439
- KmsKeyArn: Optional[KmsKeyArn]
438
+ GroupName: ScheduleGroupName | None
439
+ KmsKeyArn: KmsKeyArn | None
440
440
  Name: Name
441
441
  ScheduleExpression: ScheduleExpression
442
- ScheduleExpressionTimezone: Optional[ScheduleExpressionTimezone]
443
- StartDate: Optional[StartDate]
444
- State: Optional[ScheduleState]
442
+ ScheduleExpressionTimezone: ScheduleExpressionTimezone | None
443
+ StartDate: StartDate | None
444
+ State: ScheduleState | None
445
445
  Target: Target
446
446
 
447
447
 
@@ -450,8 +450,8 @@ class UpdateScheduleOutput(TypedDict, total=False):
450
450
 
451
451
 
452
452
  class SchedulerApi:
453
- service = "scheduler"
454
- version = "2021-06-30"
453
+ service: str = "scheduler"
454
+ version: str = "2021-06-30"
455
455
 
456
456
  @handler("CreateSchedule")
457
457
  def create_schedule(