@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,1911 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type {
5
+ BaseContract,
6
+ BigNumber,
7
+ BigNumberish,
8
+ BytesLike,
9
+ CallOverrides,
10
+ ContractTransaction,
11
+ Overrides,
12
+ PopulatedTransaction,
13
+ Signer,
14
+ utils,
15
+ } from "ethers";
16
+ import type {
17
+ FunctionFragment,
18
+ Result,
19
+ EventFragment,
20
+ } from "@ethersproject/abi";
21
+ import type { Listener, Provider } from "@ethersproject/providers";
22
+ import type {
23
+ TypedEventFilter,
24
+ TypedEvent,
25
+ TypedListener,
26
+ OnEvent,
27
+ } from "./common";
28
+
29
+ export type LossDetailsStruct = {
30
+ lossAmount: BigNumberish;
31
+ usersCount: BigNumberish;
32
+ usersMintedCount: BigNumberish;
33
+ recoveredAmount: BigNumberish;
34
+ totalLossShares: BigNumberish;
35
+ };
36
+
37
+ export type LossDetailsStructOutput = [
38
+ BigNumber,
39
+ BigNumber,
40
+ BigNumber,
41
+ BigNumber,
42
+ BigNumber
43
+ ] & {
44
+ lossAmount: BigNumber;
45
+ usersCount: BigNumber;
46
+ usersMintedCount: BigNumber;
47
+ recoveredAmount: BigNumber;
48
+ totalLossShares: BigNumber;
49
+ };
50
+
51
+ export interface ILendingPoolTrancheAbiInterface extends utils.Interface {
52
+ functions: {
53
+ "allowance(address,address)": FunctionFragment;
54
+ "approve(address,uint256)": FunctionFragment;
55
+ "asset()": FunctionFragment;
56
+ "balanceOf(address,uint256)": FunctionFragment;
57
+ "balanceOf(address)": FunctionFragment;
58
+ "balanceOfBatch(address[],uint256[])": FunctionFragment;
59
+ "batchMintLossTokens(uint256,uint256)": FunctionFragment;
60
+ "calculateMaximumLossAmount()": FunctionFragment;
61
+ "claimRepaidLoss(address,uint256)": FunctionFragment;
62
+ "convertToAssets(uint256)": FunctionFragment;
63
+ "convertToShares(uint256)": FunctionFragment;
64
+ "decimals()": FunctionFragment;
65
+ "deposit(uint256,address)": FunctionFragment;
66
+ "isApprovedForAll(address,address)": FunctionFragment;
67
+ "isLossMintingComplete(uint256)": FunctionFragment;
68
+ "lossDetails(uint256)": FunctionFragment;
69
+ "maxDeposit(address)": FunctionFragment;
70
+ "maxMint(address)": FunctionFragment;
71
+ "maxRedeem(address)": FunctionFragment;
72
+ "maxWithdraw(address)": FunctionFragment;
73
+ "minimumAssetAmountLeftAfterLoss()": FunctionFragment;
74
+ "mint(uint256,address)": FunctionFragment;
75
+ "name()": FunctionFragment;
76
+ "previewDeposit(uint256)": FunctionFragment;
77
+ "previewMint(uint256)": FunctionFragment;
78
+ "previewRedeem(uint256)": FunctionFragment;
79
+ "previewWithdraw(uint256)": FunctionFragment;
80
+ "redeem(uint256,address,address)": FunctionFragment;
81
+ "registerTrancheLoss(uint256,uint256,bool)": FunctionFragment;
82
+ "removeUserActiveShares(address,uint256)": FunctionFragment;
83
+ "repayLoss(uint256,uint256)": FunctionFragment;
84
+ "safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)": FunctionFragment;
85
+ "safeTransferFrom(address,address,uint256,uint256,bytes)": FunctionFragment;
86
+ "setApprovalForAll(address,bool)": FunctionFragment;
87
+ "supportsInterface(bytes4)": FunctionFragment;
88
+ "symbol()": FunctionFragment;
89
+ "totalAssets()": FunctionFragment;
90
+ "totalSupply()": FunctionFragment;
91
+ "transfer(address,uint256)": FunctionFragment;
92
+ "transferFrom(address,address,uint256)": FunctionFragment;
93
+ "userActiveAssets(address)": FunctionFragment;
94
+ "userClaimableLoss(address,uint256)": FunctionFragment;
95
+ "userClaimedLosses(address,uint256)": FunctionFragment;
96
+ "withdraw(uint256,address,address)": FunctionFragment;
97
+ };
98
+
99
+ getFunction(
100
+ nameOrSignatureOrTopic:
101
+ | "allowance"
102
+ | "approve"
103
+ | "asset"
104
+ | "balanceOf(address,uint256)"
105
+ | "balanceOf(address)"
106
+ | "balanceOfBatch"
107
+ | "batchMintLossTokens"
108
+ | "calculateMaximumLossAmount"
109
+ | "claimRepaidLoss"
110
+ | "convertToAssets"
111
+ | "convertToShares"
112
+ | "decimals"
113
+ | "deposit"
114
+ | "isApprovedForAll"
115
+ | "isLossMintingComplete"
116
+ | "lossDetails"
117
+ | "maxDeposit"
118
+ | "maxMint"
119
+ | "maxRedeem"
120
+ | "maxWithdraw"
121
+ | "minimumAssetAmountLeftAfterLoss"
122
+ | "mint"
123
+ | "name"
124
+ | "previewDeposit"
125
+ | "previewMint"
126
+ | "previewRedeem"
127
+ | "previewWithdraw"
128
+ | "redeem"
129
+ | "registerTrancheLoss"
130
+ | "removeUserActiveShares"
131
+ | "repayLoss"
132
+ | "safeBatchTransferFrom"
133
+ | "safeTransferFrom"
134
+ | "setApprovalForAll"
135
+ | "supportsInterface"
136
+ | "symbol"
137
+ | "totalAssets"
138
+ | "totalSupply"
139
+ | "transfer"
140
+ | "transferFrom"
141
+ | "userActiveAssets"
142
+ | "userClaimableLoss"
143
+ | "userClaimedLosses"
144
+ | "withdraw"
145
+ ): FunctionFragment;
146
+
147
+ encodeFunctionData(
148
+ functionFragment: "allowance",
149
+ values: [string, string]
150
+ ): string;
151
+ encodeFunctionData(
152
+ functionFragment: "approve",
153
+ values: [string, BigNumberish]
154
+ ): string;
155
+ encodeFunctionData(functionFragment: "asset", values?: undefined): string;
156
+ encodeFunctionData(
157
+ functionFragment: "balanceOf(address,uint256)",
158
+ values: [string, BigNumberish]
159
+ ): string;
160
+ encodeFunctionData(
161
+ functionFragment: "balanceOf(address)",
162
+ values: [string]
163
+ ): string;
164
+ encodeFunctionData(
165
+ functionFragment: "balanceOfBatch",
166
+ values: [string[], BigNumberish[]]
167
+ ): string;
168
+ encodeFunctionData(
169
+ functionFragment: "batchMintLossTokens",
170
+ values: [BigNumberish, BigNumberish]
171
+ ): string;
172
+ encodeFunctionData(
173
+ functionFragment: "calculateMaximumLossAmount",
174
+ values?: undefined
175
+ ): string;
176
+ encodeFunctionData(
177
+ functionFragment: "claimRepaidLoss",
178
+ values: [string, BigNumberish]
179
+ ): string;
180
+ encodeFunctionData(
181
+ functionFragment: "convertToAssets",
182
+ values: [BigNumberish]
183
+ ): string;
184
+ encodeFunctionData(
185
+ functionFragment: "convertToShares",
186
+ values: [BigNumberish]
187
+ ): string;
188
+ encodeFunctionData(functionFragment: "decimals", values?: undefined): string;
189
+ encodeFunctionData(
190
+ functionFragment: "deposit",
191
+ values: [BigNumberish, string]
192
+ ): string;
193
+ encodeFunctionData(
194
+ functionFragment: "isApprovedForAll",
195
+ values: [string, string]
196
+ ): string;
197
+ encodeFunctionData(
198
+ functionFragment: "isLossMintingComplete",
199
+ values: [BigNumberish]
200
+ ): string;
201
+ encodeFunctionData(
202
+ functionFragment: "lossDetails",
203
+ values: [BigNumberish]
204
+ ): string;
205
+ encodeFunctionData(functionFragment: "maxDeposit", values: [string]): string;
206
+ encodeFunctionData(functionFragment: "maxMint", values: [string]): string;
207
+ encodeFunctionData(functionFragment: "maxRedeem", values: [string]): string;
208
+ encodeFunctionData(functionFragment: "maxWithdraw", values: [string]): string;
209
+ encodeFunctionData(
210
+ functionFragment: "minimumAssetAmountLeftAfterLoss",
211
+ values?: undefined
212
+ ): string;
213
+ encodeFunctionData(
214
+ functionFragment: "mint",
215
+ values: [BigNumberish, string]
216
+ ): string;
217
+ encodeFunctionData(functionFragment: "name", values?: undefined): string;
218
+ encodeFunctionData(
219
+ functionFragment: "previewDeposit",
220
+ values: [BigNumberish]
221
+ ): string;
222
+ encodeFunctionData(
223
+ functionFragment: "previewMint",
224
+ values: [BigNumberish]
225
+ ): string;
226
+ encodeFunctionData(
227
+ functionFragment: "previewRedeem",
228
+ values: [BigNumberish]
229
+ ): string;
230
+ encodeFunctionData(
231
+ functionFragment: "previewWithdraw",
232
+ values: [BigNumberish]
233
+ ): string;
234
+ encodeFunctionData(
235
+ functionFragment: "redeem",
236
+ values: [BigNumberish, string, string]
237
+ ): string;
238
+ encodeFunctionData(
239
+ functionFragment: "registerTrancheLoss",
240
+ values: [BigNumberish, BigNumberish, boolean]
241
+ ): string;
242
+ encodeFunctionData(
243
+ functionFragment: "removeUserActiveShares",
244
+ values: [string, BigNumberish]
245
+ ): string;
246
+ encodeFunctionData(
247
+ functionFragment: "repayLoss",
248
+ values: [BigNumberish, BigNumberish]
249
+ ): string;
250
+ encodeFunctionData(
251
+ functionFragment: "safeBatchTransferFrom",
252
+ values: [string, string, BigNumberish[], BigNumberish[], BytesLike]
253
+ ): string;
254
+ encodeFunctionData(
255
+ functionFragment: "safeTransferFrom",
256
+ values: [string, string, BigNumberish, BigNumberish, BytesLike]
257
+ ): string;
258
+ encodeFunctionData(
259
+ functionFragment: "setApprovalForAll",
260
+ values: [string, boolean]
261
+ ): string;
262
+ encodeFunctionData(
263
+ functionFragment: "supportsInterface",
264
+ values: [BytesLike]
265
+ ): string;
266
+ encodeFunctionData(functionFragment: "symbol", values?: undefined): string;
267
+ encodeFunctionData(
268
+ functionFragment: "totalAssets",
269
+ values?: undefined
270
+ ): string;
271
+ encodeFunctionData(
272
+ functionFragment: "totalSupply",
273
+ values?: undefined
274
+ ): string;
275
+ encodeFunctionData(
276
+ functionFragment: "transfer",
277
+ values: [string, BigNumberish]
278
+ ): string;
279
+ encodeFunctionData(
280
+ functionFragment: "transferFrom",
281
+ values: [string, string, BigNumberish]
282
+ ): string;
283
+ encodeFunctionData(
284
+ functionFragment: "userActiveAssets",
285
+ values: [string]
286
+ ): string;
287
+ encodeFunctionData(
288
+ functionFragment: "userClaimableLoss",
289
+ values: [string, BigNumberish]
290
+ ): string;
291
+ encodeFunctionData(
292
+ functionFragment: "userClaimedLosses",
293
+ values: [string, BigNumberish]
294
+ ): string;
295
+ encodeFunctionData(
296
+ functionFragment: "withdraw",
297
+ values: [BigNumberish, string, string]
298
+ ): string;
299
+
300
+ decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result;
301
+ decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result;
302
+ decodeFunctionResult(functionFragment: "asset", data: BytesLike): Result;
303
+ decodeFunctionResult(
304
+ functionFragment: "balanceOf(address,uint256)",
305
+ data: BytesLike
306
+ ): Result;
307
+ decodeFunctionResult(
308
+ functionFragment: "balanceOf(address)",
309
+ data: BytesLike
310
+ ): Result;
311
+ decodeFunctionResult(
312
+ functionFragment: "balanceOfBatch",
313
+ data: BytesLike
314
+ ): Result;
315
+ decodeFunctionResult(
316
+ functionFragment: "batchMintLossTokens",
317
+ data: BytesLike
318
+ ): Result;
319
+ decodeFunctionResult(
320
+ functionFragment: "calculateMaximumLossAmount",
321
+ data: BytesLike
322
+ ): Result;
323
+ decodeFunctionResult(
324
+ functionFragment: "claimRepaidLoss",
325
+ data: BytesLike
326
+ ): Result;
327
+ decodeFunctionResult(
328
+ functionFragment: "convertToAssets",
329
+ data: BytesLike
330
+ ): Result;
331
+ decodeFunctionResult(
332
+ functionFragment: "convertToShares",
333
+ data: BytesLike
334
+ ): Result;
335
+ decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result;
336
+ decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result;
337
+ decodeFunctionResult(
338
+ functionFragment: "isApprovedForAll",
339
+ data: BytesLike
340
+ ): Result;
341
+ decodeFunctionResult(
342
+ functionFragment: "isLossMintingComplete",
343
+ data: BytesLike
344
+ ): Result;
345
+ decodeFunctionResult(
346
+ functionFragment: "lossDetails",
347
+ data: BytesLike
348
+ ): Result;
349
+ decodeFunctionResult(functionFragment: "maxDeposit", data: BytesLike): Result;
350
+ decodeFunctionResult(functionFragment: "maxMint", data: BytesLike): Result;
351
+ decodeFunctionResult(functionFragment: "maxRedeem", data: BytesLike): Result;
352
+ decodeFunctionResult(
353
+ functionFragment: "maxWithdraw",
354
+ data: BytesLike
355
+ ): Result;
356
+ decodeFunctionResult(
357
+ functionFragment: "minimumAssetAmountLeftAfterLoss",
358
+ data: BytesLike
359
+ ): Result;
360
+ decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result;
361
+ decodeFunctionResult(functionFragment: "name", data: BytesLike): Result;
362
+ decodeFunctionResult(
363
+ functionFragment: "previewDeposit",
364
+ data: BytesLike
365
+ ): Result;
366
+ decodeFunctionResult(
367
+ functionFragment: "previewMint",
368
+ data: BytesLike
369
+ ): Result;
370
+ decodeFunctionResult(
371
+ functionFragment: "previewRedeem",
372
+ data: BytesLike
373
+ ): Result;
374
+ decodeFunctionResult(
375
+ functionFragment: "previewWithdraw",
376
+ data: BytesLike
377
+ ): Result;
378
+ decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result;
379
+ decodeFunctionResult(
380
+ functionFragment: "registerTrancheLoss",
381
+ data: BytesLike
382
+ ): Result;
383
+ decodeFunctionResult(
384
+ functionFragment: "removeUserActiveShares",
385
+ data: BytesLike
386
+ ): Result;
387
+ decodeFunctionResult(functionFragment: "repayLoss", data: BytesLike): Result;
388
+ decodeFunctionResult(
389
+ functionFragment: "safeBatchTransferFrom",
390
+ data: BytesLike
391
+ ): Result;
392
+ decodeFunctionResult(
393
+ functionFragment: "safeTransferFrom",
394
+ data: BytesLike
395
+ ): Result;
396
+ decodeFunctionResult(
397
+ functionFragment: "setApprovalForAll",
398
+ data: BytesLike
399
+ ): Result;
400
+ decodeFunctionResult(
401
+ functionFragment: "supportsInterface",
402
+ data: BytesLike
403
+ ): Result;
404
+ decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result;
405
+ decodeFunctionResult(
406
+ functionFragment: "totalAssets",
407
+ data: BytesLike
408
+ ): Result;
409
+ decodeFunctionResult(
410
+ functionFragment: "totalSupply",
411
+ data: BytesLike
412
+ ): Result;
413
+ decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result;
414
+ decodeFunctionResult(
415
+ functionFragment: "transferFrom",
416
+ data: BytesLike
417
+ ): Result;
418
+ decodeFunctionResult(
419
+ functionFragment: "userActiveAssets",
420
+ data: BytesLike
421
+ ): Result;
422
+ decodeFunctionResult(
423
+ functionFragment: "userClaimableLoss",
424
+ data: BytesLike
425
+ ): Result;
426
+ decodeFunctionResult(
427
+ functionFragment: "userClaimedLosses",
428
+ data: BytesLike
429
+ ): Result;
430
+ decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result;
431
+
432
+ events: {
433
+ "Approval(address,address,uint256)": EventFragment;
434
+ "ApprovalForAll(address,address,bool)": EventFragment;
435
+ "Deposit(address,address,uint256,uint256)": EventFragment;
436
+ "LossClaimed(address,uint256,uint256)": EventFragment;
437
+ "LossMintingComplete(uint256)": EventFragment;
438
+ "LossRegistered(uint256,uint256,uint256)": EventFragment;
439
+ "LossReturned(uint256,uint256)": EventFragment;
440
+ "MintedLossTokensToUsers(uint256,uint256)": EventFragment;
441
+ "Transfer(address,address,uint256)": EventFragment;
442
+ "TransferBatch(address,address,address,uint256[],uint256[])": EventFragment;
443
+ "TransferSingle(address,address,address,uint256,uint256)": EventFragment;
444
+ "URI(string,uint256)": EventFragment;
445
+ "Withdraw(address,address,address,uint256,uint256)": EventFragment;
446
+ };
447
+
448
+ getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment;
449
+ getEvent(nameOrSignatureOrTopic: "ApprovalForAll"): EventFragment;
450
+ getEvent(nameOrSignatureOrTopic: "Deposit"): EventFragment;
451
+ getEvent(nameOrSignatureOrTopic: "LossClaimed"): EventFragment;
452
+ getEvent(nameOrSignatureOrTopic: "LossMintingComplete"): EventFragment;
453
+ getEvent(nameOrSignatureOrTopic: "LossRegistered"): EventFragment;
454
+ getEvent(nameOrSignatureOrTopic: "LossReturned"): EventFragment;
455
+ getEvent(nameOrSignatureOrTopic: "MintedLossTokensToUsers"): EventFragment;
456
+ getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment;
457
+ getEvent(nameOrSignatureOrTopic: "TransferBatch"): EventFragment;
458
+ getEvent(nameOrSignatureOrTopic: "TransferSingle"): EventFragment;
459
+ getEvent(nameOrSignatureOrTopic: "URI"): EventFragment;
460
+ getEvent(nameOrSignatureOrTopic: "Withdraw"): EventFragment;
461
+ }
462
+
463
+ export interface ApprovalEventObject {
464
+ owner: string;
465
+ spender: string;
466
+ value: BigNumber;
467
+ }
468
+ export type ApprovalEvent = TypedEvent<
469
+ [string, string, BigNumber],
470
+ ApprovalEventObject
471
+ >;
472
+
473
+ export type ApprovalEventFilter = TypedEventFilter<ApprovalEvent>;
474
+
475
+ export interface ApprovalForAllEventObject {
476
+ account: string;
477
+ operator: string;
478
+ approved: boolean;
479
+ }
480
+ export type ApprovalForAllEvent = TypedEvent<
481
+ [string, string, boolean],
482
+ ApprovalForAllEventObject
483
+ >;
484
+
485
+ export type ApprovalForAllEventFilter = TypedEventFilter<ApprovalForAllEvent>;
486
+
487
+ export interface DepositEventObject {
488
+ sender: string;
489
+ owner: string;
490
+ assets: BigNumber;
491
+ shares: BigNumber;
492
+ }
493
+ export type DepositEvent = TypedEvent<
494
+ [string, string, BigNumber, BigNumber],
495
+ DepositEventObject
496
+ >;
497
+
498
+ export type DepositEventFilter = TypedEventFilter<DepositEvent>;
499
+
500
+ export interface LossClaimedEventObject {
501
+ user: string;
502
+ lossId: BigNumber;
503
+ amount: BigNumber;
504
+ }
505
+ export type LossClaimedEvent = TypedEvent<
506
+ [string, BigNumber, BigNumber],
507
+ LossClaimedEventObject
508
+ >;
509
+
510
+ export type LossClaimedEventFilter = TypedEventFilter<LossClaimedEvent>;
511
+
512
+ export interface LossMintingCompleteEventObject {
513
+ lossId: BigNumber;
514
+ }
515
+ export type LossMintingCompleteEvent = TypedEvent<
516
+ [BigNumber],
517
+ LossMintingCompleteEventObject
518
+ >;
519
+
520
+ export type LossMintingCompleteEventFilter =
521
+ TypedEventFilter<LossMintingCompleteEvent>;
522
+
523
+ export interface LossRegisteredEventObject {
524
+ lossId: BigNumber;
525
+ lossAmount: BigNumber;
526
+ usersCount: BigNumber;
527
+ }
528
+ export type LossRegisteredEvent = TypedEvent<
529
+ [BigNumber, BigNumber, BigNumber],
530
+ LossRegisteredEventObject
531
+ >;
532
+
533
+ export type LossRegisteredEventFilter = TypedEventFilter<LossRegisteredEvent>;
534
+
535
+ export interface LossReturnedEventObject {
536
+ lossId: BigNumber;
537
+ amount: BigNumber;
538
+ }
539
+ export type LossReturnedEvent = TypedEvent<
540
+ [BigNumber, BigNumber],
541
+ LossReturnedEventObject
542
+ >;
543
+
544
+ export type LossReturnedEventFilter = TypedEventFilter<LossReturnedEvent>;
545
+
546
+ export interface MintedLossTokensToUsersEventObject {
547
+ lossId: BigNumber;
548
+ batchCount: BigNumber;
549
+ }
550
+ export type MintedLossTokensToUsersEvent = TypedEvent<
551
+ [BigNumber, BigNumber],
552
+ MintedLossTokensToUsersEventObject
553
+ >;
554
+
555
+ export type MintedLossTokensToUsersEventFilter =
556
+ TypedEventFilter<MintedLossTokensToUsersEvent>;
557
+
558
+ export interface TransferEventObject {
559
+ from: string;
560
+ to: string;
561
+ value: BigNumber;
562
+ }
563
+ export type TransferEvent = TypedEvent<
564
+ [string, string, BigNumber],
565
+ TransferEventObject
566
+ >;
567
+
568
+ export type TransferEventFilter = TypedEventFilter<TransferEvent>;
569
+
570
+ export interface TransferBatchEventObject {
571
+ operator: string;
572
+ from: string;
573
+ to: string;
574
+ ids: BigNumber[];
575
+ values: BigNumber[];
576
+ }
577
+ export type TransferBatchEvent = TypedEvent<
578
+ [string, string, string, BigNumber[], BigNumber[]],
579
+ TransferBatchEventObject
580
+ >;
581
+
582
+ export type TransferBatchEventFilter = TypedEventFilter<TransferBatchEvent>;
583
+
584
+ export interface TransferSingleEventObject {
585
+ operator: string;
586
+ from: string;
587
+ to: string;
588
+ id: BigNumber;
589
+ value: BigNumber;
590
+ }
591
+ export type TransferSingleEvent = TypedEvent<
592
+ [string, string, string, BigNumber, BigNumber],
593
+ TransferSingleEventObject
594
+ >;
595
+
596
+ export type TransferSingleEventFilter = TypedEventFilter<TransferSingleEvent>;
597
+
598
+ export interface URIEventObject {
599
+ value: string;
600
+ id: BigNumber;
601
+ }
602
+ export type URIEvent = TypedEvent<[string, BigNumber], URIEventObject>;
603
+
604
+ export type URIEventFilter = TypedEventFilter<URIEvent>;
605
+
606
+ export interface WithdrawEventObject {
607
+ sender: string;
608
+ receiver: string;
609
+ owner: string;
610
+ assets: BigNumber;
611
+ shares: BigNumber;
612
+ }
613
+ export type WithdrawEvent = TypedEvent<
614
+ [string, string, string, BigNumber, BigNumber],
615
+ WithdrawEventObject
616
+ >;
617
+
618
+ export type WithdrawEventFilter = TypedEventFilter<WithdrawEvent>;
619
+
620
+ export interface ILendingPoolTrancheAbi extends BaseContract {
621
+ connect(signerOrProvider: Signer | Provider | string): this;
622
+ attach(addressOrName: string): this;
623
+ deployed(): Promise<this>;
624
+
625
+ interface: ILendingPoolTrancheAbiInterface;
626
+
627
+ queryFilter<TEvent extends TypedEvent>(
628
+ event: TypedEventFilter<TEvent>,
629
+ fromBlockOrBlockhash?: string | number | undefined,
630
+ toBlock?: string | number | undefined
631
+ ): Promise<Array<TEvent>>;
632
+
633
+ listeners<TEvent extends TypedEvent>(
634
+ eventFilter?: TypedEventFilter<TEvent>
635
+ ): Array<TypedListener<TEvent>>;
636
+ listeners(eventName?: string): Array<Listener>;
637
+ removeAllListeners<TEvent extends TypedEvent>(
638
+ eventFilter: TypedEventFilter<TEvent>
639
+ ): this;
640
+ removeAllListeners(eventName?: string): this;
641
+ off: OnEvent<this>;
642
+ on: OnEvent<this>;
643
+ once: OnEvent<this>;
644
+ removeListener: OnEvent<this>;
645
+
646
+ functions: {
647
+ allowance(
648
+ owner: string,
649
+ spender: string,
650
+ overrides?: CallOverrides
651
+ ): Promise<[BigNumber]>;
652
+
653
+ approve(
654
+ spender: string,
655
+ value: BigNumberish,
656
+ overrides?: Overrides & { from?: string }
657
+ ): Promise<ContractTransaction>;
658
+
659
+ asset(
660
+ overrides?: CallOverrides
661
+ ): Promise<[string] & { assetTokenAddress: string }>;
662
+
663
+ "balanceOf(address,uint256)"(
664
+ account: string,
665
+ id: BigNumberish,
666
+ overrides?: CallOverrides
667
+ ): Promise<[BigNumber]>;
668
+
669
+ "balanceOf(address)"(
670
+ account: string,
671
+ overrides?: CallOverrides
672
+ ): Promise<[BigNumber]>;
673
+
674
+ balanceOfBatch(
675
+ accounts: string[],
676
+ ids: BigNumberish[],
677
+ overrides?: CallOverrides
678
+ ): Promise<[BigNumber[]]>;
679
+
680
+ batchMintLossTokens(
681
+ lossId: BigNumberish,
682
+ batchSize: BigNumberish,
683
+ overrides?: Overrides & { from?: string }
684
+ ): Promise<ContractTransaction>;
685
+
686
+ calculateMaximumLossAmount(overrides?: CallOverrides): Promise<[BigNumber]>;
687
+
688
+ claimRepaidLoss(
689
+ user: string,
690
+ lossId: BigNumberish,
691
+ overrides?: Overrides & { from?: string }
692
+ ): Promise<ContractTransaction>;
693
+
694
+ convertToAssets(
695
+ shares: BigNumberish,
696
+ overrides?: CallOverrides
697
+ ): Promise<[BigNumber] & { assets: BigNumber }>;
698
+
699
+ convertToShares(
700
+ assets: BigNumberish,
701
+ overrides?: CallOverrides
702
+ ): Promise<[BigNumber] & { shares: BigNumber }>;
703
+
704
+ decimals(overrides?: CallOverrides): Promise<[number]>;
705
+
706
+ deposit(
707
+ assets: BigNumberish,
708
+ receiver: string,
709
+ overrides?: Overrides & { from?: string }
710
+ ): Promise<ContractTransaction>;
711
+
712
+ isApprovedForAll(
713
+ account: string,
714
+ operator: string,
715
+ overrides?: CallOverrides
716
+ ): Promise<[boolean]>;
717
+
718
+ isLossMintingComplete(
719
+ lossId: BigNumberish,
720
+ overrides?: CallOverrides
721
+ ): Promise<[boolean]>;
722
+
723
+ lossDetails(
724
+ lossId: BigNumberish,
725
+ overrides?: CallOverrides
726
+ ): Promise<[LossDetailsStructOutput]>;
727
+
728
+ maxDeposit(
729
+ receiver: string,
730
+ overrides?: CallOverrides
731
+ ): Promise<[BigNumber] & { maxAssets: BigNumber }>;
732
+
733
+ maxMint(
734
+ receiver: string,
735
+ overrides?: CallOverrides
736
+ ): Promise<[BigNumber] & { maxShares: BigNumber }>;
737
+
738
+ maxRedeem(
739
+ owner: string,
740
+ overrides?: CallOverrides
741
+ ): Promise<[BigNumber] & { maxShares: BigNumber }>;
742
+
743
+ maxWithdraw(
744
+ owner: string,
745
+ overrides?: CallOverrides
746
+ ): Promise<[BigNumber] & { maxAssets: BigNumber }>;
747
+
748
+ minimumAssetAmountLeftAfterLoss(
749
+ overrides?: CallOverrides
750
+ ): Promise<[BigNumber]>;
751
+
752
+ mint(
753
+ shares: BigNumberish,
754
+ receiver: string,
755
+ overrides?: Overrides & { from?: string }
756
+ ): Promise<ContractTransaction>;
757
+
758
+ name(overrides?: CallOverrides): Promise<[string]>;
759
+
760
+ previewDeposit(
761
+ assets: BigNumberish,
762
+ overrides?: CallOverrides
763
+ ): Promise<[BigNumber] & { shares: BigNumber }>;
764
+
765
+ previewMint(
766
+ shares: BigNumberish,
767
+ overrides?: CallOverrides
768
+ ): Promise<[BigNumber] & { assets: BigNumber }>;
769
+
770
+ previewRedeem(
771
+ shares: BigNumberish,
772
+ overrides?: CallOverrides
773
+ ): Promise<[BigNumber] & { assets: BigNumber }>;
774
+
775
+ previewWithdraw(
776
+ assets: BigNumberish,
777
+ overrides?: CallOverrides
778
+ ): Promise<[BigNumber] & { shares: BigNumber }>;
779
+
780
+ redeem(
781
+ shares: BigNumberish,
782
+ receiver: string,
783
+ owner: string,
784
+ overrides?: Overrides & { from?: string }
785
+ ): Promise<ContractTransaction>;
786
+
787
+ registerTrancheLoss(
788
+ lossId: BigNumberish,
789
+ lossAmount: BigNumberish,
790
+ doMintLossTokens: boolean,
791
+ overrides?: Overrides & { from?: string }
792
+ ): Promise<ContractTransaction>;
793
+
794
+ removeUserActiveShares(
795
+ user: string,
796
+ shares: BigNumberish,
797
+ overrides?: Overrides & { from?: string }
798
+ ): Promise<ContractTransaction>;
799
+
800
+ repayLoss(
801
+ lossId: BigNumberish,
802
+ amount: BigNumberish,
803
+ overrides?: Overrides & { from?: string }
804
+ ): Promise<ContractTransaction>;
805
+
806
+ safeBatchTransferFrom(
807
+ from: string,
808
+ to: string,
809
+ ids: BigNumberish[],
810
+ values: BigNumberish[],
811
+ data: BytesLike,
812
+ overrides?: Overrides & { from?: string }
813
+ ): Promise<ContractTransaction>;
814
+
815
+ safeTransferFrom(
816
+ from: string,
817
+ to: string,
818
+ id: BigNumberish,
819
+ value: BigNumberish,
820
+ data: BytesLike,
821
+ overrides?: Overrides & { from?: string }
822
+ ): Promise<ContractTransaction>;
823
+
824
+ setApprovalForAll(
825
+ operator: string,
826
+ approved: boolean,
827
+ overrides?: Overrides & { from?: string }
828
+ ): Promise<ContractTransaction>;
829
+
830
+ supportsInterface(
831
+ interfaceId: BytesLike,
832
+ overrides?: CallOverrides
833
+ ): Promise<[boolean]>;
834
+
835
+ symbol(overrides?: CallOverrides): Promise<[string]>;
836
+
837
+ totalAssets(
838
+ overrides?: CallOverrides
839
+ ): Promise<[BigNumber] & { totalManagedAssets: BigNumber }>;
840
+
841
+ totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>;
842
+
843
+ transfer(
844
+ to: string,
845
+ value: BigNumberish,
846
+ overrides?: Overrides & { from?: string }
847
+ ): Promise<ContractTransaction>;
848
+
849
+ transferFrom(
850
+ from: string,
851
+ to: string,
852
+ value: BigNumberish,
853
+ overrides?: Overrides & { from?: string }
854
+ ): Promise<ContractTransaction>;
855
+
856
+ userActiveAssets(
857
+ user: string,
858
+ overrides?: CallOverrides
859
+ ): Promise<[BigNumber]>;
860
+
861
+ userClaimableLoss(
862
+ user: string,
863
+ lossId: BigNumberish,
864
+ overrides?: CallOverrides
865
+ ): Promise<[BigNumber] & { claimableAmount: BigNumber }>;
866
+
867
+ userClaimedLosses(
868
+ user: string,
869
+ lossId: BigNumberish,
870
+ overrides?: CallOverrides
871
+ ): Promise<[BigNumber] & { claimedAmount: BigNumber }>;
872
+
873
+ withdraw(
874
+ assets: BigNumberish,
875
+ receiver: string,
876
+ owner: string,
877
+ overrides?: Overrides & { from?: string }
878
+ ): Promise<ContractTransaction>;
879
+ };
880
+
881
+ allowance(
882
+ owner: string,
883
+ spender: string,
884
+ overrides?: CallOverrides
885
+ ): Promise<BigNumber>;
886
+
887
+ approve(
888
+ spender: string,
889
+ value: BigNumberish,
890
+ overrides?: Overrides & { from?: string }
891
+ ): Promise<ContractTransaction>;
892
+
893
+ asset(overrides?: CallOverrides): Promise<string>;
894
+
895
+ "balanceOf(address,uint256)"(
896
+ account: string,
897
+ id: BigNumberish,
898
+ overrides?: CallOverrides
899
+ ): Promise<BigNumber>;
900
+
901
+ "balanceOf(address)"(
902
+ account: string,
903
+ overrides?: CallOverrides
904
+ ): Promise<BigNumber>;
905
+
906
+ balanceOfBatch(
907
+ accounts: string[],
908
+ ids: BigNumberish[],
909
+ overrides?: CallOverrides
910
+ ): Promise<BigNumber[]>;
911
+
912
+ batchMintLossTokens(
913
+ lossId: BigNumberish,
914
+ batchSize: BigNumberish,
915
+ overrides?: Overrides & { from?: string }
916
+ ): Promise<ContractTransaction>;
917
+
918
+ calculateMaximumLossAmount(overrides?: CallOverrides): Promise<BigNumber>;
919
+
920
+ claimRepaidLoss(
921
+ user: string,
922
+ lossId: BigNumberish,
923
+ overrides?: Overrides & { from?: string }
924
+ ): Promise<ContractTransaction>;
925
+
926
+ convertToAssets(
927
+ shares: BigNumberish,
928
+ overrides?: CallOverrides
929
+ ): Promise<BigNumber>;
930
+
931
+ convertToShares(
932
+ assets: BigNumberish,
933
+ overrides?: CallOverrides
934
+ ): Promise<BigNumber>;
935
+
936
+ decimals(overrides?: CallOverrides): Promise<number>;
937
+
938
+ deposit(
939
+ assets: BigNumberish,
940
+ receiver: string,
941
+ overrides?: Overrides & { from?: string }
942
+ ): Promise<ContractTransaction>;
943
+
944
+ isApprovedForAll(
945
+ account: string,
946
+ operator: string,
947
+ overrides?: CallOverrides
948
+ ): Promise<boolean>;
949
+
950
+ isLossMintingComplete(
951
+ lossId: BigNumberish,
952
+ overrides?: CallOverrides
953
+ ): Promise<boolean>;
954
+
955
+ lossDetails(
956
+ lossId: BigNumberish,
957
+ overrides?: CallOverrides
958
+ ): Promise<LossDetailsStructOutput>;
959
+
960
+ maxDeposit(receiver: string, overrides?: CallOverrides): Promise<BigNumber>;
961
+
962
+ maxMint(receiver: string, overrides?: CallOverrides): Promise<BigNumber>;
963
+
964
+ maxRedeem(owner: string, overrides?: CallOverrides): Promise<BigNumber>;
965
+
966
+ maxWithdraw(owner: string, overrides?: CallOverrides): Promise<BigNumber>;
967
+
968
+ minimumAssetAmountLeftAfterLoss(
969
+ overrides?: CallOverrides
970
+ ): Promise<BigNumber>;
971
+
972
+ mint(
973
+ shares: BigNumberish,
974
+ receiver: string,
975
+ overrides?: Overrides & { from?: string }
976
+ ): Promise<ContractTransaction>;
977
+
978
+ name(overrides?: CallOverrides): Promise<string>;
979
+
980
+ previewDeposit(
981
+ assets: BigNumberish,
982
+ overrides?: CallOverrides
983
+ ): Promise<BigNumber>;
984
+
985
+ previewMint(
986
+ shares: BigNumberish,
987
+ overrides?: CallOverrides
988
+ ): Promise<BigNumber>;
989
+
990
+ previewRedeem(
991
+ shares: BigNumberish,
992
+ overrides?: CallOverrides
993
+ ): Promise<BigNumber>;
994
+
995
+ previewWithdraw(
996
+ assets: BigNumberish,
997
+ overrides?: CallOverrides
998
+ ): Promise<BigNumber>;
999
+
1000
+ redeem(
1001
+ shares: BigNumberish,
1002
+ receiver: string,
1003
+ owner: string,
1004
+ overrides?: Overrides & { from?: string }
1005
+ ): Promise<ContractTransaction>;
1006
+
1007
+ registerTrancheLoss(
1008
+ lossId: BigNumberish,
1009
+ lossAmount: BigNumberish,
1010
+ doMintLossTokens: boolean,
1011
+ overrides?: Overrides & { from?: string }
1012
+ ): Promise<ContractTransaction>;
1013
+
1014
+ removeUserActiveShares(
1015
+ user: string,
1016
+ shares: BigNumberish,
1017
+ overrides?: Overrides & { from?: string }
1018
+ ): Promise<ContractTransaction>;
1019
+
1020
+ repayLoss(
1021
+ lossId: BigNumberish,
1022
+ amount: BigNumberish,
1023
+ overrides?: Overrides & { from?: string }
1024
+ ): Promise<ContractTransaction>;
1025
+
1026
+ safeBatchTransferFrom(
1027
+ from: string,
1028
+ to: string,
1029
+ ids: BigNumberish[],
1030
+ values: BigNumberish[],
1031
+ data: BytesLike,
1032
+ overrides?: Overrides & { from?: string }
1033
+ ): Promise<ContractTransaction>;
1034
+
1035
+ safeTransferFrom(
1036
+ from: string,
1037
+ to: string,
1038
+ id: BigNumberish,
1039
+ value: BigNumberish,
1040
+ data: BytesLike,
1041
+ overrides?: Overrides & { from?: string }
1042
+ ): Promise<ContractTransaction>;
1043
+
1044
+ setApprovalForAll(
1045
+ operator: string,
1046
+ approved: boolean,
1047
+ overrides?: Overrides & { from?: string }
1048
+ ): Promise<ContractTransaction>;
1049
+
1050
+ supportsInterface(
1051
+ interfaceId: BytesLike,
1052
+ overrides?: CallOverrides
1053
+ ): Promise<boolean>;
1054
+
1055
+ symbol(overrides?: CallOverrides): Promise<string>;
1056
+
1057
+ totalAssets(overrides?: CallOverrides): Promise<BigNumber>;
1058
+
1059
+ totalSupply(overrides?: CallOverrides): Promise<BigNumber>;
1060
+
1061
+ transfer(
1062
+ to: string,
1063
+ value: BigNumberish,
1064
+ overrides?: Overrides & { from?: string }
1065
+ ): Promise<ContractTransaction>;
1066
+
1067
+ transferFrom(
1068
+ from: string,
1069
+ to: string,
1070
+ value: BigNumberish,
1071
+ overrides?: Overrides & { from?: string }
1072
+ ): Promise<ContractTransaction>;
1073
+
1074
+ userActiveAssets(user: string, overrides?: CallOverrides): Promise<BigNumber>;
1075
+
1076
+ userClaimableLoss(
1077
+ user: string,
1078
+ lossId: BigNumberish,
1079
+ overrides?: CallOverrides
1080
+ ): Promise<BigNumber>;
1081
+
1082
+ userClaimedLosses(
1083
+ user: string,
1084
+ lossId: BigNumberish,
1085
+ overrides?: CallOverrides
1086
+ ): Promise<BigNumber>;
1087
+
1088
+ withdraw(
1089
+ assets: BigNumberish,
1090
+ receiver: string,
1091
+ owner: string,
1092
+ overrides?: Overrides & { from?: string }
1093
+ ): Promise<ContractTransaction>;
1094
+
1095
+ callStatic: {
1096
+ allowance(
1097
+ owner: string,
1098
+ spender: string,
1099
+ overrides?: CallOverrides
1100
+ ): Promise<BigNumber>;
1101
+
1102
+ approve(
1103
+ spender: string,
1104
+ value: BigNumberish,
1105
+ overrides?: CallOverrides
1106
+ ): Promise<boolean>;
1107
+
1108
+ asset(overrides?: CallOverrides): Promise<string>;
1109
+
1110
+ "balanceOf(address,uint256)"(
1111
+ account: string,
1112
+ id: BigNumberish,
1113
+ overrides?: CallOverrides
1114
+ ): Promise<BigNumber>;
1115
+
1116
+ "balanceOf(address)"(
1117
+ account: string,
1118
+ overrides?: CallOverrides
1119
+ ): Promise<BigNumber>;
1120
+
1121
+ balanceOfBatch(
1122
+ accounts: string[],
1123
+ ids: BigNumberish[],
1124
+ overrides?: CallOverrides
1125
+ ): Promise<BigNumber[]>;
1126
+
1127
+ batchMintLossTokens(
1128
+ lossId: BigNumberish,
1129
+ batchSize: BigNumberish,
1130
+ overrides?: CallOverrides
1131
+ ): Promise<void>;
1132
+
1133
+ calculateMaximumLossAmount(overrides?: CallOverrides): Promise<BigNumber>;
1134
+
1135
+ claimRepaidLoss(
1136
+ user: string,
1137
+ lossId: BigNumberish,
1138
+ overrides?: CallOverrides
1139
+ ): Promise<BigNumber>;
1140
+
1141
+ convertToAssets(
1142
+ shares: BigNumberish,
1143
+ overrides?: CallOverrides
1144
+ ): Promise<BigNumber>;
1145
+
1146
+ convertToShares(
1147
+ assets: BigNumberish,
1148
+ overrides?: CallOverrides
1149
+ ): Promise<BigNumber>;
1150
+
1151
+ decimals(overrides?: CallOverrides): Promise<number>;
1152
+
1153
+ deposit(
1154
+ assets: BigNumberish,
1155
+ receiver: string,
1156
+ overrides?: CallOverrides
1157
+ ): Promise<BigNumber>;
1158
+
1159
+ isApprovedForAll(
1160
+ account: string,
1161
+ operator: string,
1162
+ overrides?: CallOverrides
1163
+ ): Promise<boolean>;
1164
+
1165
+ isLossMintingComplete(
1166
+ lossId: BigNumberish,
1167
+ overrides?: CallOverrides
1168
+ ): Promise<boolean>;
1169
+
1170
+ lossDetails(
1171
+ lossId: BigNumberish,
1172
+ overrides?: CallOverrides
1173
+ ): Promise<LossDetailsStructOutput>;
1174
+
1175
+ maxDeposit(receiver: string, overrides?: CallOverrides): Promise<BigNumber>;
1176
+
1177
+ maxMint(receiver: string, overrides?: CallOverrides): Promise<BigNumber>;
1178
+
1179
+ maxRedeem(owner: string, overrides?: CallOverrides): Promise<BigNumber>;
1180
+
1181
+ maxWithdraw(owner: string, overrides?: CallOverrides): Promise<BigNumber>;
1182
+
1183
+ minimumAssetAmountLeftAfterLoss(
1184
+ overrides?: CallOverrides
1185
+ ): Promise<BigNumber>;
1186
+
1187
+ mint(
1188
+ shares: BigNumberish,
1189
+ receiver: string,
1190
+ overrides?: CallOverrides
1191
+ ): Promise<BigNumber>;
1192
+
1193
+ name(overrides?: CallOverrides): Promise<string>;
1194
+
1195
+ previewDeposit(
1196
+ assets: BigNumberish,
1197
+ overrides?: CallOverrides
1198
+ ): Promise<BigNumber>;
1199
+
1200
+ previewMint(
1201
+ shares: BigNumberish,
1202
+ overrides?: CallOverrides
1203
+ ): Promise<BigNumber>;
1204
+
1205
+ previewRedeem(
1206
+ shares: BigNumberish,
1207
+ overrides?: CallOverrides
1208
+ ): Promise<BigNumber>;
1209
+
1210
+ previewWithdraw(
1211
+ assets: BigNumberish,
1212
+ overrides?: CallOverrides
1213
+ ): Promise<BigNumber>;
1214
+
1215
+ redeem(
1216
+ shares: BigNumberish,
1217
+ receiver: string,
1218
+ owner: string,
1219
+ overrides?: CallOverrides
1220
+ ): Promise<BigNumber>;
1221
+
1222
+ registerTrancheLoss(
1223
+ lossId: BigNumberish,
1224
+ lossAmount: BigNumberish,
1225
+ doMintLossTokens: boolean,
1226
+ overrides?: CallOverrides
1227
+ ): Promise<BigNumber>;
1228
+
1229
+ removeUserActiveShares(
1230
+ user: string,
1231
+ shares: BigNumberish,
1232
+ overrides?: CallOverrides
1233
+ ): Promise<void>;
1234
+
1235
+ repayLoss(
1236
+ lossId: BigNumberish,
1237
+ amount: BigNumberish,
1238
+ overrides?: CallOverrides
1239
+ ): Promise<void>;
1240
+
1241
+ safeBatchTransferFrom(
1242
+ from: string,
1243
+ to: string,
1244
+ ids: BigNumberish[],
1245
+ values: BigNumberish[],
1246
+ data: BytesLike,
1247
+ overrides?: CallOverrides
1248
+ ): Promise<void>;
1249
+
1250
+ safeTransferFrom(
1251
+ from: string,
1252
+ to: string,
1253
+ id: BigNumberish,
1254
+ value: BigNumberish,
1255
+ data: BytesLike,
1256
+ overrides?: CallOverrides
1257
+ ): Promise<void>;
1258
+
1259
+ setApprovalForAll(
1260
+ operator: string,
1261
+ approved: boolean,
1262
+ overrides?: CallOverrides
1263
+ ): Promise<void>;
1264
+
1265
+ supportsInterface(
1266
+ interfaceId: BytesLike,
1267
+ overrides?: CallOverrides
1268
+ ): Promise<boolean>;
1269
+
1270
+ symbol(overrides?: CallOverrides): Promise<string>;
1271
+
1272
+ totalAssets(overrides?: CallOverrides): Promise<BigNumber>;
1273
+
1274
+ totalSupply(overrides?: CallOverrides): Promise<BigNumber>;
1275
+
1276
+ transfer(
1277
+ to: string,
1278
+ value: BigNumberish,
1279
+ overrides?: CallOverrides
1280
+ ): Promise<boolean>;
1281
+
1282
+ transferFrom(
1283
+ from: string,
1284
+ to: string,
1285
+ value: BigNumberish,
1286
+ overrides?: CallOverrides
1287
+ ): Promise<boolean>;
1288
+
1289
+ userActiveAssets(
1290
+ user: string,
1291
+ overrides?: CallOverrides
1292
+ ): Promise<BigNumber>;
1293
+
1294
+ userClaimableLoss(
1295
+ user: string,
1296
+ lossId: BigNumberish,
1297
+ overrides?: CallOverrides
1298
+ ): Promise<BigNumber>;
1299
+
1300
+ userClaimedLosses(
1301
+ user: string,
1302
+ lossId: BigNumberish,
1303
+ overrides?: CallOverrides
1304
+ ): Promise<BigNumber>;
1305
+
1306
+ withdraw(
1307
+ assets: BigNumberish,
1308
+ receiver: string,
1309
+ owner: string,
1310
+ overrides?: CallOverrides
1311
+ ): Promise<BigNumber>;
1312
+ };
1313
+
1314
+ filters: {
1315
+ "Approval(address,address,uint256)"(
1316
+ owner?: string | null,
1317
+ spender?: string | null,
1318
+ value?: null
1319
+ ): ApprovalEventFilter;
1320
+ Approval(
1321
+ owner?: string | null,
1322
+ spender?: string | null,
1323
+ value?: null
1324
+ ): ApprovalEventFilter;
1325
+
1326
+ "ApprovalForAll(address,address,bool)"(
1327
+ account?: string | null,
1328
+ operator?: string | null,
1329
+ approved?: null
1330
+ ): ApprovalForAllEventFilter;
1331
+ ApprovalForAll(
1332
+ account?: string | null,
1333
+ operator?: string | null,
1334
+ approved?: null
1335
+ ): ApprovalForAllEventFilter;
1336
+
1337
+ "Deposit(address,address,uint256,uint256)"(
1338
+ sender?: string | null,
1339
+ owner?: string | null,
1340
+ assets?: null,
1341
+ shares?: null
1342
+ ): DepositEventFilter;
1343
+ Deposit(
1344
+ sender?: string | null,
1345
+ owner?: string | null,
1346
+ assets?: null,
1347
+ shares?: null
1348
+ ): DepositEventFilter;
1349
+
1350
+ "LossClaimed(address,uint256,uint256)"(
1351
+ user?: string | null,
1352
+ lossId?: BigNumberish | null,
1353
+ amount?: null
1354
+ ): LossClaimedEventFilter;
1355
+ LossClaimed(
1356
+ user?: string | null,
1357
+ lossId?: BigNumberish | null,
1358
+ amount?: null
1359
+ ): LossClaimedEventFilter;
1360
+
1361
+ "LossMintingComplete(uint256)"(
1362
+ lossId?: BigNumberish | null
1363
+ ): LossMintingCompleteEventFilter;
1364
+ LossMintingComplete(
1365
+ lossId?: BigNumberish | null
1366
+ ): LossMintingCompleteEventFilter;
1367
+
1368
+ "LossRegistered(uint256,uint256,uint256)"(
1369
+ lossId?: BigNumberish | null,
1370
+ lossAmount?: null,
1371
+ usersCount?: null
1372
+ ): LossRegisteredEventFilter;
1373
+ LossRegistered(
1374
+ lossId?: BigNumberish | null,
1375
+ lossAmount?: null,
1376
+ usersCount?: null
1377
+ ): LossRegisteredEventFilter;
1378
+
1379
+ "LossReturned(uint256,uint256)"(
1380
+ lossId?: BigNumberish | null,
1381
+ amount?: null
1382
+ ): LossReturnedEventFilter;
1383
+ LossReturned(
1384
+ lossId?: BigNumberish | null,
1385
+ amount?: null
1386
+ ): LossReturnedEventFilter;
1387
+
1388
+ "MintedLossTokensToUsers(uint256,uint256)"(
1389
+ lossId?: BigNumberish | null,
1390
+ batchCount?: null
1391
+ ): MintedLossTokensToUsersEventFilter;
1392
+ MintedLossTokensToUsers(
1393
+ lossId?: BigNumberish | null,
1394
+ batchCount?: null
1395
+ ): MintedLossTokensToUsersEventFilter;
1396
+
1397
+ "Transfer(address,address,uint256)"(
1398
+ from?: string | null,
1399
+ to?: string | null,
1400
+ value?: null
1401
+ ): TransferEventFilter;
1402
+ Transfer(
1403
+ from?: string | null,
1404
+ to?: string | null,
1405
+ value?: null
1406
+ ): TransferEventFilter;
1407
+
1408
+ "TransferBatch(address,address,address,uint256[],uint256[])"(
1409
+ operator?: string | null,
1410
+ from?: string | null,
1411
+ to?: string | null,
1412
+ ids?: null,
1413
+ values?: null
1414
+ ): TransferBatchEventFilter;
1415
+ TransferBatch(
1416
+ operator?: string | null,
1417
+ from?: string | null,
1418
+ to?: string | null,
1419
+ ids?: null,
1420
+ values?: null
1421
+ ): TransferBatchEventFilter;
1422
+
1423
+ "TransferSingle(address,address,address,uint256,uint256)"(
1424
+ operator?: string | null,
1425
+ from?: string | null,
1426
+ to?: string | null,
1427
+ id?: null,
1428
+ value?: null
1429
+ ): TransferSingleEventFilter;
1430
+ TransferSingle(
1431
+ operator?: string | null,
1432
+ from?: string | null,
1433
+ to?: string | null,
1434
+ id?: null,
1435
+ value?: null
1436
+ ): TransferSingleEventFilter;
1437
+
1438
+ "URI(string,uint256)"(
1439
+ value?: null,
1440
+ id?: BigNumberish | null
1441
+ ): URIEventFilter;
1442
+ URI(value?: null, id?: BigNumberish | null): URIEventFilter;
1443
+
1444
+ "Withdraw(address,address,address,uint256,uint256)"(
1445
+ sender?: string | null,
1446
+ receiver?: string | null,
1447
+ owner?: string | null,
1448
+ assets?: null,
1449
+ shares?: null
1450
+ ): WithdrawEventFilter;
1451
+ Withdraw(
1452
+ sender?: string | null,
1453
+ receiver?: string | null,
1454
+ owner?: string | null,
1455
+ assets?: null,
1456
+ shares?: null
1457
+ ): WithdrawEventFilter;
1458
+ };
1459
+
1460
+ estimateGas: {
1461
+ allowance(
1462
+ owner: string,
1463
+ spender: string,
1464
+ overrides?: CallOverrides
1465
+ ): Promise<BigNumber>;
1466
+
1467
+ approve(
1468
+ spender: string,
1469
+ value: BigNumberish,
1470
+ overrides?: Overrides & { from?: string }
1471
+ ): Promise<BigNumber>;
1472
+
1473
+ asset(overrides?: CallOverrides): Promise<BigNumber>;
1474
+
1475
+ "balanceOf(address,uint256)"(
1476
+ account: string,
1477
+ id: BigNumberish,
1478
+ overrides?: CallOverrides
1479
+ ): Promise<BigNumber>;
1480
+
1481
+ "balanceOf(address)"(
1482
+ account: string,
1483
+ overrides?: CallOverrides
1484
+ ): Promise<BigNumber>;
1485
+
1486
+ balanceOfBatch(
1487
+ accounts: string[],
1488
+ ids: BigNumberish[],
1489
+ overrides?: CallOverrides
1490
+ ): Promise<BigNumber>;
1491
+
1492
+ batchMintLossTokens(
1493
+ lossId: BigNumberish,
1494
+ batchSize: BigNumberish,
1495
+ overrides?: Overrides & { from?: string }
1496
+ ): Promise<BigNumber>;
1497
+
1498
+ calculateMaximumLossAmount(overrides?: CallOverrides): Promise<BigNumber>;
1499
+
1500
+ claimRepaidLoss(
1501
+ user: string,
1502
+ lossId: BigNumberish,
1503
+ overrides?: Overrides & { from?: string }
1504
+ ): Promise<BigNumber>;
1505
+
1506
+ convertToAssets(
1507
+ shares: BigNumberish,
1508
+ overrides?: CallOverrides
1509
+ ): Promise<BigNumber>;
1510
+
1511
+ convertToShares(
1512
+ assets: BigNumberish,
1513
+ overrides?: CallOverrides
1514
+ ): Promise<BigNumber>;
1515
+
1516
+ decimals(overrides?: CallOverrides): Promise<BigNumber>;
1517
+
1518
+ deposit(
1519
+ assets: BigNumberish,
1520
+ receiver: string,
1521
+ overrides?: Overrides & { from?: string }
1522
+ ): Promise<BigNumber>;
1523
+
1524
+ isApprovedForAll(
1525
+ account: string,
1526
+ operator: string,
1527
+ overrides?: CallOverrides
1528
+ ): Promise<BigNumber>;
1529
+
1530
+ isLossMintingComplete(
1531
+ lossId: BigNumberish,
1532
+ overrides?: CallOverrides
1533
+ ): Promise<BigNumber>;
1534
+
1535
+ lossDetails(
1536
+ lossId: BigNumberish,
1537
+ overrides?: CallOverrides
1538
+ ): Promise<BigNumber>;
1539
+
1540
+ maxDeposit(receiver: string, overrides?: CallOverrides): Promise<BigNumber>;
1541
+
1542
+ maxMint(receiver: string, overrides?: CallOverrides): Promise<BigNumber>;
1543
+
1544
+ maxRedeem(owner: string, overrides?: CallOverrides): Promise<BigNumber>;
1545
+
1546
+ maxWithdraw(owner: string, overrides?: CallOverrides): Promise<BigNumber>;
1547
+
1548
+ minimumAssetAmountLeftAfterLoss(
1549
+ overrides?: CallOverrides
1550
+ ): Promise<BigNumber>;
1551
+
1552
+ mint(
1553
+ shares: BigNumberish,
1554
+ receiver: string,
1555
+ overrides?: Overrides & { from?: string }
1556
+ ): Promise<BigNumber>;
1557
+
1558
+ name(overrides?: CallOverrides): Promise<BigNumber>;
1559
+
1560
+ previewDeposit(
1561
+ assets: BigNumberish,
1562
+ overrides?: CallOverrides
1563
+ ): Promise<BigNumber>;
1564
+
1565
+ previewMint(
1566
+ shares: BigNumberish,
1567
+ overrides?: CallOverrides
1568
+ ): Promise<BigNumber>;
1569
+
1570
+ previewRedeem(
1571
+ shares: BigNumberish,
1572
+ overrides?: CallOverrides
1573
+ ): Promise<BigNumber>;
1574
+
1575
+ previewWithdraw(
1576
+ assets: BigNumberish,
1577
+ overrides?: CallOverrides
1578
+ ): Promise<BigNumber>;
1579
+
1580
+ redeem(
1581
+ shares: BigNumberish,
1582
+ receiver: string,
1583
+ owner: string,
1584
+ overrides?: Overrides & { from?: string }
1585
+ ): Promise<BigNumber>;
1586
+
1587
+ registerTrancheLoss(
1588
+ lossId: BigNumberish,
1589
+ lossAmount: BigNumberish,
1590
+ doMintLossTokens: boolean,
1591
+ overrides?: Overrides & { from?: string }
1592
+ ): Promise<BigNumber>;
1593
+
1594
+ removeUserActiveShares(
1595
+ user: string,
1596
+ shares: BigNumberish,
1597
+ overrides?: Overrides & { from?: string }
1598
+ ): Promise<BigNumber>;
1599
+
1600
+ repayLoss(
1601
+ lossId: BigNumberish,
1602
+ amount: BigNumberish,
1603
+ overrides?: Overrides & { from?: string }
1604
+ ): Promise<BigNumber>;
1605
+
1606
+ safeBatchTransferFrom(
1607
+ from: string,
1608
+ to: string,
1609
+ ids: BigNumberish[],
1610
+ values: BigNumberish[],
1611
+ data: BytesLike,
1612
+ overrides?: Overrides & { from?: string }
1613
+ ): Promise<BigNumber>;
1614
+
1615
+ safeTransferFrom(
1616
+ from: string,
1617
+ to: string,
1618
+ id: BigNumberish,
1619
+ value: BigNumberish,
1620
+ data: BytesLike,
1621
+ overrides?: Overrides & { from?: string }
1622
+ ): Promise<BigNumber>;
1623
+
1624
+ setApprovalForAll(
1625
+ operator: string,
1626
+ approved: boolean,
1627
+ overrides?: Overrides & { from?: string }
1628
+ ): Promise<BigNumber>;
1629
+
1630
+ supportsInterface(
1631
+ interfaceId: BytesLike,
1632
+ overrides?: CallOverrides
1633
+ ): Promise<BigNumber>;
1634
+
1635
+ symbol(overrides?: CallOverrides): Promise<BigNumber>;
1636
+
1637
+ totalAssets(overrides?: CallOverrides): Promise<BigNumber>;
1638
+
1639
+ totalSupply(overrides?: CallOverrides): Promise<BigNumber>;
1640
+
1641
+ transfer(
1642
+ to: string,
1643
+ value: BigNumberish,
1644
+ overrides?: Overrides & { from?: string }
1645
+ ): Promise<BigNumber>;
1646
+
1647
+ transferFrom(
1648
+ from: string,
1649
+ to: string,
1650
+ value: BigNumberish,
1651
+ overrides?: Overrides & { from?: string }
1652
+ ): Promise<BigNumber>;
1653
+
1654
+ userActiveAssets(
1655
+ user: string,
1656
+ overrides?: CallOverrides
1657
+ ): Promise<BigNumber>;
1658
+
1659
+ userClaimableLoss(
1660
+ user: string,
1661
+ lossId: BigNumberish,
1662
+ overrides?: CallOverrides
1663
+ ): Promise<BigNumber>;
1664
+
1665
+ userClaimedLosses(
1666
+ user: string,
1667
+ lossId: BigNumberish,
1668
+ overrides?: CallOverrides
1669
+ ): Promise<BigNumber>;
1670
+
1671
+ withdraw(
1672
+ assets: BigNumberish,
1673
+ receiver: string,
1674
+ owner: string,
1675
+ overrides?: Overrides & { from?: string }
1676
+ ): Promise<BigNumber>;
1677
+ };
1678
+
1679
+ populateTransaction: {
1680
+ allowance(
1681
+ owner: string,
1682
+ spender: string,
1683
+ overrides?: CallOverrides
1684
+ ): Promise<PopulatedTransaction>;
1685
+
1686
+ approve(
1687
+ spender: string,
1688
+ value: BigNumberish,
1689
+ overrides?: Overrides & { from?: string }
1690
+ ): Promise<PopulatedTransaction>;
1691
+
1692
+ asset(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1693
+
1694
+ "balanceOf(address,uint256)"(
1695
+ account: string,
1696
+ id: BigNumberish,
1697
+ overrides?: CallOverrides
1698
+ ): Promise<PopulatedTransaction>;
1699
+
1700
+ "balanceOf(address)"(
1701
+ account: string,
1702
+ overrides?: CallOverrides
1703
+ ): Promise<PopulatedTransaction>;
1704
+
1705
+ balanceOfBatch(
1706
+ accounts: string[],
1707
+ ids: BigNumberish[],
1708
+ overrides?: CallOverrides
1709
+ ): Promise<PopulatedTransaction>;
1710
+
1711
+ batchMintLossTokens(
1712
+ lossId: BigNumberish,
1713
+ batchSize: BigNumberish,
1714
+ overrides?: Overrides & { from?: string }
1715
+ ): Promise<PopulatedTransaction>;
1716
+
1717
+ calculateMaximumLossAmount(
1718
+ overrides?: CallOverrides
1719
+ ): Promise<PopulatedTransaction>;
1720
+
1721
+ claimRepaidLoss(
1722
+ user: string,
1723
+ lossId: BigNumberish,
1724
+ overrides?: Overrides & { from?: string }
1725
+ ): Promise<PopulatedTransaction>;
1726
+
1727
+ convertToAssets(
1728
+ shares: BigNumberish,
1729
+ overrides?: CallOverrides
1730
+ ): Promise<PopulatedTransaction>;
1731
+
1732
+ convertToShares(
1733
+ assets: BigNumberish,
1734
+ overrides?: CallOverrides
1735
+ ): Promise<PopulatedTransaction>;
1736
+
1737
+ decimals(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1738
+
1739
+ deposit(
1740
+ assets: BigNumberish,
1741
+ receiver: string,
1742
+ overrides?: Overrides & { from?: string }
1743
+ ): Promise<PopulatedTransaction>;
1744
+
1745
+ isApprovedForAll(
1746
+ account: string,
1747
+ operator: string,
1748
+ overrides?: CallOverrides
1749
+ ): Promise<PopulatedTransaction>;
1750
+
1751
+ isLossMintingComplete(
1752
+ lossId: BigNumberish,
1753
+ overrides?: CallOverrides
1754
+ ): Promise<PopulatedTransaction>;
1755
+
1756
+ lossDetails(
1757
+ lossId: BigNumberish,
1758
+ overrides?: CallOverrides
1759
+ ): Promise<PopulatedTransaction>;
1760
+
1761
+ maxDeposit(
1762
+ receiver: string,
1763
+ overrides?: CallOverrides
1764
+ ): Promise<PopulatedTransaction>;
1765
+
1766
+ maxMint(
1767
+ receiver: string,
1768
+ overrides?: CallOverrides
1769
+ ): Promise<PopulatedTransaction>;
1770
+
1771
+ maxRedeem(
1772
+ owner: string,
1773
+ overrides?: CallOverrides
1774
+ ): Promise<PopulatedTransaction>;
1775
+
1776
+ maxWithdraw(
1777
+ owner: string,
1778
+ overrides?: CallOverrides
1779
+ ): Promise<PopulatedTransaction>;
1780
+
1781
+ minimumAssetAmountLeftAfterLoss(
1782
+ overrides?: CallOverrides
1783
+ ): Promise<PopulatedTransaction>;
1784
+
1785
+ mint(
1786
+ shares: BigNumberish,
1787
+ receiver: string,
1788
+ overrides?: Overrides & { from?: string }
1789
+ ): Promise<PopulatedTransaction>;
1790
+
1791
+ name(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1792
+
1793
+ previewDeposit(
1794
+ assets: BigNumberish,
1795
+ overrides?: CallOverrides
1796
+ ): Promise<PopulatedTransaction>;
1797
+
1798
+ previewMint(
1799
+ shares: BigNumberish,
1800
+ overrides?: CallOverrides
1801
+ ): Promise<PopulatedTransaction>;
1802
+
1803
+ previewRedeem(
1804
+ shares: BigNumberish,
1805
+ overrides?: CallOverrides
1806
+ ): Promise<PopulatedTransaction>;
1807
+
1808
+ previewWithdraw(
1809
+ assets: BigNumberish,
1810
+ overrides?: CallOverrides
1811
+ ): Promise<PopulatedTransaction>;
1812
+
1813
+ redeem(
1814
+ shares: BigNumberish,
1815
+ receiver: string,
1816
+ owner: string,
1817
+ overrides?: Overrides & { from?: string }
1818
+ ): Promise<PopulatedTransaction>;
1819
+
1820
+ registerTrancheLoss(
1821
+ lossId: BigNumberish,
1822
+ lossAmount: BigNumberish,
1823
+ doMintLossTokens: boolean,
1824
+ overrides?: Overrides & { from?: string }
1825
+ ): Promise<PopulatedTransaction>;
1826
+
1827
+ removeUserActiveShares(
1828
+ user: string,
1829
+ shares: BigNumberish,
1830
+ overrides?: Overrides & { from?: string }
1831
+ ): Promise<PopulatedTransaction>;
1832
+
1833
+ repayLoss(
1834
+ lossId: BigNumberish,
1835
+ amount: BigNumberish,
1836
+ overrides?: Overrides & { from?: string }
1837
+ ): Promise<PopulatedTransaction>;
1838
+
1839
+ safeBatchTransferFrom(
1840
+ from: string,
1841
+ to: string,
1842
+ ids: BigNumberish[],
1843
+ values: BigNumberish[],
1844
+ data: BytesLike,
1845
+ overrides?: Overrides & { from?: string }
1846
+ ): Promise<PopulatedTransaction>;
1847
+
1848
+ safeTransferFrom(
1849
+ from: string,
1850
+ to: string,
1851
+ id: BigNumberish,
1852
+ value: BigNumberish,
1853
+ data: BytesLike,
1854
+ overrides?: Overrides & { from?: string }
1855
+ ): Promise<PopulatedTransaction>;
1856
+
1857
+ setApprovalForAll(
1858
+ operator: string,
1859
+ approved: boolean,
1860
+ overrides?: Overrides & { from?: string }
1861
+ ): Promise<PopulatedTransaction>;
1862
+
1863
+ supportsInterface(
1864
+ interfaceId: BytesLike,
1865
+ overrides?: CallOverrides
1866
+ ): Promise<PopulatedTransaction>;
1867
+
1868
+ symbol(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1869
+
1870
+ totalAssets(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1871
+
1872
+ totalSupply(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1873
+
1874
+ transfer(
1875
+ to: string,
1876
+ value: BigNumberish,
1877
+ overrides?: Overrides & { from?: string }
1878
+ ): Promise<PopulatedTransaction>;
1879
+
1880
+ transferFrom(
1881
+ from: string,
1882
+ to: string,
1883
+ value: BigNumberish,
1884
+ overrides?: Overrides & { from?: string }
1885
+ ): Promise<PopulatedTransaction>;
1886
+
1887
+ userActiveAssets(
1888
+ user: string,
1889
+ overrides?: CallOverrides
1890
+ ): Promise<PopulatedTransaction>;
1891
+
1892
+ userClaimableLoss(
1893
+ user: string,
1894
+ lossId: BigNumberish,
1895
+ overrides?: CallOverrides
1896
+ ): Promise<PopulatedTransaction>;
1897
+
1898
+ userClaimedLosses(
1899
+ user: string,
1900
+ lossId: BigNumberish,
1901
+ overrides?: CallOverrides
1902
+ ): Promise<PopulatedTransaction>;
1903
+
1904
+ withdraw(
1905
+ assets: BigNumberish,
1906
+ receiver: string,
1907
+ owner: string,
1908
+ overrides?: Overrides & { from?: string }
1909
+ ): Promise<PopulatedTransaction>;
1910
+ };
1911
+ }