@dolomite-exchange/dolomite-margin
Version:
Ethereum Smart Contracts and TypeScript library used for the DolomiteMargin trading protocol
76 lines (75 loc) • 3.56 kB
TypeScript
import Web3 from 'web3';
import { Provider } from 'web3/providers';
import { Contracts } from './lib/Contracts';
import { Interest } from './lib/Interest';
import { Admin } from './modules/Admin';
import { ArbitrumGasInfo } from './modules/ArbitrumGasInfo';
import { BorrowPositionProxyV1 } from './modules/BorrowPositionProxyV1';
import { BorrowPositionProxyV2 } from './modules/BorrowPositionProxyV2';
import { DepositProxy } from './modules/DepositProxy';
import { Expiry } from './modules/Expiry';
import { GenericTraderProxyV1 } from './modules/GenericTraderProxyV1';
import { Getters } from './modules/Getters';
import { LiquidatorAssetRegistry } from './modules/LiquidatorAssetRegistry';
import { LiquidatorProxyV1 } from './modules/LiquidatorProxyV1';
import { LiquidatorProxyV4WithGenericTrader } from './modules/LiquidatorProxyV4WithGenericTrader';
import { IsolationModeUnwrapper } from './modules/IsolationModeUnwrapper';
import { Logs } from './modules/Logs';
import { MultiCall } from './modules/MultiCall';
import { Operation } from './modules/operate/Operation';
import { ChainlinkPriceOracleV1 } from './modules/oracles/ChainlinkPriceOracleV1';
import { Permissions } from './modules/Permissions';
import { SignedOperations } from './modules/SignedOperations';
import { StandardActions } from './modules/StandardActions';
import { SubgraphAPI } from './modules/SubgraphAPI';
import { Token } from './modules/Token';
import { TransferProxy } from './modules/TransferProxy';
import { WalletLogin } from './modules/WalletLogin';
import { PayableToken } from './modules/PayableToken';
import { address, DolomiteMarginOptions, EthereumAccount } from './types';
import { IsolationModeWrapper } from './modules/IsolationModeWrapper';
import { ExpiryProxy } from './modules/ExpiryProxy';
import { MantleGasInfo } from './modules/MantleGasInfo';
export declare class DolomiteMargin {
networkId: number;
web3: Web3;
arbitrumGasInfo?: ArbitrumGasInfo;
admin: Admin;
borrowPositionProxyV1: BorrowPositionProxyV1;
borrowPositionProxyV2: BorrowPositionProxyV2;
api: SubgraphAPI;
chainlinkPriceOracle: ChainlinkPriceOracleV1;
contracts: Contracts;
depositWithdrawalProxy: DepositProxy;
expiry: Expiry;
expiryProxy: ExpiryProxy;
genericTraderProxyV1: GenericTraderProxyV1;
getters: Getters;
interest: Interest;
liquidatorAssetRegistry: LiquidatorAssetRegistry;
liquidatorProxyV1: LiquidatorProxyV1;
liquidatorProxyV4WithGenericTrader: LiquidatorProxyV4WithGenericTrader;
logs: Logs;
mantleGasInfo?: MantleGasInfo;
multiCall: MultiCall;
operation: Operation;
payableToken: PayableToken;
permissions: Permissions;
signedOperations: SignedOperations;
standardActions: StandardActions;
token: Token;
transferProxy: TransferProxy;
walletLogin: WalletLogin;
constructor(provider: Provider | string, networkId?: number, options?: DolomiteMarginOptions);
/**
* @return The address of the main DolomiteMargin smart contract
*/
get address(): address;
setProvider(provider: Provider, networkId: number): void;
setDefaultAccount(account: address): void;
getDefaultAccount(): address;
loadAccount(account: EthereumAccount): void;
getIsolationModeUnwrapper(unwrapperAddress: address): IsolationModeUnwrapper;
getIsolationModeWrapper(unwrapperAddress: address): IsolationModeWrapper;
protected createContractsModule(provider: Provider, networkId: number, web3: Web3, options: DolomiteMarginOptions): any;
}