///
declare class Prpcrypt {
AESKey: Buffer;
iv: Buffer;
oldAESKey: Buffer;
oldIV: Buffer;
mode: string;
constructor(AESKey: Buffer, oldAESKey: Buffer);
encrypt(text: string, uniqueId: string): string;
decrypt(msgEncrypt: string, uniqueId: string, AESKey?: Buffer, iv?: Buffer): string;
}
export default abstract class MsgCryptoBase {
uniqueId: string;
messageToken: string;
AESKey: Buffer;
oldAESKey: Buffer;
prpcrypt: Prpcrypt;
constructor(options: {
uniqueId: string;
messageToken: string;
encodingAESKey: string;
oldEncodingAESKey: string;
});
protected validateMessage(msgEncrypt: string, msgSignature: string, timestamp: string, nonce: string): boolean;
encryptMsg(msg: string, timestamp?: number | string, nonce?: string): string;
abstract encryptMsgFormatter(msgEncrypt: string, signature: string, timestamp: number | string, nonce: string): string;
abstract decryptMsgToJSON(postData: string, msgSignature: string, timestamp: string, nonce: string): Promise;
}
export {};