/** * Service for encrypting and decrypting message content. * * @remarks * Uses ECIES for direct message encryption with recipient public keys. * Uses AES-256-GCM with shared key for broadcast messages. * * @see Requirements 3.1, 3.2, 3.3, 3.5 */ export declare class MessageEncryptionService { /** * Encrypt content for direct message with recipient public keys. * @param content - Plaintext content * @param recipientPublicKeys - Map of recipient ID to public key * @returns Encrypted content and per-recipient encrypted keys */ encryptDirect(content: Uint8Array, recipientPublicKeys: Map): Promise<{ encryptedContent: Uint8Array; encryptedKeys: Map; }>; /** * Encrypt content for broadcast with shared key. * @param content - Plaintext content * @param sharedPublicKey - Shared public key for broadcast * @returns Encrypted content */ encryptBroadcast(content: Uint8Array, sharedPublicKey: Uint8Array): Promise; /** * Decrypt message content (no automatic decryption in storage/routing). * @param encryptedContent - Encrypted content * @param privateKey - Private key for decryption * @returns Decrypted content */ decrypt(encryptedContent: Uint8Array, privateKey: Uint8Array): Promise; /** * Decrypt symmetric key for recipient. * @param encryptedKey - Encrypted symmetric key * @param privateKey - Recipient's private key * @returns Decrypted symmetric key */ decryptKey(encryptedKey: Uint8Array, privateKey: Uint8Array): Promise; } //# sourceMappingURL=messageEncryptionService.d.ts.map