import { ScalingConstraintsProps } from './ScalingConstraintsProps';
import { ScalingRuleProps } from './ScalingRuleProps';
/**
  <code>AutoScalingPolicy</code> defines how an instance group dynamically adds and terminates EC2 instances in response to the value of a CloudWatch metric. For more information, see <a href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-automatic-scaling.html">Using Automatic Scaling in Amazon EMR</a> in the <em>Amazon EMR Management Guide</em>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html">the AWS Docs</a>
*/
export interface AutoScalingPolicyProps {
    /** <code>Constraints</code>  <a name="cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy-constraints"></a>
  The upper and lower Amazon EC2 instance limits for an automatic scaling policy. Automatic scaling activity will not cause an instance group to grow above or below these limits.<br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    constraints: ScalingConstraintsProps;
    /** <code>Rules</code>  <a name="cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy-rules"></a>
  The scale-in and scale-out rules that comprise the automatic scaling policy.<br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    rules: ScalingRuleProps[];
}
