{ "abi": [ { "inputs": [ { "internalType": "address", "name": "_layerZeroEndpoint", "type": "address" }, { "internalType": "address", "name": "_router", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint8", "name": "msgType", "type": "uint8" }, { "indexed": false, "internalType": "uint64", "name": "nonce", "type": "uint64" } ], "name": "SendMsg", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "approveTokenSpender", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "uint16", "name": "", "type": "uint16" }], "name": "bridgeLookup", "outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_srcChainId", "type": "uint16" }, { "internalType": "bytes", "name": "_srcAddress", "type": "bytes" } ], "name": "forceResumeReceive", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "", "type": "uint16" }, { "internalType": "uint8", "name": "", "type": "uint8" } ], "name": "gasLookup", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "layerZeroEndpoint", "outputs": [ { "internalType": "contract ILayerZeroEndpoint", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_srcChainId", "type": "uint16" }, { "internalType": "bytes", "name": "_srcAddress", "type": "bytes" }, { "internalType": "uint64", "name": "_nonce", "type": "uint64" }, { "internalType": "bytes", "name": "_payload", "type": "bytes" } ], "name": "lzReceive", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [{ "internalType": "address", "name": "", "type": "address" }], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_chainId", "type": "uint16" }, { "internalType": "uint8", "name": "_functionType", "type": "uint8" }, { "internalType": "bytes", "name": "_toAddress", "type": "bytes" }, { "internalType": "bytes", "name": "_transferAndCallPayload", "type": "bytes" }, { "components": [ { "internalType": "uint256", "name": "dstGasForCall", "type": "uint256" }, { "internalType": "uint256", "name": "dstNativeAmount", "type": "uint256" }, { "internalType": "bytes", "name": "dstNativeAddr", "type": "bytes" } ], "internalType": "struct IStargateRouter.lzTxObj", "name": "_lzTxParams", "type": "tuple" } ], "name": "quoteLayerZeroFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_chainId", "type": "uint16" }, { "internalType": "uint256", "name": "_srcPoolId", "type": "uint256" }, { "internalType": "uint256", "name": "_dstPoolId", "type": "uint256" }, { "internalType": "address payable", "name": "_refundAddress", "type": "address" }, { "components": [ { "internalType": "uint256", "name": "credits", "type": "uint256" }, { "internalType": "uint256", "name": "idealBalance", "type": "uint256" } ], "internalType": "struct Pool.CreditObj", "name": "_c", "type": "tuple" }, { "internalType": "uint256", "name": "_amountSD", "type": "uint256" }, { "internalType": "bytes", "name": "_to", "type": "bytes" }, { "components": [ { "internalType": "uint256", "name": "dstGasForCall", "type": "uint256" }, { "internalType": "uint256", "name": "dstNativeAmount", "type": "uint256" }, { "internalType": "bytes", "name": "dstNativeAddr", "type": "bytes" } ], "internalType": "struct IStargateRouter.lzTxObj", "name": "_lzTxParams", "type": "tuple" } ], "name": "redeemLocal", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_chainId", "type": "uint16" }, { "internalType": "address payable", "name": "_refundAddress", "type": "address" }, { "components": [ { "internalType": "uint256", "name": "credits", "type": "uint256" }, { "internalType": "uint256", "name": "idealBalance", "type": "uint256" } ], "internalType": "struct Pool.CreditObj", "name": "_c", "type": "tuple" }, { "components": [ { "internalType": "uint256", "name": "dstGasForCall", "type": "uint256" }, { "internalType": "uint256", "name": "dstNativeAmount", "type": "uint256" }, { "internalType": "bytes", "name": "dstNativeAddr", "type": "bytes" } ], "internalType": "struct IStargateRouter.lzTxObj", "name": "_lzTxParams", "type": "tuple" }, { "internalType": "bytes", "name": "_payload", "type": "bytes" } ], "name": "redeemLocalCallback", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "router", "outputs": [ { "internalType": "contract Router", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_chainId", "type": "uint16" }, { "internalType": "uint256", "name": "_srcPoolId", "type": "uint256" }, { "internalType": "uint256", "name": "_dstPoolId", "type": "uint256" }, { "internalType": "address payable", "name": "_refundAddress", "type": "address" }, { "components": [ { "internalType": "uint256", "name": "credits", "type": "uint256" }, { "internalType": "uint256", "name": "idealBalance", "type": "uint256" } ], "internalType": "struct Pool.CreditObj", "name": "_c", "type": "tuple" } ], "name": "sendCredits", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_chainId", "type": "uint16" }, { "internalType": "bytes", "name": "_bridgeAddress", "type": "bytes" } ], "name": "setBridge", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_version", "type": "uint16" }, { "internalType": "uint16", "name": "_chainId", "type": "uint16" }, { "internalType": "uint256", "name": "_configType", "type": "uint256" }, { "internalType": "bytes", "name": "_config", "type": "bytes" } ], "name": "setConfig", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_chainId", "type": "uint16" }, { "internalType": "uint8", "name": "_functionType", "type": "uint8" }, { "internalType": "uint256", "name": "_gasAmount", "type": "uint256" } ], "name": "setGasAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "version", "type": "uint16" } ], "name": "setReceiveVersion", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "version", "type": "uint16" } ], "name": "setSendVersion", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "bool", "name": "enable", "type": "bool" }], "name": "setUseLayerZeroToken", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_chainId", "type": "uint16" }, { "internalType": "uint256", "name": "_srcPoolId", "type": "uint256" }, { "internalType": "uint256", "name": "_dstPoolId", "type": "uint256" }, { "internalType": "address payable", "name": "_refundAddress", "type": "address" }, { "components": [ { "internalType": "uint256", "name": "credits", "type": "uint256" }, { "internalType": "uint256", "name": "idealBalance", "type": "uint256" } ], "internalType": "struct Pool.CreditObj", "name": "_c", "type": "tuple" }, { "components": [ { "internalType": "uint256", "name": "amount", "type": "uint256" }, { "internalType": "uint256", "name": "eqFee", "type": "uint256" }, { "internalType": "uint256", "name": "eqReward", "type": "uint256" }, { "internalType": "uint256", "name": "lpFee", "type": "uint256" }, { "internalType": "uint256", "name": "protocolFee", "type": "uint256" }, { "internalType": "uint256", "name": "lkbRemove", "type": "uint256" } ], "internalType": "struct Pool.SwapObj", "name": "_s", "type": "tuple" }, { "components": [ { "internalType": "uint256", "name": "dstGasForCall", "type": "uint256" }, { "internalType": "uint256", "name": "dstNativeAmount", "type": "uint256" }, { "internalType": "bytes", "name": "dstNativeAddr", "type": "bytes" } ], "internalType": "struct IStargateRouter.lzTxObj", "name": "_lzTxParams", "type": "tuple" }, { "internalType": "bytes", "name": "_to", "type": "bytes" }, { "internalType": "bytes", "name": "_payload", "type": "bytes" } ], "name": "swap", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "useLayerZeroToken", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" } ] }