/** * XDC Address Utilities * * XDC Network uses a unique address format with 'xdc' prefix instead of '0x'. * These utilities handle conversion and validation of both formats. */ import { ethers } from 'ethers'; /** * Convert 0x address to xdc format * @param address - Address in 0x format * @returns Address in xdc format */ export declare function toXdcAddress(address: string): string; /** * Convert xdc address to 0x format (for ethers.js compatibility) * @param address - Address in xdc or 0x format * @returns Address in 0x format */ export declare function toEthAddress(address: string): string; /** * Validate XDC address (accepts both formats) * @param address - Address to validate * @returns True if valid */ export declare function isValidXdcAddress(address: string): boolean; /** * Get checksum address (0x format) * @param address - Address to checksum * @returns Checksummed address */ export declare function getChecksumAddress(address: string): string; /** * Normalize address to a consistent format * @param address - Address in any format * @param format - Target format ('xdc' or '0x') * @returns Normalized address */ export declare function normalizeAddress(address: string, format?: 'xdc' | '0x'): string; /** * Check if address is a contract * @param provider - ethers provider * @param address - Address to check * @returns True if contract */ export declare function isContract(provider: ethers.Provider, address: string): Promise; /** * Compare two addresses (format-agnostic) * @param address1 - First address * @param address2 - Second address * @returns True if addresses are equal */ export declare function addressesEqual(address1: string, address2: string): boolean; /** * Truncate address for display * @param address - Address to truncate * @param startChars - Characters to show at start (default 6) * @param endChars - Characters to show at end (default 4) * @returns Truncated address */ export declare function truncateAddress(address: string, startChars?: number, endChars?: number): string; /** * Check if address is zero address * @param address - Address to check * @returns True if zero address */ export declare function isZeroAddress(address: string): boolean; /** * Get zero address in specified format * @param format - Address format * @returns Zero address */ export declare function getZeroAddress(format?: 'xdc' | '0x'): string; /** * Parse address from various formats (handles mixed case) * @param input - Address input * @returns Parsed address or null if invalid */ export declare function parseAddress(input: string): string | null; /** * Create address from bytes * @param bytes - Bytes to convert * @returns Address in xdc format */ export declare function addressFromBytes(bytes: Uint8Array | string): string; /** * Extract address from contract creation transaction * @param senderAddress - Address of contract deployer * @param nonce - Transaction nonce * @returns Predicted contract address */ export declare function predictContractAddress(senderAddress: string, nonce: number): string; //# sourceMappingURL=addressUtils.d.ts.map