@etherisc/gif-next 0.0.2-da06f3b-803 → 0.0.2-da09ec0-359

Sign up to get free protection for your applications and to get access to all the features.
Files changed (368) hide show
  1. package/README.md +8 -13
  2. package/artifacts/contracts/components/Component.sol/Component.dbg.json +1 -1
  3. package/artifacts/contracts/components/Component.sol/Component.json +315 -98
  4. package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +1 -1
  5. package/artifacts/contracts/components/Distribution.sol/Distribution.json +668 -141
  6. package/artifacts/contracts/components/IComponent.sol/IComponent.dbg.json +1 -1
  7. package/artifacts/contracts/components/IComponent.sol/IComponent.json +241 -60
  8. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  9. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.json +438 -86
  10. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  11. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +526 -144
  12. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  13. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +257 -144
  14. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +1 -1
  15. package/artifacts/contracts/components/Pool.sol/Pool.json +676 -183
  16. package/artifacts/contracts/components/Product.sol/Product.dbg.json +1 -1
  17. package/artifacts/contracts/components/Product.sol/Product.json +435 -186
  18. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +1 -1
  19. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +64 -50
  20. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +1 -1
  21. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.json +5 -0
  22. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  23. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +267 -1594
  24. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  25. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +232 -208
  26. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  27. package/artifacts/contracts/instance/Instance.sol/Instance.json +393 -2515
  28. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +1 -1
  29. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +359 -92
  30. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +4 -0
  31. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +124 -0
  32. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  33. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +424 -236
  34. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  35. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +338 -409
  36. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  37. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +291 -108
  38. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
  39. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +2788 -0
  40. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +1 -1
  41. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.json +8 -13
  42. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.dbg.json +1 -1
  43. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.json +197 -169
  44. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  45. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  46. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  47. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +40 -10
  48. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  49. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +36 -11
  50. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  51. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +51 -42
  52. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  53. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
  54. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.json +10 -0
  55. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  56. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  57. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  58. package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +1 -1
  59. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +1 -1
  60. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  61. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.json +918 -0
  62. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  63. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.json +648 -0
  64. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +1 -1
  65. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +526 -340
  66. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  67. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +340 -93
  68. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.dbg.json +4 -0
  69. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.json +1376 -0
  70. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  71. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.json +748 -0
  72. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +1 -1
  73. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +982 -198
  74. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  75. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +430 -87
  76. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  77. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.json +493 -0
  78. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +1 -1
  79. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.json +290 -270
  80. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.dbg.json +4 -0
  81. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.json +743 -0
  82. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  83. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.json +527 -128
  84. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  85. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.json +181 -296
  86. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +1 -1
  87. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +705 -122
  88. package/artifacts/contracts/instance/service/IPricingService.sol/IPricingService.dbg.json +4 -0
  89. package/artifacts/contracts/instance/service/IPricingService.sol/IPricingService.json +510 -0
  90. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +1 -1
  91. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.json +71 -160
  92. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +1 -1
  93. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +449 -395
  94. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  95. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +349 -114
  96. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +1 -1
  97. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +1018 -202
  98. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  99. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +360 -89
  100. package/artifacts/contracts/instance/service/PricingService.sol/PricingService.dbg.json +4 -0
  101. package/artifacts/contracts/instance/service/PricingService.sol/PricingService.json +1004 -0
  102. package/artifacts/contracts/instance/service/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
  103. package/artifacts/contracts/instance/service/PricingServiceManager.sol/PricingServiceManager.json +688 -0
  104. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +1 -1
  105. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +231 -223
  106. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +1 -1
  107. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +298 -95
  108. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  109. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +15 -2
  110. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  111. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +15 -2
  112. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  113. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +70 -193
  114. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  115. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +18 -0
  116. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  117. package/artifacts/contracts/registry/Registry.sol/Registry.json +28 -15
  118. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +1 -1
  119. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +2 -2
  120. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  121. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +182 -232
  122. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  123. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +287 -94
  124. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +1 -1
  125. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +23 -11
  126. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  127. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +128 -37
  128. package/artifacts/contracts/shared/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +4 -0
  129. package/artifacts/contracts/shared/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +1206 -0
  130. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +1 -1
  131. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  132. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +41 -3
  133. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  134. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +27 -29
  135. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +4 -0
  136. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +189 -0
  137. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  138. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +8 -29
  139. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +4 -0
  140. package/artifacts/contracts/{experiment/inheritance/IA.sol/ISharedA.json → shared/IRegistryLinked.sol/IRegistryLinked.json} +15 -17
  141. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  142. package/artifacts/contracts/shared/IService.sol/IService.json +71 -160
  143. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  144. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +2 -152
  145. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  146. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +100 -33
  147. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +4 -0
  148. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +302 -0
  149. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  150. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +283 -76
  151. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  152. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +115 -58
  153. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +4 -0
  154. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +71 -0
  155. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  156. package/artifacts/contracts/shared/Service.sol/Service.json +172 -160
  157. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  158. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +24 -6
  159. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  160. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +2 -2
  161. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  162. package/artifacts/contracts/shared/Versionable.sol/Versionable.json +2 -152
  163. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +1 -1
  164. package/artifacts/contracts/test/TestFee.sol/TestFee.json +2 -2
  165. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +1 -1
  166. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +115 -58
  167. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +1 -1
  168. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +2 -2
  169. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +1 -1
  170. package/artifacts/contracts/test/TestService.sol/TestService.json +190 -210
  171. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +1 -1
  172. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +1 -1
  173. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +2 -2
  174. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +1 -1
  175. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +8 -190
  176. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +1 -1
  177. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  178. package/artifacts/contracts/types/Amount.sol/AmountLib.dbg.json +4 -0
  179. package/artifacts/contracts/types/Amount.sol/AmountLib.json +281 -0
  180. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  181. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +2 -2
  182. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +1 -1
  183. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  184. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.json +179 -0
  185. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  186. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +2 -2
  187. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +1 -1
  188. package/artifacts/contracts/types/Fee.sol/FeeLib.json +74 -19
  189. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +1 -1
  190. package/artifacts/contracts/types/Key32.sol/Key32Lib.json +2 -2
  191. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +1 -1
  192. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +17 -4
  193. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  194. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +2 -2
  195. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +1 -1
  196. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  197. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +2 -2
  198. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  199. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.json +209 -0
  200. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +1 -1
  201. package/artifacts/contracts/types/Referral.sol/ReferralLib.json +23 -4
  202. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +1 -1
  203. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +2 -2
  204. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +1 -1
  205. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +2 -2
  206. package/artifacts/contracts/types/Seconds.sol/SecondsLib.dbg.json +4 -0
  207. package/artifacts/contracts/types/Seconds.sol/SecondsLib.json +124 -0
  208. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +1 -1
  209. package/artifacts/contracts/types/StateId.sol/StateIdLib.json +2 -2
  210. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +1 -1
  211. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +38 -7
  212. package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +1 -1
  213. package/artifacts/contracts/types/UFixed.sol/MathLib.json +2 -2
  214. package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +1 -1
  215. package/artifacts/contracts/types/UFixed.sol/UFixedLib.json +2 -2
  216. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +1 -1
  217. package/artifacts/contracts/types/Version.sol/VersionLib.json +2 -2
  218. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +1 -1
  219. package/artifacts/contracts/types/Version.sol/VersionPartLib.json +2 -2
  220. package/contracts/components/Component.sol +134 -78
  221. package/contracts/components/Distribution.sol +189 -57
  222. package/contracts/components/IComponent.sol +62 -15
  223. package/contracts/components/IDistributionComponent.sol +39 -15
  224. package/contracts/components/IPoolComponent.sol +86 -23
  225. package/contracts/components/IProductComponent.sol +8 -6
  226. package/contracts/components/Pool.sol +230 -136
  227. package/contracts/components/Product.sol +227 -118
  228. package/contracts/instance/BundleManager.sol +10 -9
  229. package/contracts/instance/Cloneable.sol +7 -2
  230. package/contracts/instance/IInstance.sol +40 -35
  231. package/contracts/instance/IInstanceService.sol +44 -13
  232. package/contracts/instance/Instance.sol +131 -171
  233. package/contracts/instance/InstanceAccessManager.sol +281 -154
  234. package/contracts/instance/InstanceAuthorizationsLib.sol +308 -0
  235. package/contracts/instance/InstanceReader.sol +90 -15
  236. package/contracts/instance/InstanceService.sol +173 -338
  237. package/contracts/instance/InstanceServiceManager.sol +1 -1
  238. package/contracts/instance/InstanceStore.sol +212 -0
  239. package/contracts/instance/ObjectManager.sol +6 -8
  240. package/contracts/instance/base/ComponentService.sol +53 -39
  241. package/contracts/instance/base/KeyValueStore.sol +13 -36
  242. package/contracts/instance/base/Lifecycle.sol +26 -6
  243. package/contracts/instance/module/IAccess.sol +18 -12
  244. package/contracts/instance/module/IBundle.sol +8 -5
  245. package/contracts/instance/module/IComponents.sol +41 -0
  246. package/contracts/instance/module/IDistribution.sol +3 -0
  247. package/contracts/instance/module/IPolicy.sol +43 -11
  248. package/contracts/instance/module/ISetup.sol +7 -20
  249. package/contracts/instance/service/ApplicationService.sol +186 -0
  250. package/contracts/instance/service/ApplicationServiceManager.sol +35 -0
  251. package/contracts/instance/service/BundleService.sol +225 -136
  252. package/contracts/instance/service/BundleServiceManager.sol +1 -1
  253. package/contracts/instance/service/ClaimService.sol +437 -0
  254. package/contracts/instance/service/ClaimServiceManager.sol +35 -0
  255. package/contracts/instance/service/DistributionService.sol +264 -22
  256. package/contracts/instance/service/DistributionServiceManager.sol +1 -1
  257. package/contracts/instance/service/IApplicationService.sol +62 -0
  258. package/contracts/instance/service/IBundleService.sol +96 -22
  259. package/contracts/instance/service/IClaimService.sol +90 -0
  260. package/contracts/instance/service/IDistributionService.sol +76 -1
  261. package/contracts/instance/service/IPolicyService.sol +40 -54
  262. package/contracts/instance/service/IPoolService.sol +97 -3
  263. package/contracts/instance/service/IPricingService.sol +37 -0
  264. package/contracts/instance/service/PolicyService.sol +200 -362
  265. package/contracts/instance/service/PolicyServiceManager.sol +2 -2
  266. package/contracts/instance/service/PoolService.sol +313 -20
  267. package/contracts/instance/service/PoolServiceManager.sol +1 -1
  268. package/contracts/instance/service/PricingService.sol +275 -0
  269. package/contracts/instance/service/PricingServiceManager.sol +51 -0
  270. package/contracts/instance/service/ProductService.sol +41 -64
  271. package/contracts/instance/service/ProductServiceManager.sol +2 -2
  272. package/contracts/registry/ChainNft.sol +8 -0
  273. package/contracts/registry/IRegistry.sol +3 -2
  274. package/contracts/registry/IRegistryService.sol +12 -11
  275. package/contracts/registry/ITransferInterceptor.sol +1 -0
  276. package/contracts/registry/Registry.sol +30 -20
  277. package/contracts/registry/RegistryService.sol +75 -51
  278. package/contracts/registry/RegistryServiceManager.sol +13 -13
  279. package/contracts/registry/ReleaseManager.sol +32 -40
  280. package/contracts/registry/TokenRegistry.sol +16 -12
  281. package/contracts/shared/AccessManagerUpgradeableInitializeable.sol +13 -0
  282. package/contracts/shared/ERC165.sol +14 -12
  283. package/contracts/shared/INftOwnable.sol +11 -10
  284. package/contracts/shared/IPolicyHolder.sol +40 -0
  285. package/contracts/shared/IRegisterable.sol +3 -3
  286. package/contracts/shared/IRegistryLinked.sol +11 -0
  287. package/contracts/shared/IService.sol +6 -4
  288. package/contracts/shared/IVersionable.sol +4 -47
  289. package/contracts/shared/NftOwnable.sol +64 -85
  290. package/contracts/shared/PolicyHolder.sol +94 -0
  291. package/contracts/shared/ProxyManager.sol +100 -25
  292. package/contracts/shared/Registerable.sol +16 -27
  293. package/contracts/shared/RegistryLinked.sol +43 -0
  294. package/contracts/shared/Service.sol +32 -20
  295. package/contracts/shared/TokenHandler.sol +14 -6
  296. package/contracts/shared/Versionable.sol +4 -92
  297. package/contracts/test/TestRegisterable.sol +1 -1
  298. package/contracts/test/TestService.sol +1 -1
  299. package/contracts/types/Amount.sol +109 -0
  300. package/contracts/types/Blocknumber.sol +1 -0
  301. package/contracts/types/ClaimId.sol +75 -0
  302. package/contracts/types/DistributorType.sol +2 -2
  303. package/contracts/types/Fee.sol +17 -8
  304. package/contracts/types/NftId.sol +8 -0
  305. package/contracts/types/ObjectType.sol +16 -7
  306. package/contracts/types/PayoutId.sol +82 -0
  307. package/contracts/types/Referral.sol +4 -0
  308. package/contracts/types/RoleId.sol +12 -8
  309. package/contracts/types/Seconds.sol +54 -0
  310. package/contracts/types/StateId.sol +7 -2
  311. package/contracts/types/Timestamp.sol +18 -13
  312. package/contracts/types/UFixed.sol +1 -0
  313. package/contracts/types/Version.sol +1 -0
  314. package/package.json +1 -1
  315. package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.dbg.json +0 -4
  316. package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.json +0 -66
  317. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.dbg.json +0 -4
  318. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.json +0 -24
  319. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.dbg.json +0 -4
  320. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.json +0 -42
  321. package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +0 -4
  322. package/artifacts/contracts/experiment/errors/Require.sol/Require.json +0 -105
  323. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +0 -4
  324. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.json +0 -105
  325. package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +0 -4
  326. package/artifacts/contracts/experiment/inheritance/A.sol/A.json +0 -128
  327. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +0 -4
  328. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.json +0 -42
  329. package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +0 -4
  330. package/artifacts/contracts/experiment/inheritance/B.sol/B.json +0 -76
  331. package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +0 -4
  332. package/artifacts/contracts/experiment/inheritance/C.sol/C.json +0 -89
  333. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +0 -4
  334. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.json +0 -128
  335. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +0 -4
  336. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +0 -4
  337. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.json +0 -50
  338. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +0 -4
  339. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.json +0 -63
  340. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +0 -4
  341. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +0 -59
  342. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +0 -4
  343. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.json +0 -124
  344. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +0 -4
  345. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.json +0 -74
  346. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +0 -4
  347. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +0 -124
  348. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +0 -4
  349. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +0 -207
  350. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +0 -4
  351. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +0 -10
  352. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +0 -4
  353. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.json +0 -10
  354. package/contracts/experiment/cloning/Cloner.sol +0 -47
  355. package/contracts/experiment/errors/Require.sol +0 -38
  356. package/contracts/experiment/errors/Revert.sol +0 -44
  357. package/contracts/experiment/inheritance/A.sol +0 -53
  358. package/contracts/experiment/inheritance/B.sol +0 -28
  359. package/contracts/experiment/inheritance/C.sol +0 -34
  360. package/contracts/experiment/inheritance/IA.sol +0 -13
  361. package/contracts/experiment/inheritance/IB.sol +0 -10
  362. package/contracts/experiment/inheritance/IC.sol +0 -12
  363. package/contracts/experiment/statemachine/Dummy.sol +0 -27
  364. package/contracts/experiment/statemachine/ISM.sol +0 -25
  365. package/contracts/experiment/statemachine/SM.sol +0 -57
  366. package/contracts/experiment/statemachine/SimpleStateMachine.sol +0 -31
  367. package/contracts/experiment/types/TypeA.sol +0 -47
  368. package/contracts/experiment/types/TypeB.sol +0 -29
@@ -7,27 +7,128 @@
7
7
  "inputs": [
8
8
  {
9
9
  "internalType": "address",
10
- "name": "registry",
10
+ "name": "authority",
11
+ "type": "address"
12
+ }
13
+ ],
14
+ "name": "AccessManagedInvalidAuthority",
15
+ "type": "error"
16
+ },
17
+ {
18
+ "inputs": [
19
+ {
20
+ "internalType": "address",
21
+ "name": "caller",
11
22
  "type": "address"
12
23
  },
13
24
  {
14
- "internalType": "NftId",
15
- "name": "nftId",
16
- "type": "uint96"
25
+ "internalType": "uint32",
26
+ "name": "delay",
27
+ "type": "uint32"
17
28
  }
18
29
  ],
19
- "name": "ErrorAlreadyLinked",
30
+ "name": "AccessManagedRequiredDelay",
20
31
  "type": "error"
21
32
  },
22
33
  {
23
34
  "inputs": [
24
35
  {
25
36
  "internalType": "address",
26
- "name": "contractAddress",
37
+ "name": "caller",
27
38
  "type": "address"
28
39
  }
29
40
  ],
30
- "name": "ErrorContractNotRegistered",
41
+ "name": "AccessManagedUnauthorized",
42
+ "type": "error"
43
+ },
44
+ {
45
+ "inputs": [
46
+ {
47
+ "internalType": "NftId",
48
+ "name": "bundleNftId",
49
+ "type": "uint96"
50
+ },
51
+ {
52
+ "internalType": "StateId",
53
+ "name": "state",
54
+ "type": "uint8"
55
+ },
56
+ {
57
+ "internalType": "Timestamp",
58
+ "name": "expiredAt",
59
+ "type": "uint40"
60
+ }
61
+ ],
62
+ "name": "ErrorBundleServiceBundleNotOpen",
63
+ "type": "error"
64
+ },
65
+ {
66
+ "inputs": [
67
+ {
68
+ "internalType": "NftId",
69
+ "name": "bundleNftId",
70
+ "type": "uint96"
71
+ },
72
+ {
73
+ "internalType": "NftId",
74
+ "name": "expectedPool",
75
+ "type": "uint96"
76
+ },
77
+ {
78
+ "internalType": "NftId",
79
+ "name": "actualPool",
80
+ "type": "uint96"
81
+ }
82
+ ],
83
+ "name": "ErrorBundleServiceBundlePoolMismatch",
84
+ "type": "error"
85
+ },
86
+ {
87
+ "inputs": [
88
+ {
89
+ "internalType": "NftId",
90
+ "name": "bundleNftId",
91
+ "type": "uint96"
92
+ }
93
+ ],
94
+ "name": "ErrorBundleServiceBundleUnknown",
95
+ "type": "error"
96
+ },
97
+ {
98
+ "inputs": [
99
+ {
100
+ "internalType": "NftId",
101
+ "name": "bundleNftId",
102
+ "type": "uint96"
103
+ },
104
+ {
105
+ "internalType": "uint256",
106
+ "name": "openPoliciesCount",
107
+ "type": "uint256"
108
+ }
109
+ ],
110
+ "name": "ErrorBundleServiceBundleWithOpenPolicies",
111
+ "type": "error"
112
+ },
113
+ {
114
+ "inputs": [
115
+ {
116
+ "internalType": "NftId",
117
+ "name": "bundleNftId",
118
+ "type": "uint96"
119
+ },
120
+ {
121
+ "internalType": "Amount",
122
+ "name": "capacityAmount",
123
+ "type": "uint96"
124
+ },
125
+ {
126
+ "internalType": "Amount",
127
+ "name": "collateralAmount",
128
+ "type": "uint96"
129
+ }
130
+ ],
131
+ "name": "ErrorBundleServiceCapacityInsufficient",
31
132
  "type": "error"
32
133
  },
33
134
  {
@@ -43,81 +144,130 @@
43
144
  "type": "address"
44
145
  },
45
146
  {
46
- "internalType": "uint256",
147
+ "internalType": "Amount",
47
148
  "name": "amount",
48
- "type": "uint256"
149
+ "type": "uint96"
49
150
  }
50
151
  ],
51
- "name": "ErrorIBundleServiceInsufficientAllowance",
152
+ "name": "ErrorBundleServiceInsufficientAllowance",
52
153
  "type": "error"
53
154
  },
54
155
  {
55
156
  "inputs": [
56
157
  {
57
- "internalType": "address",
58
- "name": "account",
59
- "type": "address"
158
+ "internalType": "NftId",
159
+ "name": "policyNftId",
160
+ "type": "uint96"
161
+ }
162
+ ],
163
+ "name": "ErrorBundleServicePolicyNotCloseable",
164
+ "type": "error"
165
+ },
166
+ {
167
+ "inputs": [
168
+ {
169
+ "internalType": "NftId",
170
+ "name": "nftId",
171
+ "type": "uint96"
60
172
  }
61
173
  ],
62
- "name": "ErrorNotOwner",
174
+ "name": "ErrorNftOwnableAlreadyLinked",
63
175
  "type": "error"
64
176
  },
65
177
  {
66
178
  "inputs": [
67
179
  {
68
180
  "internalType": "address",
69
- "name": "registryAddress",
181
+ "name": "contractAddress",
70
182
  "type": "address"
71
183
  }
72
184
  ],
73
- "name": "ErrorNotRegistry",
185
+ "name": "ErrorNftOwnableContractNotRegistered",
74
186
  "type": "error"
75
187
  },
76
188
  {
77
189
  "inputs": [],
78
- "name": "ErrorRegistryAddressZero",
190
+ "name": "ErrorNftOwnableInitialOwnerZero",
79
191
  "type": "error"
80
192
  },
81
193
  {
82
194
  "inputs": [
83
195
  {
84
196
  "internalType": "address",
85
- "name": "registry",
197
+ "name": "account",
86
198
  "type": "address"
87
199
  }
88
200
  ],
89
- "name": "ErrorRegistryAlreadyInitialized",
201
+ "name": "ErrorNftOwnableNotOwner",
202
+ "type": "error"
203
+ },
204
+ {
205
+ "inputs": [
206
+ {
207
+ "internalType": "address",
208
+ "name": "registryAddress",
209
+ "type": "address"
210
+ }
211
+ ],
212
+ "name": "ErrorNotRegistry",
90
213
  "type": "error"
91
214
  },
92
215
  {
93
216
  "inputs": [],
94
- "name": "ErrorRegistryNotInitialized",
217
+ "name": "ErrorServiceNotImplemented",
95
218
  "type": "error"
96
219
  },
97
220
  {
98
221
  "anonymous": false,
99
222
  "inputs": [
100
- {
101
- "indexed": false,
102
- "internalType": "Version",
103
- "name": "version",
104
- "type": "uint24"
105
- },
106
223
  {
107
224
  "indexed": false,
108
225
  "internalType": "address",
109
- "name": "implementation",
226
+ "name": "authority",
110
227
  "type": "address"
111
- },
228
+ }
229
+ ],
230
+ "name": "AuthorityUpdated",
231
+ "type": "event"
232
+ },
233
+ {
234
+ "anonymous": false,
235
+ "inputs": [
236
+ {
237
+ "indexed": false,
238
+ "internalType": "NftId",
239
+ "name": "bundleNftId",
240
+ "type": "uint96"
241
+ }
242
+ ],
243
+ "name": "LogBundleServiceBundleActivated",
244
+ "type": "event"
245
+ },
246
+ {
247
+ "anonymous": false,
248
+ "inputs": [
112
249
  {
113
250
  "indexed": false,
251
+ "internalType": "NftId",
252
+ "name": "bundleNftId",
253
+ "type": "uint96"
254
+ }
255
+ ],
256
+ "name": "LogBundleServiceBundleLocked",
257
+ "type": "event"
258
+ },
259
+ {
260
+ "inputs": [],
261
+ "name": "authority",
262
+ "outputs": [
263
+ {
114
264
  "internalType": "address",
115
- "name": "activatedBy",
265
+ "name": "",
116
266
  "type": "address"
117
267
  }
118
268
  ],
119
- "name": "LogVersionableInitialized",
120
- "type": "event"
269
+ "stateMutability": "view",
270
+ "type": "function"
121
271
  },
122
272
  {
123
273
  "inputs": [
@@ -126,29 +276,29 @@
126
276
  "name": "instance",
127
277
  "type": "address"
128
278
  },
129
- {
130
- "internalType": "NftId",
131
- "name": "policyNftId",
132
- "type": "uint96"
133
- },
134
279
  {
135
280
  "internalType": "NftId",
136
281
  "name": "bundleNftId",
137
282
  "type": "uint96"
138
- },
139
- {
140
- "internalType": "uint256",
141
- "name": "collateralAmount",
142
- "type": "uint256"
143
283
  }
144
284
  ],
145
- "name": "closePolicy",
285
+ "name": "close",
146
286
  "outputs": [],
147
287
  "stateMutability": "nonpayable",
148
288
  "type": "function"
149
289
  },
150
290
  {
151
291
  "inputs": [
292
+ {
293
+ "internalType": "contract IInstance",
294
+ "name": "instance",
295
+ "type": "address"
296
+ },
297
+ {
298
+ "internalType": "NftId",
299
+ "name": "poolNftId",
300
+ "type": "uint96"
301
+ },
152
302
  {
153
303
  "internalType": "address",
154
304
  "name": "owner",
@@ -172,14 +322,14 @@
172
322
  "type": "tuple"
173
323
  },
174
324
  {
175
- "internalType": "uint256",
176
- "name": "amount",
177
- "type": "uint256"
325
+ "internalType": "Amount",
326
+ "name": "stakingAmount",
327
+ "type": "uint96"
178
328
  },
179
329
  {
180
- "internalType": "uint256",
330
+ "internalType": "Seconds",
181
331
  "name": "lifetime",
182
- "type": "uint256"
332
+ "type": "uint40"
183
333
  },
184
334
  {
185
335
  "internalType": "bytes",
@@ -187,7 +337,7 @@
187
337
  "type": "bytes"
188
338
  }
189
339
  ],
190
- "name": "createBundle",
340
+ "name": "create",
191
341
  "outputs": [
192
342
  {
193
343
  "internalType": "NftId",
@@ -261,32 +411,6 @@
261
411
  "stateMutability": "view",
262
412
  "type": "function"
263
413
  },
264
- {
265
- "inputs": [],
266
- "name": "getInitializedVersion",
267
- "outputs": [
268
- {
269
- "internalType": "uint64",
270
- "name": "",
271
- "type": "uint64"
272
- }
273
- ],
274
- "stateMutability": "view",
275
- "type": "function"
276
- },
277
- {
278
- "inputs": [],
279
- "name": "getMajorVersion",
280
- "outputs": [
281
- {
282
- "internalType": "VersionPart",
283
- "name": "majorVersion",
284
- "type": "uint8"
285
- }
286
- ],
287
- "stateMutability": "view",
288
- "type": "function"
289
- },
290
414
  {
291
415
  "inputs": [],
292
416
  "name": "getNftId",
@@ -342,100 +466,106 @@
342
466
  {
343
467
  "inputs": [
344
468
  {
345
- "internalType": "uint256",
346
- "name": "index",
347
- "type": "uint256"
469
+ "internalType": "contract IInstance",
470
+ "name": "instance",
471
+ "type": "address"
472
+ },
473
+ {
474
+ "internalType": "NftId",
475
+ "name": "bundleNftId",
476
+ "type": "uint96"
477
+ },
478
+ {
479
+ "internalType": "Amount",
480
+ "name": "amount",
481
+ "type": "uint96"
348
482
  }
349
483
  ],
350
- "name": "getVersion",
351
- "outputs": [
484
+ "name": "increaseBalance",
485
+ "outputs": [],
486
+ "stateMutability": "nonpayable",
487
+ "type": "function"
488
+ },
489
+ {
490
+ "inputs": [
352
491
  {
353
- "internalType": "Version",
354
- "name": "version",
355
- "type": "uint24"
492
+ "internalType": "address",
493
+ "name": "activatedBy",
494
+ "type": "address"
495
+ },
496
+ {
497
+ "internalType": "bytes",
498
+ "name": "activationData",
499
+ "type": "bytes"
356
500
  }
357
501
  ],
358
- "stateMutability": "view",
502
+ "name": "initializeVersionable",
503
+ "outputs": [],
504
+ "stateMutability": "nonpayable",
359
505
  "type": "function"
360
506
  },
361
507
  {
362
508
  "inputs": [],
363
- "name": "getVersionCount",
509
+ "name": "isConsumingScheduledOp",
364
510
  "outputs": [
365
511
  {
366
- "internalType": "uint256",
367
- "name": "numberOfVersions",
368
- "type": "uint256"
512
+ "internalType": "bytes4",
513
+ "name": "",
514
+ "type": "bytes4"
369
515
  }
370
516
  ],
371
517
  "stateMutability": "view",
372
518
  "type": "function"
373
519
  },
520
+ {
521
+ "inputs": [],
522
+ "name": "linkToRegisteredNftId",
523
+ "outputs": [],
524
+ "stateMutability": "nonpayable",
525
+ "type": "function"
526
+ },
374
527
  {
375
528
  "inputs": [
376
529
  {
377
- "internalType": "Version",
378
- "name": "version",
379
- "type": "uint24"
380
- }
381
- ],
382
- "name": "getVersionInfo",
383
- "outputs": [
384
- {
385
- "components": [
386
- {
387
- "internalType": "Version",
388
- "name": "version",
389
- "type": "uint24"
390
- },
391
- {
392
- "internalType": "address",
393
- "name": "implementation",
394
- "type": "address"
395
- },
396
- {
397
- "internalType": "address",
398
- "name": "activatedBy",
399
- "type": "address"
400
- },
401
- {
402
- "internalType": "Timestamp",
403
- "name": "activatedAt",
404
- "type": "uint40"
405
- },
406
- {
407
- "internalType": "Blocknumber",
408
- "name": "activatedIn",
409
- "type": "uint32"
410
- }
411
- ],
412
- "internalType": "struct IVersionable.VersionInfo",
413
- "name": "versionInfo",
414
- "type": "tuple"
530
+ "internalType": "NftId",
531
+ "name": "bundleNftId",
532
+ "type": "uint96"
415
533
  }
416
534
  ],
417
- "stateMutability": "view",
535
+ "name": "lock",
536
+ "outputs": [],
537
+ "stateMutability": "nonpayable",
418
538
  "type": "function"
419
539
  },
420
540
  {
421
541
  "inputs": [
422
542
  {
423
543
  "internalType": "contract IInstance",
424
- "name": "instance",
544
+ "name": "instanceNftId",
425
545
  "type": "address"
426
546
  },
547
+ {
548
+ "internalType": "NftId",
549
+ "name": "policyNftId",
550
+ "type": "uint96"
551
+ },
427
552
  {
428
553
  "internalType": "NftId",
429
554
  "name": "bundleNftId",
430
555
  "type": "uint96"
431
556
  },
432
557
  {
433
- "internalType": "uint256",
434
- "name": "amount",
435
- "type": "uint256"
558
+ "internalType": "Amount",
559
+ "name": "collateralAmount",
560
+ "type": "uint96"
561
+ },
562
+ {
563
+ "internalType": "Amount",
564
+ "name": "premiumAmount",
565
+ "type": "uint96"
436
566
  }
437
567
  ],
438
- "name": "increaseBalance",
568
+ "name": "lockCollateral",
439
569
  "outputs": [],
440
570
  "stateMutability": "nonpayable",
441
571
  "type": "function"
@@ -443,48 +573,27 @@
443
573
  {
444
574
  "inputs": [
445
575
  {
446
- "internalType": "address",
447
- "name": "implementation",
576
+ "internalType": "contract IInstance",
577
+ "name": "instance",
448
578
  "type": "address"
449
579
  },
450
580
  {
451
- "internalType": "address",
452
- "name": "activatedBy",
453
- "type": "address"
581
+ "internalType": "NftId",
582
+ "name": "policyNftId",
583
+ "type": "uint96"
454
584
  },
455
585
  {
456
- "internalType": "bytes",
457
- "name": "activationData",
458
- "type": "bytes"
459
- }
460
- ],
461
- "name": "initialize",
462
- "outputs": [],
463
- "stateMutability": "nonpayable",
464
- "type": "function"
465
- },
466
- {
467
- "inputs": [
468
- {
469
- "internalType": "Version",
470
- "name": "version",
471
- "type": "uint24"
472
- }
473
- ],
474
- "name": "isInitialized",
475
- "outputs": [
586
+ "internalType": "NftId",
587
+ "name": "bundleNftId",
588
+ "type": "uint96"
589
+ },
476
590
  {
477
- "internalType": "bool",
478
- "name": "",
479
- "type": "bool"
591
+ "internalType": "Amount",
592
+ "name": "collateralAmount",
593
+ "type": "uint96"
480
594
  }
481
595
  ],
482
- "stateMutability": "view",
483
- "type": "function"
484
- },
485
- {
486
- "inputs": [],
487
- "name": "linkToRegisteredNftId",
596
+ "name": "releaseCollateral",
488
597
  "outputs": [],
489
598
  "stateMutability": "nonpayable",
490
599
  "type": "function"
@@ -492,12 +601,12 @@
492
601
  {
493
602
  "inputs": [
494
603
  {
495
- "internalType": "NftId",
496
- "name": "bundleNftId",
497
- "type": "uint96"
604
+ "internalType": "address",
605
+ "name": "",
606
+ "type": "address"
498
607
  }
499
608
  ],
500
- "name": "lockBundle",
609
+ "name": "setAuthority",
501
610
  "outputs": [],
502
611
  "stateMutability": "nonpayable",
503
612
  "type": "function"
@@ -527,7 +636,7 @@
527
636
  "type": "tuple"
528
637
  }
529
638
  ],
530
- "name": "setBundleFee",
639
+ "name": "setFee",
531
640
  "outputs": [],
532
641
  "stateMutability": "nonpayable",
533
642
  "type": "function"
@@ -555,31 +664,16 @@
555
664
  "inputs": [
556
665
  {
557
666
  "internalType": "contract IInstance",
558
- "name": "instanceNftId",
667
+ "name": "instance",
559
668
  "type": "address"
560
669
  },
561
670
  {
562
671
  "internalType": "NftId",
563
672
  "name": "policyNftId",
564
673
  "type": "uint96"
565
- },
566
- {
567
- "internalType": "NftId",
568
- "name": "bundleNftId",
569
- "type": "uint96"
570
- },
571
- {
572
- "internalType": "uint256",
573
- "name": "collateralAmount",
574
- "type": "uint256"
575
- },
576
- {
577
- "internalType": "uint256",
578
- "name": "netPremium",
579
- "type": "uint256"
580
674
  }
581
675
  ],
582
- "name": "underwritePolicy",
676
+ "name": "unlinkPolicy",
583
677
  "outputs": [],
584
678
  "stateMutability": "nonpayable",
585
679
  "type": "function"
@@ -592,7 +686,7 @@
592
686
  "type": "uint96"
593
687
  }
594
688
  ],
595
- "name": "unlockBundle",
689
+ "name": "unlock",
596
690
  "outputs": [],
597
691
  "stateMutability": "nonpayable",
598
692
  "type": "function"
@@ -600,9 +694,9 @@
600
694
  {
601
695
  "inputs": [
602
696
  {
603
- "internalType": "NftId",
604
- "name": "instanceNftId",
605
- "type": "uint96"
697
+ "internalType": "contract IInstance",
698
+ "name": "instance",
699
+ "type": "address"
606
700
  },
607
701
  {
608
702
  "internalType": "NftId",
@@ -610,99 +704,25 @@
610
704
  "type": "uint96"
611
705
  },
612
706
  {
613
- "components": [
614
- {
615
- "internalType": "NftId",
616
- "name": "poolNftId",
617
- "type": "uint96"
618
- },
619
- {
620
- "components": [
621
- {
622
- "internalType": "UFixed",
623
- "name": "fractionalFee",
624
- "type": "uint256"
625
- },
626
- {
627
- "internalType": "uint256",
628
- "name": "fixedFee",
629
- "type": "uint256"
630
- }
631
- ],
632
- "internalType": "struct Fee",
633
- "name": "fee",
634
- "type": "tuple"
635
- },
636
- {
637
- "internalType": "bytes",
638
- "name": "filter",
639
- "type": "bytes"
640
- },
641
- {
642
- "internalType": "uint256",
643
- "name": "capitalAmount",
644
- "type": "uint256"
645
- },
646
- {
647
- "internalType": "uint256",
648
- "name": "lockedAmount",
649
- "type": "uint256"
650
- },
651
- {
652
- "internalType": "uint256",
653
- "name": "balanceAmount",
654
- "type": "uint256"
655
- },
656
- {
657
- "internalType": "uint256",
658
- "name": "lifetime",
659
- "type": "uint256"
660
- },
661
- {
662
- "internalType": "Timestamp",
663
- "name": "expiredAt",
664
- "type": "uint40"
665
- },
666
- {
667
- "internalType": "Timestamp",
668
- "name": "closedAt",
669
- "type": "uint40"
670
- }
671
- ],
672
- "internalType": "struct IBundle.BundleInfo",
673
- "name": "bundleInfo",
674
- "type": "tuple"
675
- },
676
- {
677
- "internalType": "StateId",
678
- "name": "state",
679
- "type": "uint8"
707
+ "internalType": "Amount",
708
+ "name": "feeAmount",
709
+ "type": "uint96"
680
710
  }
681
711
  ],
682
- "name": "updateBundle",
712
+ "name": "updateBundleFees",
683
713
  "outputs": [],
684
714
  "stateMutability": "nonpayable",
685
715
  "type": "function"
686
716
  },
687
717
  {
688
718
  "inputs": [
689
- {
690
- "internalType": "address",
691
- "name": "implementation",
692
- "type": "address"
693
- },
694
- {
695
- "internalType": "address",
696
- "name": "activatedBy",
697
- "type": "address"
698
- },
699
719
  {
700
720
  "internalType": "bytes",
701
721
  "name": "upgradeData",
702
722
  "type": "bytes"
703
723
  }
704
724
  ],
705
- "name": "upgrade",
725
+ "name": "upgradeVersionable",
706
726
  "outputs": [],
707
727
  "stateMutability": "nonpayable",
708
728
  "type": "function"