import { Value } from '../../../cloudformation/Value';
/**
  Enables gradual state machine deployments. CloudFormation automatically shifts traffic from the version the alias currently points to, to a new state machine version that you specify.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachinealias-deploymentpreference.html">the AWS Docs</a>
*/
export interface DeploymentPreferenceProps {
    /** <p> */
    type: Value<string>;
    /** <code>StateMachineVersionArn</code>  <a name="cfn-stepfunctions-statemachinealias-deploymentpreference-statemachineversionarn"></a>
  The Amazon Resource Name (ARN) of the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachineversion.html">https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachineversion.html</a> resource that will be the final version to which the alias points to when the traffic shifting is complete.<br />
  While performing gradual deployments, you can only provide a single state machine version ARN. To explicitly set version weights in a CloudFormation template, use <code>RoutingConfiguration</code> instead.<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> */
    stateMachineVersionArn: Value<string>;
    /** <code>Percentage</code>  <a name="cfn-stepfunctions-statemachinealias-deploymentpreference-percentage"></a>
  The percentage of traffic to shift to the new version in each increment.<br />
  
  Required: No<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> */
    percentage?: Value<number>;
    /** <code>Alarms</code>  <a name="cfn-stepfunctions-statemachinealias-deploymentpreference-alarms"></a>
  A list of Amazon CloudWatch alarms to be monitored during the deployment. The deployment fails and rolls back if any of these alarms go into the <code>ALARM</code> state.<br />
  
  Required: No<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> */
    alarms?: Value<Value<string>[]>;
    /** <code>Interval</code>  <a name="cfn-stepfunctions-statemachinealias-deploymentpreference-interval"></a>
  The time in minutes between each traffic shifting increment.<br />
  
  Required: No<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> */
    interval?: Value<number>;
}
