1import type * as fms from "@distilled.cloud/aws/fms";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Request for {@link GetAdminScope}.
7 */
8export interface GetAdminScopeRequest extends fms.GetAdminScopeRequest {}
9
10/**
11 * Runtime binding for `fms:GetAdminScope`.
12 *
13 * Returns information about the specified account's administrative scope — the resources a Firewall Manager administrator can manage. Provide the
14 * implementation with `Effect.provide(AWS.FMS.GetAdminScopeHttp)`.
15 * ### Administrator Management
16 * **Example:** Read an Administrator's Scope
17 * ```typescript
18 * // init — account-level binding takes no resource
19 * const getAdminScope = yield* AWS.FMS.GetAdminScope();
20 *
21 * // runtime
22 * const result = yield* getAdminScope({ AdminAccount: accountId });
23 * console.log(result.Status, result.AdminScope?.PolicyTypeScope);
24 * ```
25 *
26 * @binding
27 */
28export interface GetAdminScope extends Binding.Service<
29 GetAdminScope,
30 "AWS.FMS.GetAdminScope",
31 () => Effect.Effect<
32 (
33 request: GetAdminScopeRequest,
34 ) => Effect.Effect<fms.GetAdminScopeResponse, fms.GetAdminScopeError>
35 >
36> {}
37
38export const GetAdminScope = Binding.Service<GetAdminScope>(
39 "AWS.FMS.GetAdminScope",
40);