localstack-core 4.10.1.dev42__py3-none-any.whl → 4.12.1.dev18__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.
Files changed (158) hide show
  1. localstack/aws/api/apigateway/__init__.py +42 -0
  2. localstack/aws/api/cloudformation/__init__.py +161 -0
  3. localstack/aws/api/ec2/__init__.py +1178 -12
  4. localstack/aws/api/iam/__init__.py +228 -0
  5. localstack/aws/api/kms/__init__.py +1 -0
  6. localstack/aws/api/lambda_/__init__.py +1034 -66
  7. localstack/aws/api/logs/__init__.py +500 -0
  8. localstack/aws/api/opensearch/__init__.py +100 -0
  9. localstack/aws/api/redshift/__init__.py +69 -0
  10. localstack/aws/api/resourcegroupstaggingapi/__init__.py +36 -0
  11. localstack/aws/api/route53/__init__.py +45 -0
  12. localstack/aws/api/route53resolver/__init__.py +1 -0
  13. localstack/aws/api/s3/__init__.py +64 -0
  14. localstack/aws/api/s3control/__init__.py +19 -0
  15. localstack/aws/api/secretsmanager/__init__.py +37 -23
  16. localstack/aws/api/stepfunctions/__init__.py +52 -10
  17. localstack/aws/api/sts/__init__.py +52 -0
  18. localstack/aws/connect.py +35 -15
  19. localstack/aws/handlers/logging.py +8 -4
  20. localstack/aws/handlers/service.py +11 -2
  21. localstack/aws/protocol/serializer.py +1 -1
  22. localstack/config.py +8 -0
  23. localstack/constants.py +3 -0
  24. localstack/deprecations.py +0 -6
  25. localstack/dev/kubernetes/__main__.py +39 -14
  26. localstack/runtime/analytics.py +11 -0
  27. localstack/services/acm/provider.py +17 -1
  28. localstack/services/apigateway/legacy/provider.py +28 -15
  29. localstack/services/cloudformation/engine/template_preparer.py +6 -2
  30. localstack/services/cloudformation/engine/v2/change_set_model.py +9 -0
  31. localstack/services/cloudformation/engine/v2/change_set_model_preproc.py +15 -1
  32. localstack/services/cloudformation/engine/v2/change_set_resource_support_checker.py +114 -0
  33. localstack/services/cloudformation/provider.py +26 -1
  34. localstack/services/cloudformation/provider_utils.py +20 -0
  35. localstack/services/cloudformation/resource_provider.py +5 -4
  36. localstack/services/cloudformation/scaffolding/__main__.py +94 -22
  37. localstack/services/cloudformation/v2/provider.py +41 -0
  38. localstack/services/cloudwatch/provider.py +10 -3
  39. localstack/services/cloudwatch/provider_v2.py +6 -3
  40. localstack/services/configservice/provider.py +5 -1
  41. localstack/services/dynamodb/provider.py +1 -0
  42. localstack/services/dynamodb/v2/provider.py +1 -0
  43. localstack/services/dynamodbstreams/provider.py +6 -0
  44. localstack/services/dynamodbstreams/v2/provider.py +6 -0
  45. localstack/services/ec2/provider.py +6 -0
  46. localstack/services/es/provider.py +6 -0
  47. localstack/services/events/provider.py +4 -0
  48. localstack/services/events/v1/provider.py +9 -0
  49. localstack/services/firehose/provider.py +5 -0
  50. localstack/services/iam/provider.py +4 -0
  51. localstack/services/kinesis/packages.py +1 -1
  52. localstack/services/kms/models.py +16 -22
  53. localstack/services/kms/provider.py +4 -0
  54. localstack/services/lambda_/analytics.py +11 -2
  55. localstack/services/lambda_/api_utils.py +37 -20
  56. localstack/services/lambda_/event_source_mapping/pollers/stream_poller.py +1 -1
  57. localstack/services/lambda_/invocation/assignment.py +4 -1
  58. localstack/services/lambda_/invocation/event_manager.py +15 -11
  59. localstack/services/lambda_/invocation/execution_environment.py +21 -2
  60. localstack/services/lambda_/invocation/lambda_models.py +31 -2
  61. localstack/services/lambda_/invocation/lambda_service.py +62 -3
  62. localstack/services/lambda_/invocation/models.py +9 -1
  63. localstack/services/lambda_/invocation/version_manager.py +18 -3
  64. localstack/services/lambda_/provider.py +307 -106
  65. localstack/services/lambda_/resource_providers/aws_lambda_function.py +33 -1
  66. localstack/services/lambda_/runtimes.py +3 -1
  67. localstack/services/logs/provider.py +9 -0
  68. localstack/services/opensearch/packages.py +34 -20
  69. localstack/services/opensearch/provider.py +53 -3
  70. localstack/services/resource_groups/provider.py +5 -1
  71. localstack/services/resourcegroupstaggingapi/provider.py +6 -1
  72. localstack/services/route53/provider.py +7 -0
  73. localstack/services/route53resolver/provider.py +5 -0
  74. localstack/services/s3/constants.py +5 -0
  75. localstack/services/s3/exceptions.py +9 -0
  76. localstack/services/s3/models.py +9 -1
  77. localstack/services/s3/provider.py +51 -43
  78. localstack/services/s3/utils.py +81 -15
  79. localstack/services/s3control/provider.py +107 -2
  80. localstack/services/s3control/validation.py +50 -0
  81. localstack/services/scheduler/provider.py +4 -2
  82. localstack/services/secretsmanager/provider.py +4 -0
  83. localstack/services/ses/provider.py +4 -0
  84. localstack/services/sns/constants.py +16 -1
  85. localstack/services/sns/provider.py +5 -0
  86. localstack/services/sns/publisher.py +15 -6
  87. localstack/services/sns/v2/models.py +9 -0
  88. localstack/services/sns/v2/provider.py +750 -19
  89. localstack/services/sns/v2/utils.py +12 -0
  90. localstack/services/sqs/constants.py +6 -0
  91. localstack/services/sqs/provider.py +9 -1
  92. localstack/services/sqs/resource_providers/aws_sqs_queue.py +61 -46
  93. localstack/services/ssm/provider.py +6 -0
  94. localstack/services/stepfunctions/asl/component/common/path/result_path.py +1 -1
  95. localstack/services/stepfunctions/asl/component/state/state_execution/execute_state.py +0 -1
  96. localstack/services/stepfunctions/asl/component/state/state_execution/state_map/state_map.py +0 -1
  97. localstack/services/stepfunctions/asl/component/state/state_execution/state_task/lambda_eval_utils.py +8 -8
  98. localstack/services/stepfunctions/asl/component/state/state_execution/state_task/{mock_eval_utils.py → local_mock_eval_utils.py} +13 -9
  99. localstack/services/stepfunctions/asl/component/state/state_execution/state_task/service/state_task_service.py +6 -6
  100. localstack/services/stepfunctions/asl/component/state/state_execution/state_task/service/state_task_service_callback.py +1 -1
  101. localstack/services/stepfunctions/asl/component/state/state_fail/state_fail.py +4 -0
  102. localstack/services/stepfunctions/asl/component/test_state/state/base_mock.py +118 -0
  103. localstack/services/stepfunctions/asl/component/test_state/state/common.py +82 -0
  104. localstack/services/stepfunctions/asl/component/test_state/state/execution.py +139 -0
  105. localstack/services/stepfunctions/asl/component/test_state/state/map.py +77 -0
  106. localstack/services/stepfunctions/asl/component/test_state/state/task.py +44 -0
  107. localstack/services/stepfunctions/asl/eval/environment.py +30 -22
  108. localstack/services/stepfunctions/asl/eval/states.py +1 -1
  109. localstack/services/stepfunctions/asl/eval/test_state/environment.py +49 -9
  110. localstack/services/stepfunctions/asl/eval/test_state/program_state.py +22 -0
  111. localstack/services/stepfunctions/asl/jsonata/jsonata.py +5 -1
  112. localstack/services/stepfunctions/asl/parse/preprocessor.py +67 -24
  113. localstack/services/stepfunctions/asl/parse/test_state/asl_parser.py +5 -4
  114. localstack/services/stepfunctions/asl/parse/test_state/preprocessor.py +222 -31
  115. localstack/services/stepfunctions/asl/static_analyser/test_state/test_state_analyser.py +256 -22
  116. localstack/services/stepfunctions/backend/execution.py +10 -11
  117. localstack/services/stepfunctions/backend/execution_worker.py +5 -5
  118. localstack/services/stepfunctions/backend/test_state/execution.py +36 -0
  119. localstack/services/stepfunctions/backend/test_state/execution_worker.py +33 -1
  120. localstack/services/stepfunctions/backend/test_state/test_state_mock.py +127 -0
  121. localstack/services/stepfunctions/local_mocking/__init__.py +9 -0
  122. localstack/services/stepfunctions/{mocking → local_mocking}/mock_config.py +24 -17
  123. localstack/services/stepfunctions/provider.py +83 -25
  124. localstack/services/stepfunctions/test_state/mock_config.py +47 -0
  125. localstack/services/sts/provider.py +7 -0
  126. localstack/services/support/provider.py +5 -1
  127. localstack/services/swf/provider.py +5 -1
  128. localstack/services/transcribe/provider.py +7 -0
  129. localstack/testing/aws/lambda_utils.py +1 -1
  130. localstack/testing/aws/util.py +2 -1
  131. localstack/testing/config.py +1 -0
  132. localstack/testing/pytest/fixtures.py +28 -0
  133. localstack/testing/snapshots/transformer_utility.py +5 -0
  134. localstack/utils/analytics/publisher.py +37 -155
  135. localstack/utils/analytics/service_request_aggregator.py +6 -4
  136. localstack/utils/aws/arns.py +7 -0
  137. localstack/utils/aws/client_types.py +2 -4
  138. localstack/utils/batching.py +258 -0
  139. localstack/utils/bootstrap.py +2 -2
  140. localstack/utils/catalog/catalog.py +3 -2
  141. localstack/utils/collections.py +23 -11
  142. localstack/utils/container_utils/container_client.py +22 -13
  143. localstack/utils/container_utils/docker_cmd_client.py +6 -6
  144. localstack/version.py +2 -2
  145. {localstack_core-4.10.1.dev42.dist-info → localstack_core-4.12.1.dev18.dist-info}/METADATA +7 -7
  146. {localstack_core-4.10.1.dev42.dist-info → localstack_core-4.12.1.dev18.dist-info}/RECORD +155 -146
  147. localstack_core-4.12.1.dev18.dist-info/plux.json +1 -0
  148. localstack/services/stepfunctions/mocking/__init__.py +0 -0
  149. localstack/utils/batch_policy.py +0 -124
  150. localstack_core-4.10.1.dev42.dist-info/plux.json +0 -1
  151. /localstack/services/stepfunctions/{mocking → local_mocking}/mock_config_file.py +0 -0
  152. {localstack_core-4.10.1.dev42.data → localstack_core-4.12.1.dev18.data}/scripts/localstack +0 -0
  153. {localstack_core-4.10.1.dev42.data → localstack_core-4.12.1.dev18.data}/scripts/localstack-supervisor +0 -0
  154. {localstack_core-4.10.1.dev42.data → localstack_core-4.12.1.dev18.data}/scripts/localstack.bat +0 -0
  155. {localstack_core-4.10.1.dev42.dist-info → localstack_core-4.12.1.dev18.dist-info}/WHEEL +0 -0
  156. {localstack_core-4.10.1.dev42.dist-info → localstack_core-4.12.1.dev18.dist-info}/entry_points.txt +0 -0
  157. {localstack_core-4.10.1.dev42.dist-info → localstack_core-4.12.1.dev18.dist-info}/licenses/LICENSE.txt +0 -0
  158. {localstack_core-4.10.1.dev42.dist-info → localstack_core-4.12.1.dev18.dist-info}/top_level.txt +0 -0
@@ -212,6 +212,11 @@ class ArchiveStatus(StrEnum):
212
212
  DEEP_ARCHIVE_ACCESS = "DEEP_ARCHIVE_ACCESS"
213
213
 
214
214
 
215
+ class BucketAbacStatus(StrEnum):
216
+ Enabled = "Enabled"
217
+ Disabled = "Disabled"
218
+
219
+
215
220
  class BucketAccelerateStatus(StrEnum):
216
221
  Enabled = "Enabled"
217
222
  Suspended = "Suspended"
@@ -313,6 +318,11 @@ class EncodingType(StrEnum):
313
318
  url = "url"
314
319
 
315
320
 
321
+ class EncryptionType(StrEnum):
322
+ NONE = "NONE"
323
+ SSE_C = "SSE-C"
324
+
325
+
316
326
  class Event(StrEnum):
317
327
  s3_ReducedRedundancyLostObject = "s3:ReducedRedundancyLostObject"
318
328
  s3_ObjectCreated_ = "s3:ObjectCreated:*"
@@ -510,6 +520,7 @@ class ObjectStorageClass(StrEnum):
510
520
  SNOW = "SNOW"
511
521
  EXPRESS_ONEZONE = "EXPRESS_ONEZONE"
512
522
  FSX_OPENZFS = "FSX_OPENZFS"
523
+ FSX_ONTAP = "FSX_ONTAP"
513
524
 
514
525
 
515
526
  class ObjectVersionStorageClass(StrEnum):
@@ -622,6 +633,7 @@ class StorageClass(StrEnum):
622
633
  SNOW = "SNOW"
623
634
  EXPRESS_ONEZONE = "EXPRESS_ONEZONE"
624
635
  FSX_OPENZFS = "FSX_OPENZFS"
636
+ FSX_ONTAP = "FSX_ONTAP"
625
637
 
626
638
 
627
639
  class StorageClassAnalysisSchemaVersion(StrEnum):
@@ -1070,6 +1082,10 @@ class AuthorizationHeaderMalformed(ServiceException):
1070
1082
  HostId: HostId | None
1071
1083
 
1072
1084
 
1085
+ class AbacStatus(TypedDict, total=False):
1086
+ Status: BucketAbacStatus | None
1087
+
1088
+
1073
1089
  AbortDate = datetime
1074
1090
 
1075
1091
 
@@ -1178,6 +1194,13 @@ class AnalyticsConfiguration(TypedDict, total=False):
1178
1194
 
1179
1195
 
1180
1196
  AnalyticsConfigurationList = list[AnalyticsConfiguration]
1197
+ EncryptionTypeList = list[EncryptionType]
1198
+
1199
+
1200
+ class BlockedEncryptionTypes(TypedDict, total=False):
1201
+ EncryptionType: EncryptionTypeList | None
1202
+
1203
+
1181
1204
  Body = bytes
1182
1205
  CreationDate = datetime
1183
1206
 
@@ -1948,6 +1971,15 @@ class FilterRule(TypedDict, total=False):
1948
1971
  FilterRuleList = list[FilterRule]
1949
1972
 
1950
1973
 
1974
+ class GetBucketAbacOutput(TypedDict, total=False):
1975
+ AbacStatus: AbacStatus | None
1976
+
1977
+
1978
+ class GetBucketAbacRequest(ServiceRequest):
1979
+ Bucket: BucketName
1980
+ ExpectedBucketOwner: AccountId | None
1981
+
1982
+
1951
1983
  class GetBucketAccelerateConfigurationOutput(TypedDict, total=False):
1952
1984
  Status: BucketAccelerateStatus | None
1953
1985
  RequestCharged: RequestCharged | None
@@ -1996,6 +2028,7 @@ class ServerSideEncryptionByDefault(TypedDict, total=False):
1996
2028
  class ServerSideEncryptionRule(TypedDict, total=False):
1997
2029
  ApplyServerSideEncryptionByDefault: ServerSideEncryptionByDefault | None
1998
2030
  BucketKeyEnabled: BucketKeyEnabled | None
2031
+ BlockedEncryptionTypes: BlockedEncryptionTypes | None
1999
2032
 
2000
2033
 
2001
2034
  ServerSideEncryptionRules = list[ServerSideEncryptionRule]
@@ -3169,6 +3202,14 @@ class ProgressEvent(TypedDict, total=False):
3169
3202
  Details: Progress | None
3170
3203
 
3171
3204
 
3205
+ class PutBucketAbacRequest(ServiceRequest):
3206
+ Bucket: BucketName
3207
+ ContentMD5: ContentMD5 | None
3208
+ ChecksumAlgorithm: ChecksumAlgorithm | None
3209
+ ExpectedBucketOwner: AccountId | None
3210
+ AbacStatus: AbacStatus
3211
+
3212
+
3172
3213
  class PutBucketAccelerateConfigurationRequest(ServiceRequest):
3173
3214
  Bucket: BucketName
3174
3215
  AccelerateConfiguration: AccelerateConfiguration
@@ -4177,6 +4218,16 @@ class S3Api:
4177
4218
  ) -> None:
4178
4219
  raise NotImplementedError
4179
4220
 
4221
+ @handler("GetBucketAbac")
4222
+ def get_bucket_abac(
4223
+ self,
4224
+ context: RequestContext,
4225
+ bucket: BucketName,
4226
+ expected_bucket_owner: AccountId | None = None,
4227
+ **kwargs,
4228
+ ) -> GetBucketAbacOutput:
4229
+ raise NotImplementedError
4230
+
4180
4231
  @handler("GetBucketAccelerateConfiguration")
4181
4232
  def get_bucket_accelerate_configuration(
4182
4233
  self,
@@ -4748,6 +4799,19 @@ class S3Api:
4748
4799
  ) -> ListPartsOutput:
4749
4800
  raise NotImplementedError
4750
4801
 
4802
+ @handler("PutBucketAbac")
4803
+ def put_bucket_abac(
4804
+ self,
4805
+ context: RequestContext,
4806
+ bucket: BucketName,
4807
+ abac_status: AbacStatus,
4808
+ content_md5: ContentMD5 | None = None,
4809
+ checksum_algorithm: ChecksumAlgorithm | None = None,
4810
+ expected_bucket_owner: AccountId | None = None,
4811
+ **kwargs,
4812
+ ) -> None:
4813
+ raise NotImplementedError
4814
+
4751
4815
  @handler("PutBucketAccelerateConfiguration")
4752
4816
  def put_bucket_accelerate_configuration(
4753
4817
  self,
@@ -608,6 +608,10 @@ class StorageLensGroupLevel(TypedDict, total=False):
608
608
  SelectionCriteria: StorageLensGroupLevelSelectionCriteria | None
609
609
 
610
610
 
611
+ class AdvancedPerformanceMetrics(TypedDict, total=False):
612
+ IsEnabled: IsEnabled | None
613
+
614
+
611
615
  class DetailedStatusCodesMetrics(TypedDict, total=False):
612
616
  IsEnabled: IsEnabled | None
613
617
 
@@ -645,6 +649,7 @@ class BucketLevel(TypedDict, total=False):
645
649
  AdvancedCostOptimizationMetrics: AdvancedCostOptimizationMetrics | None
646
650
  AdvancedDataProtectionMetrics: AdvancedDataProtectionMetrics | None
647
651
  DetailedStatusCodesMetrics: DetailedStatusCodesMetrics | None
652
+ AdvancedPerformanceMetrics: AdvancedPerformanceMetrics | None
648
653
 
649
654
 
650
655
  class AccountLevel(TypedDict, total=False):
@@ -653,6 +658,7 @@ class AccountLevel(TypedDict, total=False):
653
658
  AdvancedCostOptimizationMetrics: AdvancedCostOptimizationMetrics | None
654
659
  AdvancedDataProtectionMetrics: AdvancedDataProtectionMetrics | None
655
660
  DetailedStatusCodesMetrics: DetailedStatusCodesMetrics | None
661
+ AdvancedPerformanceMetrics: AdvancedPerformanceMetrics | None
656
662
  StorageLensGroupLevel: StorageLensGroupLevel | None
657
663
 
658
664
 
@@ -1944,6 +1950,11 @@ class StorageLensDataExportEncryption(TypedDict, total=False):
1944
1950
  SSEKMS: SSEKMS | None
1945
1951
 
1946
1952
 
1953
+ class StorageLensTableDestination(TypedDict, total=False):
1954
+ IsEnabled: IsEnabled
1955
+ Encryption: StorageLensDataExportEncryption | None
1956
+
1957
+
1947
1958
  class S3BucketDestination(TypedDict, total=False):
1948
1959
  Format: Format
1949
1960
  OutputSchemaVersion: OutputSchemaVersion
@@ -1953,9 +1964,15 @@ class S3BucketDestination(TypedDict, total=False):
1953
1964
  Encryption: StorageLensDataExportEncryption | None
1954
1965
 
1955
1966
 
1967
+ class StorageLensExpandedPrefixesDataExport(TypedDict, total=False):
1968
+ S3BucketDestination: S3BucketDestination | None
1969
+ StorageLensTableDestination: StorageLensTableDestination | None
1970
+
1971
+
1956
1972
  class StorageLensDataExport(TypedDict, total=False):
1957
1973
  S3BucketDestination: S3BucketDestination | None
1958
1974
  CloudWatchMetrics: CloudWatchMetrics | None
1975
+ StorageLensTableDestination: StorageLensTableDestination | None
1959
1976
 
1960
1977
 
1961
1978
  class Include(TypedDict, total=False):
@@ -1969,9 +1986,11 @@ class StorageLensConfiguration(TypedDict, total=False):
1969
1986
  Include: Include | None
1970
1987
  Exclude: Exclude | None
1971
1988
  DataExport: StorageLensDataExport | None
1989
+ ExpandedPrefixesDataExport: StorageLensExpandedPrefixesDataExport | None
1972
1990
  IsEnabled: IsEnabled
1973
1991
  AwsOrg: StorageLensAwsOrg | None
1974
1992
  StorageLensArn: StorageLensArn | None
1993
+ PrefixDelimiter: StorageLensPrefixLevelDelimiter | None
1975
1994
 
1976
1995
 
1977
1996
  class GetStorageLensConfigurationResult(TypedDict, total=False):
@@ -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
@@ -52,6 +56,13 @@ class FilterNameStringType(StrEnum):
52
56
  all = "all"
53
57
 
54
58
 
59
+ class SortByType(StrEnum):
60
+ created_date = "created-date"
61
+ last_accessed_date = "last-accessed-date"
62
+ last_changed_date = "last-changed-date"
63
+ name = "name"
64
+
65
+
55
66
  class SortOrderType(StrEnum):
56
67
  asc = "asc"
57
68
  desc = "desc"
@@ -222,6 +233,7 @@ class CreateSecretRequest(ServiceRequest):
222
233
  Tags: TagListType | None
223
234
  AddReplicaRegions: AddReplicaRegionListType | None
224
235
  ForceOverwriteReplicaSecret: BooleanType | None
236
+ Type: MedeaTypeType | None
225
237
 
226
238
 
227
239
  LastAccessedDateType = datetime
@@ -286,6 +298,14 @@ LastChangedDateType = datetime
286
298
  LastRotatedDateType = datetime
287
299
 
288
300
 
301
+ class ExternalSecretRotationMetadataItem(TypedDict, total=False):
302
+ Key: ExternalSecretRotationMetadataItemKeyType | None
303
+ Value: ExternalSecretRotationMetadataItemValueType | None
304
+
305
+
306
+ ExternalSecretRotationMetadataType = list[ExternalSecretRotationMetadataItem]
307
+
308
+
289
309
  class RotationRulesType(TypedDict, total=False):
290
310
  AutomaticallyAfterDays: AutomaticallyRotateAfterDaysType | None
291
311
  Duration: DurationType | None
@@ -295,11 +315,14 @@ class RotationRulesType(TypedDict, total=False):
295
315
  class DescribeSecretResponse(TypedDict, total=False):
296
316
  ARN: SecretARNType | None
297
317
  Name: SecretNameType | None
318
+ Type: MedeaTypeType | None
298
319
  Description: DescriptionType | None
299
320
  KmsKeyId: KmsKeyIdType | None
300
321
  RotationEnabled: RotationEnabledType | None
301
322
  RotationLambdaARN: RotationLambdaARNType | None
302
323
  RotationRules: RotationRulesType | None
324
+ ExternalSecretRotationMetadata: ExternalSecretRotationMetadataType | None
325
+ ExternalSecretRotationRoleArn: RoleARNType | None
303
326
  LastRotatedDate: LastRotatedDateType | None
304
327
  LastChangedDate: LastChangedDateType | None
305
328
  LastAccessedDate: LastAccessedDateType | None
@@ -391,16 +414,20 @@ class ListSecretsRequest(ServiceRequest):
391
414
  NextToken: NextTokenType | None
392
415
  Filters: FiltersListType | None
393
416
  SortOrder: SortOrderType | None
417
+ SortBy: SortByType | None
394
418
 
395
419
 
396
420
  class SecretListEntry(TypedDict, total=False):
397
421
  ARN: SecretARNType | None
398
422
  Name: SecretNameType | None
423
+ Type: MedeaTypeType | None
399
424
  Description: DescriptionType | None
400
425
  KmsKeyId: KmsKeyIdType | None
401
426
  RotationEnabled: RotationEnabledType | None
402
427
  RotationLambdaARN: RotationLambdaARNType | None
403
428
  RotationRules: RotationRulesType | None
429
+ ExternalSecretRotationMetadata: ExternalSecretRotationMetadataType | None
430
+ ExternalSecretRotationRoleArn: RoleARNType | None
404
431
  LastRotatedDate: LastRotatedDateType | None
405
432
  LastChangedDate: LastChangedDateType | None
406
433
  LastAccessedDate: LastAccessedDateType | None
@@ -486,6 +513,8 @@ class RotateSecretRequest(ServiceRequest):
486
513
  ClientRequestToken: ClientRequestTokenType | None
487
514
  RotationLambdaARN: RotationLambdaARNType | None
488
515
  RotationRules: RotationRulesType | None
516
+ ExternalSecretRotationMetadata: ExternalSecretRotationMetadataType | None
517
+ ExternalSecretRotationRoleArn: RoleARNType | None
489
518
  RotateImmediately: BooleanType | None
490
519
 
491
520
 
@@ -523,6 +552,7 @@ class UpdateSecretRequest(ServiceRequest):
523
552
  KmsKeyId: KmsKeyIdType | None
524
553
  SecretBinary: SecretBinaryType | None
525
554
  SecretString: SecretStringType | None
555
+ Type: MedeaTypeType | None
526
556
 
527
557
 
528
558
  class UpdateSecretResponse(TypedDict, total=False):
@@ -583,20 +613,9 @@ class SecretsmanagerApi:
583
613
  ) -> CancelRotateSecretResponse:
584
614
  raise NotImplementedError
585
615
 
586
- @handler("CreateSecret")
616
+ @handler("CreateSecret", expand=False)
587
617
  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,
618
+ self, context: RequestContext, request: CreateSecretRequest, **kwargs
600
619
  ) -> CreateSecretResponse:
601
620
  raise NotImplementedError
602
621
 
@@ -677,6 +696,7 @@ class SecretsmanagerApi:
677
696
  next_token: NextTokenType | None = None,
678
697
  filters: FiltersListType | None = None,
679
698
  sort_order: SortOrderType | None = None,
699
+ sort_by: SortByType | None = None,
680
700
  **kwargs,
681
701
  ) -> ListSecretsResponse:
682
702
  raise NotImplementedError
@@ -741,6 +761,8 @@ class SecretsmanagerApi:
741
761
  client_request_token: ClientRequestTokenType | None = None,
742
762
  rotation_lambda_arn: RotationLambdaARNType | None = None,
743
763
  rotation_rules: RotationRulesType | None = None,
764
+ external_secret_rotation_metadata: ExternalSecretRotationMetadataType | None = None,
765
+ external_secret_rotation_role_arn: RoleARNType | None = None,
744
766
  rotate_immediately: BooleanType | None = None,
745
767
  **kwargs,
746
768
  ) -> RotateSecretResponse:
@@ -764,17 +786,9 @@ class SecretsmanagerApi:
764
786
  ) -> None:
765
787
  raise NotImplementedError
766
788
 
767
- @handler("UpdateSecret")
789
+ @handler("UpdateSecret", expand=False)
768
790
  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,
791
+ self, context: RequestContext, request: UpdateSecretRequest, **kwargs
778
792
  ) -> UpdateSecretResponse:
779
793
  raise NotImplementedError
780
794
 
@@ -13,6 +13,7 @@ Definition = str
13
13
  Enabled = bool
14
14
  ErrorMessage = str
15
15
  EvaluationFailureLocation = str
16
+ ExceptionHandlerIndex = int
16
17
  HTTPBody = str
17
18
  HTTPHeaders = str
18
19
  HTTPMethod = str
@@ -22,10 +23,14 @@ HTTPStatusMessage = str
22
23
  Identity = str
23
24
  IncludeExecutionData = bool
24
25
  IncludeExecutionDataGetExecutionHistory = bool
26
+ InspectionMaxConcurrency = int
27
+ InspectionToleratedFailureCount = int
28
+ InspectionToleratedFailurePercentage = float
25
29
  KmsDataKeyReusePeriodSeconds = int
26
30
  KmsKeyId = str
27
31
  ListExecutionsPageToken = str
28
32
  LongArn = str
33
+ MapIterationFailureCount = int
29
34
  MapRunLabel = str
30
35
  MaxConcurrency = int
31
36
  Name = str
@@ -33,6 +38,8 @@ PageSize = int
33
38
  PageToken = str
34
39
  Publish = bool
35
40
  RedriveCount = int
41
+ RetrierRetryCount = int
42
+ RetryBackoffIntervalSeconds = int
36
43
  RevealSecrets = bool
37
44
  ReverseOrder = bool
38
45
  RevisionId = str
@@ -44,6 +51,7 @@ StateName = str
44
51
  TagKey = str
45
52
  TagValue = str
46
53
  TaskToken = str
54
+ TestStateStateName = str
47
55
  ToleratedFailurePercentage = float
48
56
  TraceHeader = str
49
57
  URL = str
@@ -184,6 +192,12 @@ class MapRunStatus(StrEnum):
184
192
  ABORTED = "ABORTED"
185
193
 
186
194
 
195
+ class MockResponseValidationMode(StrEnum):
196
+ STRICT = "STRICT"
197
+ PRESENT = "PRESENT"
198
+ NONE = "NONE"
199
+
200
+
187
201
  class StateMachineStatus(StrEnum):
188
202
  ACTIVE = "ACTIVE"
189
203
  DELETING = "DELETING"
@@ -1024,6 +1038,12 @@ class GetExecutionHistoryOutput(TypedDict, total=False):
1024
1038
  nextToken: PageToken | None
1025
1039
 
1026
1040
 
1041
+ class InspectionErrorDetails(TypedDict, total=False):
1042
+ catchIndex: ExceptionHandlerIndex | None
1043
+ retryIndex: ExceptionHandlerIndex | None
1044
+ retryBackoffIntervalSeconds: RetryBackoffIntervalSeconds | None
1045
+
1046
+
1027
1047
  class InspectionDataResponse(TypedDict, total=False):
1028
1048
  protocol: HTTPProtocol | None
1029
1049
  statusCode: HTTPStatusCode | None
@@ -1051,6 +1071,14 @@ class InspectionData(TypedDict, total=False):
1051
1071
  request: InspectionDataRequest | None
1052
1072
  response: InspectionDataResponse | None
1053
1073
  variables: SensitiveData | None
1074
+ errorDetails: InspectionErrorDetails | None
1075
+ afterItemsPath: SensitiveData | None
1076
+ afterItemSelector: SensitiveData | None
1077
+ afterItemBatcher: SensitiveData | None
1078
+ afterItemsPointer: SensitiveData | None
1079
+ toleratedFailureCount: InspectionToleratedFailureCount | None
1080
+ toleratedFailurePercentage: InspectionToleratedFailurePercentage | None
1081
+ maxConcurrency: InspectionMaxConcurrency | None
1054
1082
 
1055
1083
 
1056
1084
  class ListActivitiesInput(ServiceRequest):
@@ -1165,6 +1193,17 @@ class ListTagsForResourceOutput(TypedDict, total=False):
1165
1193
  tags: TagList | None
1166
1194
 
1167
1195
 
1196
+ class MockErrorOutput(TypedDict, total=False):
1197
+ error: SensitiveError | None
1198
+ cause: SensitiveCause | None
1199
+
1200
+
1201
+ class MockInput(TypedDict, total=False):
1202
+ result: SensitiveData | None
1203
+ errorOutput: MockErrorOutput | None
1204
+ fieldValidationMode: MockResponseValidationMode | None
1205
+
1206
+
1168
1207
  class PublishStateMachineVersionInput(ServiceRequest):
1169
1208
  stateMachineArn: Arn
1170
1209
  revisionId: RevisionId | None
@@ -1271,6 +1310,13 @@ class TagResourceOutput(TypedDict, total=False):
1271
1310
  pass
1272
1311
 
1273
1312
 
1313
+ class TestStateConfiguration(TypedDict, total=False):
1314
+ retrierRetryCount: RetrierRetryCount | None
1315
+ errorCausedByState: TestStateStateName | None
1316
+ mapIterationFailureCount: MapIterationFailureCount | None
1317
+ mapItemReaderData: SensitiveData | None
1318
+
1319
+
1274
1320
  class TestStateInput(ServiceRequest):
1275
1321
  definition: Definition
1276
1322
  roleArn: Arn | None
@@ -1278,6 +1324,10 @@ class TestStateInput(ServiceRequest):
1278
1324
  inspectionLevel: InspectionLevel | None
1279
1325
  revealSecrets: RevealSecrets | None
1280
1326
  variables: SensitiveData | None
1327
+ stateName: TestStateStateName | None
1328
+ mock: MockInput | None
1329
+ context: SensitiveData | None
1330
+ stateConfiguration: TestStateConfiguration | None
1281
1331
 
1282
1332
 
1283
1333
  class TestStateOutput(TypedDict, total=False):
@@ -1641,17 +1691,9 @@ class StepfunctionsApi:
1641
1691
  ) -> TagResourceOutput:
1642
1692
  raise NotImplementedError
1643
1693
 
1644
- @handler("TestState")
1694
+ @handler("TestState", expand=False)
1645
1695
  def test_state(
1646
- self,
1647
- context: RequestContext,
1648
- definition: Definition,
1649
- role_arn: Arn | None = None,
1650
- input: SensitiveData | None = None,
1651
- inspection_level: InspectionLevel | None = None,
1652
- reveal_secrets: RevealSecrets | None = None,
1653
- variables: SensitiveData | None = None,
1654
- **kwargs,
1696
+ self, context: RequestContext, request: TestStateInput, **kwargs
1655
1697
  ) -> TestStateOutput:
1656
1698
  raise NotImplementedError
1657
1699
 
@@ -29,13 +29,17 @@ idpCommunicationErrorMessage = str
29
29
  idpRejectedClaimMessage = str
30
30
  invalidAuthorizationMessage = str
31
31
  invalidIdentityTokenMessage = str
32
+ jwtAlgorithmType = str
33
+ jwtPayloadSizeExceededException = str
32
34
  malformedPolicyDocumentMessage = str
33
35
  nonNegativeIntegerType = int
36
+ outboundWebIdentityFederationDisabledException = str
34
37
  packedPolicyTooLargeMessage = str
35
38
  regionDisabledMessage = str
36
39
  roleDurationSecondsType = int
37
40
  roleSessionNameType = str
38
41
  serialNumberType = str
42
+ sessionDurationEscalationException = str
39
43
  sessionPolicyDocumentType = str
40
44
  sourceIdentityType = str
41
45
  tagKeyType = str
@@ -48,6 +52,9 @@ urlType = str
48
52
  userIdType = str
49
53
  userNameType = str
50
54
  webIdentitySubjectType = str
55
+ webIdentityTokenAudienceStringType = str
56
+ webIdentityTokenDurationSecondsType = int
57
+ webIdentityTokenType = str
51
58
 
52
59
 
53
60
  class ExpiredTokenException(ServiceException):
@@ -86,12 +93,24 @@ class InvalidIdentityTokenException(ServiceException):
86
93
  status_code: int = 400
87
94
 
88
95
 
96
+ class JWTPayloadSizeExceededException(ServiceException):
97
+ code: str = "JWTPayloadSizeExceededException"
98
+ sender_fault: bool = True
99
+ status_code: int = 400
100
+
101
+
89
102
  class MalformedPolicyDocumentException(ServiceException):
90
103
  code: str = "MalformedPolicyDocument"
91
104
  sender_fault: bool = True
92
105
  status_code: int = 400
93
106
 
94
107
 
108
+ class OutboundWebIdentityFederationDisabledException(ServiceException):
109
+ code: str = "OutboundWebIdentityFederationDisabledException"
110
+ sender_fault: bool = True
111
+ status_code: int = 403
112
+
113
+
95
114
  class PackedPolicyTooLargeException(ServiceException):
96
115
  code: str = "PackedPolicyTooLarge"
97
116
  sender_fault: bool = True
@@ -104,6 +123,12 @@ class RegionDisabledException(ServiceException):
104
123
  status_code: int = 403
105
124
 
106
125
 
126
+ class SessionDurationEscalationException(ServiceException):
127
+ code: str = "SessionDurationEscalationException"
128
+ sender_fault: bool = True
129
+ status_code: int = 403
130
+
131
+
107
132
  class ProvidedContext(TypedDict, total=False):
108
133
  ProviderArn: arnType | None
109
134
  ContextAssertion: contextAssertionType | None
@@ -282,6 +307,21 @@ class GetSessionTokenResponse(TypedDict, total=False):
282
307
  Credentials: Credentials | None
283
308
 
284
309
 
310
+ webIdentityTokenAudienceListType = list[webIdentityTokenAudienceStringType]
311
+
312
+
313
+ class GetWebIdentityTokenRequest(ServiceRequest):
314
+ Audience: webIdentityTokenAudienceListType
315
+ DurationSeconds: webIdentityTokenDurationSecondsType | None
316
+ SigningAlgorithm: jwtAlgorithmType
317
+ Tags: tagListType | None
318
+
319
+
320
+ class GetWebIdentityTokenResponse(TypedDict, total=False):
321
+ WebIdentityToken: webIdentityTokenType | None
322
+ Expiration: dateType | None
323
+
324
+
285
325
  class StsApi:
286
326
  service: str = "sts"
287
327
  version: str = "2011-06-15"
@@ -391,3 +431,15 @@ class StsApi:
391
431
  **kwargs,
392
432
  ) -> GetSessionTokenResponse:
393
433
  raise NotImplementedError
434
+
435
+ @handler("GetWebIdentityToken")
436
+ def get_web_identity_token(
437
+ self,
438
+ context: RequestContext,
439
+ audience: webIdentityTokenAudienceListType,
440
+ signing_algorithm: jwtAlgorithmType,
441
+ duration_seconds: webIdentityTokenDurationSecondsType | None = None,
442
+ tags: tagListType | None = None,
443
+ **kwargs,
444
+ ) -> GetWebIdentityTokenResponse:
445
+ raise NotImplementedError