@aws-sdk/client-lambda 3.632.0 → 3.634.0

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 (31) hide show
  1. package/README.md +16 -0
  2. package/dist-cjs/index.js +97 -0
  3. package/dist-es/Lambda.js +4 -0
  4. package/dist-es/commands/GetFunctionRecursionConfigCommand.js +24 -0
  5. package/dist-es/commands/PutFunctionRecursionConfigCommand.js +24 -0
  6. package/dist-es/commands/index.js +2 -0
  7. package/dist-es/models/models_0.js +4 -0
  8. package/dist-es/protocols/Aws_restJson1.js +51 -0
  9. package/dist-types/Lambda.d.ts +14 -0
  10. package/dist-types/LambdaClient.d.ts +4 -2
  11. package/dist-types/commands/AddLayerVersionPermissionCommand.d.ts +11 -2
  12. package/dist-types/commands/AddPermissionCommand.d.ts +11 -2
  13. package/dist-types/commands/GetFunctionRecursionConfigCommand.d.ts +73 -0
  14. package/dist-types/commands/PublishVersionCommand.d.ts +11 -2
  15. package/dist-types/commands/PutFunctionRecursionConfigCommand.d.ts +82 -0
  16. package/dist-types/commands/RemoveLayerVersionPermissionCommand.d.ts +11 -2
  17. package/dist-types/commands/RemovePermissionCommand.d.ts +11 -2
  18. package/dist-types/commands/UpdateAliasCommand.d.ts +11 -2
  19. package/dist-types/commands/UpdateFunctionCodeCommand.d.ts +11 -2
  20. package/dist-types/commands/UpdateFunctionConfigurationCommand.d.ts +11 -2
  21. package/dist-types/commands/index.d.ts +2 -0
  22. package/dist-types/models/models_0.d.ts +158 -19
  23. package/dist-types/protocols/Aws_restJson1.d.ts +18 -0
  24. package/dist-types/ts3.4/Lambda.d.ts +34 -0
  25. package/dist-types/ts3.4/LambdaClient.d.ts +12 -0
  26. package/dist-types/ts3.4/commands/GetFunctionRecursionConfigCommand.d.ts +40 -0
  27. package/dist-types/ts3.4/commands/PutFunctionRecursionConfigCommand.d.ts +40 -0
  28. package/dist-types/ts3.4/commands/index.d.ts +2 -0
  29. package/dist-types/ts3.4/models/models_0.d.ts +18 -0
  30. package/dist-types/ts3.4/protocols/Aws_restJson1.d.ts +24 -0
  31. package/package.json +1 -1
@@ -0,0 +1,82 @@
1
+ import { Command as $Command } from "@smithy/smithy-client";
2
+ import { MetadataBearer as __MetadataBearer } from "@smithy/types";
3
+ import { LambdaClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LambdaClient";
4
+ import { PutFunctionRecursionConfigRequest, PutFunctionRecursionConfigResponse } from "../models/models_0";
5
+ /**
6
+ * @public
7
+ */
8
+ export type { __MetadataBearer };
9
+ export { $Command };
10
+ /**
11
+ * @public
12
+ *
13
+ * The input for {@link PutFunctionRecursionConfigCommand}.
14
+ */
15
+ export interface PutFunctionRecursionConfigCommandInput extends PutFunctionRecursionConfigRequest {
16
+ }
17
+ /**
18
+ * @public
19
+ *
20
+ * The output of {@link PutFunctionRecursionConfigCommand}.
21
+ */
22
+ export interface PutFunctionRecursionConfigCommandOutput extends PutFunctionRecursionConfigResponse, __MetadataBearer {
23
+ }
24
+ declare const PutFunctionRecursionConfigCommand_base: {
25
+ new (input: PutFunctionRecursionConfigCommandInput): import("@smithy/smithy-client").CommandImpl<PutFunctionRecursionConfigCommandInput, PutFunctionRecursionConfigCommandOutput, LambdaClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
26
+ new (__0_0: PutFunctionRecursionConfigCommandInput): import("@smithy/smithy-client").CommandImpl<PutFunctionRecursionConfigCommandInput, PutFunctionRecursionConfigCommandOutput, LambdaClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
27
+ getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
28
+ };
29
+ /**
30
+ * <p>Sets your function's <a href="https://docs.aws.amazon.com/lambda/latest/dg/invocation-recursion.html">recursive loop detection</a> configuration.</p>
31
+ * <p>When you configure a Lambda function to output to the same service or resource that invokes the function, it's possible to create
32
+ * an infinite recursive loop. For example, a Lambda function might write a message to an Amazon Simple Queue Service (Amazon SQS) queue, which then invokes the same
33
+ * function. This invocation causes the function to write another message to the queue, which in turn invokes the function again.</p>
34
+ * <p>Lambda can detect certain types of recursive loops shortly after they occur. When Lambda detects a recursive loop and your
35
+ * function's recursive loop detection configuration is set to <code>Terminate</code>, it stops your function being invoked and notifies
36
+ * you.</p>
37
+ * @example
38
+ * Use a bare-bones client and the command you need to make an API call.
39
+ * ```javascript
40
+ * import { LambdaClient, PutFunctionRecursionConfigCommand } from "@aws-sdk/client-lambda"; // ES Modules import
41
+ * // const { LambdaClient, PutFunctionRecursionConfigCommand } = require("@aws-sdk/client-lambda"); // CommonJS import
42
+ * const client = new LambdaClient(config);
43
+ * const input = { // PutFunctionRecursionConfigRequest
44
+ * FunctionName: "STRING_VALUE", // required
45
+ * RecursiveLoop: "Allow" || "Terminate", // required
46
+ * };
47
+ * const command = new PutFunctionRecursionConfigCommand(input);
48
+ * const response = await client.send(command);
49
+ * // { // PutFunctionRecursionConfigResponse
50
+ * // RecursiveLoop: "Allow" || "Terminate",
51
+ * // };
52
+ *
53
+ * ```
54
+ *
55
+ * @param PutFunctionRecursionConfigCommandInput - {@link PutFunctionRecursionConfigCommandInput}
56
+ * @returns {@link PutFunctionRecursionConfigCommandOutput}
57
+ * @see {@link PutFunctionRecursionConfigCommandInput} for command's `input` shape.
58
+ * @see {@link PutFunctionRecursionConfigCommandOutput} for command's `response` shape.
59
+ * @see {@link LambdaClientResolvedConfig | config} for LambdaClient's `config` shape.
60
+ *
61
+ * @throws {@link InvalidParameterValueException} (client fault)
62
+ * <p>One of the parameters in the request is not valid.</p>
63
+ *
64
+ * @throws {@link ResourceConflictException} (client fault)
65
+ * <p>The resource already exists, or another operation is in progress.</p>
66
+ *
67
+ * @throws {@link ResourceNotFoundException} (client fault)
68
+ * <p>The resource specified in the request does not exist.</p>
69
+ *
70
+ * @throws {@link ServiceException} (server fault)
71
+ * <p>The Lambda service encountered an internal error.</p>
72
+ *
73
+ * @throws {@link TooManyRequestsException} (client fault)
74
+ * <p>The request throughput limit was exceeded. For more information, see <a href="https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests">Lambda quotas</a>.</p>
75
+ *
76
+ * @throws {@link LambdaServiceException}
77
+ * <p>Base exception class for all service exceptions from Lambda service.</p>
78
+ *
79
+ * @public
80
+ */
81
+ export declare class PutFunctionRecursionConfigCommand extends PutFunctionRecursionConfigCommand_base {
82
+ }
@@ -58,8 +58,17 @@ declare const RemoveLayerVersionPermissionCommand_base: {
58
58
  * <p>One of the parameters in the request is not valid.</p>
59
59
  *
60
60
  * @throws {@link PreconditionFailedException} (client fault)
61
- * <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the <code>GetFunction</code> or the <code>GetAlias</code>
62
- * API operation to retrieve the latest RevisionId for your resource.</p>
61
+ * <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias.</p>
62
+ * <ul>
63
+ * <li>
64
+ * <p>
65
+ * <b>For AddPermission and RemovePermission API operations:</b> Call <code>GetPolicy</code> to retrieve the latest RevisionId for your resource.</p>
66
+ * </li>
67
+ * <li>
68
+ * <p>
69
+ * <b>For all other API operations:</b> Call <code>GetFunction</code> or <code>GetAlias</code> to retrieve the latest RevisionId for your resource.</p>
70
+ * </li>
71
+ * </ul>
63
72
  *
64
73
  * @throws {@link ResourceNotFoundException} (client fault)
65
74
  * <p>The resource specified in the request does not exist.</p>
@@ -57,8 +57,17 @@ declare const RemovePermissionCommand_base: {
57
57
  * <p>One of the parameters in the request is not valid.</p>
58
58
  *
59
59
  * @throws {@link PreconditionFailedException} (client fault)
60
- * <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the <code>GetFunction</code> or the <code>GetAlias</code>
61
- * API operation to retrieve the latest RevisionId for your resource.</p>
60
+ * <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias.</p>
61
+ * <ul>
62
+ * <li>
63
+ * <p>
64
+ * <b>For AddPermission and RemovePermission API operations:</b> Call <code>GetPolicy</code> to retrieve the latest RevisionId for your resource.</p>
65
+ * </li>
66
+ * <li>
67
+ * <p>
68
+ * <b>For all other API operations:</b> Call <code>GetFunction</code> or <code>GetAlias</code> to retrieve the latest RevisionId for your resource.</p>
69
+ * </li>
70
+ * </ul>
62
71
  *
63
72
  * @throws {@link ResourceNotFoundException} (client fault)
64
73
  * <p>The resource specified in the request does not exist.</p>
@@ -73,8 +73,17 @@ declare const UpdateAliasCommand_base: {
73
73
  * <p>One of the parameters in the request is not valid.</p>
74
74
  *
75
75
  * @throws {@link PreconditionFailedException} (client fault)
76
- * <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the <code>GetFunction</code> or the <code>GetAlias</code>
77
- * API operation to retrieve the latest RevisionId for your resource.</p>
76
+ * <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias.</p>
77
+ * <ul>
78
+ * <li>
79
+ * <p>
80
+ * <b>For AddPermission and RemovePermission API operations:</b> Call <code>GetPolicy</code> to retrieve the latest RevisionId for your resource.</p>
81
+ * </li>
82
+ * <li>
83
+ * <p>
84
+ * <b>For all other API operations:</b> Call <code>GetFunction</code> or <code>GetAlias</code> to retrieve the latest RevisionId for your resource.</p>
85
+ * </li>
86
+ * </ul>
78
87
  *
79
88
  * @throws {@link ResourceConflictException} (client fault)
80
89
  * <p>The resource already exists, or another operation is in progress.</p>
@@ -195,8 +195,17 @@ declare const UpdateFunctionCodeCommand_base: {
195
195
  * <p>One of the parameters in the request is not valid.</p>
196
196
  *
197
197
  * @throws {@link PreconditionFailedException} (client fault)
198
- * <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the <code>GetFunction</code> or the <code>GetAlias</code>
199
- * API operation to retrieve the latest RevisionId for your resource.</p>
198
+ * <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias.</p>
199
+ * <ul>
200
+ * <li>
201
+ * <p>
202
+ * <b>For AddPermission and RemovePermission API operations:</b> Call <code>GetPolicy</code> to retrieve the latest RevisionId for your resource.</p>
203
+ * </li>
204
+ * <li>
205
+ * <p>
206
+ * <b>For all other API operations:</b> Call <code>GetFunction</code> or <code>GetAlias</code> to retrieve the latest RevisionId for your resource.</p>
207
+ * </li>
208
+ * </ul>
200
209
  *
201
210
  * @throws {@link ResourceConflictException} (client fault)
202
211
  * <p>The resource already exists, or another operation is in progress.</p>
@@ -235,8 +235,17 @@ declare const UpdateFunctionConfigurationCommand_base: {
235
235
  * <p>One of the parameters in the request is not valid.</p>
236
236
  *
237
237
  * @throws {@link PreconditionFailedException} (client fault)
238
- * <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the <code>GetFunction</code> or the <code>GetAlias</code>
239
- * API operation to retrieve the latest RevisionId for your resource.</p>
238
+ * <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias.</p>
239
+ * <ul>
240
+ * <li>
241
+ * <p>
242
+ * <b>For AddPermission and RemovePermission API operations:</b> Call <code>GetPolicy</code> to retrieve the latest RevisionId for your resource.</p>
243
+ * </li>
244
+ * <li>
245
+ * <p>
246
+ * <b>For all other API operations:</b> Call <code>GetFunction</code> or <code>GetAlias</code> to retrieve the latest RevisionId for your resource.</p>
247
+ * </li>
248
+ * </ul>
240
249
  *
241
250
  * @throws {@link ResourceConflictException} (client fault)
242
251
  * <p>The resource already exists, or another operation is in progress.</p>
@@ -24,6 +24,7 @@ export * from "./GetFunctionCommand";
24
24
  export * from "./GetFunctionConcurrencyCommand";
25
25
  export * from "./GetFunctionConfigurationCommand";
26
26
  export * from "./GetFunctionEventInvokeConfigCommand";
27
+ export * from "./GetFunctionRecursionConfigCommand";
27
28
  export * from "./GetFunctionUrlConfigCommand";
28
29
  export * from "./GetLayerVersionByArnCommand";
29
30
  export * from "./GetLayerVersionCommand";
@@ -51,6 +52,7 @@ export * from "./PublishVersionCommand";
51
52
  export * from "./PutFunctionCodeSigningConfigCommand";
52
53
  export * from "./PutFunctionConcurrencyCommand";
53
54
  export * from "./PutFunctionEventInvokeConfigCommand";
55
+ export * from "./PutFunctionRecursionConfigCommand";
54
56
  export * from "./PutProvisionedConcurrencyConfigCommand";
55
57
  export * from "./PutRuntimeManagementConfigCommand";
56
58
  export * from "./RemoveLayerVersionPermissionCommand";
@@ -141,8 +141,17 @@ export declare class PolicyLengthExceededException extends __BaseException {
141
141
  constructor(opts: __ExceptionOptionType<PolicyLengthExceededException, __BaseException>);
142
142
  }
143
143
  /**
144
- * <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the <code>GetFunction</code> or the <code>GetAlias</code>
145
- * API operation to retrieve the latest RevisionId for your resource.</p>
144
+ * <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias.</p>
145
+ * <ul>
146
+ * <li>
147
+ * <p>
148
+ * <b>For AddPermission and RemovePermission API operations:</b> Call <code>GetPolicy</code> to retrieve the latest RevisionId for your resource.</p>
149
+ * </li>
150
+ * <li>
151
+ * <p>
152
+ * <b>For all other API operations:</b> Call <code>GetFunction</code> or <code>GetAlias</code> to retrieve the latest RevisionId for your resource.</p>
153
+ * </li>
154
+ * </ul>
146
155
  * @public
147
156
  */
148
157
  export declare class PreconditionFailedException extends __BaseException {
@@ -975,10 +984,10 @@ export interface CreateEventSourceMappingRequest {
975
984
  /**
976
985
  * <p>The maximum amount of time, in seconds, that Lambda spends gathering records before invoking the function.
977
986
  * You can configure <code>MaximumBatchingWindowInSeconds</code> to any value from 0 seconds to 300 seconds in increments of seconds.</p>
978
- * <p>For streams and Amazon SQS event sources, the default batching window is 0 seconds. For Amazon MSK, Self-managed Apache Kafka, Amazon MQ, and DocumentDB event sources, the default
987
+ * <p>For Kinesis, DynamoDB, and Amazon SQS event sources, the default batching window is 0 seconds. For Amazon MSK, Self-managed Apache Kafka, Amazon MQ, and DocumentDB event sources, the default
979
988
  * batching window is 500 ms. Note that because you can only change <code>MaximumBatchingWindowInSeconds</code> in increments of seconds, you cannot revert back to the 500 ms default batching window after you have changed it.
980
989
  * To restore the default batching window, you must create a new event source mapping.</p>
981
- * <p>Related setting: For streams and Amazon SQS event sources, when you set <code>BatchSize</code> to a value greater than 10, you must set <code>MaximumBatchingWindowInSeconds</code> to at least 1.</p>
990
+ * <p>Related setting: For Kinesis, DynamoDB, and Amazon SQS event sources, when you set <code>BatchSize</code> to a value greater than 10, you must set <code>MaximumBatchingWindowInSeconds</code> to at least 1.</p>
982
991
  * @public
983
992
  */
984
993
  MaximumBatchingWindowInSeconds?: number;
@@ -1602,8 +1611,14 @@ export interface CreateFunctionRequest {
1602
1611
  */
1603
1612
  FunctionName: string | undefined;
1604
1613
  /**
1605
- * <p>The identifier of the function's <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html">runtime</a>. Runtime is required if the deployment package is a .zip file archive.</p>
1606
- * <p>The following list includes deprecated runtimes. For more information, see <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy">Runtime deprecation policy</a>.</p>
1614
+ * <p>The identifier of the function's <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html">
1615
+ * runtime</a>. Runtime is required if the deployment package is a .zip file archive. Specifying a runtime results in
1616
+ * an error if you're deploying a function using a container image.</p>
1617
+ * <p>The following list includes deprecated runtimes. Lambda blocks creating new functions and updating existing
1618
+ * functions shortly after each runtime is deprecated. For more information, see
1619
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels">Runtime use after deprecation</a>.</p>
1620
+ * <p>For a list of all currently supported runtimes, see
1621
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported">Supported runtimes</a>.</p>
1607
1622
  * @public
1608
1623
  */
1609
1624
  Runtime?: Runtime;
@@ -2035,8 +2050,14 @@ export interface FunctionConfiguration {
2035
2050
  */
2036
2051
  FunctionArn?: string;
2037
2052
  /**
2038
- * <p>The identifier of the function's <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html">runtime</a>. Runtime is required if the deployment package is a .zip file archive.</p>
2039
- * <p>The following list includes deprecated runtimes. For more information, see <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy">Runtime deprecation policy</a>.</p>
2053
+ * <p>The identifier of the function's <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html">
2054
+ * runtime</a>. Runtime is required if the deployment package is a .zip file archive. Specifying a runtime results in
2055
+ * an error if you're deploying a function using a container image.</p>
2056
+ * <p>The following list includes deprecated runtimes. Lambda blocks creating new functions and updating existing
2057
+ * functions shortly after each runtime is deprecated. For more information, see
2058
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels">Runtime use after deprecation</a>.</p>
2059
+ * <p>For a list of all currently supported runtimes, see
2060
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported">Supported runtimes</a>.</p>
2040
2061
  * @public
2041
2062
  */
2042
2063
  Runtime?: Runtime;
@@ -3085,6 +3106,43 @@ export interface GetFunctionEventInvokeConfigRequest {
3085
3106
  */
3086
3107
  Qualifier?: string;
3087
3108
  }
3109
+ /**
3110
+ * @public
3111
+ */
3112
+ export interface GetFunctionRecursionConfigRequest {
3113
+ /**
3114
+ * <p></p>
3115
+ * @public
3116
+ */
3117
+ FunctionName: string | undefined;
3118
+ }
3119
+ /**
3120
+ * @public
3121
+ * @enum
3122
+ */
3123
+ export declare const RecursiveLoop: {
3124
+ readonly Allow: "Allow";
3125
+ readonly Terminate: "Terminate";
3126
+ };
3127
+ /**
3128
+ * @public
3129
+ */
3130
+ export type RecursiveLoop = (typeof RecursiveLoop)[keyof typeof RecursiveLoop];
3131
+ /**
3132
+ * @public
3133
+ */
3134
+ export interface GetFunctionRecursionConfigResponse {
3135
+ /**
3136
+ * <p>If your function's recursive loop detection configuration is <code>Allow</code>, Lambda doesn't take any action when it
3137
+ * detects your function being invoked as part of a recursive loop.</p>
3138
+ * <p>If your function's recursive loop detection configuration is <code>Terminate</code>, Lambda stops your function being
3139
+ * invoked and notifies you when it detects your function being invoked as part of a recursive loop.</p>
3140
+ * <p>By default, Lambda sets your function's configuration to <code>Terminate</code>. You can update this
3141
+ * configuration using the <a>PutFunctionRecursionConfig</a> action.</p>
3142
+ * @public
3143
+ */
3144
+ RecursiveLoop?: RecursiveLoop;
3145
+ }
3088
3146
  /**
3089
3147
  * @public
3090
3148
  */
@@ -3257,7 +3315,10 @@ export interface GetLayerVersionResponse {
3257
3315
  Version?: number;
3258
3316
  /**
3259
3317
  * <p>The layer's compatible runtimes.</p>
3260
- * <p>The following list includes deprecated runtimes. For more information, see <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy">Runtime deprecation policy</a>.</p>
3318
+ * <p>The following list includes deprecated runtimes. For more information, see
3319
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels">Runtime use after deprecation</a>.</p>
3320
+ * <p>For a list of all currently supported runtimes, see
3321
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported">Supported runtimes</a>.</p>
3261
3322
  * @public
3262
3323
  */
3263
3324
  CompatibleRuntimes?: Runtime[];
@@ -4711,8 +4772,11 @@ export interface ListFunctionUrlConfigsResponse {
4711
4772
  */
4712
4773
  export interface ListLayersRequest {
4713
4774
  /**
4714
- * <p>A runtime identifier. For example, <code>java21</code>.</p>
4715
- * <p>The following list includes deprecated runtimes. For more information, see <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy">Runtime deprecation policy</a>.</p>
4775
+ * <p>A runtime identifier.</p>
4776
+ * <p>The following list includes deprecated runtimes. For more information, see
4777
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels">Runtime use after deprecation</a>.</p>
4778
+ * <p>For a list of all currently supported runtimes, see
4779
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported">Supported runtimes</a>.</p>
4716
4780
  * @public
4717
4781
  */
4718
4782
  CompatibleRuntime?: Runtime;
@@ -4761,7 +4825,10 @@ export interface LayerVersionsListItem {
4761
4825
  CreatedDate?: string;
4762
4826
  /**
4763
4827
  * <p>The layer's compatible runtimes.</p>
4764
- * <p>The following list includes deprecated runtimes. For more information, see <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy">Runtime deprecation policy</a>.</p>
4828
+ * <p>The following list includes deprecated runtimes. For more information, see
4829
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels">Runtime use after deprecation</a>.</p>
4830
+ * <p>For a list of all currently supported runtimes, see
4831
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported">Supported runtimes</a>.</p>
4765
4832
  * @public
4766
4833
  */
4767
4834
  CompatibleRuntimes?: Runtime[];
@@ -4819,8 +4886,11 @@ export interface ListLayersResponse {
4819
4886
  */
4820
4887
  export interface ListLayerVersionsRequest {
4821
4888
  /**
4822
- * <p>A runtime identifier. For example, <code>java21</code>.</p>
4823
- * <p>The following list includes deprecated runtimes. For more information, see <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy">Runtime deprecation policy</a>.</p>
4889
+ * <p>A runtime identifier.</p>
4890
+ * <p>The following list includes deprecated runtimes. For more information, see
4891
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels">Runtime use after deprecation</a>.</p>
4892
+ * <p>For a list of all currently supported runtimes, see
4893
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported">Supported runtimes</a>.</p>
4824
4894
  * @public
4825
4895
  */
4826
4896
  CompatibleRuntime?: Runtime;
@@ -5148,7 +5218,10 @@ export interface PublishLayerVersionResponse {
5148
5218
  Version?: number;
5149
5219
  /**
5150
5220
  * <p>The layer's compatible runtimes.</p>
5151
- * <p>The following list includes deprecated runtimes. For more information, see <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy">Runtime deprecation policy</a>.</p>
5221
+ * <p>The following list includes deprecated runtimes. For more information, see
5222
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels">Runtime use after deprecation</a>.</p>
5223
+ * <p>For a list of all currently supported runtimes, see
5224
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported">Supported runtimes</a>.</p>
5152
5225
  * @public
5153
5226
  */
5154
5227
  CompatibleRuntimes?: Runtime[];
@@ -5383,6 +5456,66 @@ export interface PutFunctionEventInvokeConfigRequest {
5383
5456
  */
5384
5457
  DestinationConfig?: DestinationConfig;
5385
5458
  }
5459
+ /**
5460
+ * @public
5461
+ */
5462
+ export interface PutFunctionRecursionConfigRequest {
5463
+ /**
5464
+ * <p>The name or ARN of the Lambda function.</p>
5465
+ * <p class="title">
5466
+ * <b>Name formats</b>
5467
+ * </p>
5468
+ * <ul>
5469
+ * <li>
5470
+ * <p>
5471
+ * <b>Function name</b> – <code>my-function</code>.</p>
5472
+ * </li>
5473
+ * <li>
5474
+ * <p>
5475
+ * <b>Function ARN</b> – <code>arn:aws:lambda:us-west-2:123456789012:function:my-function</code>.</p>
5476
+ * </li>
5477
+ * <li>
5478
+ * <p>
5479
+ * <b>Partial ARN</b> – <code>123456789012:function:my-function</code>.</p>
5480
+ * </li>
5481
+ * </ul>
5482
+ * <p>The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64
5483
+ * characters in length.</p>
5484
+ * @public
5485
+ */
5486
+ FunctionName: string | undefined;
5487
+ /**
5488
+ * <p>If you set your function's recursive loop detection configuration to <code>Allow</code>, Lambda doesn't take any action when it
5489
+ * detects your function being invoked as part of a recursive loop. We recommend that you only use this setting if your design intentionally uses a
5490
+ * Lambda function to write data back to the same Amazon Web Services resource that invokes it.</p>
5491
+ * <p>If you set your function's recursive loop detection configuration to <code>Terminate</code>, Lambda stops your function being
5492
+ * invoked and notifies you when it detects your function being invoked as part of a recursive loop.</p>
5493
+ * <p>By default, Lambda sets your function's configuration to <code>Terminate</code>.</p>
5494
+ * <important>
5495
+ * <p>If your design intentionally uses a Lambda function to write data back to the same Amazon Web Services resource that invokes
5496
+ * the function, then use caution and implement suitable guard rails to prevent unexpected charges being billed to
5497
+ * your Amazon Web Services account. To learn more about best practices for using recursive invocation patterns, see <a href="https://serverlessland.com/content/service/lambda/guides/aws-lambda-operator-guide/recursive-runaway">Recursive patterns that cause
5498
+ * run-away Lambda functions</a> in Serverless Land.</p>
5499
+ * </important>
5500
+ * @public
5501
+ */
5502
+ RecursiveLoop: RecursiveLoop | undefined;
5503
+ }
5504
+ /**
5505
+ * @public
5506
+ */
5507
+ export interface PutFunctionRecursionConfigResponse {
5508
+ /**
5509
+ * <p>The status of your function's recursive loop detection configuration.</p>
5510
+ * <p>When this value is set to <code>Allow</code>and Lambda detects your function being invoked as part of a recursive
5511
+ * loop, it doesn't take any action.</p>
5512
+ * <p>When this value is set to <code>Terminate</code> and Lambda detects your function being invoked as part of a recursive
5513
+ * loop, it stops your function being invoked and notifies you.
5514
+ * </p>
5515
+ * @public
5516
+ */
5517
+ RecursiveLoop?: RecursiveLoop;
5518
+ }
5386
5519
  /**
5387
5520
  * @public
5388
5521
  */
@@ -5825,10 +5958,10 @@ export interface UpdateEventSourceMappingRequest {
5825
5958
  /**
5826
5959
  * <p>The maximum amount of time, in seconds, that Lambda spends gathering records before invoking the function.
5827
5960
  * You can configure <code>MaximumBatchingWindowInSeconds</code> to any value from 0 seconds to 300 seconds in increments of seconds.</p>
5828
- * <p>For streams and Amazon SQS event sources, the default batching window is 0 seconds. For Amazon MSK, Self-managed Apache Kafka, Amazon MQ, and DocumentDB event sources, the default
5961
+ * <p>For Kinesis, DynamoDB, and Amazon SQS event sources, the default batching window is 0 seconds. For Amazon MSK, Self-managed Apache Kafka, Amazon MQ, and DocumentDB event sources, the default
5829
5962
  * batching window is 500 ms. Note that because you can only change <code>MaximumBatchingWindowInSeconds</code> in increments of seconds, you cannot revert back to the 500 ms default batching window after you have changed it.
5830
5963
  * To restore the default batching window, you must create a new event source mapping.</p>
5831
- * <p>Related setting: For streams and Amazon SQS event sources, when you set <code>BatchSize</code> to a value greater than 10, you must set <code>MaximumBatchingWindowInSeconds</code> to at least 1.</p>
5964
+ * <p>Related setting: For Kinesis, DynamoDB, and Amazon SQS event sources, when you set <code>BatchSize</code> to a value greater than 10, you must set <code>MaximumBatchingWindowInSeconds</code> to at least 1.</p>
5832
5965
  * @public
5833
5966
  */
5834
5967
  MaximumBatchingWindowInSeconds?: number;
@@ -6035,8 +6168,14 @@ export interface UpdateFunctionConfigurationRequest {
6035
6168
  */
6036
6169
  Environment?: Environment;
6037
6170
  /**
6038
- * <p>The identifier of the function's <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html">runtime</a>. Runtime is required if the deployment package is a .zip file archive.</p>
6039
- * <p>The following list includes deprecated runtimes. For more information, see <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy">Runtime deprecation policy</a>.</p>
6171
+ * <p>The identifier of the function's <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html">
6172
+ * runtime</a>. Runtime is required if the deployment package is a .zip file archive. Specifying a runtime results in
6173
+ * an error if you're deploying a function using a container image.</p>
6174
+ * <p>The following list includes deprecated runtimes. Lambda blocks creating new functions and updating existing
6175
+ * functions shortly after each runtime is deprecated. For more information, see
6176
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels">Runtime use after deprecation</a>.</p>
6177
+ * <p>For a list of all currently supported runtimes, see
6178
+ * <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported">Supported runtimes</a>.</p>
6040
6179
  * @public
6041
6180
  */
6042
6181
  Runtime?: Runtime;
@@ -26,6 +26,7 @@ import { GetFunctionCommandInput, GetFunctionCommandOutput } from "../commands/G
26
26
  import { GetFunctionConcurrencyCommandInput, GetFunctionConcurrencyCommandOutput } from "../commands/GetFunctionConcurrencyCommand";
27
27
  import { GetFunctionConfigurationCommandInput, GetFunctionConfigurationCommandOutput } from "../commands/GetFunctionConfigurationCommand";
28
28
  import { GetFunctionEventInvokeConfigCommandInput, GetFunctionEventInvokeConfigCommandOutput } from "../commands/GetFunctionEventInvokeConfigCommand";
29
+ import { GetFunctionRecursionConfigCommandInput, GetFunctionRecursionConfigCommandOutput } from "../commands/GetFunctionRecursionConfigCommand";
29
30
  import { GetFunctionUrlConfigCommandInput, GetFunctionUrlConfigCommandOutput } from "../commands/GetFunctionUrlConfigCommand";
30
31
  import { GetLayerVersionByArnCommandInput, GetLayerVersionByArnCommandOutput } from "../commands/GetLayerVersionByArnCommand";
31
32
  import { GetLayerVersionCommandInput, GetLayerVersionCommandOutput } from "../commands/GetLayerVersionCommand";
@@ -53,6 +54,7 @@ import { PublishVersionCommandInput, PublishVersionCommandOutput } from "../comm
53
54
  import { PutFunctionCodeSigningConfigCommandInput, PutFunctionCodeSigningConfigCommandOutput } from "../commands/PutFunctionCodeSigningConfigCommand";
54
55
  import { PutFunctionConcurrencyCommandInput, PutFunctionConcurrencyCommandOutput } from "../commands/PutFunctionConcurrencyCommand";
55
56
  import { PutFunctionEventInvokeConfigCommandInput, PutFunctionEventInvokeConfigCommandOutput } from "../commands/PutFunctionEventInvokeConfigCommand";
57
+ import { PutFunctionRecursionConfigCommandInput, PutFunctionRecursionConfigCommandOutput } from "../commands/PutFunctionRecursionConfigCommand";
56
58
  import { PutProvisionedConcurrencyConfigCommandInput, PutProvisionedConcurrencyConfigCommandOutput } from "../commands/PutProvisionedConcurrencyConfigCommand";
57
59
  import { PutRuntimeManagementConfigCommandInput, PutRuntimeManagementConfigCommandOutput } from "../commands/PutRuntimeManagementConfigCommand";
58
60
  import { RemoveLayerVersionPermissionCommandInput, RemoveLayerVersionPermissionCommandOutput } from "../commands/RemoveLayerVersionPermissionCommand";
@@ -170,6 +172,10 @@ export declare const se_GetFunctionConfigurationCommand: (input: GetFunctionConf
170
172
  * serializeAws_restJson1GetFunctionEventInvokeConfigCommand
171
173
  */
172
174
  export declare const se_GetFunctionEventInvokeConfigCommand: (input: GetFunctionEventInvokeConfigCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
175
+ /**
176
+ * serializeAws_restJson1GetFunctionRecursionConfigCommand
177
+ */
178
+ export declare const se_GetFunctionRecursionConfigCommand: (input: GetFunctionRecursionConfigCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
173
179
  /**
174
180
  * serializeAws_restJson1GetFunctionUrlConfigCommand
175
181
  */
@@ -278,6 +284,10 @@ export declare const se_PutFunctionConcurrencyCommand: (input: PutFunctionConcur
278
284
  * serializeAws_restJson1PutFunctionEventInvokeConfigCommand
279
285
  */
280
286
  export declare const se_PutFunctionEventInvokeConfigCommand: (input: PutFunctionEventInvokeConfigCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
287
+ /**
288
+ * serializeAws_restJson1PutFunctionRecursionConfigCommand
289
+ */
290
+ export declare const se_PutFunctionRecursionConfigCommand: (input: PutFunctionRecursionConfigCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
281
291
  /**
282
292
  * serializeAws_restJson1PutProvisionedConcurrencyConfigCommand
283
293
  */
@@ -434,6 +444,10 @@ export declare const de_GetFunctionConfigurationCommand: (output: __HttpResponse
434
444
  * deserializeAws_restJson1GetFunctionEventInvokeConfigCommand
435
445
  */
436
446
  export declare const de_GetFunctionEventInvokeConfigCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetFunctionEventInvokeConfigCommandOutput>;
447
+ /**
448
+ * deserializeAws_restJson1GetFunctionRecursionConfigCommand
449
+ */
450
+ export declare const de_GetFunctionRecursionConfigCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetFunctionRecursionConfigCommandOutput>;
437
451
  /**
438
452
  * deserializeAws_restJson1GetFunctionUrlConfigCommand
439
453
  */
@@ -542,6 +556,10 @@ export declare const de_PutFunctionConcurrencyCommand: (output: __HttpResponse,
542
556
  * deserializeAws_restJson1PutFunctionEventInvokeConfigCommand
543
557
  */
544
558
  export declare const de_PutFunctionEventInvokeConfigCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<PutFunctionEventInvokeConfigCommandOutput>;
559
+ /**
560
+ * deserializeAws_restJson1PutFunctionRecursionConfigCommand
561
+ */
562
+ export declare const de_PutFunctionRecursionConfigCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<PutFunctionRecursionConfigCommandOutput>;
545
563
  /**
546
564
  * deserializeAws_restJson1PutProvisionedConcurrencyConfigCommand
547
565
  */
@@ -103,6 +103,10 @@ import {
103
103
  GetFunctionEventInvokeConfigCommandInput,
104
104
  GetFunctionEventInvokeConfigCommandOutput,
105
105
  } from "./commands/GetFunctionEventInvokeConfigCommand";
106
+ import {
107
+ GetFunctionRecursionConfigCommandInput,
108
+ GetFunctionRecursionConfigCommandOutput,
109
+ } from "./commands/GetFunctionRecursionConfigCommand";
106
110
  import {
107
111
  GetFunctionUrlConfigCommandInput,
108
112
  GetFunctionUrlConfigCommandOutput,
@@ -211,6 +215,10 @@ import {
211
215
  PutFunctionEventInvokeConfigCommandInput,
212
216
  PutFunctionEventInvokeConfigCommandOutput,
213
217
  } from "./commands/PutFunctionEventInvokeConfigCommand";
218
+ import {
219
+ PutFunctionRecursionConfigCommandInput,
220
+ PutFunctionRecursionConfigCommandOutput,
221
+ } from "./commands/PutFunctionRecursionConfigCommand";
214
222
  import {
215
223
  PutProvisionedConcurrencyConfigCommandInput,
216
224
  PutProvisionedConcurrencyConfigCommandOutput,
@@ -610,6 +618,19 @@ export interface Lambda {
610
618
  options: __HttpHandlerOptions,
611
619
  cb: (err: any, data?: GetFunctionEventInvokeConfigCommandOutput) => void
612
620
  ): void;
621
+ getFunctionRecursionConfig(
622
+ args: GetFunctionRecursionConfigCommandInput,
623
+ options?: __HttpHandlerOptions
624
+ ): Promise<GetFunctionRecursionConfigCommandOutput>;
625
+ getFunctionRecursionConfig(
626
+ args: GetFunctionRecursionConfigCommandInput,
627
+ cb: (err: any, data?: GetFunctionRecursionConfigCommandOutput) => void
628
+ ): void;
629
+ getFunctionRecursionConfig(
630
+ args: GetFunctionRecursionConfigCommandInput,
631
+ options: __HttpHandlerOptions,
632
+ cb: (err: any, data?: GetFunctionRecursionConfigCommandOutput) => void
633
+ ): void;
613
634
  getFunctionUrlConfig(
614
635
  args: GetFunctionUrlConfigCommandInput,
615
636
  options?: __HttpHandlerOptions
@@ -971,6 +992,19 @@ export interface Lambda {
971
992
  options: __HttpHandlerOptions,
972
993
  cb: (err: any, data?: PutFunctionEventInvokeConfigCommandOutput) => void
973
994
  ): void;
995
+ putFunctionRecursionConfig(
996
+ args: PutFunctionRecursionConfigCommandInput,
997
+ options?: __HttpHandlerOptions
998
+ ): Promise<PutFunctionRecursionConfigCommandOutput>;
999
+ putFunctionRecursionConfig(
1000
+ args: PutFunctionRecursionConfigCommandInput,
1001
+ cb: (err: any, data?: PutFunctionRecursionConfigCommandOutput) => void
1002
+ ): void;
1003
+ putFunctionRecursionConfig(
1004
+ args: PutFunctionRecursionConfigCommandInput,
1005
+ options: __HttpHandlerOptions,
1006
+ cb: (err: any, data?: PutFunctionRecursionConfigCommandOutput) => void
1007
+ ): void;
974
1008
  putProvisionedConcurrencyConfig(
975
1009
  args: PutProvisionedConcurrencyConfigCommandInput,
976
1010
  options?: __HttpHandlerOptions