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:ListRecommendations`.
7 *
8 * Lists DevOps Guru's remediation recommendations for an insight — the ready-made content of an incident notification or runbook comment.
9 * Provide the implementation with
10 * `Effect.provide(AWS.DevOpsGuru.ListRecommendationsHttp)`.
11 * ### Events and Recommendations
12 * **Example:** List an Insight's Recommendations
13 * ```typescript
14 * // init — account-level binding, no resource argument
15 * const listRecommendations = yield* AWS.DevOpsGuru.ListRecommendations();
16 *
17 * // runtime
18 * const { Recommendations } = yield* listRecommendations({
19 * InsightId: insightId,
20 * });
21 * for (const rec of Recommendations ?? []) {
22 * yield* Effect.log(`${rec.Name}: ${rec.Description}`);
23 * }
24 * ```
25 *
26 * @binding
27 */
28export interface ListRecommendations extends Binding.Service<
29 ListRecommendations,
30 "AWS.DevOpsGuru.ListRecommendations",
31 () => Effect.Effect<
32 (
33 request: devopsguru.ListRecommendationsRequest,
34 ) => Effect.Effect<
35 devopsguru.ListRecommendationsResponse,
36 devopsguru.ListRecommendationsError
37 >
38 >
39> {}
40export const ListRecommendations = Binding.Service<ListRecommendations>(
41 "AWS.DevOpsGuru.ListRecommendations",
42);