import { HashTypes } from './typedef'; type OaepParams = { k: number; label: Uint8Array; hash: HashTypes; mLen: number; cLen: number; }; /** * Check OAEP length * @param {String} mode - 'encrypt' or 'decrypt' * @param {Number} k - Octet length of modulus length, i.e., n. * @param {Uint8Array} label - OAEP label. * @param {String} hash - Name of hash function. * @param {Number} mLen - Octet length of message to be encrypted. * @param {Number} cLen - the length of ciphertext * @throws {Error} - Throws if LabelTooLong, MessageTooLong, DecryptionError or InvalidMode. */ export declare const checkLength: (mode: 'encrypt' | 'decrypt', { k, label, hash, mLen, cLen }: OaepParams) => void; /** * OAEP Encoder * @param {Uint8Array} msg - Message. * @param {Uint8Array} label - Label. * @param {Number} k - Octet length of modulus length, i.e., n. * @param {String} hash - Name of hash function. * @return {Promise} - OAEP encoded message. */ export declare const emeOaepEncode: (msg: Uint8Array, label: Uint8Array, k: number, hash?: HashTypes) => Promise; /** * OAEP Decoder * @param {Uint8Array} em - OAEP encoded message. * @param {Uint8Array} label - Label. * @param {Number} k - Octet length of modulus length, i.e., n. * @param {String} hash - Name of hash function. * @return {Promise} - OAEP decoded message. * @throws {Error} - Throws if DecryptionError. */ export declare const emeOaepDecode: (em: Uint8Array, label: Uint8Array, k: number, hash?: HashTypes) => Promise; export {};