@ensuro/core 2.0.0-beta1 → 2.0.0-beta11

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 (84) hide show
  1. package/README.md +36 -14
  2. package/build/contracts/AccessManager.sol/AccessManager.json +564 -0
  3. package/build/contracts/ERC4626AssetManager.sol/ERC4626AssetManager.json +238 -0
  4. package/build/contracts/EToken.sol/EToken.json +147 -46
  5. package/build/contracts/LPManualWhitelist.sol/LPManualWhitelist.json +23 -4
  6. package/build/contracts/LiquidityThresholdAssetManager.sol/LiquidityThresholdAssetManager.json +222 -0
  7. package/build/contracts/Policy.sol/Policy.json +2 -2
  8. package/build/contracts/PolicyPool.sol/PolicyPool.json +437 -61
  9. package/build/contracts/PolicyPoolComponent.sol/PolicyPoolComponent.json +21 -2
  10. package/build/contracts/PremiumsAccount.sol/PremiumsAccount.json +142 -16
  11. package/build/contracts/Reserve.sol/Reserve.json +85 -8
  12. package/build/contracts/RiskModule.sol/RiskModule.json +21 -2
  13. package/build/contracts/SignedQuoteRiskModule.sol/SignedQuoteRiskModule.json +979 -0
  14. package/build/contracts/TimeScaled.sol/TimeScaled.json +3 -17
  15. package/build/contracts/TrustfulRiskModule.sol/TrustfulRiskModule.json +24 -5
  16. package/build/contracts/{WadRayMath.sol → dependencies/WadRayMath.sol}/WadRayMath.json +3 -3
  17. package/build/contracts/interfaces/{IPolicyPoolConfig.sol/IPolicyPoolConfig.json → IAccessManager.sol/IAccessManager.json} +77 -59
  18. package/build/contracts/interfaces/IAssetManager.sol/IAssetManager.json +128 -0
  19. package/build/contracts/interfaces/IEToken.sol/IEToken.json +13 -0
  20. package/build/contracts/interfaces/IPolicyPool.sol/IPolicyPool.json +40 -16
  21. package/build/contracts/interfaces/IPolicyPoolComponent.sol/IPolicyPoolComponent.json +19 -0
  22. package/build/contracts/interfaces/IPremiumsAccount.sol/IPremiumsAccount.json +13 -0
  23. package/build/contracts/mocks/FixedRateVault.sol/FixedRateVault.json +736 -0
  24. package/build/contracts/mocks/ForwardProxy.sol/ForwardProxy.json +2 -2
  25. package/build/contracts/mocks/InterfaceIdCalculator.sol/InterfaceIdCalculator.json +180 -0
  26. package/build/contracts/mocks/PolicyHolderMock.sol/PolicyHolderMock.json +28 -2
  27. package/build/contracts/mocks/PolicyPoolComponentMock.sol/PolicyPoolComponentMock.json +21 -2
  28. package/build/contracts/mocks/PolicyPoolMock.sol/PolicyPoolMock.json +118 -19
  29. package/build/contracts/mocks/PolicyPoolMock.sol/PolicyPoolMockForward.json +6 -6
  30. package/build/contracts/mocks/RiskModuleMock.sol/RiskModuleMock.json +783 -0
  31. package/build/contracts/mocks/TestCurrency.sol/TestCurrency.json +2 -2
  32. package/build/contracts/mocks/TestNFT.sol/TestNFT.json +2 -2
  33. package/contracts/AccessManager.sol +132 -0
  34. package/contracts/ERC4626AssetManager.sol +55 -0
  35. package/contracts/EToken.sol +208 -102
  36. package/contracts/LPManualWhitelist.sol +19 -3
  37. package/contracts/LiquidityThresholdAssetManager.sol +175 -0
  38. package/contracts/Policy.sol +5 -3
  39. package/contracts/PolicyPool.sol +381 -116
  40. package/contracts/PolicyPoolComponent.sol +61 -44
  41. package/contracts/PremiumsAccount.sol +324 -86
  42. package/contracts/Reserve.sol +199 -4
  43. package/contracts/RiskModule.sol +62 -31
  44. package/contracts/SignedQuoteRiskModule.sol +248 -0
  45. package/contracts/TimeScaled.sol +19 -15
  46. package/contracts/TrustfulRiskModule.sol +69 -2
  47. package/contracts/dependencies/WadRayMath.sol +126 -0
  48. package/contracts/interfaces/IAccessManager.sol +148 -0
  49. package/contracts/interfaces/IAssetManager.sol +89 -0
  50. package/contracts/interfaces/IEToken.sol +25 -2
  51. package/contracts/interfaces/ILPWhitelist.sol +17 -0
  52. package/contracts/interfaces/IPolicyPool.sol +21 -14
  53. package/contracts/interfaces/IPolicyPoolComponent.sol +5 -1
  54. package/contracts/interfaces/IPremiumsAccount.sol +5 -0
  55. package/contracts/interfaces/IRiskModule.sol +67 -4
  56. package/contracts/mocks/FixedRateVault.sol +85 -0
  57. package/contracts/mocks/InterfaceIdCalculator.sol +32 -0
  58. package/contracts/mocks/PolicyHolderMock.sol +21 -0
  59. package/contracts/mocks/PolicyPoolComponentMock.sol +10 -0
  60. package/contracts/mocks/PolicyPoolMock.sol +41 -15
  61. package/contracts/mocks/RiskModuleMock.sol +75 -0
  62. package/js/deploy.js +704 -0
  63. package/js/test-utils.js +339 -159
  64. package/package.json +1 -1
  65. package/build/contracts/FlightDelayRiskModule.sol/FlightDelayRiskModule.json +0 -890
  66. package/build/contracts/PolicyNFT.sol/PolicyNFT.json +0 -583
  67. package/build/contracts/PolicyPoolConfig.sol/PolicyPoolConfig.json +0 -691
  68. package/build/contracts/dependencies/ChainlinkClientUpgradeable.sol/ChainlinkClientUpgradeable.json +0 -63
  69. package/build/contracts/interfaces/IPolicyNFT.sol/IPolicyNFT.json +0 -321
  70. package/build/contracts/mocks/LinkTokenMock.sol/LinkTokenMock.json +0 -370
  71. package/build/contracts/mocks/TestCurrencyUUPS.sol/TestCurrencyUUPS.json +0 -353
  72. package/build/contracts/upgraded/IPolicyNFTv1.sol/IPolicyNFTv1.json +0 -322
  73. package/build/contracts/upgraded/PolicyNFTv1.sol/PolicyNFTv1.json +0 -584
  74. package/build/contracts/upgraded/PolicyNFTv1.sol/PolicyNFTv1_Upgrade.json +0 -615
  75. package/contracts/FlightDelayRiskModule.sol +0 -217
  76. package/contracts/PolicyNFT.sol +0 -96
  77. package/contracts/PolicyPoolConfig.sol +0 -204
  78. package/contracts/WadRayMath.sol +0 -135
  79. package/contracts/dependencies/ChainlinkClientUpgradeable.sol +0 -371
  80. package/contracts/interfaces/IPolicyNFT.sol +0 -15
  81. package/contracts/interfaces/IPolicyPoolConfig.sol +0 -96
  82. package/contracts/mocks/LinkTokenMock.sol +0 -30
  83. package/contracts/upgraded/IPolicyNFTv1.sol +0 -15
  84. package/contracts/upgraded/PolicyNFTv1.sol +0 -126
@@ -40,7 +40,7 @@
40
40
  "inputs": [
41
41
  {
42
42
  "indexed": true,
43
- "internalType": "enum IPolicyPoolConfig.GovernanceActions",
43
+ "internalType": "enum IAccessManager.GovernanceActions",
44
44
  "name": "action",
45
45
  "type": "uint8"
46
46
  },
@@ -59,7 +59,7 @@
59
59
  "inputs": [
60
60
  {
61
61
  "indexed": true,
62
- "internalType": "enum IPolicyPoolConfig.GovernanceActions",
62
+ "internalType": "enum IAccessManager.GovernanceActions",
63
63
  "name": "action",
64
64
  "type": "uint8"
65
65
  },
@@ -179,12 +179,12 @@
179
179
  },
180
180
  {
181
181
  "inputs": [],
182
- "name": "NEGLIGIBLE_AMOUNT",
182
+ "name": "TWEAK_EXPIRATION",
183
183
  "outputs": [
184
184
  {
185
- "internalType": "uint256",
185
+ "internalType": "uint40",
186
186
  "name": "",
187
- "type": "uint256"
187
+ "type": "uint40"
188
188
  }
189
189
  ],
190
190
  "stateMutability": "view",
@@ -192,17 +192,24 @@
192
192
  },
193
193
  {
194
194
  "inputs": [],
195
- "name": "TWEAK_EXPIRATION",
195
+ "name": "assetManager",
196
196
  "outputs": [
197
197
  {
198
- "internalType": "uint40",
198
+ "internalType": "contract IAssetManager",
199
199
  "name": "",
200
- "type": "uint40"
200
+ "type": "address"
201
201
  }
202
202
  ],
203
203
  "stateMutability": "view",
204
204
  "type": "function"
205
205
  },
206
+ {
207
+ "inputs": [],
208
+ "name": "checkpoint",
209
+ "outputs": [],
210
+ "stateMutability": "nonpayable",
211
+ "type": "function"
212
+ },
206
213
  {
207
214
  "inputs": [],
208
215
  "name": "currency",
@@ -216,6 +223,25 @@
216
223
  "stateMutability": "view",
217
224
  "type": "function"
218
225
  },
226
+ {
227
+ "inputs": [
228
+ {
229
+ "internalType": "bytes",
230
+ "name": "functionCall",
231
+ "type": "bytes"
232
+ }
233
+ ],
234
+ "name": "forwardToAssetManager",
235
+ "outputs": [
236
+ {
237
+ "internalType": "bytes",
238
+ "name": "",
239
+ "type": "bytes"
240
+ }
241
+ ],
242
+ "stateMutability": "nonpayable",
243
+ "type": "function"
244
+ },
219
245
  {
220
246
  "inputs": [],
221
247
  "name": "lastTweak",
@@ -280,6 +306,57 @@
280
306
  "stateMutability": "view",
281
307
  "type": "function"
282
308
  },
309
+ {
310
+ "inputs": [],
311
+ "name": "rebalance",
312
+ "outputs": [],
313
+ "stateMutability": "nonpayable",
314
+ "type": "function"
315
+ },
316
+ {
317
+ "inputs": [],
318
+ "name": "recordEarnings",
319
+ "outputs": [],
320
+ "stateMutability": "nonpayable",
321
+ "type": "function"
322
+ },
323
+ {
324
+ "inputs": [
325
+ {
326
+ "internalType": "contract IAssetManager",
327
+ "name": "newAM",
328
+ "type": "address"
329
+ },
330
+ {
331
+ "internalType": "bool",
332
+ "name": "force",
333
+ "type": "bool"
334
+ }
335
+ ],
336
+ "name": "setAssetManager",
337
+ "outputs": [],
338
+ "stateMutability": "nonpayable",
339
+ "type": "function"
340
+ },
341
+ {
342
+ "inputs": [
343
+ {
344
+ "internalType": "bytes4",
345
+ "name": "interfaceId",
346
+ "type": "bytes4"
347
+ }
348
+ ],
349
+ "name": "supportsInterface",
350
+ "outputs": [
351
+ {
352
+ "internalType": "bool",
353
+ "name": "",
354
+ "type": "bool"
355
+ }
356
+ ],
357
+ "stateMutability": "view",
358
+ "type": "function"
359
+ },
283
360
  {
284
361
  "inputs": [],
285
362
  "name": "unpause",
@@ -40,7 +40,7 @@
40
40
  "inputs": [
41
41
  {
42
42
  "indexed": true,
43
- "internalType": "enum IPolicyPoolConfig.GovernanceActions",
43
+ "internalType": "enum IAccessManager.GovernanceActions",
44
44
  "name": "action",
45
45
  "type": "uint8"
46
46
  },
@@ -59,7 +59,7 @@
59
59
  "inputs": [
60
60
  {
61
61
  "indexed": true,
62
- "internalType": "enum IPolicyPoolConfig.GovernanceActions",
62
+ "internalType": "enum IAccessManager.GovernanceActions",
63
63
  "name": "action",
64
64
  "type": "uint8"
65
65
  },
@@ -481,6 +481,25 @@
481
481
  "stateMutability": "nonpayable",
482
482
  "type": "function"
483
483
  },
484
+ {
485
+ "inputs": [
486
+ {
487
+ "internalType": "bytes4",
488
+ "name": "interfaceId",
489
+ "type": "bytes4"
490
+ }
491
+ ],
492
+ "name": "supportsInterface",
493
+ "outputs": [
494
+ {
495
+ "internalType": "bool",
496
+ "name": "",
497
+ "type": "bool"
498
+ }
499
+ ],
500
+ "stateMutability": "view",
501
+ "type": "function"
502
+ },
484
503
  {
485
504
  "inputs": [],
486
505
  "name": "unpause",