@electra.finance/contracts
Version:
Electra Finance contracts typings
826 lines • 114 kB
TypeScript
import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers";
import type { FunctionFragment, Result } from "@ethersproject/abi";
import type { Listener, Provider } from "@ethersproject/providers";
import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "./common";
export declare namespace CFDStructs {
type ExternalAddressBindingStruct = {
derivedAccount: PromiseOrValue<string>;
derivedAccountSalt: PromiseOrValue<BigNumberish>;
nonce: PromiseOrValue<BigNumberish>;
chainId: PromiseOrValue<BigNumberish>;
signerChainId: PromiseOrValue<BigNumberish>;
externalAddress: PromiseOrValue<BytesLike>;
derivedAccountSignature: PromiseOrValue<BytesLike>;
};
type ExternalAddressBindingStructOutput = [
string,
BigNumber,
BigNumber,
BigNumber,
BigNumber,
string,
string
] & {
derivedAccount: string;
derivedAccountSalt: BigNumber;
nonce: BigNumber;
chainId: BigNumber;
signerChainId: BigNumber;
externalAddress: string;
derivedAccountSignature: string;
};
type InternalTransferV2Struct = {
from: PromiseOrValue<string>;
to: PromiseOrValue<string>;
amount: PromiseOrValue<BigNumberish>;
expiration: PromiseOrValue<BigNumberish>;
nonce: PromiseOrValue<BigNumberish>;
chainId: PromiseOrValue<BigNumberish>;
signerChainId: PromiseOrValue<BigNumberish>;
uniqueHash: PromiseOrValue<BytesLike>;
externalAddress: PromiseOrValue<BytesLike>;
signature: PromiseOrValue<BytesLike>;
};
type InternalTransferV2StructOutput = [
string,
string,
BigNumber,
BigNumber,
BigNumber,
BigNumber,
BigNumber,
string,
string,
string
] & {
from: string;
to: string;
amount: BigNumber;
expiration: BigNumber;
nonce: BigNumber;
chainId: BigNumber;
signerChainId: BigNumber;
uniqueHash: string;
externalAddress: string;
signature: string;
};
type PriceInfoStruct = {
index: PromiseOrValue<BigNumberish>;
price: PromiseOrValue<BigNumberish>;
};
type PriceInfoStructOutput = [number, BigNumber] & {
index: number;
price: BigNumber;
};
type DelegationRequestStruct = {
trader: PromiseOrValue<string>;
isSetDelegate: PromiseOrValue<boolean>;
deadline: PromiseOrValue<BigNumberish>;
delegate: PromiseOrValue<string>;
signature: PromiseOrValue<BytesLike>;
};
type DelegationRequestStructOutput = [
string,
boolean,
BigNumber,
string,
string
] & {
trader: string;
isSetDelegate: boolean;
deadline: BigNumber;
delegate: string;
signature: string;
};
type InternalTransferStruct = {
from: PromiseOrValue<string>;
to: PromiseOrValue<string>;
amount: PromiseOrValue<BigNumberish>;
expiration: PromiseOrValue<BigNumberish>;
nonce: PromiseOrValue<BigNumberish>;
chainId: PromiseOrValue<BigNumberish>;
reserved: PromiseOrValue<BigNumberish>;
signature: PromiseOrValue<BytesLike>;
};
type InternalTransferStructOutput = [
string,
string,
BigNumber,
BigNumber,
BigNumber,
BigNumber,
BigNumber,
string
] & {
from: string;
to: string;
amount: BigNumber;
expiration: BigNumber;
nonce: BigNumber;
chainId: BigNumber;
reserved: BigNumber;
signature: string;
};
type MultiLiquidationOrderStruct = {
accountToLiquidate: PromiseOrValue<string>;
liquidator: PromiseOrValue<string>;
liquidationPrices: CFDStructs.PriceInfoStruct[];
prices: CFDStructs.PriceInfoStruct[];
liquidationTimestamp: PromiseOrValue<BigNumberish>;
expiration: PromiseOrValue<BigNumberish>;
signature: PromiseOrValue<BytesLike>;
};
type MultiLiquidationOrderStructOutput = [
string,
string,
CFDStructs.PriceInfoStructOutput[],
CFDStructs.PriceInfoStructOutput[],
BigNumber,
BigNumber,
string
] & {
accountToLiquidate: string;
liquidator: string;
liquidationPrices: CFDStructs.PriceInfoStructOutput[];
prices: CFDStructs.PriceInfoStructOutput[];
liquidationTimestamp: BigNumber;
expiration: BigNumber;
signature: string;
};
type LiquidationOrderStruct = {
accountToLiquidate: PromiseOrValue<string>;
liquidator: PromiseOrValue<string>;
index: PromiseOrValue<BigNumberish>;
prices: CFDStructs.PriceInfoStruct[];
liquidationTimestamp: PromiseOrValue<BigNumberish>;
expiration: PromiseOrValue<BigNumberish>;
signature: PromiseOrValue<BytesLike>;
};
type LiquidationOrderStructOutput = [
string,
string,
number,
CFDStructs.PriceInfoStructOutput[],
BigNumber,
BigNumber,
string
] & {
accountToLiquidate: string;
liquidator: string;
index: number;
prices: CFDStructs.PriceInfoStructOutput[];
liquidationTimestamp: BigNumber;
expiration: BigNumber;
signature: string;
};
type OrderStruct = {
senderAddress: PromiseOrValue<string>;
matcherAddress: PromiseOrValue<string>;
instrumentIndex: PromiseOrValue<BigNumberish>;
amount: PromiseOrValue<BigNumberish>;
price: PromiseOrValue<BigNumberish>;
matcherFee: PromiseOrValue<BigNumberish>;
expiration: PromiseOrValue<BigNumberish>;
buySide: PromiseOrValue<BigNumberish>;
isFromDelegate: PromiseOrValue<boolean>;
signature: PromiseOrValue<BytesLike>;
};
type OrderStructOutput = [
string,
string,
number,
BigNumber,
BigNumber,
BigNumber,
BigNumber,
number,
boolean,
string
] & {
senderAddress: string;
matcherAddress: string;
instrumentIndex: number;
amount: BigNumber;
price: BigNumber;
matcherFee: BigNumber;
expiration: BigNumber;
buySide: number;
isFromDelegate: boolean;
signature: string;
};
type OrderV2Struct = {
senderAddress: PromiseOrValue<string>;
price: PromiseOrValue<BigNumberish>;
instrumentIndex: PromiseOrValue<BigNumberish>;
matcherAddress: PromiseOrValue<string>;
price2: PromiseOrValue<BigNumberish>;
isFromDelegate: PromiseOrValue<boolean>;
buySide: PromiseOrValue<BigNumberish>;
amount: PromiseOrValue<BigNumberish>;
matcherFee: PromiseOrValue<BigNumberish>;
expiration: PromiseOrValue<BigNumberish>;
orderType: PromiseOrValue<BigNumberish>;
signerChainId: PromiseOrValue<BigNumberish>;
signature: PromiseOrValue<BytesLike>;
};
type OrderV2StructOutput = [
string,
BigNumber,
number,
string,
BigNumber,
boolean,
number,
BigNumber,
BigNumber,
BigNumber,
number,
BigNumber,
string
] & {
senderAddress: string;
price: BigNumber;
instrumentIndex: number;
matcherAddress: string;
price2: BigNumber;
isFromDelegate: boolean;
buySide: number;
amount: BigNumber;
matcherFee: BigNumber;
expiration: BigNumber;
orderType: number;
signerChainId: BigNumber;
signature: string;
};
type PositionInfoStruct = {
position: PromiseOrValue<BigNumberish>;
frAccumulated: PromiseOrValue<BigNumberish>;
positionLastUpdate: PromiseOrValue<BigNumberish>;
positionAvgPrice: PromiseOrValue<BigNumberish>;
positionLongFRStored: PromiseOrValue<BigNumberish>;
positionShortFRStored: PromiseOrValue<BigNumberish>;
};
type PositionInfoStructOutput = [
BigNumber,
BigNumber,
number,
BigNumber,
BigNumber,
BigNumber
] & {
position: BigNumber;
frAccumulated: BigNumber;
positionLastUpdate: number;
positionAvgPrice: BigNumber;
positionLongFRStored: BigNumber;
positionShortFRStored: BigNumber;
};
type FundingRateInfoStruct = {
frLong: PromiseOrValue<BigNumberish>;
frShort: PromiseOrValue<BigNumberish>;
longFRStored: PromiseOrValue<BigNumberish>;
shortFRStored: PromiseOrValue<BigNumberish>;
lastFRUpdateTime: PromiseOrValue<BigNumberish>;
};
type FundingRateInfoStructOutput = [
number,
number,
BigNumber,
BigNumber,
number
] & {
frLong: number;
frShort: number;
longFRStored: BigNumber;
shortFRStored: BigNumber;
lastFRUpdateTime: number;
};
type InstrumentInfoStruct = {
leverage: PromiseOrValue<BigNumberish>;
ticker: PromiseOrValue<string>[];
fundingRateInfo: CFDStructs.FundingRateInfoStruct;
};
type InstrumentInfoStructOutput = [
number,
string[],
CFDStructs.FundingRateInfoStructOutput
] & {
leverage: number;
ticker: string[];
fundingRateInfo: CFDStructs.FundingRateInfoStructOutput;
};
type AccountPositionsStruct = {
account: PromiseOrValue<string>;
positions: CFDStructs.PositionInfoStruct[];
};
type AccountPositionsStructOutput = [
string,
CFDStructs.PositionInfoStructOutput[]
] & {
account: string;
positions: CFDStructs.PositionInfoStructOutput[];
};
}
export declare namespace IDiamondCut {
type FacetCutStruct = {
facetAddress: PromiseOrValue<string>;
action: PromiseOrValue<BigNumberish>;
functionSelectors: PromiseOrValue<BytesLike>[];
};
type FacetCutStructOutput = [string, number, string[]] & {
facetAddress: string;
action: number;
functionSelectors: string[];
};
}
export declare namespace IDiamondLoupe {
type FacetStruct = {
facetAddress: PromiseOrValue<string>;
functionSelectors: PromiseOrValue<BytesLike>[];
};
type FacetStructOutput = [string, string[]] & {
facetAddress: string;
functionSelectors: string[];
};
}
export interface CrossMarginCFDInterface extends utils.Interface {
functions: {
"DELEGATION_REQUEST_TYPEHASH()": FunctionFragment;
"DOMAIN_NAME()": FunctionFragment;
"DOMAIN_SALT()": FunctionFragment;
"DOMAIN_SEPARATOR()": FunctionFragment;
"DOMAIN_VERSION()": FunctionFragment;
"EIP712_DOMAIN_TYPEHASH()": FunctionFragment;
"INTERNAL_TRANSFER_TYPEHASH()": FunctionFragment;
"LIQUIDATION_ORDER_TYPEHASH()": FunctionFragment;
"MULTI_LIQUIDATION_ORDER_TYPEHASH()": FunctionFragment;
"ORDER_TYPEHASH()": FunctionFragment;
"PRICE_INFO_TYPEHASH()": FunctionFragment;
"accountsWithOpenPositionLength()": FunctionFragment;
"addInstrument(string[12],uint8,int256,int256)": FunctionFragment;
"allowedMatchers(address)": FunctionFragment;
"approveCustomNetwork(uint64)": FunctionFragment;
"balances(address)": FunctionFragment;
"bindExternalAccount((address,uint64,uint64,uint64,uint64,bytes,bytes))": FunctionFragment;
"bindExternalAccountWithDeposit((address,uint64,uint64,uint64,uint64,bytes,bytes),(address,address,uint112,uint64,uint64,uint64,uint64,bytes32,bytes,bytes))": FunctionFragment;
"calculateMarginLevel(address,(uint16,uint80)[],bool)": FunctionFragment;
"changeDelegateFrom((address,bool,uint88,address,bytes))": FunctionFragment;
"changeDelegateWithChainId((address,bool,uint88,address,bytes),uint64)": FunctionFragment;
"changeInstrument(uint256,string[12],uint8,int256,int256)": FunctionFragment;
"checkAddressBindingSignature((address,uint64,uint64,uint64,uint64,bytes,bytes))": FunctionFragment;
"checkDelegationRequest((address,bool,uint88,address,bytes))": FunctionFragment;
"checkDelegationRequestWithChainId((address,bool,uint88,address,bytes),uint64)": FunctionFragment;
"checkInternalTransfer((address,address,uint112,uint64,uint64,uint64,uint192,bytes))": FunctionFragment;
"checkInternalTransferV2((address,address,uint112,uint64,uint64,uint64,uint64,bytes32,bytes,bytes))": FunctionFragment;
"checkLiquidationOrder((address,address,(uint16,uint80)[],(uint16,uint80)[],uint64,uint64,bytes))": FunctionFragment;
"checkLiquidationOrder((address,address,uint16,(uint16,uint80)[],uint64,uint64,bytes))": FunctionFragment;
"checkMarginWithOraclePrices(address,int112)": FunctionFragment;
"checkOrdersInfo((address,address,uint16,uint96,uint80,uint64,uint64,uint8,bool,bytes),(address,address,uint16,uint96,uint80,uint64,uint64,uint8,bool,bytes),address,address,address,uint256,uint256,uint256,address,uint256)": FunctionFragment;
"checkOrdersV2Info((address,uint80,uint16,address,uint80,bool,uint8,uint96,uint64,uint64,uint8,uint64,bytes),(address,uint80,uint16,address,uint80,bool,uint8,uint96,uint64,uint64,uint8,uint64,bytes),address,address,address,uint256,uint256,uint256,address,uint256)": FunctionFragment;
"collateral()": FunctionFragment;
"customStopOutLevel(address)": FunctionFragment;
"delegateFromTimeout(address)": FunctionFragment;
"delegatedAction(address,bytes)": FunctionFragment;
"delegations(address)": FunctionFragment;
"deleteInstrument()": FunctionFragment;
"depositAsset(uint112)": FunctionFragment;
"depositAssetTo(uint112,address)": FunctionFragment;
"diamondCut((address,uint8,bytes4[])[],address,bytes)": FunctionFragment;
"facetAddress(bytes4)": FunctionFragment;
"facetAddresses()": FunctionFragment;
"facetFunctionSelectors(address)": FunctionFragment;
"facets()": FunctionFragment;
"fillOrders((address,address,uint16,uint96,uint80,uint64,uint64,uint8,bool,bytes),(address,address,uint16,uint96,uint80,uint64,uint64,uint8,bool,bytes),uint80,uint96)": FunctionFragment;
"fillOrdersV2((address,uint80,uint16,address,uint80,bool,uint8,uint96,uint64,uint64,uint8,uint64,bytes),(address,uint80,uint16,address,uint80,bool,uint8,uint96,uint64,uint64,uint8,uint64,bytes),uint80,uint96)": FunctionFragment;
"filledAmounts(bytes32)": FunctionFragment;
"fundingRateAccount()": FunctionFragment;
"getAccountFR(address,uint256)": FunctionFragment;
"getAccountsWithOpenPositions(uint256,uint256)": FunctionFragment;
"getActiveInstrumentsIndexes(address)": FunctionFragment;
"getActiveInstrumentsPositions(address)": FunctionFragment;
"getAssetPrice(uint256)": FunctionFragment;
"getDelegationRequestTypeValueHash((address,bool,uint88,address,bytes))": FunctionFragment;
"getDerivedAccountBinding(address)": FunctionFragment;
"getDomainSeparatorForChainId(uint256)": FunctionFragment;
"getEIP712DomainData()": FunctionFragment;
"getExternalAccountBinding(bytes)": FunctionFragment;
"getInstrumentInfo(uint256)": FunctionFragment;
"getOpenPositions(uint256,uint256)": FunctionFragment;
"getOrWriteDomainSeparator(uint256)": FunctionFragment;
"getOrderTypeValueHash((address,address,uint16,uint96,uint80,uint64,uint64,uint8,bool,bytes))": FunctionFragment;
"getPNL(address,uint256,int112)": FunctionFragment;
"getPriceInfoTypeValueHash((uint16,uint80))": FunctionFragment;
"getTotalLongFR(uint256)": FunctionFragment;
"getTotalShortFR(uint256)": FunctionFragment;
"instrumentInfo(uint256)": FunctionFragment;
"instrumentsLength()": FunctionFragment;
"internalTransfer((address,address,uint112,uint64,uint64,uint64,uint192,bytes))": FunctionFragment;
"internalTransferV2((address,address,uint112,uint64,uint64,uint64,uint64,bytes32,bytes,bytes))": FunctionFragment;
"isCustomNetworkApproved(uint64)": FunctionFragment;
"liquidatePosition((address,address,uint16,(uint16,uint80)[],uint64,uint64,bytes))": FunctionFragment;
"liquidatePositions((address,address,(uint16,uint80)[],(uint16,uint80)[],uint64,uint64,bytes))": FunctionFragment;
"liquidationFeePercent()": FunctionFragment;
"maxOpenPositions()": FunctionFragment;
"oracle()": FunctionFragment;
"owner()": FunctionFragment;
"positionInfo(uint256,address)": FunctionFragment;
"recover((address,address,uint16,uint96,uint80,uint64,uint64,uint8,bool,bytes))": FunctionFragment;
"rejectCustomNetwork(uint64)": FunctionFragment;
"removeDelegate()": FunctionFragment;
"setBasicParams(address,address,uint8,uint16,uint256,uint112)": FunctionFragment;
"setCustomStopOutLevel(address,int112)": FunctionFragment;
"setDelegate(address)": FunctionFragment;
"setFR(uint256,int256,int256)": FunctionFragment;
"soLevel()": FunctionFragment;
"transferOwnership(address)": FunctionFragment;
"updateMatchers(address[])": FunctionFragment;
"usedDelegationRequests(bytes32)": FunctionFragment;
"withdrawAsset(uint112)": FunctionFragment;
"withdrawAssetTo(uint112,address)": FunctionFragment;
"withdrawMarginLevel()": FunctionFragment;
};
getFunction(nameOrSignatureOrTopic: "DELEGATION_REQUEST_TYPEHASH" | "DOMAIN_NAME" | "DOMAIN_SALT" | "DOMAIN_SEPARATOR" | "DOMAIN_VERSION" | "EIP712_DOMAIN_TYPEHASH" | "INTERNAL_TRANSFER_TYPEHASH" | "LIQUIDATION_ORDER_TYPEHASH" | "MULTI_LIQUIDATION_ORDER_TYPEHASH" | "ORDER_TYPEHASH" | "PRICE_INFO_TYPEHASH" | "accountsWithOpenPositionLength" | "addInstrument" | "allowedMatchers" | "approveCustomNetwork" | "balances" | "bindExternalAccount" | "bindExternalAccountWithDeposit" | "calculateMarginLevel" | "changeDelegateFrom" | "changeDelegateWithChainId" | "changeInstrument" | "checkAddressBindingSignature" | "checkDelegationRequest" | "checkDelegationRequestWithChainId" | "checkInternalTransfer" | "checkInternalTransferV2" | "checkLiquidationOrder((address,address,(uint16,uint80)[],(uint16,uint80)[],uint64,uint64,bytes))" | "checkLiquidationOrder((address,address,uint16,(uint16,uint80)[],uint64,uint64,bytes))" | "checkMarginWithOraclePrices" | "checkOrdersInfo" | "checkOrdersV2Info" | "collateral" | "customStopOutLevel" | "delegateFromTimeout" | "delegatedAction" | "delegations" | "deleteInstrument" | "depositAsset" | "depositAssetTo" | "diamondCut" | "facetAddress" | "facetAddresses" | "facetFunctionSelectors" | "facets" | "fillOrders" | "fillOrdersV2" | "filledAmounts" | "fundingRateAccount" | "getAccountFR" | "getAccountsWithOpenPositions" | "getActiveInstrumentsIndexes" | "getActiveInstrumentsPositions" | "getAssetPrice" | "getDelegationRequestTypeValueHash" | "getDerivedAccountBinding" | "getDomainSeparatorForChainId" | "getEIP712DomainData" | "getExternalAccountBinding" | "getInstrumentInfo" | "getOpenPositions" | "getOrWriteDomainSeparator" | "getOrderTypeValueHash" | "getPNL" | "getPriceInfoTypeValueHash" | "getTotalLongFR" | "getTotalShortFR" | "instrumentInfo" | "instrumentsLength" | "internalTransfer" | "internalTransferV2" | "isCustomNetworkApproved" | "liquidatePosition" | "liquidatePositions" | "liquidationFeePercent" | "maxOpenPositions" | "oracle" | "owner" | "positionInfo" | "recover" | "rejectCustomNetwork" | "removeDelegate" | "setBasicParams" | "setCustomStopOutLevel" | "setDelegate" | "setFR" | "soLevel" | "transferOwnership" | "updateMatchers" | "usedDelegationRequests" | "withdrawAsset" | "withdrawAssetTo" | "withdrawMarginLevel"): FunctionFragment;
encodeFunctionData(functionFragment: "DELEGATION_REQUEST_TYPEHASH", values?: undefined): string;
encodeFunctionData(functionFragment: "DOMAIN_NAME", values?: undefined): string;
encodeFunctionData(functionFragment: "DOMAIN_SALT", values?: undefined): string;
encodeFunctionData(functionFragment: "DOMAIN_SEPARATOR", values?: undefined): string;
encodeFunctionData(functionFragment: "DOMAIN_VERSION", values?: undefined): string;
encodeFunctionData(functionFragment: "EIP712_DOMAIN_TYPEHASH", values?: undefined): string;
encodeFunctionData(functionFragment: "INTERNAL_TRANSFER_TYPEHASH", values?: undefined): string;
encodeFunctionData(functionFragment: "LIQUIDATION_ORDER_TYPEHASH", values?: undefined): string;
encodeFunctionData(functionFragment: "MULTI_LIQUIDATION_ORDER_TYPEHASH", values?: undefined): string;
encodeFunctionData(functionFragment: "ORDER_TYPEHASH", values?: undefined): string;
encodeFunctionData(functionFragment: "PRICE_INFO_TYPEHASH", values?: undefined): string;
encodeFunctionData(functionFragment: "accountsWithOpenPositionLength", values?: undefined): string;
encodeFunctionData(functionFragment: "addInstrument", values: [
PromiseOrValue<string>[],
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "allowedMatchers", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "approveCustomNetwork", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "balances", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "bindExternalAccount", values: [CFDStructs.ExternalAddressBindingStruct]): string;
encodeFunctionData(functionFragment: "bindExternalAccountWithDeposit", values: [
CFDStructs.ExternalAddressBindingStruct,
CFDStructs.InternalTransferV2Struct
]): string;
encodeFunctionData(functionFragment: "calculateMarginLevel", values: [
PromiseOrValue<string>,
CFDStructs.PriceInfoStruct[],
PromiseOrValue<boolean>
]): string;
encodeFunctionData(functionFragment: "changeDelegateFrom", values: [CFDStructs.DelegationRequestStruct]): string;
encodeFunctionData(functionFragment: "changeDelegateWithChainId", values: [CFDStructs.DelegationRequestStruct, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "changeInstrument", values: [
PromiseOrValue<BigNumberish>,
PromiseOrValue<string>[],
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "checkAddressBindingSignature", values: [CFDStructs.ExternalAddressBindingStruct]): string;
encodeFunctionData(functionFragment: "checkDelegationRequest", values: [CFDStructs.DelegationRequestStruct]): string;
encodeFunctionData(functionFragment: "checkDelegationRequestWithChainId", values: [CFDStructs.DelegationRequestStruct, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "checkInternalTransfer", values: [CFDStructs.InternalTransferStruct]): string;
encodeFunctionData(functionFragment: "checkInternalTransferV2", values: [CFDStructs.InternalTransferV2Struct]): string;
encodeFunctionData(functionFragment: "checkLiquidationOrder((address,address,(uint16,uint80)[],(uint16,uint80)[],uint64,uint64,bytes))", values: [CFDStructs.MultiLiquidationOrderStruct]): string;
encodeFunctionData(functionFragment: "checkLiquidationOrder((address,address,uint16,(uint16,uint80)[],uint64,uint64,bytes))", values: [CFDStructs.LiquidationOrderStruct]): string;
encodeFunctionData(functionFragment: "checkMarginWithOraclePrices", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "checkOrdersInfo", values: [
CFDStructs.OrderStruct,
CFDStructs.OrderStruct,
PromiseOrValue<string>,
PromiseOrValue<string>,
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "checkOrdersV2Info", values: [
CFDStructs.OrderV2Struct,
CFDStructs.OrderV2Struct,
PromiseOrValue<string>,
PromiseOrValue<string>,
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "collateral", values?: undefined): string;
encodeFunctionData(functionFragment: "customStopOutLevel", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "delegateFromTimeout", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "delegatedAction", values: [PromiseOrValue<string>, PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "delegations", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "deleteInstrument", values?: undefined): string;
encodeFunctionData(functionFragment: "depositAsset", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "depositAssetTo", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "diamondCut", values: [
IDiamondCut.FacetCutStruct[],
PromiseOrValue<string>,
PromiseOrValue<BytesLike>
]): string;
encodeFunctionData(functionFragment: "facetAddress", values: [PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "facetAddresses", values?: undefined): string;
encodeFunctionData(functionFragment: "facetFunctionSelectors", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "facets", values?: undefined): string;
encodeFunctionData(functionFragment: "fillOrders", values: [
CFDStructs.OrderStruct,
CFDStructs.OrderStruct,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "fillOrdersV2", values: [
CFDStructs.OrderV2Struct,
CFDStructs.OrderV2Struct,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "filledAmounts", values: [PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "fundingRateAccount", values?: undefined): string;
encodeFunctionData(functionFragment: "getAccountFR", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "getAccountsWithOpenPositions", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "getActiveInstrumentsIndexes", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "getActiveInstrumentsPositions", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "getAssetPrice", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "getDelegationRequestTypeValueHash", values: [CFDStructs.DelegationRequestStruct]): string;
encodeFunctionData(functionFragment: "getDerivedAccountBinding", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "getDomainSeparatorForChainId", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "getEIP712DomainData", values?: undefined): string;
encodeFunctionData(functionFragment: "getExternalAccountBinding", values: [PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "getInstrumentInfo", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "getOpenPositions", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "getOrWriteDomainSeparator", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "getOrderTypeValueHash", values: [CFDStructs.OrderStruct]): string;
encodeFunctionData(functionFragment: "getPNL", values: [
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "getPriceInfoTypeValueHash", values: [CFDStructs.PriceInfoStruct]): string;
encodeFunctionData(functionFragment: "getTotalLongFR", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "getTotalShortFR", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "instrumentInfo", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "instrumentsLength", values?: undefined): string;
encodeFunctionData(functionFragment: "internalTransfer", values: [CFDStructs.InternalTransferStruct]): string;
encodeFunctionData(functionFragment: "internalTransferV2", values: [CFDStructs.InternalTransferV2Struct]): string;
encodeFunctionData(functionFragment: "isCustomNetworkApproved", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "liquidatePosition", values: [CFDStructs.LiquidationOrderStruct]): string;
encodeFunctionData(functionFragment: "liquidatePositions", values: [CFDStructs.MultiLiquidationOrderStruct]): string;
encodeFunctionData(functionFragment: "liquidationFeePercent", values?: undefined): string;
encodeFunctionData(functionFragment: "maxOpenPositions", values?: undefined): string;
encodeFunctionData(functionFragment: "oracle", values?: undefined): string;
encodeFunctionData(functionFragment: "owner", values?: undefined): string;
encodeFunctionData(functionFragment: "positionInfo", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "recover", values: [CFDStructs.OrderStruct]): string;
encodeFunctionData(functionFragment: "rejectCustomNetwork", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "removeDelegate", values?: undefined): string;
encodeFunctionData(functionFragment: "setBasicParams", values: [
PromiseOrValue<string>,
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "setCustomStopOutLevel", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "setDelegate", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "setFR", values: [
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "soLevel", values?: undefined): string;
encodeFunctionData(functionFragment: "transferOwnership", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "updateMatchers", values: [PromiseOrValue<string>[]]): string;
encodeFunctionData(functionFragment: "usedDelegationRequests", values: [PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "withdrawAsset", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "withdrawAssetTo", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "withdrawMarginLevel", values?: undefined): string;
decodeFunctionResult(functionFragment: "DELEGATION_REQUEST_TYPEHASH", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "DOMAIN_NAME", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "DOMAIN_SALT", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "DOMAIN_SEPARATOR", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "DOMAIN_VERSION", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "EIP712_DOMAIN_TYPEHASH", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "INTERNAL_TRANSFER_TYPEHASH", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "LIQUIDATION_ORDER_TYPEHASH", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "MULTI_LIQUIDATION_ORDER_TYPEHASH", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "ORDER_TYPEHASH", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "PRICE_INFO_TYPEHASH", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "accountsWithOpenPositionLength", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "addInstrument", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "allowedMatchers", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "approveCustomNetwork", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "balances", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "bindExternalAccount", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "bindExternalAccountWithDeposit", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "calculateMarginLevel", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "changeDelegateFrom", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "changeDelegateWithChainId", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "changeInstrument", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "checkAddressBindingSignature", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "checkDelegationRequest", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "checkDelegationRequestWithChainId", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "checkInternalTransfer", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "checkInternalTransferV2", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "checkLiquidationOrder((address,address,(uint16,uint80)[],(uint16,uint80)[],uint64,uint64,bytes))", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "checkLiquidationOrder((address,address,uint16,(uint16,uint80)[],uint64,uint64,bytes))", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "checkMarginWithOraclePrices", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "checkOrdersInfo", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "checkOrdersV2Info", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "collateral", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "customStopOutLevel", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "delegateFromTimeout", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "delegatedAction", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "delegations", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "deleteInstrument", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "depositAsset", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "depositAssetTo", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "diamondCut", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "facetAddress", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "facetAddresses", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "facetFunctionSelectors", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "facets", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "fillOrders", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "fillOrdersV2", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "filledAmounts", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "fundingRateAccount", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getAccountFR", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getAccountsWithOpenPositions", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getActiveInstrumentsIndexes", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getActiveInstrumentsPositions", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getAssetPrice", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getDelegationRequestTypeValueHash", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getDerivedAccountBinding", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getDomainSeparatorForChainId", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getEIP712DomainData", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getExternalAccountBinding", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getInstrumentInfo", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getOpenPositions", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getOrWriteDomainSeparator", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getOrderTypeValueHash", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getPNL", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getPriceInfoTypeValueHash", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getTotalLongFR", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getTotalShortFR", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "instrumentInfo", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "instrumentsLength", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "internalTransfer", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "internalTransferV2", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "isCustomNetworkApproved", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "liquidatePosition", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "liquidatePositions", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "liquidationFeePercent", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "maxOpenPositions", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "oracle", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "positionInfo", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "recover", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "rejectCustomNetwork", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "removeDelegate", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "setBasicParams", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "setCustomStopOutLevel", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "setDelegate", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "setFR", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "soLevel", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "updateMatchers", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "usedDelegationRequests", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "withdrawAsset", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "withdrawAssetTo", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "withdrawMarginLevel", data: BytesLike): Result;
events: {};
}
export interface CrossMarginCFD extends BaseContract {
connect(signerOrProvider: Signer | Provider | string): this;
attach(addressOrName: string): this;
deployed(): Promise<this>;
interface: CrossMarginCFDInterface;
queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>;
listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>;
listeners(eventName?: string): Array<Listener>;
removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this;
removeAllListeners(eventName?: string): this;
off: OnEvent<this>;
on: OnEvent<this>;
once: OnEvent<this>;
removeListener: OnEvent<this>;
functions: {
DELEGATION_REQUEST_TYPEHASH(overrides?: CallOverrides): Promise<[string]>;
DOMAIN_NAME(overrides?: CallOverrides): Promise<[string]>;
DOMAIN_SALT(overrides?: CallOverrides): Promise<[string]>;
DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise<[string]>;
DOMAIN_VERSION(overrides?: CallOverrides): Promise<[string]>;
EIP712_DOMAIN_TYPEHASH(overrides?: CallOverrides): Promise<[string]>;
INTERNAL_TRANSFER_TYPEHASH(overrides?: CallOverrides): Promise<[string]>;
LIQUIDATION_ORDER_TYPEHASH(overrides?: CallOverrides): Promise<[string]>;
MULTI_LIQUIDATION_ORDER_TYPEHASH(overrides?: CallOverrides): Promise<[string]>;
ORDER_TYPEHASH(overrides?: CallOverrides): Promise<[string]>;
PRICE_INFO_TYPEHASH(overrides?: CallOverrides): Promise<[string]>;
accountsWithOpenPositionLength(overrides?: CallOverrides): Promise<[BigNumber]>;
addInstrument(ticker: PromiseOrValue<string>[], leverage: PromiseOrValue<BigNumberish>, dailyFRLong: PromiseOrValue<BigNumberish>, dailyFRShort: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
allowedMatchers(matcher: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[boolean]>;
approveCustomNetwork(chainId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
balances(account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
bindExternalAccount(binding: CFDStructs.ExternalAddressBindingStruct, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
bindExternalAccountWithDeposit(binding: CFDStructs.ExternalAddressBindingStruct, initialDeposit: CFDStructs.InternalTransferV2Struct, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
calculateMarginLevel(account: PromiseOrValue<string>, prices: CFDStructs.PriceInfoStruct[], checkPrices: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<[
BigNumber,
BigNumber,
BigNumber,
BigNumber[],
BigNumber[]
] & {
marginLevel: BigNumber;
equity: BigNumber;
margin: BigNumber;
pnls: BigNumber[];
frs: BigNumber[];
}>;
changeDelegateFrom(request: CFDStructs.DelegationRequestStruct, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
changeDelegateWithChainId(request: CFDStructs.DelegationRequestStruct, chainId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
changeInstrument(index: PromiseOrValue<BigNumberish>, ticker: PromiseOrValue<string>[], leverage: PromiseOrValue<BigNumberish>, dailyFRLong: PromiseOrValue<BigNumberish>, dailyFRShort: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
checkAddressBindingSignature(binding: CFDStructs.ExternalAddressBindingStruct, overrides?: CallOverrides): Promise<[string] & {
digest: string;
}>;
checkDelegationRequest(delegationRequest: CFDStructs.DelegationRequestStruct, overrides?: CallOverrides): Promise<[string] & {
delegationRequestDigest: string;
}>;
checkDelegationRequestWithChainId(delegationRequest: CFDStructs.DelegationRequestStruct, chainId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
checkInternalTransfer(internalTransfer: CFDStructs.InternalTransferStruct, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
checkInternalTransferV2(internalTransfer: CFDStructs.InternalTransferV2Struct, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
"checkLiquidationOrder((address,address,(uint16,uint80)[],(uint16,uint80)[],uint64,uint64,bytes))"(liquidationOrder: CFDStructs.MultiLiquidationOrderStruct, overrides?: CallOverrides): Promise<[void]>;
"checkLiquidationOrder((address,address,uint16,(uint16,uint80)[],uint64,uint64,bytes))"(liquidationOrder: CFDStructs.LiquidationOrderStruct, overrides?: CallOverrides): Promise<[void]>;
checkMarginWithOraclePrices(account: PromiseOrValue<string>, marginLevel: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[boolean, BigNumber]>;
checkOrdersInfo(buyOrder: CFDStructs.OrderStruct, sellOrder: CFDStructs.OrderStruct, buyOrderSigner: PromiseOrValue<string>, sellOrderSigner: PromiseOrValue<string>, sender: PromiseOrValue<string>, filledAmount: PromiseOrValue<BigNumberish>, filledPrice: PromiseOrValue<BigNumberish>, currentTime: PromiseOrValue<BigNumberish>, allowedMatcher: PromiseOrValue<string>, instrumentsLength: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
string,
string
] & {
buyOrderDigest: string;
sellOrderDigest: string;
}>;
checkOrdersV2Info(buyOrder: CFDStructs.OrderV2Struct, sellOrder: CFDStructs.OrderV2Struct, buyOrderSigner: PromiseOrValue<string>, sellOrderSigner: PromiseOrValue<string>, sender: PromiseOrValue<string>, filledAmount: PromiseOrValue<BigNumberish>, filledPrice: PromiseOrValue<BigNumberish>, currentTime: PromiseOrValue<BigNumberish>, allowedMatcher: PromiseOrValue<string>, instrumentsLength: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
collateral(overrides?: CallOverrides): Promise<[string]>;
customStopOutLevel(account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
delegateFromTimeout(trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber] & {
timeLeft: BigNumber;
}>;
delegatedAction(trader: PromiseOrValue<string>, call_data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
delegations(trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[string]>;
deleteInstrument(overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
depositAsset(amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
depositAssetTo(amount: PromiseOrValue<BigNumberish>, to: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
diamondCut(diamondCut_: IDiamondCut.FacetCutStruct[], init_: PromiseOrValue<string>, calldata_: PromiseOrValue<BytesLike>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
facetAddress(_functionSelector: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[string] & {
facetAddress_: string;
}>;
facetAddresses(overrides?: CallOverrides): Promise<[string[]] & {
facetAddresses_: string[];
}>;
facetFunctionSelectors(_facet: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[string[]] & {
facetFunctionSelectors_: string[];
}>;
facets(overrides?: CallOverrides): Promise<[
IDiamondLoupe.FacetStructOutput[]
] & {
facets_: IDiamondLoupe.FacetStructOutput[];
}>;
fillOrders(buyOrder: CFDStructs.OrderStruct, sellOrder: CFDStructs.OrderStruct, filledPrice: PromiseOrValue<BigNumberish>, filledAmount: PromiseOrValue<BigNumberish>, ove