Method Signature
align.blockchain.tokens.parseAmount(
amount: string,
decimals: number
): string
Parameters
Human-readable amount (e.g., "100.50")
Token decimals (e.g., 6 for USDC, 18 for ETH)
Returns
Returns the raw amount as a string (e.g., "100500000").
Examples
import Align from "@tolbel/align";
const align = new Align({
apiKey: process.env.ALIGN_API_KEY!,
environment: "sandbox",
});
// Convert 100 USDC to raw units
const rawUsdc = align.blockchain.tokens.parseAmount("100", 6);
console.log(rawUsdc); // "100000000"
// Convert 1.5 ETH to wei
const rawEth = align.blockchain.tokens.parseAmount("1.5", 18);
console.log(rawEth); // "1500000000000000000"
const raw = align.blockchain.tokens.parseAmount("50.25", 6);
console.log(raw); // "50250000"
Use in Contract Calls
// Prepare raw amount for approve() call
const approveAmount = align.blockchain.tokens.parseAmount("1000", 6);
const tx = await align.blockchain.contracts.write({
contractAddress: USDC_ADDRESS,
abi: ERC20_ABI,
method: "approve",
args: [spenderAddress, approveAmount],
wallet: myWallet,
network: "polygon",
});
This is a synchronous method - no network calls are made.