import { IAsymmetricEncryptOptions, IHashOptions, ISymmetricEncryptOptions, } from './index'; // TODO: Remove "I" prefix export enum IAsymmetricEncryptionType { 'RSA-KSM' = 'RSA-KSM', } // TODO: Remove "I" prefix export enum IHashType { 'sha1' = 'sha1', 'sha256' = 'sha256', 'sha384' = 'sha384', 'sha512' = 'sha512', 'md5' = 'md5', } // TODO: Remove "I" prefix export enum ISymmetricEncryptionType { 'AES-128-ECB' = 'AES-128-ECB', 'AES-128-CBC' = 'AES-128-CBC', 'AES-128-CFB' = 'AES-128-CFB', 'AES-128-OFB' = 'AES-128-OFB', 'AES-128-CTR' = 'AES-128-CTR', 'AES-192-ECB' = 'AES-192-ECB', 'AES-192-CBC' = 'AES-192-CBC', 'AES-192-CFB' = 'AES-192-CFB', 'AES-192-OFB' = 'AES-192-OFB', 'AES-192-CTR' = 'AES-192-CTR', 'AES-256-ECB' = 'AES-256-ECB', 'AES-256-CBC' = 'AES-256-CBC', 'AES-256-CFB' = 'AES-256-CFB', 'AES-256-OFB' = 'AES-256-OFB', 'AES-256-CTR' = 'AES-256-CTR', '3DES-ECB' = '3DES-ECB', '3DES-CBC' = '3DES-CBC', 'DES-ECB' = 'DES-ECB', 'DES-CBC' = 'DES-CBC', } // TODO: Fix type-namings (i.e. remove "I" prefix) export type ISecurityType = IAsymmetricEncryptionType | ISymmetricEncryptionType | IHashType; export type IAsymmetricDecryptOptions = IAsymmetricEncryptOptions; export type ISymmetricDecryptOptions = ISymmetricEncryptOptions; export type IEncryptOptions = IAsymmetricEncryptOptions | ISymmetricEncryptOptions | IHashOptions; export type IDecryptOptions = IAsymmetricDecryptOptions | ISymmetricDecryptOptions;