1import type * as account from "@distilled.cloud/aws/account";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `account:GetRegionOptStatus`.
7 *
8 * Reads the opt-in status of a single Region for the calling account
9 * (`ENABLED`, `DISABLED`, `ENABLING`, `DISABLING`, or
10 * `ENABLED_BY_DEFAULT`). Account Management is an account singleton, so the
11 * binding takes no resource argument. Provide the implementation with
12 * `Effect.provide(AWS.Account.GetRegionOptStatusHttp)`.
13 * ### Reading Region Opt Status
14 * **Example:** Check Whether an Opt-in Region Is Enabled
15 * ```typescript
16 * // init — account-level binding, no resource argument
17 * const getRegionOptStatus = yield* AWS.Account.GetRegionOptStatus();
18 *
19 * // runtime
20 * const status = yield* getRegionOptStatus({ RegionName: "ap-east-1" });
21 * console.log(status.RegionOptStatus);
22 * ```
23 *
24 * @binding
25 */
26export interface GetRegionOptStatus extends Binding.Service<
27 GetRegionOptStatus,
28 "AWS.Account.GetRegionOptStatus",
29 () => Effect.Effect<
30 (
31 request: account.GetRegionOptStatusRequest,
32 ) => Effect.Effect<
33 account.GetRegionOptStatusResponse,
34 account.GetRegionOptStatusError
35 >
36 >
37> {}
38export const GetRegionOptStatus = Binding.Service<GetRegionOptStatus>(
39 "AWS.Account.GetRegionOptStatus",
40);