typed-aws
Version:
Helps you write AWS CloudFormation in TypeScript
78 lines (77 loc) • 3.31 kB
TypeScript
import { CfnResource, Resolvable } from '../../base';
export declare type Key_Type = 'AWS::KMS::Key';
export declare const Key_Type = "AWS::KMS::Key";
/**
* The AWS::KMS::Key resource specifies a customer master key (CMK) in
* AWS Key Management Service (AWS KMS). Authorized users can use the CMK
* to encrypt and decrypt small amounts of data (up to 4096 bytes), but
* they are more commonly used to generate data keys. You can also use
* CMKs to encrypt data stored in AWS services that are integrated with
* AWS KMS or within their applications. {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html}
*/
export default function Key(props: Key_Properties): CfnResource<Key_Properties>;
/**
* The AWS::KMS::Key resource specifies a customer master key (CMK) in
* AWS Key Management Service (AWS KMS). Authorized users can use the CMK
* to encrypt and decrypt small amounts of data (up to 4096 bytes), but
* they are more commonly used to generate data keys. You can also use
* CMKs to encrypt data stored in AWS services that are integrated with
* AWS KMS or within their applications. {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html}
*/
export declare type Key_Properties = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-description}
*/
Description?: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-enabled}
*/
Enabled?: Resolvable<boolean>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-enablekeyrotation}
*/
EnableKeyRotation?: Resolvable<boolean>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-keypolicy}
*/
KeyPolicy: {
[k: string]: unknown;
} | Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-keyusage}
*/
KeyUsage?: Resolvable<'ENCRYPT_DECRYPT' | 'SIGN_VERIFY'>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-keyspec}
*/
KeySpec?: Resolvable<'SYMMETRIC_DEFAULT' | 'RSA_2048' | 'RSA_3072' | 'RSA_4096' | 'ECC_NIST_P256' | 'ECC_NIST_P384' | 'ECC_NIST_P521' | 'ECC_SECG_P256K1'>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-multiregion}
*/
MultiRegion?: Resolvable<boolean>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-pendingwindowindays}
*/
PendingWindowInDays?: Resolvable<number>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-tags}
*/
Tags?: Tag[];
Arn?: Resolvable<string>;
KeyId?: Resolvable<string>;
};
export declare type Tag = {
Key: Resolvable<string>;
Value: Resolvable<string>;
};