@scloud/cdk-patterns
Version:
Serverless CDK patterns for common infrastructure needs
23 lines (22 loc) • 837 B
TypeScript
import { Key } from 'aws-cdk-lib/aws-kms';
import { Bucket, BucketProps } from 'aws-cdk-lib/aws-s3';
import { Construct } from 'constructs';
interface KmsBucketProps extends BucketProps {
/**
* Pass null to indicate you don't want a key alias.
* This is useful when importing a bucket and key into a stack.
*/
keyAlias: string | null;
}
/**
* A bucket with a KMS key.
* @param props Any additional properties for the bucket. These can override the defaults provided by this function.
* NB if you don't want a key alias, pass null for keyAlias. This is useful when importing a bucket and key into a stack.
* @returns An s3.Bucket
*/
export declare class KmsBucket extends Construct {
key: Key;
bucket: Bucket;
constructor(scope: Construct, id: string, props: Partial<KmsBucketProps>);
}
export {};