UNPKG

@electra.finance/contracts

Version:
1,686 lines 98.6 kB
/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import { Contract, utils } from "ethers"; const _abi = [ { inputs: [], name: "DELEGATION_REQUEST_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "DOMAIN_NAME", outputs: [ { internalType: "string", name: "", type: "string", }, ], stateMutability: "pure", type: "function", }, { inputs: [], name: "DOMAIN_SALT", outputs: [ { internalType: "bytes32", name: "", type: "bytes32", }, ], stateMutability: "pure", type: "function", }, { inputs: [], name: "DOMAIN_SEPARATOR", outputs: [ { internalType: "bytes32", name: "", type: "bytes32", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "DOMAIN_VERSION", outputs: [ { internalType: "string", name: "", type: "string", }, ], stateMutability: "pure", type: "function", }, { inputs: [], name: "EIP712_DOMAIN_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32", }, ], stateMutability: "pure", type: "function", }, { inputs: [], name: "INTERNAL_TRANSFER_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32", }, ], stateMutability: "pure", type: "function", }, { inputs: [], name: "LIQUIDATION_ORDER_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32", }, ], stateMutability: "pure", type: "function", }, { inputs: [], name: "MULTI_LIQUIDATION_ORDER_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32", }, ], stateMutability: "pure", type: "function", }, { inputs: [], name: "ORDER_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32", }, ], stateMutability: "pure", type: "function", }, { inputs: [], name: "PRICE_INFO_TYPEHASH", outputs: [ { internalType: "bytes32", name: "", type: "bytes32", }, ], stateMutability: "pure", type: "function", }, { inputs: [], name: "accountsWithOpenPositionLength", outputs: [ { internalType: "uint256", name: "", type: "uint256", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "string[12]", name: "ticker", type: "string[12]", }, { internalType: "uint8", name: "leverage", type: "uint8", }, { internalType: "int256", name: "dailyFRLong", type: "int256", }, { internalType: "int256", name: "dailyFRShort", type: "int256", }, ], name: "addInstrument", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "matcher", type: "address", }, ], name: "allowedMatchers", outputs: [ { internalType: "bool", name: "", type: "bool", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "uint64", name: "chainId", type: "uint64", }, ], name: "approveCustomNetwork", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "account", type: "address", }, ], name: "balances", outputs: [ { internalType: "int112", name: "", type: "int112", }, ], stateMutability: "view", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "derivedAccount", type: "address", }, { internalType: "uint64", name: "derivedAccountSalt", type: "uint64", }, { internalType: "uint64", name: "nonce", type: "uint64", }, { internalType: "uint64", name: "chainId", type: "uint64", }, { internalType: "uint64", name: "signerChainId", type: "uint64", }, { internalType: "bytes", name: "externalAddress", type: "bytes", }, { internalType: "bytes", name: "derivedAccountSignature", type: "bytes", }, ], internalType: "struct CFDStructs.ExternalAddressBinding", name: "binding", type: "tuple", }, ], name: "bindExternalAccount", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "derivedAccount", type: "address", }, { internalType: "uint64", name: "derivedAccountSalt", type: "uint64", }, { internalType: "uint64", name: "nonce", type: "uint64", }, { internalType: "uint64", name: "chainId", type: "uint64", }, { internalType: "uint64", name: "signerChainId", type: "uint64", }, { internalType: "bytes", name: "externalAddress", type: "bytes", }, { internalType: "bytes", name: "derivedAccountSignature", type: "bytes", }, ], internalType: "struct CFDStructs.ExternalAddressBinding", name: "binding", type: "tuple", }, { components: [ { internalType: "address", name: "from", type: "address", }, { internalType: "address", name: "to", type: "address", }, { internalType: "uint112", name: "amount", type: "uint112", }, { internalType: "uint64", name: "expiration", type: "uint64", }, { internalType: "uint64", name: "nonce", type: "uint64", }, { internalType: "uint64", name: "chainId", type: "uint64", }, { internalType: "uint64", name: "signerChainId", type: "uint64", }, { internalType: "bytes32", name: "uniqueHash", type: "bytes32", }, { internalType: "bytes", name: "externalAddress", type: "bytes", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], internalType: "struct CFDStructs.InternalTransferV2", name: "initialDeposit", type: "tuple", }, ], name: "bindExternalAccountWithDeposit", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "account", type: "address", }, { components: [ { internalType: "uint16", name: "index", type: "uint16", }, { internalType: "uint80", name: "price", type: "uint80", }, ], internalType: "struct CFDStructs.PriceInfo[]", name: "prices", type: "tuple[]", }, { internalType: "bool", name: "checkPrices", type: "bool", }, ], name: "calculateMarginLevel", outputs: [ { internalType: "int112", name: "marginLevel", type: "int112", }, { internalType: "int112", name: "equity", type: "int112", }, { internalType: "int112", name: "margin", type: "int112", }, { internalType: "int112[]", name: "pnls", type: "int112[]", }, { internalType: "int112[]", name: "frs", type: "int112[]", }, ], stateMutability: "view", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "trader", type: "address", }, { internalType: "bool", name: "isSetDelegate", type: "bool", }, { internalType: "uint88", name: "deadline", type: "uint88", }, { internalType: "address", name: "delegate", type: "address", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], internalType: "struct CFDStructs.DelegationRequest", name: "request", type: "tuple", }, ], name: "changeDelegateFrom", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "trader", type: "address", }, { internalType: "bool", name: "isSetDelegate", type: "bool", }, { internalType: "uint88", name: "deadline", type: "uint88", }, { internalType: "address", name: "delegate", type: "address", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], internalType: "struct CFDStructs.DelegationRequest", name: "request", type: "tuple", }, { internalType: "uint64", name: "chainId", type: "uint64", }, ], name: "changeDelegateWithChainId", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "uint256", name: "index", type: "uint256", }, { internalType: "string[12]", name: "ticker", type: "string[12]", }, { internalType: "uint8", name: "leverage", type: "uint8", }, { internalType: "int256", name: "dailyFRLong", type: "int256", }, { internalType: "int256", name: "dailyFRShort", type: "int256", }, ], name: "changeInstrument", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "derivedAccount", type: "address", }, { internalType: "uint64", name: "derivedAccountSalt", type: "uint64", }, { internalType: "uint64", name: "nonce", type: "uint64", }, { internalType: "uint64", name: "chainId", type: "uint64", }, { internalType: "uint64", name: "signerChainId", type: "uint64", }, { internalType: "bytes", name: "externalAddress", type: "bytes", }, { internalType: "bytes", name: "derivedAccountSignature", type: "bytes", }, ], internalType: "struct CFDStructs.ExternalAddressBinding", name: "binding", type: "tuple", }, ], name: "checkAddressBindingSignature", outputs: [ { internalType: "bytes32", name: "digest", type: "bytes32", }, ], stateMutability: "view", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "trader", type: "address", }, { internalType: "bool", name: "isSetDelegate", type: "bool", }, { internalType: "uint88", name: "deadline", type: "uint88", }, { internalType: "address", name: "delegate", type: "address", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], internalType: "struct CFDStructs.DelegationRequest", name: "delegationRequest", type: "tuple", }, ], name: "checkDelegationRequest", outputs: [ { internalType: "bytes32", name: "delegationRequestDigest", type: "bytes32", }, ], stateMutability: "view", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "trader", type: "address", }, { internalType: "bool", name: "isSetDelegate", type: "bool", }, { internalType: "uint88", name: "deadline", type: "uint88", }, { internalType: "address", name: "delegate", type: "address", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], internalType: "struct CFDStructs.DelegationRequest", name: "delegationRequest", type: "tuple", }, { internalType: "uint64", name: "chainId", type: "uint64", }, ], name: "checkDelegationRequestWithChainId", outputs: [ { internalType: "bytes32", name: "delegationRequestDigest", type: "bytes32", }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "from", type: "address", }, { internalType: "address", name: "to", type: "address", }, { internalType: "uint112", name: "amount", type: "uint112", }, { internalType: "uint64", name: "expiration", type: "uint64", }, { internalType: "uint64", name: "nonce", type: "uint64", }, { internalType: "uint64", name: "chainId", type: "uint64", }, { internalType: "uint192", name: "reserved", type: "uint192", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], internalType: "struct CFDStructs.InternalTransfer", name: "internalTransfer", type: "tuple", }, ], name: "checkInternalTransfer", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "from", type: "address", }, { internalType: "address", name: "to", type: "address", }, { internalType: "uint112", name: "amount", type: "uint112", }, { internalType: "uint64", name: "expiration", type: "uint64", }, { internalType: "uint64", name: "nonce", type: "uint64", }, { internalType: "uint64", name: "chainId", type: "uint64", }, { internalType: "uint64", name: "signerChainId", type: "uint64", }, { internalType: "bytes32", name: "uniqueHash", type: "bytes32", }, { internalType: "bytes", name: "externalAddress", type: "bytes", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], internalType: "struct CFDStructs.InternalTransferV2", name: "internalTransfer", type: "tuple", }, ], name: "checkInternalTransferV2", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "accountToLiquidate", type: "address", }, { internalType: "address", name: "liquidator", type: "address", }, { components: [ { internalType: "uint16", name: "index", type: "uint16", }, { internalType: "uint80", name: "price", type: "uint80", }, ], internalType: "struct CFDStructs.PriceInfo[]", name: "liquidationPrices", type: "tuple[]", }, { components: [ { internalType: "uint16", name: "index", type: "uint16", }, { internalType: "uint80", name: "price", type: "uint80", }, ], internalType: "struct CFDStructs.PriceInfo[]", name: "prices", type: "tuple[]", }, { internalType: "uint64", name: "liquidationTimestamp", type: "uint64", }, { internalType: "uint64", name: "expiration", type: "uint64", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], internalType: "struct CFDStructs.MultiLiquidationOrder", name: "liquidationOrder", type: "tuple", }, ], name: "checkLiquidationOrder", outputs: [], stateMutability: "view", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "accountToLiquidate", type: "address", }, { internalType: "address", name: "liquidator", type: "address", }, { internalType: "uint16", name: "index", type: "uint16", }, { components: [ { internalType: "uint16", name: "index", type: "uint16", }, { internalType: "uint80", name: "price", type: "uint80", }, ], internalType: "struct CFDStructs.PriceInfo[]", name: "prices", type: "tuple[]", }, { internalType: "uint64", name: "liquidationTimestamp", type: "uint64", }, { internalType: "uint64", name: "expiration", type: "uint64", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], internalType: "struct CFDStructs.LiquidationOrder", name: "liquidationOrder", type: "tuple", }, ], name: "checkLiquidationOrder", outputs: [], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "account", type: "address", }, { internalType: "int112", name: "marginLevel", type: "int112", }, ], name: "checkMarginWithOraclePrices", outputs: [ { internalType: "bool", name: "", type: "bool", }, { internalType: "int112", name: "", type: "int112", }, ], stateMutability: "view", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "senderAddress", type: "address", }, { internalType: "address", name: "matcherAddress", type: "address", }, { internalType: "uint16", name: "instrumentIndex", type: "uint16", }, { internalType: "uint96", name: "amount", type: "uint96", }, { internalType: "uint80", name: "price", type: "uint80", }, { internalType: "uint64", name: "matcherFee", type: "uint64", }, { internalType: "uint64", name: "expiration", type: "uint64", }, { internalType: "uint8", name: "buySide", type: "uint8", }, { internalType: "bool", name: "isFromDelegate", type: "bool", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], internalType: "struct CFDStructs.Order", name: "buyOrder", type: "tuple", }, { components: [ { internalType: "address", name: "senderAddress", type: "address", }, { internalType: "address", name: "matcherAddress", type: "address", }, { internalType: "uint16", name: "instrumentIndex", type: "uint16", }, { internalType: "uint96", name: "amount", type: "uint96", }, { internalType: "uint80", name: "price", type: "uint80", }, { internalType: "uint64", name: "matcherFee", type: "uint64", }, { internalType: "uint64", name: "expiration", type: "uint64", }, { internalType: "uint8", name: "buySide", type: "uint8", }, { internalType: "bool", name: "isFromDelegate", type: "bool", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], internalType: "struct CFDStructs.Order", name: "sellOrder", type: "tuple", }, { internalType: "address", name: "buyOrderSigner", type: "address", }, { internalType: "address", name: "sellOrderSigner", type: "address", }, { internalType: "address", name: "sender", type: "address", }, { internalType: "uint256", name: "filledAmount", type: "uint256", }, { internalType: "uint256", name: "filledPrice", type: "uint256", }, { internalType: "uint256", name: "currentTime", type: "uint256", }, { internalType: "address", name: "allowedMatcher", type: "address", }, { internalType: "uint256", name: "instrumentsLength", type: "uint256", }, ], name: "checkOrdersInfo", outputs: [ { internalType: "bytes32", name: "buyOrderDigest", type: "bytes32", }, { internalType: "bytes32", name: "sellOrderDigest", type: "bytes32", }, ], stateMutability: "view", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "senderAddress", type: "address", }, { internalType: "uint80", name: "price", type: "uint80", }, { internalType: "uint16", name: "instrumentIndex", type: "uint16", }, { internalType: "address", name: "matcherAddress", type: "address", }, { internalType: "uint80", name: "price2", type: "uint80", }, { internalType: "bool", name: "isFromDelegate", type: "bool", }, { internalType: "uint8", name: "buySide", type: "uint8", }, { internalType: "uint96", name: "amount", type: "uint96", }, { internalType: "uint64", name: "matcherFee", type: "uint64", }, { internalType: "uint64", name: "expiration", type: "uint64", }, { internalType: "uint8", name: "orderType", type: "uint8", }, { internalType: "uint64", name: "signerChainId", type: "uint64", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], internalType: "struct CFDStructs.OrderV2", name: "buyOrder", type: "tuple", }, { components: [ { internalType: "address", name: "senderAddress", type: "address", }, { internalType: "uint80", name: "price", type: "uint80", }, { internalType: "uint16", name: "instrumentIndex", type: "uint16", }, { internalType: "address", name: "matcherAddress", type: "address", }, { internalType: "uint80", name: "price2", type: "uint80", }, { internalType: "bool", name: "isFromDelegate", type: "bool", }, { internalType: "uint8", name: "buySide", type: "uint8", }, { internalType: "uint96", name: "amount", type: "uint96", }, { internalType: "uint64", name: "matcherFee", type: "uint64", }, { internalType: "uint64", name: "expiration", type: "uint64", }, { internalType: "uint8", name: "orderType", type: "uint8", }, { internalType: "uint64", name: "signerChainId", type: "uint64", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], internalType: "struct CFDStructs.OrderV2", name: "sellOrder", type: "tuple", }, { internalType: "address", name: "buyOrderSigner", type: "address", }, { internalType: "address", name: "sellOrderSigner", type: "address", }, { internalType: "address", name: "sender", type: "address", }, { internalType: "uint256", name: "filledAmount", type: "uint256", }, { internalType: "uint256", name: "filledPrice", type: "uint256", }, { internalType: "uint256", name: "currentTime", type: "uint256", }, { internalType: "address", name: "allowedMatcher", type: "address", }, { internalType: "uint256", name: "instrumentsLength", type: "uint256", }, ], name: "checkOrdersV2Info", outputs: [ { internalType: "bytes32", name: "buyOrderDigest", type: "bytes32", }, { internalType: "bytes32", name: "sellOrderDigest", type: "bytes32", }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "collateral", outputs: [ { internalType: "address", name: "", type: "address", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "account", type: "address", }, ], name: "customStopOutLevel", outputs: [ { internalType: "int112", name: "", type: "int112", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "trader", type: "address", }, ], name: "delegateFromTimeout", outputs: [ { internalType: "uint88", name: "timeLeft", type: "uint88", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "trader", type: "address", }, { internalType: "bytes", name: "call_data", type: "bytes", }, ], name: "delegatedAction", outputs: [ { internalType: "bytes", name: "", type: "bytes", }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "trader", type: "address", }, ], name: "delegations", outputs: [ { internalType: "address", name: "", type: "address", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "deleteInstrument", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "uint112", name: "amount", type: "uint112", }, ], name: "depositAsset", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "uint112", name: "amount", type: "uint112", }, { internalType: "address", name: "to", type: "address", }, ], name: "depositAssetTo", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "facetAddress", type: "address", }, { internalType: "enum IDiamondCut.FacetCutAction", name: "action", type: "uint8", }, { internalType: "bytes4[]", name: "functionSelectors", type: "bytes4[]", }, ], internalType: "struct IDiamondCut.FacetCut[]", name: "diamondCut_", type: "tuple[]", }, { internalType: "address", name: "init_", type: "address", }, { internalType: "bytes", name: "calldata_", type: "bytes", }, ], name: "diamondCut", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "bytes4", name: "_functionSelector", type: "bytes4", }, ], name: "facetAddress", outputs: [ { internalType: "address", name: "facetAddress_", type: "address", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "facetAddresses", outputs: [ { internalType: "address[]", name: "facetAddresses_", type: "address[]", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "_facet", type: "address", }, ], name: "facetFunctionSelectors", outputs: [ { internalType: "bytes4[]", name: "facetFunctionSelectors_", type: "bytes4[]", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "facets", outputs: [ { components: [ { internalType: "address", name: "facetAddress", type: "address", }, { internalType: "bytes4[]", name: "functionSelectors", type: "bytes4[]", }, ], internalType: "struct IDiamondLoupe.Facet[]", name: "facets_", type: "tuple[]", }, ], stateMutability: "view", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "senderAddress", type: "address", }, { internalType: "address", name: "matcherAddress", type: "address", }, { internalType: "uint16", name: "instrumentIndex", type: "uint16", }, { internalType: "uint96", name: "amount", type: "uint96", }, { internalType: "uint80", name: "price", type: "uint80", }, { internalType: "uint64", name: "matcherFee", type: "uint64", }, { internalType: "uint64", name: "expiration", type: "uint64", }, { internalType: "uint8", name: "buySide", type: "uint8", }, { internalType: "bool", name: "isFromDelegate", type: "b