UNPKG

@dolomite-exchange/dolomite-margin

Version:

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

95 lines 6.14 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Admin = void 0; const Helpers_1 = require("../lib/Helpers"); class Admin { constructor(contracts) { this.contracts = contracts; } // ============ Token Functions ============ async withdrawExcessTokens(marketId, recipient, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerWithdrawExcessTokens(marketId.toFixed(0), recipient), options); } async withdrawUnsupportedTokens(token, recipient, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerWithdrawUnsupportedTokens(token, recipient), options); } // ============ Market Functions ============ async addMarket(token, priceOracle, interestSetter, marginPremium, spreadPremium, maxSupplyWei, maxBorrowWei, earningsRateOverride, isClosing, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerAddMarket(token, priceOracle, interestSetter, { value: Helpers_1.decimalToString(marginPremium) }, { value: Helpers_1.decimalToString(spreadPremium) }, maxSupplyWei.toFixed(0), maxBorrowWei.toFixed(0), { value: Helpers_1.decimalToString(earningsRateOverride) }, isClosing), options); } async setIsClosing(marketId, isClosing, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetIsClosing(marketId.toFixed(0), isClosing), options); } async setPriceOracle(marketId, oracle, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetPriceOracle(marketId.toFixed(0), oracle), options); } async setInterestSetter(marketId, interestSetter, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetInterestSetter(marketId.toFixed(0), interestSetter), options); } async setMarginPremium(marketId, marginPremium, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetMarginPremium(marketId.toFixed(0), { value: Helpers_1.decimalToString(marginPremium), }), options); } async setLiquidationSpreadPremium(marketId, spreadPremium, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetLiquidationSpreadPremium(marketId.toFixed(0), { value: Helpers_1.decimalToString(spreadPremium), }), options); } async setMaxSupplyWei(marketId, maxSupplyWei, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetMaxSupplyWei(marketId.toFixed(0), maxSupplyWei.toFixed(0)), options); } async setMaxBorrowWei(marketId, maxBorrowWei, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetMaxBorrowWei(marketId.toFixed(0), maxBorrowWei.toFixed(0)), options); } async setEarningsRateOverride(marketId, earningsRateOverride, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetEarningsRateOverride(marketId.toFixed(0), { value: Helpers_1.decimalToString(earningsRateOverride), }), options); } // ============ Risk Functions ============ async setMarginRatio(marginRatio, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetMarginRatio({ value: Helpers_1.decimalToString(marginRatio), }), options); } async setLiquidationSpread(spread, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetLiquidationSpread({ value: Helpers_1.decimalToString(spread), }), options); } async setEarningsRate(rate, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetEarningsRate({ value: Helpers_1.decimalToString(rate), }), options); } async setMinBorrowedValue(minBorrowedValue, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetMinBorrowedValue({ value: minBorrowedValue.toFixed(0), }), options); } async setAccountMaxNumberOfMarketsWithBalances(accountMaxNumberOfMarketsWithBalances, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetAccountMaxNumberOfMarketsWithBalances(accountMaxNumberOfMarketsWithBalances), options); } async setOracleSentinel(oracleSentinel, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetOracleSentinel(oracleSentinel), options); } async setCallbackGasLimit(callbackGasLimit, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetCallbackGasLimit(callbackGasLimit.toFixed()), options); } async setDefaultAccountRiskOverride(accountRiskOverrideSetter, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetDefaultAccountRiskOverride(accountRiskOverrideSetter), options); } async setAccountRiskOverride(accountOwner, accountRiskOverrideSetter, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetAccountRiskOverride(accountOwner, accountRiskOverrideSetter), options); } // ============ Global Operator Functions ============ async setGlobalOperator(operator, approved, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetGlobalOperator(operator, approved), options); } async setAutoTraderIsSpecial(autoTrader, isSpecial, options) { return this.contracts.callContractFunction(this.contracts.dolomiteMargin.methods.ownerSetAutoTraderSpecial(autoTrader, isSpecial), options); } } exports.Admin = Admin; //# sourceMappingURL=Admin.js.map