require(`../../../../_virtual/_rolldown/runtime.cjs`),require(`../../constants/chains.constants.cjs`);const e=require(`../../constants/protocol.constants.cjs`);require(`./erc20tokenFunctions.cjs`),require(`../../data-structures/http/index.cjs`),require(`./addresses.cjs`);const t=require(`../../error-handling/logger.cjs`),n=require(`./create-provider.cjs`);require(`../../externalABIs/index.cjs`);const r=require(`../../externalABIs/swapAbi.cjs`);require(`./ipfs.cjs`);let i=require(`ethers`);require(`@solana/web3.js`),require(`@solana/spl-token`);var a=async(t,n,a)=>{try{let o=a.erc20TokenAddress,s,c=new i.ethers.Contract(a.erc20TokenAddress,r.ERC20ABI,t);s=o===e.zeroAddress?await t.getBalance(n):await c?.balanceOf(n);let l=s;return l<=0n?null:{token:a,balance:l}}catch{return null}},o=async(a,o,s)=>{try{let t=n.createJsonRpcProvider(a),c=new i.ethers.Contract(s,r.ERC20ABI,t),l;return l=s===e.zeroAddress?await t.getBalance(o):await c?.balanceOf(o),l}catch{return t.Logger.error(`Failed to fetch public balance for address ${o}`),null}};exports.getPublicBalance=a,exports.getPublicBalanceByTokenAddress=o;