@venusprotocol/venus-protocol 7.6.0-dev.2 → 7.6.0-dev.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/AccessControlledV8.sol/AccessControlledV8.dbg.json +1 -1
  2. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/IAccessControlManagerV8.sol/IAccessControlManagerV8.dbg.json +1 -1
  3. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/BoundValidatorInterface.dbg.json +1 -1
  4. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/OracleInterface.dbg.json +1 -1
  5. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/ResilientOracleInterface.dbg.json +1 -1
  6. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/TwapInterface.dbg.json +1 -1
  7. package/artifacts/@venusprotocol/solidity-utilities/contracts/MaxLoopsLimitHelper.sol/MaxLoopsLimitHelper.dbg.json +1 -1
  8. package/artifacts/@venusprotocol/solidity-utilities/contracts/TimeManagerV8.sol/TimeManagerV8.dbg.json +1 -1
  9. package/artifacts/build-info/{db82b17d0da6752b00ad696fe36aa8fb.json → f873604cc800d476500cd733aebbcd98.json} +1 -1
  10. package/artifacts/contracts/Admin/VBNBAdmin.sol/VBNBAdmin.dbg.json +1 -1
  11. package/artifacts/contracts/Admin/VBNBAdminStorage.sol/IProtocolShareReserve.dbg.json +1 -1
  12. package/artifacts/contracts/Admin/VBNBAdminStorage.sol/IWBNB.dbg.json +1 -1
  13. package/artifacts/contracts/Admin/VBNBAdminStorage.sol/VBNBAdminStorage.dbg.json +1 -1
  14. package/artifacts/contracts/Admin/VBNBAdminStorage.sol/VTokenInterface.dbg.json +1 -1
  15. package/artifacts/contracts/DelegateBorrowers/MoveDebtDelegate.sol/MoveDebtDelegate.dbg.json +1 -1
  16. package/artifacts/contracts/DelegateBorrowers/MoveDebtDelegate.sol/MoveDebtDelegate.json +2 -2
  17. package/artifacts/contracts/DelegateBorrowers/SwapDebtDelegate.sol/SwapDebtDelegate.dbg.json +1 -1
  18. package/artifacts/contracts/DelegateBorrowers/SwapDebtDelegate.sol/SwapDebtDelegate.json +2 -2
  19. package/artifacts/contracts/Governance/TokenRedeemer.sol/TokenRedeemer.dbg.json +1 -1
  20. package/artifacts/contracts/Governance/TokenRedeemer.sol/TokenRedeemer.json +71 -5
  21. package/artifacts/contracts/InterfacesV8.sol/IComptroller.dbg.json +1 -1
  22. package/artifacts/contracts/InterfacesV8.sol/ILiquidator.dbg.json +1 -1
  23. package/artifacts/contracts/InterfacesV8.sol/IProtocolShareReserve.dbg.json +1 -1
  24. package/artifacts/contracts/InterfacesV8.sol/IVAIController.dbg.json +1 -1
  25. package/artifacts/contracts/InterfacesV8.sol/IVBNB.dbg.json +1 -1
  26. package/artifacts/contracts/InterfacesV8.sol/IVBNB.json +83 -0
  27. package/artifacts/contracts/InterfacesV8.sol/IVBep20.dbg.json +1 -1
  28. package/artifacts/contracts/InterfacesV8.sol/IVBep20.json +52 -1
  29. package/artifacts/contracts/InterfacesV8.sol/IVToken.dbg.json +1 -1
  30. package/artifacts/contracts/InterfacesV8.sol/IVToken.json +70 -0
  31. package/artifacts/contracts/InterfacesV8.sol/IWBNB.dbg.json +1 -1
  32. package/artifacts/contracts/Liquidator/BUSDLiquidator.sol/BUSDLiquidator.dbg.json +1 -1
  33. package/artifacts/contracts/Liquidator/BUSDLiquidator.sol/BUSDLiquidator.json +2 -2
  34. package/artifacts/contracts/Liquidator/Liquidator.sol/Liquidator.dbg.json +1 -1
  35. package/artifacts/contracts/Liquidator/Liquidator.sol/Liquidator.json +2 -2
  36. package/artifacts/contracts/Liquidator/LiquidatorStorage.sol/LiquidatorStorage.dbg.json +1 -1
  37. package/artifacts/contracts/PegStability/IVAI.sol/IVAI.dbg.json +1 -1
  38. package/artifacts/contracts/PegStability/PegStability.sol/PegStability.dbg.json +1 -1
  39. package/artifacts/contracts/Swap/IRouterHelper.sol/IRouterHelper.dbg.json +1 -1
  40. package/artifacts/contracts/Swap/RouterHelper.sol/RouterHelper.dbg.json +1 -1
  41. package/artifacts/contracts/Swap/SwapRouter.sol/SwapRouter.dbg.json +1 -1
  42. package/artifacts/contracts/Swap/interfaces/IPancakePair.sol/IPancakePair.dbg.json +1 -1
  43. package/artifacts/contracts/Swap/interfaces/IPancakeSwapV2Factory.sol/IPancakeSwapV2Factory.dbg.json +1 -1
  44. package/artifacts/contracts/Swap/interfaces/IPancakeSwapV2Router.sol/IPancakeSwapV2Router.dbg.json +1 -1
  45. package/artifacts/contracts/Swap/interfaces/IVBNB.sol/IVBNB.dbg.json +1 -1
  46. package/artifacts/contracts/Swap/interfaces/IVtoken.sol/IVToken.dbg.json +1 -1
  47. package/artifacts/contracts/Swap/interfaces/IWBNB.sol/IWBNB.dbg.json +1 -1
  48. package/artifacts/contracts/Swap/interfaces/InterfaceComptroller.sol/InterfaceComptroller.dbg.json +1 -1
  49. package/artifacts/contracts/Swap/lib/PancakeLibrary.sol/PancakeLibrary.dbg.json +1 -1
  50. package/artifacts/contracts/Swap/lib/TransferHelper.sol/TransferHelper.dbg.json +1 -1
  51. package/artifacts/contracts/Tokens/Prime/Interfaces/IPoolRegistry.sol/PoolRegistryInterface.dbg.json +1 -1
  52. package/artifacts/contracts/Tokens/Prime/Interfaces/IPrime.sol/IPrime.dbg.json +1 -1
  53. package/artifacts/contracts/Tokens/Prime/Interfaces/IPrimeLiquidityProvider.sol/IPrimeLiquidityProvider.dbg.json +1 -1
  54. package/artifacts/contracts/Tokens/Prime/Interfaces/IVToken.sol/IVToken.dbg.json +1 -1
  55. package/artifacts/contracts/Tokens/Prime/Interfaces/IXVSVault.sol/IXVSVault.dbg.json +1 -1
  56. package/artifacts/contracts/Tokens/Prime/Interfaces/InterfaceComptroller.sol/InterfaceComptroller.dbg.json +1 -1
  57. package/artifacts/contracts/Tokens/Prime/Prime.sol/Prime.dbg.json +1 -1
  58. package/artifacts/contracts/Tokens/Prime/PrimeLiquidityProvider.sol/PrimeLiquidityProvider.dbg.json +1 -1
  59. package/artifacts/contracts/Tokens/Prime/PrimeLiquidityProviderStorage.sol/PrimeLiquidityProviderStorageV1.dbg.json +1 -1
  60. package/artifacts/contracts/Tokens/Prime/PrimeStorage.sol/PrimeStorageV1.dbg.json +1 -1
  61. package/artifacts/contracts/Tokens/Prime/libs/FixedMath.sol/FixedMath.dbg.json +1 -1
  62. package/artifacts/contracts/Tokens/Prime/libs/FixedMath0x.sol/FixedMath0x.dbg.json +1 -1
  63. package/artifacts/contracts/Tokens/Prime/libs/Scores.sol/Scores.dbg.json +1 -1
  64. package/artifacts/contracts/lib/Currency.sol/CurrencyLibrary.dbg.json +4 -0
  65. package/artifacts/contracts/lib/Currency.sol/CurrencyLibrary.json +29 -0
  66. package/artifacts/contracts/test/AccessControlManagerMock.sol/AccessControlManagerMock.dbg.json +1 -1
  67. package/artifacts/contracts/test/LiquidatorHarness.sol/LiquidatorHarness.dbg.json +1 -1
  68. package/artifacts/contracts/test/LiquidatorHarness.sol/LiquidatorHarness.json +2 -2
  69. package/artifacts/contracts/test/MockProtocolShareReserve.sol/IComptroller.dbg.json +1 -1
  70. package/artifacts/contracts/test/MockProtocolShareReserve.sol/IIncomeDestination.dbg.json +1 -1
  71. package/artifacts/contracts/test/MockProtocolShareReserve.sol/IMockProtocolShareReserve.dbg.json +1 -1
  72. package/artifacts/contracts/test/MockProtocolShareReserve.sol/IPoolRegistry.dbg.json +1 -1
  73. package/artifacts/contracts/test/MockProtocolShareReserve.sol/IPrime.dbg.json +1 -1
  74. package/artifacts/contracts/test/MockProtocolShareReserve.sol/IVToken.dbg.json +1 -1
  75. package/artifacts/contracts/test/MockProtocolShareReserve.sol/MaxLoopsLimitHelper.dbg.json +1 -1
  76. package/artifacts/contracts/test/MockProtocolShareReserve.sol/MockProtocolShareReserve.dbg.json +1 -1
  77. package/artifacts/contracts/test/PrimeScenario.sol/PrimeScenario.dbg.json +1 -1
  78. package/contracts/Governance/TokenRedeemer.sol +126 -20
  79. package/contracts/InterfacesV8.sol +10 -2
  80. package/contracts/lib/Currency.sol +82 -0
  81. package/deploy/012-deploy-token-redeemer.ts +2 -1
  82. package/deployments/bscmainnet/TokenRedeemer.json +105 -34
  83. package/deployments/bscmainnet.json +70 -4
  84. package/deployments/bscmainnet_addresses.json +1 -1
  85. package/dist/deploy/012-deploy-token-redeemer.js +2 -1
  86. package/dist/deployments/bscmainnet.json +70 -4
  87. package/dist/deployments/bscmainnet_addresses.json +1 -1
  88. package/dist/typechain/contracts/Governance/TokenRedeemer.d.ts +29 -1
  89. package/dist/typechain/contracts/InterfacesV8.sol/IVBNB.d.ts +73 -1
  90. package/dist/typechain/contracts/InterfacesV8.sol/IVBep20.d.ts +46 -6
  91. package/dist/typechain/contracts/InterfacesV8.sol/IVToken.d.ts +57 -1
  92. package/dist/typechain/contracts/index.d.ts +2 -0
  93. package/dist/typechain/contracts/lib/Currency.sol/CurrencyLibrary.d.ts +42 -0
  94. package/dist/typechain/contracts/lib/Currency.sol/CurrencyLibrary.js +3 -0
  95. package/dist/typechain/contracts/lib/Currency.sol/index.d.ts +1 -0
  96. package/dist/typechain/contracts/lib/Currency.sol/index.js +2 -0
  97. package/dist/typechain/contracts/lib/index.d.ts +2 -0
  98. package/dist/typechain/contracts/lib/index.js +3 -0
  99. package/dist/typechain/factories/contracts/DelegateBorrowers/MoveDebtDelegate__factory.d.ts +1 -1
  100. package/dist/typechain/factories/contracts/DelegateBorrowers/MoveDebtDelegate__factory.js +1 -1
  101. package/dist/typechain/factories/contracts/DelegateBorrowers/SwapDebtDelegate__factory.d.ts +1 -1
  102. package/dist/typechain/factories/contracts/DelegateBorrowers/SwapDebtDelegate__factory.js +1 -1
  103. package/dist/typechain/factories/contracts/Governance/TokenRedeemer__factory.d.ts +57 -6
  104. package/dist/typechain/factories/contracts/Governance/TokenRedeemer__factory.js +74 -8
  105. package/dist/typechain/factories/contracts/InterfacesV8.sol/IVBNB__factory.d.ts +62 -0
  106. package/dist/typechain/factories/contracts/InterfacesV8.sol/IVBNB__factory.js +83 -0
  107. package/dist/typechain/factories/contracts/InterfacesV8.sol/IVBep20__factory.d.ts +39 -1
  108. package/dist/typechain/factories/contracts/InterfacesV8.sol/IVBep20__factory.js +52 -1
  109. package/dist/typechain/factories/contracts/InterfacesV8.sol/IVToken__factory.d.ts +52 -0
  110. package/dist/typechain/factories/contracts/InterfacesV8.sol/IVToken__factory.js +70 -0
  111. package/dist/typechain/factories/contracts/Liquidator/BUSDLiquidator__factory.d.ts +1 -1
  112. package/dist/typechain/factories/contracts/Liquidator/BUSDLiquidator__factory.js +1 -1
  113. package/dist/typechain/factories/contracts/Liquidator/Liquidator__factory.d.ts +1 -1
  114. package/dist/typechain/factories/contracts/Liquidator/Liquidator__factory.js +1 -1
  115. package/dist/typechain/factories/contracts/index.d.ts +1 -0
  116. package/dist/typechain/factories/contracts/index.js +2 -1
  117. package/dist/typechain/factories/contracts/lib/Currency.sol/CurrencyLibrary__factory.d.ts +35 -0
  118. package/dist/typechain/factories/contracts/lib/Currency.sol/CurrencyLibrary__factory.js +58 -0
  119. package/dist/typechain/factories/contracts/lib/Currency.sol/index.d.ts +1 -0
  120. package/dist/typechain/factories/contracts/lib/Currency.sol/index.js +8 -0
  121. package/dist/typechain/factories/contracts/lib/index.d.ts +1 -0
  122. package/dist/typechain/factories/contracts/lib/index.js +30 -0
  123. package/dist/typechain/factories/contracts/test/LiquidatorHarness__factory.d.ts +1 -1
  124. package/dist/typechain/factories/contracts/test/LiquidatorHarness__factory.js +1 -1
  125. package/dist/typechain/index.d.ts +2 -0
  126. package/dist/typechain/index.js +6 -4
  127. package/package.json +1 -1
@@ -35605,7 +35605,7 @@
35605
35605
  ]
35606
35606
  },
35607
35607
  "TokenRedeemer": {
35608
- "address": "0x67B10f3BC6B141D67c598C73CEe45E6635292Acd",
35608
+ "address": "0xd039B647603219D6D39C051c25f945c0E53d75F3",
35609
35609
  "abi": [
35610
35610
  {
35611
35611
  "inputs": [
@@ -35613,11 +35613,37 @@
35613
35613
  "internalType": "address",
35614
35614
  "name": "owner_",
35615
35615
  "type": "address"
35616
+ },
35617
+ {
35618
+ "internalType": "contract IVBNB",
35619
+ "name": "vBNB",
35620
+ "type": "address"
35616
35621
  }
35617
35622
  ],
35618
35623
  "stateMutability": "nonpayable",
35619
35624
  "type": "constructor"
35620
35625
  },
35626
+ {
35627
+ "inputs": [
35628
+ {
35629
+ "internalType": "uint256",
35630
+ "name": "errCode",
35631
+ "type": "uint256"
35632
+ }
35633
+ ],
35634
+ "name": "AccrueInterestFailed",
35635
+ "type": "error"
35636
+ },
35637
+ {
35638
+ "inputs": [],
35639
+ "name": "NativeTokenTransferFailed",
35640
+ "type": "error"
35641
+ },
35642
+ {
35643
+ "inputs": [],
35644
+ "name": "NativeTransferFailed",
35645
+ "type": "error"
35646
+ },
35621
35647
  {
35622
35648
  "inputs": [
35623
35649
  {
@@ -35683,6 +35709,19 @@
35683
35709
  "name": "OwnershipTransferred",
35684
35710
  "type": "event"
35685
35711
  },
35712
+ {
35713
+ "inputs": [],
35714
+ "name": "VBNB",
35715
+ "outputs": [
35716
+ {
35717
+ "internalType": "contract IVBNB",
35718
+ "name": "",
35719
+ "type": "address"
35720
+ }
35721
+ ],
35722
+ "stateMutability": "view",
35723
+ "type": "function"
35724
+ },
35686
35725
  {
35687
35726
  "inputs": [],
35688
35727
  "name": "acceptOwnership",
@@ -35719,7 +35758,30 @@
35719
35758
  {
35720
35759
  "inputs": [
35721
35760
  {
35722
- "internalType": "contract IVBep20",
35761
+ "internalType": "contract IVToken",
35762
+ "name": "vToken",
35763
+ "type": "address"
35764
+ },
35765
+ {
35766
+ "internalType": "address[]",
35767
+ "name": "borrowers",
35768
+ "type": "address[]"
35769
+ },
35770
+ {
35771
+ "internalType": "address",
35772
+ "name": "receiver",
35773
+ "type": "address"
35774
+ }
35775
+ ],
35776
+ "name": "redeemAndBatchRepay",
35777
+ "outputs": [],
35778
+ "stateMutability": "nonpayable",
35779
+ "type": "function"
35780
+ },
35781
+ {
35782
+ "inputs": [
35783
+ {
35784
+ "internalType": "contract IVToken",
35723
35785
  "name": "vToken",
35724
35786
  "type": "address"
35725
35787
  },
@@ -35737,7 +35799,7 @@
35737
35799
  {
35738
35800
  "inputs": [
35739
35801
  {
35740
- "internalType": "contract IVBep20",
35802
+ "internalType": "contract IVToken",
35741
35803
  "name": "vToken",
35742
35804
  "type": "address"
35743
35805
  },
@@ -35772,7 +35834,7 @@
35772
35834
  {
35773
35835
  "inputs": [
35774
35836
  {
35775
- "internalType": "contract IERC20",
35837
+ "internalType": "address",
35776
35838
  "name": "token",
35777
35839
  "type": "address"
35778
35840
  },
@@ -35799,6 +35861,10 @@
35799
35861
  "outputs": [],
35800
35862
  "stateMutability": "nonpayable",
35801
35863
  "type": "function"
35864
+ },
35865
+ {
35866
+ "stateMutability": "payable",
35867
+ "type": "receive"
35802
35868
  }
35803
35869
  ]
35804
35870
  },
@@ -67,7 +67,7 @@
67
67
  "TUSDOLD_Proxy": "0x14016E85a25aeb13065688cAFB43044C2ef86784",
68
68
  "TUSD_Implementation": "0x0d7adc70a18a5aef0bd6ecb098e1da0244c57711",
69
69
  "TUSD_Proxy": "0x40af3827F39D0EAcBF4A168f8D4ee67c121D11c9",
70
- "TokenRedeemer": "0x67B10f3BC6B141D67c598C73CEe45E6635292Acd",
70
+ "TokenRedeemer": "0xd039B647603219D6D39C051c25f945c0E53d75F3",
71
71
  "USDC": "0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d",
72
72
  "USDC_Implementation": "0xba5fe23f8a3a24bed3236f05f2fcf35fd0bf0b5c",
73
73
  "USDC_Proxy": "0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d",
@@ -5,12 +5,13 @@ const func = async function (hre) {
5
5
  const { deploy } = deployments;
6
6
  const { deployer } = await getNamedAccounts();
7
7
  const normalVipTimelockAddress = (await deployments.get("NormalTimelock")).address;
8
+ const vBNBAddress = (await deployments.get("vBNB")).address;
8
9
  await deploy("TokenRedeemer", {
9
10
  contract: "TokenRedeemer",
10
11
  from: deployer,
11
12
  log: true,
12
13
  autoMine: true,
13
- args: [normalVipTimelockAddress],
14
+ args: [normalVipTimelockAddress, vBNBAddress],
14
15
  });
15
16
  };
16
17
  func.tags = ["TokenRedeemer"];
@@ -35605,7 +35605,7 @@
35605
35605
  ]
35606
35606
  },
35607
35607
  "TokenRedeemer": {
35608
- "address": "0x67B10f3BC6B141D67c598C73CEe45E6635292Acd",
35608
+ "address": "0xd039B647603219D6D39C051c25f945c0E53d75F3",
35609
35609
  "abi": [
35610
35610
  {
35611
35611
  "inputs": [
@@ -35613,11 +35613,37 @@
35613
35613
  "internalType": "address",
35614
35614
  "name": "owner_",
35615
35615
  "type": "address"
35616
+ },
35617
+ {
35618
+ "internalType": "contract IVBNB",
35619
+ "name": "vBNB",
35620
+ "type": "address"
35616
35621
  }
35617
35622
  ],
35618
35623
  "stateMutability": "nonpayable",
35619
35624
  "type": "constructor"
35620
35625
  },
35626
+ {
35627
+ "inputs": [
35628
+ {
35629
+ "internalType": "uint256",
35630
+ "name": "errCode",
35631
+ "type": "uint256"
35632
+ }
35633
+ ],
35634
+ "name": "AccrueInterestFailed",
35635
+ "type": "error"
35636
+ },
35637
+ {
35638
+ "inputs": [],
35639
+ "name": "NativeTokenTransferFailed",
35640
+ "type": "error"
35641
+ },
35642
+ {
35643
+ "inputs": [],
35644
+ "name": "NativeTransferFailed",
35645
+ "type": "error"
35646
+ },
35621
35647
  {
35622
35648
  "inputs": [
35623
35649
  {
@@ -35683,6 +35709,19 @@
35683
35709
  "name": "OwnershipTransferred",
35684
35710
  "type": "event"
35685
35711
  },
35712
+ {
35713
+ "inputs": [],
35714
+ "name": "VBNB",
35715
+ "outputs": [
35716
+ {
35717
+ "internalType": "contract IVBNB",
35718
+ "name": "",
35719
+ "type": "address"
35720
+ }
35721
+ ],
35722
+ "stateMutability": "view",
35723
+ "type": "function"
35724
+ },
35686
35725
  {
35687
35726
  "inputs": [],
35688
35727
  "name": "acceptOwnership",
@@ -35719,7 +35758,30 @@
35719
35758
  {
35720
35759
  "inputs": [
35721
35760
  {
35722
- "internalType": "contract IVBep20",
35761
+ "internalType": "contract IVToken",
35762
+ "name": "vToken",
35763
+ "type": "address"
35764
+ },
35765
+ {
35766
+ "internalType": "address[]",
35767
+ "name": "borrowers",
35768
+ "type": "address[]"
35769
+ },
35770
+ {
35771
+ "internalType": "address",
35772
+ "name": "receiver",
35773
+ "type": "address"
35774
+ }
35775
+ ],
35776
+ "name": "redeemAndBatchRepay",
35777
+ "outputs": [],
35778
+ "stateMutability": "nonpayable",
35779
+ "type": "function"
35780
+ },
35781
+ {
35782
+ "inputs": [
35783
+ {
35784
+ "internalType": "contract IVToken",
35723
35785
  "name": "vToken",
35724
35786
  "type": "address"
35725
35787
  },
@@ -35737,7 +35799,7 @@
35737
35799
  {
35738
35800
  "inputs": [
35739
35801
  {
35740
- "internalType": "contract IVBep20",
35802
+ "internalType": "contract IVToken",
35741
35803
  "name": "vToken",
35742
35804
  "type": "address"
35743
35805
  },
@@ -35772,7 +35834,7 @@
35772
35834
  {
35773
35835
  "inputs": [
35774
35836
  {
35775
- "internalType": "contract IERC20",
35837
+ "internalType": "address",
35776
35838
  "name": "token",
35777
35839
  "type": "address"
35778
35840
  },
@@ -35799,6 +35861,10 @@
35799
35861
  "outputs": [],
35800
35862
  "stateMutability": "nonpayable",
35801
35863
  "type": "function"
35864
+ },
35865
+ {
35866
+ "stateMutability": "payable",
35867
+ "type": "receive"
35802
35868
  }
35803
35869
  ]
35804
35870
  },
@@ -67,7 +67,7 @@
67
67
  "TUSDOLD_Proxy": "0x14016E85a25aeb13065688cAFB43044C2ef86784",
68
68
  "TUSD_Implementation": "0x0d7adc70a18a5aef0bd6ecb098e1da0244c57711",
69
69
  "TUSD_Proxy": "0x40af3827F39D0EAcBF4A168f8D4ee67c121D11c9",
70
- "TokenRedeemer": "0x67B10f3BC6B141D67c598C73CEe45E6635292Acd",
70
+ "TokenRedeemer": "0xd039B647603219D6D39C051c25f945c0E53d75F3",
71
71
  "USDC": "0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d",
72
72
  "USDC_Implementation": "0xba5fe23f8a3a24bed3236f05f2fcf35fd0bf0b5c",
73
73
  "USDC_Proxy": "0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d",
@@ -4,19 +4,27 @@ import type { Listener, Provider } from "@ethersproject/providers";
4
4
  import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers";
5
5
  export interface TokenRedeemerInterface extends utils.Interface {
6
6
  functions: {
7
+ "VBNB()": FunctionFragment;
7
8
  "acceptOwnership()": FunctionFragment;
8
9
  "owner()": FunctionFragment;
9
10
  "pendingOwner()": FunctionFragment;
11
+ "redeemAndBatchRepay(address,address[],address)": FunctionFragment;
10
12
  "redeemAndTransfer(address,address)": FunctionFragment;
11
13
  "redeemUnderlyingAndRepayBorrowBehalf(address,address,uint256,address)": FunctionFragment;
12
14
  "renounceOwnership()": FunctionFragment;
13
15
  "sweepTokens(address,address)": FunctionFragment;
14
16
  "transferOwnership(address)": FunctionFragment;
15
17
  };
16
- getFunction(nameOrSignatureOrTopic: "acceptOwnership" | "owner" | "pendingOwner" | "redeemAndTransfer" | "redeemUnderlyingAndRepayBorrowBehalf" | "renounceOwnership" | "sweepTokens" | "transferOwnership"): FunctionFragment;
18
+ getFunction(nameOrSignatureOrTopic: "VBNB" | "acceptOwnership" | "owner" | "pendingOwner" | "redeemAndBatchRepay" | "redeemAndTransfer" | "redeemUnderlyingAndRepayBorrowBehalf" | "renounceOwnership" | "sweepTokens" | "transferOwnership"): FunctionFragment;
19
+ encodeFunctionData(functionFragment: "VBNB", values?: undefined): string;
17
20
  encodeFunctionData(functionFragment: "acceptOwnership", values?: undefined): string;
18
21
  encodeFunctionData(functionFragment: "owner", values?: undefined): string;
19
22
  encodeFunctionData(functionFragment: "pendingOwner", values?: undefined): string;
23
+ encodeFunctionData(functionFragment: "redeemAndBatchRepay", values: [
24
+ PromiseOrValue<string>,
25
+ PromiseOrValue<string>[],
26
+ PromiseOrValue<string>
27
+ ]): string;
20
28
  encodeFunctionData(functionFragment: "redeemAndTransfer", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
21
29
  encodeFunctionData(functionFragment: "redeemUnderlyingAndRepayBorrowBehalf", values: [
22
30
  PromiseOrValue<string>,
@@ -27,9 +35,11 @@ export interface TokenRedeemerInterface extends utils.Interface {
27
35
  encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string;
28
36
  encodeFunctionData(functionFragment: "sweepTokens", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
29
37
  encodeFunctionData(functionFragment: "transferOwnership", values: [PromiseOrValue<string>]): string;
38
+ decodeFunctionResult(functionFragment: "VBNB", data: BytesLike): Result;
30
39
  decodeFunctionResult(functionFragment: "acceptOwnership", data: BytesLike): Result;
31
40
  decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result;
32
41
  decodeFunctionResult(functionFragment: "pendingOwner", data: BytesLike): Result;
42
+ decodeFunctionResult(functionFragment: "redeemAndBatchRepay", data: BytesLike): Result;
33
43
  decodeFunctionResult(functionFragment: "redeemAndTransfer", data: BytesLike): Result;
34
44
  decodeFunctionResult(functionFragment: "redeemUnderlyingAndRepayBorrowBehalf", data: BytesLike): Result;
35
45
  decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result;
@@ -75,11 +85,15 @@ export interface TokenRedeemer extends BaseContract {
75
85
  once: OnEvent<this>;
76
86
  removeListener: OnEvent<this>;
77
87
  functions: {
88
+ VBNB(overrides?: CallOverrides): Promise<[string]>;
78
89
  acceptOwnership(overrides?: Overrides & {
79
90
  from?: PromiseOrValue<string>;
80
91
  }): Promise<ContractTransaction>;
81
92
  owner(overrides?: CallOverrides): Promise<[string]>;
82
93
  pendingOwner(overrides?: CallOverrides): Promise<[string]>;
94
+ redeemAndBatchRepay(vToken: PromiseOrValue<string>, borrowers: PromiseOrValue<string>[], receiver: PromiseOrValue<string>, overrides?: Overrides & {
95
+ from?: PromiseOrValue<string>;
96
+ }): Promise<ContractTransaction>;
83
97
  redeemAndTransfer(vToken: PromiseOrValue<string>, destination: PromiseOrValue<string>, overrides?: Overrides & {
84
98
  from?: PromiseOrValue<string>;
85
99
  }): Promise<ContractTransaction>;
@@ -96,11 +110,15 @@ export interface TokenRedeemer extends BaseContract {
96
110
  from?: PromiseOrValue<string>;
97
111
  }): Promise<ContractTransaction>;
98
112
  };
113
+ VBNB(overrides?: CallOverrides): Promise<string>;
99
114
  acceptOwnership(overrides?: Overrides & {
100
115
  from?: PromiseOrValue<string>;
101
116
  }): Promise<ContractTransaction>;
102
117
  owner(overrides?: CallOverrides): Promise<string>;
103
118
  pendingOwner(overrides?: CallOverrides): Promise<string>;
119
+ redeemAndBatchRepay(vToken: PromiseOrValue<string>, borrowers: PromiseOrValue<string>[], receiver: PromiseOrValue<string>, overrides?: Overrides & {
120
+ from?: PromiseOrValue<string>;
121
+ }): Promise<ContractTransaction>;
104
122
  redeemAndTransfer(vToken: PromiseOrValue<string>, destination: PromiseOrValue<string>, overrides?: Overrides & {
105
123
  from?: PromiseOrValue<string>;
106
124
  }): Promise<ContractTransaction>;
@@ -117,9 +135,11 @@ export interface TokenRedeemer extends BaseContract {
117
135
  from?: PromiseOrValue<string>;
118
136
  }): Promise<ContractTransaction>;
119
137
  callStatic: {
138
+ VBNB(overrides?: CallOverrides): Promise<string>;
120
139
  acceptOwnership(overrides?: CallOverrides): Promise<void>;
121
140
  owner(overrides?: CallOverrides): Promise<string>;
122
141
  pendingOwner(overrides?: CallOverrides): Promise<string>;
142
+ redeemAndBatchRepay(vToken: PromiseOrValue<string>, borrowers: PromiseOrValue<string>[], receiver: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
123
143
  redeemAndTransfer(vToken: PromiseOrValue<string>, destination: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
124
144
  redeemUnderlyingAndRepayBorrowBehalf(vToken: PromiseOrValue<string>, borrower: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, receiver: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
125
145
  renounceOwnership(overrides?: CallOverrides): Promise<void>;
@@ -133,11 +153,15 @@ export interface TokenRedeemer extends BaseContract {
133
153
  OwnershipTransferred(previousOwner?: PromiseOrValue<string> | null, newOwner?: PromiseOrValue<string> | null): OwnershipTransferredEventFilter;
134
154
  };
135
155
  estimateGas: {
156
+ VBNB(overrides?: CallOverrides): Promise<BigNumber>;
136
157
  acceptOwnership(overrides?: Overrides & {
137
158
  from?: PromiseOrValue<string>;
138
159
  }): Promise<BigNumber>;
139
160
  owner(overrides?: CallOverrides): Promise<BigNumber>;
140
161
  pendingOwner(overrides?: CallOverrides): Promise<BigNumber>;
162
+ redeemAndBatchRepay(vToken: PromiseOrValue<string>, borrowers: PromiseOrValue<string>[], receiver: PromiseOrValue<string>, overrides?: Overrides & {
163
+ from?: PromiseOrValue<string>;
164
+ }): Promise<BigNumber>;
141
165
  redeemAndTransfer(vToken: PromiseOrValue<string>, destination: PromiseOrValue<string>, overrides?: Overrides & {
142
166
  from?: PromiseOrValue<string>;
143
167
  }): Promise<BigNumber>;
@@ -155,11 +179,15 @@ export interface TokenRedeemer extends BaseContract {
155
179
  }): Promise<BigNumber>;
156
180
  };
157
181
  populateTransaction: {
182
+ VBNB(overrides?: CallOverrides): Promise<PopulatedTransaction>;
158
183
  acceptOwnership(overrides?: Overrides & {
159
184
  from?: PromiseOrValue<string>;
160
185
  }): Promise<PopulatedTransaction>;
161
186
  owner(overrides?: CallOverrides): Promise<PopulatedTransaction>;
162
187
  pendingOwner(overrides?: CallOverrides): Promise<PopulatedTransaction>;
188
+ redeemAndBatchRepay(vToken: PromiseOrValue<string>, borrowers: PromiseOrValue<string>[], receiver: PromiseOrValue<string>, overrides?: Overrides & {
189
+ from?: PromiseOrValue<string>;
190
+ }): Promise<PopulatedTransaction>;
163
191
  redeemAndTransfer(vToken: PromiseOrValue<string>, destination: PromiseOrValue<string>, overrides?: Overrides & {
164
192
  from?: PromiseOrValue<string>;
165
193
  }): Promise<PopulatedTransaction>;
@@ -4,25 +4,35 @@ import type { Listener, Provider } from "@ethersproject/providers";
4
4
  import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PayableOverrides, PopulatedTransaction, Signer, utils } from "ethers";
5
5
  export interface IVBNBInterface extends utils.Interface {
6
6
  functions: {
7
+ "accrueInterest()": FunctionFragment;
7
8
  "allowance(address,address)": FunctionFragment;
8
9
  "approve(address,uint256)": FunctionFragment;
9
10
  "balanceOf(address)": FunctionFragment;
11
+ "balanceOfUnderlying(address)": FunctionFragment;
10
12
  "borrowBalanceCurrent(address)": FunctionFragment;
13
+ "borrowBalanceStored(address)": FunctionFragment;
11
14
  "comptroller()": FunctionFragment;
12
15
  "liquidateBorrow(address,address)": FunctionFragment;
13
16
  "redeem(uint256)": FunctionFragment;
17
+ "redeemUnderlying(uint256)": FunctionFragment;
18
+ "repayBorrowBehalf(address)": FunctionFragment;
14
19
  "totalSupply()": FunctionFragment;
15
20
  "transfer(address,uint256)": FunctionFragment;
16
21
  "transferFrom(address,address,uint256)": FunctionFragment;
17
22
  };
18
- getFunction(nameOrSignatureOrTopic: "allowance" | "approve" | "balanceOf" | "borrowBalanceCurrent" | "comptroller" | "liquidateBorrow" | "redeem" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment;
23
+ getFunction(nameOrSignatureOrTopic: "accrueInterest" | "allowance" | "approve" | "balanceOf" | "balanceOfUnderlying" | "borrowBalanceCurrent" | "borrowBalanceStored" | "comptroller" | "liquidateBorrow" | "redeem" | "redeemUnderlying" | "repayBorrowBehalf" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment;
24
+ encodeFunctionData(functionFragment: "accrueInterest", values?: undefined): string;
19
25
  encodeFunctionData(functionFragment: "allowance", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
20
26
  encodeFunctionData(functionFragment: "approve", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
21
27
  encodeFunctionData(functionFragment: "balanceOf", values: [PromiseOrValue<string>]): string;
28
+ encodeFunctionData(functionFragment: "balanceOfUnderlying", values: [PromiseOrValue<string>]): string;
22
29
  encodeFunctionData(functionFragment: "borrowBalanceCurrent", values: [PromiseOrValue<string>]): string;
30
+ encodeFunctionData(functionFragment: "borrowBalanceStored", values: [PromiseOrValue<string>]): string;
23
31
  encodeFunctionData(functionFragment: "comptroller", values?: undefined): string;
24
32
  encodeFunctionData(functionFragment: "liquidateBorrow", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
25
33
  encodeFunctionData(functionFragment: "redeem", values: [PromiseOrValue<BigNumberish>]): string;
34
+ encodeFunctionData(functionFragment: "redeemUnderlying", values: [PromiseOrValue<BigNumberish>]): string;
35
+ encodeFunctionData(functionFragment: "repayBorrowBehalf", values: [PromiseOrValue<string>]): string;
26
36
  encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string;
27
37
  encodeFunctionData(functionFragment: "transfer", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
28
38
  encodeFunctionData(functionFragment: "transferFrom", values: [
@@ -30,13 +40,18 @@ export interface IVBNBInterface extends utils.Interface {
30
40
  PromiseOrValue<string>,
31
41
  PromiseOrValue<BigNumberish>
32
42
  ]): string;
43
+ decodeFunctionResult(functionFragment: "accrueInterest", data: BytesLike): Result;
33
44
  decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result;
34
45
  decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result;
35
46
  decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result;
47
+ decodeFunctionResult(functionFragment: "balanceOfUnderlying", data: BytesLike): Result;
36
48
  decodeFunctionResult(functionFragment: "borrowBalanceCurrent", data: BytesLike): Result;
49
+ decodeFunctionResult(functionFragment: "borrowBalanceStored", data: BytesLike): Result;
37
50
  decodeFunctionResult(functionFragment: "comptroller", data: BytesLike): Result;
38
51
  decodeFunctionResult(functionFragment: "liquidateBorrow", data: BytesLike): Result;
39
52
  decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result;
53
+ decodeFunctionResult(functionFragment: "redeemUnderlying", data: BytesLike): Result;
54
+ decodeFunctionResult(functionFragment: "repayBorrowBehalf", data: BytesLike): Result;
40
55
  decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result;
41
56
  decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result;
42
57
  decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result;
@@ -84,14 +99,21 @@ export interface IVBNB extends BaseContract {
84
99
  once: OnEvent<this>;
85
100
  removeListener: OnEvent<this>;
86
101
  functions: {
102
+ accrueInterest(overrides?: Overrides & {
103
+ from?: PromiseOrValue<string>;
104
+ }): Promise<ContractTransaction>;
87
105
  allowance(owner: PromiseOrValue<string>, spender: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
88
106
  approve(spender: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
89
107
  from?: PromiseOrValue<string>;
90
108
  }): Promise<ContractTransaction>;
91
109
  balanceOf(account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
110
+ balanceOfUnderlying(owner: PromiseOrValue<string>, overrides?: Overrides & {
111
+ from?: PromiseOrValue<string>;
112
+ }): Promise<ContractTransaction>;
92
113
  borrowBalanceCurrent(borrower: PromiseOrValue<string>, overrides?: Overrides & {
93
114
  from?: PromiseOrValue<string>;
94
115
  }): Promise<ContractTransaction>;
116
+ borrowBalanceStored(account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
95
117
  comptroller(overrides?: CallOverrides): Promise<[string]>;
96
118
  liquidateBorrow(borrower: PromiseOrValue<string>, vTokenCollateral: PromiseOrValue<string>, overrides?: PayableOverrides & {
97
119
  from?: PromiseOrValue<string>;
@@ -99,6 +121,12 @@ export interface IVBNB extends BaseContract {
99
121
  redeem(redeemTokens: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
100
122
  from?: PromiseOrValue<string>;
101
123
  }): Promise<ContractTransaction>;
124
+ redeemUnderlying(redeemAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
125
+ from?: PromiseOrValue<string>;
126
+ }): Promise<ContractTransaction>;
127
+ repayBorrowBehalf(borrower: PromiseOrValue<string>, overrides?: PayableOverrides & {
128
+ from?: PromiseOrValue<string>;
129
+ }): Promise<ContractTransaction>;
102
130
  totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>;
103
131
  transfer(to: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
104
132
  from?: PromiseOrValue<string>;
@@ -107,14 +135,21 @@ export interface IVBNB extends BaseContract {
107
135
  from?: PromiseOrValue<string>;
108
136
  }): Promise<ContractTransaction>;
109
137
  };
138
+ accrueInterest(overrides?: Overrides & {
139
+ from?: PromiseOrValue<string>;
140
+ }): Promise<ContractTransaction>;
110
141
  allowance(owner: PromiseOrValue<string>, spender: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
111
142
  approve(spender: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
112
143
  from?: PromiseOrValue<string>;
113
144
  }): Promise<ContractTransaction>;
114
145
  balanceOf(account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
146
+ balanceOfUnderlying(owner: PromiseOrValue<string>, overrides?: Overrides & {
147
+ from?: PromiseOrValue<string>;
148
+ }): Promise<ContractTransaction>;
115
149
  borrowBalanceCurrent(borrower: PromiseOrValue<string>, overrides?: Overrides & {
116
150
  from?: PromiseOrValue<string>;
117
151
  }): Promise<ContractTransaction>;
152
+ borrowBalanceStored(account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
118
153
  comptroller(overrides?: CallOverrides): Promise<string>;
119
154
  liquidateBorrow(borrower: PromiseOrValue<string>, vTokenCollateral: PromiseOrValue<string>, overrides?: PayableOverrides & {
120
155
  from?: PromiseOrValue<string>;
@@ -122,6 +157,12 @@ export interface IVBNB extends BaseContract {
122
157
  redeem(redeemTokens: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
123
158
  from?: PromiseOrValue<string>;
124
159
  }): Promise<ContractTransaction>;
160
+ redeemUnderlying(redeemAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
161
+ from?: PromiseOrValue<string>;
162
+ }): Promise<ContractTransaction>;
163
+ repayBorrowBehalf(borrower: PromiseOrValue<string>, overrides?: PayableOverrides & {
164
+ from?: PromiseOrValue<string>;
165
+ }): Promise<ContractTransaction>;
125
166
  totalSupply(overrides?: CallOverrides): Promise<BigNumber>;
126
167
  transfer(to: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
127
168
  from?: PromiseOrValue<string>;
@@ -130,13 +171,18 @@ export interface IVBNB extends BaseContract {
130
171
  from?: PromiseOrValue<string>;
131
172
  }): Promise<ContractTransaction>;
132
173
  callStatic: {
174
+ accrueInterest(overrides?: CallOverrides): Promise<BigNumber>;
133
175
  allowance(owner: PromiseOrValue<string>, spender: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
134
176
  approve(spender: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
135
177
  balanceOf(account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
178
+ balanceOfUnderlying(owner: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
136
179
  borrowBalanceCurrent(borrower: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
180
+ borrowBalanceStored(account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
137
181
  comptroller(overrides?: CallOverrides): Promise<string>;
138
182
  liquidateBorrow(borrower: PromiseOrValue<string>, vTokenCollateral: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
139
183
  redeem(redeemTokens: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
184
+ redeemUnderlying(redeemAmount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
185
+ repayBorrowBehalf(borrower: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
140
186
  totalSupply(overrides?: CallOverrides): Promise<BigNumber>;
141
187
  transfer(to: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
142
188
  transferFrom(from: PromiseOrValue<string>, to: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
@@ -148,14 +194,21 @@ export interface IVBNB extends BaseContract {
148
194
  Transfer(from?: PromiseOrValue<string> | null, to?: PromiseOrValue<string> | null, value?: null): TransferEventFilter;
149
195
  };
150
196
  estimateGas: {
197
+ accrueInterest(overrides?: Overrides & {
198
+ from?: PromiseOrValue<string>;
199
+ }): Promise<BigNumber>;
151
200
  allowance(owner: PromiseOrValue<string>, spender: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
152
201
  approve(spender: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
153
202
  from?: PromiseOrValue<string>;
154
203
  }): Promise<BigNumber>;
155
204
  balanceOf(account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
205
+ balanceOfUnderlying(owner: PromiseOrValue<string>, overrides?: Overrides & {
206
+ from?: PromiseOrValue<string>;
207
+ }): Promise<BigNumber>;
156
208
  borrowBalanceCurrent(borrower: PromiseOrValue<string>, overrides?: Overrides & {
157
209
  from?: PromiseOrValue<string>;
158
210
  }): Promise<BigNumber>;
211
+ borrowBalanceStored(account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
159
212
  comptroller(overrides?: CallOverrides): Promise<BigNumber>;
160
213
  liquidateBorrow(borrower: PromiseOrValue<string>, vTokenCollateral: PromiseOrValue<string>, overrides?: PayableOverrides & {
161
214
  from?: PromiseOrValue<string>;
@@ -163,6 +216,12 @@ export interface IVBNB extends BaseContract {
163
216
  redeem(redeemTokens: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
164
217
  from?: PromiseOrValue<string>;
165
218
  }): Promise<BigNumber>;
219
+ redeemUnderlying(redeemAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
220
+ from?: PromiseOrValue<string>;
221
+ }): Promise<BigNumber>;
222
+ repayBorrowBehalf(borrower: PromiseOrValue<string>, overrides?: PayableOverrides & {
223
+ from?: PromiseOrValue<string>;
224
+ }): Promise<BigNumber>;
166
225
  totalSupply(overrides?: CallOverrides): Promise<BigNumber>;
167
226
  transfer(to: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
168
227
  from?: PromiseOrValue<string>;
@@ -172,14 +231,21 @@ export interface IVBNB extends BaseContract {
172
231
  }): Promise<BigNumber>;
173
232
  };
174
233
  populateTransaction: {
234
+ accrueInterest(overrides?: Overrides & {
235
+ from?: PromiseOrValue<string>;
236
+ }): Promise<PopulatedTransaction>;
175
237
  allowance(owner: PromiseOrValue<string>, spender: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
176
238
  approve(spender: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
177
239
  from?: PromiseOrValue<string>;
178
240
  }): Promise<PopulatedTransaction>;
179
241
  balanceOf(account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
242
+ balanceOfUnderlying(owner: PromiseOrValue<string>, overrides?: Overrides & {
243
+ from?: PromiseOrValue<string>;
244
+ }): Promise<PopulatedTransaction>;
180
245
  borrowBalanceCurrent(borrower: PromiseOrValue<string>, overrides?: Overrides & {
181
246
  from?: PromiseOrValue<string>;
182
247
  }): Promise<PopulatedTransaction>;
248
+ borrowBalanceStored(account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
183
249
  comptroller(overrides?: CallOverrides): Promise<PopulatedTransaction>;
184
250
  liquidateBorrow(borrower: PromiseOrValue<string>, vTokenCollateral: PromiseOrValue<string>, overrides?: PayableOverrides & {
185
251
  from?: PromiseOrValue<string>;
@@ -187,6 +253,12 @@ export interface IVBNB extends BaseContract {
187
253
  redeem(redeemTokens: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
188
254
  from?: PromiseOrValue<string>;
189
255
  }): Promise<PopulatedTransaction>;
256
+ redeemUnderlying(redeemAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
257
+ from?: PromiseOrValue<string>;
258
+ }): Promise<PopulatedTransaction>;
259
+ repayBorrowBehalf(borrower: PromiseOrValue<string>, overrides?: PayableOverrides & {
260
+ from?: PromiseOrValue<string>;
261
+ }): Promise<PopulatedTransaction>;
190
262
  totalSupply(overrides?: CallOverrides): Promise<PopulatedTransaction>;
191
263
  transfer(to: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
192
264
  from?: PromiseOrValue<string>;