import { NodeHttpOptions as __HttpOptions__ } from '@aws-sdk/types'; import * as __aws_sdk_types from '@aws-sdk/types'; /** * GenerateDataKeyWithoutPlaintextInput shape */ export interface GenerateDataKeyWithoutPlaintextInput { /** *
The identifier of the customer master key (CMK) under which to generate and encrypt the data encryption key.
To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias name, or alias ARN. When using an alias name, prefix it with "alias/". To specify a CMK in a different AWS account, you must use the key ARN or alias ARN.
For example:
Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab
Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
Alias name: alias/ExampleAlias
Alias ARN: arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias
To get the key ID and key ARN for a CMK, use ListKeys or DescribeKey. To get the alias name and alias ARN, use ListAliases.
*/ KeyId: string; /** *A set of key-value pairs that represents additional authenticated data.
For more information, see Encryption Context in the AWS Key Management Service Developer Guide.
*/ EncryptionContext?: { [key: string]: string; } | Iterable<[string, string]>; /** *The length of the data encryption key. Use AES_128 to generate a 128-bit symmetric key, or AES_256 to generate a 256-bit symmetric key.
The length of the data encryption key in bytes. For example, use the value 64 to generate a 512-bit data key (64 bytes is 512 bits). For common key lengths (128-bit and 256-bit symmetric keys), we recommend that you use the KeySpec field instead of this one.
A list of grant tokens.
For more information, see Grant Tokens in the AWS Key Management Service Developer Guide.
*/ GrantTokens?: Array