@electra.finance/contracts
Version:
Electra Finance contracts typings
2,246 lines (2,245 loc) • 73.9 kB
JSON
[
{
"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": "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": "uint80",
"name": "filledPrice",
"type": "uint80"
},
{
"internalType": "uint96",
"name": "filledAmount",
"type": "uint96"
}
],
"name": "fillOrders",
"outputs": [],
"stateMutability": "nonpayable",
"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": "uint80",
"name": "filledPrice",
"type": "uint80"
},
{
"internalType": "uint96",
"name": "filledAmount",
"type": "uint96"
}
],
"name": "fillOrdersV2",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "orderHash",
"type": "bytes32"
}
],
"name": "filledAmounts",
"outputs": [
{
"internalType": "uint96",
"name": "",
"type": "uint96"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "fundingRateAccount",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "uint256",
"name": "index",
"type": "uint256"
}
],
"name": "getAccountFR",
"outputs": [
{
"internalType": "int112",
"name": "fundingRate",
"type": "int112"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "offset",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "limit",
"type": "uint256"
}
],
"name": "getAccountsWithOpenPositions",
"outputs": [
{
"internalType": "address[]",
"name": "",
"type": "address[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "getActiveInstrumentsIndexes",
"outputs": [
{
"internalType": "uint256[]",
"name": "",
"type": "uint256[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "getActiveInstrumentsPositions",
"outputs": [
{
"internalType": "uint256[]",
"name": "indexes",
"type": "uint256[]"
},
{
"components": [
{
"internalType": "int112",
"name": "position",
"type": "int112"
},
{
"internalType": "int112",
"name": "frAccumulated",
"type": "int112"
},
{
"internalType": "uint32",
"name": "positionLastUpdate",
"type": "uint32"
},
{
"internalType": "uint80",
"name": "positionAvgPrice",
"type": "uint80"
},
{
"internalType": "int72",
"name": "positionLongFRStored",
"type": "int72"
},
{
"internalType": "int72",
"name": "positionShortFRStored",
"type": "int72"
}
],
"internalType": "struct CFDStructs.PositionInfo[]",
"name": "positions",
"type": "tuple[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "index",
"type": "uint256"
}
],
"name": "getAssetPrice",
"outputs": [
{
"internalType": "int112",
"name": "price",
"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": "delegationRequest",
"type": "tuple"
}
],
"name": "getDelegationRequestTypeValueHash",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "derivedAccount",
"type": "address"
}
],
"name": "getDerivedAccountBinding",
"outputs": [
{
"internalType": "bytes",
"name": "externalAddress",
"type": "bytes"
},
{
"internalType": "uint64",
"name": "bindingTimestamp",
"type": "uint64"
},
{
"internalType": "uint64",
"name": "derivedAccountSalt",
"type": "uint64"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "chainId_",
"type": "uint256"
}
],
"name": "getDomainSeparatorForChainId",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getEIP712DomainData",
"outputs": [
{
"internalType": "string",
"name": "name",
"type": "string"
},
{
"internalType": "string",
"name": "version",
"type": "string"
},
{
"internalType": "uint256",
"name": "chainId",
"type": "uint256"
},
{
"internalType": "bytes32",
"name": "salt",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes",
"name": "externalAddress",
"type": "bytes"
}
],
"name": "getExternalAccountBinding",
"outputs": [
{
"internalType": "address",
"name": "derivedAccount",
"type": "address"
},
{
"internalType": "uint64",
"name": "bindingTimestamp",
"type": "uint64"
},
{