import { JsonRpcProvider } from 'ethers'; import type { GeneratedWallet } from '../utils/wallet.js'; import type { AmountLike, BundleGasConfig } from './types.js'; export { getErc20Decimals, getErc20DecimalsMerkle } from '../shared/foundation/erc20/decimals.js'; /** 生成多跳中间钱包(地址 + 私钥) */ export declare function generateHopWallets(recipientCount: number, hopCount: number | number[]): GeneratedWallet[][] | null; export declare function normalizeAmounts(recipients: string[], amount?: AmountLike, amounts?: AmountLike[]): string[]; /** * 批量获取余额(原生代币或 ERC20,优先 Multicall3) */ export declare function batchGetBalances(provider: JsonRpcProvider, addresses: string[], tokenAddress?: string, chainId?: number): Promise; export declare function estimateErc20TransferGas(provider: JsonRpcProvider, tokenAddress: string, from: string, to: string, amount: bigint, bufferPercent?: number): Promise; export declare function estimateMaxErc20TransferGas(provider: JsonRpcProvider, tokenAddress: string, from: string, recipients: string[], amounts: bigint[], bufferPercent?: number): Promise; export declare function calculateGasLimit(config: BundleGasConfig, isNative: boolean, hasHops: boolean, hopCount?: number): bigint; export declare function isNativeTokenAddress(tokenAddress?: string): boolean; export type { AmountLike, BundleGasConfig } from './types.js';