/**
 * Validation utilities
 */
import type { Hex } from '../types/common';
import type { PrivacyAddress } from '../types/address';
/**
 * Check if string is a valid Ethereum address (20-byte 0x…).
 */
export declare function isEvmAddress(address: string): address is Hex;
/**
 * Check if string is a valid MPK hex (32-byte 0x…).
 */
export declare function isMpkHex(mpk: string): mpk is Hex;
/**
 * Assert that input is a valid 20-byte EVM address (0x + 40 hex chars).
 */
export declare function assertEvmAddress(input: string | Hex, message?: string): void;
/**
 * Assert that amount is a positive bigint.
 */
export declare function assertBigIntAmount(amount: bigint, message?: string): void;
/**
 * Check if string is a valid privacy address (96-byte hex: MPK + viewing public key)
 */
export declare function isPrivacyAddress(address: string): address is PrivacyAddress;
/**
 * Assert that input is a valid privacy address (0x + 192 hex chars)
 *
 * @throws Error if address is invalid
 */
export declare function assertPrivacyAddress(address: string, message?: string): void;
/**
 * Validate master public key (MPK)
 *
 * @throws Error if MPK is invalid
 */
export declare function assertMpk(mpk: bigint | Hex): void;
//# sourceMappingURL=validation.d.ts.map