import { Value } from '../../../cloudformation/Value';
/**
  A structure that contains the configuration of the encryption-at-rest settings for artifacts that the canary uploads to Amazon S3. Artifact encryption functionality is available only for canaries that use Synthetics runtime version syn-nodejs-puppeteer-3.3 or later. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_artifact_encryption.html">Encrypting canary artifacts</a>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-s3encryption.html">the AWS Docs</a>
*/
export interface S3EncryptionProps {
    /** <code>KmsKeyArn</code>  <a name="cfn-synthetics-canary-s3encryption-kmskeyarn"></a>
  The ARN of the customer-managed AWS KMS key to use, if you specify <code>SSE-KMS</code> for <code>EncryptionMode</code><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> */
    kmsKeyArn?: Value<string>;
    /** <code>EncryptionMode</code>  <a name="cfn-synthetics-canary-s3encryption-encryptionmode"></a>
  The encryption method to use for artifacts created by this canary. Specify <code>SSE_S3</code> to use server-side encryption (SSE) with an Amazon S3-managed key. Specify <code>SSE-KMS</code> to use server-side encryption with a customer-managed AWS KMS key.<br />
  If you omit this parameter, an AWS-managed AWS KMS key is used.<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> */
    encryptionMode?: Value<string>;
}
