import { PrivateKey } from '../auth/ecc/src/key_private'; import { PublicKey } from '../auth/ecc/src/key_public'; export interface MemoData { from: string; to: string; nonce: string; check: number; encrypted: string; } export declare function encode(private_key: string | PrivateKey | null, public_key: string | PublicKey | null, memo: string, testNonce?: string): string; /** * Decode an encrypted memo. * @param private_key - Our private key (WIF or PrivateKey) * @param memo - Encrypted memo string (leading #) * @param expectedRecipientPubKey - If we are the sender, optionally verify the memo's 'to' matches this (prevents wrong-recipient decryption) * @returns Decrypted memo with leading #, or original string on failure */ export declare function decode(private_key: string | PrivateKey | null, memo: string, expectedRecipientPubKey?: string | PublicKey): string;