1import type * as SVC from "@distilled.cloud/aws/emr";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4import type { Cluster } from "./Cluster.ts";
5
6/**
7 * Runtime binding for `elasticmapreduce:RemoveManagedScalingPolicy` — detaches the bound cluster's managed scaling policy.
8 * ### Scaling the Cluster
9 * **Example:** Disable Managed Scaling
10 * ```typescript
11 * const removeScalingPolicy =
12 * yield* AWS.EMR.RemoveManagedScalingPolicy(cluster);
13 *
14 * yield* removeScalingPolicy();
15 * ```
16 *
17 * @binding
18 */
19export interface RemoveManagedScalingPolicy extends Binding.Service<
20 RemoveManagedScalingPolicy,
21 "AWS.EMR.RemoveManagedScalingPolicy",
22 <C extends Cluster>(
23 cluster: C,
24 ) => Effect.Effect<
25 (
26 request?: Omit<SVC.RemoveManagedScalingPolicyInput, "ClusterId">,
27 ) => Effect.Effect<
28 SVC.RemoveManagedScalingPolicyOutput,
29 SVC.RemoveManagedScalingPolicyError
30 >
31 >
32> {}
33export const RemoveManagedScalingPolicy =
34 Binding.Service<RemoveManagedScalingPolicy>(
35 "AWS.EMR.RemoveManagedScalingPolicy",
36 );