@gearbox-protocol/sdk 3.0.0-next.55 → 3.0.0-next.57

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 (161) hide show
  1. package/contracts/index.sol +5 -0
  2. package/lib/core/creditAccount.d.ts +1 -2
  3. package/lib/core/creditAccount.js +0 -7
  4. package/lib/core/creditManager.d.ts +1 -0
  5. package/lib/core/creditManager.js +7 -1
  6. package/lib/core/trade.d.ts +9 -8
  7. package/lib/core/trade.js +25 -22
  8. package/lib/core/transactions.d.ts +16 -1
  9. package/lib/core/transactions.js +27 -1
  10. package/lib/parsers/convexBaseRewardPoolAdapterParser.js +10 -8
  11. package/lib/parsers/convexBaseRewardPoolAdapterParser.spec.js +9 -6
  12. package/lib/parsers/convexBoosterAdapterParser.js +6 -6
  13. package/lib/parsers/convexBoosterAdapterParser.spec.js +4 -4
  14. package/lib/parsers/curveAdapterParser.js +10 -10
  15. package/lib/parsers/curveAdapterParser.spec.js +6 -2
  16. package/lib/parsers/lidoAdapterParser.js +3 -2
  17. package/lib/parsers/lidoAdapterParser.spec.js +2 -2
  18. package/lib/parsers/uniV2AdapterParser.js +4 -3
  19. package/lib/parsers/uniV2AdapterParser.spec.js +3 -2
  20. package/lib/parsers/uniV3AdapterParser.js +8 -6
  21. package/lib/parsers/uniV3AdapterParser.spec.js +3 -2
  22. package/lib/parsers/wstETHAdapterParser.js +6 -4
  23. package/lib/parsers/wstETHAdapterParser.spec.js +4 -4
  24. package/lib/parsers/yearnAdapterParser.spec.js +4 -4
  25. package/lib/parsers/yearnV2AdapterParser.js +13 -3
  26. package/lib/pathfinder/core.d.ts +8 -9
  27. package/lib/pathfinder/pathfinder.d.ts +37 -10
  28. package/lib/pathfinder/pathfinder.js +45 -33
  29. package/lib/pathfinder/pathfinder.spec.js +4 -2
  30. package/lib/payload/creditAccount.d.ts +1 -2
  31. package/lib/types/IAaveV2_LendingPoolAdapter.d.ts +171 -0
  32. package/lib/types/IAaveV2_WrappedATokenAdapter.d.ts +290 -0
  33. package/lib/types/IBalancerV2Vault.sol/IBalancerV2Vault.d.ts +308 -0
  34. package/lib/types/IBalancerV2Vault.sol/IBalancerV2VaultGetters.d.ts +112 -0
  35. package/lib/types/IBalancerV2Vault.sol/index.d.ts +2 -0
  36. package/lib/types/IBalancerV2Vault.sol/index.js +2 -0
  37. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter.d.ts +466 -0
  38. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter.js +2 -0
  39. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents.d.ts +43 -0
  40. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents.js +2 -0
  41. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions.d.ts +27 -0
  42. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions.js +2 -0
  43. package/lib/types/IBalancerV2VaultAdapter.sol/index.d.ts +3 -0
  44. package/lib/types/IBalancerV2VaultAdapter.sol/index.js +2 -0
  45. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter.d.ts +216 -0
  46. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter.js +2 -0
  47. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions.d.ts +27 -0
  48. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions.js +2 -0
  49. package/lib/types/ICompoundV2_CTokenAdapter.sol/index.d.ts +2 -0
  50. package/lib/types/ICompoundV2_CTokenAdapter.sol/index.js +2 -0
  51. package/lib/types/IConvexV1BaseRewardPoolAdapter.d.ts +30 -30
  52. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter.d.ts +21 -17
  53. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3.d.ts +45 -85
  54. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3Events.d.ts +24 -26
  55. package/lib/types/ICreditFacadeV3Multicall.d.ts +32 -40
  56. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3.d.ts +99 -71
  57. package/lib/types/ICurveV1Adapter.d.ts +41 -105
  58. package/lib/types/ICurveV1_2AssetsAdapter.d.ts +41 -105
  59. package/lib/types/ICurveV1_3AssetsAdapter.d.ts +41 -105
  60. package/lib/types/ICurveV1_4AssetsAdapter.d.ts +41 -105
  61. package/lib/types/IDataCompressorV2_10.d.ts +1 -27
  62. package/lib/types/IDataCompressorV3_00.d.ts +1 -27
  63. package/lib/types/IERC4626Adapter.d.ts +238 -0
  64. package/lib/types/IERC4626Adapter.js +2 -0
  65. package/lib/types/ILidoV1Adapter.d.ts +9 -9
  66. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3.d.ts +39 -14
  67. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3Events.d.ts +5 -3
  68. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2Adapter.d.ts +10 -9
  69. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3Adapter.d.ts +27 -21
  70. package/lib/types/IYearnV2Adapter.d.ts +22 -22
  71. package/lib/types/IwstETHV1Adapter.d.ts +17 -17
  72. package/lib/types/factories/IAaveV2_LendingPoolAdapter__factory.d.ts +158 -0
  73. package/lib/types/factories/IAaveV2_LendingPoolAdapter__factory.js +215 -0
  74. package/lib/types/factories/IAaveV2_WrappedATokenAdapter__factory.d.ts +252 -0
  75. package/lib/types/factories/IAaveV2_WrappedATokenAdapter__factory.js +341 -0
  76. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2VaultGetters__factory.d.ts +78 -0
  77. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2VaultGetters__factory.js +111 -0
  78. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2Vault__factory.d.ts +360 -0
  79. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2Vault__factory.js +475 -0
  80. package/lib/types/factories/IBalancerV2Vault.sol/index.d.ts +2 -0
  81. package/lib/types/factories/IBalancerV2Vault.sol/index.js +10 -0
  82. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents__factory.d.ts +23 -0
  83. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents__factory.js +38 -0
  84. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions__factory.d.ts +12 -0
  85. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions__factory.js +24 -0
  86. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter__factory.d.ts +514 -0
  87. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter__factory.js +675 -0
  88. package/lib/types/factories/IBalancerV2VaultAdapter.sol/index.d.ts +3 -0
  89. package/lib/types/factories/IBalancerV2VaultAdapter.sol/index.js +12 -0
  90. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter__factory.d.ts +196 -0
  91. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter__factory.js +267 -0
  92. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions__factory.d.ts +16 -0
  93. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions__factory.js +30 -0
  94. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/index.d.ts +2 -0
  95. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/index.js +10 -0
  96. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.d.ts +18 -6
  97. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.js +22 -6
  98. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.d.ts +10 -2
  99. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.js +12 -2
  100. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.d.ts +13 -18
  101. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.js +14 -20
  102. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.d.ts +13 -70
  103. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.js +14 -86
  104. package/lib/types/factories/ICreditFacadeV3Multicall__factory.d.ts +22 -24
  105. package/lib/types/factories/ICreditFacadeV3Multicall__factory.js +28 -31
  106. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.d.ts +153 -135
  107. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.js +191 -168
  108. package/lib/types/factories/ICurveV1Adapter__factory.d.ts +13 -71
  109. package/lib/types/factories/ICurveV1Adapter__factory.js +14 -91
  110. package/lib/types/factories/ICurveV1_2AssetsAdapter__factory.d.ts +13 -71
  111. package/lib/types/factories/ICurveV1_2AssetsAdapter__factory.js +14 -91
  112. package/lib/types/factories/ICurveV1_3AssetsAdapter__factory.d.ts +13 -71
  113. package/lib/types/factories/ICurveV1_3AssetsAdapter__factory.js +14 -91
  114. package/lib/types/factories/ICurveV1_4AssetsAdapter__factory.d.ts +13 -71
  115. package/lib/types/factories/ICurveV1_4AssetsAdapter__factory.js +14 -91
  116. package/lib/types/factories/IDataCompressorV2_10__factory.d.ts +0 -42
  117. package/lib/types/factories/IDataCompressorV2_10__factory.js +0 -54
  118. package/lib/types/factories/IDataCompressorV3_00__factory.d.ts +0 -84
  119. package/lib/types/factories/IDataCompressorV3_00__factory.js +0 -108
  120. package/lib/types/factories/IERC4626Adapter__factory.d.ts +220 -0
  121. package/lib/types/factories/IERC4626Adapter__factory.js +297 -0
  122. package/lib/types/factories/ILidoV1Adapter__factory.d.ts +6 -2
  123. package/lib/types/factories/ILidoV1Adapter__factory.js +8 -2
  124. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3Events__factory.d.ts +5 -0
  125. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3Events__factory.js +6 -0
  126. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3__factory.d.ts +45 -0
  127. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3__factory.js +59 -0
  128. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2Adapter__factory.d.ts +5 -1
  129. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2Adapter__factory.js +6 -1
  130. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.d.ts +12 -4
  131. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.js +14 -4
  132. package/lib/types/factories/IYearnV2Adapter__factory.d.ts +21 -13
  133. package/lib/types/factories/IYearnV2Adapter__factory.js +27 -15
  134. package/lib/types/factories/IwstETHV1Adapter__factory.d.ts +12 -4
  135. package/lib/types/factories/IwstETHV1Adapter__factory.js +16 -4
  136. package/lib/types/factories/index.d.ts +7 -2
  137. package/lib/types/factories/index.js +12 -5
  138. package/lib/types/factories/{IRouter__factory.d.ts → interfaces/IRouter__factory.d.ts} +61 -6
  139. package/lib/types/factories/{IRouter__factory.js → interfaces/IRouter__factory.js} +77 -6
  140. package/lib/types/factories/interfaces/index.d.ts +1 -0
  141. package/lib/types/factories/interfaces/index.js +8 -0
  142. package/lib/types/index.d.ts +39 -17
  143. package/lib/types/index.js +39 -23
  144. package/lib/types/{IRouter.d.ts → interfaces/IRouter.d.ts} +37 -34
  145. package/lib/types/interfaces/IRouter.js +2 -0
  146. package/lib/types/interfaces/index.d.ts +1 -0
  147. package/lib/types/interfaces/index.js +2 -0
  148. package/package.json +6 -6
  149. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3.d.ts +0 -370
  150. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events.d.ts +0 -133
  151. package/lib/types/IWithdrawalManagerV3.sol/index.d.ts +0 -2
  152. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events__factory.d.ts +0 -143
  153. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events__factory.js +0 -188
  154. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3__factory.d.ts +0 -366
  155. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3__factory.js +0 -479
  156. package/lib/types/factories/IWithdrawalManagerV3.sol/index.d.ts +0 -2
  157. package/lib/types/factories/IWithdrawalManagerV3.sol/index.js +0 -10
  158. /package/lib/types/{IRouter.js → IAaveV2_LendingPoolAdapter.js} +0 -0
  159. /package/lib/types/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3.js → IAaveV2_WrappedATokenAdapter.js} +0 -0
  160. /package/lib/types/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events.js → IBalancerV2Vault.sol/IBalancerV2Vault.js} +0 -0
  161. /package/lib/types/{IWithdrawalManagerV3.sol/index.js → IBalancerV2Vault.sol/IBalancerV2VaultGetters.js} +0 -0
@@ -65,9 +65,9 @@ export interface ICreditManagerV3Interface extends utils.Interface {
65
65
  "addToken(address)": FunctionFragment;
66
66
  "addressProvider()": FunctionFragment;
67
67
  "approveCreditAccount(address,uint256)": FunctionFragment;
68
+ "approveToken(address,address,address,uint256)": FunctionFragment;
68
69
  "calcDebtAndCollateral(address,uint8)": FunctionFragment;
69
- "claimWithdrawals(address,address,uint8)": FunctionFragment;
70
- "closeCreditAccount(address,uint8,(uint256,uint256,uint256,uint128,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,address[],address),address,address,uint256,bool)": FunctionFragment;
70
+ "closeCreditAccount(address)": FunctionFragment;
71
71
  "collateralTokenByMask(uint256)": FunctionFragment;
72
72
  "collateralTokensCount()": FunctionFragment;
73
73
  "contractToAdapter(address)": FunctionFragment;
@@ -79,14 +79,16 @@ export interface ICreditManagerV3Interface extends utils.Interface {
79
79
  "creditFacade()": FunctionFragment;
80
80
  "enabledTokensMaskOf(address)": FunctionFragment;
81
81
  "execute(bytes)": FunctionFragment;
82
+ "externalCall(address,address,bytes)": FunctionFragment;
82
83
  "fees()": FunctionFragment;
83
84
  "flagsOf(address)": FunctionFragment;
84
- "fullCollateralCheck(address,uint256,uint256[],uint16)": FunctionFragment;
85
+ "fullCollateralCheck(address,uint256,uint256[],uint16,bool)": FunctionFragment;
85
86
  "getActiveCreditAccountOrRevert()": FunctionFragment;
86
87
  "getBorrowerOrRevert(address)": FunctionFragment;
87
88
  "getTokenByMask(uint256)": FunctionFragment;
88
89
  "getTokenMaskOrRevert(address)": FunctionFragment;
89
90
  "isLiquidatable(address,uint16)": FunctionFragment;
91
+ "liquidateCreditAccount(address,(uint256,uint256,uint256,uint128,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,address[],address),address,bool)": FunctionFragment;
90
92
  "liquidationThresholds(address)": FunctionFragment;
91
93
  "ltParams(address)": FunctionFragment;
92
94
  "manageDebt(address,uint256,uint256,uint8)": FunctionFragment;
@@ -98,7 +100,6 @@ export interface ICreditManagerV3Interface extends utils.Interface {
98
100
  "priceOracle()": FunctionFragment;
99
101
  "quotedTokensMask()": FunctionFragment;
100
102
  "revokeAdapterAllowances(address,(address,address)[])": FunctionFragment;
101
- "scheduleWithdrawal(address,address,uint256)": FunctionFragment;
102
103
  "setActiveCreditAccount(address)": FunctionFragment;
103
104
  "setCollateralTokenData(address,uint16,uint16,uint40,uint24)": FunctionFragment;
104
105
  "setContractAllowance(address,address)": FunctionFragment;
@@ -113,9 +114,9 @@ export interface ICreditManagerV3Interface extends utils.Interface {
113
114
  "updateQuota(address,address,int96,uint96,uint96)": FunctionFragment;
114
115
  "version()": FunctionFragment;
115
116
  "weth()": FunctionFragment;
116
- "withdrawalManager()": FunctionFragment;
117
+ "withdrawCollateral(address,address,uint256,address)": FunctionFragment;
117
118
  };
118
- getFunction(nameOrSignatureOrTopic: "accountFactory" | "adapterToContract" | "addCollateral" | "addToken" | "addressProvider" | "approveCreditAccount" | "calcDebtAndCollateral" | "claimWithdrawals" | "closeCreditAccount" | "collateralTokenByMask" | "collateralTokensCount" | "contractToAdapter" | "creditAccountInfo" | "creditAccounts(uint256,uint256)" | "creditAccounts()" | "creditAccountsLen" | "creditConfigurator" | "creditFacade" | "enabledTokensMaskOf" | "execute" | "fees" | "flagsOf" | "fullCollateralCheck" | "getActiveCreditAccountOrRevert" | "getBorrowerOrRevert" | "getTokenByMask" | "getTokenMaskOrRevert" | "isLiquidatable" | "liquidationThresholds" | "ltParams" | "manageDebt" | "maxEnabledTokens" | "name" | "openCreditAccount" | "pool" | "poolQuotaKeeper" | "priceOracle" | "quotedTokensMask" | "revokeAdapterAllowances" | "scheduleWithdrawal" | "setActiveCreditAccount" | "setCollateralTokenData" | "setContractAllowance" | "setCreditConfigurator" | "setCreditFacade" | "setFees" | "setFlagFor" | "setMaxEnabledTokens" | "setPriceOracle" | "setQuotedMask" | "underlying" | "updateQuota" | "version" | "weth" | "withdrawalManager"): FunctionFragment;
119
+ getFunction(nameOrSignatureOrTopic: "accountFactory" | "adapterToContract" | "addCollateral" | "addToken" | "addressProvider" | "approveCreditAccount" | "approveToken" | "calcDebtAndCollateral" | "closeCreditAccount" | "collateralTokenByMask" | "collateralTokensCount" | "contractToAdapter" | "creditAccountInfo" | "creditAccounts(uint256,uint256)" | "creditAccounts()" | "creditAccountsLen" | "creditConfigurator" | "creditFacade" | "enabledTokensMaskOf" | "execute" | "externalCall" | "fees" | "flagsOf" | "fullCollateralCheck" | "getActiveCreditAccountOrRevert" | "getBorrowerOrRevert" | "getTokenByMask" | "getTokenMaskOrRevert" | "isLiquidatable" | "liquidateCreditAccount" | "liquidationThresholds" | "ltParams" | "manageDebt" | "maxEnabledTokens" | "name" | "openCreditAccount" | "pool" | "poolQuotaKeeper" | "priceOracle" | "quotedTokensMask" | "revokeAdapterAllowances" | "setActiveCreditAccount" | "setCollateralTokenData" | "setContractAllowance" | "setCreditConfigurator" | "setCreditFacade" | "setFees" | "setFlagFor" | "setMaxEnabledTokens" | "setPriceOracle" | "setQuotedMask" | "underlying" | "updateQuota" | "version" | "weth" | "withdrawCollateral"): FunctionFragment;
119
120
  encodeFunctionData(functionFragment: "accountFactory", values?: undefined): string;
120
121
  encodeFunctionData(functionFragment: "adapterToContract", values: [PromiseOrValue<string>]): string;
121
122
  encodeFunctionData(functionFragment: "addCollateral", values: [
@@ -127,21 +128,14 @@ export interface ICreditManagerV3Interface extends utils.Interface {
127
128
  encodeFunctionData(functionFragment: "addToken", values: [PromiseOrValue<string>]): string;
128
129
  encodeFunctionData(functionFragment: "addressProvider", values?: undefined): string;
129
130
  encodeFunctionData(functionFragment: "approveCreditAccount", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
130
- encodeFunctionData(functionFragment: "calcDebtAndCollateral", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
131
- encodeFunctionData(functionFragment: "claimWithdrawals", values: [
132
- PromiseOrValue<string>,
131
+ encodeFunctionData(functionFragment: "approveToken", values: [
133
132
  PromiseOrValue<string>,
134
- PromiseOrValue<BigNumberish>
135
- ]): string;
136
- encodeFunctionData(functionFragment: "closeCreditAccount", values: [
137
133
  PromiseOrValue<string>,
138
- PromiseOrValue<BigNumberish>,
139
- CollateralDebtDataStruct,
140
134
  PromiseOrValue<string>,
141
- PromiseOrValue<string>,
142
- PromiseOrValue<BigNumberish>,
143
- PromiseOrValue<boolean>
135
+ PromiseOrValue<BigNumberish>
144
136
  ]): string;
137
+ encodeFunctionData(functionFragment: "calcDebtAndCollateral", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
138
+ encodeFunctionData(functionFragment: "closeCreditAccount", values: [PromiseOrValue<string>]): string;
145
139
  encodeFunctionData(functionFragment: "collateralTokenByMask", values: [PromiseOrValue<BigNumberish>]): string;
146
140
  encodeFunctionData(functionFragment: "collateralTokensCount", values?: undefined): string;
147
141
  encodeFunctionData(functionFragment: "contractToAdapter", values: [PromiseOrValue<string>]): string;
@@ -153,19 +147,31 @@ export interface ICreditManagerV3Interface extends utils.Interface {
153
147
  encodeFunctionData(functionFragment: "creditFacade", values?: undefined): string;
154
148
  encodeFunctionData(functionFragment: "enabledTokensMaskOf", values: [PromiseOrValue<string>]): string;
155
149
  encodeFunctionData(functionFragment: "execute", values: [PromiseOrValue<BytesLike>]): string;
150
+ encodeFunctionData(functionFragment: "externalCall", values: [
151
+ PromiseOrValue<string>,
152
+ PromiseOrValue<string>,
153
+ PromiseOrValue<BytesLike>
154
+ ]): string;
156
155
  encodeFunctionData(functionFragment: "fees", values?: undefined): string;
157
156
  encodeFunctionData(functionFragment: "flagsOf", values: [PromiseOrValue<string>]): string;
158
157
  encodeFunctionData(functionFragment: "fullCollateralCheck", values: [
159
158
  PromiseOrValue<string>,
160
159
  PromiseOrValue<BigNumberish>,
161
160
  PromiseOrValue<BigNumberish>[],
162
- PromiseOrValue<BigNumberish>
161
+ PromiseOrValue<BigNumberish>,
162
+ PromiseOrValue<boolean>
163
163
  ]): string;
164
164
  encodeFunctionData(functionFragment: "getActiveCreditAccountOrRevert", values?: undefined): string;
165
165
  encodeFunctionData(functionFragment: "getBorrowerOrRevert", values: [PromiseOrValue<string>]): string;
166
166
  encodeFunctionData(functionFragment: "getTokenByMask", values: [PromiseOrValue<BigNumberish>]): string;
167
167
  encodeFunctionData(functionFragment: "getTokenMaskOrRevert", values: [PromiseOrValue<string>]): string;
168
168
  encodeFunctionData(functionFragment: "isLiquidatable", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
169
+ encodeFunctionData(functionFragment: "liquidateCreditAccount", values: [
170
+ PromiseOrValue<string>,
171
+ CollateralDebtDataStruct,
172
+ PromiseOrValue<string>,
173
+ PromiseOrValue<boolean>
174
+ ]): string;
169
175
  encodeFunctionData(functionFragment: "liquidationThresholds", values: [PromiseOrValue<string>]): string;
170
176
  encodeFunctionData(functionFragment: "ltParams", values: [PromiseOrValue<string>]): string;
171
177
  encodeFunctionData(functionFragment: "manageDebt", values: [
@@ -182,11 +188,6 @@ export interface ICreditManagerV3Interface extends utils.Interface {
182
188
  encodeFunctionData(functionFragment: "priceOracle", values?: undefined): string;
183
189
  encodeFunctionData(functionFragment: "quotedTokensMask", values?: undefined): string;
184
190
  encodeFunctionData(functionFragment: "revokeAdapterAllowances", values: [PromiseOrValue<string>, RevocationPairStruct[]]): string;
185
- encodeFunctionData(functionFragment: "scheduleWithdrawal", values: [
186
- PromiseOrValue<string>,
187
- PromiseOrValue<string>,
188
- PromiseOrValue<BigNumberish>
189
- ]): string;
190
191
  encodeFunctionData(functionFragment: "setActiveCreditAccount", values: [PromiseOrValue<string>]): string;
191
192
  encodeFunctionData(functionFragment: "setCollateralTokenData", values: [
192
193
  PromiseOrValue<string>,
@@ -223,15 +224,20 @@ export interface ICreditManagerV3Interface extends utils.Interface {
223
224
  ]): string;
224
225
  encodeFunctionData(functionFragment: "version", values?: undefined): string;
225
226
  encodeFunctionData(functionFragment: "weth", values?: undefined): string;
226
- encodeFunctionData(functionFragment: "withdrawalManager", values?: undefined): string;
227
+ encodeFunctionData(functionFragment: "withdrawCollateral", values: [
228
+ PromiseOrValue<string>,
229
+ PromiseOrValue<string>,
230
+ PromiseOrValue<BigNumberish>,
231
+ PromiseOrValue<string>
232
+ ]): string;
227
233
  decodeFunctionResult(functionFragment: "accountFactory", data: BytesLike): Result;
228
234
  decodeFunctionResult(functionFragment: "adapterToContract", data: BytesLike): Result;
229
235
  decodeFunctionResult(functionFragment: "addCollateral", data: BytesLike): Result;
230
236
  decodeFunctionResult(functionFragment: "addToken", data: BytesLike): Result;
231
237
  decodeFunctionResult(functionFragment: "addressProvider", data: BytesLike): Result;
232
238
  decodeFunctionResult(functionFragment: "approveCreditAccount", data: BytesLike): Result;
239
+ decodeFunctionResult(functionFragment: "approveToken", data: BytesLike): Result;
233
240
  decodeFunctionResult(functionFragment: "calcDebtAndCollateral", data: BytesLike): Result;
234
- decodeFunctionResult(functionFragment: "claimWithdrawals", data: BytesLike): Result;
235
241
  decodeFunctionResult(functionFragment: "closeCreditAccount", data: BytesLike): Result;
236
242
  decodeFunctionResult(functionFragment: "collateralTokenByMask", data: BytesLike): Result;
237
243
  decodeFunctionResult(functionFragment: "collateralTokensCount", data: BytesLike): Result;
@@ -244,6 +250,7 @@ export interface ICreditManagerV3Interface extends utils.Interface {
244
250
  decodeFunctionResult(functionFragment: "creditFacade", data: BytesLike): Result;
245
251
  decodeFunctionResult(functionFragment: "enabledTokensMaskOf", data: BytesLike): Result;
246
252
  decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result;
253
+ decodeFunctionResult(functionFragment: "externalCall", data: BytesLike): Result;
247
254
  decodeFunctionResult(functionFragment: "fees", data: BytesLike): Result;
248
255
  decodeFunctionResult(functionFragment: "flagsOf", data: BytesLike): Result;
249
256
  decodeFunctionResult(functionFragment: "fullCollateralCheck", data: BytesLike): Result;
@@ -252,6 +259,7 @@ export interface ICreditManagerV3Interface extends utils.Interface {
252
259
  decodeFunctionResult(functionFragment: "getTokenByMask", data: BytesLike): Result;
253
260
  decodeFunctionResult(functionFragment: "getTokenMaskOrRevert", data: BytesLike): Result;
254
261
  decodeFunctionResult(functionFragment: "isLiquidatable", data: BytesLike): Result;
262
+ decodeFunctionResult(functionFragment: "liquidateCreditAccount", data: BytesLike): Result;
255
263
  decodeFunctionResult(functionFragment: "liquidationThresholds", data: BytesLike): Result;
256
264
  decodeFunctionResult(functionFragment: "ltParams", data: BytesLike): Result;
257
265
  decodeFunctionResult(functionFragment: "manageDebt", data: BytesLike): Result;
@@ -263,7 +271,6 @@ export interface ICreditManagerV3Interface extends utils.Interface {
263
271
  decodeFunctionResult(functionFragment: "priceOracle", data: BytesLike): Result;
264
272
  decodeFunctionResult(functionFragment: "quotedTokensMask", data: BytesLike): Result;
265
273
  decodeFunctionResult(functionFragment: "revokeAdapterAllowances", data: BytesLike): Result;
266
- decodeFunctionResult(functionFragment: "scheduleWithdrawal", data: BytesLike): Result;
267
274
  decodeFunctionResult(functionFragment: "setActiveCreditAccount", data: BytesLike): Result;
268
275
  decodeFunctionResult(functionFragment: "setCollateralTokenData", data: BytesLike): Result;
269
276
  decodeFunctionResult(functionFragment: "setContractAllowance", data: BytesLike): Result;
@@ -278,7 +285,7 @@ export interface ICreditManagerV3Interface extends utils.Interface {
278
285
  decodeFunctionResult(functionFragment: "updateQuota", data: BytesLike): Result;
279
286
  decodeFunctionResult(functionFragment: "version", data: BytesLike): Result;
280
287
  decodeFunctionResult(functionFragment: "weth", data: BytesLike): Result;
281
- decodeFunctionResult(functionFragment: "withdrawalManager", data: BytesLike): Result;
288
+ decodeFunctionResult(functionFragment: "withdrawCollateral", data: BytesLike): Result;
282
289
  events: {
283
290
  "SetCreditConfigurator(address)": EventFragment;
284
291
  };
@@ -320,15 +327,15 @@ export interface ICreditManagerV3 extends BaseContract {
320
327
  approveCreditAccount(token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
321
328
  from?: PromiseOrValue<string>;
322
329
  }): Promise<ContractTransaction>;
330
+ approveToken(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, spender: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
331
+ from?: PromiseOrValue<string>;
332
+ }): Promise<ContractTransaction>;
323
333
  calcDebtAndCollateral(creditAccount: PromiseOrValue<string>, task: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
324
334
  CollateralDebtDataStructOutput
325
335
  ] & {
326
336
  cdd: CollateralDebtDataStructOutput;
327
337
  }>;
328
- claimWithdrawals(creditAccount: PromiseOrValue<string>, to: PromiseOrValue<string>, action: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
329
- from?: PromiseOrValue<string>;
330
- }): Promise<ContractTransaction>;
331
- closeCreditAccount(creditAccount: PromiseOrValue<string>, closureAction: PromiseOrValue<BigNumberish>, collateralDebtData: CollateralDebtDataStruct, payer: PromiseOrValue<string>, to: PromiseOrValue<string>, skipTokensMask: PromiseOrValue<BigNumberish>, convertToETH: PromiseOrValue<boolean>, overrides?: Overrides & {
338
+ closeCreditAccount(creditAccount: PromiseOrValue<string>, overrides?: Overrides & {
332
339
  from?: PromiseOrValue<string>;
333
340
  }): Promise<ContractTransaction>;
334
341
  collateralTokenByMask(tokenMask: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
@@ -370,6 +377,9 @@ export interface ICreditManagerV3 extends BaseContract {
370
377
  execute(data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
371
378
  from?: PromiseOrValue<string>;
372
379
  }): Promise<ContractTransaction>;
380
+ externalCall(creditAccount: PromiseOrValue<string>, target: PromiseOrValue<string>, callData: PromiseOrValue<BytesLike>, overrides?: Overrides & {
381
+ from?: PromiseOrValue<string>;
382
+ }): Promise<ContractTransaction>;
373
383
  fees(overrides?: CallOverrides): Promise<[
374
384
  number,
375
385
  number,
@@ -384,7 +394,7 @@ export interface ICreditManagerV3 extends BaseContract {
384
394
  liquidationDiscountExpired: number;
385
395
  }>;
386
396
  flagsOf(creditAccount: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[number]>;
387
- fullCollateralCheck(creditAccount: PromiseOrValue<string>, enabledTokensMask: PromiseOrValue<BigNumberish>, collateralHints: PromiseOrValue<BigNumberish>[], minHealthFactor: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
397
+ fullCollateralCheck(creditAccount: PromiseOrValue<string>, enabledTokensMask: PromiseOrValue<BigNumberish>, collateralHints: PromiseOrValue<BigNumberish>[], minHealthFactor: PromiseOrValue<BigNumberish>, useSafePrices: PromiseOrValue<boolean>, overrides?: Overrides & {
388
398
  from?: PromiseOrValue<string>;
389
399
  }): Promise<ContractTransaction>;
390
400
  getActiveCreditAccountOrRevert(overrides?: CallOverrides): Promise<[string] & {
@@ -400,6 +410,9 @@ export interface ICreditManagerV3 extends BaseContract {
400
410
  tokenMask: BigNumber;
401
411
  }>;
402
412
  isLiquidatable(creditAccount: PromiseOrValue<string>, minHealthFactor: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[boolean]>;
413
+ liquidateCreditAccount(creditAccount: PromiseOrValue<string>, collateralDebtData: CollateralDebtDataStruct, to: PromiseOrValue<string>, isExpired: PromiseOrValue<boolean>, overrides?: Overrides & {
414
+ from?: PromiseOrValue<string>;
415
+ }): Promise<ContractTransaction>;
403
416
  liquidationThresholds(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[number] & {
404
417
  lt: number;
405
418
  }>;
@@ -429,9 +442,6 @@ export interface ICreditManagerV3 extends BaseContract {
429
442
  revokeAdapterAllowances(creditAccount: PromiseOrValue<string>, revocations: RevocationPairStruct[], overrides?: Overrides & {
430
443
  from?: PromiseOrValue<string>;
431
444
  }): Promise<ContractTransaction>;
432
- scheduleWithdrawal(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
433
- from?: PromiseOrValue<string>;
434
- }): Promise<ContractTransaction>;
435
445
  setActiveCreditAccount(creditAccount: PromiseOrValue<string>, overrides?: Overrides & {
436
446
  from?: PromiseOrValue<string>;
437
447
  }): Promise<ContractTransaction>;
@@ -468,7 +478,9 @@ export interface ICreditManagerV3 extends BaseContract {
468
478
  }): Promise<ContractTransaction>;
469
479
  version(overrides?: CallOverrides): Promise<[BigNumber]>;
470
480
  weth(overrides?: CallOverrides): Promise<[string]>;
471
- withdrawalManager(overrides?: CallOverrides): Promise<[string]>;
481
+ withdrawCollateral(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, to: PromiseOrValue<string>, overrides?: Overrides & {
482
+ from?: PromiseOrValue<string>;
483
+ }): Promise<ContractTransaction>;
472
484
  };
473
485
  accountFactory(overrides?: CallOverrides): Promise<string>;
474
486
  adapterToContract(adapter: PromiseOrValue<string>, overrides?: CallOverrides): Promise<string>;
@@ -482,11 +494,11 @@ export interface ICreditManagerV3 extends BaseContract {
482
494
  approveCreditAccount(token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
483
495
  from?: PromiseOrValue<string>;
484
496
  }): Promise<ContractTransaction>;
485
- calcDebtAndCollateral(creditAccount: PromiseOrValue<string>, task: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<CollateralDebtDataStructOutput>;
486
- claimWithdrawals(creditAccount: PromiseOrValue<string>, to: PromiseOrValue<string>, action: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
497
+ approveToken(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, spender: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
487
498
  from?: PromiseOrValue<string>;
488
499
  }): Promise<ContractTransaction>;
489
- closeCreditAccount(creditAccount: PromiseOrValue<string>, closureAction: PromiseOrValue<BigNumberish>, collateralDebtData: CollateralDebtDataStruct, payer: PromiseOrValue<string>, to: PromiseOrValue<string>, skipTokensMask: PromiseOrValue<BigNumberish>, convertToETH: PromiseOrValue<boolean>, overrides?: Overrides & {
500
+ calcDebtAndCollateral(creditAccount: PromiseOrValue<string>, task: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<CollateralDebtDataStructOutput>;
501
+ closeCreditAccount(creditAccount: PromiseOrValue<string>, overrides?: Overrides & {
490
502
  from?: PromiseOrValue<string>;
491
503
  }): Promise<ContractTransaction>;
492
504
  collateralTokenByMask(tokenMask: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
@@ -526,6 +538,9 @@ export interface ICreditManagerV3 extends BaseContract {
526
538
  execute(data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
527
539
  from?: PromiseOrValue<string>;
528
540
  }): Promise<ContractTransaction>;
541
+ externalCall(creditAccount: PromiseOrValue<string>, target: PromiseOrValue<string>, callData: PromiseOrValue<BytesLike>, overrides?: Overrides & {
542
+ from?: PromiseOrValue<string>;
543
+ }): Promise<ContractTransaction>;
529
544
  fees(overrides?: CallOverrides): Promise<[
530
545
  number,
531
546
  number,
@@ -540,7 +555,7 @@ export interface ICreditManagerV3 extends BaseContract {
540
555
  liquidationDiscountExpired: number;
541
556
  }>;
542
557
  flagsOf(creditAccount: PromiseOrValue<string>, overrides?: CallOverrides): Promise<number>;
543
- fullCollateralCheck(creditAccount: PromiseOrValue<string>, enabledTokensMask: PromiseOrValue<BigNumberish>, collateralHints: PromiseOrValue<BigNumberish>[], minHealthFactor: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
558
+ fullCollateralCheck(creditAccount: PromiseOrValue<string>, enabledTokensMask: PromiseOrValue<BigNumberish>, collateralHints: PromiseOrValue<BigNumberish>[], minHealthFactor: PromiseOrValue<BigNumberish>, useSafePrices: PromiseOrValue<boolean>, overrides?: Overrides & {
544
559
  from?: PromiseOrValue<string>;
545
560
  }): Promise<ContractTransaction>;
546
561
  getActiveCreditAccountOrRevert(overrides?: CallOverrides): Promise<string>;
@@ -548,6 +563,9 @@ export interface ICreditManagerV3 extends BaseContract {
548
563
  getTokenByMask(tokenMask: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
549
564
  getTokenMaskOrRevert(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
550
565
  isLiquidatable(creditAccount: PromiseOrValue<string>, minHealthFactor: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
566
+ liquidateCreditAccount(creditAccount: PromiseOrValue<string>, collateralDebtData: CollateralDebtDataStruct, to: PromiseOrValue<string>, isExpired: PromiseOrValue<boolean>, overrides?: Overrides & {
567
+ from?: PromiseOrValue<string>;
568
+ }): Promise<ContractTransaction>;
551
569
  liquidationThresholds(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<number>;
552
570
  ltParams(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[
553
571
  number,
@@ -575,9 +593,6 @@ export interface ICreditManagerV3 extends BaseContract {
575
593
  revokeAdapterAllowances(creditAccount: PromiseOrValue<string>, revocations: RevocationPairStruct[], overrides?: Overrides & {
576
594
  from?: PromiseOrValue<string>;
577
595
  }): Promise<ContractTransaction>;
578
- scheduleWithdrawal(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
579
- from?: PromiseOrValue<string>;
580
- }): Promise<ContractTransaction>;
581
596
  setActiveCreditAccount(creditAccount: PromiseOrValue<string>, overrides?: Overrides & {
582
597
  from?: PromiseOrValue<string>;
583
598
  }): Promise<ContractTransaction>;
@@ -614,7 +629,9 @@ export interface ICreditManagerV3 extends BaseContract {
614
629
  }): Promise<ContractTransaction>;
615
630
  version(overrides?: CallOverrides): Promise<BigNumber>;
616
631
  weth(overrides?: CallOverrides): Promise<string>;
617
- withdrawalManager(overrides?: CallOverrides): Promise<string>;
632
+ withdrawCollateral(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, to: PromiseOrValue<string>, overrides?: Overrides & {
633
+ from?: PromiseOrValue<string>;
634
+ }): Promise<ContractTransaction>;
618
635
  callStatic: {
619
636
  accountFactory(overrides?: CallOverrides): Promise<string>;
620
637
  adapterToContract(adapter: PromiseOrValue<string>, overrides?: CallOverrides): Promise<string>;
@@ -622,15 +639,9 @@ export interface ICreditManagerV3 extends BaseContract {
622
639
  addToken(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
623
640
  addressProvider(overrides?: CallOverrides): Promise<string>;
624
641
  approveCreditAccount(token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
642
+ approveToken(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, spender: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
625
643
  calcDebtAndCollateral(creditAccount: PromiseOrValue<string>, task: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<CollateralDebtDataStructOutput>;
626
- claimWithdrawals(creditAccount: PromiseOrValue<string>, to: PromiseOrValue<string>, action: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
627
- closeCreditAccount(creditAccount: PromiseOrValue<string>, closureAction: PromiseOrValue<BigNumberish>, collateralDebtData: CollateralDebtDataStruct, payer: PromiseOrValue<string>, to: PromiseOrValue<string>, skipTokensMask: PromiseOrValue<BigNumberish>, convertToETH: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<[
628
- BigNumber,
629
- BigNumber
630
- ] & {
631
- remainingFunds: BigNumber;
632
- loss: BigNumber;
633
- }>;
644
+ closeCreditAccount(creditAccount: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
634
645
  collateralTokenByMask(tokenMask: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
635
646
  string,
636
647
  number
@@ -666,6 +677,7 @@ export interface ICreditManagerV3 extends BaseContract {
666
677
  creditFacade(overrides?: CallOverrides): Promise<string>;
667
678
  enabledTokensMaskOf(creditAccount: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
668
679
  execute(data: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
680
+ externalCall(creditAccount: PromiseOrValue<string>, target: PromiseOrValue<string>, callData: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
669
681
  fees(overrides?: CallOverrides): Promise<[
670
682
  number,
671
683
  number,
@@ -680,12 +692,19 @@ export interface ICreditManagerV3 extends BaseContract {
680
692
  liquidationDiscountExpired: number;
681
693
  }>;
682
694
  flagsOf(creditAccount: PromiseOrValue<string>, overrides?: CallOverrides): Promise<number>;
683
- fullCollateralCheck(creditAccount: PromiseOrValue<string>, enabledTokensMask: PromiseOrValue<BigNumberish>, collateralHints: PromiseOrValue<BigNumberish>[], minHealthFactor: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
695
+ fullCollateralCheck(creditAccount: PromiseOrValue<string>, enabledTokensMask: PromiseOrValue<BigNumberish>, collateralHints: PromiseOrValue<BigNumberish>[], minHealthFactor: PromiseOrValue<BigNumberish>, useSafePrices: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
684
696
  getActiveCreditAccountOrRevert(overrides?: CallOverrides): Promise<string>;
685
697
  getBorrowerOrRevert(creditAccount: PromiseOrValue<string>, overrides?: CallOverrides): Promise<string>;
686
698
  getTokenByMask(tokenMask: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
687
699
  getTokenMaskOrRevert(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
688
700
  isLiquidatable(creditAccount: PromiseOrValue<string>, minHealthFactor: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
701
+ liquidateCreditAccount(creditAccount: PromiseOrValue<string>, collateralDebtData: CollateralDebtDataStruct, to: PromiseOrValue<string>, isExpired: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<[
702
+ BigNumber,
703
+ BigNumber
704
+ ] & {
705
+ remainingFunds: BigNumber;
706
+ loss: BigNumber;
707
+ }>;
689
708
  liquidationThresholds(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<number>;
690
709
  ltParams(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[
691
710
  number,
@@ -715,7 +734,6 @@ export interface ICreditManagerV3 extends BaseContract {
715
734
  priceOracle(overrides?: CallOverrides): Promise<string>;
716
735
  quotedTokensMask(overrides?: CallOverrides): Promise<BigNumber>;
717
736
  revokeAdapterAllowances(creditAccount: PromiseOrValue<string>, revocations: RevocationPairStruct[], overrides?: CallOverrides): Promise<void>;
718
- scheduleWithdrawal(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
719
737
  setActiveCreditAccount(creditAccount: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
720
738
  setCollateralTokenData(token: PromiseOrValue<string>, ltInitial: PromiseOrValue<BigNumberish>, ltFinal: PromiseOrValue<BigNumberish>, timestampRampStart: PromiseOrValue<BigNumberish>, rampDuration: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
721
739
  setContractAllowance(adapter: PromiseOrValue<string>, targetContract: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
@@ -736,7 +754,7 @@ export interface ICreditManagerV3 extends BaseContract {
736
754
  }>;
737
755
  version(overrides?: CallOverrides): Promise<BigNumber>;
738
756
  weth(overrides?: CallOverrides): Promise<string>;
739
- withdrawalManager(overrides?: CallOverrides): Promise<string>;
757
+ withdrawCollateral(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, to: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
740
758
  };
741
759
  filters: {
742
760
  "SetCreditConfigurator(address)"(newConfigurator?: PromiseOrValue<string> | null): SetCreditConfiguratorEventFilter;
@@ -755,11 +773,11 @@ export interface ICreditManagerV3 extends BaseContract {
755
773
  approveCreditAccount(token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
756
774
  from?: PromiseOrValue<string>;
757
775
  }): Promise<BigNumber>;
758
- calcDebtAndCollateral(creditAccount: PromiseOrValue<string>, task: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
759
- claimWithdrawals(creditAccount: PromiseOrValue<string>, to: PromiseOrValue<string>, action: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
776
+ approveToken(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, spender: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
760
777
  from?: PromiseOrValue<string>;
761
778
  }): Promise<BigNumber>;
762
- closeCreditAccount(creditAccount: PromiseOrValue<string>, closureAction: PromiseOrValue<BigNumberish>, collateralDebtData: CollateralDebtDataStruct, payer: PromiseOrValue<string>, to: PromiseOrValue<string>, skipTokensMask: PromiseOrValue<BigNumberish>, convertToETH: PromiseOrValue<boolean>, overrides?: Overrides & {
779
+ calcDebtAndCollateral(creditAccount: PromiseOrValue<string>, task: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
780
+ closeCreditAccount(creditAccount: PromiseOrValue<string>, overrides?: Overrides & {
763
781
  from?: PromiseOrValue<string>;
764
782
  }): Promise<BigNumber>;
765
783
  collateralTokenByMask(tokenMask: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
@@ -775,9 +793,12 @@ export interface ICreditManagerV3 extends BaseContract {
775
793
  execute(data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
776
794
  from?: PromiseOrValue<string>;
777
795
  }): Promise<BigNumber>;
796
+ externalCall(creditAccount: PromiseOrValue<string>, target: PromiseOrValue<string>, callData: PromiseOrValue<BytesLike>, overrides?: Overrides & {
797
+ from?: PromiseOrValue<string>;
798
+ }): Promise<BigNumber>;
778
799
  fees(overrides?: CallOverrides): Promise<BigNumber>;
779
800
  flagsOf(creditAccount: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
780
- fullCollateralCheck(creditAccount: PromiseOrValue<string>, enabledTokensMask: PromiseOrValue<BigNumberish>, collateralHints: PromiseOrValue<BigNumberish>[], minHealthFactor: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
801
+ fullCollateralCheck(creditAccount: PromiseOrValue<string>, enabledTokensMask: PromiseOrValue<BigNumberish>, collateralHints: PromiseOrValue<BigNumberish>[], minHealthFactor: PromiseOrValue<BigNumberish>, useSafePrices: PromiseOrValue<boolean>, overrides?: Overrides & {
781
802
  from?: PromiseOrValue<string>;
782
803
  }): Promise<BigNumber>;
783
804
  getActiveCreditAccountOrRevert(overrides?: CallOverrides): Promise<BigNumber>;
@@ -785,6 +806,9 @@ export interface ICreditManagerV3 extends BaseContract {
785
806
  getTokenByMask(tokenMask: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
786
807
  getTokenMaskOrRevert(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
787
808
  isLiquidatable(creditAccount: PromiseOrValue<string>, minHealthFactor: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
809
+ liquidateCreditAccount(creditAccount: PromiseOrValue<string>, collateralDebtData: CollateralDebtDataStruct, to: PromiseOrValue<string>, isExpired: PromiseOrValue<boolean>, overrides?: Overrides & {
810
+ from?: PromiseOrValue<string>;
811
+ }): Promise<BigNumber>;
788
812
  liquidationThresholds(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
789
813
  ltParams(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
790
814
  manageDebt(creditAccount: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, enabledTokensMask: PromiseOrValue<BigNumberish>, action: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
@@ -802,9 +826,6 @@ export interface ICreditManagerV3 extends BaseContract {
802
826
  revokeAdapterAllowances(creditAccount: PromiseOrValue<string>, revocations: RevocationPairStruct[], overrides?: Overrides & {
803
827
  from?: PromiseOrValue<string>;
804
828
  }): Promise<BigNumber>;
805
- scheduleWithdrawal(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
806
- from?: PromiseOrValue<string>;
807
- }): Promise<BigNumber>;
808
829
  setActiveCreditAccount(creditAccount: PromiseOrValue<string>, overrides?: Overrides & {
809
830
  from?: PromiseOrValue<string>;
810
831
  }): Promise<BigNumber>;
@@ -841,7 +862,9 @@ export interface ICreditManagerV3 extends BaseContract {
841
862
  }): Promise<BigNumber>;
842
863
  version(overrides?: CallOverrides): Promise<BigNumber>;
843
864
  weth(overrides?: CallOverrides): Promise<BigNumber>;
844
- withdrawalManager(overrides?: CallOverrides): Promise<BigNumber>;
865
+ withdrawCollateral(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, to: PromiseOrValue<string>, overrides?: Overrides & {
866
+ from?: PromiseOrValue<string>;
867
+ }): Promise<BigNumber>;
845
868
  };
846
869
  populateTransaction: {
847
870
  accountFactory(overrides?: CallOverrides): Promise<PopulatedTransaction>;
@@ -856,11 +879,11 @@ export interface ICreditManagerV3 extends BaseContract {
856
879
  approveCreditAccount(token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
857
880
  from?: PromiseOrValue<string>;
858
881
  }): Promise<PopulatedTransaction>;
859
- calcDebtAndCollateral(creditAccount: PromiseOrValue<string>, task: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
860
- claimWithdrawals(creditAccount: PromiseOrValue<string>, to: PromiseOrValue<string>, action: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
882
+ approveToken(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, spender: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
861
883
  from?: PromiseOrValue<string>;
862
884
  }): Promise<PopulatedTransaction>;
863
- closeCreditAccount(creditAccount: PromiseOrValue<string>, closureAction: PromiseOrValue<BigNumberish>, collateralDebtData: CollateralDebtDataStruct, payer: PromiseOrValue<string>, to: PromiseOrValue<string>, skipTokensMask: PromiseOrValue<BigNumberish>, convertToETH: PromiseOrValue<boolean>, overrides?: Overrides & {
885
+ calcDebtAndCollateral(creditAccount: PromiseOrValue<string>, task: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
886
+ closeCreditAccount(creditAccount: PromiseOrValue<string>, overrides?: Overrides & {
864
887
  from?: PromiseOrValue<string>;
865
888
  }): Promise<PopulatedTransaction>;
866
889
  collateralTokenByMask(tokenMask: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
@@ -876,9 +899,12 @@ export interface ICreditManagerV3 extends BaseContract {
876
899
  execute(data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
877
900
  from?: PromiseOrValue<string>;
878
901
  }): Promise<PopulatedTransaction>;
902
+ externalCall(creditAccount: PromiseOrValue<string>, target: PromiseOrValue<string>, callData: PromiseOrValue<BytesLike>, overrides?: Overrides & {
903
+ from?: PromiseOrValue<string>;
904
+ }): Promise<PopulatedTransaction>;
879
905
  fees(overrides?: CallOverrides): Promise<PopulatedTransaction>;
880
906
  flagsOf(creditAccount: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
881
- fullCollateralCheck(creditAccount: PromiseOrValue<string>, enabledTokensMask: PromiseOrValue<BigNumberish>, collateralHints: PromiseOrValue<BigNumberish>[], minHealthFactor: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
907
+ fullCollateralCheck(creditAccount: PromiseOrValue<string>, enabledTokensMask: PromiseOrValue<BigNumberish>, collateralHints: PromiseOrValue<BigNumberish>[], minHealthFactor: PromiseOrValue<BigNumberish>, useSafePrices: PromiseOrValue<boolean>, overrides?: Overrides & {
882
908
  from?: PromiseOrValue<string>;
883
909
  }): Promise<PopulatedTransaction>;
884
910
  getActiveCreditAccountOrRevert(overrides?: CallOverrides): Promise<PopulatedTransaction>;
@@ -886,6 +912,9 @@ export interface ICreditManagerV3 extends BaseContract {
886
912
  getTokenByMask(tokenMask: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
887
913
  getTokenMaskOrRevert(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
888
914
  isLiquidatable(creditAccount: PromiseOrValue<string>, minHealthFactor: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
915
+ liquidateCreditAccount(creditAccount: PromiseOrValue<string>, collateralDebtData: CollateralDebtDataStruct, to: PromiseOrValue<string>, isExpired: PromiseOrValue<boolean>, overrides?: Overrides & {
916
+ from?: PromiseOrValue<string>;
917
+ }): Promise<PopulatedTransaction>;
889
918
  liquidationThresholds(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
890
919
  ltParams(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
891
920
  manageDebt(creditAccount: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, enabledTokensMask: PromiseOrValue<BigNumberish>, action: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
@@ -903,9 +932,6 @@ export interface ICreditManagerV3 extends BaseContract {
903
932
  revokeAdapterAllowances(creditAccount: PromiseOrValue<string>, revocations: RevocationPairStruct[], overrides?: Overrides & {
904
933
  from?: PromiseOrValue<string>;
905
934
  }): Promise<PopulatedTransaction>;
906
- scheduleWithdrawal(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
907
- from?: PromiseOrValue<string>;
908
- }): Promise<PopulatedTransaction>;
909
935
  setActiveCreditAccount(creditAccount: PromiseOrValue<string>, overrides?: Overrides & {
910
936
  from?: PromiseOrValue<string>;
911
937
  }): Promise<PopulatedTransaction>;
@@ -942,6 +968,8 @@ export interface ICreditManagerV3 extends BaseContract {
942
968
  }): Promise<PopulatedTransaction>;
943
969
  version(overrides?: CallOverrides): Promise<PopulatedTransaction>;
944
970
  weth(overrides?: CallOverrides): Promise<PopulatedTransaction>;
945
- withdrawalManager(overrides?: CallOverrides): Promise<PopulatedTransaction>;
971
+ withdrawCollateral(creditAccount: PromiseOrValue<string>, token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, to: PromiseOrValue<string>, overrides?: Overrides & {
972
+ from?: PromiseOrValue<string>;
973
+ }): Promise<PopulatedTransaction>;
946
974
  };
947
975
  }