UNPKG

@dolomite-exchange/dolomite-margin

Version:

Ethereum Smart Contracts and TypeScript library used for the DolomiteMargin trading protocol

88 lines (87 loc) 5.49 kB
import Web3 from 'web3'; import { TransactionObject } from 'web3/eth/types'; import { Provider } from 'web3/providers'; import { AAVECopyCatAltCoinInterestSetter } from '../../build/wrappers/AAVECopyCatAltCoinInterestSetter'; import { AAVECopyCatStableCoinInterestSetter } from '../../build/wrappers/AAVECopyCatStableCoinInterestSetter'; import { AccountValuesReader } from '../../build/wrappers/AccountValuesReader'; import { ArbitrumMultiCall } from '../../build/wrappers/ArbitrumMultiCall'; import { BorrowPositionProxyV1 } from '../../build/wrappers/BorrowPositionProxyV1'; import { BorrowPositionProxyV2 } from '../../build/wrappers/BorrowPositionProxyV2'; import { ChainlinkPriceOracleV1 } from '../../build/wrappers/ChainlinkPriceOracleV1'; import { DepositWithdrawalProxy } from '../../build/wrappers/DepositWithdrawalProxy'; import { DolomiteMargin } from '../../build/wrappers/DolomiteMargin'; import { DoubleExponentInterestSetter } from '../../build/wrappers/DoubleExponentInterestSetter'; import { EventEmitterRegistry } from '../../build/wrappers/EventEmitterRegistry'; import { Expiry } from '../../build/wrappers/Expiry'; import { ExpiryProxy } from '../../build/wrappers/ExpiryProxy'; import { GenericTraderProxyV1 } from '../../build/wrappers/GenericTraderProxyV1'; import { IAccountRiskOverrideSetter } from '../../build/wrappers/IAccountRiskOverrideSetter'; import { IArbitrumGasInfo } from '../../build/wrappers/IArbitrumGasInfo'; import { IERC20Detailed as ERC20 } from '../../build/wrappers/IERC20Detailed'; import { IInterestSetter as InterestSetter } from '../../build/wrappers/IInterestSetter'; import { IIsolationModeUnwrapperTrader } from '../../build/wrappers/IIsolationModeUnwrapperTrader'; import { IIsolationModeWrapperTrader } from '../../build/wrappers/IIsolationModeWrapperTrader'; import { IMantleGasInfo } from '../../build/wrappers/IMantleGasInfo'; import { IOracleSentinel } from '../../build/wrappers/IOracleSentinel'; import { IPriceOracle as PriceOracle } from '../../build/wrappers/IPriceOracle'; import { LiquidatorAssetRegistry } from '../../build/wrappers/LiquidatorAssetRegistry'; import { LiquidatorProxyV1 } from '../../build/wrappers/LiquidatorProxyV1'; import { LiquidatorProxyV4WithGenericTrader } from '../../build/wrappers/LiquidatorProxyV4WithGenericTrader'; import { MultiCall } from '../../build/wrappers/MultiCall'; import { PayableProxy as PayableProxy } from '../../build/wrappers/PayableProxy'; import { PolynomialInterestSetter } from '../../build/wrappers/PolynomialInterestSetter'; import { SignedOperationProxy } from '../../build/wrappers/SignedOperationProxy'; import { TransferProxy } from '../../build/wrappers/TransferProxy'; import { WETH } from '../../build/wrappers/WETH'; import { address, ConfirmationType, ContractCallOptions, ContractConstantCallOptions, DolomiteMarginOptions, TxResult } from '../types'; export declare class Contracts { aaveCopyCatAltCoinInterestSetter: AAVECopyCatAltCoinInterestSetter; aaveCopyCatStableCoinInterestSetter: AAVECopyCatStableCoinInterestSetter; accountValuesReader: AccountValuesReader; arbitrumGasInfo: IArbitrumGasInfo; arbitrumMultiCall: ArbitrumMultiCall; borrowPositionProxyV1: BorrowPositionProxyV1; borrowPositionProxyV2: BorrowPositionProxyV2; chainlinkPriceOracleV1: ChainlinkPriceOracleV1; depositProxy: DepositWithdrawalProxy; dolomiteMargin: DolomiteMargin; doubleExponentInterestSetter: DoubleExponentInterestSetter; erc20: ERC20; expiry: Expiry; eventEmitterRegistry: EventEmitterRegistry; expiryProxy: ExpiryProxy; genericTraderProxyV1: GenericTraderProxyV1; interestSetter: InterestSetter; liquidatorAssetRegistry: LiquidatorAssetRegistry; liquidatorProxyV1: LiquidatorProxyV1; liquidatorProxyV4WithGenericTrader: LiquidatorProxyV4WithGenericTrader; mantleGasInfo: IMantleGasInfo; multiCall: MultiCall; payableProxy: PayableProxy; payableToken: WETH; polynomialInterestSetter: PolynomialInterestSetter; priceOracle: PriceOracle; signedOperationProxy: SignedOperationProxy; transferProxy: TransferProxy; protected provider: Provider; protected networkId: number; protected web3: Web3; protected blockGasLimit: number; protected readonly autoGasMultiplier: number; protected readonly defaultConfirmations: number; protected readonly confirmationType: ConfirmationType; protected readonly defaultGas: string | number; protected readonly defaultGasPrice: string | number; constructor(provider: Provider, networkId: number, web3: Web3, options: DolomiteMarginOptions); getNetworkId(): number; getIsolationModeUnwrapper(contractAddress: address): IIsolationModeUnwrapperTrader; getIsolationModeWrapper(contractAddress: address): IIsolationModeWrapperTrader; getOracleSentinel(contractAddress: address): IOracleSentinel; getAccountRiskOverrideSetter(contractAddress: address): IAccountRiskOverrideSetter; setProvider(provider: Provider, networkId: number): void; setDefaultAccount(account: address): void; callContractFunction<T>(method: TransactionObject<T>, options?: ContractCallOptions): Promise<TxResult>; callConstantContractFunction<T>(method: TransactionObject<T>, options?: ContractConstantCallOptions): Promise<T>; protected setContractProvider(contract: any, contractJson: any, provider: Provider, networkId: number, overrides: any): void; private setGasLimit; }