import { Value } from '../../../cloudformation/Value';
/**
  Describes the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn’t specify any server-side encryption, this default encryption will be applied. If you don’t specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key in your AWS account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html">PUT Bucket encryption</a> in the <em>Amazon S3 API Reference</em>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html">the AWS Docs</a>
*/
export interface ServerSideEncryptionByDefaultProps {
    /** <p> */
    kMSMasterKeyID?: Value<string>;
    /** <code>SSEAlgorithm</code>  <a name="cfn-s3-bucket-serversideencryptionbydefault-ssealgorithm"></a>
  Server-side encryption algorithm to use for the default encryption.<br />
  
  Required: Yes<br />
  
  Allowed values: <code>AES256 | aws:kms | aws:kms:dsse</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> */
    sSEAlgorithm: Value<'AES256' | 'aws:kms' | 'aws:kms:dsse'>;
}
