UNPKG

@am92/kms

Version:
57 lines (56 loc) 1.36 kB
import { KMSClient } from '@aws-sdk/client-kms'; import { AwsKmsConfig, DataKeyObject, DataKeyPairObject, EncryptDecryptOptions } from '../../TYPES'; /** * Class to execute KMS methods using AWS KMS * * @class */ export declare class AwsKms { /** * Configurations used for AWS KMS */ CONFIG: AwsKmsConfig; /** * AWS KMS client instance */ client: KMSClient; /** * Creates an instance of AwsKms. * * @constructor * @param config */ constructor(config: AwsKmsConfig); /** * Generates encryption keys for symmetric encryption algorithm * * @async * @returns */ generateDataKey(): Promise<DataKeyObject>; /** * Generates encryption keys for asymmetric encryption algorithm * * @async * @returns */ generateDataKeyPair(): Promise<DataKeyPairObject>; /** * Encrypts a given string using AES-256-CBC * * @async * @param [plainText=''] * @param [options] * @returns */ encrypt(plainText?: string, options?: EncryptDecryptOptions): Promise<string>; /** * Decrypts a given string using AES-256-CBC * * @async * @param [ciphertext=''] * @param [options] * @returns */ decrypt(ciphertext?: string, options?: EncryptDecryptOptions): Promise<string>; }