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
 
@@ -15,11 +15,14 @@ ExcludeLowercaseType = bool
15
15
  ExcludeNumbersType = bool
16
16
  ExcludePunctuationType = bool
17
17
  ExcludeUppercaseType = bool
18
+ ExternalSecretRotationMetadataItemKeyType = str
19
+ ExternalSecretRotationMetadataItemValueType = str
18
20
  FilterValueStringType = str
19
21
  IncludeSpaceType = bool
20
22
  KmsKeyIdType = str
21
23
  MaxResultsBatchType = int
22
24
  MaxResultsType = int
25
+ MedeaTypeType = str
23
26
  NameType = str
24
27
  NextTokenType = str
25
28
  NonEmptyResourcePolicyType = str
@@ -27,6 +30,7 @@ OwningServiceType = str
27
30
  RandomPasswordType = str
28
31
  RegionType = str
29
32
  RequireEachIncludedTypeType = bool
33
+ RoleARNType = str
30
34
  RotationEnabledType = bool
31
35
  RotationLambdaARNType = str
32
36
  RotationTokenType = str
@@ -136,62 +140,62 @@ class ResourceNotFoundException(ServiceException):
136
140
 
137
141
 
138
142
  class APIErrorType(TypedDict, total=False):
139
- SecretId: Optional[SecretIdType]
140
- ErrorCode: Optional[ErrorCode]
141
- Message: Optional[ErrorMessage]
143
+ SecretId: SecretIdType | None
144
+ ErrorCode: ErrorCode | None
145
+ Message: ErrorMessage | None
142
146
 
143
147
 
144
- APIErrorListType = List[APIErrorType]
148
+ APIErrorListType = list[APIErrorType]
145
149
 
146
150
 
147
151
  class ReplicaRegionType(TypedDict, total=False):
148
- Region: Optional[RegionType]
149
- KmsKeyId: Optional[KmsKeyIdType]
152
+ Region: RegionType | None
153
+ KmsKeyId: KmsKeyIdType | None
150
154
 
151
155
 
152
- AddReplicaRegionListType = List[ReplicaRegionType]
156
+ AddReplicaRegionListType = list[ReplicaRegionType]
153
157
  AutomaticallyRotateAfterDaysType = int
154
- FilterValuesStringList = List[FilterValueStringType]
158
+ FilterValuesStringList = list[FilterValueStringType]
155
159
 
156
160
 
157
161
  class Filter(TypedDict, total=False):
158
- Key: Optional[FilterNameStringType]
159
- Values: Optional[FilterValuesStringList]
162
+ Key: FilterNameStringType | None
163
+ Values: FilterValuesStringList | None
160
164
 
161
165
 
162
- FiltersListType = List[Filter]
163
- SecretIdListType = List[SecretIdType]
166
+ FiltersListType = list[Filter]
167
+ SecretIdListType = list[SecretIdType]
164
168
 
165
169
 
166
170
  class BatchGetSecretValueRequest(ServiceRequest):
167
- SecretIdList: Optional[SecretIdListType]
168
- Filters: Optional[FiltersListType]
169
- MaxResults: Optional[MaxResultsBatchType]
170
- NextToken: Optional[NextTokenType]
171
+ SecretIdList: SecretIdListType | None
172
+ Filters: FiltersListType | None
173
+ MaxResults: MaxResultsBatchType | None
174
+ NextToken: NextTokenType | None
171
175
 
172
176
 
173
177
  CreatedDateType = datetime
174
- SecretVersionStagesType = List[SecretVersionStageType]
178
+ SecretVersionStagesType = list[SecretVersionStageType]
175
179
  SecretBinaryType = bytes
176
180
 
177
181
 
178
182
  class SecretValueEntry(TypedDict, total=False):
179
- ARN: Optional[SecretARNType]
180
- Name: Optional[SecretNameType]
181
- VersionId: Optional[SecretVersionIdType]
182
- SecretBinary: Optional[SecretBinaryType]
183
- SecretString: Optional[SecretStringType]
184
- VersionStages: Optional[SecretVersionStagesType]
185
- CreatedDate: Optional[CreatedDateType]
183
+ ARN: SecretARNType | None
184
+ Name: SecretNameType | None
185
+ VersionId: SecretVersionIdType | None
186
+ SecretBinary: SecretBinaryType | None
187
+ SecretString: SecretStringType | None
188
+ VersionStages: SecretVersionStagesType | None
189
+ CreatedDate: CreatedDateType | None
186
190
 
187
191
 
188
- SecretValuesType = List[SecretValueEntry]
192
+ SecretValuesType = list[SecretValueEntry]
189
193
 
190
194
 
191
195
  class BatchGetSecretValueResponse(TypedDict, total=False):
192
- SecretValues: Optional[SecretValuesType]
193
- NextToken: Optional[NextTokenType]
194
- Errors: Optional[APIErrorListType]
196
+ SecretValues: SecretValuesType | None
197
+ NextToken: NextTokenType | None
198
+ Errors: APIErrorListType | None
195
199
 
196
200
 
197
201
  class CancelRotateSecretRequest(ServiceRequest):
@@ -199,50 +203,51 @@ class CancelRotateSecretRequest(ServiceRequest):
199
203
 
200
204
 
201
205
  class CancelRotateSecretResponse(TypedDict, total=False):
202
- ARN: Optional[SecretARNType]
203
- Name: Optional[SecretNameType]
204
- VersionId: Optional[SecretVersionIdType]
206
+ ARN: SecretARNType | None
207
+ Name: SecretNameType | None
208
+ VersionId: SecretVersionIdType | None
205
209
 
206
210
 
207
211
  class Tag(TypedDict, total=False):
208
- Key: Optional[TagKeyType]
209
- Value: Optional[TagValueType]
212
+ Key: TagKeyType | None
213
+ Value: TagValueType | None
210
214
 
211
215
 
212
- TagListType = List[Tag]
216
+ TagListType = list[Tag]
213
217
 
214
218
 
215
219
  class CreateSecretRequest(ServiceRequest):
216
220
  Name: NameType
217
- ClientRequestToken: Optional[ClientRequestTokenType]
218
- Description: Optional[DescriptionType]
219
- KmsKeyId: Optional[KmsKeyIdType]
220
- SecretBinary: Optional[SecretBinaryType]
221
- SecretString: Optional[SecretStringType]
222
- Tags: Optional[TagListType]
223
- AddReplicaRegions: Optional[AddReplicaRegionListType]
224
- ForceOverwriteReplicaSecret: Optional[BooleanType]
221
+ ClientRequestToken: ClientRequestTokenType | None
222
+ Description: DescriptionType | None
223
+ KmsKeyId: KmsKeyIdType | None
224
+ SecretBinary: SecretBinaryType | None
225
+ SecretString: SecretStringType | None
226
+ Tags: TagListType | None
227
+ AddReplicaRegions: AddReplicaRegionListType | None
228
+ ForceOverwriteReplicaSecret: BooleanType | None
229
+ Type: MedeaTypeType | None
225
230
 
226
231
 
227
232
  LastAccessedDateType = datetime
228
233
 
229
234
 
230
235
  class ReplicationStatusType(TypedDict, total=False):
231
- Region: Optional[RegionType]
232
- KmsKeyId: Optional[KmsKeyIdType]
233
- Status: Optional[StatusType]
234
- StatusMessage: Optional[StatusMessageType]
235
- LastAccessedDate: Optional[LastAccessedDateType]
236
+ Region: RegionType | None
237
+ KmsKeyId: KmsKeyIdType | None
238
+ Status: StatusType | None
239
+ StatusMessage: StatusMessageType | None
240
+ LastAccessedDate: LastAccessedDateType | None
236
241
 
237
242
 
238
- ReplicationStatusListType = List[ReplicationStatusType]
243
+ ReplicationStatusListType = list[ReplicationStatusType]
239
244
 
240
245
 
241
246
  class CreateSecretResponse(TypedDict, total=False):
242
- ARN: Optional[SecretARNType]
243
- Name: Optional[SecretNameType]
244
- VersionId: Optional[SecretVersionIdType]
245
- ReplicationStatus: Optional[ReplicationStatusListType]
247
+ ARN: SecretARNType | None
248
+ Name: SecretNameType | None
249
+ VersionId: SecretVersionIdType | None
250
+ ReplicationStatus: ReplicationStatusListType | None
246
251
 
247
252
 
248
253
  class DeleteResourcePolicyRequest(ServiceRequest):
@@ -250,8 +255,8 @@ class DeleteResourcePolicyRequest(ServiceRequest):
250
255
 
251
256
 
252
257
  class DeleteResourcePolicyResponse(TypedDict, total=False):
253
- ARN: Optional[SecretARNType]
254
- Name: Optional[NameType]
258
+ ARN: SecretARNType | None
259
+ Name: NameType | None
255
260
 
256
261
 
257
262
  RecoveryWindowInDaysType = int
@@ -259,17 +264,17 @@ RecoveryWindowInDaysType = int
259
264
 
260
265
  class DeleteSecretRequest(ServiceRequest):
261
266
  SecretId: SecretIdType
262
- RecoveryWindowInDays: Optional[RecoveryWindowInDaysType]
263
- ForceDeleteWithoutRecovery: Optional[BooleanType]
267
+ RecoveryWindowInDays: RecoveryWindowInDaysType | None
268
+ ForceDeleteWithoutRecovery: BooleanType | None
264
269
 
265
270
 
266
271
  DeletionDateType = datetime
267
272
 
268
273
 
269
274
  class DeleteSecretResponse(TypedDict, total=False):
270
- ARN: Optional[SecretARNType]
271
- Name: Optional[SecretNameType]
272
- DeletionDate: Optional[DeletionDateType]
275
+ ARN: SecretARNType | None
276
+ Name: SecretNameType | None
277
+ DeletionDate: DeletionDateType | None
273
278
 
274
279
 
275
280
  DeletedDateType = datetime
@@ -280,55 +285,66 @@ class DescribeSecretRequest(ServiceRequest):
280
285
 
281
286
 
282
287
  TimestampType = datetime
283
- SecretVersionsToStagesMapType = Dict[SecretVersionIdType, SecretVersionStagesType]
288
+ SecretVersionsToStagesMapType = dict[SecretVersionIdType, SecretVersionStagesType]
284
289
  NextRotationDateType = datetime
285
290
  LastChangedDateType = datetime
286
291
  LastRotatedDateType = datetime
287
292
 
288
293
 
294
+ class ExternalSecretRotationMetadataItem(TypedDict, total=False):
295
+ Key: ExternalSecretRotationMetadataItemKeyType | None
296
+ Value: ExternalSecretRotationMetadataItemValueType | None
297
+
298
+
299
+ ExternalSecretRotationMetadataType = list[ExternalSecretRotationMetadataItem]
300
+
301
+
289
302
  class RotationRulesType(TypedDict, total=False):
290
- AutomaticallyAfterDays: Optional[AutomaticallyRotateAfterDaysType]
291
- Duration: Optional[DurationType]
292
- ScheduleExpression: Optional[ScheduleExpressionType]
303
+ AutomaticallyAfterDays: AutomaticallyRotateAfterDaysType | None
304
+ Duration: DurationType | None
305
+ ScheduleExpression: ScheduleExpressionType | None
293
306
 
294
307
 
295
308
  class DescribeSecretResponse(TypedDict, total=False):
296
- ARN: Optional[SecretARNType]
297
- Name: Optional[SecretNameType]
298
- Description: Optional[DescriptionType]
299
- KmsKeyId: Optional[KmsKeyIdType]
300
- RotationEnabled: Optional[RotationEnabledType]
301
- RotationLambdaARN: Optional[RotationLambdaARNType]
302
- RotationRules: Optional[RotationRulesType]
303
- LastRotatedDate: Optional[LastRotatedDateType]
304
- LastChangedDate: Optional[LastChangedDateType]
305
- LastAccessedDate: Optional[LastAccessedDateType]
306
- DeletedDate: Optional[DeletedDateType]
307
- NextRotationDate: Optional[NextRotationDateType]
308
- Tags: Optional[TagListType]
309
- VersionIdsToStages: Optional[SecretVersionsToStagesMapType]
310
- OwningService: Optional[OwningServiceType]
311
- CreatedDate: Optional[TimestampType]
312
- PrimaryRegion: Optional[RegionType]
313
- ReplicationStatus: Optional[ReplicationStatusListType]
309
+ ARN: SecretARNType | None
310
+ Name: SecretNameType | None
311
+ Type: MedeaTypeType | None
312
+ Description: DescriptionType | None
313
+ KmsKeyId: KmsKeyIdType | None
314
+ RotationEnabled: RotationEnabledType | None
315
+ RotationLambdaARN: RotationLambdaARNType | None
316
+ RotationRules: RotationRulesType | None
317
+ ExternalSecretRotationMetadata: ExternalSecretRotationMetadataType | None
318
+ ExternalSecretRotationRoleArn: RoleARNType | None
319
+ LastRotatedDate: LastRotatedDateType | None
320
+ LastChangedDate: LastChangedDateType | None
321
+ LastAccessedDate: LastAccessedDateType | None
322
+ DeletedDate: DeletedDateType | None
323
+ NextRotationDate: NextRotationDateType | None
324
+ Tags: TagListType | None
325
+ VersionIdsToStages: SecretVersionsToStagesMapType | None
326
+ OwningService: OwningServiceType | None
327
+ CreatedDate: TimestampType | None
328
+ PrimaryRegion: RegionType | None
329
+ ReplicationStatus: ReplicationStatusListType | None
314
330
 
315
331
 
316
332
  PasswordLengthType = int
317
333
 
318
334
 
319
335
  class GetRandomPasswordRequest(ServiceRequest):
320
- PasswordLength: Optional[PasswordLengthType]
321
- ExcludeCharacters: Optional[ExcludeCharactersType]
322
- ExcludeNumbers: Optional[ExcludeNumbersType]
323
- ExcludePunctuation: Optional[ExcludePunctuationType]
324
- ExcludeUppercase: Optional[ExcludeUppercaseType]
325
- ExcludeLowercase: Optional[ExcludeLowercaseType]
326
- IncludeSpace: Optional[IncludeSpaceType]
327
- RequireEachIncludedType: Optional[RequireEachIncludedTypeType]
336
+ PasswordLength: PasswordLengthType | None
337
+ ExcludeCharacters: ExcludeCharactersType | None
338
+ ExcludeNumbers: ExcludeNumbersType | None
339
+ ExcludePunctuation: ExcludePunctuationType | None
340
+ ExcludeUppercase: ExcludeUppercaseType | None
341
+ ExcludeLowercase: ExcludeLowercaseType | None
342
+ IncludeSpace: IncludeSpaceType | None
343
+ RequireEachIncludedType: RequireEachIncludedTypeType | None
328
344
 
329
345
 
330
346
  class GetRandomPasswordResponse(TypedDict, total=False):
331
- RandomPassword: Optional[RandomPasswordType]
347
+ RandomPassword: RandomPasswordType | None
332
348
 
333
349
 
334
350
  class GetResourcePolicyRequest(ServiceRequest):
@@ -336,119 +352,122 @@ class GetResourcePolicyRequest(ServiceRequest):
336
352
 
337
353
 
338
354
  class GetResourcePolicyResponse(TypedDict, total=False):
339
- ARN: Optional[SecretARNType]
340
- Name: Optional[NameType]
341
- ResourcePolicy: Optional[NonEmptyResourcePolicyType]
355
+ ARN: SecretARNType | None
356
+ Name: NameType | None
357
+ ResourcePolicy: NonEmptyResourcePolicyType | None
342
358
 
343
359
 
344
360
  class GetSecretValueRequest(ServiceRequest):
345
361
  SecretId: SecretIdType
346
- VersionId: Optional[SecretVersionIdType]
347
- VersionStage: Optional[SecretVersionStageType]
362
+ VersionId: SecretVersionIdType | None
363
+ VersionStage: SecretVersionStageType | None
348
364
 
349
365
 
350
366
  class GetSecretValueResponse(TypedDict, total=False):
351
- ARN: Optional[SecretARNType]
352
- Name: Optional[SecretNameType]
353
- VersionId: Optional[SecretVersionIdType]
354
- SecretBinary: Optional[SecretBinaryType]
355
- SecretString: Optional[SecretStringType]
356
- VersionStages: Optional[SecretVersionStagesType]
357
- CreatedDate: Optional[CreatedDateType]
367
+ ARN: SecretARNType | None
368
+ Name: SecretNameType | None
369
+ VersionId: SecretVersionIdType | None
370
+ SecretBinary: SecretBinaryType | None
371
+ SecretString: SecretStringType | None
372
+ VersionStages: SecretVersionStagesType | None
373
+ CreatedDate: CreatedDateType | None
358
374
 
359
375
 
360
- KmsKeyIdListType = List[KmsKeyIdType]
376
+ KmsKeyIdListType = list[KmsKeyIdType]
361
377
 
362
378
 
363
379
  class ListSecretVersionIdsRequest(ServiceRequest):
364
380
  SecretId: SecretIdType
365
- MaxResults: Optional[MaxResultsType]
366
- NextToken: Optional[NextTokenType]
367
- IncludeDeprecated: Optional[BooleanType]
381
+ MaxResults: MaxResultsType | None
382
+ NextToken: NextTokenType | None
383
+ IncludeDeprecated: BooleanType | None
368
384
 
369
385
 
370
386
  class SecretVersionsListEntry(TypedDict, total=False):
371
- VersionId: Optional[SecretVersionIdType]
372
- VersionStages: Optional[SecretVersionStagesType]
373
- LastAccessedDate: Optional[LastAccessedDateType]
374
- CreatedDate: Optional[CreatedDateType]
375
- KmsKeyIds: Optional[KmsKeyIdListType]
387
+ VersionId: SecretVersionIdType | None
388
+ VersionStages: SecretVersionStagesType | None
389
+ LastAccessedDate: LastAccessedDateType | None
390
+ CreatedDate: CreatedDateType | None
391
+ KmsKeyIds: KmsKeyIdListType | None
376
392
 
377
393
 
378
- SecretVersionsListType = List[SecretVersionsListEntry]
394
+ SecretVersionsListType = list[SecretVersionsListEntry]
379
395
 
380
396
 
381
397
  class ListSecretVersionIdsResponse(TypedDict, total=False):
382
- Versions: Optional[SecretVersionsListType]
383
- NextToken: Optional[NextTokenType]
384
- ARN: Optional[SecretARNType]
385
- Name: Optional[SecretNameType]
398
+ Versions: SecretVersionsListType | None
399
+ NextToken: NextTokenType | None
400
+ ARN: SecretARNType | None
401
+ Name: SecretNameType | None
386
402
 
387
403
 
388
404
  class ListSecretsRequest(ServiceRequest):
389
- IncludePlannedDeletion: Optional[BooleanType]
390
- MaxResults: Optional[MaxResultsType]
391
- NextToken: Optional[NextTokenType]
392
- Filters: Optional[FiltersListType]
393
- SortOrder: Optional[SortOrderType]
405
+ IncludePlannedDeletion: BooleanType | None
406
+ MaxResults: MaxResultsType | None
407
+ NextToken: NextTokenType | None
408
+ Filters: FiltersListType | None
409
+ SortOrder: SortOrderType | None
394
410
 
395
411
 
396
412
  class SecretListEntry(TypedDict, total=False):
397
- ARN: Optional[SecretARNType]
398
- Name: Optional[SecretNameType]
399
- Description: Optional[DescriptionType]
400
- KmsKeyId: Optional[KmsKeyIdType]
401
- RotationEnabled: Optional[RotationEnabledType]
402
- RotationLambdaARN: Optional[RotationLambdaARNType]
403
- RotationRules: Optional[RotationRulesType]
404
- LastRotatedDate: Optional[LastRotatedDateType]
405
- LastChangedDate: Optional[LastChangedDateType]
406
- LastAccessedDate: Optional[LastAccessedDateType]
407
- DeletedDate: Optional[DeletedDateType]
408
- NextRotationDate: Optional[NextRotationDateType]
409
- Tags: Optional[TagListType]
410
- SecretVersionsToStages: Optional[SecretVersionsToStagesMapType]
411
- OwningService: Optional[OwningServiceType]
412
- CreatedDate: Optional[TimestampType]
413
- PrimaryRegion: Optional[RegionType]
414
-
415
-
416
- SecretListType = List[SecretListEntry]
413
+ ARN: SecretARNType | None
414
+ Name: SecretNameType | None
415
+ Type: MedeaTypeType | None
416
+ Description: DescriptionType | None
417
+ KmsKeyId: KmsKeyIdType | None
418
+ RotationEnabled: RotationEnabledType | None
419
+ RotationLambdaARN: RotationLambdaARNType | None
420
+ RotationRules: RotationRulesType | None
421
+ ExternalSecretRotationMetadata: ExternalSecretRotationMetadataType | None
422
+ ExternalSecretRotationRoleArn: RoleARNType | None
423
+ LastRotatedDate: LastRotatedDateType | None
424
+ LastChangedDate: LastChangedDateType | None
425
+ LastAccessedDate: LastAccessedDateType | None
426
+ DeletedDate: DeletedDateType | None
427
+ NextRotationDate: NextRotationDateType | None
428
+ Tags: TagListType | None
429
+ SecretVersionsToStages: SecretVersionsToStagesMapType | None
430
+ OwningService: OwningServiceType | None
431
+ CreatedDate: TimestampType | None
432
+ PrimaryRegion: RegionType | None
433
+
434
+
435
+ SecretListType = list[SecretListEntry]
417
436
 
418
437
 
419
438
  class ListSecretsResponse(TypedDict, total=False):
420
- SecretList: Optional[SecretListType]
421
- NextToken: Optional[NextTokenType]
439
+ SecretList: SecretListType | None
440
+ NextToken: NextTokenType | None
422
441
 
423
442
 
424
443
  class PutResourcePolicyRequest(ServiceRequest):
425
444
  SecretId: SecretIdType
426
445
  ResourcePolicy: NonEmptyResourcePolicyType
427
- BlockPublicPolicy: Optional[BooleanType]
446
+ BlockPublicPolicy: BooleanType | None
428
447
 
429
448
 
430
449
  class PutResourcePolicyResponse(TypedDict, total=False):
431
- ARN: Optional[SecretARNType]
432
- Name: Optional[NameType]
450
+ ARN: SecretARNType | None
451
+ Name: NameType | None
433
452
 
434
453
 
435
454
  class PutSecretValueRequest(ServiceRequest):
436
455
  SecretId: SecretIdType
437
- ClientRequestToken: Optional[ClientRequestTokenType]
438
- SecretBinary: Optional[SecretBinaryType]
439
- SecretString: Optional[SecretStringType]
440
- VersionStages: Optional[SecretVersionStagesType]
441
- RotationToken: Optional[RotationTokenType]
456
+ ClientRequestToken: ClientRequestTokenType | None
457
+ SecretBinary: SecretBinaryType | None
458
+ SecretString: SecretStringType | None
459
+ VersionStages: SecretVersionStagesType | None
460
+ RotationToken: RotationTokenType | None
442
461
 
443
462
 
444
463
  class PutSecretValueResponse(TypedDict, total=False):
445
- ARN: Optional[SecretARNType]
446
- Name: Optional[SecretNameType]
447
- VersionId: Optional[SecretVersionIdType]
448
- VersionStages: Optional[SecretVersionStagesType]
464
+ ARN: SecretARNType | None
465
+ Name: SecretNameType | None
466
+ VersionId: SecretVersionIdType | None
467
+ VersionStages: SecretVersionStagesType | None
449
468
 
450
469
 
451
- RemoveReplicaRegionListType = List[RegionType]
470
+ RemoveReplicaRegionListType = list[RegionType]
452
471
 
453
472
 
454
473
  class RemoveRegionsFromReplicationRequest(ServiceRequest):
@@ -457,19 +476,19 @@ class RemoveRegionsFromReplicationRequest(ServiceRequest):
457
476
 
458
477
 
459
478
  class RemoveRegionsFromReplicationResponse(TypedDict, total=False):
460
- ARN: Optional[SecretARNType]
461
- ReplicationStatus: Optional[ReplicationStatusListType]
479
+ ARN: SecretARNType | None
480
+ ReplicationStatus: ReplicationStatusListType | None
462
481
 
463
482
 
464
483
  class ReplicateSecretToRegionsRequest(ServiceRequest):
465
484
  SecretId: SecretIdType
466
485
  AddReplicaRegions: AddReplicaRegionListType
467
- ForceOverwriteReplicaSecret: Optional[BooleanType]
486
+ ForceOverwriteReplicaSecret: BooleanType | None
468
487
 
469
488
 
470
489
  class ReplicateSecretToRegionsResponse(TypedDict, total=False):
471
- ARN: Optional[SecretARNType]
472
- ReplicationStatus: Optional[ReplicationStatusListType]
490
+ ARN: SecretARNType | None
491
+ ReplicationStatus: ReplicationStatusListType | None
473
492
 
474
493
 
475
494
  class RestoreSecretRequest(ServiceRequest):
@@ -477,22 +496,24 @@ class RestoreSecretRequest(ServiceRequest):
477
496
 
478
497
 
479
498
  class RestoreSecretResponse(TypedDict, total=False):
480
- ARN: Optional[SecretARNType]
481
- Name: Optional[SecretNameType]
499
+ ARN: SecretARNType | None
500
+ Name: SecretNameType | None
482
501
 
483
502
 
484
503
  class RotateSecretRequest(ServiceRequest):
485
504
  SecretId: SecretIdType
486
- ClientRequestToken: Optional[ClientRequestTokenType]
487
- RotationLambdaARN: Optional[RotationLambdaARNType]
488
- RotationRules: Optional[RotationRulesType]
489
- RotateImmediately: Optional[BooleanType]
505
+ ClientRequestToken: ClientRequestTokenType | None
506
+ RotationLambdaARN: RotationLambdaARNType | None
507
+ RotationRules: RotationRulesType | None
508
+ ExternalSecretRotationMetadata: ExternalSecretRotationMetadataType | None
509
+ ExternalSecretRotationRoleArn: RoleARNType | None
510
+ RotateImmediately: BooleanType | None
490
511
 
491
512
 
492
513
  class RotateSecretResponse(TypedDict, total=False):
493
- ARN: Optional[SecretARNType]
494
- Name: Optional[SecretNameType]
495
- VersionId: Optional[SecretVersionIdType]
514
+ ARN: SecretARNType | None
515
+ Name: SecretNameType | None
516
+ VersionId: SecretVersionIdType | None
496
517
 
497
518
 
498
519
  class StopReplicationToReplicaRequest(ServiceRequest):
@@ -500,10 +521,10 @@ class StopReplicationToReplicaRequest(ServiceRequest):
500
521
 
501
522
 
502
523
  class StopReplicationToReplicaResponse(TypedDict, total=False):
503
- ARN: Optional[SecretARNType]
524
+ ARN: SecretARNType | None
504
525
 
505
526
 
506
- TagKeyListType = List[TagKeyType]
527
+ TagKeyListType = list[TagKeyType]
507
528
 
508
529
 
509
530
  class TagResourceRequest(ServiceRequest):
@@ -518,52 +539,53 @@ class UntagResourceRequest(ServiceRequest):
518
539
 
519
540
  class UpdateSecretRequest(ServiceRequest):
520
541
  SecretId: SecretIdType
521
- ClientRequestToken: Optional[ClientRequestTokenType]
522
- Description: Optional[DescriptionType]
523
- KmsKeyId: Optional[KmsKeyIdType]
524
- SecretBinary: Optional[SecretBinaryType]
525
- SecretString: Optional[SecretStringType]
542
+ ClientRequestToken: ClientRequestTokenType | None
543
+ Description: DescriptionType | None
544
+ KmsKeyId: KmsKeyIdType | None
545
+ SecretBinary: SecretBinaryType | None
546
+ SecretString: SecretStringType | None
547
+ Type: MedeaTypeType | None
526
548
 
527
549
 
528
550
  class UpdateSecretResponse(TypedDict, total=False):
529
- ARN: Optional[SecretARNType]
530
- Name: Optional[SecretNameType]
531
- VersionId: Optional[SecretVersionIdType]
551
+ ARN: SecretARNType | None
552
+ Name: SecretNameType | None
553
+ VersionId: SecretVersionIdType | None
532
554
 
533
555
 
534
556
  class UpdateSecretVersionStageRequest(ServiceRequest):
535
557
  SecretId: SecretIdType
536
558
  VersionStage: SecretVersionStageType
537
- RemoveFromVersionId: Optional[SecretVersionIdType]
538
- MoveToVersionId: Optional[SecretVersionIdType]
559
+ RemoveFromVersionId: SecretVersionIdType | None
560
+ MoveToVersionId: SecretVersionIdType | None
539
561
 
540
562
 
541
563
  class UpdateSecretVersionStageResponse(TypedDict, total=False):
542
- ARN: Optional[SecretARNType]
543
- Name: Optional[SecretNameType]
564
+ ARN: SecretARNType | None
565
+ Name: SecretNameType | None
544
566
 
545
567
 
546
568
  class ValidateResourcePolicyRequest(ServiceRequest):
547
- SecretId: Optional[SecretIdType]
569
+ SecretId: SecretIdType | None
548
570
  ResourcePolicy: NonEmptyResourcePolicyType
549
571
 
550
572
 
551
573
  class ValidationErrorsEntry(TypedDict, total=False):
552
- CheckName: Optional[NameType]
553
- ErrorMessage: Optional[ErrorMessage]
574
+ CheckName: NameType | None
575
+ ErrorMessage: ErrorMessage | None
554
576
 
555
577
 
556
- ValidationErrorsType = List[ValidationErrorsEntry]
578
+ ValidationErrorsType = list[ValidationErrorsEntry]
557
579
 
558
580
 
559
581
  class ValidateResourcePolicyResponse(TypedDict, total=False):
560
- PolicyValidationPassed: Optional[BooleanType]
561
- ValidationErrors: Optional[ValidationErrorsType]
582
+ PolicyValidationPassed: BooleanType | None
583
+ ValidationErrors: ValidationErrorsType | None
562
584
 
563
585
 
564
586
  class SecretsmanagerApi:
565
- service = "secretsmanager"
566
- version = "2017-10-17"
587
+ service: str = "secretsmanager"
588
+ version: str = "2017-10-17"
567
589
 
568
590
  @handler("BatchGetSecretValue")
569
591
  def batch_get_secret_value(
@@ -583,20 +605,9 @@ class SecretsmanagerApi:
583
605
  ) -> CancelRotateSecretResponse:
584
606
  raise NotImplementedError
585
607
 
586
- @handler("CreateSecret")
608
+ @handler("CreateSecret", expand=False)
587
609
  def create_secret(
588
- self,
589
- context: RequestContext,
590
- name: NameType,
591
- client_request_token: ClientRequestTokenType | None = None,
592
- description: DescriptionType | None = None,
593
- kms_key_id: KmsKeyIdType | None = None,
594
- secret_binary: SecretBinaryType | None = None,
595
- secret_string: SecretStringType | None = None,
596
- tags: TagListType | None = None,
597
- add_replica_regions: AddReplicaRegionListType | None = None,
598
- force_overwrite_replica_secret: BooleanType | None = None,
599
- **kwargs,
610
+ self, context: RequestContext, request: CreateSecretRequest, **kwargs
600
611
  ) -> CreateSecretResponse:
601
612
  raise NotImplementedError
602
613
 
@@ -741,6 +752,8 @@ class SecretsmanagerApi:
741
752
  client_request_token: ClientRequestTokenType | None = None,
742
753
  rotation_lambda_arn: RotationLambdaARNType | None = None,
743
754
  rotation_rules: RotationRulesType | None = None,
755
+ external_secret_rotation_metadata: ExternalSecretRotationMetadataType | None = None,
756
+ external_secret_rotation_role_arn: RoleARNType | None = None,
744
757
  rotate_immediately: BooleanType | None = None,
745
758
  **kwargs,
746
759
  ) -> RotateSecretResponse:
@@ -764,17 +777,9 @@ class SecretsmanagerApi:
764
777
  ) -> None:
765
778
  raise NotImplementedError
766
779
 
767
- @handler("UpdateSecret")
780
+ @handler("UpdateSecret", expand=False)
768
781
  def update_secret(
769
- self,
770
- context: RequestContext,
771
- secret_id: SecretIdType,
772
- client_request_token: ClientRequestTokenType | None = None,
773
- description: DescriptionType | None = None,
774
- kms_key_id: KmsKeyIdType | None = None,
775
- secret_binary: SecretBinaryType | None = None,
776
- secret_string: SecretStringType | None = None,
777
- **kwargs,
782
+ self, context: RequestContext, request: UpdateSecretRequest, **kwargs
778
783
  ) -> UpdateSecretResponse:
779
784
  raise NotImplementedError
780
785