UNPKG

@layerzerolabs/hyperliquid-composer

Version:

LayerZero Labs reference EVM OmniChain Fungible Token (OFT) implementation for Hyperliquid

1 lines 13.6 kB
{"abi":[{"type":"function","name":"delegations","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple[]","internalType":"struct IHyperLiquidReadPrecompile.Delegation[]","components":[{"name":"validator","type":"address","internalType":"address"},{"name":"amount","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"delegatorSummary","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IHyperLiquidReadPrecompile.DelegatorSummary","components":[{"name":"delegated","type":"uint64","internalType":"uint64"},{"name":"undelegated","type":"uint64","internalType":"uint64"},{"name":"totalPendingWithdrawal","type":"uint64","internalType":"uint64"},{"name":"nPendingWithdrawals","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"l1BlockNumber","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"markPx","inputs":[{"name":"index","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"oraclePx","inputs":[{"name":"index","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"position","inputs":[{"name":"user","type":"address","internalType":"address"},{"name":"perp","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IHyperLiquidReadPrecompile.Position","components":[{"name":"szi","type":"int64","internalType":"int64"},{"name":"leverage","type":"uint32","internalType":"uint32"},{"name":"entryNtl","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"spotBalance","inputs":[{"name":"user","type":"address","internalType":"address"},{"name":"token","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IHyperLiquidReadPrecompile.SpotBalance","components":[{"name":"total","type":"uint64","internalType":"uint64"},{"name":"hold","type":"uint64","internalType":"uint64"},{"name":"entryNtl","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"spotPx","inputs":[{"name":"index","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"userVaultEquity","inputs":[{"name":"user","type":"address","internalType":"address"},{"name":"vault","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IHyperLiquidReadPrecompile.UserVaultEquity","components":[{"name":"equity","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"withdrawable","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IHyperLiquidReadPrecompile.Withdrawable","components":[{"name":"withdrawable","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"delegations(address)":"bffe3486","delegatorSummary(address)":"37f980a5","l1BlockNumber()":"298c9005","markPx(uint16)":"3e37cfff","oraclePx(uint16)":"29ebb2ba","position(address,uint16)":"89cf7c89","spotBalance(address,uint64)":"a69610d1","spotPx(uint32)":"90702759","userVaultEquity(address,address)":"ee1b5af1","withdrawable(address)":"ce513b6f"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.22+commit.4fc1097e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"delegations\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"validator\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"amount\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"lockedUntilTimestamp\",\"type\":\"uint64\"}],\"internalType\":\"struct IHyperLiquidReadPrecompile.Delegation[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"delegatorSummary\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"delegated\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"undelegated\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"totalPendingWithdrawal\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"nPendingWithdrawals\",\"type\":\"uint64\"}],\"internalType\":\"struct IHyperLiquidReadPrecompile.DelegatorSummary\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1BlockNumber\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint16\",\"name\":\"index\",\"type\":\"uint16\"}],\"name\":\"markPx\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint16\",\"name\":\"index\",\"type\":\"uint16\"}],\"name\":\"oraclePx\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"internalType\":\"uint16\",\"name\":\"perp\",\"type\":\"uint16\"}],\"name\":\"position\",\"outputs\":[{\"components\":[{\"internalType\":\"int64\",\"name\":\"szi\",\"type\":\"int64\"},{\"internalType\":\"uint32\",\"name\":\"leverage\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"entryNtl\",\"type\":\"uint64\"}],\"internalType\":\"struct IHyperLiquidReadPrecompile.Position\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"token\",\"type\":\"uint64\"}],\"name\":\"spotBalance\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"total\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"hold\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"entryNtl\",\"type\":\"uint64\"}],\"internalType\":\"struct IHyperLiquidReadPrecompile.SpotBalance\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"name\":\"spotPx\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"vault\",\"type\":\"address\"}],\"name\":\"userVaultEquity\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"equity\",\"type\":\"uint64\"}],\"internalType\":\"struct IHyperLiquidReadPrecompile.UserVaultEquity\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"withdrawable\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"withdrawable\",\"type\":\"uint64\"}],\"internalType\":\"struct IHyperLiquidReadPrecompile.Withdrawable\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/interfaces/IHyperLiquidReadPrecompile.sol\":\"IHyperLiquidReadPrecompile\"},\"evmVersion\":\"shanghai\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":20000},\"remappings\":[\":@layerzerolabs/=node_modules/@layerzerolabs/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":ds-test/=node_modules/@layerzerolabs/toolbox-foundry/lib/ds-test/\",\":forge-std/=node_modules/@layerzerolabs/toolbox-foundry/lib/forge-std/\",\":hardhat/=node_modules/hardhat/\",\":solidity-bytes-utils/contracts/=node_modules/@layerzerolabs/toolbox-foundry/lib/solidity-bytes-utils/\"]},\"sources\":{\"contracts/interfaces/IHyperLiquidReadPrecompile.sol\":{\"keccak256\":\"0x3a6df8d89dca4f7547bbdc912c92315020f88b50c648c55f04fcb3ecb47d9ae0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://836bc90fe0705ca588329e218253e375bc76752d762b76e31c5f568be1b9409f\",\"dweb:/ipfs/QmYMRCYqsKho9fHZcC8f4JBPSxx9p6a4zLL7nX8CDoZsXc\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.22+commit.4fc1097e"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"user","type":"address"}],"stateMutability":"view","type":"function","name":"delegations","outputs":[{"internalType":"struct IHyperLiquidReadPrecompile.Delegation[]","name":"","type":"tuple[]","components":[{"internalType":"address","name":"validator","type":"address"},{"internalType":"uint64","name":"amount","type":"uint64"},{"internalType":"uint64","name":"lockedUntilTimestamp","type":"uint64"}]}]},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"stateMutability":"view","type":"function","name":"delegatorSummary","outputs":[{"internalType":"struct IHyperLiquidReadPrecompile.DelegatorSummary","name":"","type":"tuple","components":[{"internalType":"uint64","name":"delegated","type":"uint64"},{"internalType":"uint64","name":"undelegated","type":"uint64"},{"internalType":"uint64","name":"totalPendingWithdrawal","type":"uint64"},{"internalType":"uint64","name":"nPendingWithdrawals","type":"uint64"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"l1BlockNumber","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"uint16","name":"index","type":"uint16"}],"stateMutability":"view","type":"function","name":"markPx","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"uint16","name":"index","type":"uint16"}],"stateMutability":"view","type":"function","name":"oraclePx","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint16","name":"perp","type":"uint16"}],"stateMutability":"view","type":"function","name":"position","outputs":[{"internalType":"struct IHyperLiquidReadPrecompile.Position","name":"","type":"tuple","components":[{"internalType":"int64","name":"szi","type":"int64"},{"internalType":"uint32","name":"leverage","type":"uint32"},{"internalType":"uint64","name":"entryNtl","type":"uint64"}]}]},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint64","name":"token","type":"uint64"}],"stateMutability":"view","type":"function","name":"spotBalance","outputs":[{"internalType":"struct IHyperLiquidReadPrecompile.SpotBalance","name":"","type":"tuple","components":[{"internalType":"uint64","name":"total","type":"uint64"},{"internalType":"uint64","name":"hold","type":"uint64"},{"internalType":"uint64","name":"entryNtl","type":"uint64"}]}]},{"inputs":[{"internalType":"uint32","name":"index","type":"uint32"}],"stateMutability":"view","type":"function","name":"spotPx","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"vault","type":"address"}],"stateMutability":"view","type":"function","name":"userVaultEquity","outputs":[{"internalType":"struct IHyperLiquidReadPrecompile.UserVaultEquity","name":"","type":"tuple","components":[{"internalType":"uint64","name":"equity","type":"uint64"}]}]},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"stateMutability":"view","type":"function","name":"withdrawable","outputs":[{"internalType":"struct IHyperLiquidReadPrecompile.Withdrawable","name":"","type":"tuple","components":[{"internalType":"uint64","name":"withdrawable","type":"uint64"}]}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@layerzerolabs/=node_modules/@layerzerolabs/","@openzeppelin/=node_modules/@openzeppelin/","ds-test/=node_modules/@layerzerolabs/toolbox-foundry/lib/ds-test/","forge-std/=node_modules/@layerzerolabs/toolbox-foundry/lib/forge-std/","hardhat/=node_modules/hardhat/","solidity-bytes-utils/contracts/=node_modules/@layerzerolabs/toolbox-foundry/lib/solidity-bytes-utils/"],"optimizer":{"enabled":true,"runs":20000},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"contracts/interfaces/IHyperLiquidReadPrecompile.sol":"IHyperLiquidReadPrecompile"},"evmVersion":"shanghai","libraries":{}},"sources":{"contracts/interfaces/IHyperLiquidReadPrecompile.sol":{"keccak256":"0x3a6df8d89dca4f7547bbdc912c92315020f88b50c648c55f04fcb3ecb47d9ae0","urls":["bzz-raw://836bc90fe0705ca588329e218253e375bc76752d762b76e31c5f568be1b9409f","dweb:/ipfs/QmYMRCYqsKho9fHZcC8f4JBPSxx9p6a4zLL7nX8CDoZsXc"],"license":"MIT"}},"version":1},"id":6}