/** * Fee asset metadata. * * Protocol fees are quoted in base units of an asset that is not always the * native coin: a `data_access` fee on mainnet is denominated in USDC.e, * which has 6 decimals, so formatting every amount as 18-decimal VANA is * wrong by twelve orders of magnitude and mislabels the currency. Worse, * comparing a `--max-fee` parsed as ether against a 6-decimal amount * silently disables the guard. */ /** Zero address in a fee quote means the chain's native coin. */ export declare const NATIVE_ASSET = "0x0000000000000000000000000000000000000000"; export interface AssetInfo { address: string; symbol: string; decimals: number; } /** * Resolve an asset's symbol and decimals, reading the ERC20 on chain once * per process. Unknown assets fall back to raw base units rather than * guessing 18 decimals, so a wrong number is never shown as if it were * right. */ export declare function resolveAsset(asset: string | undefined, rpcUrl: string): Promise; /** Human amount for display: "0.01 USDC.e", or base units when unknown. */ export declare function formatAssetAmount(amount: string, info: AssetInfo | null): string; /** * Parse a user-supplied decimal limit into base units of the asset. * Returns null when the asset is unknown, so callers refuse to compare * rather than compare wrongly. */ export declare function parseAssetAmount(value: string, info: AssetInfo | null): bigint | null; //# sourceMappingURL=assets.d.ts.map