/// <reference types="node" />
/// <reference types="node" />
import { NexoDerivedKey } from "../../typings/clouddevice/security/nexoDerivedKey";
/** Performs AES-256-CBC encryption or decryption using the derived key and provided IV nonce. */
export declare function crypt(bytes: Buffer, dk: NexoDerivedKey, ivNonce: Buffer, mode: "encrypt" | "decrypt"): Buffer;
/** Generates an HMAC-SHA256 for message authentication. */
export declare function hmac(bytes: Buffer, dk: NexoDerivedKey): Buffer;
/** Validates the HMAC of a decrypted message to ensure data integrity. */
export declare function validateHmac(receivedHmac: Buffer, decryptedMessage: Buffer, dk: NexoDerivedKey): void;
/** Generates a cryptographically random IV nonce. */
export declare function generateRandomIvNonce(): Buffer;
