1import type * as SVC from "@distilled.cloud/aws/emr";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `elasticmapreduce:ListClusters` — lists the account's EMR clusters (optionally filtered by state or creation window) — the building block of cluster-inventory automation.
7 * ### Discovering Clusters
8 * **Example:** List Active Clusters
9 * ```typescript
10 * const listClusters = yield* AWS.EMR.ListClusters();
11 *
12 * const { Clusters } = yield* listClusters({
13 * ClusterStates: ["RUNNING", "WAITING"],
14 * });
15 * ```
16 *
17 * @binding
18 */
19export interface ListClusters extends Binding.Service<
20 ListClusters,
21 "AWS.EMR.ListClusters",
22 () => Effect.Effect<
23 (
24 request?: SVC.ListClustersInput,
25 ) => Effect.Effect<SVC.ListClustersOutput, SVC.ListClustersError>
26 >
27> {}
28export const ListClusters = Binding.Service<ListClusters>(
29 "AWS.EMR.ListClusters",
30);