@augmentedfinance/protocol-v1
Version:
Augmented Protocol smart contracts
2,099 lines (2,013 loc) • 67.1 kB
TypeScript
/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
import {
ethers,
EventFilter,
Signer,
BigNumber,
BigNumberish,
PopulatedTransaction,
} from "ethers";
import {
Contract,
ContractTransaction,
CallOverrides,
} from "@ethersproject/contracts";
import { BytesLike } from "@ethersproject/bytes";
import { Listener, Provider } from "@ethersproject/providers";
import { FunctionFragment, EventFragment, Result } from "@ethersproject/abi";
interface ProtocolDataProviderInterface extends ethers.utils.Interface {
functions: {
"ADDRESS_PROVIDER()": FunctionFragment;
"ETH()": FunctionFragment;
"USD()": FunctionFragment;
"balanceOf(address,address,uint8)": FunctionFragment;
"batchBalanceOf(address[],address[],uint8[],uint8)": FunctionFragment;
"explainReward(address,uint32)": FunctionFragment;
"getAddresses()": FunctionFragment;
"getAllTokenDescriptions(bool)": FunctionFragment;
"getAllTokens(bool)": FunctionFragment;
"getReserveConfigurationData(address)": FunctionFragment;
"getReserveData(address)": FunctionFragment;
"getReserveTokensAddresses(address)": FunctionFragment;
"getReservesData(address)": FunctionFragment;
"getUserReserveData(address,address)": FunctionFragment;
"rewardPoolNames(address[],uint256)": FunctionFragment;
};
encodeFunctionData(
functionFragment: "ADDRESS_PROVIDER",
values?: undefined
): string;
encodeFunctionData(functionFragment: "ETH", values?: undefined): string;
encodeFunctionData(functionFragment: "USD", values?: undefined): string;
encodeFunctionData(
functionFragment: "balanceOf",
values: [string, string, BigNumberish]
): string;
encodeFunctionData(
functionFragment: "batchBalanceOf",
values: [string[], string[], BigNumberish[], BigNumberish]
): string;
encodeFunctionData(
functionFragment: "explainReward",
values: [string, BigNumberish]
): string;
encodeFunctionData(
functionFragment: "getAddresses",
values?: undefined
): string;
encodeFunctionData(
functionFragment: "getAllTokenDescriptions",
values: [boolean]
): string;
encodeFunctionData(
functionFragment: "getAllTokens",
values: [boolean]
): string;
encodeFunctionData(
functionFragment: "getReserveConfigurationData",
values: [string]
): string;
encodeFunctionData(
functionFragment: "getReserveData",
values: [string]
): string;
encodeFunctionData(
functionFragment: "getReserveTokensAddresses",
values: [string]
): string;
encodeFunctionData(
functionFragment: "getReservesData",
values: [string]
): string;
encodeFunctionData(
functionFragment: "getUserReserveData",
values: [string, string]
): string;
encodeFunctionData(
functionFragment: "rewardPoolNames",
values: [string[], BigNumberish]
): string;
decodeFunctionResult(
functionFragment: "ADDRESS_PROVIDER",
data: BytesLike
): Result;
decodeFunctionResult(functionFragment: "ETH", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "USD", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result;
decodeFunctionResult(
functionFragment: "batchBalanceOf",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "explainReward",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getAddresses",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getAllTokenDescriptions",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getAllTokens",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getReserveConfigurationData",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getReserveData",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getReserveTokensAddresses",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getReservesData",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getUserReserveData",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "rewardPoolNames",
data: BytesLike
): Result;
events: {};
}
export class ProtocolDataProvider extends Contract {
connect(signerOrProvider: Signer | Provider | string): this;
attach(addressOrName: string): this;
deployed(): Promise<this>;
on(event: EventFilter | string, listener: Listener): this;
once(event: EventFilter | string, listener: Listener): this;
addListener(eventName: EventFilter | string, listener: Listener): this;
removeAllListeners(eventName: EventFilter | string): this;
removeListener(eventName: any, listener: Listener): this;
interface: ProtocolDataProviderInterface;
functions: {
ADDRESS_PROVIDER(overrides?: CallOverrides): Promise<{
0: string;
}>;
"ADDRESS_PROVIDER()"(overrides?: CallOverrides): Promise<{
0: string;
}>;
ETH(overrides?: CallOverrides): Promise<{
0: string;
}>;
"ETH()"(overrides?: CallOverrides): Promise<{
0: string;
}>;
USD(overrides?: CallOverrides): Promise<{
0: string;
}>;
"USD()"(overrides?: CallOverrides): Promise<{
0: string;
}>;
balanceOf(
user: string,
token: string,
tokenType: BigNumberish,
overrides?: CallOverrides
): Promise<{
r: {
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
};
0: {
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
};
}>;
"balanceOf(address,address,uint8)"(
user: string,
token: string,
tokenType: BigNumberish,
overrides?: CallOverrides
): Promise<{
r: {
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
};
0: {
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
};
}>;
batchBalanceOf(
users: string[],
tokens: string[],
tokenTypes: BigNumberish[],
defType: BigNumberish,
overrides?: CallOverrides
): Promise<{
balances: {
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
}[];
0: {
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
}[];
}>;
"batchBalanceOf(address[],address[],uint8[],uint8)"(
users: string[],
tokens: string[],
tokenTypes: BigNumberish[],
defType: BigNumberish,
overrides?: CallOverrides
): Promise<{
balances: {
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
}[];
0: {
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
}[];
}>;
explainReward(
holder: string,
minDuration: BigNumberish,
overrides?: CallOverrides
): Promise<{
at: number;
0: {
amountClaimable: BigNumber;
amountExtra: BigNumber;
maxBoost: BigNumber;
boostLimit: BigNumber;
latestClaimAt: number;
allocations: {
amount: BigNumber;
extra: BigNumber;
pool: string;
since: number;
factor: number;
rewardType: number;
0: BigNumber;
1: BigNumber;
2: string;
3: number;
4: number;
5: number;
}[];
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: number;
5: {
amount: BigNumber;
extra: BigNumber;
pool: string;
since: number;
factor: number;
rewardType: number;
0: BigNumber;
1: BigNumber;
2: string;
3: number;
4: number;
5: number;
}[];
};
1: number;
}>;
"explainReward(address,uint32)"(
holder: string,
minDuration: BigNumberish,
overrides?: CallOverrides
): Promise<{
at: number;
0: {
amountClaimable: BigNumber;
amountExtra: BigNumber;
maxBoost: BigNumber;
boostLimit: BigNumber;
latestClaimAt: number;
allocations: {
amount: BigNumber;
extra: BigNumber;
pool: string;
since: number;
factor: number;
rewardType: number;
0: BigNumber;
1: BigNumber;
2: string;
3: number;
4: number;
5: number;
}[];
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: number;
5: {
amount: BigNumber;
extra: BigNumber;
pool: string;
since: number;
factor: number;
rewardType: number;
0: BigNumber;
1: BigNumber;
2: string;
3: number;
4: number;
5: number;
}[];
};
1: number;
}>;
getAddresses(overrides?: CallOverrides): Promise<{
data: {
addressProvider: string;
lendingPool: string;
stakeConfigurator: string;
rewardConfigurator: string;
rewardController: string;
wethGateway: string;
priceOracle: string;
lendingPriceOracle: string;
rewardToken: string;
rewardStake: string;
referralRegistry: string;
0: string;
1: string;
2: string;
3: string;
4: string;
5: string;
6: string;
7: string;
8: string;
9: string;
10: string;
};
0: {
addressProvider: string;
lendingPool: string;
stakeConfigurator: string;
rewardConfigurator: string;
rewardController: string;
wethGateway: string;
priceOracle: string;
lendingPriceOracle: string;
rewardToken: string;
rewardStake: string;
referralRegistry: string;
0: string;
1: string;
2: string;
3: string;
4: string;
5: string;
6: string;
7: string;
8: string;
9: string;
10: string;
};
}>;
"getAddresses()"(overrides?: CallOverrides): Promise<{
data: {
addressProvider: string;
lendingPool: string;
stakeConfigurator: string;
rewardConfigurator: string;
rewardController: string;
wethGateway: string;
priceOracle: string;
lendingPriceOracle: string;
rewardToken: string;
rewardStake: string;
referralRegistry: string;
0: string;
1: string;
2: string;
3: string;
4: string;
5: string;
6: string;
7: string;
8: string;
9: string;
10: string;
};
0: {
addressProvider: string;
lendingPool: string;
stakeConfigurator: string;
rewardConfigurator: string;
rewardController: string;
wethGateway: string;
priceOracle: string;
lendingPriceOracle: string;
rewardToken: string;
rewardStake: string;
referralRegistry: string;
0: string;
1: string;
2: string;
3: string;
4: string;
5: string;
6: string;
7: string;
8: string;
9: string;
10: string;
};
}>;
getAllTokenDescriptions(
includeAssets: boolean,
overrides?: CallOverrides
): Promise<{
tokens: {
token: string;
priceToken: string;
rewardPool: string;
tokenSymbol: string;
underlying: string;
decimals: number;
tokenType: number;
active: boolean;
frozen: boolean;
0: string;
1: string;
2: string;
3: string;
4: string;
5: number;
6: number;
7: boolean;
8: boolean;
}[];
tokenCount: BigNumber;
0: {
token: string;
priceToken: string;
rewardPool: string;
tokenSymbol: string;
underlying: string;
decimals: number;
tokenType: number;
active: boolean;
frozen: boolean;
0: string;
1: string;
2: string;
3: string;
4: string;
5: number;
6: number;
7: boolean;
8: boolean;
}[];
1: BigNumber;
}>;
"getAllTokenDescriptions(bool)"(
includeAssets: boolean,
overrides?: CallOverrides
): Promise<{
tokens: {
token: string;
priceToken: string;
rewardPool: string;
tokenSymbol: string;
underlying: string;
decimals: number;
tokenType: number;
active: boolean;
frozen: boolean;
0: string;
1: string;
2: string;
3: string;
4: string;
5: number;
6: number;
7: boolean;
8: boolean;
}[];
tokenCount: BigNumber;
0: {
token: string;
priceToken: string;
rewardPool: string;
tokenSymbol: string;
underlying: string;
decimals: number;
tokenType: number;
active: boolean;
frozen: boolean;
0: string;
1: string;
2: string;
3: string;
4: string;
5: number;
6: number;
7: boolean;
8: boolean;
}[];
1: BigNumber;
}>;
getAllTokens(
includeAssets: boolean,
overrides?: CallOverrides
): Promise<{
tokens: string[];
tokenCount: BigNumber;
tokenTypes: number[];
0: string[];
1: BigNumber;
2: number[];
}>;
"getAllTokens(bool)"(
includeAssets: boolean,
overrides?: CallOverrides
): Promise<{
tokens: string[];
tokenCount: BigNumber;
tokenTypes: number[];
0: string[];
1: BigNumber;
2: number[];
}>;
getReserveConfigurationData(
asset: string,
overrides?: CallOverrides
): Promise<{
decimals: BigNumber;
ltv: BigNumber;
liquidationThreshold: BigNumber;
liquidationBonus: BigNumber;
reserveFactor: BigNumber;
usageAsCollateralEnabled: boolean;
borrowingEnabled: boolean;
stableBorrowRateEnabled: boolean;
isActive: boolean;
isFrozen: boolean;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: BigNumber;
5: boolean;
6: boolean;
7: boolean;
8: boolean;
9: boolean;
}>;
"getReserveConfigurationData(address)"(
asset: string,
overrides?: CallOverrides
): Promise<{
decimals: BigNumber;
ltv: BigNumber;
liquidationThreshold: BigNumber;
liquidationBonus: BigNumber;
reserveFactor: BigNumber;
usageAsCollateralEnabled: boolean;
borrowingEnabled: boolean;
stableBorrowRateEnabled: boolean;
isActive: boolean;
isFrozen: boolean;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: BigNumber;
5: boolean;
6: boolean;
7: boolean;
8: boolean;
9: boolean;
}>;
getReserveData(
asset: string,
overrides?: CallOverrides
): Promise<{
availableLiquidity: BigNumber;
totalStableDebt: BigNumber;
totalVariableDebt: BigNumber;
liquidityRate: BigNumber;
variableBorrowRate: BigNumber;
stableBorrowRate: BigNumber;
averageStableBorrowRate: BigNumber;
liquidityIndex: BigNumber;
variableBorrowIndex: BigNumber;
lastUpdateTimestamp: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: BigNumber;
5: BigNumber;
6: BigNumber;
7: BigNumber;
8: BigNumber;
9: number;
}>;
"getReserveData(address)"(
asset: string,
overrides?: CallOverrides
): Promise<{
availableLiquidity: BigNumber;
totalStableDebt: BigNumber;
totalVariableDebt: BigNumber;
liquidityRate: BigNumber;
variableBorrowRate: BigNumber;
stableBorrowRate: BigNumber;
averageStableBorrowRate: BigNumber;
liquidityIndex: BigNumber;
variableBorrowIndex: BigNumber;
lastUpdateTimestamp: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: BigNumber;
5: BigNumber;
6: BigNumber;
7: BigNumber;
8: BigNumber;
9: number;
}>;
getReserveTokensAddresses(
asset: string,
overrides?: CallOverrides
): Promise<{
depositTokenAddress: string;
stableDebtTokenAddress: string;
variableDebtTokenAddress: string;
0: string;
1: string;
2: string;
}>;
"getReserveTokensAddresses(address)"(
asset: string,
overrides?: CallOverrides
): Promise<{
depositTokenAddress: string;
stableDebtTokenAddress: string;
variableDebtTokenAddress: string;
0: string;
1: string;
2: string;
}>;
getReservesData(
user: string,
overrides?: CallOverrides
): Promise<{
0: {
underlyingAsset: string;
pricingAsset: string;
name: string;
symbol: string;
decimals: BigNumber;
baseLTVasCollateral: BigNumber;
reserveLiquidationThreshold: BigNumber;
reserveLiquidationBonus: BigNumber;
reserveFactor: BigNumber;
usageAsCollateralEnabled: boolean;
borrowingEnabled: boolean;
stableBorrowRateEnabled: boolean;
isActive: boolean;
isFrozen: boolean;
liquidityIndex: BigNumber;
variableBorrowIndex: BigNumber;
liquidityRate: BigNumber;
variableBorrowRate: BigNumber;
stableBorrowRate: BigNumber;
lastUpdateTimestamp: number;
depositTokenAddress: string;
stableDebtTokenAddress: string;
variableDebtTokenAddress: string;
strategy: string;
isExternalStrategy: boolean;
availableLiquidity: BigNumber;
totalPrincipalStableDebt: BigNumber;
averageStableRate: BigNumber;
totalStableDebt: BigNumber;
stableDebtLastUpdateTimestamp: BigNumber;
totalScaledVariableDebt: BigNumber;
priceInEth: BigNumber;
0: string;
1: string;
2: string;
3: string;
4: BigNumber;
5: BigNumber;
6: BigNumber;
7: BigNumber;
8: BigNumber;
9: boolean;
10: boolean;
11: boolean;
12: boolean;
13: boolean;
14: BigNumber;
15: BigNumber;
16: BigNumber;
17: BigNumber;
18: BigNumber;
19: number;
20: string;
21: string;
22: string;
23: string;
24: boolean;
25: BigNumber;
26: BigNumber;
27: BigNumber;
28: BigNumber;
29: BigNumber;
30: BigNumber;
31: BigNumber;
}[];
1: {
underlyingAsset: string;
scaledDepositTokenBalance: BigNumber;
usageAsCollateralEnabledOnUser: boolean;
stableBorrowRate: BigNumber;
scaledVariableDebt: BigNumber;
principalStableDebt: BigNumber;
stableBorrowLastUpdateTimestamp: BigNumber;
0: string;
1: BigNumber;
2: boolean;
3: BigNumber;
4: BigNumber;
5: BigNumber;
6: BigNumber;
}[];
2: BigNumber;
}>;
"getReservesData(address)"(
user: string,
overrides?: CallOverrides
): Promise<{
0: {
underlyingAsset: string;
pricingAsset: string;
name: string;
symbol: string;
decimals: BigNumber;
baseLTVasCollateral: BigNumber;
reserveLiquidationThreshold: BigNumber;
reserveLiquidationBonus: BigNumber;
reserveFactor: BigNumber;
usageAsCollateralEnabled: boolean;
borrowingEnabled: boolean;
stableBorrowRateEnabled: boolean;
isActive: boolean;
isFrozen: boolean;
liquidityIndex: BigNumber;
variableBorrowIndex: BigNumber;
liquidityRate: BigNumber;
variableBorrowRate: BigNumber;
stableBorrowRate: BigNumber;
lastUpdateTimestamp: number;
depositTokenAddress: string;
stableDebtTokenAddress: string;
variableDebtTokenAddress: string;
strategy: string;
isExternalStrategy: boolean;
availableLiquidity: BigNumber;
totalPrincipalStableDebt: BigNumber;
averageStableRate: BigNumber;
totalStableDebt: BigNumber;
stableDebtLastUpdateTimestamp: BigNumber;
totalScaledVariableDebt: BigNumber;
priceInEth: BigNumber;
0: string;
1: string;
2: string;
3: string;
4: BigNumber;
5: BigNumber;
6: BigNumber;
7: BigNumber;
8: BigNumber;
9: boolean;
10: boolean;
11: boolean;
12: boolean;
13: boolean;
14: BigNumber;
15: BigNumber;
16: BigNumber;
17: BigNumber;
18: BigNumber;
19: number;
20: string;
21: string;
22: string;
23: string;
24: boolean;
25: BigNumber;
26: BigNumber;
27: BigNumber;
28: BigNumber;
29: BigNumber;
30: BigNumber;
31: BigNumber;
}[];
1: {
underlyingAsset: string;
scaledDepositTokenBalance: BigNumber;
usageAsCollateralEnabledOnUser: boolean;
stableBorrowRate: BigNumber;
scaledVariableDebt: BigNumber;
principalStableDebt: BigNumber;
stableBorrowLastUpdateTimestamp: BigNumber;
0: string;
1: BigNumber;
2: boolean;
3: BigNumber;
4: BigNumber;
5: BigNumber;
6: BigNumber;
}[];
2: BigNumber;
}>;
getUserReserveData(
asset: string,
user: string,
overrides?: CallOverrides
): Promise<{
currentDepositBalance: BigNumber;
currentStableDebt: BigNumber;
currentVariableDebt: BigNumber;
principalStableDebt: BigNumber;
scaledVariableDebt: BigNumber;
stableBorrowRate: BigNumber;
liquidityRate: BigNumber;
stableRateLastUpdated: number;
usageAsCollateralEnabled: boolean;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: BigNumber;
5: BigNumber;
6: BigNumber;
7: number;
8: boolean;
}>;
"getUserReserveData(address,address)"(
asset: string,
user: string,
overrides?: CallOverrides
): Promise<{
currentDepositBalance: BigNumber;
currentStableDebt: BigNumber;
currentVariableDebt: BigNumber;
principalStableDebt: BigNumber;
scaledVariableDebt: BigNumber;
stableBorrowRate: BigNumber;
liquidityRate: BigNumber;
stableRateLastUpdated: number;
usageAsCollateralEnabled: boolean;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: BigNumber;
5: BigNumber;
6: BigNumber;
7: number;
8: boolean;
}>;
rewardPoolNames(
pools: string[],
ignoreMask: BigNumberish,
overrides?: CallOverrides
): Promise<{
names: string[];
0: string[];
}>;
"rewardPoolNames(address[],uint256)"(
pools: string[],
ignoreMask: BigNumberish,
overrides?: CallOverrides
): Promise<{
names: string[];
0: string[];
}>;
};
ADDRESS_PROVIDER(overrides?: CallOverrides): Promise<string>;
"ADDRESS_PROVIDER()"(overrides?: CallOverrides): Promise<string>;
ETH(overrides?: CallOverrides): Promise<string>;
"ETH()"(overrides?: CallOverrides): Promise<string>;
USD(overrides?: CallOverrides): Promise<string>;
"USD()"(overrides?: CallOverrides): Promise<string>;
balanceOf(
user: string,
token: string,
tokenType: BigNumberish,
overrides?: CallOverrides
): Promise<{
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
}>;
"balanceOf(address,address,uint8)"(
user: string,
token: string,
tokenType: BigNumberish,
overrides?: CallOverrides
): Promise<{
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
}>;
batchBalanceOf(
users: string[],
tokens: string[],
tokenTypes: BigNumberish[],
defType: BigNumberish,
overrides?: CallOverrides
): Promise<
{
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
}[]
>;
"batchBalanceOf(address[],address[],uint8[],uint8)"(
users: string[],
tokens: string[],
tokenTypes: BigNumberish[],
defType: BigNumberish,
overrides?: CallOverrides
): Promise<
{
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
}[]
>;
explainReward(
holder: string,
minDuration: BigNumberish,
overrides?: CallOverrides
): Promise<{
at: number;
0: {
amountClaimable: BigNumber;
amountExtra: BigNumber;
maxBoost: BigNumber;
boostLimit: BigNumber;
latestClaimAt: number;
allocations: {
amount: BigNumber;
extra: BigNumber;
pool: string;
since: number;
factor: number;
rewardType: number;
0: BigNumber;
1: BigNumber;
2: string;
3: number;
4: number;
5: number;
}[];
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: number;
5: {
amount: BigNumber;
extra: BigNumber;
pool: string;
since: number;
factor: number;
rewardType: number;
0: BigNumber;
1: BigNumber;
2: string;
3: number;
4: number;
5: number;
}[];
};
1: number;
}>;
"explainReward(address,uint32)"(
holder: string,
minDuration: BigNumberish,
overrides?: CallOverrides
): Promise<{
at: number;
0: {
amountClaimable: BigNumber;
amountExtra: BigNumber;
maxBoost: BigNumber;
boostLimit: BigNumber;
latestClaimAt: number;
allocations: {
amount: BigNumber;
extra: BigNumber;
pool: string;
since: number;
factor: number;
rewardType: number;
0: BigNumber;
1: BigNumber;
2: string;
3: number;
4: number;
5: number;
}[];
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: number;
5: {
amount: BigNumber;
extra: BigNumber;
pool: string;
since: number;
factor: number;
rewardType: number;
0: BigNumber;
1: BigNumber;
2: string;
3: number;
4: number;
5: number;
}[];
};
1: number;
}>;
getAddresses(
overrides?: CallOverrides
): Promise<{
addressProvider: string;
lendingPool: string;
stakeConfigurator: string;
rewardConfigurator: string;
rewardController: string;
wethGateway: string;
priceOracle: string;
lendingPriceOracle: string;
rewardToken: string;
rewardStake: string;
referralRegistry: string;
0: string;
1: string;
2: string;
3: string;
4: string;
5: string;
6: string;
7: string;
8: string;
9: string;
10: string;
}>;
"getAddresses()"(
overrides?: CallOverrides
): Promise<{
addressProvider: string;
lendingPool: string;
stakeConfigurator: string;
rewardConfigurator: string;
rewardController: string;
wethGateway: string;
priceOracle: string;
lendingPriceOracle: string;
rewardToken: string;
rewardStake: string;
referralRegistry: string;
0: string;
1: string;
2: string;
3: string;
4: string;
5: string;
6: string;
7: string;
8: string;
9: string;
10: string;
}>;
getAllTokenDescriptions(
includeAssets: boolean,
overrides?: CallOverrides
): Promise<{
tokens: {
token: string;
priceToken: string;
rewardPool: string;
tokenSymbol: string;
underlying: string;
decimals: number;
tokenType: number;
active: boolean;
frozen: boolean;
0: string;
1: string;
2: string;
3: string;
4: string;
5: number;
6: number;
7: boolean;
8: boolean;
}[];
tokenCount: BigNumber;
0: {
token: string;
priceToken: string;
rewardPool: string;
tokenSymbol: string;
underlying: string;
decimals: number;
tokenType: number;
active: boolean;
frozen: boolean;
0: string;
1: string;
2: string;
3: string;
4: string;
5: number;
6: number;
7: boolean;
8: boolean;
}[];
1: BigNumber;
}>;
"getAllTokenDescriptions(bool)"(
includeAssets: boolean,
overrides?: CallOverrides
): Promise<{
tokens: {
token: string;
priceToken: string;
rewardPool: string;
tokenSymbol: string;
underlying: string;
decimals: number;
tokenType: number;
active: boolean;
frozen: boolean;
0: string;
1: string;
2: string;
3: string;
4: string;
5: number;
6: number;
7: boolean;
8: boolean;
}[];
tokenCount: BigNumber;
0: {
token: string;
priceToken: string;
rewardPool: string;
tokenSymbol: string;
underlying: string;
decimals: number;
tokenType: number;
active: boolean;
frozen: boolean;
0: string;
1: string;
2: string;
3: string;
4: string;
5: number;
6: number;
7: boolean;
8: boolean;
}[];
1: BigNumber;
}>;
getAllTokens(
includeAssets: boolean,
overrides?: CallOverrides
): Promise<{
tokens: string[];
tokenCount: BigNumber;
tokenTypes: number[];
0: string[];
1: BigNumber;
2: number[];
}>;
"getAllTokens(bool)"(
includeAssets: boolean,
overrides?: CallOverrides
): Promise<{
tokens: string[];
tokenCount: BigNumber;
tokenTypes: number[];
0: string[];
1: BigNumber;
2: number[];
}>;
getReserveConfigurationData(
asset: string,
overrides?: CallOverrides
): Promise<{
decimals: BigNumber;
ltv: BigNumber;
liquidationThreshold: BigNumber;
liquidationBonus: BigNumber;
reserveFactor: BigNumber;
usageAsCollateralEnabled: boolean;
borrowingEnabled: boolean;
stableBorrowRateEnabled: boolean;
isActive: boolean;
isFrozen: boolean;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: BigNumber;
5: boolean;
6: boolean;
7: boolean;
8: boolean;
9: boolean;
}>;
"getReserveConfigurationData(address)"(
asset: string,
overrides?: CallOverrides
): Promise<{
decimals: BigNumber;
ltv: BigNumber;
liquidationThreshold: BigNumber;
liquidationBonus: BigNumber;
reserveFactor: BigNumber;
usageAsCollateralEnabled: boolean;
borrowingEnabled: boolean;
stableBorrowRateEnabled: boolean;
isActive: boolean;
isFrozen: boolean;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: BigNumber;
5: boolean;
6: boolean;
7: boolean;
8: boolean;
9: boolean;
}>;
getReserveData(
asset: string,
overrides?: CallOverrides
): Promise<{
availableLiquidity: BigNumber;
totalStableDebt: BigNumber;
totalVariableDebt: BigNumber;
liquidityRate: BigNumber;
variableBorrowRate: BigNumber;
stableBorrowRate: BigNumber;
averageStableBorrowRate: BigNumber;
liquidityIndex: BigNumber;
variableBorrowIndex: BigNumber;
lastUpdateTimestamp: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: BigNumber;
5: BigNumber;
6: BigNumber;
7: BigNumber;
8: BigNumber;
9: number;
}>;
"getReserveData(address)"(
asset: string,
overrides?: CallOverrides
): Promise<{
availableLiquidity: BigNumber;
totalStableDebt: BigNumber;
totalVariableDebt: BigNumber;
liquidityRate: BigNumber;
variableBorrowRate: BigNumber;
stableBorrowRate: BigNumber;
averageStableBorrowRate: BigNumber;
liquidityIndex: BigNumber;
variableBorrowIndex: BigNumber;
lastUpdateTimestamp: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: BigNumber;
5: BigNumber;
6: BigNumber;
7: BigNumber;
8: BigNumber;
9: number;
}>;
getReserveTokensAddresses(
asset: string,
overrides?: CallOverrides
): Promise<{
depositTokenAddress: string;
stableDebtTokenAddress: string;
variableDebtTokenAddress: string;
0: string;
1: string;
2: string;
}>;
"getReserveTokensAddresses(address)"(
asset: string,
overrides?: CallOverrides
): Promise<{
depositTokenAddress: string;
stableDebtTokenAddress: string;
variableDebtTokenAddress: string;
0: string;
1: string;
2: string;
}>;
getReservesData(
user: string,
overrides?: CallOverrides
): Promise<{
0: {
underlyingAsset: string;
pricingAsset: string;
name: string;
symbol: string;
decimals: BigNumber;
baseLTVasCollateral: BigNumber;
reserveLiquidationThreshold: BigNumber;
reserveLiquidationBonus: BigNumber;
reserveFactor: BigNumber;
usageAsCollateralEnabled: boolean;
borrowingEnabled: boolean;
stableBorrowRateEnabled: boolean;
isActive: boolean;
isFrozen: boolean;
liquidityIndex: BigNumber;
variableBorrowIndex: BigNumber;
liquidityRate: BigNumber;
variableBorrowRate: BigNumber;
stableBorrowRate: BigNumber;
lastUpdateTimestamp: number;
depositTokenAddress: string;
stableDebtTokenAddress: string;
variableDebtTokenAddress: string;
strategy: string;
isExternalStrategy: boolean;
availableLiquidity: BigNumber;
totalPrincipalStableDebt: BigNumber;
averageStableRate: BigNumber;
totalStableDebt: BigNumber;
stableDebtLastUpdateTimestamp: BigNumber;
totalScaledVariableDebt: BigNumber;
priceInEth: BigNumber;
0: string;
1: string;
2: string;
3: string;
4: BigNumber;
5: BigNumber;
6: BigNumber;
7: BigNumber;
8: BigNumber;
9: boolean;
10: boolean;
11: boolean;
12: boolean;
13: boolean;
14: BigNumber;
15: BigNumber;
16: BigNumber;
17: BigNumber;
18: BigNumber;
19: number;
20: string;
21: string;
22: string;
23: string;
24: boolean;
25: BigNumber;
26: BigNumber;
27: BigNumber;
28: BigNumber;
29: BigNumber;
30: BigNumber;
31: BigNumber;
}[];
1: {
underlyingAsset: string;
scaledDepositTokenBalance: BigNumber;
usageAsCollateralEnabledOnUser: boolean;
stableBorrowRate: BigNumber;
scaledVariableDebt: BigNumber;
principalStableDebt: BigNumber;
stableBorrowLastUpdateTimestamp: BigNumber;
0: string;
1: BigNumber;
2: boolean;
3: BigNumber;
4: BigNumber;
5: BigNumber;
6: BigNumber;
}[];
2: BigNumber;
}>;
"getReservesData(address)"(
user: string,
overrides?: CallOverrides
): Promise<{
0: {
underlyingAsset: string;
pricingAsset: string;
name: string;
symbol: string;
decimals: BigNumber;
baseLTVasCollateral: BigNumber;
reserveLiquidationThreshold: BigNumber;
reserveLiquidationBonus: BigNumber;
reserveFactor: BigNumber;
usageAsCollateralEnabled: boolean;
borrowingEnabled: boolean;
stableBorrowRateEnabled: boolean;
isActive: boolean;
isFrozen: boolean;
liquidityIndex: BigNumber;
variableBorrowIndex: BigNumber;
liquidityRate: BigNumber;
variableBorrowRate: BigNumber;
stableBorrowRate: BigNumber;
lastUpdateTimestamp: number;
depositTokenAddress: string;
stableDebtTokenAddress: string;
variableDebtTokenAddress: string;
strategy: string;
isExternalStrategy: boolean;
availableLiquidity: BigNumber;
totalPrincipalStableDebt: BigNumber;
averageStableRate: BigNumber;
totalStableDebt: BigNumber;
stableDebtLastUpdateTimestamp: BigNumber;
totalScaledVariableDebt: BigNumber;
priceInEth: BigNumber;
0: string;
1: string;
2: string;
3: string;
4: BigNumber;
5: BigNumber;
6: BigNumber;
7: BigNumber;
8: BigNumber;
9: boolean;
10: boolean;
11: boolean;
12: boolean;
13: boolean;
14: BigNumber;
15: BigNumber;
16: BigNumber;
17: BigNumber;
18: BigNumber;
19: number;
20: string;
21: string;
22: string;
23: string;
24: boolean;
25: BigNumber;
26: BigNumber;
27: BigNumber;
28: BigNumber;
29: BigNumber;
30: BigNumber;
31: BigNumber;
}[];
1: {
underlyingAsset: string;
scaledDepositTokenBalance: BigNumber;
usageAsCollateralEnabledOnUser: boolean;
stableBorrowRate: BigNumber;
scaledVariableDebt: BigNumber;
principalStableDebt: BigNumber;
stableBorrowLastUpdateTimestamp: BigNumber;
0: string;
1: BigNumber;
2: boolean;
3: BigNumber;
4: BigNumber;
5: BigNumber;
6: BigNumber;
}[];
2: BigNumber;
}>;
getUserReserveData(
asset: string,
user: string,
overrides?: CallOverrides
): Promise<{
currentDepositBalance: BigNumber;
currentStableDebt: BigNumber;
currentVariableDebt: BigNumber;
principalStableDebt: BigNumber;
scaledVariableDebt: BigNumber;
stableBorrowRate: BigNumber;
liquidityRate: BigNumber;
stableRateLastUpdated: number;
usageAsCollateralEnabled: boolean;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: BigNumber;
5: BigNumber;
6: BigNumber;
7: number;
8: boolean;
}>;
"getUserReserveData(address,address)"(
asset: string,
user: string,
overrides?: CallOverrides
): Promise<{
currentDepositBalance: BigNumber;
currentStableDebt: BigNumber;
currentVariableDebt: BigNumber;
principalStableDebt: BigNumber;
scaledVariableDebt: BigNumber;
stableBorrowRate: BigNumber;
liquidityRate: BigNumber;
stableRateLastUpdated: number;
usageAsCollateralEnabled: boolean;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: BigNumber;
5: BigNumber;
6: BigNumber;
7: number;
8: boolean;
}>;
rewardPoolNames(
pools: string[],
ignoreMask: BigNumberish,
overrides?: CallOverrides
): Promise<string[]>;
"rewardPoolNames(address[],uint256)"(
pools: string[],
ignoreMask: BigNumberish,
overrides?: CallOverrides
): Promise<string[]>;
callStatic: {
ADDRESS_PROVIDER(overrides?: CallOverrides): Promise<string>;
"ADDRESS_PROVIDER()"(overrides?: CallOverrides): Promise<string>;
ETH(overrides?: CallOverrides): Promise<string>;
"ETH()"(overrides?: CallOverrides): Promise<string>;
USD(overrides?: CallOverrides): Promise<string>;
"USD()"(overrides?: CallOverrides): Promise<string>;
balanceOf(
user: string,
token: string,
tokenType: BigNumberish,
overrides?: CallOverrides
): Promise<{
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
}>;
"balanceOf(address,address,uint8)"(
user: string,
token: string,
tokenType: BigNumberish,
overrides?: CallOverrides
): Promise<{
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
}>;
batchBalanceOf(
users: string[],
tokens: string[],
tokenTypes: BigNumberish[],
defType: BigNumberish,
overrides?: CallOverrides
): Promise<
{
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
}[]
>;
"batchBalanceOf(address[],address[],uint8[],uint8)"(
users: string[],
tokens: string[],
tokenTypes: BigNumberish[],
defType: BigNumberish,
overrides?: CallOverrides
): Promise<
{
balance: BigNumber;
underlyingBalance: BigNumber;
rewardedBalance: BigNumber;
unstakeWindowStart: number;
unstakeWindowEnd: number;
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: number;
4: number;
}[]
>;
explainReward(
holder: string,
minDuration: BigNumberish,
overrides?: CallOverrides
): Promise<{
at: number;
0: {
amountClaimable: BigNumber;
amountExtra: BigNumber;
maxBoost: BigNumber;
boostLimit: BigNumber;
latestClaimAt: number;
allocations: {
amount: BigNumber;
extra: BigNumber;
pool: string;
since: number;
factor: number;
rewardType: number;
0: BigNumber;
1: BigNumber;
2: string;
3: number;
4: number;
5: number;
}[];
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: number;
5: {
amount: BigNumber;
extra: BigNumber;
pool: string;
since: number;
factor: number;
rewardType: number;
0: BigNumber;
1: BigNumber;
2: string;
3: number;
4: number;
5: number;
}[];
};
1: number;
}>;
"explainReward(address,uint32)"(
holder: string,
minDuration: BigNumberish,
overrides?: CallOverrides
): Promise<{
at: number;
0: {
amountClaimable: BigNumber;
amountExtra: BigNumber;
maxBoost: BigNumber;
boostLimit: BigNumber;
latestClaimAt: number;
allocations: {
amount: BigNumber;
extra: BigNumber;
pool: string;
since: number;
factor: number;
rewardType: number;
0: BigNumber;
1: BigNumber;
2: string;
3: number;
4: number;
5: number;
}[];
0: BigNumber;
1: BigNumber;
2: BigNumber;
3: BigNumber;
4: number;
5: {
amount: BigNumber;
extra: BigNumber;
pool: string;
since: number;
factor: number;
rewardType: number;
0: BigNumber;
1: BigNumber;
2: string;
3: number;
4: number;
5: number;
}[];
};
1: number;
}>;
getAddresses(
overrides?: CallOverrides
): Promise<{
addressProvider: string;
lendingPool: string;
stakeConfigurator: string;
rewardConfigurator: string;
rewardController: string;
wethGateway: string;
priceOracle: string;
lendingPriceOracle: string;
rewardToken: string;
rewardStake: string;
referralRegistry: string;
0: string;
1: string;
2: string;
3: string;
4: string;
5: string;
6: string;
7: string;
8: string;
9: string;
10: string;
}>;
"getAddresses()"(
overrides?: CallOverrides
): Promise<{
addressProvider: string;
lendingPool: string;
stakeConfigurator: string;
rewardConfigurator: string;
rewardController: string;
wethGateway: string;
priceOracle: string;
lendingPriceOracle: string;
rewardToken: string;
rewardStake: string;
referralRegistry: string;
0: string;
1: string;
2: string;
3: string;
4: string;
5: string;
6: string;
7: string;
8: string;
9: string;
10: string;
}>;
getAllTokenDescriptions(
includeAssets: boolean,
overrides?: CallOverrides
): Promise<{
tokens: {
token: string;
priceToken: string;
rewardPool: string;
tokenSymbol: string;
underlying: string;
decimals: number;
tokenType: number;
active: boolean;
frozen: boolean;
0: string;
1: string;
2: string;
3: string;
4: string;
5: number;
6: number;
7: boolean;
8: boolean;
}[];
tokenCount: BigNumber;
0: {
token: string;
priceToken: string;
rewardPool: string;
tokenSymbol: string;
underlying: string;
decimals: number;
tokenType: number;
active: boolean;
frozen: boolean;
0: string;
1: string;
2: string;
3: string;
4: string;
5: number;
6: number;
7: boolean;
8: boolean;
}[];
1: BigNumber;
}>;
"getAllTokenDescriptions(bool)"(
includeAssets: boolean,
overrides?: CallOverrides
): Promise<{
tokens: {
token: string;
priceToken: string;
rewardPool: string;
tokenSymbol: string;
underlying: string;
decimals: number;
tokenType: number;
active: boolean;
frozen: boolean;
0: string;
1: string;
2: string;
3: string;
4: string;
5: number;
6: number;
7: boolean;
8: boolean;
}[];
tokenCount: BigNumber;
0: {
token: string;
priceToken: string;
rewardPool: string;
tokenSymbol: string;
underlying: string;
decimals: number;
tokenType: number;
active: boolean;
frozen: boolean;
0: string;
1: string;
2: string;
3: string;
4: string;
5: number;
6: number;
7: boolean;
8: boolean;
}[];
1: BigNumber;
}>;
getAllTokens(
includeAssets: boolean,
overrides?: CallOverrides
): Promise<{
tokens: string[];
tokenCount: BigNumber;
tokenTypes: number[];
0: string[];
1: BigNumber;
2: number[];
}>;
"getAllTokens(bool)"(
includeAssets: boolean,
overrides?: CallOverrides
): Promise<{
tokens: st