import PythInterfaceAbi from "@pythnetwork/pyth-sdk-solidity/abis/IPyth.json"; import EntropyAbi from "@pythnetwork/entropy-sdk-solidity/abis/IEntropy.json"; export const OWNABLE_ABI = [ { inputs: [], name: "acceptOwnership", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "pendingOwner", outputs: [ { internalType: "address", name: "", type: "address", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "version", outputs: [ { internalType: "string", name: "", type: "string", }, ], stateMutability: "pure", type: "function", }, { inputs: [ { internalType: "address", name: "newImplementation", type: "address", }, ], name: "upgradeTo", outputs: [], stateMutability: "nonpayable", type: "function", }, ] as any; // eslint-disable-line @typescript-eslint/no-explicit-any export const EXPRESS_RELAY_ABI = [ { type: "function", name: "getAdmin", inputs: [], outputs: [ { name: "", type: "address", internalType: "address", }, ], stateMutability: "view", }, { type: "function", name: "getFeeProtocol", inputs: [ { name: "feeRecipient", type: "address", internalType: "address", }, ], outputs: [ { name: "", type: "uint256", internalType: "uint256", }, ], stateMutability: "view", }, { type: "function", name: "getFeeProtocolDefault", inputs: [], outputs: [ { name: "", type: "uint256", internalType: "uint256", }, ], stateMutability: "view", }, { type: "function", name: "getFeeRelayer", inputs: [], outputs: [ { name: "", type: "uint256", internalType: "uint256", }, ], stateMutability: "view", }, { type: "function", name: "getFeeSplitPrecision", inputs: [], outputs: [ { name: "", type: "uint256", internalType: "uint256", }, ], stateMutability: "view", }, { type: "function", name: "getRelayer", inputs: [], outputs: [ { name: "", type: "address", internalType: "address", }, ], stateMutability: "view", }, { type: "function", name: "getRelayerSubwallets", inputs: [], outputs: [ { name: "", type: "address[]", internalType: "address[]", }, ], stateMutability: "view", }, { type: "function", name: "setFeeProtocol", inputs: [ { name: "feeRecipient", type: "address", internalType: "address", }, { name: "feeSplit", type: "uint256", internalType: "uint256", }, ], outputs: [], stateMutability: "nonpayable", }, { type: "function", name: "setFeeProtocolDefault", inputs: [ { name: "feeSplit", type: "uint256", internalType: "uint256", }, ], outputs: [], stateMutability: "nonpayable", }, { type: "function", name: "setFeeRelayer", inputs: [ { name: "feeSplit", type: "uint256", internalType: "uint256", }, ], outputs: [], stateMutability: "nonpayable", }, { type: "function", name: "setRelayer", inputs: [ { name: "relayer", type: "address", internalType: "address", }, ], outputs: [], stateMutability: "nonpayable", }, ...OWNABLE_ABI, ] as any; // eslint-disable-line @typescript-eslint/no-explicit-any export const EXTENDED_ENTROPY_ABI = [ { inputs: [], name: "acceptAdmin", outputs: [], stateMutability: "nonpayable", type: "function", }, ...OWNABLE_ABI, ...EntropyAbi, ] as any; // eslint-disable-line @typescript-eslint/no-explicit-any export const EXTENDED_PYTH_ABI = [ { inputs: [], name: "wormhole", outputs: [ { internalType: "contract IWormhole", name: "", type: "address", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "governanceDataSource", outputs: [ { components: [ { internalType: "uint16", name: "chainId", type: "uint16", }, { internalType: "bytes32", name: "emitterAddress", type: "bytes32", }, ], internalType: "struct PythInternalStructs.DataSource", name: "", type: "tuple", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "bytes", name: "encodedVM", type: "bytes", }, ], name: "executeGovernanceInstruction", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "version", outputs: [{ internalType: "string", name: "", type: "string" }], stateMutability: "pure", type: "function", }, { inputs: [], name: "singleUpdateFeeInWei", outputs: [ { internalType: "uint256", name: "", type: "uint256", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "validDataSources", outputs: [ { components: [ { internalType: "uint16", name: "chainId", type: "uint16", }, { internalType: "bytes32", name: "emitterAddress", type: "bytes32", }, ], internalType: "struct PythInternalStructs.DataSource[]", name: "", type: "tuple[]", }, ], stateMutability: "view", type: "function", constant: true, }, { inputs: [], name: "lastExecutedGovernanceSequence", outputs: [ { internalType: "uint64", name: "", type: "uint64", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "bytes32", name: "id", type: "bytes32", }, ], name: "priceFeedExists", outputs: [ { internalType: "bool", name: "", type: "bool", }, ], stateMutability: "view", type: "function", }, ...PythInterfaceAbi, ] as any; // eslint-disable-line @typescript-eslint/no-explicit-any export const WORMHOLE_ABI = [ { inputs: [], name: "getCurrentGuardianSetIndex", outputs: [ { internalType: "uint32", name: "", type: "uint32", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "chainId", outputs: [ { internalType: "uint16", name: "", type: "uint16", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "uint32", name: "index", type: "uint32", }, ], name: "getGuardianSet", outputs: [ { components: [ { internalType: "address[]", name: "keys", type: "address[]", }, { internalType: "uint32", name: "expirationTime", type: "uint32", }, ], internalType: "struct Structs.GuardianSet", name: "", type: "tuple", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "bytes", name: "_vm", type: "bytes", }, ], name: "submitNewGuardianSet", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "messageFee", outputs: [ { internalType: "uint256", name: "", type: "uint256", }, ], stateMutability: "view", type: "function", }, ] as any; // eslint-disable-line @typescript-eslint/no-explicit-any export const EXECUTOR_ABI = [ { inputs: [ { internalType: "bytes", name: "encodedVm", type: "bytes", }, ], name: "execute", outputs: [ { internalType: "bytes", name: "response", type: "bytes", }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "getOwnerChainId", outputs: [ { internalType: "uint64", name: "", type: "uint64", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "getOwnerEmitterAddress", outputs: [ { internalType: "bytes32", name: "", type: "bytes32", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "getLastExecutedSequence", outputs: [ { internalType: "uint64", name: "", type: "uint64", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "owner", outputs: [ { internalType: "address", name: "", type: "address", }, ], stateMutability: "view", type: "function", }, ] as any; // eslint-disable-line @typescript-eslint/no-explicit-any