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-packagingconfiguration-hlsencryption.html">the AWS Docs</a>
*/
export interface HlsEncryptionProps {
    /** <code>ConstantInitializationVector</code>  <a name="cfn-mediapackage-packagingconfiguration-hlsencryption-constantinitializationvector"></a>
  A 128-bit, 16-byte hex value represented by a 32-character string, used with the key for encrypting blocks. If you don’t specify a constant initialization vector (IV), AWS Elemental MediaPackage periodically rotates the 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>SpekeKeyProvider</code>  <a name="cfn-mediapackage-packagingconfiguration-hlsencryption-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>EncryptionMethod</code>  <a name="cfn-mediapackage-packagingconfiguration-hlsencryption-encryptionmethod"></a>
  HLS encryption type.<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>;
}
