import type * as SVC from "@distilled.cloud/aws/emr"; import type * as Effect from "effect/Effect"; import * as Binding from "../../Binding.ts"; import type { Cluster } from "./Cluster.ts"; /** * Runtime binding for `elasticmapreduce:PutAutoScalingPolicy` — attaches a CloudWatch-driven automatic scaling policy to an instance group of the bound cluster. * ### Scaling the Cluster * **Example:** Scale a Task Group on YARN Memory * ```typescript * const putAutoScaling = yield* AWS.EMR.PutAutoScalingPolicy(cluster); * * yield* putAutoScaling({ * InstanceGroupId: taskGroupId, * AutoScalingPolicy: { * Constraints: { MinCapacity: 0, MaxCapacity: 8 }, * Rules: [], // CloudWatch alarm-driven rules * }, * }); * ``` * * @binding */ export interface PutAutoScalingPolicy extends Binding.Service(cluster: C) => Effect.Effect<(request: Omit) => Effect.Effect>> { } export declare const PutAutoScalingPolicy: PutAutoScalingPolicy; //# sourceMappingURL=PutAutoScalingPolicy.d.ts.map