import { Value } from '../../../cloudformation/Value';
/**
  The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html">Capacity rebalancing</a> in the <em>Amazon EC2 User Guide for Linux Instances</em>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotcapacityrebalance.html">the AWS Docs</a>
*/
export interface SpotCapacityRebalanceProps {
    /** <code>TerminationDelay</code>  <a name="cfn-ec2-spotfleet-spotcapacityrebalance-terminationdelay"></a>
  The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot Instance after launching a new replacement Spot Instance.<br />
  Required when <code>ReplacementStrategy</code> is set to <code>launch-before-terminate</code>.<br />
  Not valid when <code>ReplacementStrategy</code> is set to <code>launch</code>.<br />
  Valid values: Minimum value of <code>120</code> seconds. Maximum value of <code>7200</code> seconds.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    terminationDelay?: Value<number>;
    /** <code>ReplacementStrategy</code>  <a name="cfn-ec2-spotfleet-spotcapacityrebalance-replacementstrategy"></a>
  The replacement strategy to use. Only available for fleets of type <code>maintain</code>.<br />
  <code>launch</code> - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet. Spot Fleet does not terminate the instances that receive a rebalance notification. You can terminate the old instances, or you can leave them running. You are charged for all instances while they are running.<br />
  <code>launch-before-terminate</code> - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet, and then, after a delay that you specify (in <code>TerminationDelay</code>), terminates the instances that received a rebalance notification.<br />
  
  Required: No<br />
  
  Allowed values: <code>launch | launch-before-terminate</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    replacementStrategy?: Value<'launch' | 'launch-before-terminate'>;
}
