import { Value } from '../../../cloudformation/Value';
/**
  Parameters for a block device for an EBS volume in an Amazon EC2 launch template.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-ebs.html">the AWS Docs</a>
*/
export interface EbsProps {
    /** <code>SnapshotId</code>  <a name="cfn-ec2-launchtemplate-ebs-snapshotid"></a>
  The ID of the snapshot.<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> */
    snapshotId?: Value<string>;
    /** <code>VolumeType</code>  <a name="cfn-ec2-launchtemplate-ebs-volumetype"></a>
  The volume type. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html">Amazon EBS volume types</a> in the
  Amazon Elastic Compute Cloud User Guide: br />
  
  Required: No<br />
  
  Allowed values: <code>gp2 | gp3 | io1 | io2 | sc1 | st1 | standard</code><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> */
    volumeType?: Value<'gp2' | 'gp3' | 'io1' | 'io2' | 'sc1' | 'st1' | 'standard'>;
    /** <code>KmsKeyId</code>  <a name="cfn-ec2-launchtemplate-ebs-kmskeyid"></a>
  The ARN of the symmetric AWS Key Management Service (AWS KMS) CMK used for encryption.<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> */
    kmsKeyId?: Value<string>;
    /** <code>Encrypted</code>  <a name="cfn-ec2-launchtemplate-ebs-encrypted"></a>
  Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached to instances that support Amazon EBS encryption. If you are creating a volume from a snapshot, you can’t specify an encryption value.<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> */
    encrypted?: Value<boolean>;
    /** <code>Throughput</code>  <a name="cfn-ec2-launchtemplate-ebs-throughput"></a>
  The throughput to provision for a <code>gp3</code> volume, with a maximum of 1,000 MiB/s.<br />
  Valid Range: Minimum value of 125. Maximum value of 1000.<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> */
    throughput?: Value<number>;
    /** <p> */
    iops?: Value<number>;
    /** <p> */
    volumeSize?: Value<number>;
    /** <code>DeleteOnTermination</code>  <a name="cfn-ec2-launchtemplate-ebs-deleteontermination"></a>
  Indicates whether the EBS volume is deleted on instance termination.<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> */
    deleteOnTermination?: Value<boolean>;
}
