import cdk = require('@aws-cdk/cdk'); export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html */ interface AliasResourceProps { /** * ``AWS::KMS::Alias.AliasName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html#cfn-kms-alias-aliasname */ aliasName: string | cdk.Token; /** * ``AWS::KMS::Alias.TargetKeyId`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html#cfn-kms-alias-targetkeyid */ targetKeyId: string | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html */ class AliasResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * Creates a new ``AWS::KMS::Alias``. * * @param parent the ``cdk.Construct`` this ``AliasResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``AliasResource`` */ constructor(parent: cdk.Construct, name: string, properties: AliasResourceProps); protected renderProperties(): { [key: string]: any; }; } } export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html */ interface KeyResourceProps { /** * ``AWS::KMS::Key.KeyPolicy`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-keypolicy */ keyPolicy: object | cdk.Token; /** * ``AWS::KMS::Key.Description`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-description */ description?: string | cdk.Token; /** * ``AWS::KMS::Key.Enabled`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-enabled */ enabled?: boolean | cdk.Token; /** * ``AWS::KMS::Key.EnableKeyRotation`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-enablekeyrotation */ enableKeyRotation?: boolean | cdk.Token; /** * ``AWS::KMS::Key.KeyUsage`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-keyusage */ keyUsage?: string | cdk.Token; /** * ``AWS::KMS::Key.Tags`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-tags */ tags?: Array | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html */ class KeyResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * @cloudformation_attribute Arn */ readonly keyArn: KeyArn; /** * Creates a new ``AWS::KMS::Key``. * * @param parent the ``cdk.Construct`` this ``KeyResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``KeyResource`` */ constructor(parent: cdk.Construct, name: string, properties: KeyResourceProps); protected renderProperties(): { [key: string]: any; }; } } export declare class KeyArn extends cdk.Arn { }