import { ChainData, OnChainExecutionData, Token } from "@0xsquid/squid-types"; import { OverrideParams, Contract, GasData, RpcProvider, TokenBalance } from "../../types"; export declare class Utils { validateNativeBalance({ fromProvider, sender, amount, fromChain, }: { fromProvider: RpcProvider; sender: string; amount: bigint; fromChain: ChainData; }): Promise<{ isApproved: boolean; message: string; }>; validateTokenBalance({ amount, fromTokenContract, sender, fromChain, }: { amount: bigint; fromTokenContract: Contract; sender: string; fromChain: ChainData; }): Promise<{ isApproved: boolean; message: string; }>; validateAllowance({ amount, fromTokenContract, sender, router, }: { amount: bigint; fromTokenContract: Contract; sender: string; router: string; }): Promise; getGasData: ({ transactionRequest, overrides, }: { transactionRequest: OnChainExecutionData & { setGasPrice?: boolean; }; overrides?: OverrideParams; }) => GasData; getTokensBalanceSupportingMultiCall(tokens: Token[], chainRpcUrl: string, userAddress?: string): Promise; getTokensBalanceWithoutMultiCall(tokens: Token[], userAddress: string, rpcUrlsPerChain: { [chainId: string]: string; }): Promise; fetchBalance({ token, userAddress, rpcUrl, }: { token: Token; userAddress: string; rpcUrl: string; }): Promise; /** * Minimal validation to ensure the given string is a well-formed order hash * Validates hash prefix and length. */ isValidOrderHash(hash: string): boolean; }