UNPKG

@electra.finance/contracts

Version:
218 lines (217 loc) 10 kB
import type BN from "bn.js"; import type { ContractOptions } from "web3-eth-contract"; import type { EventLog } from "web3-core"; import type { EventEmitter } from "events"; import type { Callback, PayableTransactionObject, NonPayableTransactionObject, BlockType, ContractEventLog, BaseContract } from "./types"; export interface EventOptions { filter?: object; fromBlock?: BlockType; topics?: string[]; } export type AccountUpdate = ContractEventLog<{ user: string; balance: string; position: string; reason: string; positionPrice: string; fundingRate: string; realizedPNL: string; realizedFR: string; 0: string; 1: string; 2: string; 3: string; 4: string; 5: string; 6: string; 7: string; }>; export type BasicParamsUpdate = ContractEventLog<{ oracle: string; withdrawMarginLevel: string; 0: string; 1: string; }>; export type Initialized = ContractEventLog<{ version: string; 0: string; }>; export type LevelsUpdate = ContractEventLog<{ leverage: string; so_level: string; 0: string; 1: string; }>; export type NewFundingRate = ContractEventLog<{ long: string; short: string; long_fr_stored: string; short_fr_stored: string; last_fr_price_update_time: string; 0: string; 1: string; 2: string; 3: string; 4: string; }>; export type NewTrade = ContractEventLog<{ buyer: string; seller: string; filledPrice: string; filledAmount: string; 0: string; 1: string; 2: string; 3: string; }>; export type OwnershipTransferred = ContractEventLog<{ previousOwner: string; newOwner: string; 0: string; 1: string; }>; export type customStopOutLevelUpdate = ContractEventLog<{ account: string; so_level: string; 0: string; 1: string; }>; export interface IsolatedMarginCFD extends BaseContract { constructor(jsonInterface: any[], address?: string, options?: ContractOptions): IsolatedMarginCFD; clone(): IsolatedMarginCFD; methods: { activePositions(arg0: number | string | BN): NonPayableTransactionObject<string>; allowedMatchers(arg0: string): NonPayableTransactionObject<boolean>; checkMargin(user: string, marginLevel: number | string | BN): NonPayableTransactionObject<{ 0: boolean; 1: string; }>; collateral_(): NonPayableTransactionObject<string>; delegatedAction(trader: string, call_data: string | number[]): NonPayableTransactionObject<string>; depositAsset(amount: number | string | BN): NonPayableTransactionObject<void>; depositAssetTo(amount: number | string | BN, to: string): NonPayableTransactionObject<void>; depositAssetToAnotherCFD(cfdContract: string, amount: number | string | BN): NonPayableTransactionObject<void>; fillOrders(buyOrder: [ string, string, number | string | BN, number | string | BN, number | string | BN, number | string | BN, number | string | BN, string, number | string | BN, boolean, boolean, string | number[] ], sellOrder: [ string, string, number | string | BN, number | string | BN, number | string | BN, number | string | BN, number | string | BN, string, number | string | BN, boolean, boolean, string | number[] ], filledPrice: number | string | BN, filledAmount: number | string | BN): NonPayableTransactionObject<void>; filled_amounts_(arg0: string | number[]): NonPayableTransactionObject<string>; getActivePositions(offset: number | string | BN, limit: number | string | BN): NonPayableTransactionObject<string[]>; getActivePositionsLength(): NonPayableTransactionObject<string>; getAssetPrice(): NonPayableTransactionObject<string>; getDelegateStorage(): NonPayableTransactionObject<string>; getFR(account: string): NonPayableTransactionObject<string>; getLongFR(): NonPayableTransactionObject<string>; getPNL(account: string, price: number | string | BN): NonPayableTransactionObject<string>; getPriceIndex(): NonPayableTransactionObject<string>; getSenderOverride(): NonPayableTransactionObject<string>; getShortFR(): NonPayableTransactionObject<string>; getSymbol(): NonPayableTransactionObject<string>; initialize(collateral: string): PayableTransactionObject<void>; last_fr_price_update_time_(): NonPayableTransactionObject<string>; leverage_(): NonPayableTransactionObject<string>; liquidatePosition(liquidationOrder: [ string, string, string, number | string | BN, number | string | BN, string | number[] ]): NonPayableTransactionObject<void>; long_fr_(): NonPayableTransactionObject<string>; long_fr_stored_(): NonPayableTransactionObject<string>; oracle_(): NonPayableTransactionObject<string>; owner(): NonPayableTransactionObject<string>; renounceOwnership(): NonPayableTransactionObject<void>; setBasicParams(oracle: string, delegateStorage: string, withdrawMarginLevel: number | string | BN): NonPayableTransactionObject<void>; setCustomStopOutLevel(account: string, so_level: number | string | BN): NonPayableTransactionObject<void>; setDelegateStorage(delegateStorage_: string): NonPayableTransactionObject<void>; setFR(long_fr: number | string | BN, short_fr: number | string | BN): NonPayableTransactionObject<void>; setLevels(leverage: number | string | BN, so_level: number | string | BN): NonPayableTransactionObject<void>; setSenderOverride(senderOverride: string): NonPayableTransactionObject<void>; short_fr_(): NonPayableTransactionObject<string>; short_fr_stored_(): NonPayableTransactionObject<string>; so_level_(): NonPayableTransactionObject<string>; transferOwnership(newOwner: string): NonPayableTransactionObject<void>; updateMatchers(matchers: string[], values: boolean[]): NonPayableTransactionObject<void>; userIndexes(arg0: string): NonPayableTransactionObject<string>; user_data_(arg0: string): NonPayableTransactionObject<{ balance: string; fr_base: string; position: string; pos_avg_price: string; pos_last_update: string; long_fr_last: string; short_fr_last: string; 0: string; 1: string; 2: string; 3: string; 4: string; 5: string; 6: string; }>; withdrawAsset(amount: number | string | BN): NonPayableTransactionObject<void>; withdrawAssetTo(amount: number | string | BN, to: string): NonPayableTransactionObject<void>; withdrawFR(to: string, amount: number | string | BN): NonPayableTransactionObject<void>; withdrawMarginLevel_(): NonPayableTransactionObject<string>; }; events: { AccountUpdate(cb?: Callback<AccountUpdate>): EventEmitter; AccountUpdate(options?: EventOptions, cb?: Callback<AccountUpdate>): EventEmitter; BasicParamsUpdate(cb?: Callback<BasicParamsUpdate>): EventEmitter; BasicParamsUpdate(options?: EventOptions, cb?: Callback<BasicParamsUpdate>): EventEmitter; Initialized(cb?: Callback<Initialized>): EventEmitter; Initialized(options?: EventOptions, cb?: Callback<Initialized>): EventEmitter; LevelsUpdate(cb?: Callback<LevelsUpdate>): EventEmitter; LevelsUpdate(options?: EventOptions, cb?: Callback<LevelsUpdate>): EventEmitter; NewFundingRate(cb?: Callback<NewFundingRate>): EventEmitter; NewFundingRate(options?: EventOptions, cb?: Callback<NewFundingRate>): EventEmitter; NewTrade(cb?: Callback<NewTrade>): EventEmitter; NewTrade(options?: EventOptions, cb?: Callback<NewTrade>): EventEmitter; OwnershipTransferred(cb?: Callback<OwnershipTransferred>): EventEmitter; OwnershipTransferred(options?: EventOptions, cb?: Callback<OwnershipTransferred>): EventEmitter; customStopOutLevelUpdate(cb?: Callback<customStopOutLevelUpdate>): EventEmitter; customStopOutLevelUpdate(options?: EventOptions, cb?: Callback<customStopOutLevelUpdate>): EventEmitter; allEvents(options?: EventOptions, cb?: Callback<EventLog>): EventEmitter; }; once(event: "AccountUpdate", cb: Callback<AccountUpdate>): void; once(event: "AccountUpdate", options: EventOptions, cb: Callback<AccountUpdate>): void; once(event: "BasicParamsUpdate", cb: Callback<BasicParamsUpdate>): void; once(event: "BasicParamsUpdate", options: EventOptions, cb: Callback<BasicParamsUpdate>): void; once(event: "Initialized", cb: Callback<Initialized>): void; once(event: "Initialized", options: EventOptions, cb: Callback<Initialized>): void; once(event: "LevelsUpdate", cb: Callback<LevelsUpdate>): void; once(event: "LevelsUpdate", options: EventOptions, cb: Callback<LevelsUpdate>): void; once(event: "NewFundingRate", cb: Callback<NewFundingRate>): void; once(event: "NewFundingRate", options: EventOptions, cb: Callback<NewFundingRate>): void; once(event: "NewTrade", cb: Callback<NewTrade>): void; once(event: "NewTrade", options: EventOptions, cb: Callback<NewTrade>): void; once(event: "OwnershipTransferred", cb: Callback<OwnershipTransferred>): void; once(event: "OwnershipTransferred", options: EventOptions, cb: Callback<OwnershipTransferred>): void; once(event: "customStopOutLevelUpdate", cb: Callback<customStopOutLevelUpdate>): void; once(event: "customStopOutLevelUpdate", options: EventOptions, cb: Callback<customStopOutLevelUpdate>): void; }