1import type * as devopsguru from "@distilled.cloud/aws/devops-guru";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `devops-guru:DescribeAccountOverview`.
7 *
8 * Summarizes the insights created and the mean time to recover over a time range — the account's operational scorecard for a reporting window.
9 * Provide the implementation with
10 * `Effect.provide(AWS.DevOpsGuru.DescribeAccountOverviewHttp)`.
11 * ### Account Health
12 * **Example:** Summarize a Time Range
13 * ```typescript
14 * // init — account-level binding, no resource argument
15 * const describeAccountOverview = yield* AWS.DevOpsGuru.DescribeAccountOverview();
16 *
17 * // runtime
18 * const overview = yield* describeAccountOverview({
19 * FromTime: new Date(Date.now() - 7 * 24 * 3600_000),
20 * });
21 * yield* Effect.log(`MTTR: ${overview.MeanTimeToRecoverInMilliseconds}ms`);
22 * ```
23 *
24 * @binding
25 */
26export interface DescribeAccountOverview extends Binding.Service<
27 DescribeAccountOverview,
28 "AWS.DevOpsGuru.DescribeAccountOverview",
29 () => Effect.Effect<
30 (
31 request: devopsguru.DescribeAccountOverviewRequest,
32 ) => Effect.Effect<
33 devopsguru.DescribeAccountOverviewResponse,
34 devopsguru.DescribeAccountOverviewError
35 >
36 >
37> {}
38export const DescribeAccountOverview = Binding.Service<DescribeAccountOverview>(
39 "AWS.DevOpsGuru.DescribeAccountOverview",
40);