import { Value } from '../../../cloudformation/Value';
import { SpekeKeyProviderProps } from './SpekeKeyProviderProps';
/**
  Holds encryption information so that access to the content can be controlled by a DRM solution.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafencryption.html">the AWS Docs</a>
*/
export interface CmafEncryptionProps {
    /** <code>KeyRotationIntervalSeconds</code>  <a name="cfn-mediapackage-originendpoint-cmafencryption-keyrotationintervalseconds"></a>
  Number of seconds before AWS Elemental MediaPackage rotates to a new key. By default, rotation is set to 60 seconds. Set to <code>0</code> to disable key rotation.<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> */
    keyRotationIntervalSeconds?: Value<number>;
    /** <code>SpekeKeyProvider</code>  <a name="cfn-mediapackage-originendpoint-cmafencryption-spekekeyprovider"></a>
  Parameters for the SPEKE key provider.<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> */
    spekeKeyProvider: SpekeKeyProviderProps;
    /** <code>ConstantInitializationVector</code>  <a name="cfn-mediapackage-originendpoint-cmafencryption-constantinitializationvector"></a>
  An optional 128-bit, 16-byte hex value represented by a 32-character string, used in conjunction with the key for encrypting blocks. If you don’t specify a value, then AWS Elemental MediaPackage creates the constant initialization vector (IV).<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> */
    constantInitializationVector?: Value<string>;
    /** <code>EncryptionMethod</code>  <a name="cfn-mediapackage-originendpoint-cmafencryption-encryptionmethod"></a>
  The encryption method to use.<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> */
    encryptionMethod?: Value<string>;
}
