@kasufinance/kasu-sdk 1.0.1

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 (219) hide show
  1. package/.eslintignore +3 -0
  2. package/.eslintrc.json +90 -0
  3. package/.github/workflows/ci.yml +0 -0
  4. package/.github/workflows/main.yml +43 -0
  5. package/.prettierignore +3 -0
  6. package/.prettierrc +28 -0
  7. package/abis/IClearingCoordinator.abi.json +410 -0
  8. package/abis/IERC20Metadata.abi.json +224 -0
  9. package/abis/IFeeManager.abi.json +66 -0
  10. package/abis/IKSULocking.abi.json +754 -0
  11. package/abis/IKasuAllowList.abi.json +455 -0
  12. package/abis/IKasuController.abi.json +423 -0
  13. package/abis/IKasuNFTs.abi.json +1523 -0
  14. package/abis/IKsuPrice.abi.json +15 -0
  15. package/abis/ILendingPool.abi.json +1431 -0
  16. package/abis/ILendingPoolFactory.abi.json +97 -0
  17. package/abis/ILendingPoolManager.abi.json +1347 -0
  18. package/abis/ILendingPoolTranche.abi.json +1317 -0
  19. package/abis/IPriceFeed.abi.json +1 -0
  20. package/abis/ISystemVariables.abi.json +431 -0
  21. package/abis/IUserLoyaltyRewards.abi.json +288 -0
  22. package/abis/IUserManager.abi.json +321 -0
  23. package/abis/KSULockBonus.abi.json +91 -0
  24. package/abis/KasuPoolExternalTVL.abi.json +812 -0
  25. package/abis/Swapper.abi.json +146 -0
  26. package/copy-abi.ps1 +15 -0
  27. package/dist/bundle.cjs.js +21646 -0
  28. package/dist/bundle.esm.js +21644 -0
  29. package/dist/contracts/IClearingCoordinatorAbi.d.ts +169 -0
  30. package/dist/contracts/IClearingCoordinatorAbi.js +1 -0
  31. package/dist/contracts/IERC20MetadataAbi.d.ts +162 -0
  32. package/dist/contracts/IERC20MetadataAbi.js +1 -0
  33. package/dist/contracts/IFeeManagerAbi.d.ts +96 -0
  34. package/dist/contracts/IFeeManagerAbi.js +1 -0
  35. package/dist/contracts/IKSULockingAbi.d.ts +466 -0
  36. package/dist/contracts/IKSULockingAbi.js +1 -0
  37. package/dist/contracts/IKasuAllowListAbi.d.ts +304 -0
  38. package/dist/contracts/IKasuAllowListAbi.js +1 -0
  39. package/dist/contracts/IKasuControllerAbi.d.ts +309 -0
  40. package/dist/contracts/IKasuControllerAbi.js +1 -0
  41. package/dist/contracts/IKasuNFTsAbi.d.ts +1121 -0
  42. package/dist/contracts/IKasuNFTsAbi.js +1 -0
  43. package/dist/contracts/IKsuPriceAbi.d.ts +42 -0
  44. package/dist/contracts/IKsuPriceAbi.js +1 -0
  45. package/dist/contracts/ILendingPoolAbi.d.ts +968 -0
  46. package/dist/contracts/ILendingPoolAbi.js +1 -0
  47. package/dist/contracts/ILendingPoolFactoryAbi.d.ts +103 -0
  48. package/dist/contracts/ILendingPoolFactoryAbi.js +1 -0
  49. package/dist/contracts/ILendingPoolManagerAbi.d.ts +779 -0
  50. package/dist/contracts/ILendingPoolManagerAbi.js +1 -0
  51. package/dist/contracts/ILendingPoolTrancheAbi.d.ts +752 -0
  52. package/dist/contracts/ILendingPoolTrancheAbi.js +1 -0
  53. package/dist/contracts/ISystemVariablesAbi.d.ts +378 -0
  54. package/dist/contracts/ISystemVariablesAbi.js +1 -0
  55. package/dist/contracts/IUserLoyaltyRewardsAbi.d.ts +248 -0
  56. package/dist/contracts/IUserLoyaltyRewardsAbi.js +1 -0
  57. package/dist/contracts/IUserManagerAbi.d.ts +270 -0
  58. package/dist/contracts/IUserManagerAbi.js +1 -0
  59. package/dist/contracts/KSULockBonusAbi.d.ts +61 -0
  60. package/dist/contracts/KSULockBonusAbi.js +1 -0
  61. package/dist/contracts/KasuPoolExternalTVLAbi.d.ts +411 -0
  62. package/dist/contracts/KasuPoolExternalTVLAbi.js +1 -0
  63. package/dist/contracts/SwapperAbi.d.ts +120 -0
  64. package/dist/contracts/SwapperAbi.js +1 -0
  65. package/dist/contracts/common.d.ts +21 -0
  66. package/dist/contracts/common.js +1 -0
  67. package/dist/contracts/factories/IClearingCoordinatorAbi__factory.d.ts +320 -0
  68. package/dist/contracts/factories/IClearingCoordinatorAbi__factory.js +423 -0
  69. package/dist/contracts/factories/IERC20MetadataAbi__factory.d.ts +178 -0
  70. package/dist/contracts/factories/IERC20MetadataAbi__factory.js +237 -0
  71. package/dist/contracts/factories/IFeeManagerAbi__factory.d.ts +59 -0
  72. package/dist/contracts/factories/IFeeManagerAbi__factory.js +79 -0
  73. package/dist/contracts/factories/IKSULockingAbi__factory.d.ts +588 -0
  74. package/dist/contracts/factories/IKSULockingAbi__factory.js +767 -0
  75. package/dist/contracts/factories/IKasuAllowListAbi__factory.d.ts +354 -0
  76. package/dist/contracts/factories/IKasuAllowListAbi__factory.js +468 -0
  77. package/dist/contracts/factories/IKasuControllerAbi__factory.d.ts +339 -0
  78. package/dist/contracts/factories/IKasuControllerAbi__factory.js +436 -0
  79. package/dist/contracts/factories/IKasuNFTsAbi__factory.d.ts +1629 -0
  80. package/dist/contracts/factories/IKasuNFTsAbi__factory.js +2108 -0
  81. package/dist/contracts/factories/IKsuPriceAbi__factory.d.ts +18 -0
  82. package/dist/contracts/factories/IKsuPriceAbi__factory.js +28 -0
  83. package/dist/contracts/factories/ILendingPoolAbi__factory.d.ts +1109 -0
  84. package/dist/contracts/factories/ILendingPoolAbi__factory.js +1444 -0
  85. package/dist/contracts/factories/ILendingPoolFactoryAbi__factory.d.ts +81 -0
  86. package/dist/contracts/factories/ILendingPoolFactoryAbi__factory.js +110 -0
  87. package/dist/contracts/factories/ILendingPoolManagerAbi__factory.d.ts +1045 -0
  88. package/dist/contracts/factories/ILendingPoolManagerAbi__factory.js +1360 -0
  89. package/dist/contracts/factories/ILendingPoolTrancheAbi__factory.d.ts +1015 -0
  90. package/dist/contracts/factories/ILendingPoolTrancheAbi__factory.js +1330 -0
  91. package/dist/contracts/factories/ISystemVariablesAbi__factory.d.ts +338 -0
  92. package/dist/contracts/factories/ISystemVariablesAbi__factory.js +444 -0
  93. package/dist/contracts/factories/IUserLoyaltyRewardsAbi__factory.d.ts +230 -0
  94. package/dist/contracts/factories/IUserLoyaltyRewardsAbi__factory.js +301 -0
  95. package/dist/contracts/factories/IUserManagerAbi__factory.d.ts +250 -0
  96. package/dist/contracts/factories/IUserManagerAbi__factory.js +334 -0
  97. package/dist/contracts/factories/KSULockBonusAbi__factory.d.ts +76 -0
  98. package/dist/contracts/factories/KSULockBonusAbi__factory.js +104 -0
  99. package/dist/contracts/factories/KasuPoolExternalTVLAbi__factory.d.ts +631 -0
  100. package/dist/contracts/factories/KasuPoolExternalTVLAbi__factory.js +825 -0
  101. package/dist/contracts/factories/SwapperAbi__factory.d.ts +120 -0
  102. package/dist/contracts/factories/SwapperAbi__factory.js +159 -0
  103. package/dist/contracts/factories/index.d.ts +18 -0
  104. package/dist/contracts/factories/index.js +21 -0
  105. package/dist/contracts/index.d.ts +37 -0
  106. package/dist/contracts/index.js +19 -0
  107. package/dist/index.d.ts +17 -0
  108. package/dist/index.js +16 -0
  109. package/dist/sdk-config.d.ts +22 -0
  110. package/dist/sdk-config.js +9 -0
  111. package/dist/services/DataService/data-service.d.ts +37 -0
  112. package/dist/services/DataService/data-service.js +586 -0
  113. package/dist/services/DataService/directus-types.d.ts +187 -0
  114. package/dist/services/DataService/directus-types.js +1 -0
  115. package/dist/services/DataService/queries.d.ts +7 -0
  116. package/dist/services/DataService/queries.js +158 -0
  117. package/dist/services/DataService/subgraph-types.d.ts +95 -0
  118. package/dist/services/DataService/subgraph-types.js +1 -0
  119. package/dist/services/DataService/types.d.ts +169 -0
  120. package/dist/services/DataService/types.js +1 -0
  121. package/dist/services/Locking/locking.d.ts +61 -0
  122. package/dist/services/Locking/locking.js +344 -0
  123. package/dist/services/Locking/queries.d.ts +10 -0
  124. package/dist/services/Locking/queries.js +108 -0
  125. package/dist/services/Locking/types.d.ts +117 -0
  126. package/dist/services/Locking/types.js +1 -0
  127. package/dist/services/Portfolio/portfolio.d.ts +22 -0
  128. package/dist/services/Portfolio/portfolio.js +325 -0
  129. package/dist/services/Portfolio/queries.d.ts +2 -0
  130. package/dist/services/Portfolio/queries.js +164 -0
  131. package/dist/services/Portfolio/types.d.ts +206 -0
  132. package/dist/services/Portfolio/types.js +1 -0
  133. package/dist/services/Swapper/swapper.d.ts +11 -0
  134. package/dist/services/Swapper/swapper.js +97 -0
  135. package/dist/services/Swapper/types.d.ts +51 -0
  136. package/dist/services/Swapper/types.js +1 -0
  137. package/dist/services/UserLending/helper.d.ts +2 -0
  138. package/dist/services/UserLending/helper.js +16 -0
  139. package/dist/services/UserLending/queries.d.ts +8 -0
  140. package/dist/services/UserLending/queries.js +188 -0
  141. package/dist/services/UserLending/subgraph-types.d.ts +147 -0
  142. package/dist/services/UserLending/subgraph-types.js +6 -0
  143. package/dist/services/UserLending/types.d.ts +102 -0
  144. package/dist/services/UserLending/types.js +13 -0
  145. package/dist/services/UserLending/user-lending.d.ts +55 -0
  146. package/dist/services/UserLending/user-lending.js +490 -0
  147. package/dist/services/shared.d.ts +1 -0
  148. package/dist/services/shared.js +11 -0
  149. package/dist/tests/sample.test.d.ts +1 -0
  150. package/dist/tests/sample.test.js +32 -0
  151. package/index.ts +2 -0
  152. package/jest-config.ts +9 -0
  153. package/jest.config.js +8 -0
  154. package/package.json +49 -0
  155. package/rollup.config.js +45 -0
  156. package/src/contracts/IClearingCoordinatorAbi.ts +406 -0
  157. package/src/contracts/IERC20MetadataAbi.ts +364 -0
  158. package/src/contracts/IFeeManagerAbi.ts +182 -0
  159. package/src/contracts/IKSULockingAbi.ts +965 -0
  160. package/src/contracts/IKasuAllowListAbi.ts +605 -0
  161. package/src/contracts/IKasuControllerAbi.ts +703 -0
  162. package/src/contracts/IKasuNFTsAbi.ts +2744 -0
  163. package/src/contracts/IKsuPriceAbi.ts +87 -0
  164. package/src/contracts/ILendingPoolAbi.ts +2081 -0
  165. package/src/contracts/ILendingPoolFactoryAbi.ts +161 -0
  166. package/src/contracts/ILendingPoolManagerAbi.ts +1917 -0
  167. package/src/contracts/ILendingPoolTrancheAbi.ts +1911 -0
  168. package/src/contracts/ISystemVariablesAbi.ts +908 -0
  169. package/src/contracts/IUserLoyaltyRewardsAbi.ts +544 -0
  170. package/src/contracts/IUserManagerAbi.ts +612 -0
  171. package/src/contracts/KSULockBonusAbi.ts +124 -0
  172. package/src/contracts/KasuPoolExternalTVLAbi.ts +1071 -0
  173. package/src/contracts/SwapperAbi.ts +266 -0
  174. package/src/contracts/common.ts +44 -0
  175. package/src/contracts/factories/IClearingCoordinatorAbi__factory.ts +438 -0
  176. package/src/contracts/factories/IERC20MetadataAbi__factory.ts +248 -0
  177. package/src/contracts/factories/IFeeManagerAbi__factory.ts +90 -0
  178. package/src/contracts/factories/IKSULockingAbi__factory.ts +778 -0
  179. package/src/contracts/factories/IKasuAllowListAbi__factory.ts +479 -0
  180. package/src/contracts/factories/IKasuControllerAbi__factory.ts +447 -0
  181. package/src/contracts/factories/IKasuNFTsAbi__factory.ts +2116 -0
  182. package/src/contracts/factories/IKsuPriceAbi__factory.ts +36 -0
  183. package/src/contracts/factories/ILendingPoolAbi__factory.ts +1455 -0
  184. package/src/contracts/factories/ILendingPoolFactoryAbi__factory.ts +125 -0
  185. package/src/contracts/factories/ILendingPoolManagerAbi__factory.ts +1375 -0
  186. package/src/contracts/factories/ILendingPoolTrancheAbi__factory.ts +1345 -0
  187. package/src/contracts/factories/ISystemVariablesAbi__factory.ts +455 -0
  188. package/src/contracts/factories/IUserLoyaltyRewardsAbi__factory.ts +316 -0
  189. package/src/contracts/factories/IUserManagerAbi__factory.ts +345 -0
  190. package/src/contracts/factories/KSULockBonusAbi__factory.ts +115 -0
  191. package/src/contracts/factories/KasuPoolExternalTVLAbi__factory.ts +840 -0
  192. package/src/contracts/factories/SwapperAbi__factory.ts +167 -0
  193. package/src/contracts/factories/index.ts +21 -0
  194. package/src/contracts/index.ts +40 -0
  195. package/src/index.ts +27 -0
  196. package/src/sdk-config.ts +35 -0
  197. package/src/services/DataService/data-service.ts +1017 -0
  198. package/src/services/DataService/directus-types.ts +199 -0
  199. package/src/services/DataService/queries.ts +165 -0
  200. package/src/services/DataService/subgraph-types.ts +104 -0
  201. package/src/services/DataService/types.ts +184 -0
  202. package/src/services/Locking/locking.ts +541 -0
  203. package/src/services/Locking/queries.ts +118 -0
  204. package/src/services/Locking/types.ts +141 -0
  205. package/src/services/Portfolio/portfolio.ts +593 -0
  206. package/src/services/Portfolio/queries.ts +166 -0
  207. package/src/services/Portfolio/types.ts +220 -0
  208. package/src/services/Swapper/swapper.ts +158 -0
  209. package/src/services/Swapper/types.ts +54 -0
  210. package/src/services/UserLending/helper.ts +28 -0
  211. package/src/services/UserLending/queries.ts +196 -0
  212. package/src/services/UserLending/subgraph-types.ts +173 -0
  213. package/src/services/UserLending/types.ts +123 -0
  214. package/src/services/UserLending/user-lending.ts +933 -0
  215. package/src/services/shared.ts +11 -0
  216. package/src/tests/sample.test.ts +44 -0
  217. package/tsconfig.json +27 -0
  218. package/tsconfig.tsbuildinfo +1 -0
  219. package/versioner.sh +6 -0
@@ -0,0 +1,968 @@
1
+ import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers";
2
+ import type { FunctionFragment, Result, EventFragment } from "@ethersproject/abi";
3
+ import type { Listener, Provider } from "@ethersproject/providers";
4
+ import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "./common";
5
+ export type ClearingConfigurationStruct = {
6
+ drawAmount: BigNumberish;
7
+ trancheDesiredRatios: BigNumberish[];
8
+ maxExcessPercentage: BigNumberish;
9
+ minExcessPercentage: BigNumberish;
10
+ };
11
+ export type ClearingConfigurationStructOutput = [
12
+ BigNumber,
13
+ BigNumber[],
14
+ BigNumber,
15
+ BigNumber
16
+ ] & {
17
+ drawAmount: BigNumber;
18
+ trancheDesiredRatios: BigNumber[];
19
+ maxExcessPercentage: BigNumber;
20
+ minExcessPercentage: BigNumber;
21
+ };
22
+ export type LendingPoolInfoStruct = {
23
+ trancheAddresses: string[];
24
+ pendingPool: string;
25
+ };
26
+ export type LendingPoolInfoStructOutput = [string[], string] & {
27
+ trancheAddresses: string[];
28
+ pendingPool: string;
29
+ };
30
+ export type TrancheConfigStruct = {
31
+ ratio: BigNumberish;
32
+ interestRate: BigNumberish;
33
+ minDepositAmount: BigNumberish;
34
+ maxDepositAmount: BigNumberish;
35
+ };
36
+ export type TrancheConfigStructOutput = [
37
+ BigNumber,
38
+ BigNumber,
39
+ BigNumber,
40
+ BigNumber
41
+ ] & {
42
+ ratio: BigNumber;
43
+ interestRate: BigNumber;
44
+ minDepositAmount: BigNumber;
45
+ maxDepositAmount: BigNumber;
46
+ };
47
+ export type PoolConfigurationStruct = {
48
+ tranches: TrancheConfigStruct[];
49
+ drawRecipient: string;
50
+ desiredDrawAmount: BigNumberish;
51
+ trancheInterestChangeEpochDelay: BigNumberish;
52
+ targetExcessLiquidityPercentage: BigNumberish;
53
+ minimumExcessLiquidityPercentage: BigNumberish;
54
+ };
55
+ export type PoolConfigurationStructOutput = [
56
+ TrancheConfigStructOutput[],
57
+ string,
58
+ BigNumber,
59
+ BigNumber,
60
+ BigNumber,
61
+ BigNumber
62
+ ] & {
63
+ tranches: TrancheConfigStructOutput[];
64
+ drawRecipient: string;
65
+ desiredDrawAmount: BigNumber;
66
+ trancheInterestChangeEpochDelay: BigNumber;
67
+ targetExcessLiquidityPercentage: BigNumber;
68
+ minimumExcessLiquidityPercentage: BigNumber;
69
+ };
70
+ export interface ILendingPoolAbiInterface extends utils.Interface {
71
+ functions: {
72
+ "acceptDeposit(address,address,uint256)": FunctionFragment;
73
+ "acceptWithdrawal(address,address,uint256)": FunctionFragment;
74
+ "allowance(address,address)": FunctionFragment;
75
+ "applyInterests(uint256)": FunctionFragment;
76
+ "approve(address,uint256)": FunctionFragment;
77
+ "availableFunds()": FunctionFragment;
78
+ "balanceOf(address)": FunctionFragment;
79
+ "calculateMaximumLossAmount()": FunctionFragment;
80
+ "claimRepaidLoss(address,address,uint256)": FunctionFragment;
81
+ "depositFirstLossCapital(uint256)": FunctionFragment;
82
+ "drawFunds(uint256)": FunctionFragment;
83
+ "feesOwedAmount()": FunctionFragment;
84
+ "forceImmediateWithdrawal(address,address,uint256)": FunctionFragment;
85
+ "getClearingConfig()": FunctionFragment;
86
+ "getLendingPoolInfo()": FunctionFragment;
87
+ "isLendingPoolTranche(address)": FunctionFragment;
88
+ "lendingPoolTrancheCount()": FunctionFragment;
89
+ "lendingPoolTranches()": FunctionFragment;
90
+ "pendingPool()": FunctionFragment;
91
+ "poolConfiguration()": FunctionFragment;
92
+ "repayLoss(address,uint256,uint256)": FunctionFragment;
93
+ "repayOwedFunds(uint256)": FunctionFragment;
94
+ "reportLoss(uint256,bool)": FunctionFragment;
95
+ "stop()": FunctionFragment;
96
+ "totalSupply()": FunctionFragment;
97
+ "trancheConfigurationDepositLimits(address)": FunctionFragment;
98
+ "trancheIndex(address)": FunctionFragment;
99
+ "transfer(address,uint256)": FunctionFragment;
100
+ "transferFrom(address,address,uint256)": FunctionFragment;
101
+ "updateDesiredDrawAmount(uint256)": FunctionFragment;
102
+ "updateDrawRecipient(address)": FunctionFragment;
103
+ "updateMaximumDepositAmount(address,uint256)": FunctionFragment;
104
+ "updateMinimumDepositAmount(address,uint256)": FunctionFragment;
105
+ "updateMinimumExcessLiquidityPercentage(uint256)": FunctionFragment;
106
+ "updateTargetExcessLiquidityPercentage(uint256)": FunctionFragment;
107
+ "updateTrancheDesiredRatios(uint256[])": FunctionFragment;
108
+ "updateTrancheInterestRate(address,uint256)": FunctionFragment;
109
+ "updateTrancheInterestRateChangeEpochDelay(uint256)": FunctionFragment;
110
+ "userBalance(address)": FunctionFragment;
111
+ "userOwedAmount()": FunctionFragment;
112
+ "verifyClearingConfig((uint256,uint256[],uint256,uint256))": FunctionFragment;
113
+ "withdrawFirstLossCapital(uint256,address)": FunctionFragment;
114
+ };
115
+ getFunction(nameOrSignatureOrTopic: "acceptDeposit" | "acceptWithdrawal" | "allowance" | "applyInterests" | "approve" | "availableFunds" | "balanceOf" | "calculateMaximumLossAmount" | "claimRepaidLoss" | "depositFirstLossCapital" | "drawFunds" | "feesOwedAmount" | "forceImmediateWithdrawal" | "getClearingConfig" | "getLendingPoolInfo" | "isLendingPoolTranche" | "lendingPoolTrancheCount" | "lendingPoolTranches" | "pendingPool" | "poolConfiguration" | "repayLoss" | "repayOwedFunds" | "reportLoss" | "stop" | "totalSupply" | "trancheConfigurationDepositLimits" | "trancheIndex" | "transfer" | "transferFrom" | "updateDesiredDrawAmount" | "updateDrawRecipient" | "updateMaximumDepositAmount" | "updateMinimumDepositAmount" | "updateMinimumExcessLiquidityPercentage" | "updateTargetExcessLiquidityPercentage" | "updateTrancheDesiredRatios" | "updateTrancheInterestRate" | "updateTrancheInterestRateChangeEpochDelay" | "userBalance" | "userOwedAmount" | "verifyClearingConfig" | "withdrawFirstLossCapital"): FunctionFragment;
116
+ encodeFunctionData(functionFragment: "acceptDeposit", values: [string, string, BigNumberish]): string;
117
+ encodeFunctionData(functionFragment: "acceptWithdrawal", values: [string, string, BigNumberish]): string;
118
+ encodeFunctionData(functionFragment: "allowance", values: [string, string]): string;
119
+ encodeFunctionData(functionFragment: "applyInterests", values: [BigNumberish]): string;
120
+ encodeFunctionData(functionFragment: "approve", values: [string, BigNumberish]): string;
121
+ encodeFunctionData(functionFragment: "availableFunds", values?: undefined): string;
122
+ encodeFunctionData(functionFragment: "balanceOf", values: [string]): string;
123
+ encodeFunctionData(functionFragment: "calculateMaximumLossAmount", values?: undefined): string;
124
+ encodeFunctionData(functionFragment: "claimRepaidLoss", values: [string, string, BigNumberish]): string;
125
+ encodeFunctionData(functionFragment: "depositFirstLossCapital", values: [BigNumberish]): string;
126
+ encodeFunctionData(functionFragment: "drawFunds", values: [BigNumberish]): string;
127
+ encodeFunctionData(functionFragment: "feesOwedAmount", values?: undefined): string;
128
+ encodeFunctionData(functionFragment: "forceImmediateWithdrawal", values: [string, string, BigNumberish]): string;
129
+ encodeFunctionData(functionFragment: "getClearingConfig", values?: undefined): string;
130
+ encodeFunctionData(functionFragment: "getLendingPoolInfo", values?: undefined): string;
131
+ encodeFunctionData(functionFragment: "isLendingPoolTranche", values: [string]): string;
132
+ encodeFunctionData(functionFragment: "lendingPoolTrancheCount", values?: undefined): string;
133
+ encodeFunctionData(functionFragment: "lendingPoolTranches", values?: undefined): string;
134
+ encodeFunctionData(functionFragment: "pendingPool", values?: undefined): string;
135
+ encodeFunctionData(functionFragment: "poolConfiguration", values?: undefined): string;
136
+ encodeFunctionData(functionFragment: "repayLoss", values: [string, BigNumberish, BigNumberish]): string;
137
+ encodeFunctionData(functionFragment: "repayOwedFunds", values: [BigNumberish]): string;
138
+ encodeFunctionData(functionFragment: "reportLoss", values: [BigNumberish, boolean]): string;
139
+ encodeFunctionData(functionFragment: "stop", values?: undefined): string;
140
+ encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string;
141
+ encodeFunctionData(functionFragment: "trancheConfigurationDepositLimits", values: [string]): string;
142
+ encodeFunctionData(functionFragment: "trancheIndex", values: [string]): string;
143
+ encodeFunctionData(functionFragment: "transfer", values: [string, BigNumberish]): string;
144
+ encodeFunctionData(functionFragment: "transferFrom", values: [string, string, BigNumberish]): string;
145
+ encodeFunctionData(functionFragment: "updateDesiredDrawAmount", values: [BigNumberish]): string;
146
+ encodeFunctionData(functionFragment: "updateDrawRecipient", values: [string]): string;
147
+ encodeFunctionData(functionFragment: "updateMaximumDepositAmount", values: [string, BigNumberish]): string;
148
+ encodeFunctionData(functionFragment: "updateMinimumDepositAmount", values: [string, BigNumberish]): string;
149
+ encodeFunctionData(functionFragment: "updateMinimumExcessLiquidityPercentage", values: [BigNumberish]): string;
150
+ encodeFunctionData(functionFragment: "updateTargetExcessLiquidityPercentage", values: [BigNumberish]): string;
151
+ encodeFunctionData(functionFragment: "updateTrancheDesiredRatios", values: [BigNumberish[]]): string;
152
+ encodeFunctionData(functionFragment: "updateTrancheInterestRate", values: [string, BigNumberish]): string;
153
+ encodeFunctionData(functionFragment: "updateTrancheInterestRateChangeEpochDelay", values: [BigNumberish]): string;
154
+ encodeFunctionData(functionFragment: "userBalance", values: [string]): string;
155
+ encodeFunctionData(functionFragment: "userOwedAmount", values?: undefined): string;
156
+ encodeFunctionData(functionFragment: "verifyClearingConfig", values: [ClearingConfigurationStruct]): string;
157
+ encodeFunctionData(functionFragment: "withdrawFirstLossCapital", values: [BigNumberish, string]): string;
158
+ decodeFunctionResult(functionFragment: "acceptDeposit", data: BytesLike): Result;
159
+ decodeFunctionResult(functionFragment: "acceptWithdrawal", data: BytesLike): Result;
160
+ decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result;
161
+ decodeFunctionResult(functionFragment: "applyInterests", data: BytesLike): Result;
162
+ decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result;
163
+ decodeFunctionResult(functionFragment: "availableFunds", data: BytesLike): Result;
164
+ decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result;
165
+ decodeFunctionResult(functionFragment: "calculateMaximumLossAmount", data: BytesLike): Result;
166
+ decodeFunctionResult(functionFragment: "claimRepaidLoss", data: BytesLike): Result;
167
+ decodeFunctionResult(functionFragment: "depositFirstLossCapital", data: BytesLike): Result;
168
+ decodeFunctionResult(functionFragment: "drawFunds", data: BytesLike): Result;
169
+ decodeFunctionResult(functionFragment: "feesOwedAmount", data: BytesLike): Result;
170
+ decodeFunctionResult(functionFragment: "forceImmediateWithdrawal", data: BytesLike): Result;
171
+ decodeFunctionResult(functionFragment: "getClearingConfig", data: BytesLike): Result;
172
+ decodeFunctionResult(functionFragment: "getLendingPoolInfo", data: BytesLike): Result;
173
+ decodeFunctionResult(functionFragment: "isLendingPoolTranche", data: BytesLike): Result;
174
+ decodeFunctionResult(functionFragment: "lendingPoolTrancheCount", data: BytesLike): Result;
175
+ decodeFunctionResult(functionFragment: "lendingPoolTranches", data: BytesLike): Result;
176
+ decodeFunctionResult(functionFragment: "pendingPool", data: BytesLike): Result;
177
+ decodeFunctionResult(functionFragment: "poolConfiguration", data: BytesLike): Result;
178
+ decodeFunctionResult(functionFragment: "repayLoss", data: BytesLike): Result;
179
+ decodeFunctionResult(functionFragment: "repayOwedFunds", data: BytesLike): Result;
180
+ decodeFunctionResult(functionFragment: "reportLoss", data: BytesLike): Result;
181
+ decodeFunctionResult(functionFragment: "stop", data: BytesLike): Result;
182
+ decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result;
183
+ decodeFunctionResult(functionFragment: "trancheConfigurationDepositLimits", data: BytesLike): Result;
184
+ decodeFunctionResult(functionFragment: "trancheIndex", data: BytesLike): Result;
185
+ decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result;
186
+ decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result;
187
+ decodeFunctionResult(functionFragment: "updateDesiredDrawAmount", data: BytesLike): Result;
188
+ decodeFunctionResult(functionFragment: "updateDrawRecipient", data: BytesLike): Result;
189
+ decodeFunctionResult(functionFragment: "updateMaximumDepositAmount", data: BytesLike): Result;
190
+ decodeFunctionResult(functionFragment: "updateMinimumDepositAmount", data: BytesLike): Result;
191
+ decodeFunctionResult(functionFragment: "updateMinimumExcessLiquidityPercentage", data: BytesLike): Result;
192
+ decodeFunctionResult(functionFragment: "updateTargetExcessLiquidityPercentage", data: BytesLike): Result;
193
+ decodeFunctionResult(functionFragment: "updateTrancheDesiredRatios", data: BytesLike): Result;
194
+ decodeFunctionResult(functionFragment: "updateTrancheInterestRate", data: BytesLike): Result;
195
+ decodeFunctionResult(functionFragment: "updateTrancheInterestRateChangeEpochDelay", data: BytesLike): Result;
196
+ decodeFunctionResult(functionFragment: "userBalance", data: BytesLike): Result;
197
+ decodeFunctionResult(functionFragment: "userOwedAmount", data: BytesLike): Result;
198
+ decodeFunctionResult(functionFragment: "verifyClearingConfig", data: BytesLike): Result;
199
+ decodeFunctionResult(functionFragment: "withdrawFirstLossCapital", data: BytesLike): Result;
200
+ events: {
201
+ "Approval(address,address,uint256)": EventFragment;
202
+ "DepositAccepted(address,address,uint256)": EventFragment;
203
+ "FeesOwedIncreased(uint256,uint256)": EventFragment;
204
+ "FirstLossCapitalAdded(uint256)": EventFragment;
205
+ "FirstLossCapitalLossReported(uint256,uint256)": EventFragment;
206
+ "FirstLossCapitalWithdrawn(uint256)": EventFragment;
207
+ "FundsDrawn(uint256)": EventFragment;
208
+ "ImmediateWithdrawal(address,address,uint256,uint256)": EventFragment;
209
+ "InterestApplied(address,uint256,uint256)": EventFragment;
210
+ "LendingPoolStopped()": EventFragment;
211
+ "LossReported(uint256)": EventFragment;
212
+ "OwedFundsRepaid(uint256,uint256)": EventFragment;
213
+ "PaidFees(uint256)": EventFragment;
214
+ "RemovedTrancheInterestRateUpdate(address,uint256,uint256)": EventFragment;
215
+ "Transfer(address,address,uint256)": EventFragment;
216
+ "UpdatedDesiredDrawAmount(uint256)": EventFragment;
217
+ "UpdatedDrawRecipient(address)": EventFragment;
218
+ "UpdatedMaximumDepositAmount(address,uint256)": EventFragment;
219
+ "UpdatedMinimumDepositAmount(address,uint256)": EventFragment;
220
+ "UpdatedMinimumExcessLiquidityPercentage(uint256)": EventFragment;
221
+ "UpdatedTargetExcessLiquidityPercentage(uint256)": EventFragment;
222
+ "UpdatedTrancheDesiredRatios(uint256[])": EventFragment;
223
+ "UpdatedTrancheInterestRate(address,uint256,uint256)": EventFragment;
224
+ "UpdatedTrancheInterestRateChangeEpochDelay(uint256)": EventFragment;
225
+ "WithdrawalAccepted(address,address,uint256,uint256)": EventFragment;
226
+ };
227
+ getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment;
228
+ getEvent(nameOrSignatureOrTopic: "DepositAccepted"): EventFragment;
229
+ getEvent(nameOrSignatureOrTopic: "FeesOwedIncreased"): EventFragment;
230
+ getEvent(nameOrSignatureOrTopic: "FirstLossCapitalAdded"): EventFragment;
231
+ getEvent(nameOrSignatureOrTopic: "FirstLossCapitalLossReported"): EventFragment;
232
+ getEvent(nameOrSignatureOrTopic: "FirstLossCapitalWithdrawn"): EventFragment;
233
+ getEvent(nameOrSignatureOrTopic: "FundsDrawn"): EventFragment;
234
+ getEvent(nameOrSignatureOrTopic: "ImmediateWithdrawal"): EventFragment;
235
+ getEvent(nameOrSignatureOrTopic: "InterestApplied"): EventFragment;
236
+ getEvent(nameOrSignatureOrTopic: "LendingPoolStopped"): EventFragment;
237
+ getEvent(nameOrSignatureOrTopic: "LossReported"): EventFragment;
238
+ getEvent(nameOrSignatureOrTopic: "OwedFundsRepaid"): EventFragment;
239
+ getEvent(nameOrSignatureOrTopic: "PaidFees"): EventFragment;
240
+ getEvent(nameOrSignatureOrTopic: "RemovedTrancheInterestRateUpdate"): EventFragment;
241
+ getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment;
242
+ getEvent(nameOrSignatureOrTopic: "UpdatedDesiredDrawAmount"): EventFragment;
243
+ getEvent(nameOrSignatureOrTopic: "UpdatedDrawRecipient"): EventFragment;
244
+ getEvent(nameOrSignatureOrTopic: "UpdatedMaximumDepositAmount"): EventFragment;
245
+ getEvent(nameOrSignatureOrTopic: "UpdatedMinimumDepositAmount"): EventFragment;
246
+ getEvent(nameOrSignatureOrTopic: "UpdatedMinimumExcessLiquidityPercentage"): EventFragment;
247
+ getEvent(nameOrSignatureOrTopic: "UpdatedTargetExcessLiquidityPercentage"): EventFragment;
248
+ getEvent(nameOrSignatureOrTopic: "UpdatedTrancheDesiredRatios"): EventFragment;
249
+ getEvent(nameOrSignatureOrTopic: "UpdatedTrancheInterestRate"): EventFragment;
250
+ getEvent(nameOrSignatureOrTopic: "UpdatedTrancheInterestRateChangeEpochDelay"): EventFragment;
251
+ getEvent(nameOrSignatureOrTopic: "WithdrawalAccepted"): EventFragment;
252
+ }
253
+ export interface ApprovalEventObject {
254
+ owner: string;
255
+ spender: string;
256
+ value: BigNumber;
257
+ }
258
+ export type ApprovalEvent = TypedEvent<[
259
+ string,
260
+ string,
261
+ BigNumber
262
+ ], ApprovalEventObject>;
263
+ export type ApprovalEventFilter = TypedEventFilter<ApprovalEvent>;
264
+ export interface DepositAcceptedEventObject {
265
+ user: string;
266
+ tranche: string;
267
+ amount: BigNumber;
268
+ }
269
+ export type DepositAcceptedEvent = TypedEvent<[
270
+ string,
271
+ string,
272
+ BigNumber
273
+ ], DepositAcceptedEventObject>;
274
+ export type DepositAcceptedEventFilter = TypedEventFilter<DepositAcceptedEvent>;
275
+ export interface FeesOwedIncreasedEventObject {
276
+ epoch: BigNumber;
277
+ feesIncreasedAmount: BigNumber;
278
+ }
279
+ export type FeesOwedIncreasedEvent = TypedEvent<[
280
+ BigNumber,
281
+ BigNumber
282
+ ], FeesOwedIncreasedEventObject>;
283
+ export type FeesOwedIncreasedEventFilter = TypedEventFilter<FeesOwedIncreasedEvent>;
284
+ export interface FirstLossCapitalAddedEventObject {
285
+ amountAdded: BigNumber;
286
+ }
287
+ export type FirstLossCapitalAddedEvent = TypedEvent<[
288
+ BigNumber
289
+ ], FirstLossCapitalAddedEventObject>;
290
+ export type FirstLossCapitalAddedEventFilter = TypedEventFilter<FirstLossCapitalAddedEvent>;
291
+ export interface FirstLossCapitalLossReportedEventObject {
292
+ lossId: BigNumber;
293
+ amount: BigNumber;
294
+ }
295
+ export type FirstLossCapitalLossReportedEvent = TypedEvent<[
296
+ BigNumber,
297
+ BigNumber
298
+ ], FirstLossCapitalLossReportedEventObject>;
299
+ export type FirstLossCapitalLossReportedEventFilter = TypedEventFilter<FirstLossCapitalLossReportedEvent>;
300
+ export interface FirstLossCapitalWithdrawnEventObject {
301
+ amountWithdrawn: BigNumber;
302
+ }
303
+ export type FirstLossCapitalWithdrawnEvent = TypedEvent<[
304
+ BigNumber
305
+ ], FirstLossCapitalWithdrawnEventObject>;
306
+ export type FirstLossCapitalWithdrawnEventFilter = TypedEventFilter<FirstLossCapitalWithdrawnEvent>;
307
+ export interface FundsDrawnEventObject {
308
+ amount: BigNumber;
309
+ }
310
+ export type FundsDrawnEvent = TypedEvent<[BigNumber], FundsDrawnEventObject>;
311
+ export type FundsDrawnEventFilter = TypedEventFilter<FundsDrawnEvent>;
312
+ export interface ImmediateWithdrawalEventObject {
313
+ user: string;
314
+ tranche: string;
315
+ shares: BigNumber;
316
+ amount: BigNumber;
317
+ }
318
+ export type ImmediateWithdrawalEvent = TypedEvent<[
319
+ string,
320
+ string,
321
+ BigNumber,
322
+ BigNumber
323
+ ], ImmediateWithdrawalEventObject>;
324
+ export type ImmediateWithdrawalEventFilter = TypedEventFilter<ImmediateWithdrawalEvent>;
325
+ export interface InterestAppliedEventObject {
326
+ tranche: string;
327
+ epoch: BigNumber;
328
+ interestAmount: BigNumber;
329
+ }
330
+ export type InterestAppliedEvent = TypedEvent<[
331
+ string,
332
+ BigNumber,
333
+ BigNumber
334
+ ], InterestAppliedEventObject>;
335
+ export type InterestAppliedEventFilter = TypedEventFilter<InterestAppliedEvent>;
336
+ export interface LendingPoolStoppedEventObject {
337
+ }
338
+ export type LendingPoolStoppedEvent = TypedEvent<[
339
+ ], LendingPoolStoppedEventObject>;
340
+ export type LendingPoolStoppedEventFilter = TypedEventFilter<LendingPoolStoppedEvent>;
341
+ export interface LossReportedEventObject {
342
+ amount: BigNumber;
343
+ }
344
+ export type LossReportedEvent = TypedEvent<[
345
+ BigNumber
346
+ ], LossReportedEventObject>;
347
+ export type LossReportedEventFilter = TypedEventFilter<LossReportedEvent>;
348
+ export interface OwedFundsRepaidEventObject {
349
+ amountForUsers: BigNumber;
350
+ amountForFees: BigNumber;
351
+ }
352
+ export type OwedFundsRepaidEvent = TypedEvent<[
353
+ BigNumber,
354
+ BigNumber
355
+ ], OwedFundsRepaidEventObject>;
356
+ export type OwedFundsRepaidEventFilter = TypedEventFilter<OwedFundsRepaidEvent>;
357
+ export interface PaidFeesEventObject {
358
+ feesPaid: BigNumber;
359
+ }
360
+ export type PaidFeesEvent = TypedEvent<[BigNumber], PaidFeesEventObject>;
361
+ export type PaidFeesEventFilter = TypedEventFilter<PaidFeesEvent>;
362
+ export interface RemovedTrancheInterestRateUpdateEventObject {
363
+ tranche: string;
364
+ applicableEpoch: BigNumber;
365
+ arrayIndex: BigNumber;
366
+ }
367
+ export type RemovedTrancheInterestRateUpdateEvent = TypedEvent<[
368
+ string,
369
+ BigNumber,
370
+ BigNumber
371
+ ], RemovedTrancheInterestRateUpdateEventObject>;
372
+ export type RemovedTrancheInterestRateUpdateEventFilter = TypedEventFilter<RemovedTrancheInterestRateUpdateEvent>;
373
+ export interface TransferEventObject {
374
+ from: string;
375
+ to: string;
376
+ value: BigNumber;
377
+ }
378
+ export type TransferEvent = TypedEvent<[
379
+ string,
380
+ string,
381
+ BigNumber
382
+ ], TransferEventObject>;
383
+ export type TransferEventFilter = TypedEventFilter<TransferEvent>;
384
+ export interface UpdatedDesiredDrawAmountEventObject {
385
+ desiredDrawAmount: BigNumber;
386
+ }
387
+ export type UpdatedDesiredDrawAmountEvent = TypedEvent<[
388
+ BigNumber
389
+ ], UpdatedDesiredDrawAmountEventObject>;
390
+ export type UpdatedDesiredDrawAmountEventFilter = TypedEventFilter<UpdatedDesiredDrawAmountEvent>;
391
+ export interface UpdatedDrawRecipientEventObject {
392
+ drawRecipient: string;
393
+ }
394
+ export type UpdatedDrawRecipientEvent = TypedEvent<[
395
+ string
396
+ ], UpdatedDrawRecipientEventObject>;
397
+ export type UpdatedDrawRecipientEventFilter = TypedEventFilter<UpdatedDrawRecipientEvent>;
398
+ export interface UpdatedMaximumDepositAmountEventObject {
399
+ tranche: string;
400
+ amount: BigNumber;
401
+ }
402
+ export type UpdatedMaximumDepositAmountEvent = TypedEvent<[
403
+ string,
404
+ BigNumber
405
+ ], UpdatedMaximumDepositAmountEventObject>;
406
+ export type UpdatedMaximumDepositAmountEventFilter = TypedEventFilter<UpdatedMaximumDepositAmountEvent>;
407
+ export interface UpdatedMinimumDepositAmountEventObject {
408
+ tranche: string;
409
+ amount: BigNumber;
410
+ }
411
+ export type UpdatedMinimumDepositAmountEvent = TypedEvent<[
412
+ string,
413
+ BigNumber
414
+ ], UpdatedMinimumDepositAmountEventObject>;
415
+ export type UpdatedMinimumDepositAmountEventFilter = TypedEventFilter<UpdatedMinimumDepositAmountEvent>;
416
+ export interface UpdatedMinimumExcessLiquidityPercentageEventObject {
417
+ percentage: BigNumber;
418
+ }
419
+ export type UpdatedMinimumExcessLiquidityPercentageEvent = TypedEvent<[
420
+ BigNumber
421
+ ], UpdatedMinimumExcessLiquidityPercentageEventObject>;
422
+ export type UpdatedMinimumExcessLiquidityPercentageEventFilter = TypedEventFilter<UpdatedMinimumExcessLiquidityPercentageEvent>;
423
+ export interface UpdatedTargetExcessLiquidityPercentageEventObject {
424
+ percentage: BigNumber;
425
+ }
426
+ export type UpdatedTargetExcessLiquidityPercentageEvent = TypedEvent<[
427
+ BigNumber
428
+ ], UpdatedTargetExcessLiquidityPercentageEventObject>;
429
+ export type UpdatedTargetExcessLiquidityPercentageEventFilter = TypedEventFilter<UpdatedTargetExcessLiquidityPercentageEvent>;
430
+ export interface UpdatedTrancheDesiredRatiosEventObject {
431
+ ratios: BigNumber[];
432
+ }
433
+ export type UpdatedTrancheDesiredRatiosEvent = TypedEvent<[
434
+ BigNumber[]
435
+ ], UpdatedTrancheDesiredRatiosEventObject>;
436
+ export type UpdatedTrancheDesiredRatiosEventFilter = TypedEventFilter<UpdatedTrancheDesiredRatiosEvent>;
437
+ export interface UpdatedTrancheInterestRateEventObject {
438
+ tranche: string;
439
+ applicableEpoch: BigNumber;
440
+ newInterestRate: BigNumber;
441
+ }
442
+ export type UpdatedTrancheInterestRateEvent = TypedEvent<[
443
+ string,
444
+ BigNumber,
445
+ BigNumber
446
+ ], UpdatedTrancheInterestRateEventObject>;
447
+ export type UpdatedTrancheInterestRateEventFilter = TypedEventFilter<UpdatedTrancheInterestRateEvent>;
448
+ export interface UpdatedTrancheInterestRateChangeEpochDelayEventObject {
449
+ epochDelay: BigNumber;
450
+ }
451
+ export type UpdatedTrancheInterestRateChangeEpochDelayEvent = TypedEvent<[
452
+ BigNumber
453
+ ], UpdatedTrancheInterestRateChangeEpochDelayEventObject>;
454
+ export type UpdatedTrancheInterestRateChangeEpochDelayEventFilter = TypedEventFilter<UpdatedTrancheInterestRateChangeEpochDelayEvent>;
455
+ export interface WithdrawalAcceptedEventObject {
456
+ user: string;
457
+ tranche: string;
458
+ shares: BigNumber;
459
+ assetAmount: BigNumber;
460
+ }
461
+ export type WithdrawalAcceptedEvent = TypedEvent<[
462
+ string,
463
+ string,
464
+ BigNumber,
465
+ BigNumber
466
+ ], WithdrawalAcceptedEventObject>;
467
+ export type WithdrawalAcceptedEventFilter = TypedEventFilter<WithdrawalAcceptedEvent>;
468
+ export interface ILendingPoolAbi extends BaseContract {
469
+ connect(signerOrProvider: Signer | Provider | string): this;
470
+ attach(addressOrName: string): this;
471
+ deployed(): Promise<this>;
472
+ interface: ILendingPoolAbiInterface;
473
+ queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>;
474
+ listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>;
475
+ listeners(eventName?: string): Array<Listener>;
476
+ removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this;
477
+ removeAllListeners(eventName?: string): this;
478
+ off: OnEvent<this>;
479
+ on: OnEvent<this>;
480
+ once: OnEvent<this>;
481
+ removeListener: OnEvent<this>;
482
+ functions: {
483
+ acceptDeposit(tranche: string, user: string, acceptedAmount: BigNumberish, overrides?: Overrides & {
484
+ from?: string;
485
+ }): Promise<ContractTransaction>;
486
+ acceptWithdrawal(tranche: string, user: string, acceptedShares: BigNumberish, overrides?: Overrides & {
487
+ from?: string;
488
+ }): Promise<ContractTransaction>;
489
+ allowance(owner: string, spender: string, overrides?: CallOverrides): Promise<[BigNumber]>;
490
+ applyInterests(epoch: BigNumberish, overrides?: Overrides & {
491
+ from?: string;
492
+ }): Promise<ContractTransaction>;
493
+ approve(spender: string, value: BigNumberish, overrides?: Overrides & {
494
+ from?: string;
495
+ }): Promise<ContractTransaction>;
496
+ availableFunds(overrides?: CallOverrides): Promise<[BigNumber]>;
497
+ balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>;
498
+ calculateMaximumLossAmount(overrides?: CallOverrides): Promise<[BigNumber] & {
499
+ maximumLossAmount: BigNumber;
500
+ }>;
501
+ claimRepaidLoss(user: string, tranche: string, lossId: BigNumberish, overrides?: Overrides & {
502
+ from?: string;
503
+ }): Promise<ContractTransaction>;
504
+ depositFirstLossCapital(amount: BigNumberish, overrides?: Overrides & {
505
+ from?: string;
506
+ }): Promise<ContractTransaction>;
507
+ drawFunds(amount: BigNumberish, overrides?: Overrides & {
508
+ from?: string;
509
+ }): Promise<ContractTransaction>;
510
+ feesOwedAmount(overrides?: CallOverrides): Promise<[BigNumber]>;
511
+ forceImmediateWithdrawal(tranche: string, user: string, sharesToWithdraw: BigNumberish, overrides?: Overrides & {
512
+ from?: string;
513
+ }): Promise<ContractTransaction>;
514
+ getClearingConfig(overrides?: CallOverrides): Promise<[
515
+ ClearingConfigurationStructOutput
516
+ ] & {
517
+ clearingConfig: ClearingConfigurationStructOutput;
518
+ }>;
519
+ getLendingPoolInfo(overrides?: CallOverrides): Promise<[LendingPoolInfoStructOutput]>;
520
+ isLendingPoolTranche(tranche: string, overrides?: CallOverrides): Promise<[boolean]>;
521
+ lendingPoolTrancheCount(overrides?: CallOverrides): Promise<[BigNumber]>;
522
+ lendingPoolTranches(overrides?: CallOverrides): Promise<[string[]]>;
523
+ pendingPool(overrides?: CallOverrides): Promise<[string]>;
524
+ poolConfiguration(overrides?: CallOverrides): Promise<[PoolConfigurationStructOutput]>;
525
+ repayLoss(tranche: string, lossId: BigNumberish, amount: BigNumberish, overrides?: Overrides & {
526
+ from?: string;
527
+ }): Promise<ContractTransaction>;
528
+ repayOwedFunds(amount: BigNumberish, overrides?: Overrides & {
529
+ from?: string;
530
+ }): Promise<ContractTransaction>;
531
+ reportLoss(lossAmount: BigNumberish, doMintLossTokens: boolean, overrides?: Overrides & {
532
+ from?: string;
533
+ }): Promise<ContractTransaction>;
534
+ stop(overrides?: Overrides & {
535
+ from?: string;
536
+ }): Promise<ContractTransaction>;
537
+ totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>;
538
+ trancheConfigurationDepositLimits(tranche: string, overrides?: CallOverrides): Promise<[
539
+ BigNumber,
540
+ BigNumber
541
+ ] & {
542
+ minDepositAmount: BigNumber;
543
+ maxDepositAmount: BigNumber;
544
+ }>;
545
+ trancheIndex(tranche: string, overrides?: CallOverrides): Promise<[BigNumber]>;
546
+ transfer(to: string, value: BigNumberish, overrides?: Overrides & {
547
+ from?: string;
548
+ }): Promise<ContractTransaction>;
549
+ transferFrom(from: string, to: string, value: BigNumberish, overrides?: Overrides & {
550
+ from?: string;
551
+ }): Promise<ContractTransaction>;
552
+ updateDesiredDrawAmount(desiredDrawAmount: BigNumberish, overrides?: Overrides & {
553
+ from?: string;
554
+ }): Promise<ContractTransaction>;
555
+ updateDrawRecipient(drawRecipient: string, overrides?: Overrides & {
556
+ from?: string;
557
+ }): Promise<ContractTransaction>;
558
+ updateMaximumDepositAmount(tranche: string, maximumDepositAmount: BigNumberish, overrides?: Overrides & {
559
+ from?: string;
560
+ }): Promise<ContractTransaction>;
561
+ updateMinimumDepositAmount(tranche: string, minimumDepositAmount: BigNumberish, overrides?: Overrides & {
562
+ from?: string;
563
+ }): Promise<ContractTransaction>;
564
+ updateMinimumExcessLiquidityPercentage(minimumExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & {
565
+ from?: string;
566
+ }): Promise<ContractTransaction>;
567
+ updateTargetExcessLiquidityPercentage(targetExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & {
568
+ from?: string;
569
+ }): Promise<ContractTransaction>;
570
+ updateTrancheDesiredRatios(ratios: BigNumberish[], overrides?: Overrides & {
571
+ from?: string;
572
+ }): Promise<ContractTransaction>;
573
+ updateTrancheInterestRate(tranche: string, interestRate: BigNumberish, overrides?: Overrides & {
574
+ from?: string;
575
+ }): Promise<ContractTransaction>;
576
+ updateTrancheInterestRateChangeEpochDelay(epochDelay: BigNumberish, overrides?: Overrides & {
577
+ from?: string;
578
+ }): Promise<ContractTransaction>;
579
+ userBalance(user: string, overrides?: CallOverrides): Promise<[BigNumber]>;
580
+ userOwedAmount(overrides?: CallOverrides): Promise<[BigNumber]>;
581
+ verifyClearingConfig(clearingConfig: ClearingConfigurationStruct, overrides?: CallOverrides): Promise<[void]>;
582
+ withdrawFirstLossCapital(withdrawAmount: BigNumberish, withdrawAddress: string, overrides?: Overrides & {
583
+ from?: string;
584
+ }): Promise<ContractTransaction>;
585
+ };
586
+ acceptDeposit(tranche: string, user: string, acceptedAmount: BigNumberish, overrides?: Overrides & {
587
+ from?: string;
588
+ }): Promise<ContractTransaction>;
589
+ acceptWithdrawal(tranche: string, user: string, acceptedShares: BigNumberish, overrides?: Overrides & {
590
+ from?: string;
591
+ }): Promise<ContractTransaction>;
592
+ allowance(owner: string, spender: string, overrides?: CallOverrides): Promise<BigNumber>;
593
+ applyInterests(epoch: BigNumberish, overrides?: Overrides & {
594
+ from?: string;
595
+ }): Promise<ContractTransaction>;
596
+ approve(spender: string, value: BigNumberish, overrides?: Overrides & {
597
+ from?: string;
598
+ }): Promise<ContractTransaction>;
599
+ availableFunds(overrides?: CallOverrides): Promise<BigNumber>;
600
+ balanceOf(account: string, overrides?: CallOverrides): Promise<BigNumber>;
601
+ calculateMaximumLossAmount(overrides?: CallOverrides): Promise<BigNumber>;
602
+ claimRepaidLoss(user: string, tranche: string, lossId: BigNumberish, overrides?: Overrides & {
603
+ from?: string;
604
+ }): Promise<ContractTransaction>;
605
+ depositFirstLossCapital(amount: BigNumberish, overrides?: Overrides & {
606
+ from?: string;
607
+ }): Promise<ContractTransaction>;
608
+ drawFunds(amount: BigNumberish, overrides?: Overrides & {
609
+ from?: string;
610
+ }): Promise<ContractTransaction>;
611
+ feesOwedAmount(overrides?: CallOverrides): Promise<BigNumber>;
612
+ forceImmediateWithdrawal(tranche: string, user: string, sharesToWithdraw: BigNumberish, overrides?: Overrides & {
613
+ from?: string;
614
+ }): Promise<ContractTransaction>;
615
+ getClearingConfig(overrides?: CallOverrides): Promise<ClearingConfigurationStructOutput>;
616
+ getLendingPoolInfo(overrides?: CallOverrides): Promise<LendingPoolInfoStructOutput>;
617
+ isLendingPoolTranche(tranche: string, overrides?: CallOverrides): Promise<boolean>;
618
+ lendingPoolTrancheCount(overrides?: CallOverrides): Promise<BigNumber>;
619
+ lendingPoolTranches(overrides?: CallOverrides): Promise<string[]>;
620
+ pendingPool(overrides?: CallOverrides): Promise<string>;
621
+ poolConfiguration(overrides?: CallOverrides): Promise<PoolConfigurationStructOutput>;
622
+ repayLoss(tranche: string, lossId: BigNumberish, amount: BigNumberish, overrides?: Overrides & {
623
+ from?: string;
624
+ }): Promise<ContractTransaction>;
625
+ repayOwedFunds(amount: BigNumberish, overrides?: Overrides & {
626
+ from?: string;
627
+ }): Promise<ContractTransaction>;
628
+ reportLoss(lossAmount: BigNumberish, doMintLossTokens: boolean, overrides?: Overrides & {
629
+ from?: string;
630
+ }): Promise<ContractTransaction>;
631
+ stop(overrides?: Overrides & {
632
+ from?: string;
633
+ }): Promise<ContractTransaction>;
634
+ totalSupply(overrides?: CallOverrides): Promise<BigNumber>;
635
+ trancheConfigurationDepositLimits(tranche: string, overrides?: CallOverrides): Promise<[
636
+ BigNumber,
637
+ BigNumber
638
+ ] & {
639
+ minDepositAmount: BigNumber;
640
+ maxDepositAmount: BigNumber;
641
+ }>;
642
+ trancheIndex(tranche: string, overrides?: CallOverrides): Promise<BigNumber>;
643
+ transfer(to: string, value: BigNumberish, overrides?: Overrides & {
644
+ from?: string;
645
+ }): Promise<ContractTransaction>;
646
+ transferFrom(from: string, to: string, value: BigNumberish, overrides?: Overrides & {
647
+ from?: string;
648
+ }): Promise<ContractTransaction>;
649
+ updateDesiredDrawAmount(desiredDrawAmount: BigNumberish, overrides?: Overrides & {
650
+ from?: string;
651
+ }): Promise<ContractTransaction>;
652
+ updateDrawRecipient(drawRecipient: string, overrides?: Overrides & {
653
+ from?: string;
654
+ }): Promise<ContractTransaction>;
655
+ updateMaximumDepositAmount(tranche: string, maximumDepositAmount: BigNumberish, overrides?: Overrides & {
656
+ from?: string;
657
+ }): Promise<ContractTransaction>;
658
+ updateMinimumDepositAmount(tranche: string, minimumDepositAmount: BigNumberish, overrides?: Overrides & {
659
+ from?: string;
660
+ }): Promise<ContractTransaction>;
661
+ updateMinimumExcessLiquidityPercentage(minimumExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & {
662
+ from?: string;
663
+ }): Promise<ContractTransaction>;
664
+ updateTargetExcessLiquidityPercentage(targetExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & {
665
+ from?: string;
666
+ }): Promise<ContractTransaction>;
667
+ updateTrancheDesiredRatios(ratios: BigNumberish[], overrides?: Overrides & {
668
+ from?: string;
669
+ }): Promise<ContractTransaction>;
670
+ updateTrancheInterestRate(tranche: string, interestRate: BigNumberish, overrides?: Overrides & {
671
+ from?: string;
672
+ }): Promise<ContractTransaction>;
673
+ updateTrancheInterestRateChangeEpochDelay(epochDelay: BigNumberish, overrides?: Overrides & {
674
+ from?: string;
675
+ }): Promise<ContractTransaction>;
676
+ userBalance(user: string, overrides?: CallOverrides): Promise<BigNumber>;
677
+ userOwedAmount(overrides?: CallOverrides): Promise<BigNumber>;
678
+ verifyClearingConfig(clearingConfig: ClearingConfigurationStruct, overrides?: CallOverrides): Promise<void>;
679
+ withdrawFirstLossCapital(withdrawAmount: BigNumberish, withdrawAddress: string, overrides?: Overrides & {
680
+ from?: string;
681
+ }): Promise<ContractTransaction>;
682
+ callStatic: {
683
+ acceptDeposit(tranche: string, user: string, acceptedAmount: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
684
+ acceptWithdrawal(tranche: string, user: string, acceptedShares: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
685
+ allowance(owner: string, spender: string, overrides?: CallOverrides): Promise<BigNumber>;
686
+ applyInterests(epoch: BigNumberish, overrides?: CallOverrides): Promise<void>;
687
+ approve(spender: string, value: BigNumberish, overrides?: CallOverrides): Promise<boolean>;
688
+ availableFunds(overrides?: CallOverrides): Promise<BigNumber>;
689
+ balanceOf(account: string, overrides?: CallOverrides): Promise<BigNumber>;
690
+ calculateMaximumLossAmount(overrides?: CallOverrides): Promise<BigNumber>;
691
+ claimRepaidLoss(user: string, tranche: string, lossId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
692
+ depositFirstLossCapital(amount: BigNumberish, overrides?: CallOverrides): Promise<void>;
693
+ drawFunds(amount: BigNumberish, overrides?: CallOverrides): Promise<void>;
694
+ feesOwedAmount(overrides?: CallOverrides): Promise<BigNumber>;
695
+ forceImmediateWithdrawal(tranche: string, user: string, sharesToWithdraw: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
696
+ getClearingConfig(overrides?: CallOverrides): Promise<ClearingConfigurationStructOutput>;
697
+ getLendingPoolInfo(overrides?: CallOverrides): Promise<LendingPoolInfoStructOutput>;
698
+ isLendingPoolTranche(tranche: string, overrides?: CallOverrides): Promise<boolean>;
699
+ lendingPoolTrancheCount(overrides?: CallOverrides): Promise<BigNumber>;
700
+ lendingPoolTranches(overrides?: CallOverrides): Promise<string[]>;
701
+ pendingPool(overrides?: CallOverrides): Promise<string>;
702
+ poolConfiguration(overrides?: CallOverrides): Promise<PoolConfigurationStructOutput>;
703
+ repayLoss(tranche: string, lossId: BigNumberish, amount: BigNumberish, overrides?: CallOverrides): Promise<void>;
704
+ repayOwedFunds(amount: BigNumberish, overrides?: CallOverrides): Promise<void>;
705
+ reportLoss(lossAmount: BigNumberish, doMintLossTokens: boolean, overrides?: CallOverrides): Promise<BigNumber>;
706
+ stop(overrides?: CallOverrides): Promise<void>;
707
+ totalSupply(overrides?: CallOverrides): Promise<BigNumber>;
708
+ trancheConfigurationDepositLimits(tranche: string, overrides?: CallOverrides): Promise<[
709
+ BigNumber,
710
+ BigNumber
711
+ ] & {
712
+ minDepositAmount: BigNumber;
713
+ maxDepositAmount: BigNumber;
714
+ }>;
715
+ trancheIndex(tranche: string, overrides?: CallOverrides): Promise<BigNumber>;
716
+ transfer(to: string, value: BigNumberish, overrides?: CallOverrides): Promise<boolean>;
717
+ transferFrom(from: string, to: string, value: BigNumberish, overrides?: CallOverrides): Promise<boolean>;
718
+ updateDesiredDrawAmount(desiredDrawAmount: BigNumberish, overrides?: CallOverrides): Promise<void>;
719
+ updateDrawRecipient(drawRecipient: string, overrides?: CallOverrides): Promise<void>;
720
+ updateMaximumDepositAmount(tranche: string, maximumDepositAmount: BigNumberish, overrides?: CallOverrides): Promise<void>;
721
+ updateMinimumDepositAmount(tranche: string, minimumDepositAmount: BigNumberish, overrides?: CallOverrides): Promise<void>;
722
+ updateMinimumExcessLiquidityPercentage(minimumExcessLiquidityPercentage: BigNumberish, overrides?: CallOverrides): Promise<void>;
723
+ updateTargetExcessLiquidityPercentage(targetExcessLiquidityPercentage: BigNumberish, overrides?: CallOverrides): Promise<void>;
724
+ updateTrancheDesiredRatios(ratios: BigNumberish[], overrides?: CallOverrides): Promise<void>;
725
+ updateTrancheInterestRate(tranche: string, interestRate: BigNumberish, overrides?: CallOverrides): Promise<void>;
726
+ updateTrancheInterestRateChangeEpochDelay(epochDelay: BigNumberish, overrides?: CallOverrides): Promise<void>;
727
+ userBalance(user: string, overrides?: CallOverrides): Promise<BigNumber>;
728
+ userOwedAmount(overrides?: CallOverrides): Promise<BigNumber>;
729
+ verifyClearingConfig(clearingConfig: ClearingConfigurationStruct, overrides?: CallOverrides): Promise<void>;
730
+ withdrawFirstLossCapital(withdrawAmount: BigNumberish, withdrawAddress: string, overrides?: CallOverrides): Promise<void>;
731
+ };
732
+ filters: {
733
+ "Approval(address,address,uint256)"(owner?: string | null, spender?: string | null, value?: null): ApprovalEventFilter;
734
+ Approval(owner?: string | null, spender?: string | null, value?: null): ApprovalEventFilter;
735
+ "DepositAccepted(address,address,uint256)"(user?: string | null, tranche?: string | null, amount?: null): DepositAcceptedEventFilter;
736
+ DepositAccepted(user?: string | null, tranche?: string | null, amount?: null): DepositAcceptedEventFilter;
737
+ "FeesOwedIncreased(uint256,uint256)"(epoch?: BigNumberish | null, feesIncreasedAmount?: null): FeesOwedIncreasedEventFilter;
738
+ FeesOwedIncreased(epoch?: BigNumberish | null, feesIncreasedAmount?: null): FeesOwedIncreasedEventFilter;
739
+ "FirstLossCapitalAdded(uint256)"(amountAdded?: null): FirstLossCapitalAddedEventFilter;
740
+ FirstLossCapitalAdded(amountAdded?: null): FirstLossCapitalAddedEventFilter;
741
+ "FirstLossCapitalLossReported(uint256,uint256)"(lossId?: BigNumberish | null, amount?: null): FirstLossCapitalLossReportedEventFilter;
742
+ FirstLossCapitalLossReported(lossId?: BigNumberish | null, amount?: null): FirstLossCapitalLossReportedEventFilter;
743
+ "FirstLossCapitalWithdrawn(uint256)"(amountWithdrawn?: null): FirstLossCapitalWithdrawnEventFilter;
744
+ FirstLossCapitalWithdrawn(amountWithdrawn?: null): FirstLossCapitalWithdrawnEventFilter;
745
+ "FundsDrawn(uint256)"(amount?: null): FundsDrawnEventFilter;
746
+ FundsDrawn(amount?: null): FundsDrawnEventFilter;
747
+ "ImmediateWithdrawal(address,address,uint256,uint256)"(user?: string | null, tranche?: string | null, shares?: null, amount?: null): ImmediateWithdrawalEventFilter;
748
+ ImmediateWithdrawal(user?: string | null, tranche?: string | null, shares?: null, amount?: null): ImmediateWithdrawalEventFilter;
749
+ "InterestApplied(address,uint256,uint256)"(tranche?: string | null, epoch?: BigNumberish | null, interestAmount?: null): InterestAppliedEventFilter;
750
+ InterestApplied(tranche?: string | null, epoch?: BigNumberish | null, interestAmount?: null): InterestAppliedEventFilter;
751
+ "LendingPoolStopped()"(): LendingPoolStoppedEventFilter;
752
+ LendingPoolStopped(): LendingPoolStoppedEventFilter;
753
+ "LossReported(uint256)"(amount?: null): LossReportedEventFilter;
754
+ LossReported(amount?: null): LossReportedEventFilter;
755
+ "OwedFundsRepaid(uint256,uint256)"(amountForUsers?: null, amountForFees?: null): OwedFundsRepaidEventFilter;
756
+ OwedFundsRepaid(amountForUsers?: null, amountForFees?: null): OwedFundsRepaidEventFilter;
757
+ "PaidFees(uint256)"(feesPaid?: null): PaidFeesEventFilter;
758
+ PaidFees(feesPaid?: null): PaidFeesEventFilter;
759
+ "RemovedTrancheInterestRateUpdate(address,uint256,uint256)"(tranche?: string | null, applicableEpoch?: BigNumberish | null, arrayIndex?: null): RemovedTrancheInterestRateUpdateEventFilter;
760
+ RemovedTrancheInterestRateUpdate(tranche?: string | null, applicableEpoch?: BigNumberish | null, arrayIndex?: null): RemovedTrancheInterestRateUpdateEventFilter;
761
+ "Transfer(address,address,uint256)"(from?: string | null, to?: string | null, value?: null): TransferEventFilter;
762
+ Transfer(from?: string | null, to?: string | null, value?: null): TransferEventFilter;
763
+ "UpdatedDesiredDrawAmount(uint256)"(desiredDrawAmount?: null): UpdatedDesiredDrawAmountEventFilter;
764
+ UpdatedDesiredDrawAmount(desiredDrawAmount?: null): UpdatedDesiredDrawAmountEventFilter;
765
+ "UpdatedDrawRecipient(address)"(drawRecipient?: string | null): UpdatedDrawRecipientEventFilter;
766
+ UpdatedDrawRecipient(drawRecipient?: string | null): UpdatedDrawRecipientEventFilter;
767
+ "UpdatedMaximumDepositAmount(address,uint256)"(tranche?: string | null, amount?: null): UpdatedMaximumDepositAmountEventFilter;
768
+ UpdatedMaximumDepositAmount(tranche?: string | null, amount?: null): UpdatedMaximumDepositAmountEventFilter;
769
+ "UpdatedMinimumDepositAmount(address,uint256)"(tranche?: string | null, amount?: null): UpdatedMinimumDepositAmountEventFilter;
770
+ UpdatedMinimumDepositAmount(tranche?: string | null, amount?: null): UpdatedMinimumDepositAmountEventFilter;
771
+ "UpdatedMinimumExcessLiquidityPercentage(uint256)"(percentage?: null): UpdatedMinimumExcessLiquidityPercentageEventFilter;
772
+ UpdatedMinimumExcessLiquidityPercentage(percentage?: null): UpdatedMinimumExcessLiquidityPercentageEventFilter;
773
+ "UpdatedTargetExcessLiquidityPercentage(uint256)"(percentage?: null): UpdatedTargetExcessLiquidityPercentageEventFilter;
774
+ UpdatedTargetExcessLiquidityPercentage(percentage?: null): UpdatedTargetExcessLiquidityPercentageEventFilter;
775
+ "UpdatedTrancheDesiredRatios(uint256[])"(ratios?: null): UpdatedTrancheDesiredRatiosEventFilter;
776
+ UpdatedTrancheDesiredRatios(ratios?: null): UpdatedTrancheDesiredRatiosEventFilter;
777
+ "UpdatedTrancheInterestRate(address,uint256,uint256)"(tranche?: string | null, applicableEpoch?: BigNumberish | null, newInterestRate?: null): UpdatedTrancheInterestRateEventFilter;
778
+ UpdatedTrancheInterestRate(tranche?: string | null, applicableEpoch?: BigNumberish | null, newInterestRate?: null): UpdatedTrancheInterestRateEventFilter;
779
+ "UpdatedTrancheInterestRateChangeEpochDelay(uint256)"(epochDelay?: null): UpdatedTrancheInterestRateChangeEpochDelayEventFilter;
780
+ UpdatedTrancheInterestRateChangeEpochDelay(epochDelay?: null): UpdatedTrancheInterestRateChangeEpochDelayEventFilter;
781
+ "WithdrawalAccepted(address,address,uint256,uint256)"(user?: string | null, tranche?: string | null, shares?: null, assetAmount?: null): WithdrawalAcceptedEventFilter;
782
+ WithdrawalAccepted(user?: string | null, tranche?: string | null, shares?: null, assetAmount?: null): WithdrawalAcceptedEventFilter;
783
+ };
784
+ estimateGas: {
785
+ acceptDeposit(tranche: string, user: string, acceptedAmount: BigNumberish, overrides?: Overrides & {
786
+ from?: string;
787
+ }): Promise<BigNumber>;
788
+ acceptWithdrawal(tranche: string, user: string, acceptedShares: BigNumberish, overrides?: Overrides & {
789
+ from?: string;
790
+ }): Promise<BigNumber>;
791
+ allowance(owner: string, spender: string, overrides?: CallOverrides): Promise<BigNumber>;
792
+ applyInterests(epoch: BigNumberish, overrides?: Overrides & {
793
+ from?: string;
794
+ }): Promise<BigNumber>;
795
+ approve(spender: string, value: BigNumberish, overrides?: Overrides & {
796
+ from?: string;
797
+ }): Promise<BigNumber>;
798
+ availableFunds(overrides?: CallOverrides): Promise<BigNumber>;
799
+ balanceOf(account: string, overrides?: CallOverrides): Promise<BigNumber>;
800
+ calculateMaximumLossAmount(overrides?: CallOverrides): Promise<BigNumber>;
801
+ claimRepaidLoss(user: string, tranche: string, lossId: BigNumberish, overrides?: Overrides & {
802
+ from?: string;
803
+ }): Promise<BigNumber>;
804
+ depositFirstLossCapital(amount: BigNumberish, overrides?: Overrides & {
805
+ from?: string;
806
+ }): Promise<BigNumber>;
807
+ drawFunds(amount: BigNumberish, overrides?: Overrides & {
808
+ from?: string;
809
+ }): Promise<BigNumber>;
810
+ feesOwedAmount(overrides?: CallOverrides): Promise<BigNumber>;
811
+ forceImmediateWithdrawal(tranche: string, user: string, sharesToWithdraw: BigNumberish, overrides?: Overrides & {
812
+ from?: string;
813
+ }): Promise<BigNumber>;
814
+ getClearingConfig(overrides?: CallOverrides): Promise<BigNumber>;
815
+ getLendingPoolInfo(overrides?: CallOverrides): Promise<BigNumber>;
816
+ isLendingPoolTranche(tranche: string, overrides?: CallOverrides): Promise<BigNumber>;
817
+ lendingPoolTrancheCount(overrides?: CallOverrides): Promise<BigNumber>;
818
+ lendingPoolTranches(overrides?: CallOverrides): Promise<BigNumber>;
819
+ pendingPool(overrides?: CallOverrides): Promise<BigNumber>;
820
+ poolConfiguration(overrides?: CallOverrides): Promise<BigNumber>;
821
+ repayLoss(tranche: string, lossId: BigNumberish, amount: BigNumberish, overrides?: Overrides & {
822
+ from?: string;
823
+ }): Promise<BigNumber>;
824
+ repayOwedFunds(amount: BigNumberish, overrides?: Overrides & {
825
+ from?: string;
826
+ }): Promise<BigNumber>;
827
+ reportLoss(lossAmount: BigNumberish, doMintLossTokens: boolean, overrides?: Overrides & {
828
+ from?: string;
829
+ }): Promise<BigNumber>;
830
+ stop(overrides?: Overrides & {
831
+ from?: string;
832
+ }): Promise<BigNumber>;
833
+ totalSupply(overrides?: CallOverrides): Promise<BigNumber>;
834
+ trancheConfigurationDepositLimits(tranche: string, overrides?: CallOverrides): Promise<BigNumber>;
835
+ trancheIndex(tranche: string, overrides?: CallOverrides): Promise<BigNumber>;
836
+ transfer(to: string, value: BigNumberish, overrides?: Overrides & {
837
+ from?: string;
838
+ }): Promise<BigNumber>;
839
+ transferFrom(from: string, to: string, value: BigNumberish, overrides?: Overrides & {
840
+ from?: string;
841
+ }): Promise<BigNumber>;
842
+ updateDesiredDrawAmount(desiredDrawAmount: BigNumberish, overrides?: Overrides & {
843
+ from?: string;
844
+ }): Promise<BigNumber>;
845
+ updateDrawRecipient(drawRecipient: string, overrides?: Overrides & {
846
+ from?: string;
847
+ }): Promise<BigNumber>;
848
+ updateMaximumDepositAmount(tranche: string, maximumDepositAmount: BigNumberish, overrides?: Overrides & {
849
+ from?: string;
850
+ }): Promise<BigNumber>;
851
+ updateMinimumDepositAmount(tranche: string, minimumDepositAmount: BigNumberish, overrides?: Overrides & {
852
+ from?: string;
853
+ }): Promise<BigNumber>;
854
+ updateMinimumExcessLiquidityPercentage(minimumExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & {
855
+ from?: string;
856
+ }): Promise<BigNumber>;
857
+ updateTargetExcessLiquidityPercentage(targetExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & {
858
+ from?: string;
859
+ }): Promise<BigNumber>;
860
+ updateTrancheDesiredRatios(ratios: BigNumberish[], overrides?: Overrides & {
861
+ from?: string;
862
+ }): Promise<BigNumber>;
863
+ updateTrancheInterestRate(tranche: string, interestRate: BigNumberish, overrides?: Overrides & {
864
+ from?: string;
865
+ }): Promise<BigNumber>;
866
+ updateTrancheInterestRateChangeEpochDelay(epochDelay: BigNumberish, overrides?: Overrides & {
867
+ from?: string;
868
+ }): Promise<BigNumber>;
869
+ userBalance(user: string, overrides?: CallOverrides): Promise<BigNumber>;
870
+ userOwedAmount(overrides?: CallOverrides): Promise<BigNumber>;
871
+ verifyClearingConfig(clearingConfig: ClearingConfigurationStruct, overrides?: CallOverrides): Promise<BigNumber>;
872
+ withdrawFirstLossCapital(withdrawAmount: BigNumberish, withdrawAddress: string, overrides?: Overrides & {
873
+ from?: string;
874
+ }): Promise<BigNumber>;
875
+ };
876
+ populateTransaction: {
877
+ acceptDeposit(tranche: string, user: string, acceptedAmount: BigNumberish, overrides?: Overrides & {
878
+ from?: string;
879
+ }): Promise<PopulatedTransaction>;
880
+ acceptWithdrawal(tranche: string, user: string, acceptedShares: BigNumberish, overrides?: Overrides & {
881
+ from?: string;
882
+ }): Promise<PopulatedTransaction>;
883
+ allowance(owner: string, spender: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
884
+ applyInterests(epoch: BigNumberish, overrides?: Overrides & {
885
+ from?: string;
886
+ }): Promise<PopulatedTransaction>;
887
+ approve(spender: string, value: BigNumberish, overrides?: Overrides & {
888
+ from?: string;
889
+ }): Promise<PopulatedTransaction>;
890
+ availableFunds(overrides?: CallOverrides): Promise<PopulatedTransaction>;
891
+ balanceOf(account: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
892
+ calculateMaximumLossAmount(overrides?: CallOverrides): Promise<PopulatedTransaction>;
893
+ claimRepaidLoss(user: string, tranche: string, lossId: BigNumberish, overrides?: Overrides & {
894
+ from?: string;
895
+ }): Promise<PopulatedTransaction>;
896
+ depositFirstLossCapital(amount: BigNumberish, overrides?: Overrides & {
897
+ from?: string;
898
+ }): Promise<PopulatedTransaction>;
899
+ drawFunds(amount: BigNumberish, overrides?: Overrides & {
900
+ from?: string;
901
+ }): Promise<PopulatedTransaction>;
902
+ feesOwedAmount(overrides?: CallOverrides): Promise<PopulatedTransaction>;
903
+ forceImmediateWithdrawal(tranche: string, user: string, sharesToWithdraw: BigNumberish, overrides?: Overrides & {
904
+ from?: string;
905
+ }): Promise<PopulatedTransaction>;
906
+ getClearingConfig(overrides?: CallOverrides): Promise<PopulatedTransaction>;
907
+ getLendingPoolInfo(overrides?: CallOverrides): Promise<PopulatedTransaction>;
908
+ isLendingPoolTranche(tranche: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
909
+ lendingPoolTrancheCount(overrides?: CallOverrides): Promise<PopulatedTransaction>;
910
+ lendingPoolTranches(overrides?: CallOverrides): Promise<PopulatedTransaction>;
911
+ pendingPool(overrides?: CallOverrides): Promise<PopulatedTransaction>;
912
+ poolConfiguration(overrides?: CallOverrides): Promise<PopulatedTransaction>;
913
+ repayLoss(tranche: string, lossId: BigNumberish, amount: BigNumberish, overrides?: Overrides & {
914
+ from?: string;
915
+ }): Promise<PopulatedTransaction>;
916
+ repayOwedFunds(amount: BigNumberish, overrides?: Overrides & {
917
+ from?: string;
918
+ }): Promise<PopulatedTransaction>;
919
+ reportLoss(lossAmount: BigNumberish, doMintLossTokens: boolean, overrides?: Overrides & {
920
+ from?: string;
921
+ }): Promise<PopulatedTransaction>;
922
+ stop(overrides?: Overrides & {
923
+ from?: string;
924
+ }): Promise<PopulatedTransaction>;
925
+ totalSupply(overrides?: CallOverrides): Promise<PopulatedTransaction>;
926
+ trancheConfigurationDepositLimits(tranche: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
927
+ trancheIndex(tranche: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
928
+ transfer(to: string, value: BigNumberish, overrides?: Overrides & {
929
+ from?: string;
930
+ }): Promise<PopulatedTransaction>;
931
+ transferFrom(from: string, to: string, value: BigNumberish, overrides?: Overrides & {
932
+ from?: string;
933
+ }): Promise<PopulatedTransaction>;
934
+ updateDesiredDrawAmount(desiredDrawAmount: BigNumberish, overrides?: Overrides & {
935
+ from?: string;
936
+ }): Promise<PopulatedTransaction>;
937
+ updateDrawRecipient(drawRecipient: string, overrides?: Overrides & {
938
+ from?: string;
939
+ }): Promise<PopulatedTransaction>;
940
+ updateMaximumDepositAmount(tranche: string, maximumDepositAmount: BigNumberish, overrides?: Overrides & {
941
+ from?: string;
942
+ }): Promise<PopulatedTransaction>;
943
+ updateMinimumDepositAmount(tranche: string, minimumDepositAmount: BigNumberish, overrides?: Overrides & {
944
+ from?: string;
945
+ }): Promise<PopulatedTransaction>;
946
+ updateMinimumExcessLiquidityPercentage(minimumExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & {
947
+ from?: string;
948
+ }): Promise<PopulatedTransaction>;
949
+ updateTargetExcessLiquidityPercentage(targetExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & {
950
+ from?: string;
951
+ }): Promise<PopulatedTransaction>;
952
+ updateTrancheDesiredRatios(ratios: BigNumberish[], overrides?: Overrides & {
953
+ from?: string;
954
+ }): Promise<PopulatedTransaction>;
955
+ updateTrancheInterestRate(tranche: string, interestRate: BigNumberish, overrides?: Overrides & {
956
+ from?: string;
957
+ }): Promise<PopulatedTransaction>;
958
+ updateTrancheInterestRateChangeEpochDelay(epochDelay: BigNumberish, overrides?: Overrides & {
959
+ from?: string;
960
+ }): Promise<PopulatedTransaction>;
961
+ userBalance(user: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
962
+ userOwedAmount(overrides?: CallOverrides): Promise<PopulatedTransaction>;
963
+ verifyClearingConfig(clearingConfig: ClearingConfigurationStruct, overrides?: CallOverrides): Promise<PopulatedTransaction>;
964
+ withdrawFirstLossCapital(withdrawAmount: BigNumberish, withdrawAddress: string, overrides?: Overrides & {
965
+ from?: string;
966
+ }): Promise<PopulatedTransaction>;
967
+ };
968
+ }