aave-protocol-v2/types/LendingPoolDataProviderFactory.ts

506 lines
31 KiB
TypeScript
Raw Normal View History

/* Generated by ts-generator ver. 0.0.8 */
/* tslint:disable */
2020-08-07 17:29:13 +00:00
import { Contract, ContractFactory, Signer } from "ethers";
import { Provider } from "ethers/providers";
import { UnsignedTransaction } from "ethers/utils/transaction";
2020-08-07 17:29:13 +00:00
import { TransactionOverrides } from ".";
import { LendingPoolDataProvider } from "./LendingPoolDataProvider";
export class LendingPoolDataProviderFactory extends ContractFactory {
constructor(signer?: Signer) {
super(_abi, _bytecode, signer);
}
deploy(overrides?: TransactionOverrides): Promise<LendingPoolDataProvider> {
return super.deploy(overrides) as Promise<LendingPoolDataProvider>;
}
getDeployTransaction(overrides?: TransactionOverrides): UnsignedTransaction {
return super.getDeployTransaction(overrides);
}
attach(address: string): LendingPoolDataProvider {
return super.attach(address) as LendingPoolDataProvider;
}
connect(signer: Signer): LendingPoolDataProviderFactory {
return super.connect(signer) as LendingPoolDataProviderFactory;
}
2020-08-07 17:29:13 +00:00
static connect(
address: string,
signerOrProvider: Signer | Provider
): LendingPoolDataProvider {
return new Contract(
address,
_abi,
signerOrProvider
) as LendingPoolDataProvider;
}
}
const _abi = [
{
inputs: [],
2020-08-07 17:29:13 +00:00
name: "DATA_PROVIDER_REVISION",
outputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "",
type: "uint256"
}
],
2020-08-07 17:29:13 +00:00
stateMutability: "view",
type: "function"
},
{
inputs: [],
2020-08-07 17:29:13 +00:00
name: "HEALTH_FACTOR_LIQUIDATION_THRESHOLD",
outputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "",
type: "uint256"
}
],
2020-08-07 17:29:13 +00:00
stateMutability: "view",
type: "function"
},
{
inputs: [],
2020-08-07 17:29:13 +00:00
name: "addressesProvider",
outputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "contract LendingPoolAddressesProvider",
name: "",
type: "address"
}
],
2020-08-07 17:29:13 +00:00
stateMutability: "view",
type: "function"
},
{
inputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "address",
name: "_reserve",
type: "address"
},
{
2020-08-07 17:29:13 +00:00
internalType: "address",
name: "_user",
type: "address"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "_amount",
type: "uint256"
}
],
2020-08-07 17:29:13 +00:00
name: "balanceDecreaseAllowed",
outputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "bool",
name: "",
type: "bool"
}
],
2020-08-07 17:29:13 +00:00
stateMutability: "view",
type: "function"
},
{
inputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "address",
name: "_reserve",
type: "address"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "_amount",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "_fee",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "_userCurrentBorrowBalanceTH",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "_userCurrentFeesETH",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "_userCurrentLtv",
type: "uint256"
}
],
2020-08-07 17:29:13 +00:00
name: "calculateCollateralNeededInETH",
outputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "",
type: "uint256"
}
],
2020-08-07 17:29:13 +00:00
stateMutability: "view",
type: "function"
},
{
inputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "address",
name: "_user",
type: "address"
}
],
2020-08-07 17:29:13 +00:00
name: "calculateUserGlobalData",
outputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "totalLiquidityBalanceETH",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "totalCollateralBalanceETH",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "totalBorrowBalanceETH",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "totalFeesETH",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "currentLtv",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "currentLiquidationThreshold",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "healthFactor",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "bool",
name: "healthFactorBelowThreshold",
type: "bool"
}
],
2020-08-07 17:29:13 +00:00
stateMutability: "view",
type: "function"
},
{
inputs: [],
2020-08-07 17:29:13 +00:00
name: "core",
outputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "contract LendingPoolCore",
name: "",
type: "address"
}
],
2020-08-07 17:29:13 +00:00
stateMutability: "view",
type: "function"
},
{
inputs: [],
2020-08-07 17:29:13 +00:00
name: "getHealthFactorLiquidationThreshold",
outputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "",
type: "uint256"
}
],
2020-08-07 17:29:13 +00:00
stateMutability: "pure",
type: "function"
},
{
inputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "address",
name: "_reserve",
type: "address"
}
],
2020-08-07 17:29:13 +00:00
name: "getReserveConfigurationData",
outputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "ltv",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "liquidationThreshold",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "liquidationBonus",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "address",
name: "rateStrategyAddress",
type: "address"
},
{
2020-08-07 17:29:13 +00:00
internalType: "bool",
name: "usageAsCollateralEnabled",
type: "bool"
},
{
2020-08-07 17:29:13 +00:00
internalType: "bool",
name: "borrowingEnabled",
type: "bool"
},
{
2020-08-07 17:29:13 +00:00
internalType: "bool",
name: "stableBorrowRateEnabled",
type: "bool"
},
{
2020-08-07 17:29:13 +00:00
internalType: "bool",
name: "isActive",
type: "bool"
}
],
2020-08-07 17:29:13 +00:00
stateMutability: "view",
type: "function"
},
{
inputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "address",
name: "_reserve",
type: "address"
}
],
2020-08-07 17:29:13 +00:00
name: "getReserveData",
outputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "totalLiquidity",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "availableLiquidity",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "totalBorrowsStable",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "totalBorrowsVariable",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "liquidityRate",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "variableBorrowRate",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "stableBorrowRate",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "averageStableBorrowRate",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "utilizationRate",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "liquidityIndex",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "variableBorrowIndex",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "address",
name: "aTokenAddress",
type: "address"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint40",
name: "lastUpdateTimestamp",
type: "uint40"
}
],
2020-08-07 17:29:13 +00:00
stateMutability: "view",
type: "function"
},
{
inputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "address",
name: "_user",
type: "address"
}
],
2020-08-07 17:29:13 +00:00
name: "getUserAccountData",
outputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "totalLiquidityETH",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "totalCollateralETH",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "totalBorrowsETH",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "totalFeesETH",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "availableBorrowsETH",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "currentLiquidationThreshold",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "ltv",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "healthFactor",
type: "uint256"
}
],
2020-08-07 17:29:13 +00:00
stateMutability: "view",
type: "function"
},
{
inputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "address",
name: "_reserve",
type: "address"
},
{
2020-08-07 17:29:13 +00:00
internalType: "address",
name: "_user",
type: "address"
}
],
2020-08-07 17:29:13 +00:00
name: "getUserReserveData",
outputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "currentATokenBalance",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "currentBorrowBalance",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "principalBorrowBalance",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "borrowRateMode",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "borrowRate",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "liquidityRate",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "originationFee",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "variableBorrowIndex",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "uint256",
name: "lastUpdateTimestamp",
type: "uint256"
},
{
2020-08-07 17:29:13 +00:00
internalType: "bool",
name: "usageAsCollateralEnabled",
type: "bool"
}
],
2020-08-07 17:29:13 +00:00
stateMutability: "view",
type: "function"
},
{
inputs: [
{
2020-08-07 17:29:13 +00:00
internalType: "contract LendingPoolAddressesProvider",
name: "_addressesProvider",
type: "address"
}
],
2020-08-07 17:29:13 +00:00
name: "initialize",
outputs: [],
2020-08-07 17:29:13 +00:00
stateMutability: "nonpayable",
type: "function"
}
];
const _bytecode =
2020-08-07 17:29:13 +00:00
"0x60806040526000805534801561001457600080fd5b50612a01806100246000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c806376e9d6151161008c578063c3525c2811610066578063c3525c28146103e4578063c4d66de8146103ec578063c72c4d1014610414578063f2f4eb2614610438576100cf565b806376e9d6151461032b5780638daf609f14610375578063bf92857c1461037d576100cf565b806312737c33146100d457806328dd2d011461012a5780632c6d0e9b146101aa57806335ea6a75146102135780633e150141146102ae5780633e44bee814610323575b600080fd5b610118600480360360c08110156100ea57600080fd5b506001600160a01b038135169060208101359060408101359060608101359060808101359060a00135610440565b60408051918252519081900360200190f35b6101586004803603604081101561014057600080fd5b506001600160a01b0381358116916020013516610633565b604080519a8b5260208b0199909952898901979097526060890195909552608088019390935260a087019190915260c086015260e0850152610100840152151561012083015251908190036101400190f35b6101d0600480360360208110156101c057600080fd5b50356001600160a01b0316610e1e565b604080519889526020890197909752878701959095526060870193909352608086019190915260a085015260c0840152151560e083015251908190036101000190f35b6102396004803603602081101561022957600080fd5b50356001600160a01b03166113c8565b604080519d8e5260208e019c909c528c8c019a909a5260608c019890985260808b019690965260a08a019490945260c089019290925260e08801526101008701526101208601526101408501526001600160a01b031661016084015264ffffffffff1661018083015251908190036101a00190f35b6102d4600480360360208110156102c457600080fd5b50356001600160a01b0316611c6f565b604080519889526020890197909752878701959095526001600160a01b0390931660608701529015156080860152151560a0850152151560c0840152151560e083015251908190036101000190f35b610118611fe2565b6103616004803603606081101561034157600080fd5b506001600160a01b03813581169160208101359091169060400135611fee565b604080519115158252519081900360200190f35b6101186122e9565b6103a36004803603602081101561039357600080fd5b50356001600160a01b03166122ee565b604080519889526020890197909752878701959095526060870193909352608086019190915260a085015260c084015260e083015251908190036101000190f35b61011861232f565b6104126004803603602081101561040257600080fd5b50356001600160a01b031661233b565b005b61041c612477565b604080516001600160a01b039092168252519081900360200190f35b61041c612486565b6034546040805163288d4ff760e21b81526001600160a01b03898116600483015291516000938493169163a2353fdc916024808301926020929190829003018186803b15801561048f57600080fd5b505afa1580156104a3573d6000803e3d6000fd5b505050506040513d60208110156104b957600080fd5b505160355460408051631f94a27560e31b815290519293506000926001600160a01b039092169163fca513a891600480820192602092909190829003018186803b15801561050657600080fd5b505afa15801561051a573d6000803e3d6000fd5b505050506040513d602081101561053057600080fd5b5051905060006105eb600a84900a6105df6105518c8c63ffffffff61249516565b856001600160a01b031663b3596f078f6040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156105a757600080fd5b505afa1580156105bb573d6000803e3d6000fd5b505050506040513d60208110156105d157600080fd5b50519063ffffffff6124f816565b9063ffffffff61255116565b90506000610624866105df60646106188661060c8e8e63ffffffff61249516565b9063ffffffff61249516565b9063ffffffff6124f816565b9b9a5050505050505050505050565b600080600080600080600080600080603460009054906101000a90046001600160a01b03166001600160a01b03166334b3beee8d6040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156106ad57600080fd5b505afa1580156106c1573d6000803e3d6000fd5b505050506040513d60208110156106d757600080fd5b5051604080516370a0823160e01b81526001600160a01b038e81166004830152915191909216916370a08231916024808301926020929190829003018186803b15801561072357600080fd5b505afa158015610737573d6000803e3d6000fd5b505050506040513d602081101561074d57600080fd5b810190808051906020019092919050505099506000603460009054906101000a90046001600160a01b03166001600160a01b0316631ca19f198e8e6040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b03168152602001826001600160a01b03166001600160a01b0316815260200192505050602060405180830381