/** * XDC Unit Conversion Utilities * * Handle conversions between Wei, Gwei, and XDC units. * 1 XDC = 1e18 Wei = 1e9 Gwei */ /** * Unit definitions for XDC */ export declare enum XdcUnit { WEI = "wei", KWEI = "kwei", MWEI = "mwei", GWEI = "gwei", SZABO = "szabo", FINNEY = "finney", XDC = "xdc", ETHER = "ether" } /** * Unit decimals mapping */ export declare const UNIT_DECIMALS: Record; /** * Convert from Wei to specified unit * @param weiValue - Value in Wei * @param unit - Target unit * @returns Converted value as string */ export declare function fromWei(weiValue: string | bigint, unit?: XdcUnit | string): string; /** * Convert from specified unit to Wei * @param value - Value in specified unit * @param unit - Source unit * @returns Value in Wei as bigint */ export declare function toWei(value: string | number, unit?: XdcUnit | string): bigint; /** * Convert Wei to Gwei * @param weiValue - Value in Wei * @returns Value in Gwei as string */ export declare function weiToGwei(weiValue: string | bigint): string; /** * Convert Gwei to Wei * @param gweiValue - Value in Gwei * @returns Value in Wei as bigint */ export declare function gweiToWei(gweiValue: string | number): bigint; /** * Convert Wei to XDC * @param weiValue - Value in Wei * @returns Value in XDC as string */ export declare function weiToXdc(weiValue: string | bigint): string; /** * Convert XDC to Wei * @param xdcValue - Value in XDC * @returns Value in Wei as bigint */ export declare function xdcToWei(xdcValue: string | number): bigint; /** * Format token amount with decimals * @param amount - Raw token amount * @param decimals - Token decimals * @param displayDecimals - Decimals to display (default: 6) * @returns Formatted amount string */ export declare function formatTokenAmount(amount: string | bigint, decimals?: number, displayDecimals?: number): string; /** * Parse token amount to raw units * @param amount - Human readable amount * @param decimals - Token decimals * @returns Raw amount as bigint */ export declare function parseTokenAmount(amount: string | number, decimals?: number): bigint; /** * Format XDC balance for display * @param weiBalance - Balance in Wei * @param precision - Display precision (default: 4) * @returns Formatted balance string */ export declare function formatXdcBalance(weiBalance: string | bigint, precision?: number): string; /** * Format gas price for display * @param gasPriceWei - Gas price in Wei * @returns Formatted gas price in Gwei */ export declare function formatGasPrice(gasPriceWei: string | bigint): string; /** * Calculate gas cost * @param gasLimit - Gas limit * @param gasPriceWei - Gas price in Wei * @returns Gas cost in Wei as bigint */ export declare function calculateGasCost(gasLimit: bigint | number, gasPriceWei: bigint): bigint; /** * Convert between any two units * @param value - Value to convert * @param fromUnit - Source unit * @param toUnit - Target unit * @returns Converted value as string */ export declare function convertUnits(value: string | number, fromUnit: XdcUnit | string, toUnit: XdcUnit | string): string; /** * Validate numeric string * @param value - Value to validate * @returns True if valid numeric string */ export declare function isValidNumericString(value: string): boolean; /** * Safe parse bigint from various inputs * @param value - Value to parse * @returns BigInt value or 0n if invalid */ export declare function safeParseBigInt(value: string | number | bigint | undefined): bigint; /** * Compare two bigint values * @param a - First value * @param b - Second value * @returns -1 if a < b, 0 if equal, 1 if a > b */ export declare function compareBigInt(a: bigint, b: bigint): number; /** * Calculate percentage of total * @param value - Value * @param total - Total * @returns Percentage as string */ export declare function calculatePercentage(value: bigint, total: bigint): string; /** * Format large number with K, M, B suffixes * @param value - Number value * @returns Formatted string */ export declare function formatLargeNumber(value: number | bigint): string; //# sourceMappingURL=unitConverter.d.ts.map