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:ListInsights`.
7 *
8 * Lists the account's insights filtered by status (ongoing, closed, or any within a time range) and type (reactive/proactive).
9 * Provide the implementation with
10 * `Effect.provide(AWS.DevOpsGuru.ListInsightsHttp)`.
11 * ### Inspecting Insights
12 * **Example:** List Ongoing Insights
13 * ```typescript
14 * // init — account-level binding, no resource argument
15 * const listInsights = yield* AWS.DevOpsGuru.ListInsights();
16 *
17 * // runtime
18 * const { ReactiveInsights } = yield* listInsights({
19 * StatusFilter: { Ongoing: { Type: "REACTIVE" } },
20 * });
21 * yield* Effect.log(`ongoing: ${ReactiveInsights?.length}`);
22 * ```
23 *
24 * @binding
25 */
26export interface ListInsights extends Binding.Service<
27 ListInsights,
28 "AWS.DevOpsGuru.ListInsights",
29 () => Effect.Effect<
30 (
31 request: devopsguru.ListInsightsRequest,
32 ) => Effect.Effect<
33 devopsguru.ListInsightsResponse,
34 devopsguru.ListInsightsError
35 >
36 >
37> {}
38export const ListInsights = Binding.Service<ListInsights>(
39 "AWS.DevOpsGuru.ListInsights",
40);