1import type * as servicequotas from "@distilled.cloud/aws/service-quotas";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `servicequotas:GetAutoManagementConfiguration` — read
7 * the account's Service Quotas Auto Management opt-in status (opt-in type,
8 * notification target, excluded quotas) from inside a Function.
9 *
10 * ### Auto Management
11 * **Example:** Check the Auto Management opt-in status
12 * ```typescript
13 * // init
14 * const getAutoManagementConfiguration =
15 * yield* AWS.ServiceQuotas.GetAutoManagementConfiguration();
16 *
17 * // runtime — fails with the typed NoSuchResourceException when the
18 * // account has not opted in to Auto Management
19 * const config = yield* getAutoManagementConfiguration();
20 * const optIn = config.OptInType; // NotifyOnly | NotifyAndAdjust
21 * ```
22 *
23 * @binding
24 */
25export interface GetAutoManagementConfiguration extends Binding.Service<
26 GetAutoManagementConfiguration,
27 "AWS.ServiceQuotas.GetAutoManagementConfiguration",
28 () => Effect.Effect<
29 (
30 request?: servicequotas.GetAutoManagementConfigurationRequest,
31 ) => Effect.Effect<
32 servicequotas.GetAutoManagementConfigurationResponse,
33 servicequotas.GetAutoManagementConfigurationError
34 >
35 >
36> {}
37export const GetAutoManagementConfiguration =
38 Binding.Service<GetAutoManagementConfiguration>(
39 "AWS.ServiceQuotas.GetAutoManagementConfiguration",
40 );