@sovryn-zero/lib-ethers
Version:
Sovryn Zero SDK Ethers-based implementation
721 lines (671 loc) • 78.4 kB
text/typescript
import { BigNumber, BigNumberish } from "@ethersproject/bignumber";
import { Log } from "@ethersproject/abstract-provider";
import { BytesLike } from "@ethersproject/bytes";
import {
Overrides,
CallOverrides,
PayableOverrides,
EventFilter
} from "@ethersproject/contracts";
import { _TypedLiquityContract, _TypedLogDescription } from "../src/contracts";
interface ActivePoolCalls {
NAME(_overrides?: CallOverrides): Promise<string>;
borrowerOperationsAddress(_overrides?: CallOverrides): Promise<string>;
defaultPoolAddress(_overrides?: CallOverrides): Promise<string>;
getETH(_overrides?: CallOverrides): Promise<BigNumber>;
getOwner(_overrides?: CallOverrides): Promise<string>;
getZUSDDebt(_overrides?: CallOverrides): Promise<BigNumber>;
stabilityPoolAddress(_overrides?: CallOverrides): Promise<string>;
troveManagerAddress(_overrides?: CallOverrides): Promise<string>;
}
interface ActivePoolTransactions {
decreaseZUSDDebt(_amount: BigNumberish, _overrides?: Overrides): Promise<void>;
increaseZUSDDebt(_amount: BigNumberish, _overrides?: Overrides): Promise<void>;
sendETH(_account: string, _amount: BigNumberish, _overrides?: Overrides): Promise<void>;
setAddresses(_borrowerOperationsAddress: string, _troveManagerAddress: string, _stabilityPoolAddress: string, _defaultPoolAddress: string, _overrides?: Overrides): Promise<void>;
setOwner(_owner: string, _overrides?: Overrides): Promise<void>;
}
export interface ActivePool
extends _TypedLiquityContract<ActivePoolCalls, ActivePoolTransactions> {
readonly address: string;
readonly filters: {
ActivePoolAddressChanged(_newActivePoolAddress?: null): EventFilter;
ActivePoolETHBalanceUpdated(_ETH?: null): EventFilter;
ActivePoolZUSDDebtUpdated(_ZUSDDebt?: null): EventFilter;
BorrowerOperationsAddressChanged(_newBorrowerOperationsAddress?: null): EventFilter;
DefaultPoolAddressChanged(_newDefaultPoolAddress?: null): EventFilter;
ETHBalanceUpdated(_newBalance?: null): EventFilter;
EtherSent(_to?: null, _amount?: null): EventFilter;
OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): EventFilter;
StabilityPoolAddressChanged(_newStabilityPoolAddress?: null): EventFilter;
TroveManagerAddressChanged(_newTroveManagerAddress?: null): EventFilter;
ZUSDBalanceUpdated(_newBalance?: null): EventFilter;
};
extractEvents(logs: Log[], name: "ActivePoolAddressChanged"): _TypedLogDescription<{ _newActivePoolAddress: string }>[];
extractEvents(logs: Log[], name: "ActivePoolETHBalanceUpdated"): _TypedLogDescription<{ _ETH: BigNumber }>[];
extractEvents(logs: Log[], name: "ActivePoolZUSDDebtUpdated"): _TypedLogDescription<{ _ZUSDDebt: BigNumber }>[];
extractEvents(logs: Log[], name: "BorrowerOperationsAddressChanged"): _TypedLogDescription<{ _newBorrowerOperationsAddress: string }>[];
extractEvents(logs: Log[], name: "DefaultPoolAddressChanged"): _TypedLogDescription<{ _newDefaultPoolAddress: string }>[];
extractEvents(logs: Log[], name: "ETHBalanceUpdated"): _TypedLogDescription<{ _newBalance: BigNumber }>[];
extractEvents(logs: Log[], name: "EtherSent"): _TypedLogDescription<{ _to: string; _amount: BigNumber }>[];
extractEvents(logs: Log[], name: "OwnershipTransferred"): _TypedLogDescription<{ previousOwner: string; newOwner: string }>[];
extractEvents(logs: Log[], name: "StabilityPoolAddressChanged"): _TypedLogDescription<{ _newStabilityPoolAddress: string }>[];
extractEvents(logs: Log[], name: "TroveManagerAddressChanged"): _TypedLogDescription<{ _newTroveManagerAddress: string }>[];
extractEvents(logs: Log[], name: "ZUSDBalanceUpdated"): _TypedLogDescription<{ _newBalance: BigNumber }>[];
}
interface BorrowerOperationsCalls {
BORROWING_FEE_FLOOR(_overrides?: CallOverrides): Promise<BigNumber>;
DECIMAL_PRECISION(_overrides?: CallOverrides): Promise<BigNumber>;
MIN_NET_DEBT(_overrides?: CallOverrides): Promise<BigNumber>;
NAME(_overrides?: CallOverrides): Promise<string>;
ZUSD_GAS_COMPENSATION(_overrides?: CallOverrides): Promise<BigNumber>;
_100pct(_overrides?: CallOverrides): Promise<BigNumber>;
activePool(_overrides?: CallOverrides): Promise<string>;
defaultPool(_overrides?: CallOverrides): Promise<string>;
feeDistributor(_overrides?: CallOverrides): Promise<string>;
getCompositeDebt(_debt: BigNumberish, _overrides?: CallOverrides): Promise<BigNumber>;
getEntireSystemColl(_overrides?: CallOverrides): Promise<BigNumber>;
getEntireSystemDebt(_overrides?: CallOverrides): Promise<BigNumber>;
getMassetManager(_overrides?: CallOverrides): Promise<string>;
getOwner(_overrides?: CallOverrides): Promise<string>;
liquityBaseParams(_overrides?: CallOverrides): Promise<string>;
massetManager(_overrides?: CallOverrides): Promise<string>;
priceFeed(_overrides?: CallOverrides): Promise<string>;
sortedTroves(_overrides?: CallOverrides): Promise<string>;
troveManager(_overrides?: CallOverrides): Promise<string>;
zeroStaking(_overrides?: CallOverrides): Promise<string>;
zeroStakingAddress(_overrides?: CallOverrides): Promise<string>;
zusdToken(_overrides?: CallOverrides): Promise<string>;
}
interface BorrowerOperationsTransactions {
addColl(_upperHint: string, _lowerHint: string, _overrides?: PayableOverrides): Promise<void>;
adjustNueTrove(_maxFeePercentage: BigNumberish, _collWithdrawal: BigNumberish, _ZUSDChange: BigNumberish, _isDebtIncrease: boolean, _upperHint: string, _lowerHint: string, _permitParams: { deadline: BigNumberish; v: BigNumberish; r: BytesLike; s: BytesLike }, _overrides?: PayableOverrides): Promise<void>;
adjustTrove(_maxFeePercentage: BigNumberish, _collWithdrawal: BigNumberish, _ZUSDChange: BigNumberish, _isDebtIncrease: boolean, _upperHint: string, _lowerHint: string, _overrides?: PayableOverrides): Promise<void>;
claimCollateral(_overrides?: Overrides): Promise<void>;
closeNueTrove(_permitParams: { deadline: BigNumberish; v: BigNumberish; r: BytesLike; s: BytesLike }, _overrides?: Overrides): Promise<void>;
closeTrove(_overrides?: Overrides): Promise<void>;
moveETHGainToTrove(_borrower: string, _upperHint: string, _lowerHint: string, _overrides?: PayableOverrides): Promise<void>;
openNueTrove(_maxFeePercentage: BigNumberish, _ZUSDAmount: BigNumberish, _upperHint: string, _lowerHint: string, _overrides?: PayableOverrides): Promise<void>;
openTrove(_maxFeePercentage: BigNumberish, _ZUSDAmount: BigNumberish, _upperHint: string, _lowerHint: string, _overrides?: PayableOverrides): Promise<void>;
repayZUSD(_ZUSDAmount: BigNumberish, _upperHint: string, _lowerHint: string, _overrides?: Overrides): Promise<void>;
repayZusdFromDLLR(_dllrAmount: BigNumberish, _upperHint: string, _lowerHint: string, _permitParams: { deadline: BigNumberish; v: BigNumberish; r: BytesLike; s: BytesLike }, _overrides?: Overrides): Promise<void>;
setAddresses(_feeDistributorAddress: string, _liquityBaseParamsAddress: string, _troveManagerAddress: string, _activePoolAddress: string, _defaultPoolAddress: string, _stabilityPoolAddress: string, _gasPoolAddress: string, _collSurplusPoolAddress: string, _priceFeedAddress: string, _sortedTrovesAddress: string, _zusdTokenAddress: string, _zeroStakingAddress: string, _overrides?: Overrides): Promise<void>;
setMassetManagerAddress(_massetManagerAddress: string, _overrides?: Overrides): Promise<void>;
setOwner(_owner: string, _overrides?: Overrides): Promise<void>;
withdrawColl(_collWithdrawal: BigNumberish, _upperHint: string, _lowerHint: string, _overrides?: Overrides): Promise<void>;
withdrawZUSD(_maxFeePercentage: BigNumberish, _ZUSDAmount: BigNumberish, _upperHint: string, _lowerHint: string, _overrides?: Overrides): Promise<void>;
withdrawZusdAndConvertToDLLR(_maxFeePercentage: BigNumberish, _ZUSDAmount: BigNumberish, _upperHint: string, _lowerHint: string, _overrides?: Overrides): Promise<BigNumber>;
}
export interface BorrowerOperations
extends _TypedLiquityContract<BorrowerOperationsCalls, BorrowerOperationsTransactions> {
readonly address: string;
readonly filters: {
ActivePoolAddressChanged(_activePoolAddress?: null): EventFilter;
CollSurplusPoolAddressChanged(_collSurplusPoolAddress?: null): EventFilter;
DefaultPoolAddressChanged(_defaultPoolAddress?: null): EventFilter;
FeeDistributorAddressChanged(_feeDistributorAddress?: null): EventFilter;
GasPoolAddressChanged(_gasPoolAddress?: null): EventFilter;
MassetManagerAddressChanged(_massetManagerAddress?: null): EventFilter;
OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): EventFilter;
PriceFeedAddressChanged(_newPriceFeedAddress?: null): EventFilter;
SortedTrovesAddressChanged(_sortedTrovesAddress?: null): EventFilter;
StabilityPoolAddressChanged(_stabilityPoolAddress?: null): EventFilter;
TroveCreated(_borrower?: string | null, arrayIndex?: null): EventFilter;
TroveManagerAddressChanged(_newTroveManagerAddress?: null): EventFilter;
TroveUpdated(_borrower?: string | null, _debt?: null, _coll?: null, stake?: null, operation?: null): EventFilter;
ZEROStakingAddressChanged(_zeroStakingAddress?: null): EventFilter;
ZUSDBorrowingFeePaid(_borrower?: string | null, _ZUSDFee?: null): EventFilter;
ZUSDTokenAddressChanged(_zusdTokenAddress?: null): EventFilter;
};
extractEvents(logs: Log[], name: "ActivePoolAddressChanged"): _TypedLogDescription<{ _activePoolAddress: string }>[];
extractEvents(logs: Log[], name: "CollSurplusPoolAddressChanged"): _TypedLogDescription<{ _collSurplusPoolAddress: string }>[];
extractEvents(logs: Log[], name: "DefaultPoolAddressChanged"): _TypedLogDescription<{ _defaultPoolAddress: string }>[];
extractEvents(logs: Log[], name: "FeeDistributorAddressChanged"): _TypedLogDescription<{ _feeDistributorAddress: string }>[];
extractEvents(logs: Log[], name: "GasPoolAddressChanged"): _TypedLogDescription<{ _gasPoolAddress: string }>[];
extractEvents(logs: Log[], name: "MassetManagerAddressChanged"): _TypedLogDescription<{ _massetManagerAddress: string }>[];
extractEvents(logs: Log[], name: "OwnershipTransferred"): _TypedLogDescription<{ previousOwner: string; newOwner: string }>[];
extractEvents(logs: Log[], name: "PriceFeedAddressChanged"): _TypedLogDescription<{ _newPriceFeedAddress: string }>[];
extractEvents(logs: Log[], name: "SortedTrovesAddressChanged"): _TypedLogDescription<{ _sortedTrovesAddress: string }>[];
extractEvents(logs: Log[], name: "StabilityPoolAddressChanged"): _TypedLogDescription<{ _stabilityPoolAddress: string }>[];
extractEvents(logs: Log[], name: "TroveCreated"): _TypedLogDescription<{ _borrower: string; arrayIndex: BigNumber }>[];
extractEvents(logs: Log[], name: "TroveManagerAddressChanged"): _TypedLogDescription<{ _newTroveManagerAddress: string }>[];
extractEvents(logs: Log[], name: "TroveUpdated"): _TypedLogDescription<{ _borrower: string; _debt: BigNumber; _coll: BigNumber; stake: BigNumber; operation: number }>[];
extractEvents(logs: Log[], name: "ZEROStakingAddressChanged"): _TypedLogDescription<{ _zeroStakingAddress: string }>[];
extractEvents(logs: Log[], name: "ZUSDBorrowingFeePaid"): _TypedLogDescription<{ _borrower: string; _ZUSDFee: BigNumber }>[];
extractEvents(logs: Log[], name: "ZUSDTokenAddressChanged"): _TypedLogDescription<{ _zusdTokenAddress: string }>[];
}
interface CollSurplusPoolCalls {
NAME(_overrides?: CallOverrides): Promise<string>;
activePoolAddress(_overrides?: CallOverrides): Promise<string>;
borrowerOperationsAddress(_overrides?: CallOverrides): Promise<string>;
getCollateral(_account: string, _overrides?: CallOverrides): Promise<BigNumber>;
getETH(_overrides?: CallOverrides): Promise<BigNumber>;
getOwner(_overrides?: CallOverrides): Promise<string>;
troveManagerAddress(_overrides?: CallOverrides): Promise<string>;
}
interface CollSurplusPoolTransactions {
accountSurplus(_account: string, _amount: BigNumberish, _overrides?: Overrides): Promise<void>;
claimColl(_account: string, _overrides?: Overrides): Promise<void>;
setAddresses(_borrowerOperationsAddress: string, _troveManagerAddress: string, _activePoolAddress: string, _overrides?: Overrides): Promise<void>;
setOwner(_owner: string, _overrides?: Overrides): Promise<void>;
}
export interface CollSurplusPool
extends _TypedLiquityContract<CollSurplusPoolCalls, CollSurplusPoolTransactions> {
readonly address: string;
readonly filters: {
ActivePoolAddressChanged(_newActivePoolAddress?: null): EventFilter;
BorrowerOperationsAddressChanged(_newBorrowerOperationsAddress?: null): EventFilter;
CollBalanceUpdated(_account?: string | null, _newBalance?: null): EventFilter;
EtherSent(_to?: null, _amount?: null): EventFilter;
OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): EventFilter;
TroveManagerAddressChanged(_newTroveManagerAddress?: null): EventFilter;
};
extractEvents(logs: Log[], name: "ActivePoolAddressChanged"): _TypedLogDescription<{ _newActivePoolAddress: string }>[];
extractEvents(logs: Log[], name: "BorrowerOperationsAddressChanged"): _TypedLogDescription<{ _newBorrowerOperationsAddress: string }>[];
extractEvents(logs: Log[], name: "CollBalanceUpdated"): _TypedLogDescription<{ _account: string; _newBalance: BigNumber }>[];
extractEvents(logs: Log[], name: "EtherSent"): _TypedLogDescription<{ _to: string; _amount: BigNumber }>[];
extractEvents(logs: Log[], name: "OwnershipTransferred"): _TypedLogDescription<{ previousOwner: string; newOwner: string }>[];
extractEvents(logs: Log[], name: "TroveManagerAddressChanged"): _TypedLogDescription<{ _newTroveManagerAddress: string }>[];
}
interface CommunityIssuanceCalls {
APR(_overrides?: CallOverrides): Promise<BigNumber>;
DECIMAL_PRECISION(_overrides?: CallOverrides): Promise<BigNumber>;
NAME(_overrides?: CallOverrides): Promise<string>;
getOwner(_overrides?: CallOverrides): Promise<string>;
lastIssuanceTime(_overrides?: CallOverrides): Promise<BigNumber>;
priceFeed(_overrides?: CallOverrides): Promise<string>;
rewardManager(_overrides?: CallOverrides): Promise<string>;
sovToken(_overrides?: CallOverrides): Promise<string>;
stabilityPoolAddress(_overrides?: CallOverrides): Promise<string>;
totalSOVIssued(_overrides?: CallOverrides): Promise<BigNumber>;
zusdToken(_overrides?: CallOverrides): Promise<string>;
}
interface CommunityIssuanceTransactions {
initialize(_sovTokenAddress: string, _zusdTokenAddress: string, _stabilityPoolAddress: string, _priceFeed: string, _APR: BigNumberish, _overrides?: Overrides): Promise<void>;
issueSOV(_totalZUSDDeposits: BigNumberish, _overrides?: Overrides): Promise<BigNumber>;
sendSOV(_account: string, _SOVamount: BigNumberish, _overrides?: Overrides): Promise<void>;
setAPR(_APR: BigNumberish, _overrides?: Overrides): Promise<void>;
setOwner(_owner: string, _overrides?: Overrides): Promise<void>;
setPriceFeed(_priceFeedAddress: string, _overrides?: Overrides): Promise<void>;
setRewardManager(_rewardManagerAddress: string, _overrides?: Overrides): Promise<void>;
}
export interface CommunityIssuance
extends _TypedLiquityContract<CommunityIssuanceCalls, CommunityIssuanceTransactions> {
readonly address: string;
readonly filters: {
APRSet(_APR?: null): EventFilter;
OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): EventFilter;
PriceFeedAddressSet(_priceFeed?: null): EventFilter;
RewardManagerAddressSet(_rewardManagerAddress?: null): EventFilter;
SOVTokenAddressSet(_sovTokenAddress?: null): EventFilter;
StabilityPoolAddressSet(_stabilityPoolAddress?: null): EventFilter;
TotalSOVIssuedUpdated(_latestSOVIssued?: null): EventFilter;
ZUSDTokenAddressSet(_zusdTokenAddress?: null): EventFilter;
};
extractEvents(logs: Log[], name: "APRSet"): _TypedLogDescription<{ _APR: BigNumber }>[];
extractEvents(logs: Log[], name: "OwnershipTransferred"): _TypedLogDescription<{ previousOwner: string; newOwner: string }>[];
extractEvents(logs: Log[], name: "PriceFeedAddressSet"): _TypedLogDescription<{ _priceFeed: string }>[];
extractEvents(logs: Log[], name: "RewardManagerAddressSet"): _TypedLogDescription<{ _rewardManagerAddress: string }>[];
extractEvents(logs: Log[], name: "SOVTokenAddressSet"): _TypedLogDescription<{ _sovTokenAddress: string }>[];
extractEvents(logs: Log[], name: "StabilityPoolAddressSet"): _TypedLogDescription<{ _stabilityPoolAddress: string }>[];
extractEvents(logs: Log[], name: "TotalSOVIssuedUpdated"): _TypedLogDescription<{ _latestSOVIssued: BigNumber }>[];
extractEvents(logs: Log[], name: "ZUSDTokenAddressSet"): _TypedLogDescription<{ _zusdTokenAddress: string }>[];
}
interface DefaultPoolCalls {
NAME(_overrides?: CallOverrides): Promise<string>;
activePoolAddress(_overrides?: CallOverrides): Promise<string>;
getETH(_overrides?: CallOverrides): Promise<BigNumber>;
getOwner(_overrides?: CallOverrides): Promise<string>;
getZUSDDebt(_overrides?: CallOverrides): Promise<BigNumber>;
troveManagerAddress(_overrides?: CallOverrides): Promise<string>;
}
interface DefaultPoolTransactions {
decreaseZUSDDebt(_amount: BigNumberish, _overrides?: Overrides): Promise<void>;
increaseZUSDDebt(_amount: BigNumberish, _overrides?: Overrides): Promise<void>;
sendETHToActivePool(_amount: BigNumberish, _overrides?: Overrides): Promise<void>;
setAddresses(_troveManagerAddress: string, _activePoolAddress: string, _overrides?: Overrides): Promise<void>;
setOwner(_owner: string, _overrides?: Overrides): Promise<void>;
}
export interface DefaultPool
extends _TypedLiquityContract<DefaultPoolCalls, DefaultPoolTransactions> {
readonly address: string;
readonly filters: {
ActivePoolAddressChanged(_newActivePoolAddress?: null): EventFilter;
DefaultPoolAddressChanged(_newDefaultPoolAddress?: null): EventFilter;
DefaultPoolETHBalanceUpdated(_ETH?: null): EventFilter;
DefaultPoolZUSDDebtUpdated(_ZUSDDebt?: null): EventFilter;
ETHBalanceUpdated(_newBalance?: null): EventFilter;
EtherSent(_to?: null, _amount?: null): EventFilter;
OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): EventFilter;
StabilityPoolAddressChanged(_newStabilityPoolAddress?: null): EventFilter;
TroveManagerAddressChanged(_newTroveManagerAddress?: null): EventFilter;
ZUSDBalanceUpdated(_newBalance?: null): EventFilter;
};
extractEvents(logs: Log[], name: "ActivePoolAddressChanged"): _TypedLogDescription<{ _newActivePoolAddress: string }>[];
extractEvents(logs: Log[], name: "DefaultPoolAddressChanged"): _TypedLogDescription<{ _newDefaultPoolAddress: string }>[];
extractEvents(logs: Log[], name: "DefaultPoolETHBalanceUpdated"): _TypedLogDescription<{ _ETH: BigNumber }>[];
extractEvents(logs: Log[], name: "DefaultPoolZUSDDebtUpdated"): _TypedLogDescription<{ _ZUSDDebt: BigNumber }>[];
extractEvents(logs: Log[], name: "ETHBalanceUpdated"): _TypedLogDescription<{ _newBalance: BigNumber }>[];
extractEvents(logs: Log[], name: "EtherSent"): _TypedLogDescription<{ _to: string; _amount: BigNumber }>[];
extractEvents(logs: Log[], name: "OwnershipTransferred"): _TypedLogDescription<{ previousOwner: string; newOwner: string }>[];
extractEvents(logs: Log[], name: "StabilityPoolAddressChanged"): _TypedLogDescription<{ _newStabilityPoolAddress: string }>[];
extractEvents(logs: Log[], name: "TroveManagerAddressChanged"): _TypedLogDescription<{ _newTroveManagerAddress: string }>[];
extractEvents(logs: Log[], name: "ZUSDBalanceUpdated"): _TypedLogDescription<{ _newBalance: BigNumber }>[];
}
interface GasPoolCalls {
}
interface GasPoolTransactions {
}
export interface GasPool
extends _TypedLiquityContract<GasPoolCalls, GasPoolTransactions> {
readonly address: string;
readonly filters: {
};
}
interface HintHelpersCalls {
DECIMAL_PRECISION(_overrides?: CallOverrides): Promise<BigNumber>;
MIN_NET_DEBT(_overrides?: CallOverrides): Promise<BigNumber>;
NAME(_overrides?: CallOverrides): Promise<string>;
ZUSD_GAS_COMPENSATION(_overrides?: CallOverrides): Promise<BigNumber>;
_100pct(_overrides?: CallOverrides): Promise<BigNumber>;
activePool(_overrides?: CallOverrides): Promise<string>;
computeCR(_coll: BigNumberish, _debt: BigNumberish, _price: BigNumberish, _overrides?: CallOverrides): Promise<BigNumber>;
computeNominalCR(_coll: BigNumberish, _debt: BigNumberish, _overrides?: CallOverrides): Promise<BigNumber>;
defaultPool(_overrides?: CallOverrides): Promise<string>;
getApproxHint(_CR: BigNumberish, _numTrials: BigNumberish, _inputRandomSeed: BigNumberish, _overrides?: CallOverrides): Promise<{ hintAddress: string; diff: BigNumber; latestRandomSeed: BigNumber }>;
getEntireSystemColl(_overrides?: CallOverrides): Promise<BigNumber>;
getEntireSystemDebt(_overrides?: CallOverrides): Promise<BigNumber>;
getOwner(_overrides?: CallOverrides): Promise<string>;
getRedemptionHints(_ZUSDamount: BigNumberish, _price: BigNumberish, _maxIterations: BigNumberish, _overrides?: CallOverrides): Promise<{ firstRedemptionHint: string; partialRedemptionHintNICR: BigNumber; truncatedZUSDamount: BigNumber }>;
liquityBaseParams(_overrides?: CallOverrides): Promise<string>;
priceFeed(_overrides?: CallOverrides): Promise<string>;
sortedTroves(_overrides?: CallOverrides): Promise<string>;
troveManager(_overrides?: CallOverrides): Promise<string>;
}
interface HintHelpersTransactions {
setAddresses(_liquityBaseParamsAddress: string, _sortedTrovesAddress: string, _troveManagerAddress: string, _overrides?: Overrides): Promise<void>;
setOwner(_owner: string, _overrides?: Overrides): Promise<void>;
}
export interface HintHelpers
extends _TypedLiquityContract<HintHelpersCalls, HintHelpersTransactions> {
readonly address: string;
readonly filters: {
OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): EventFilter;
SortedTrovesAddressChanged(_sortedTrovesAddress?: null): EventFilter;
TroveManagerAddressChanged(_troveManagerAddress?: null): EventFilter;
};
extractEvents(logs: Log[], name: "OwnershipTransferred"): _TypedLogDescription<{ previousOwner: string; newOwner: string }>[];
extractEvents(logs: Log[], name: "SortedTrovesAddressChanged"): _TypedLogDescription<{ _sortedTrovesAddress: string }>[];
extractEvents(logs: Log[], name: "TroveManagerAddressChanged"): _TypedLogDescription<{ _troveManagerAddress: string }>[];
}
interface IERC20Calls {
allowance(owner: string, spender: string, _overrides?: CallOverrides): Promise<BigNumber>;
balanceOf(account: string, _overrides?: CallOverrides): Promise<BigNumber>;
decimals(_overrides?: CallOverrides): Promise<number>;
name(_overrides?: CallOverrides): Promise<string>;
symbol(_overrides?: CallOverrides): Promise<string>;
totalSupply(_overrides?: CallOverrides): Promise<BigNumber>;
}
interface IERC20Transactions {
approve(spender: string, amount: BigNumberish, _overrides?: Overrides): Promise<boolean>;
decreaseAllowance(spender: string, subtractedValue: BigNumberish, _overrides?: Overrides): Promise<boolean>;
increaseAllowance(spender: string, addedValue: BigNumberish, _overrides?: Overrides): Promise<boolean>;
transfer(recipient: string, amount: BigNumberish, _overrides?: Overrides): Promise<boolean>;
transferFrom(sender: string, recipient: string, amount: BigNumberish, _overrides?: Overrides): Promise<boolean>;
}
export interface IERC20
extends _TypedLiquityContract<IERC20Calls, IERC20Transactions> {
readonly address: string;
readonly filters: {
Approval(owner?: string | null, spender?: string | null, value?: null): EventFilter;
Transfer(from?: string | null, to?: string | null, value?: null): EventFilter;
};
extractEvents(logs: Log[], name: "Approval"): _TypedLogDescription<{ owner: string; spender: string; value: BigNumber }>[];
extractEvents(logs: Log[], name: "Transfer"): _TypedLogDescription<{ from: string; to: string; value: BigNumber }>[];
}
interface ZUSDTokenCalls {
allowance(owner: string, spender: string, _overrides?: CallOverrides): Promise<BigNumber>;
balanceOf(account: string, _overrides?: CallOverrides): Promise<BigNumber>;
decimals(_overrides?: CallOverrides): Promise<number>;
domainSeparator(_overrides?: CallOverrides): Promise<string>;
getOwner(_overrides?: CallOverrides): Promise<string>;
name(_overrides?: CallOverrides): Promise<string>;
nonces(owner: string, _overrides?: CallOverrides): Promise<BigNumber>;
permitTypeHash(_overrides?: CallOverrides): Promise<string>;
symbol(_overrides?: CallOverrides): Promise<string>;
totalSupply(_overrides?: CallOverrides): Promise<BigNumber>;
version(_overrides?: CallOverrides): Promise<string>;
}
interface ZUSDTokenTransactions {
approve(spender: string, amount: BigNumberish, _overrides?: Overrides): Promise<boolean>;
burn(_account: string, _amount: BigNumberish, _overrides?: Overrides): Promise<void>;
decreaseAllowance(spender: string, subtractedValue: BigNumberish, _overrides?: Overrides): Promise<boolean>;
increaseAllowance(spender: string, addedValue: BigNumberish, _overrides?: Overrides): Promise<boolean>;
initialize(_troveManagerAddress: string, _stabilityPoolAddress: string, _borrowerOperationsAddress: string, _overrides?: Overrides): Promise<void>;
mint(_account: string, _amount: BigNumberish, _overrides?: Overrides): Promise<void>;
permit(owner: string, spender: string, amount: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, _overrides?: Overrides): Promise<void>;
returnFromPool(_poolAddress: string, _receiver: string, _amount: BigNumberish, _overrides?: Overrides): Promise<void>;
sendToPool(_sender: string, _poolAddress: string, _amount: BigNumberish, _overrides?: Overrides): Promise<void>;
setOwner(_owner: string, _overrides?: Overrides): Promise<void>;
transfer(recipient: string, amount: BigNumberish, _overrides?: Overrides): Promise<boolean>;
transferFrom(sender: string, recipient: string, amount: BigNumberish, _overrides?: Overrides): Promise<boolean>;
}
export interface ZUSDToken
extends _TypedLiquityContract<ZUSDTokenCalls, ZUSDTokenTransactions> {
readonly address: string;
readonly filters: {
Approval(owner?: string | null, spender?: string | null, value?: null): EventFilter;
BorrowerOperationsAddressChanged(_newBorrowerOperationsAddress?: null): EventFilter;
OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): EventFilter;
StabilityPoolAddressChanged(_newStabilityPoolAddress?: null): EventFilter;
Transfer(from?: string | null, to?: string | null, value?: null): EventFilter;
TroveManagerAddressChanged(_troveManagerAddress?: null): EventFilter;
ZUSDTokenBalanceUpdated(_user?: null, _amount?: null): EventFilter;
};
extractEvents(logs: Log[], name: "Approval"): _TypedLogDescription<{ owner: string; spender: string; value: BigNumber }>[];
extractEvents(logs: Log[], name: "BorrowerOperationsAddressChanged"): _TypedLogDescription<{ _newBorrowerOperationsAddress: string }>[];
extractEvents(logs: Log[], name: "OwnershipTransferred"): _TypedLogDescription<{ previousOwner: string; newOwner: string }>[];
extractEvents(logs: Log[], name: "StabilityPoolAddressChanged"): _TypedLogDescription<{ _newStabilityPoolAddress: string }>[];
extractEvents(logs: Log[], name: "Transfer"): _TypedLogDescription<{ from: string; to: string; value: BigNumber }>[];
extractEvents(logs: Log[], name: "TroveManagerAddressChanged"): _TypedLogDescription<{ _troveManagerAddress: string }>[];
extractEvents(logs: Log[], name: "ZUSDTokenBalanceUpdated"): _TypedLogDescription<{ _user: string; _amount: BigNumber }>[];
}
interface ZEROStakingCalls {
DECIMAL_PRECISION(_overrides?: CallOverrides): Promise<BigNumber>;
F_ETH(_overrides?: CallOverrides): Promise<BigNumber>;
F_ZUSD(_overrides?: CallOverrides): Promise<BigNumber>;
NAME(_overrides?: CallOverrides): Promise<string>;
activePoolAddress(_overrides?: CallOverrides): Promise<string>;
feeDistributorAddress(_overrides?: CallOverrides): Promise<string>;
getOwner(_overrides?: CallOverrides): Promise<string>;
getPendingETHGain(_user: string, _overrides?: CallOverrides): Promise<BigNumber>;
getPendingZUSDGain(_user: string, _overrides?: CallOverrides): Promise<BigNumber>;
snapshots(arg0: string, _overrides?: CallOverrides): Promise<{ F_ETH_Snapshot: BigNumber; F_ZUSD_Snapshot: BigNumber }>;
stakes(arg0: string, _overrides?: CallOverrides): Promise<BigNumber>;
totalZEROStaked(_overrides?: CallOverrides): Promise<BigNumber>;
zeroToken(_overrides?: CallOverrides): Promise<string>;
zusdToken(_overrides?: CallOverrides): Promise<string>;
}
interface ZEROStakingTransactions {
increaseF_ETH(_ETHFee: BigNumberish, _overrides?: Overrides): Promise<void>;
increaseF_ZUSD(_ZUSDFee: BigNumberish, _overrides?: Overrides): Promise<void>;
setAddresses(_zeroTokenAddress: string, _zusdTokenAddress: string, _feeDistributorAddress: string, _activePoolAddress: string, _overrides?: Overrides): Promise<void>;
setOwner(_owner: string, _overrides?: Overrides): Promise<void>;
stake(_ZEROamount: BigNumberish, _overrides?: Overrides): Promise<void>;
unstake(_ZEROamount: BigNumberish, _overrides?: Overrides): Promise<void>;
}
export interface ZEROStaking
extends _TypedLiquityContract<ZEROStakingCalls, ZEROStakingTransactions> {
readonly address: string;
readonly filters: {
ActivePoolAddressSet(_activePoolAddress?: null): EventFilter;
EtherSent(_account?: null, _amount?: null): EventFilter;
F_ETHUpdated(_F_ETH?: null): EventFilter;
F_ZUSDUpdated(_F_ZUSD?: null): EventFilter;
FeeDistributorAddressAddressSet(_feeDistributorAddress?: null): EventFilter;
FeeDistributorAddressSet(_feeDistributorAddress?: null): EventFilter;
OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): EventFilter;
StakeChanged(staker?: string | null, newStake?: null): EventFilter;
StakerSnapshotsUpdated(_staker?: null, _F_ETH?: null, _F_ZUSD?: null): EventFilter;
StakingGainsWithdrawn(staker?: string | null, ZUSDGain?: null, ETHGain?: null): EventFilter;
TotalZEROStakedUpdated(_totalZEROStaked?: null): EventFilter;
ZEROTokenAddressSet(_zeroTokenAddress?: null): EventFilter;
ZUSDTokenAddressSet(_zusdTokenAddress?: null): EventFilter;
};
extractEvents(logs: Log[], name: "ActivePoolAddressSet"): _TypedLogDescription<{ _activePoolAddress: string }>[];
extractEvents(logs: Log[], name: "EtherSent"): _TypedLogDescription<{ _account: string; _amount: BigNumber }>[];
extractEvents(logs: Log[], name: "F_ETHUpdated"): _TypedLogDescription<{ _F_ETH: BigNumber }>[];
extractEvents(logs: Log[], name: "F_ZUSDUpdated"): _TypedLogDescription<{ _F_ZUSD: BigNumber }>[];
extractEvents(logs: Log[], name: "FeeDistributorAddressAddressSet"): _TypedLogDescription<{ _feeDistributorAddress: string }>[];
extractEvents(logs: Log[], name: "FeeDistributorAddressSet"): _TypedLogDescription<{ _feeDistributorAddress: string }>[];
extractEvents(logs: Log[], name: "OwnershipTransferred"): _TypedLogDescription<{ previousOwner: string; newOwner: string }>[];
extractEvents(logs: Log[], name: "StakeChanged"): _TypedLogDescription<{ staker: string; newStake: BigNumber }>[];
extractEvents(logs: Log[], name: "StakerSnapshotsUpdated"): _TypedLogDescription<{ _staker: string; _F_ETH: BigNumber; _F_ZUSD: BigNumber }>[];
extractEvents(logs: Log[], name: "StakingGainsWithdrawn"): _TypedLogDescription<{ staker: string; ZUSDGain: BigNumber; ETHGain: BigNumber }>[];
extractEvents(logs: Log[], name: "TotalZEROStakedUpdated"): _TypedLogDescription<{ _totalZEROStaked: BigNumber }>[];
extractEvents(logs: Log[], name: "ZEROTokenAddressSet"): _TypedLogDescription<{ _zeroTokenAddress: string }>[];
extractEvents(logs: Log[], name: "ZUSDTokenAddressSet"): _TypedLogDescription<{ _zusdTokenAddress: string }>[];
}
interface ZEROTokenCalls {
ONE_YEAR_IN_SECONDS(_overrides?: CallOverrides): Promise<BigNumber>;
allowance(owner: string, spender: string, _overrides?: CallOverrides): Promise<BigNumber>;
balanceOf(account: string, _overrides?: CallOverrides): Promise<BigNumber>;
decimals(_overrides?: CallOverrides): Promise<number>;
domainSeparator(_overrides?: CallOverrides): Promise<string>;
getDeploymentStartTime(_overrides?: CallOverrides): Promise<BigNumber>;
marketMakerAddress(_overrides?: CallOverrides): Promise<string>;
name(_overrides?: CallOverrides): Promise<string>;
nonces(owner: string, _overrides?: CallOverrides): Promise<BigNumber>;
permitTypeHash(_overrides?: CallOverrides): Promise<string>;
presale(_overrides?: CallOverrides): Promise<string>;
symbol(_overrides?: CallOverrides): Promise<string>;
totalSupply(_overrides?: CallOverrides): Promise<BigNumber>;
version(_overrides?: CallOverrides): Promise<string>;
zeroStakingAddress(_overrides?: CallOverrides): Promise<string>;
}
interface ZEROTokenTransactions {
approve(spender: string, amount: BigNumberish, _overrides?: Overrides): Promise<boolean>;
burn(account: string, amount: BigNumberish, _overrides?: Overrides): Promise<void>;
decreaseAllowance(spender: string, subtractedValue: BigNumberish, _overrides?: Overrides): Promise<boolean>;
increaseAllowance(spender: string, addedValue: BigNumberish, _overrides?: Overrides): Promise<boolean>;
initialize(_zeroStakingAddress: string, _marketMakerAddress: string, _presaleAddress: string, _overrides?: Overrides): Promise<void>;
mint(account: string, amount: BigNumberish, _overrides?: Overrides): Promise<void>;
permit(owner: string, spender: string, amount: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, _overrides?: Overrides): Promise<void>;
sendToZEROStaking(_sender: string, _amount: BigNumberish, _overrides?: Overrides): Promise<void>;
transfer(recipient: string, amount: BigNumberish, _overrides?: Overrides): Promise<boolean>;
transferFrom(sender: string, recipient: string, amount: BigNumberish, _overrides?: Overrides): Promise<boolean>;
}
export interface ZEROToken
extends _TypedLiquityContract<ZEROTokenCalls, ZEROTokenTransactions> {
readonly address: string;
readonly filters: {
Approval(owner?: string | null, spender?: string | null, value?: null): EventFilter;
Transfer(from?: string | null, to?: string | null, value?: null): EventFilter;
};
extractEvents(logs: Log[], name: "Approval"): _TypedLogDescription<{ owner: string; spender: string; value: BigNumber }>[];
extractEvents(logs: Log[], name: "Transfer"): _TypedLogDescription<{ from: string; to: string; value: BigNumber }>[];
}
interface MultiTroveGetterCalls {
getMultipleSortedTroves(_startIdx: BigNumberish, _count: BigNumberish, _overrides?: CallOverrides): Promise<{ owner: string; debt: BigNumber; coll: BigNumber; stake: BigNumber; snapshotETH: BigNumber; snapshotZUSDDebt: BigNumber }[]>;
getOwner(_overrides?: CallOverrides): Promise<string>;
sortedTroves(_overrides?: CallOverrides): Promise<string>;
troveManager(_overrides?: CallOverrides): Promise<string>;
}
interface MultiTroveGetterTransactions {
setAddresses(_troveManager: string, _sortedTroves: string, _overrides?: Overrides): Promise<void>;
setOwner(_owner: string, _overrides?: Overrides): Promise<void>;
}
export interface MultiTroveGetter
extends _TypedLiquityContract<MultiTroveGetterCalls, MultiTroveGetterTransactions> {
readonly address: string;
readonly filters: {
OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): EventFilter;
};
extractEvents(logs: Log[], name: "OwnershipTransferred"): _TypedLogDescription<{ previousOwner: string; newOwner: string }>[];
}
interface PriceFeedCalls {
NAME(_overrides?: CallOverrides): Promise<string>;
getOwner(_overrides?: CallOverrides): Promise<string>;
lastGoodPrice(_overrides?: CallOverrides): Promise<BigNumber>;
}
interface PriceFeedTransactions {
fetchPrice(_overrides?: Overrides): Promise<BigNumber>;
setAddress(_index: BigNumberish, _newPriceFeed: string, _overrides?: Overrides): Promise<BigNumber>;
setAddresses(_mainPriceFeed: string, _backupPriceFeed: string, _overrides?: Overrides): Promise<void>;
setOwner(_owner: string, _overrides?: Overrides): Promise<void>;
}
export interface PriceFeed
extends _TypedLiquityContract<PriceFeedCalls, PriceFeedTransactions> {
readonly address: string;
readonly filters: {
LastGoodPriceUpdated(_lastGoodPrice?: null): EventFilter;
OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): EventFilter;
PriceFeedBroken(index?: null, priceFeedAddress?: null): EventFilter;
PriceFeedUpdated(index?: null, newPriceFeedAddress?: null): EventFilter;
};
extractEvents(logs: Log[], name: "LastGoodPriceUpdated"): _TypedLogDescription<{ _lastGoodPrice: BigNumber }>[];
extractEvents(logs: Log[], name: "OwnershipTransferred"): _TypedLogDescription<{ previousOwner: string; newOwner: string }>[];
extractEvents(logs: Log[], name: "PriceFeedBroken"): _TypedLogDescription<{ index: number; priceFeedAddress: string }>[];
extractEvents(logs: Log[], name: "PriceFeedUpdated"): _TypedLogDescription<{ index: number; newPriceFeedAddress: string }>[];
}
interface PriceFeedTestnetCalls {
getPrice(_overrides?: CallOverrides): Promise<BigNumber>;
}
interface PriceFeedTestnetTransactions {
fetchPrice(_overrides?: Overrides): Promise<BigNumber>;
setPrice(price: BigNumberish, _overrides?: Overrides): Promise<boolean>;
}
export interface PriceFeedTestnet
extends _TypedLiquityContract<PriceFeedTestnetCalls, PriceFeedTestnetTransactions> {
readonly address: string;
readonly filters: {
LastGoodPriceUpdated(_lastGoodPrice?: null): EventFilter;
};
extractEvents(logs: Log[], name: "LastGoodPriceUpdated"): _TypedLogDescription<{ _lastGoodPrice: BigNumber }>[];
}
interface SortedTrovesCalls {
NAME(_overrides?: CallOverrides): Promise<string>;
borrowerOperationsAddress(_overrides?: CallOverrides): Promise<string>;
contains(_id: string, _overrides?: CallOverrides): Promise<boolean>;
data(_overrides?: CallOverrides): Promise<{ head: string; tail: string; maxSize: BigNumber; size: BigNumber }>;
findInsertPosition(_NICR: BigNumberish, _prevId: string, _nextId: string, _overrides?: CallOverrides): Promise<[string, string]>;
getFirst(_overrides?: CallOverrides): Promise<string>;
getLast(_overrides?: CallOverrides): Promise<string>;
getMaxSize(_overrides?: CallOverrides): Promise<BigNumber>;
getNext(_id: string, _overrides?: CallOverrides): Promise<string>;
getOwner(_overrides?: CallOverrides): Promise<string>;
getPrev(_id: string, _overrides?: CallOverrides): Promise<string>;
getSize(_overrides?: CallOverrides): Promise<BigNumber>;
isEmpty(_overrides?: CallOverrides): Promise<boolean>;
isFull(_overrides?: CallOverrides): Promise<boolean>;
troveManager(_overrides?: CallOverrides): Promise<string>;
validInsertPosition(_NICR: BigNumberish, _prevId: string, _nextId: string, _overrides?: CallOverrides): Promise<boolean>;
}
interface SortedTrovesTransactions {
insert(_id: string, _NICR: BigNumberish, _prevId: string, _nextId: string, _overrides?: Overrides): Promise<void>;
reInsert(_id: string, _newNICR: BigNumberish, _prevId: string, _nextId: string, _overrides?: Overrides): Promise<void>;
remove(_id: string, _overrides?: Overrides): Promise<void>;
setOwner(_owner: string, _overrides?: Overrides): Promise<void>;
setParams(_size: BigNumberish, _troveManagerAddress: string, _borrowerOperationsAddress: string, _overrides?: Overrides): Promise<void>;
}
export interface SortedTroves
extends _TypedLiquityContract<SortedTrovesCalls, SortedTrovesTransactions> {
readonly address: string;
readonly filters: {
BorrowerOperationsAddressChanged(_borrowerOperationsAddress?: null): EventFilter;
NodeAdded(_id?: null, _NICR?: null): EventFilter;
NodeRemoved(_id?: null): EventFilter;
OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): EventFilter;
SortedTrovesAddressChanged(_sortedDoublyLLAddress?: null): EventFilter;
TroveManagerAddressChanged(_troveManagerAddress?: null): EventFilter;
};
extractEvents(logs: Log[], name: "BorrowerOperationsAddressChanged"): _TypedLogDescription<{ _borrowerOperationsAddress: string }>[];
extractEvents(logs: Log[], name: "NodeAdded"): _TypedLogDescription<{ _id: string; _NICR: BigNumber }>[];
extractEvents(logs: Log[], name: "NodeRemoved"): _TypedLogDescription<{ _id: string }>[];
extractEvents(logs: Log[], name: "OwnershipTransferred"): _TypedLogDescription<{ previousOwner: string; newOwner: string }>[];
extractEvents(logs: Log[], name: "SortedTrovesAddressChanged"): _TypedLogDescription<{ _sortedDoublyLLAddress: string }>[];
extractEvents(logs: Log[], name: "TroveManagerAddressChanged"): _TypedLogDescription<{ _troveManagerAddress: string }>[];
}
interface StabilityPoolCalls {
DECIMAL_PRECISION(_overrides?: CallOverrides): Promise<BigNumber>;
MIN_NET_DEBT(_overrides?: CallOverrides): Promise<BigNumber>;
NAME(_overrides?: CallOverrides): Promise<string>;
P(_overrides?: CallOverrides): Promise<BigNumber>;
SCALE_FACTOR(_overrides?: CallOverrides): Promise<BigNumber>;
ZUSD_GAS_COMPENSATION(_overrides?: CallOverrides): Promise<BigNumber>;
_100pct(_overrides?: CallOverrides): Promise<BigNumber>;
activePool(_overrides?: CallOverrides): Promise<string>;
borrowerOperations(_overrides?: CallOverrides): Promise<string>;
communityIssuance(_overrides?: CallOverrides): Promise<string>;
currentEpoch(_overrides?: CallOverrides): Promise<BigNumber>;
currentScale(_overrides?: CallOverrides): Promise<BigNumber>;
defaultPool(_overrides?: CallOverrides): Promise<string>;
depositSnapshots(arg0: string, _overrides?: CallOverrides): Promise<{ S: BigNumber; P: BigNumber; G: BigNumber; scale: BigNumber; epoch: BigNumber }>;
deposits(arg0: string, _overrides?: CallOverrides): Promise<{ initialValue: BigNumber; frontEndTag: string }>;
epochToScaleToG(arg0: BigNumberish, arg1: BigNumberish, _overrides?: CallOverrides): Promise<BigNumber>;
epochToScaleToSum(arg0: BigNumberish, arg1: BigNumberish, _overrides?: CallOverrides): Promise<BigNumber>;
frontEndSnapshots(arg0: string, _overrides?: CallOverrides): Promise<{ S: BigNumber; P: BigNumber; G: BigNumber; scale: BigNumber; epoch: BigNumber }>;
frontEndStakes(arg0: string, _overrides?: CallOverrides): Promise<BigNumber>;
frontEnds(arg0: string, _overrides?: CallOverrides): Promise<{ kickbackRate: BigNumber; registered: boolean }>;
getCompoundedFrontEndStake(_frontEnd: string, _overrides?: CallOverrides): Promise<BigNumber>;
getCompoundedZUSDDeposit(_depositor: string, _overrides?: CallOverrides): Promise<BigNumber>;
getDepositorETHGain(_depositor: string, _overrides?: CallOverrides): Promise<BigNumber>;
getDepositorSOVGain(_depositor: string, _overrides?: CallOverrides): Promise<BigNumber>;
getETH(_overrides?: CallOverrides): Promise<BigNumber>;
getEntireSystemColl(_overrides?: CallOverrides): Promise<BigNumber>;
getEntireSystemDebt(_overrides?: CallOverrides): Promise<BigNumber>;
getFrontEndSOVGain(_frontEnd: string, _overrides?: CallOverrides): Promise<BigNumber>;
getOwner(_overrides?: CallOverrides): Promise<string>;
getTotalZUSDDeposits(_overrides?: CallOverrides): Promise<BigNumber>;
lastETHError_Offset(_overrides?: CallOverrides): Promise<BigNumber>;
lastSOVError(_overrides?: CallOverrides): Promise<BigNumber>;
lastZUSDLossError_Offset(_overrides?: CallOverrides): Promise<BigNumber>;
liquityBaseParams(_overrides?: CallOverrides): Promise<string>;
priceFeed(_overrides?: CallOverrides): Promise<string>;
sortedTroves(_overrides?: CallOverrides): Promise<string>;
troveManager(_overrides?: CallOverrides): Promise<string>;
zusdToken(_overrides?: CallOverrides): Promise<string>;
}
interface StabilityPoolTransactions {
offset(_debtToOffset: BigNumberish, _collToAdd: BigNumberish, _overrides?: Overrides): Promise<void>;
provideToSP(_amount: BigNumberish, _frontEndTag: string, _overrides?: Overrides): Promise<void>;
provideToSpFromDLLR(_dllrAmount: BigNumberish, _permitParams: { deadline: BigNumberish; v: BigNumberish; r: BytesLike; s: BytesLike }, _overrides?: Overrides): Promise<void>;
registerFrontEnd(_kickbackRate: BigNumberish, _overrides?: Overrides): Promise<void>;
setAddresses(_liquityBaseParamsAddress: string, _borrowerOperationsAddress: string, _troveManagerAddress: string, _activePoolAddress: string, _zusdTokenAddress: string, _sortedTrovesAddress: string, _priceFeedAddress: string, _communityIssuanceAddress: string, _overrides?: Overrides): Promise<void>;
setCommunityIssuanceAddress(_communityIssuanceAddress: string, _overrides?: Overrides): Promise<void>;
setOwner(_owner: string, _overrides?: Overrides): Promise<void>;
withdrawETHGainToTrove(_upperHint: string, _lowerHint: string, _overrides?: Overrides): Promise<void>;
withdrawFromSP(_amount: BigNumberish, _overrides?: Overrides): Promise<void>;
withdrawFromSpAndConvertToDLLR(_zusdAmountRequested: BigNumberish, _overrides?: Overrides): Promise<void>;
}
export interface StabilityPool
extends _TypedLiquityContract<StabilityPoolCalls, StabilityPoolTransactions> {
readonly address: string;
readonly filters: {
ActivePoolAddressChanged(_newActivePoolAddress?: null): EventFilter;
BorrowerOperationsAddressChanged(_newBorrowerOperationsAddress?: null): EventFilter;
CommunityIssuanceAddressChanged(_newCommunityIssuanceAddress?: null): EventFilter;
DefaultPoolAddressChanged(_newDefaultPoolAddress?: null): EventFilter;
DepositSnapshotUpdated(_depositor?: string | null, _P?: null, _S?: null, _G?: null): EventFilter;
ETHGainWithdrawn(_depositor?: string | null, _ETH?: null, _ZUSDLoss?: null): EventFilter;
EpochUpdated(_currentEpoch?: null): EventFilter;
EtherSent(_to?: null, _amount?: null): EventFilter;
FrontEndRegistered(_frontEnd?: string | null, _kickbackRate?: null): EventFilter;
FrontEndSnapshotUpdated(_frontEnd?: string | null, _P?: null, _G?: null): EventFilter;
FrontEndStakeChanged(_frontEnd?: string | null, _newFrontEndStake?: null, _depositor?: null): EventFilter;
FrontEndTagSet(_depositor?: string | null, _frontEnd?: string | null): EventFilter;
G_Updated(_G?: null, _epoch?: null, _scale?: null): EventFilter;
OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): EventFilter;
P_Updated(_P?: null): EventFilter;
PriceFeedAddressChanged(_newPriceFeedAddress?: null): EventFilter;
SOVPaidToDepositor(_depositor?: string | null, _SOV?: null): EventFilter;
SOVPaidToFrontEnd(_frontEnd?: string | null, _SOV?: null): EventFilter;
S_Updated(_S?: null, _epoch?: null, _scale?: null): EventFilter;
ScaleUpdated(_currentScale?: null): EventFilter;
SortedTrovesAddressChanged(_newSortedTrovesAddress?: null): EventFilter;
StabilityPoolETHBalanceUpdated(_newBalance?: null): EventFilter;
StabilityPoolZUSDBalanceUpdated(_newBalance?: null): EventFilter;
TroveManagerAddressChanged(_newTroveManagerAddress?: null): EventFilter;
UserDepositChanged(_depositor?: string | null, _newDeposit?: null): EventFilter;
WithdrawFromSpAndConvertToDLLR(_depositor?: null, _zusdAmountRequested?: null, _dllrAmountReceived?: null): EventFilter;
ZUSDTokenAddressChanged(_newZUSDTokenAddress?: null): EventFilter;
};
extractEvents(logs: Log[], name: "ActivePoolAddressChanged"): _TypedLogDescription<{ _newActivePoolAddress: string }>[];
extractEvents(logs: Log[], name: "BorrowerOperationsAddressChanged"): _TypedLogDescription<{ _newBorrowerOperationsAddress: string }>[];
extractEvents(logs: Log[], name: "CommunityIssuanceAddressChanged"): _TypedLogDescription<{ _newCommunityIssuanceAddress: string }>[];
extractEvents(logs: Log[], name: "DefaultPoolAddressChanged"): _TypedLogDescription<{ _newDefaultPoolAddress: string }>[];
extractEvents(logs: Log[], name: "DepositSnapshotUpdated"): _TypedLogDescription<{ _depositor: string; _P: BigNumber; _S: BigNumber; _G: BigNumber }>[];
extractEvents(logs: Log[], name: "ETHGainWithdrawn"): _TypedLogDescription<{ _depositor: string; _ETH: BigNumber; _ZUSDLoss: BigNumber }>[];
extractEvents(logs: Log[], name: "EpochUpdated"): _TypedLogDescription<{ _currentEpoch: BigNumber }>[];
extractEvents(logs: Log[], name: "EtherSent"): _TypedLogDescription<{ _to: string; _amount: BigNumber }>[];
extractEvents(logs: Log[], name: "FrontEndRegistered"): _TypedLogDescription<{ _frontEnd: string; _kickbackRate: BigNumber }>[];
extractEvents(logs: Log[], name: "FrontEndSnapshotUpdated"): _TypedLogDescription<{ _frontEnd: string; _P: BigNumber; _G: BigNumber }>[];
extractEvents(logs: Log[], name: "FrontEndStakeChanged"): _TypedLogDescription<{ _frontEnd: string; _newFrontEndStake: BigNumber; _depositor: string }>[];
extractEvents(logs: Log[], name: "FrontEndTagSet"): _TypedLogDescription<{ _depositor: string; _frontEnd: string }>[];
extractEvents(logs: Log[], name: "G_Updated"): _TypedLogDescription<{ _G: BigNumber; _epoch: BigNumber; _scale: BigNumber }>[];
extractEvents(logs: Log[], name: "OwnershipTransferred"): _TypedLogDescription<{ previousOwner: string; newOwner: string }>[];
extractEvents(logs: Log[], name: "P_Updated"): _TypedLogDescription<{ _P: BigNumber }>[];
extractEvents(logs: Log[], name: "PriceFeedAddressChanged"): _TypedLogDescription<{ _newPriceFeedAddress: string }>[];
extractEvents(logs: Log[], name: "SOVPaidToDepositor"): _TypedLogDescription<{ _depositor: string; _SOV: BigNumber }>[];
extractEvents(logs: Log[], name: "SOVPaidToFrontEnd"): _TypedLogDescription<{ _frontEnd: string; _SOV: BigNumber }>[];
extractEvents(logs: Log[], name: "S_Updated"): _TypedLogDescri