import { Value } from '../../../cloudformation/Value';
import { SourcePriorityProps } from './SourcePriorityProps';
/**
  The settings for source failover.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-failoverconfig.html">the AWS Docs</a>
*/
export interface FailoverConfigProps {
    /** <code>State</code>  <a name="cfn-mediaconnect-flow-failoverconfig-state"></a>
  The state of source failover on the flow. If the state is inactive, the flow can have only one source. If the state is active, the flow can have one or two sources.<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> */
    state?: Value<string>;
    /** <code>SourcePriority</code>  <a name="cfn-mediaconnect-flow-failoverconfig-sourcepriority"></a>
  The priority you want to assign to a source. You can have a primary stream and a backup stream or two equally prioritized streams. This setting only applies when Failover Mode is set to FAILOVER.<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> */
    sourcePriority?: SourcePriorityProps;
    /** <code>FailoverMode</code>  <a name="cfn-mediaconnect-flow-failoverconfig-failovermode"></a>
  The type of failover you choose for this flow. MERGE combines the source streams into a single stream, allowing graceful recovery from any single-source loss. FAILOVER allows switching between different streams. The string for this property must be entered as MERGE or FAILOVER. No other string entry is valid.<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> */
    failoverMode?: Value<string>;
    /** <code>RecoveryWindow</code>  <a name="cfn-mediaconnect-flow-failoverconfig-recoverywindow"></a>
  The size of the buffer (delay) that the service maintains. A larger buffer means a longer delay in transmitting the stream, but more room for error correction. A smaller buffer means a shorter delay, but less room for error correction. You can choose a value from 100-500 ms. If you keep this field blank, the service uses the default value of 200 ms. This setting only applies when Failover Mode is set to MERGE.<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> */
    recoveryWindow?: Value<number>;
}
