1import type * as Lambda from "@distilled.cloud/aws/lambda";
2import * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `lambda:GetAccountSettings`.
7 *
8 * An account-level binding — call it with no arguments to get a callable
9 * that reads the region's Lambda quotas (`AccountLimit`) and current usage
10 * (`AccountUsage`). Provide the `GetAccountSettingsHttp` layer on the
11 * Function to satisfy the binding.
12 * ### Account Settings
13 * **Example:** Read account limits and usage
14 * ```typescript
15 * const getAccountSettings = yield* AWS.Lambda.GetAccountSettings();
16 *
17 * const settings = yield* getAccountSettings();
18 * const concurrency = settings.AccountLimit?.ConcurrentExecutions;
19 * ```
20 *
21 * @binding
22 */
23export interface GetAccountSettings extends Binding.Service<
24 GetAccountSettings,
25 "AWS.Lambda.GetAccountSettings",
26 () => Effect.Effect<
27 () => Effect.Effect<
28 Lambda.GetAccountSettingsResponse,
29 Lambda.GetAccountSettingsError
30 >
31 >
32> {}
33export const GetAccountSettings = Binding.Service<GetAccountSettings>(
34 "AWS.Lambda.GetAccountSettings",
35);