@etherisc/gif-next 0.0.2-2a59cd5-352 → 0.0.2-2aa1035-611

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 (363) hide show
  1. package/README.md +6 -83
  2. package/artifacts/contracts/components/Component.sol/Component.dbg.json +1 -1
  3. package/artifacts/contracts/components/Component.sol/Component.json +90 -145
  4. package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +1 -1
  5. package/artifacts/contracts/components/Distribution.sol/Distribution.json +145 -233
  6. package/artifacts/contracts/components/IComponent.sol/IComponent.dbg.json +1 -1
  7. package/artifacts/contracts/components/IComponent.sol/IComponent.json +158 -73
  8. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  9. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.json +169 -150
  10. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  11. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +350 -180
  12. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  13. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +162 -145
  14. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +1 -1
  15. package/artifacts/contracts/components/Pool.sol/Pool.json +298 -288
  16. package/artifacts/contracts/components/Product.sol/Product.dbg.json +1 -1
  17. package/artifacts/contracts/components/Product.sol/Product.json +95 -218
  18. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +4 -0
  19. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +1206 -0
  20. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +1 -1
  21. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +64 -50
  22. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +1 -1
  23. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.json +5 -0
  24. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  25. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +274 -2000
  26. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  27. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +183 -203
  28. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  29. package/artifacts/contracts/instance/Instance.sol/Instance.json +398 -2776
  30. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +1 -1
  31. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +491 -127
  32. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +4 -0
  33. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +124 -0
  34. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  35. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +253 -236
  36. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  37. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +216 -451
  38. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  39. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +184 -121
  40. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
  41. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +2663 -0
  42. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +1 -1
  43. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.json +8 -13
  44. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.dbg.json +1 -1
  45. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.json +100 -215
  46. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  47. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  48. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  49. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +40 -10
  50. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  51. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +36 -11
  52. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  53. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +56 -73
  54. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  55. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
  56. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.json +10 -0
  57. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  58. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  59. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  60. package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +1 -1
  61. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +1 -1
  62. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  63. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.json +164 -379
  64. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  65. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.json +649 -0
  66. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +1 -1
  67. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +433 -425
  68. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  69. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +244 -105
  70. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.dbg.json +4 -0
  71. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.json +1072 -0
  72. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  73. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.json +685 -0
  74. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +1 -1
  75. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +657 -318
  76. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  77. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +270 -115
  78. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  79. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.json +99 -236
  80. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +1 -1
  81. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.json +235 -319
  82. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.dbg.json +4 -0
  83. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.json +602 -0
  84. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  85. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.json +373 -158
  86. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  87. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.json +417 -232
  88. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +1 -1
  89. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +568 -120
  90. package/artifacts/contracts/instance/service/IPricingService.sol/IPricingService.dbg.json +4 -0
  91. package/artifacts/contracts/instance/service/IPricingService.sol/IPricingService.json +518 -0
  92. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +1 -1
  93. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.json +64 -163
  94. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +1 -1
  95. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +563 -366
  96. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  97. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +220 -121
  98. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +1 -1
  99. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +771 -247
  100. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  101. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +237 -102
  102. package/artifacts/contracts/instance/service/PricingService.sol/PricingService.dbg.json +4 -0
  103. package/artifacts/contracts/instance/service/PricingService.sol/PricingService.json +988 -0
  104. package/artifacts/contracts/instance/service/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
  105. package/artifacts/contracts/instance/service/PricingServiceManager.sol/PricingServiceManager.json +689 -0
  106. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +1 -1
  107. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +136 -271
  108. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +1 -1
  109. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +186 -107
  110. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  111. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +15 -2
  112. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  113. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +19 -0
  114. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  115. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +4 -193
  116. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  117. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +18 -0
  118. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  119. package/artifacts/contracts/registry/Registry.sol/Registry.json +31 -12
  120. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +1 -1
  121. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +2 -2
  122. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  123. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +28 -277
  124. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  125. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +182 -113
  126. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +1 -1
  127. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +23 -11
  128. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  129. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +34 -67
  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 +2 -2
  133. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  134. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +4 -30
  135. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  136. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  137. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +4 -30
  138. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  139. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.json +0 -21
  140. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  141. package/artifacts/contracts/shared/IService.sol/IService.json +64 -163
  142. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  143. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +0 -150
  144. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  145. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +10 -62
  146. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  147. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -23
  148. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  149. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +171 -88
  150. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  151. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +11 -74
  152. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  153. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -23
  154. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  155. package/artifacts/contracts/shared/Service.sol/Service.json +72 -203
  156. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  157. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +2 -2
  158. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  159. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +2 -2
  160. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  161. package/artifacts/contracts/shared/Versionable.sol/Versionable.json +0 -150
  162. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +1 -1
  163. package/artifacts/contracts/test/TestFee.sol/TestFee.json +2 -2
  164. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +1 -1
  165. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +11 -74
  166. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +1 -1
  167. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +6 -6
  168. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +1 -1
  169. package/artifacts/contracts/test/TestService.sol/TestService.json +90 -253
  170. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +1 -1
  171. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +1 -1
  172. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +2 -2
  173. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +1 -1
  174. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +6 -188
  175. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +1 -1
  176. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  177. package/artifacts/contracts/types/Amount.sol/AmountLib.dbg.json +4 -0
  178. package/artifacts/contracts/types/Amount.sol/AmountLib.json +209 -0
  179. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  180. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +2 -2
  181. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +1 -1
  182. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  183. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.json +179 -0
  184. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  185. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +2 -2
  186. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +1 -1
  187. package/artifacts/contracts/types/Fee.sol/FeeLib.json +40 -9
  188. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +1 -1
  189. package/artifacts/contracts/types/Key32.sol/Key32Lib.json +2 -2
  190. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +1 -1
  191. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +17 -4
  192. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  193. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +2 -2
  194. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +1 -1
  195. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  196. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +2 -2
  197. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  198. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.json +209 -0
  199. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +1 -1
  200. package/artifacts/contracts/types/Referral.sol/ReferralLib.json +23 -4
  201. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +1 -1
  202. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +2 -2
  203. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +1 -1
  204. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +2 -2
  205. package/artifacts/contracts/types/Seconds.sol/SecondsLib.dbg.json +4 -0
  206. package/artifacts/contracts/types/Seconds.sol/SecondsLib.json +124 -0
  207. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +1 -1
  208. package/artifacts/contracts/types/StateId.sol/StateIdLib.json +2 -2
  209. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +1 -1
  210. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +38 -7
  211. package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +1 -1
  212. package/artifacts/contracts/types/UFixed.sol/MathLib.json +2 -2
  213. package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +1 -1
  214. package/artifacts/contracts/types/UFixed.sol/UFixedLib.json +2 -2
  215. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +1 -1
  216. package/artifacts/contracts/types/Version.sol/VersionLib.json +2 -2
  217. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +1 -1
  218. package/artifacts/contracts/types/Version.sol/VersionPartLib.json +2 -2
  219. package/contracts/components/Component.sol +100 -83
  220. package/contracts/components/Distribution.sol +22 -46
  221. package/contracts/components/IComponent.sol +43 -17
  222. package/contracts/components/IDistributionComponent.sol +1 -30
  223. package/contracts/components/IPoolComponent.sol +73 -47
  224. package/contracts/components/IProductComponent.sol +3 -2
  225. package/contracts/components/Pool.sol +178 -130
  226. package/contracts/components/Product.sol +172 -76
  227. package/contracts/instance/AccessManagerUpgradeableInitializeable.sol +13 -0
  228. package/contracts/instance/BundleManager.sol +10 -9
  229. package/contracts/instance/Cloneable.sol +7 -2
  230. package/contracts/instance/IInstance.sol +43 -49
  231. package/contracts/instance/IInstanceService.sol +32 -12
  232. package/contracts/instance/Instance.sol +129 -173
  233. package/contracts/instance/InstanceAccessManager.sol +404 -160
  234. package/contracts/instance/InstanceAuthorizationsLib.sol +300 -0
  235. package/contracts/instance/InstanceReader.sol +43 -16
  236. package/contracts/instance/InstanceService.sol +160 -293
  237. package/contracts/instance/InstanceServiceManager.sol +1 -1
  238. package/contracts/instance/InstanceStore.sol +208 -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 -5
  242. package/contracts/instance/base/Lifecycle.sol +23 -6
  243. package/contracts/instance/module/IAccess.sol +21 -14
  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 +2 -0
  247. package/contracts/instance/module/IPolicy.sol +41 -9
  248. package/contracts/instance/module/ISetup.sol +7 -21
  249. package/contracts/instance/service/ApplicationService.sol +75 -158
  250. package/contracts/instance/service/ApplicationServiceManager.sol +35 -0
  251. package/contracts/instance/service/BundleService.sol +230 -88
  252. package/contracts/instance/service/BundleServiceManager.sol +1 -1
  253. package/contracts/instance/service/ClaimService.sol +239 -0
  254. package/contracts/instance/service/ClaimServiceManager.sol +35 -0
  255. package/contracts/instance/service/DistributionService.sol +156 -96
  256. package/contracts/instance/service/DistributionServiceManager.sol +1 -1
  257. package/contracts/instance/service/IApplicationService.sol +9 -30
  258. package/contracts/instance/service/IBundleService.sol +74 -26
  259. package/contracts/instance/service/IClaimService.sol +92 -0
  260. package/contracts/instance/service/IDistributionService.sol +26 -6
  261. package/contracts/instance/service/IPolicyService.sol +89 -38
  262. package/contracts/instance/service/IPoolService.sol +85 -3
  263. package/contracts/instance/service/IPricingService.sol +36 -0
  264. package/contracts/instance/service/PolicyService.sol +358 -305
  265. package/contracts/instance/service/PolicyServiceManager.sol +2 -2
  266. package/contracts/instance/service/PoolService.sol +246 -19
  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 +37 -60
  271. package/contracts/instance/service/ProductServiceManager.sol +2 -2
  272. package/contracts/registry/ChainNft.sol +8 -0
  273. package/contracts/registry/IRegistry.sol +2 -0
  274. package/contracts/registry/IRegistryService.sol +11 -10
  275. package/contracts/registry/ITransferInterceptor.sol +1 -0
  276. package/contracts/registry/Registry.sol +23 -20
  277. package/contracts/registry/RegistryService.sol +56 -47
  278. package/contracts/registry/RegistryServiceManager.sol +13 -13
  279. package/contracts/registry/ReleaseManager.sol +26 -33
  280. package/contracts/registry/TokenRegistry.sol +13 -10
  281. package/contracts/shared/ERC165.sol +2 -1
  282. package/contracts/shared/INftOwnable.sol +4 -9
  283. package/contracts/shared/IRegistryLinked.sol +0 -3
  284. package/contracts/shared/IService.sol +4 -4
  285. package/contracts/shared/IVersionable.sol +4 -47
  286. package/contracts/shared/NftOwnable.sol +10 -80
  287. package/contracts/shared/ProxyManager.sol +98 -24
  288. package/contracts/shared/Registerable.sol +3 -10
  289. package/contracts/shared/RegistryLinked.sol +10 -26
  290. package/contracts/shared/Service.sol +29 -17
  291. package/contracts/shared/TokenHandler.sol +11 -5
  292. package/contracts/shared/Versionable.sol +1 -90
  293. package/contracts/test/TestService.sol +1 -1
  294. package/contracts/types/Amount.sol +70 -0
  295. package/contracts/types/Blocknumber.sol +1 -0
  296. package/contracts/types/ClaimId.sol +75 -0
  297. package/contracts/types/Fee.sol +13 -5
  298. package/contracts/types/NftId.sol +8 -0
  299. package/contracts/types/ObjectType.sol +12 -7
  300. package/contracts/types/PayoutId.sol +82 -0
  301. package/contracts/types/Referral.sol +4 -0
  302. package/contracts/types/RoleId.sol +16 -9
  303. package/contracts/types/Seconds.sol +54 -0
  304. package/contracts/types/StateId.sol +7 -2
  305. package/contracts/types/Timestamp.sol +18 -13
  306. package/contracts/types/UFixed.sol +1 -0
  307. package/contracts/types/Version.sol +1 -0
  308. package/package.json +1 -1
  309. package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.dbg.json +0 -4
  310. package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.json +0 -66
  311. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.dbg.json +0 -4
  312. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.json +0 -24
  313. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.dbg.json +0 -4
  314. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.json +0 -42
  315. package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +0 -4
  316. package/artifacts/contracts/experiment/errors/Require.sol/Require.json +0 -105
  317. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +0 -4
  318. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.json +0 -105
  319. package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +0 -4
  320. package/artifacts/contracts/experiment/inheritance/A.sol/A.json +0 -128
  321. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +0 -4
  322. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.json +0 -42
  323. package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +0 -4
  324. package/artifacts/contracts/experiment/inheritance/B.sol/B.json +0 -76
  325. package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +0 -4
  326. package/artifacts/contracts/experiment/inheritance/C.sol/C.json +0 -89
  327. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +0 -4
  328. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.json +0 -128
  329. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +0 -4
  330. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.json +0 -37
  331. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +0 -4
  332. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.json +0 -50
  333. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +0 -4
  334. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.json +0 -63
  335. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +0 -4
  336. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +0 -59
  337. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +0 -4
  338. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.json +0 -124
  339. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +0 -4
  340. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.json +0 -74
  341. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +0 -4
  342. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +0 -124
  343. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +0 -4
  344. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +0 -207
  345. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +0 -4
  346. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +0 -10
  347. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +0 -4
  348. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.json +0 -10
  349. package/contracts/experiment/cloning/Cloner.sol +0 -47
  350. package/contracts/experiment/errors/Require.sol +0 -38
  351. package/contracts/experiment/errors/Revert.sol +0 -44
  352. package/contracts/experiment/inheritance/A.sol +0 -53
  353. package/contracts/experiment/inheritance/B.sol +0 -28
  354. package/contracts/experiment/inheritance/C.sol +0 -34
  355. package/contracts/experiment/inheritance/IA.sol +0 -13
  356. package/contracts/experiment/inheritance/IB.sol +0 -10
  357. package/contracts/experiment/inheritance/IC.sol +0 -12
  358. package/contracts/experiment/statemachine/Dummy.sol +0 -27
  359. package/contracts/experiment/statemachine/ISM.sol +0 -25
  360. package/contracts/experiment/statemachine/SM.sol +0 -57
  361. package/contracts/experiment/statemachine/SimpleStateMachine.sol +0 -31
  362. package/contracts/experiment/types/TypeA.sol +0 -47
  363. package/contracts/experiment/types/TypeB.sol +0 -29
@@ -63,22 +63,6 @@
63
63
  "name": "AddressInsufficientBalance",
64
64
  "type": "error"
65
65
  },
66
- {
67
- "inputs": [
68
- {
69
- "internalType": "address",
70
- "name": "registry",
71
- "type": "address"
72
- },
73
- {
74
- "internalType": "NftId",
75
- "name": "nftId",
76
- "type": "uint96"
77
- }
78
- ],
79
- "name": "ErrorAlreadyLinked",
80
- "type": "error"
81
- },
82
66
  {
83
67
  "inputs": [
84
68
  {
@@ -96,11 +80,6 @@
96
80
  "internalType": "NftId",
97
81
  "name": "instanceNftId",
98
82
  "type": "uint96"
99
- },
100
- {
101
- "internalType": "address",
102
- "name": "instance",
103
- "type": "address"
104
83
  }
105
84
  ],
106
85
  "name": "ErrorComponentNotInstance",
@@ -123,29 +102,7 @@
123
102
  "type": "error"
124
103
  },
125
104
  {
126
- "inputs": [
127
- {
128
- "internalType": "address",
129
- "name": "caller",
130
- "type": "address"
131
- },
132
- {
133
- "internalType": "uint64",
134
- "name": "requiredRoleIdNum",
135
- "type": "uint64"
136
- }
137
- ],
138
- "name": "ErrorComponentUnauthorized",
139
- "type": "error"
140
- },
141
- {
142
- "inputs": [
143
- {
144
- "internalType": "address",
145
- "name": "newWallet",
146
- "type": "address"
147
- }
148
- ],
105
+ "inputs": [],
149
106
  "name": "ErrorComponentWalletAddressIsSameAsCurrent",
150
107
  "type": "error"
151
108
  },
@@ -180,6 +137,17 @@
180
137
  "name": "ErrorComponentWalletAllowanceTooSmall",
181
138
  "type": "error"
182
139
  },
140
+ {
141
+ "inputs": [
142
+ {
143
+ "internalType": "NftId",
144
+ "name": "nftId",
145
+ "type": "uint96"
146
+ }
147
+ ],
148
+ "name": "ErrorNftOwnableAlreadyLinked",
149
+ "type": "error"
150
+ },
183
151
  {
184
152
  "inputs": [
185
153
  {
@@ -188,12 +156,12 @@
188
156
  "type": "address"
189
157
  }
190
158
  ],
191
- "name": "ErrorContractNotRegistered",
159
+ "name": "ErrorNftOwnableContractNotRegistered",
192
160
  "type": "error"
193
161
  },
194
162
  {
195
163
  "inputs": [],
196
- "name": "ErrorInitialOwnerZero",
164
+ "name": "ErrorNftOwnableInitialOwnerZero",
197
165
  "type": "error"
198
166
  },
199
167
  {
@@ -204,7 +172,7 @@
204
172
  "type": "address"
205
173
  }
206
174
  ],
207
- "name": "ErrorNotOwner",
175
+ "name": "ErrorNftOwnableNotOwner",
208
176
  "type": "error"
209
177
  },
210
178
  {
@@ -221,44 +189,39 @@
221
189
  {
222
190
  "inputs": [
223
191
  {
224
- "internalType": "address",
225
- "name": "service",
226
- "type": "address"
192
+ "internalType": "NftId",
193
+ "name": "applicationNftId",
194
+ "type": "uint96"
227
195
  }
228
196
  ],
229
- "name": "ErrorPoolNotPoolService",
197
+ "name": "ErrorPoolApplicationBundleMismatch",
230
198
  "type": "error"
231
199
  },
232
200
  {
233
201
  "inputs": [
202
+ {
203
+ "internalType": "NftId",
204
+ "name": "bundleNftId",
205
+ "type": "uint96"
206
+ },
234
207
  {
235
208
  "internalType": "address",
236
- "name": "registryAddress",
209
+ "name": "caller",
237
210
  "type": "address"
238
211
  }
239
212
  ],
240
- "name": "ErrorRegisterableNotRegistry",
241
- "type": "error"
242
- },
243
- {
244
- "inputs": [],
245
- "name": "ErrorRegistryAddressZero",
213
+ "name": "ErrorPoolNotBundleOwner",
246
214
  "type": "error"
247
215
  },
248
216
  {
249
217
  "inputs": [
250
218
  {
251
219
  "internalType": "address",
252
- "name": "registry",
220
+ "name": "caller",
253
221
  "type": "address"
254
222
  }
255
223
  ],
256
- "name": "ErrorRegistryAlreadyInitialized",
257
- "type": "error"
258
- },
259
- {
260
- "inputs": [],
261
- "name": "ErrorRegistryNotInitialized",
224
+ "name": "ErrorPoolNotPoolService",
262
225
  "type": "error"
263
226
  },
264
227
  {
@@ -316,6 +279,12 @@
316
279
  {
317
280
  "anonymous": false,
318
281
  "inputs": [
282
+ {
283
+ "indexed": false,
284
+ "internalType": "address",
285
+ "name": "oldWallet",
286
+ "type": "address"
287
+ },
319
288
  {
320
289
  "indexed": false,
321
290
  "internalType": "address",
@@ -354,10 +323,16 @@
354
323
  {
355
324
  "anonymous": false,
356
325
  "inputs": [
326
+ {
327
+ "indexed": false,
328
+ "internalType": "address",
329
+ "name": "pool",
330
+ "type": "address"
331
+ },
357
332
  {
358
333
  "indexed": false,
359
334
  "internalType": "NftId",
360
- "name": "policyNftId",
335
+ "name": "applicationNftId",
361
336
  "type": "uint96"
362
337
  },
363
338
  {
@@ -365,20 +340,14 @@
365
340
  "internalType": "uint256",
366
341
  "name": "collateralizationAmount",
367
342
  "type": "uint256"
368
- },
369
- {
370
- "indexed": false,
371
- "internalType": "address",
372
- "name": "pool",
373
- "type": "address"
374
343
  }
375
344
  ],
376
- "name": "LogUnderwrittenByPool",
345
+ "name": "LogPoolVerifiedByPool",
377
346
  "type": "event"
378
347
  },
379
348
  {
380
349
  "inputs": [],
381
- "name": "CONTRACT_LOCATION_V1",
350
+ "name": "COMPONENT_LOCATION_V1",
382
351
  "outputs": [
383
352
  {
384
353
  "internalType": "bytes32",
@@ -428,6 +397,45 @@
428
397
  "stateMutability": "view",
429
398
  "type": "function"
430
399
  },
400
+ {
401
+ "inputs": [
402
+ {
403
+ "internalType": "NftId",
404
+ "name": "applicationNftId",
405
+ "type": "uint96"
406
+ },
407
+ {
408
+ "internalType": "bytes",
409
+ "name": "applicationData",
410
+ "type": "bytes"
411
+ },
412
+ {
413
+ "internalType": "NftId",
414
+ "name": "bundleNftId",
415
+ "type": "uint96"
416
+ },
417
+ {
418
+ "internalType": "bytes",
419
+ "name": "bundleFilter",
420
+ "type": "bytes"
421
+ },
422
+ {
423
+ "internalType": "uint256",
424
+ "name": "collateralizationAmount",
425
+ "type": "uint256"
426
+ }
427
+ ],
428
+ "name": "applicationMatchesBundle",
429
+ "outputs": [
430
+ {
431
+ "internalType": "bool",
432
+ "name": "isMatching",
433
+ "type": "bool"
434
+ }
435
+ ],
436
+ "stateMutability": "view",
437
+ "type": "function"
438
+ },
431
439
  {
432
440
  "inputs": [],
433
441
  "name": "authority",
@@ -441,14 +449,82 @@
441
449
  "stateMutability": "view",
442
450
  "type": "function"
443
451
  },
452
+ {
453
+ "inputs": [
454
+ {
455
+ "internalType": "NftId",
456
+ "name": "bundleNftId",
457
+ "type": "uint96"
458
+ }
459
+ ],
460
+ "name": "close",
461
+ "outputs": [],
462
+ "stateMutability": "nonpayable",
463
+ "type": "function"
464
+ },
465
+ {
466
+ "inputs": [
467
+ {
468
+ "internalType": "NftId",
469
+ "name": "bundleNftId",
470
+ "type": "uint96"
471
+ },
472
+ {
473
+ "internalType": "Seconds",
474
+ "name": "lifetimeExtension",
475
+ "type": "uint40"
476
+ }
477
+ ],
478
+ "name": "extend",
479
+ "outputs": [],
480
+ "stateMutability": "nonpayable",
481
+ "type": "function"
482
+ },
444
483
  {
445
484
  "inputs": [],
446
- "name": "getCollateralizationLevel",
485
+ "name": "getComponentInfo",
447
486
  "outputs": [
448
487
  {
449
- "internalType": "UFixed",
450
- "name": "collateralizationLevel",
451
- "type": "uint256"
488
+ "components": [
489
+ {
490
+ "internalType": "string",
491
+ "name": "name",
492
+ "type": "string"
493
+ },
494
+ {
495
+ "internalType": "contract IERC20Metadata",
496
+ "name": "token",
497
+ "type": "address"
498
+ },
499
+ {
500
+ "internalType": "contract TokenHandler",
501
+ "name": "tokenHandler",
502
+ "type": "address"
503
+ },
504
+ {
505
+ "internalType": "address",
506
+ "name": "wallet",
507
+ "type": "address"
508
+ },
509
+ {
510
+ "internalType": "Amount",
511
+ "name": "balanceAmount",
512
+ "type": "uint96"
513
+ },
514
+ {
515
+ "internalType": "Amount",
516
+ "name": "feeAmount",
517
+ "type": "uint96"
518
+ },
519
+ {
520
+ "internalType": "bytes",
521
+ "name": "data",
522
+ "type": "bytes"
523
+ }
524
+ ],
525
+ "internalType": "struct IComponents.ComponentInfo",
526
+ "name": "info",
527
+ "type": "tuple"
452
528
  }
453
529
  ],
454
530
  "stateMutability": "view",
@@ -523,19 +599,6 @@
523
599
  "stateMutability": "view",
524
600
  "type": "function"
525
601
  },
526
- {
527
- "inputs": [],
528
- "name": "getInitialOwner",
529
- "outputs": [
530
- {
531
- "internalType": "address",
532
- "name": "",
533
- "type": "address"
534
- }
535
- ],
536
- "stateMutability": "view",
537
- "type": "function"
538
- },
539
602
  {
540
603
  "inputs": [],
541
604
  "name": "getInstance",
@@ -549,32 +612,6 @@
549
612
  "stateMutability": "view",
550
613
  "type": "function"
551
614
  },
552
- {
553
- "inputs": [],
554
- "name": "getInstanceReader",
555
- "outputs": [
556
- {
557
- "internalType": "contract InstanceReader",
558
- "name": "reader",
559
- "type": "address"
560
- }
561
- ],
562
- "stateMutability": "view",
563
- "type": "function"
564
- },
565
- {
566
- "inputs": [],
567
- "name": "getInstanceService",
568
- "outputs": [
569
- {
570
- "internalType": "contract IInstanceService",
571
- "name": "",
572
- "type": "address"
573
- }
574
- ],
575
- "stateMutability": "view",
576
- "type": "function"
577
- },
578
615
  {
579
616
  "inputs": [],
580
617
  "name": "getName",
@@ -616,72 +653,7 @@
616
653
  },
617
654
  {
618
655
  "inputs": [],
619
- "name": "getProductNftId",
620
- "outputs": [
621
- {
622
- "internalType": "NftId",
623
- "name": "productNftId",
624
- "type": "uint96"
625
- }
626
- ],
627
- "stateMutability": "view",
628
- "type": "function"
629
- },
630
- {
631
- "inputs": [],
632
- "name": "getProductService",
633
- "outputs": [
634
- {
635
- "internalType": "contract IProductService",
636
- "name": "",
637
- "type": "address"
638
- }
639
- ],
640
- "stateMutability": "view",
641
- "type": "function"
642
- },
643
- {
644
- "inputs": [],
645
- "name": "getRegistry",
646
- "outputs": [
647
- {
648
- "internalType": "contract IRegistry",
649
- "name": "",
650
- "type": "address"
651
- }
652
- ],
653
- "stateMutability": "view",
654
- "type": "function"
655
- },
656
- {
657
- "inputs": [],
658
- "name": "getRegistryAddress",
659
- "outputs": [
660
- {
661
- "internalType": "address",
662
- "name": "",
663
- "type": "address"
664
- }
665
- ],
666
- "stateMutability": "view",
667
- "type": "function"
668
- },
669
- {
670
- "inputs": [],
671
- "name": "getRetentionLevel",
672
- "outputs": [
673
- {
674
- "internalType": "UFixed",
675
- "name": "retentionLevel",
676
- "type": "uint256"
677
- }
678
- ],
679
- "stateMutability": "view",
680
- "type": "function"
681
- },
682
- {
683
- "inputs": [],
684
- "name": "getSetupInfo",
656
+ "name": "getPoolInfo",
685
657
  "outputs": [
686
658
  {
687
659
  "components": [
@@ -691,9 +663,24 @@
691
663
  "type": "uint96"
692
664
  },
693
665
  {
694
- "internalType": "contract TokenHandler",
695
- "name": "tokenHandler",
696
- "type": "address"
666
+ "internalType": "RoleId",
667
+ "name": "bundleOwnerRole",
668
+ "type": "uint64"
669
+ },
670
+ {
671
+ "internalType": "uint256",
672
+ "name": "maxCapitalAmount",
673
+ "type": "uint256"
674
+ },
675
+ {
676
+ "internalType": "uint256",
677
+ "name": "balanceAmount",
678
+ "type": "uint256"
679
+ },
680
+ {
681
+ "internalType": "uint256",
682
+ "name": "feeAmount",
683
+ "type": "uint256"
697
684
  },
698
685
  {
699
686
  "internalType": "bool",
@@ -770,21 +757,55 @@
770
757
  "internalType": "struct Fee",
771
758
  "name": "performanceFee",
772
759
  "type": "tuple"
773
- },
774
- {
775
- "internalType": "address",
776
- "name": "wallet",
777
- "type": "address"
778
760
  }
779
761
  ],
780
- "internalType": "struct ISetup.PoolSetupInfo",
781
- "name": "setupInfo",
762
+ "internalType": "struct IComponents.PoolInfo",
763
+ "name": "poolInfo",
782
764
  "type": "tuple"
783
765
  }
784
766
  ],
785
767
  "stateMutability": "view",
786
768
  "type": "function"
787
769
  },
770
+ {
771
+ "inputs": [],
772
+ "name": "getProductNftId",
773
+ "outputs": [
774
+ {
775
+ "internalType": "NftId",
776
+ "name": "productNftId",
777
+ "type": "uint96"
778
+ }
779
+ ],
780
+ "stateMutability": "view",
781
+ "type": "function"
782
+ },
783
+ {
784
+ "inputs": [],
785
+ "name": "getRegistry",
786
+ "outputs": [
787
+ {
788
+ "internalType": "contract IRegistry",
789
+ "name": "",
790
+ "type": "address"
791
+ }
792
+ ],
793
+ "stateMutability": "view",
794
+ "type": "function"
795
+ },
796
+ {
797
+ "inputs": [],
798
+ "name": "getRegistryAddress",
799
+ "outputs": [
800
+ {
801
+ "internalType": "address",
802
+ "name": "",
803
+ "type": "address"
804
+ }
805
+ ],
806
+ "stateMutability": "view",
807
+ "type": "function"
808
+ },
788
809
  {
789
810
  "inputs": [],
790
811
  "name": "getToken",
@@ -850,7 +871,7 @@
850
871
  },
851
872
  {
852
873
  "internalType": "bytes",
853
- "name": "data",
874
+ "name": "registryData",
854
875
  "type": "bytes"
855
876
  }
856
877
  ],
@@ -884,19 +905,6 @@
884
905
  "stateMutability": "nonpayable",
885
906
  "type": "function"
886
907
  },
887
- {
888
- "inputs": [
889
- {
890
- "internalType": "address",
891
- "name": "initialOwner",
892
- "type": "address"
893
- }
894
- ],
895
- "name": "initializeOwner",
896
- "outputs": [],
897
- "stateMutability": "nonpayable",
898
- "type": "function"
899
- },
900
908
  {
901
909
  "inputs": [
902
910
  {
@@ -924,26 +932,6 @@
924
932
  "name": "isInterceptingNftTransfers",
925
933
  "type": "bool"
926
934
  },
927
- {
928
- "internalType": "bool",
929
- "name": "isExternallyManaging",
930
- "type": "bool"
931
- },
932
- {
933
- "internalType": "bool",
934
- "name": "isVerifying",
935
- "type": "bool"
936
- },
937
- {
938
- "internalType": "UFixed",
939
- "name": "collateralizationLevel",
940
- "type": "uint256"
941
- },
942
- {
943
- "internalType": "UFixed",
944
- "name": "retentionLevel",
945
- "type": "uint256"
946
- },
947
935
  {
948
936
  "internalType": "address",
949
937
  "name": "initialOwner",
@@ -951,7 +939,7 @@
951
939
  },
952
940
  {
953
941
  "internalType": "bytes",
954
- "name": "data",
942
+ "name": "registryData",
955
943
  "type": "bytes"
956
944
  }
957
945
  ],
@@ -989,7 +977,7 @@
989
977
  },
990
978
  {
991
979
  "internalType": "bytes",
992
- "name": "data",
980
+ "name": "registryData",
993
981
  "type": "bytes"
994
982
  }
995
983
  ],
@@ -1024,32 +1012,6 @@
1024
1012
  "stateMutability": "view",
1025
1013
  "type": "function"
1026
1014
  },
1027
- {
1028
- "inputs": [],
1029
- "name": "isExternallyManaged",
1030
- "outputs": [
1031
- {
1032
- "internalType": "bool",
1033
- "name": "",
1034
- "type": "bool"
1035
- }
1036
- ],
1037
- "stateMutability": "view",
1038
- "type": "function"
1039
- },
1040
- {
1041
- "inputs": [],
1042
- "name": "isInterceptingBundleTransfers",
1043
- "outputs": [
1044
- {
1045
- "internalType": "bool",
1046
- "name": "",
1047
- "type": "bool"
1048
- }
1049
- ],
1050
- "stateMutability": "view",
1051
- "type": "function"
1052
- },
1053
1015
  {
1054
1016
  "inputs": [],
1055
1017
  "name": "isNftInterceptor",
@@ -1063,19 +1025,6 @@
1063
1025
  "stateMutability": "view",
1064
1026
  "type": "function"
1065
1027
  },
1066
- {
1067
- "inputs": [],
1068
- "name": "isVerifyingApplications",
1069
- "outputs": [
1070
- {
1071
- "internalType": "bool",
1072
- "name": "isConfirmingApplication",
1073
- "type": "bool"
1074
- }
1075
- ],
1076
- "stateMutability": "view",
1077
- "type": "function"
1078
- },
1079
1028
  {
1080
1029
  "inputs": [],
1081
1030
  "name": "linkToRegisteredNftId",
@@ -1105,11 +1054,6 @@
1105
1054
  },
1106
1055
  {
1107
1056
  "inputs": [
1108
- {
1109
- "internalType": "address",
1110
- "name": "from",
1111
- "type": "address"
1112
- },
1113
1057
  {
1114
1058
  "internalType": "address",
1115
1059
  "name": "to",
@@ -1121,7 +1065,7 @@
1121
1065
  "type": "uint256"
1122
1066
  }
1123
1067
  ],
1124
- "name": "nftTransferFrom",
1068
+ "name": "nftMint",
1125
1069
  "outputs": [],
1126
1070
  "stateMutability": "nonpayable",
1127
1071
  "type": "function"
@@ -1129,25 +1073,24 @@
1129
1073
  {
1130
1074
  "inputs": [
1131
1075
  {
1132
- "internalType": "bytes",
1133
- "name": "",
1134
- "type": "bytes"
1076
+ "internalType": "address",
1077
+ "name": "from",
1078
+ "type": "address"
1135
1079
  },
1136
1080
  {
1137
- "internalType": "bytes",
1138
- "name": "",
1139
- "type": "bytes"
1140
- }
1141
- ],
1142
- "name": "policyMatchesBundle",
1143
- "outputs": [
1081
+ "internalType": "address",
1082
+ "name": "to",
1083
+ "type": "address"
1084
+ },
1144
1085
  {
1145
- "internalType": "bool",
1146
- "name": "isMatching",
1147
- "type": "bool"
1086
+ "internalType": "uint256",
1087
+ "name": "tokenId",
1088
+ "type": "uint256"
1148
1089
  }
1149
1090
  ],
1150
- "stateMutability": "pure",
1091
+ "name": "nftTransferFrom",
1092
+ "outputs": [],
1093
+ "stateMutability": "nonpayable",
1151
1094
  "type": "function"
1152
1095
  },
1153
1096
  {
@@ -1206,6 +1149,19 @@
1206
1149
  "stateMutability": "nonpayable",
1207
1150
  "type": "function"
1208
1151
  },
1152
+ {
1153
+ "inputs": [
1154
+ {
1155
+ "internalType": "RoleId",
1156
+ "name": "bundleOwnerRole",
1157
+ "type": "uint64"
1158
+ }
1159
+ ],
1160
+ "name": "setBundleOwnerRole",
1161
+ "outputs": [],
1162
+ "stateMutability": "nonpayable",
1163
+ "type": "function"
1164
+ },
1209
1165
  {
1210
1166
  "inputs": [
1211
1167
  {
@@ -1265,6 +1221,19 @@
1265
1221
  "stateMutability": "nonpayable",
1266
1222
  "type": "function"
1267
1223
  },
1224
+ {
1225
+ "inputs": [
1226
+ {
1227
+ "internalType": "uint256",
1228
+ "name": "maxCapitalAmount",
1229
+ "type": "uint256"
1230
+ }
1231
+ ],
1232
+ "name": "setMaxCapitalAmount",
1233
+ "outputs": [],
1234
+ "stateMutability": "nonpayable",
1235
+ "type": "function"
1236
+ },
1268
1237
  {
1269
1238
  "inputs": [
1270
1239
  {
@@ -1291,6 +1260,24 @@
1291
1260
  "stateMutability": "nonpayable",
1292
1261
  "type": "function"
1293
1262
  },
1263
+ {
1264
+ "inputs": [
1265
+ {
1266
+ "internalType": "NftId",
1267
+ "name": "bundleNftId",
1268
+ "type": "uint96"
1269
+ },
1270
+ {
1271
+ "internalType": "uint256",
1272
+ "name": "amount",
1273
+ "type": "uint256"
1274
+ }
1275
+ ],
1276
+ "name": "stake",
1277
+ "outputs": [],
1278
+ "stateMutability": "nonpayable",
1279
+ "type": "function"
1280
+ },
1294
1281
  {
1295
1282
  "inputs": [
1296
1283
  {
@@ -1330,6 +1317,24 @@
1330
1317
  "stateMutability": "nonpayable",
1331
1318
  "type": "function"
1332
1319
  },
1320
+ {
1321
+ "inputs": [
1322
+ {
1323
+ "internalType": "NftId",
1324
+ "name": "bundleNftId",
1325
+ "type": "uint96"
1326
+ },
1327
+ {
1328
+ "internalType": "uint256",
1329
+ "name": "amount",
1330
+ "type": "uint256"
1331
+ }
1332
+ ],
1333
+ "name": "unstake",
1334
+ "outputs": [],
1335
+ "stateMutability": "nonpayable",
1336
+ "type": "function"
1337
+ },
1333
1338
  {
1334
1339
  "inputs": [
1335
1340
  {
@@ -1342,6 +1347,11 @@
1342
1347
  "name": "applicationData",
1343
1348
  "type": "bytes"
1344
1349
  },
1350
+ {
1351
+ "internalType": "NftId",
1352
+ "name": "bundleNftId",
1353
+ "type": "uint96"
1354
+ },
1345
1355
  {
1346
1356
  "internalType": "bytes",
1347
1357
  "name": "bundleFilter",