require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../types/ethereum-network.types.cjs`),t=require(`../../constants/chains.constants.cjs`),n=require(`../pre-transaction/solana.cjs`),r=require(`../utils/create-provider.cjs`),i=require(`../web3/getContractMetadata.cjs`),a=require(`../web3/fetchSolanaMerkleTreeRootHash.cjs`);let o=require(`@solana/web3.js`),s=require(`@coral-xyz/anchor`);var c=()=>{let e=o.Keypair.generate();return{publicKey:e.publicKey,payer:e,signTransaction:async e=>e,signAllTransactions:async e=>e}},l=async t=>({hinkalRootHash:await i.getContractWithFetcherByChainId(t,e.ContractType.HinkalContract).getRootHash()}),u=async e=>{let{contractData:i,fetchRpcUrl:l}=t.networkRegistry[e],{hinkalIdl:u,hinkalAddress:d,originalDeployer:f}=i;if(!u||!d||!f||!l)throw Error(`Missing Solana configuration for chain ${e}`);return{hinkalRootHash:await a.fetchSolanaMerkleTreeRootHash(new s.Program(u,new s.AnchorProvider(r.createCustomSolanaConnection(l),c(),{preflightCommitment:`confirmed`,commitment:`confirmed`})),n.getMerkleAccountPublicKey(new o.PublicKey(d),new o.PublicKey(f)))}},d=async e=>t.isSolanaLike(e)?u(e):l(e);exports.fetchOnChainRootHashes=d;