1import type * as guardduty from "@distilled.cloud/aws/guardduty";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `guardduty:GetOrganizationStatistics`.
7 *
8 * Reports organization-wide GuardDuty enablement statistics (delegated administrator only).
9 * Account-level operation — invoked with the caller's request as-is.
10 * Provide the implementation with
11 * `Effect.provide(AWS.GuardDuty.GetOrganizationStatisticsHttp)`.
12 * ### Organization Administration
13 * **Example:** Read Org Statistics
14 * ```typescript
15 * // init
16 * // init — account-level binding, no resource argument
17 * const getOrganizationStatistics = yield* AWS.GuardDuty.GetOrganizationStatistics();
18 *
19 * // runtime
20 * const { OrganizationDetails } = yield* getOrganizationStatistics();
21 * ```
22 *
23 * @binding
24 */
25export interface GetOrganizationStatistics extends Binding.Service<
26 GetOrganizationStatistics,
27 "AWS.GuardDuty.GetOrganizationStatistics",
28 () => Effect.Effect<
29 (
30 request?: guardduty.GetOrganizationStatisticsRequest,
31 ) => Effect.Effect<
32 guardduty.GetOrganizationStatisticsResponse,
33 guardduty.GetOrganizationStatisticsError
34 >
35 >
36> {}
37export const GetOrganizationStatistics =
38 Binding.Service<GetOrganizationStatistics>(
39 "AWS.GuardDuty.GetOrganizationStatistics",
40 );