@etherisc/gif-next 0.0.2-d5522f6-712 → 0.0.2-d5fac82-078

Sign up to get free protection for your applications and to get access to all the features.
Files changed (536) hide show
  1. package/README.md +10 -14
  2. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +4 -0
  3. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +1395 -0
  4. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +4 -0
  5. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +1575 -0
  6. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
  7. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +851 -0
  8. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
  9. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +1000 -0
  10. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +4 -0
  11. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +840 -0
  12. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +1 -1
  13. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +73 -83
  14. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  15. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +278 -1362
  16. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  17. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +264 -218
  18. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  19. package/artifacts/contracts/instance/Instance.sol/Instance.json +459 -2530
  20. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
  21. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +746 -0
  22. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +4 -0
  23. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +188 -0
  24. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  25. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +432 -280
  26. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  27. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +415 -380
  28. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  29. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +362 -95
  30. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
  31. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +2847 -0
  32. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +4 -0
  33. package/artifacts/contracts/instance/{Cloneable.sol → base/Cloneable.sol}/Cloneable.json +6 -1
  34. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  35. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.json +49 -0
  36. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  37. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  38. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +93 -14
  39. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  40. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +38 -13
  41. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +4 -0
  42. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +256 -0
  43. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  44. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +13 -159
  45. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  46. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
  47. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.json +10 -0
  48. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  49. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  50. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  51. package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +1 -1
  52. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +1 -1
  53. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +4 -0
  54. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +1307 -0
  55. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
  56. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +767 -0
  57. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +4 -0
  58. package/artifacts/contracts/{instance/service → pool}/IBundleService.sol/IBundleService.json +291 -276
  59. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +4 -0
  60. package/artifacts/contracts/{components/Pool.sol/Pool.json → pool/IPoolComponent.sol/IPoolComponent.json} +448 -195
  61. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +4 -0
  62. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +1077 -0
  63. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +4 -0
  64. package/artifacts/contracts/pool/Pool.sol/Pool.json +1426 -0
  65. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +4 -0
  66. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +1641 -0
  67. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
  68. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +779 -0
  69. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  70. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +937 -0
  71. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  72. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +719 -0
  73. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +4 -0
  74. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +1405 -0
  75. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  76. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +819 -0
  77. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  78. package/artifacts/contracts/{instance/service/IComponentOwnerService.sol/IComponentOwnerService.json → product/IApplicationService.sol/IApplicationService.json} +218 -191
  79. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +4 -0
  80. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +753 -0
  81. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +4 -0
  82. package/artifacts/contracts/{instance/service → product}/IPolicyService.sol/IPolicyService.json +182 -302
  83. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +4 -0
  84. package/artifacts/contracts/{instance/service/IPoolService.sol/IPoolService.json → product/IPricingService.sol/IPricingService.json} +241 -230
  85. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +4 -0
  86. package/artifacts/contracts/{components/Product.sol/Product.json → product/IProductComponent.sol/IProductComponent.json} +254 -168
  87. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +4 -0
  88. package/artifacts/contracts/{instance/service → product}/IProductService.sol/IProductService.json +72 -166
  89. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +4 -0
  90. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +1300 -0
  91. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
  92. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +811 -0
  93. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +4 -0
  94. package/artifacts/contracts/product/PricingService.sol/PricingService.json +1023 -0
  95. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
  96. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +759 -0
  97. package/artifacts/contracts/product/Product.sol/Product.dbg.json +4 -0
  98. package/artifacts/contracts/product/Product.sol/Product.json +1217 -0
  99. package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +4 -0
  100. package/artifacts/contracts/product/ProductService.sol/ProductService.json +883 -0
  101. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +4 -0
  102. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +711 -0
  103. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  104. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +15 -2
  105. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  106. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +209 -17
  107. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  108. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +225 -230
  109. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  110. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +18 -0
  111. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  112. package/artifacts/contracts/registry/Registry.sol/Registry.json +235 -43
  113. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +4 -0
  114. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +305 -0
  115. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  116. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +341 -254
  117. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  118. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +351 -84
  119. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +1 -1
  120. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +540 -83
  121. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  122. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +148 -62
  123. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.dbg.json +4 -0
  124. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.json +1193 -0
  125. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.dbg.json +4 -0
  126. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.json +1715 -0
  127. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +4 -0
  128. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +1728 -0
  129. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +4 -0
  130. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +1747 -0
  131. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +4 -0
  132. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +1765 -0
  133. package/artifacts/contracts/shared/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +4 -0
  134. package/artifacts/contracts/shared/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +1206 -0
  135. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +4 -0
  136. package/artifacts/contracts/shared/Component.sol/Component.json +892 -0
  137. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +4 -0
  138. package/artifacts/contracts/{components/BaseComponent.sol/BaseComponent.json → shared/ComponentService.sol/ComponentService.json} +294 -126
  139. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  140. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +41 -3
  141. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.dbg.json +4 -0
  142. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.json +1562 -0
  143. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.dbg.json +4 -0
  144. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.json +1594 -0
  145. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +4 -0
  146. package/artifacts/contracts/{components/Distribution.sol/Distribution.json → shared/IComponent.sol/IComponent.json} +173 -212
  147. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  148. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +27 -29
  149. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +4 -0
  150. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +189 -0
  151. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  152. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +8 -34
  153. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +4 -0
  154. package/artifacts/contracts/{experiment/inheritance/IA.sol/ISharedA.json → shared/IRegistryLinked.sol/IRegistryLinked.json} +15 -17
  155. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  156. package/artifacts/contracts/shared/IService.sol/IService.json +71 -165
  157. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  158. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +2 -152
  159. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  160. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +120 -47
  161. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +4 -0
  162. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +302 -0
  163. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  164. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +342 -61
  165. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  166. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +137 -53
  167. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +4 -0
  168. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +71 -0
  169. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  170. package/artifacts/contracts/shared/Service.sol/Service.json +189 -150
  171. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  172. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +24 -6
  173. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  174. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +2 -2
  175. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  176. package/artifacts/contracts/shared/Versionable.sol/Versionable.json +2 -152
  177. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +4 -0
  178. package/artifacts/contracts/{instance/base/ComponentServiceBase.sol/ComponentServiceBase.json → staking/IStakingService.sol/IStakingService.json} +198 -207
  179. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +4 -0
  180. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +786 -0
  181. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +4 -0
  182. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +699 -0
  183. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +4 -0
  184. package/artifacts/contracts/{types → type}/AddressSet.sol/LibAddressSet.json +3 -3
  185. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +4 -0
  186. package/artifacts/contracts/type/Amount.sol/AmountLib.json +281 -0
  187. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +4 -0
  188. package/artifacts/contracts/{types → type}/Blocknumber.sol/BlocknumberLib.json +3 -3
  189. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  190. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +179 -0
  191. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  192. package/artifacts/contracts/{types → type}/DistributorType.sol/DistributorTypeLib.json +5 -5
  193. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +4 -0
  194. package/artifacts/contracts/type/Fee.sol/FeeLib.json +312 -0
  195. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +4 -0
  196. package/artifacts/contracts/{types → type}/Key32.sol/Key32Lib.json +3 -3
  197. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +4 -0
  198. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +166 -0
  199. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +4 -0
  200. package/artifacts/contracts/{types → type}/NftIdSet.sol/LibNftIdSet.json +3 -3
  201. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +4 -0
  202. package/artifacts/contracts/{types → type}/ObjectType.sol/ObjectTypeLib.json +3 -3
  203. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  204. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +209 -0
  205. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +4 -0
  206. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +142 -0
  207. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +4 -0
  208. package/artifacts/contracts/{types → type}/RiskId.sol/RiskIdLib.json +5 -5
  209. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +4 -0
  210. package/artifacts/contracts/{types → type}/RoleId.sol/RoleIdLib.json +5 -5
  211. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +4 -0
  212. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +124 -0
  213. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +4 -0
  214. package/artifacts/contracts/{types → type}/StateId.sol/StateIdLib.json +3 -3
  215. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +4 -0
  216. package/artifacts/contracts/{types → type}/Timestamp.sol/TimestampLib.json +39 -8
  217. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +4 -0
  218. package/artifacts/contracts/{types → type}/UFixed.sol/MathLib.json +3 -3
  219. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +4 -0
  220. package/artifacts/contracts/{types → type}/UFixed.sol/UFixedLib.json +3 -3
  221. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +4 -0
  222. package/artifacts/contracts/{types → type}/Version.sol/VersionLib.json +3 -3
  223. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +4 -0
  224. package/artifacts/contracts/{types → type}/Version.sol/VersionPartLib.json +3 -3
  225. package/contracts/distribution/Distribution.sol +285 -0
  226. package/contracts/distribution/DistributionService.sol +351 -0
  227. package/contracts/distribution/DistributionServiceManager.sol +42 -0
  228. package/contracts/distribution/IDistributionComponent.sol +71 -0
  229. package/contracts/distribution/IDistributionService.sol +87 -0
  230. package/contracts/instance/BundleManager.sol +22 -25
  231. package/contracts/instance/IInstance.sol +56 -41
  232. package/contracts/instance/IInstanceService.sol +50 -17
  233. package/contracts/instance/Instance.sol +151 -197
  234. package/contracts/instance/InstanceAdmin.sol +354 -0
  235. package/contracts/instance/InstanceAuthorizationsLib.sol +320 -0
  236. package/contracts/instance/InstanceReader.sol +102 -49
  237. package/contracts/instance/InstanceService.sol +200 -247
  238. package/contracts/instance/InstanceServiceManager.sol +12 -22
  239. package/contracts/instance/InstanceStore.sol +211 -0
  240. package/contracts/instance/{Cloneable.sol → base/Cloneable.sol} +8 -3
  241. package/contracts/instance/base/IKeyValueStore.sol +14 -10
  242. package/contracts/instance/base/ILifecycle.sol +3 -3
  243. package/contracts/instance/base/KeyValueStore.sol +44 -47
  244. package/contracts/instance/base/Lifecycle.sol +28 -7
  245. package/contracts/instance/{ObjectManager.sol → base/ObjectManager.sol} +16 -35
  246. package/contracts/instance/module/IAccess.sol +17 -21
  247. package/contracts/instance/module/IBundle.sol +11 -8
  248. package/contracts/instance/module/IComponents.sol +41 -0
  249. package/contracts/instance/module/IDistribution.sol +7 -4
  250. package/contracts/instance/module/IPolicy.sol +50 -17
  251. package/contracts/instance/module/IRisk.sol +1 -1
  252. package/contracts/instance/module/ISetup.sol +9 -22
  253. package/contracts/instance/module/ITreasury.sol +2 -2
  254. package/contracts/pool/BundleService.sol +384 -0
  255. package/contracts/pool/BundleServiceManager.sol +42 -0
  256. package/contracts/pool/IBundleService.sol +118 -0
  257. package/contracts/pool/IPoolComponent.sol +114 -0
  258. package/contracts/pool/IPoolService.sol +114 -0
  259. package/contracts/pool/Pool.sol +302 -0
  260. package/contracts/pool/PoolService.sol +404 -0
  261. package/contracts/pool/PoolServiceManager.sol +42 -0
  262. package/contracts/product/ApplicationService.sol +187 -0
  263. package/contracts/product/ApplicationServiceManager.sol +38 -0
  264. package/contracts/product/ClaimService.sol +443 -0
  265. package/contracts/product/ClaimServiceManager.sol +38 -0
  266. package/contracts/product/IApplicationService.sol +62 -0
  267. package/contracts/product/IClaimService.sol +93 -0
  268. package/contracts/product/IPolicyService.sol +80 -0
  269. package/contracts/product/IPricingService.sol +37 -0
  270. package/contracts/product/IProductComponent.sol +41 -0
  271. package/contracts/{instance/service → product}/IProductService.sol +10 -10
  272. package/contracts/product/PolicyService.sol +378 -0
  273. package/contracts/product/PolicyServiceManager.sol +42 -0
  274. package/contracts/product/PricingService.sol +276 -0
  275. package/contracts/product/PricingServiceManager.sol +42 -0
  276. package/contracts/product/Product.sol +379 -0
  277. package/contracts/product/ProductService.sol +212 -0
  278. package/contracts/product/ProductServiceManager.sol +42 -0
  279. package/contracts/registry/ChainNft.sol +8 -0
  280. package/contracts/registry/IRegistry.sol +42 -21
  281. package/contracts/registry/IRegistryService.sol +42 -41
  282. package/contracts/registry/ITransferInterceptor.sol +1 -0
  283. package/contracts/registry/Registry.sol +165 -96
  284. package/contracts/registry/RegistryAdmin.sol +143 -0
  285. package/contracts/registry/RegistryService.sol +84 -171
  286. package/contracts/registry/RegistryServiceManager.sol +22 -24
  287. package/contracts/registry/ReleaseManager.sol +317 -202
  288. package/contracts/registry/TokenRegistry.sol +23 -15
  289. package/contracts/shared/AccessManagerCustom.sol +736 -0
  290. package/contracts/shared/AccessManagerExtended.sol +469 -0
  291. package/contracts/shared/AccessManagerExtendedInitializeable.sol +13 -0
  292. package/contracts/shared/AccessManagerExtendedWithDisable.sol +125 -0
  293. package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +14 -0
  294. package/contracts/shared/AccessManagerUpgradeableInitializeable.sol +13 -0
  295. package/contracts/shared/Component.sol +271 -0
  296. package/contracts/shared/ComponentService.sol +141 -0
  297. package/contracts/shared/ERC165.sol +14 -12
  298. package/contracts/shared/IAccessManagerExtended.sol +74 -0
  299. package/contracts/shared/IAccessManagerExtendedWithDisable.sol +17 -0
  300. package/contracts/shared/IComponent.sol +90 -0
  301. package/contracts/shared/INftOwnable.sol +12 -11
  302. package/contracts/shared/IPolicyHolder.sol +40 -0
  303. package/contracts/shared/IRegisterable.sol +4 -6
  304. package/contracts/shared/IRegistryLinked.sol +11 -0
  305. package/contracts/shared/IService.sol +6 -4
  306. package/contracts/shared/IVersionable.sol +5 -48
  307. package/contracts/shared/NftOwnable.sol +68 -85
  308. package/contracts/shared/PolicyHolder.sol +94 -0
  309. package/contracts/shared/ProxyManager.sol +131 -25
  310. package/contracts/shared/Registerable.sol +26 -41
  311. package/contracts/shared/RegistryLinked.sol +43 -0
  312. package/contracts/shared/Service.sol +37 -23
  313. package/contracts/shared/TokenHandler.sol +14 -6
  314. package/contracts/shared/Versionable.sol +4 -92
  315. package/contracts/staking/IStakingService.sol +102 -0
  316. package/contracts/staking/StakingService.sol +169 -0
  317. package/contracts/staking/StakingServiceManager.sol +40 -0
  318. package/contracts/type/Amount.sol +109 -0
  319. package/contracts/{types → type}/Blocknumber.sol +1 -0
  320. package/contracts/type/ClaimId.sol +75 -0
  321. package/contracts/{types → type}/DistributorType.sol +2 -2
  322. package/contracts/{types → type}/Fee.sol +17 -8
  323. package/contracts/{types → type}/NftId.sol +8 -0
  324. package/contracts/{types → type}/NftIdSet.sol +1 -1
  325. package/contracts/{types → type}/ObjectType.sol +17 -7
  326. package/contracts/type/PayoutId.sol +82 -0
  327. package/contracts/{types → type}/Referral.sol +4 -0
  328. package/contracts/type/RoleId.sol +139 -0
  329. package/contracts/type/Seconds.sol +54 -0
  330. package/contracts/{types → type}/StateId.sol +7 -2
  331. package/contracts/{types → type}/Timestamp.sol +18 -13
  332. package/contracts/{types → type}/UFixed.sol +1 -0
  333. package/contracts/{types → type}/Version.sol +1 -0
  334. package/package.json +3 -3
  335. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.dbg.json +0 -4
  336. package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +0 -4
  337. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.dbg.json +0 -4
  338. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.json +0 -397
  339. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +0 -4
  340. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.json +0 -152
  341. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +0 -4
  342. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +0 -275
  343. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +0 -4
  344. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +0 -157
  345. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +0 -4
  346. package/artifacts/contracts/components/Product.sol/Product.dbg.json +0 -4
  347. package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.dbg.json +0 -4
  348. package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.json +0 -66
  349. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.dbg.json +0 -4
  350. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.json +0 -24
  351. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.dbg.json +0 -4
  352. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.json +0 -42
  353. package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +0 -4
  354. package/artifacts/contracts/experiment/errors/Require.sol/Require.json +0 -105
  355. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +0 -4
  356. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.json +0 -105
  357. package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +0 -4
  358. package/artifacts/contracts/experiment/inheritance/A.sol/A.json +0 -128
  359. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +0 -4
  360. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.json +0 -42
  361. package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +0 -4
  362. package/artifacts/contracts/experiment/inheritance/B.sol/B.json +0 -76
  363. package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +0 -4
  364. package/artifacts/contracts/experiment/inheritance/C.sol/C.json +0 -89
  365. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +0 -4
  366. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.json +0 -128
  367. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +0 -4
  368. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +0 -4
  369. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.json +0 -50
  370. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +0 -4
  371. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.json +0 -63
  372. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +0 -4
  373. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +0 -59
  374. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +0 -4
  375. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.json +0 -124
  376. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +0 -4
  377. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.json +0 -74
  378. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +0 -4
  379. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +0 -124
  380. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +0 -4
  381. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +0 -207
  382. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +0 -4
  383. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +0 -10
  384. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +0 -4
  385. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.json +0 -10
  386. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +0 -4
  387. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +0 -1206
  388. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +0 -4
  389. package/artifacts/contracts/instance/IInstanceBase.sol/IInstanceBase.dbg.json +0 -4
  390. package/artifacts/contracts/instance/IInstanceBase.sol/IInstanceBase.json +0 -448
  391. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +0 -4
  392. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +0 -1047
  393. package/artifacts/contracts/instance/InstanceBase.sol/InstanceBase.dbg.json +0 -4
  394. package/artifacts/contracts/instance/InstanceBase.sol/InstanceBase.json +0 -763
  395. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +0 -4
  396. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.json +0 -285
  397. package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.dbg.json +0 -4
  398. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.dbg.json +0 -4
  399. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.json +0 -113
  400. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +0 -4
  401. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +0 -1031
  402. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +0 -4
  403. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +0 -436
  404. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.dbg.json +0 -4
  405. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.json +0 -814
  406. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +0 -4
  407. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +0 -693
  408. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +0 -4
  409. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +0 -420
  410. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +0 -4
  411. package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.dbg.json +0 -4
  412. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +0 -4
  413. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.json +0 -446
  414. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +0 -4
  415. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +0 -4
  416. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +0 -4
  417. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +0 -4
  418. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +0 -1156
  419. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +0 -4
  420. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +0 -492
  421. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +0 -4
  422. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +0 -727
  423. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +0 -4
  424. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +0 -420
  425. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +0 -4
  426. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +0 -777
  427. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
  428. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +0 -420
  429. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +0 -4
  430. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +0 -285
  431. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +0 -4
  432. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.json +0 -107
  433. package/artifacts/contracts/shared/RegisterableUpgradable.sol/RegisterableUpgradable.dbg.json +0 -4
  434. package/artifacts/contracts/shared/RegisterableUpgradable.sol/RegisterableUpgradable.json +0 -442
  435. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +0 -4
  436. package/artifacts/contracts/test/TestFee.sol/TestFee.json +0 -119
  437. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +0 -4
  438. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +0 -305
  439. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +0 -4
  440. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +0 -116
  441. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +0 -4
  442. package/artifacts/contracts/test/TestService.sol/TestService.json +0 -600
  443. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +0 -4
  444. package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +0 -376
  445. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +0 -4
  446. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +0 -218
  447. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +0 -4
  448. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +0 -286
  449. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +0 -4
  450. package/artifacts/contracts/test/Usdc.sol/USDC.json +0 -376
  451. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +0 -4
  452. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +0 -4
  453. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +0 -4
  454. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.json +0 -10
  455. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +0 -4
  456. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +0 -4
  457. package/artifacts/contracts/types/Fee.sol/FeeLib.json +0 -257
  458. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +0 -4
  459. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +0 -4
  460. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +0 -153
  461. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +0 -4
  462. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +0 -4
  463. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.json +0 -100
  464. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +0 -4
  465. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +0 -4
  466. package/artifacts/contracts/types/Referral.sol/ReferralLib.json +0 -123
  467. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +0 -4
  468. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +0 -4
  469. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +0 -4
  470. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +0 -4
  471. package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +0 -4
  472. package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +0 -4
  473. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +0 -4
  474. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +0 -4
  475. package/contracts/components/BaseComponent.sol +0 -159
  476. package/contracts/components/Distribution.sol +0 -164
  477. package/contracts/components/IBaseComponent.sol +0 -34
  478. package/contracts/components/IDistributionComponent.sol +0 -44
  479. package/contracts/components/IPoolComponent.sol +0 -66
  480. package/contracts/components/IProductComponent.sol +0 -35
  481. package/contracts/components/Pool.sol +0 -272
  482. package/contracts/components/Product.sol +0 -301
  483. package/contracts/experiment/cloning/Cloner.sol +0 -47
  484. package/contracts/experiment/errors/Require.sol +0 -38
  485. package/contracts/experiment/errors/Revert.sol +0 -44
  486. package/contracts/experiment/inheritance/A.sol +0 -53
  487. package/contracts/experiment/inheritance/B.sol +0 -28
  488. package/contracts/experiment/inheritance/C.sol +0 -34
  489. package/contracts/experiment/inheritance/IA.sol +0 -13
  490. package/contracts/experiment/inheritance/IB.sol +0 -10
  491. package/contracts/experiment/inheritance/IC.sol +0 -12
  492. package/contracts/experiment/statemachine/Dummy.sol +0 -27
  493. package/contracts/experiment/statemachine/ISM.sol +0 -25
  494. package/contracts/experiment/statemachine/SM.sol +0 -57
  495. package/contracts/experiment/statemachine/SimpleStateMachine.sol +0 -31
  496. package/contracts/experiment/types/TypeA.sol +0 -47
  497. package/contracts/experiment/types/TypeB.sol +0 -29
  498. package/contracts/instance/AccessManagerUpgradeableInitializeable.sol +0 -23
  499. package/contracts/instance/IInstanceBase.sol +0 -26
  500. package/contracts/instance/InstanceAccessManager.sol +0 -303
  501. package/contracts/instance/InstanceBase.sol +0 -41
  502. package/contracts/instance/base/ComponentServiceBase.sol +0 -76
  503. package/contracts/instance/base/IInstanceBase.sol +0 -23
  504. package/contracts/instance/service/BundleService.sol +0 -294
  505. package/contracts/instance/service/BundleServiceManager.sol +0 -51
  506. package/contracts/instance/service/ComponentOwnerService.sol +0 -315
  507. package/contracts/instance/service/DistributionService.sol +0 -120
  508. package/contracts/instance/service/DistributionServiceManager.sol +0 -51
  509. package/contracts/instance/service/IBundleService.sol +0 -44
  510. package/contracts/instance/service/IComponentOwnerService.sol +0 -20
  511. package/contracts/instance/service/IDistributionService.sol +0 -12
  512. package/contracts/instance/service/IPolicyService.sol +0 -94
  513. package/contracts/instance/service/IPoolService.sol +0 -20
  514. package/contracts/instance/service/PolicyService.sol +0 -539
  515. package/contracts/instance/service/PolicyServiceManager.sol +0 -54
  516. package/contracts/instance/service/PoolService.sol +0 -145
  517. package/contracts/instance/service/PoolServiceManager.sol +0 -51
  518. package/contracts/instance/service/ProductService.sol +0 -213
  519. package/contracts/instance/service/ProductServiceManager.sol +0 -54
  520. package/contracts/registry/RegistryAccessManager.sol +0 -210
  521. package/contracts/shared/ContractDeployerLib.sol +0 -72
  522. package/contracts/shared/RegisterableUpgradable.sol +0 -16
  523. package/contracts/test/TestFee.sol +0 -25
  524. package/contracts/test/TestRegisterable.sol +0 -18
  525. package/contracts/test/TestRoleId.sol +0 -14
  526. package/contracts/test/TestService.sol +0 -25
  527. package/contracts/test/TestToken.sol +0 -26
  528. package/contracts/test/TestVersion.sol +0 -44
  529. package/contracts/test/TestVersionable.sol +0 -17
  530. package/contracts/test/Usdc.sol +0 -26
  531. package/contracts/types/ChainId.sol +0 -38
  532. package/contracts/types/NumberId.sol +0 -52
  533. package/contracts/types/RoleId.sol +0 -90
  534. /package/contracts/{types → type}/AddressSet.sol +0 -0
  535. /package/contracts/{types → type}/Key32.sol +0 -0
  536. /package/contracts/{types → type}/RiskId.sol +0 -0
@@ -6,795 +6,202 @@
6
6
  {
7
7
  "inputs": [
8
8
  {
9
- "internalType": "ObjectType",
10
- "name": "objectType",
11
- "type": "uint8"
12
- },
13
- {
14
- "internalType": "StateId",
15
- "name": "fromStateId",
16
- "type": "uint8"
17
- },
18
- {
19
- "internalType": "StateId",
20
- "name": "toStateId",
21
- "type": "uint8"
9
+ "internalType": "address",
10
+ "name": "authority",
11
+ "type": "address"
22
12
  }
23
13
  ],
24
- "name": "ErrorInvalidStateTransition",
14
+ "name": "AccessManagedInvalidAuthority",
25
15
  "type": "error"
26
16
  },
27
17
  {
28
18
  "inputs": [
29
19
  {
30
- "internalType": "NftId",
31
- "name": "nftId",
32
- "type": "uint96"
20
+ "internalType": "address",
21
+ "name": "caller",
22
+ "type": "address"
33
23
  },
34
24
  {
35
- "internalType": "ObjectType",
36
- "name": "objectType",
37
- "type": "uint8"
25
+ "internalType": "uint32",
26
+ "name": "delay",
27
+ "type": "uint32"
38
28
  }
39
29
  ],
40
- "name": "ErrorNoLifecycle",
30
+ "name": "AccessManagedRequiredDelay",
41
31
  "type": "error"
42
32
  },
43
33
  {
44
- "anonymous": false,
45
34
  "inputs": [
46
35
  {
47
- "indexed": false,
48
- "internalType": "ObjectType",
49
- "name": "objectType",
50
- "type": "uint8"
51
- },
52
- {
53
- "indexed": false,
54
- "internalType": "KeyId",
55
- "name": "keyId",
56
- "type": "bytes31"
57
- },
58
- {
59
- "indexed": false,
60
- "internalType": "StateId",
61
- "name": "state",
62
- "type": "uint8"
63
- },
64
- {
65
- "indexed": false,
66
36
  "internalType": "address",
67
- "name": "createdBy",
68
- "type": "address"
69
- },
70
- {
71
- "indexed": false,
72
- "internalType": "address",
73
- "name": "txOrigin",
37
+ "name": "caller",
74
38
  "type": "address"
75
39
  }
76
40
  ],
77
- "name": "LogInfoCreated",
78
- "type": "event"
41
+ "name": "AccessManagedUnauthorized",
42
+ "type": "error"
79
43
  },
80
44
  {
81
- "anonymous": false,
82
45
  "inputs": [
83
46
  {
84
- "indexed": false,
85
- "internalType": "ObjectType",
86
- "name": "objectType",
87
- "type": "uint8"
88
- },
89
- {
90
- "indexed": false,
91
- "internalType": "KeyId",
92
- "name": "keyId",
93
- "type": "bytes31"
94
- },
95
- {
96
- "indexed": false,
97
- "internalType": "StateId",
98
- "name": "state",
99
- "type": "uint8"
100
- },
101
- {
102
- "indexed": false,
103
47
  "internalType": "address",
104
- "name": "updatedBy",
48
+ "name": "instanceBundleManager",
105
49
  "type": "address"
106
- },
107
- {
108
- "indexed": false,
109
- "internalType": "address",
110
- "name": "txOrigin",
111
- "type": "address"
112
- },
113
- {
114
- "indexed": false,
115
- "internalType": "Blocknumber",
116
- "name": "lastUpdatedIn",
117
- "type": "uint32"
118
50
  }
119
51
  ],
120
- "name": "LogInfoUpdated",
121
- "type": "event"
52
+ "name": "ErrorInstanceBundleManagerAlreadySet",
53
+ "type": "error"
122
54
  },
123
55
  {
124
- "anonymous": false,
125
56
  "inputs": [
126
57
  {
127
- "indexed": false,
128
- "internalType": "ObjectType",
129
- "name": "objectType",
130
- "type": "uint8"
131
- },
132
- {
133
- "indexed": false,
134
- "internalType": "KeyId",
135
- "name": "keyId",
136
- "type": "bytes31"
137
- },
138
- {
139
- "indexed": false,
140
- "internalType": "StateId",
141
- "name": "stateOld",
142
- "type": "uint8"
143
- },
144
- {
145
- "indexed": false,
146
- "internalType": "StateId",
147
- "name": "stateNew",
148
- "type": "uint8"
149
- },
150
- {
151
- "indexed": false,
152
- "internalType": "address",
153
- "name": "updatedBy",
154
- "type": "address"
155
- },
156
- {
157
- "indexed": false,
158
58
  "internalType": "address",
159
- "name": "txOrigin",
59
+ "name": "instanceAuthority",
160
60
  "type": "address"
161
- },
162
- {
163
- "indexed": false,
164
- "internalType": "Blocknumber",
165
- "name": "lastUpdatedIn",
166
- "type": "uint32"
167
61
  }
168
62
  ],
169
- "name": "LogStateUpdated",
170
- "type": "event"
171
- },
172
- {
173
- "inputs": [
174
- {
175
- "internalType": "NftId",
176
- "name": "bundleNftId",
177
- "type": "uint96"
178
- },
179
- {
180
- "components": [
181
- {
182
- "internalType": "NftId",
183
- "name": "poolNftId",
184
- "type": "uint96"
185
- },
186
- {
187
- "components": [
188
- {
189
- "internalType": "UFixed",
190
- "name": "fractionalFee",
191
- "type": "uint256"
192
- },
193
- {
194
- "internalType": "uint256",
195
- "name": "fixedFee",
196
- "type": "uint256"
197
- }
198
- ],
199
- "internalType": "struct Fee",
200
- "name": "fee",
201
- "type": "tuple"
202
- },
203
- {
204
- "internalType": "bytes",
205
- "name": "filter",
206
- "type": "bytes"
207
- },
208
- {
209
- "internalType": "uint256",
210
- "name": "capitalAmount",
211
- "type": "uint256"
212
- },
213
- {
214
- "internalType": "uint256",
215
- "name": "lockedAmount",
216
- "type": "uint256"
217
- },
218
- {
219
- "internalType": "uint256",
220
- "name": "balanceAmount",
221
- "type": "uint256"
222
- },
223
- {
224
- "internalType": "uint256",
225
- "name": "lifetime",
226
- "type": "uint256"
227
- },
228
- {
229
- "internalType": "Timestamp",
230
- "name": "expiredAt",
231
- "type": "uint40"
232
- },
233
- {
234
- "internalType": "Timestamp",
235
- "name": "closedAt",
236
- "type": "uint40"
237
- }
238
- ],
239
- "internalType": "struct IBundle.BundleInfo",
240
- "name": "bundle",
241
- "type": "tuple"
242
- }
243
- ],
244
- "name": "createBundle",
245
- "outputs": [],
246
- "stateMutability": "nonpayable",
247
- "type": "function"
63
+ "name": "ErrorInstanceBundleManagerAuthorityMismatch",
64
+ "type": "error"
248
65
  },
249
66
  {
250
67
  "inputs": [
251
68
  {
252
- "internalType": "NftId",
253
- "name": "distributionNftId",
254
- "type": "uint96"
255
- },
256
- {
257
- "components": [
258
- {
259
- "internalType": "NftId",
260
- "name": "productNftId",
261
- "type": "uint96"
262
- },
263
- {
264
- "internalType": "contract TokenHandler",
265
- "name": "tokenHandler",
266
- "type": "address"
267
- },
268
- {
269
- "components": [
270
- {
271
- "internalType": "UFixed",
272
- "name": "fractionalFee",
273
- "type": "uint256"
274
- },
275
- {
276
- "internalType": "uint256",
277
- "name": "fixedFee",
278
- "type": "uint256"
279
- }
280
- ],
281
- "internalType": "struct Fee",
282
- "name": "distributionFee",
283
- "type": "tuple"
284
- },
285
- {
286
- "internalType": "bool",
287
- "name": "isIntercepting",
288
- "type": "bool"
289
- },
290
- {
291
- "internalType": "address",
292
- "name": "wallet",
293
- "type": "address"
294
- }
295
- ],
296
- "internalType": "struct ISetup.DistributionSetupInfo",
297
- "name": "setup",
298
- "type": "tuple"
69
+ "internalType": "address",
70
+ "name": "instance",
71
+ "type": "address"
299
72
  }
300
73
  ],
301
- "name": "createDistributionSetup",
302
- "outputs": [],
303
- "stateMutability": "nonpayable",
304
- "type": "function"
74
+ "name": "ErrorInstanceBundleManagerInstanceMismatch",
75
+ "type": "error"
305
76
  },
306
77
  {
307
78
  "inputs": [
308
79
  {
309
- "internalType": "NftId",
310
- "name": "policyNftId",
311
- "type": "uint96"
312
- },
313
- {
314
- "components": [
315
- {
316
- "internalType": "NftId",
317
- "name": "productNftId",
318
- "type": "uint96"
319
- },
320
- {
321
- "internalType": "NftId",
322
- "name": "bundleNftId",
323
- "type": "uint96"
324
- },
325
- {
326
- "internalType": "ReferralId",
327
- "name": "referralId",
328
- "type": "bytes8"
329
- },
330
- {
331
- "internalType": "RiskId",
332
- "name": "riskId",
333
- "type": "bytes8"
334
- },
335
- {
336
- "internalType": "uint256",
337
- "name": "sumInsuredAmount",
338
- "type": "uint256"
339
- },
340
- {
341
- "internalType": "uint256",
342
- "name": "premiumAmount",
343
- "type": "uint256"
344
- },
345
- {
346
- "internalType": "uint256",
347
- "name": "premiumPaidAmount",
348
- "type": "uint256"
349
- },
350
- {
351
- "internalType": "uint256",
352
- "name": "lifetime",
353
- "type": "uint256"
354
- },
355
- {
356
- "internalType": "bytes",
357
- "name": "applicationData",
358
- "type": "bytes"
359
- },
360
- {
361
- "internalType": "bytes",
362
- "name": "policyData",
363
- "type": "bytes"
364
- },
365
- {
366
- "internalType": "uint16",
367
- "name": "claimsCount",
368
- "type": "uint16"
369
- },
370
- {
371
- "internalType": "uint16",
372
- "name": "openClaimsCount",
373
- "type": "uint16"
374
- },
375
- {
376
- "internalType": "uint256",
377
- "name": "payoutAmount",
378
- "type": "uint256"
379
- },
380
- {
381
- "internalType": "Timestamp",
382
- "name": "activatedAt",
383
- "type": "uint40"
384
- },
385
- {
386
- "internalType": "Timestamp",
387
- "name": "expiredAt",
388
- "type": "uint40"
389
- },
390
- {
391
- "internalType": "Timestamp",
392
- "name": "closedAt",
393
- "type": "uint40"
394
- }
395
- ],
396
- "internalType": "struct IPolicy.PolicyInfo",
397
- "name": "policy",
398
- "type": "tuple"
80
+ "internalType": "address",
81
+ "name": "InstanceAdmin",
82
+ "type": "address"
399
83
  }
400
84
  ],
401
- "name": "createPolicy",
402
- "outputs": [],
403
- "stateMutability": "nonpayable",
404
- "type": "function"
85
+ "name": "ErrorInstanceInstanceAdminAlreadySet",
86
+ "type": "error"
405
87
  },
406
88
  {
407
89
  "inputs": [
408
90
  {
409
- "internalType": "NftId",
410
- "name": "poolNftId",
411
- "type": "uint96"
412
- },
413
- {
414
- "components": [
415
- {
416
- "internalType": "NftId",
417
- "name": "productNftId",
418
- "type": "uint96"
419
- },
420
- {
421
- "internalType": "contract TokenHandler",
422
- "name": "tokenHandler",
423
- "type": "address"
424
- },
425
- {
426
- "internalType": "UFixed",
427
- "name": "collateralizationLevel",
428
- "type": "uint256"
429
- },
430
- {
431
- "components": [
432
- {
433
- "internalType": "UFixed",
434
- "name": "fractionalFee",
435
- "type": "uint256"
436
- },
437
- {
438
- "internalType": "uint256",
439
- "name": "fixedFee",
440
- "type": "uint256"
441
- }
442
- ],
443
- "internalType": "struct Fee",
444
- "name": "poolFee",
445
- "type": "tuple"
446
- },
447
- {
448
- "components": [
449
- {
450
- "internalType": "UFixed",
451
- "name": "fractionalFee",
452
- "type": "uint256"
453
- },
454
- {
455
- "internalType": "uint256",
456
- "name": "fixedFee",
457
- "type": "uint256"
458
- }
459
- ],
460
- "internalType": "struct Fee",
461
- "name": "stakingFee",
462
- "type": "tuple"
463
- },
464
- {
465
- "components": [
466
- {
467
- "internalType": "UFixed",
468
- "name": "fractionalFee",
469
- "type": "uint256"
470
- },
471
- {
472
- "internalType": "uint256",
473
- "name": "fixedFee",
474
- "type": "uint256"
475
- }
476
- ],
477
- "internalType": "struct Fee",
478
- "name": "performanceFee",
479
- "type": "tuple"
480
- },
481
- {
482
- "internalType": "bool",
483
- "name": "isIntercepting",
484
- "type": "bool"
485
- },
486
- {
487
- "internalType": "bool",
488
- "name": "isConfirmingApplication",
489
- "type": "bool"
490
- },
491
- {
492
- "internalType": "address",
493
- "name": "wallet",
494
- "type": "address"
495
- }
496
- ],
497
- "internalType": "struct ISetup.PoolSetupInfo",
498
- "name": "setup",
499
- "type": "tuple"
91
+ "internalType": "address",
92
+ "name": "instanceAuthority",
93
+ "type": "address"
500
94
  }
501
95
  ],
502
- "name": "createPoolSetup",
503
- "outputs": [],
504
- "stateMutability": "nonpayable",
505
- "type": "function"
96
+ "name": "ErrorInstanceInstanceAdminAuthorityMismatch",
97
+ "type": "error"
506
98
  },
507
99
  {
508
- "inputs": [
509
- {
510
- "internalType": "NftId",
511
- "name": "productNftId",
512
- "type": "uint96"
513
- },
514
- {
515
- "components": [
516
- {
517
- "internalType": "contract IERC20Metadata",
518
- "name": "token",
519
- "type": "address"
520
- },
521
- {
522
- "internalType": "contract TokenHandler",
523
- "name": "tokenHandler",
524
- "type": "address"
525
- },
526
- {
527
- "internalType": "NftId",
528
- "name": "distributionNftId",
529
- "type": "uint96"
530
- },
531
- {
532
- "internalType": "NftId",
533
- "name": "poolNftId",
534
- "type": "uint96"
535
- },
536
- {
537
- "components": [
538
- {
539
- "internalType": "UFixed",
540
- "name": "fractionalFee",
541
- "type": "uint256"
542
- },
543
- {
544
- "internalType": "uint256",
545
- "name": "fixedFee",
546
- "type": "uint256"
547
- }
548
- ],
549
- "internalType": "struct Fee",
550
- "name": "distributionFee",
551
- "type": "tuple"
552
- },
553
- {
554
- "components": [
555
- {
556
- "internalType": "UFixed",
557
- "name": "fractionalFee",
558
- "type": "uint256"
559
- },
560
- {
561
- "internalType": "uint256",
562
- "name": "fixedFee",
563
- "type": "uint256"
564
- }
565
- ],
566
- "internalType": "struct Fee",
567
- "name": "productFee",
568
- "type": "tuple"
569
- },
570
- {
571
- "components": [
572
- {
573
- "internalType": "UFixed",
574
- "name": "fractionalFee",
575
- "type": "uint256"
576
- },
577
- {
578
- "internalType": "uint256",
579
- "name": "fixedFee",
580
- "type": "uint256"
581
- }
582
- ],
583
- "internalType": "struct Fee",
584
- "name": "processingFee",
585
- "type": "tuple"
586
- },
587
- {
588
- "components": [
589
- {
590
- "internalType": "UFixed",
591
- "name": "fractionalFee",
592
- "type": "uint256"
593
- },
594
- {
595
- "internalType": "uint256",
596
- "name": "fixedFee",
597
- "type": "uint256"
598
- }
599
- ],
600
- "internalType": "struct Fee",
601
- "name": "poolFee",
602
- "type": "tuple"
603
- },
604
- {
605
- "components": [
606
- {
607
- "internalType": "UFixed",
608
- "name": "fractionalFee",
609
- "type": "uint256"
610
- },
611
- {
612
- "internalType": "uint256",
613
- "name": "fixedFee",
614
- "type": "uint256"
615
- }
616
- ],
617
- "internalType": "struct Fee",
618
- "name": "stakingFee",
619
- "type": "tuple"
620
- },
621
- {
622
- "components": [
623
- {
624
- "internalType": "UFixed",
625
- "name": "fractionalFee",
626
- "type": "uint256"
627
- },
628
- {
629
- "internalType": "uint256",
630
- "name": "fixedFee",
631
- "type": "uint256"
632
- }
633
- ],
634
- "internalType": "struct Fee",
635
- "name": "performanceFee",
636
- "type": "tuple"
637
- },
638
- {
639
- "internalType": "bool",
640
- "name": "isIntercepting",
641
- "type": "bool"
642
- },
643
- {
644
- "internalType": "address",
645
- "name": "wallet",
646
- "type": "address"
647
- }
648
- ],
649
- "internalType": "struct ISetup.ProductSetupInfo",
650
- "name": "setup",
651
- "type": "tuple"
100
+ "inputs": [],
101
+ "name": "ErrorInstanceInstanceAdminZero",
102
+ "type": "error"
103
+ },
104
+ {
105
+ "inputs": [
106
+ {
107
+ "internalType": "address",
108
+ "name": "instanceAuthority",
109
+ "type": "address"
652
110
  }
653
111
  ],
654
- "name": "createProductSetup",
655
- "outputs": [],
656
- "stateMutability": "nonpayable",
657
- "type": "function"
112
+ "name": "ErrorInstanceInstanceReaderInstanceMismatch",
113
+ "type": "error"
658
114
  },
659
115
  {
660
116
  "inputs": [
661
117
  {
662
- "internalType": "RiskId",
663
- "name": "riskId",
664
- "type": "bytes8"
665
- },
666
- {
667
- "components": [
668
- {
669
- "internalType": "NftId",
670
- "name": "productNftId",
671
- "type": "uint96"
672
- },
673
- {
674
- "internalType": "bytes",
675
- "name": "data",
676
- "type": "bytes"
677
- }
678
- ],
679
- "internalType": "struct IRisk.RiskInfo",
680
- "name": "risk",
681
- "type": "tuple"
118
+ "internalType": "address",
119
+ "name": "instanceStore",
120
+ "type": "address"
682
121
  }
683
122
  ],
684
- "name": "createRisk",
685
- "outputs": [],
686
- "stateMutability": "nonpayable",
687
- "type": "function"
123
+ "name": "ErrorInstanceInstanceStoreAlreadySet",
124
+ "type": "error"
688
125
  },
689
126
  {
690
127
  "inputs": [
691
128
  {
692
- "internalType": "Key32",
693
- "name": "key",
694
- "type": "bytes32"
129
+ "internalType": "address",
130
+ "name": "instanceAuthority",
131
+ "type": "address"
695
132
  }
696
133
  ],
697
- "name": "exists",
698
- "outputs": [
134
+ "name": "ErrorInstanceInstanceStoreAuthorityMismatch",
135
+ "type": "error"
136
+ },
137
+ {
138
+ "inputs": [
699
139
  {
700
- "internalType": "bool",
701
- "name": "",
702
- "type": "bool"
140
+ "internalType": "NftId",
141
+ "name": "nftId",
142
+ "type": "uint96"
703
143
  }
704
144
  ],
705
- "stateMutability": "view",
706
- "type": "function"
145
+ "name": "ErrorNftOwnableAlreadyLinked",
146
+ "type": "error"
707
147
  },
708
148
  {
709
149
  "inputs": [
710
150
  {
711
- "internalType": "Key32",
712
- "name": "key",
713
- "type": "bytes32"
151
+ "internalType": "address",
152
+ "name": "contractAddress",
153
+ "type": "address"
714
154
  }
715
155
  ],
716
- "name": "get",
717
- "outputs": [
156
+ "name": "ErrorNftOwnableContractNotRegistered",
157
+ "type": "error"
158
+ },
159
+ {
160
+ "inputs": [],
161
+ "name": "ErrorNftOwnableInitialOwnerZero",
162
+ "type": "error"
163
+ },
164
+ {
165
+ "inputs": [
718
166
  {
719
- "components": [
720
- {
721
- "components": [
722
- {
723
- "internalType": "ObjectType",
724
- "name": "objectType",
725
- "type": "uint8"
726
- },
727
- {
728
- "internalType": "StateId",
729
- "name": "state",
730
- "type": "uint8"
731
- },
732
- {
733
- "internalType": "address",
734
- "name": "updatedBy",
735
- "type": "address"
736
- },
737
- {
738
- "internalType": "Blocknumber",
739
- "name": "updatedIn",
740
- "type": "uint32"
741
- },
742
- {
743
- "internalType": "Blocknumber",
744
- "name": "createdIn",
745
- "type": "uint32"
746
- }
747
- ],
748
- "internalType": "struct IKeyValueStore.Metadata",
749
- "name": "metadata",
750
- "type": "tuple"
751
- },
752
- {
753
- "internalType": "bytes",
754
- "name": "data",
755
- "type": "bytes"
756
- }
757
- ],
758
- "internalType": "struct IKeyValueStore.Value",
759
- "name": "value",
760
- "type": "tuple"
167
+ "internalType": "address",
168
+ "name": "account",
169
+ "type": "address"
761
170
  }
762
171
  ],
763
- "stateMutability": "view",
764
- "type": "function"
172
+ "name": "ErrorNftOwnableNotOwner",
173
+ "type": "error"
765
174
  },
766
175
  {
767
- "inputs": [],
768
- "name": "getBundleManager",
769
- "outputs": [
176
+ "inputs": [
770
177
  {
771
- "internalType": "contract BundleManager",
772
- "name": "",
178
+ "internalType": "address",
179
+ "name": "registryAddress",
773
180
  "type": "address"
774
181
  }
775
182
  ],
776
- "stateMutability": "view",
777
- "type": "function"
183
+ "name": "ErrorNotRegistry",
184
+ "type": "error"
778
185
  },
779
186
  {
780
- "inputs": [],
781
- "name": "getBundleService",
782
- "outputs": [
187
+ "anonymous": false,
188
+ "inputs": [
783
189
  {
784
- "internalType": "contract IBundleService",
785
- "name": "",
190
+ "indexed": false,
191
+ "internalType": "address",
192
+ "name": "authority",
786
193
  "type": "address"
787
194
  }
788
195
  ],
789
- "stateMutability": "view",
790
- "type": "function"
196
+ "name": "AuthorityUpdated",
197
+ "type": "event"
791
198
  },
792
199
  {
793
200
  "inputs": [],
794
- "name": "getComponentOwnerService",
201
+ "name": "authority",
795
202
  "outputs": [
796
203
  {
797
- "internalType": "contract IComponentOwnerService",
204
+ "internalType": "address",
798
205
  "name": "",
799
206
  "type": "address"
800
207
  }
@@ -805,49 +212,58 @@
805
212
  {
806
213
  "inputs": [
807
214
  {
808
- "internalType": "Key32",
809
- "name": "key",
810
- "type": "bytes32"
215
+ "internalType": "string",
216
+ "name": "roleName",
217
+ "type": "string"
218
+ },
219
+ {
220
+ "internalType": "string",
221
+ "name": "adminName",
222
+ "type": "string"
811
223
  }
812
224
  ],
813
- "name": "getData",
225
+ "name": "createRole",
814
226
  "outputs": [
815
227
  {
816
- "internalType": "bytes",
817
- "name": "data",
818
- "type": "bytes"
228
+ "internalType": "RoleId",
229
+ "name": "roleId",
230
+ "type": "uint64"
231
+ },
232
+ {
233
+ "internalType": "RoleId",
234
+ "name": "admin",
235
+ "type": "uint64"
819
236
  }
820
237
  ],
821
- "stateMutability": "view",
238
+ "stateMutability": "nonpayable",
822
239
  "type": "function"
823
240
  },
824
241
  {
825
- "inputs": [],
826
- "name": "getDistributionService",
827
- "outputs": [
242
+ "inputs": [
828
243
  {
829
- "internalType": "contract IDistributionService",
830
- "name": "",
244
+ "internalType": "address",
245
+ "name": "target",
831
246
  "type": "address"
247
+ },
248
+ {
249
+ "internalType": "string",
250
+ "name": "name",
251
+ "type": "string"
832
252
  }
833
253
  ],
834
- "stateMutability": "view",
254
+ "name": "createTarget",
255
+ "outputs": [],
256
+ "stateMutability": "nonpayable",
835
257
  "type": "function"
836
258
  },
837
259
  {
838
- "inputs": [
839
- {
840
- "internalType": "ObjectType",
841
- "name": "objectType",
842
- "type": "uint8"
843
- }
844
- ],
845
- "name": "getInitialState",
260
+ "inputs": [],
261
+ "name": "getBundleManager",
846
262
  "outputs": [
847
263
  {
848
- "internalType": "StateId",
264
+ "internalType": "contract BundleManager",
849
265
  "name": "",
850
- "type": "uint8"
266
+ "type": "address"
851
267
  }
852
268
  ],
853
269
  "stateMutability": "view",
@@ -855,10 +271,10 @@
855
271
  },
856
272
  {
857
273
  "inputs": [],
858
- "name": "getInstanceAccessManager",
274
+ "name": "getBundleService",
859
275
  "outputs": [
860
276
  {
861
- "internalType": "contract InstanceAccessManager",
277
+ "internalType": "contract IBundleService",
862
278
  "name": "",
863
279
  "type": "address"
864
280
  }
@@ -868,10 +284,10 @@
868
284
  },
869
285
  {
870
286
  "inputs": [],
871
- "name": "getInstanceReader",
287
+ "name": "getDistributionService",
872
288
  "outputs": [
873
289
  {
874
- "internalType": "contract InstanceReader",
290
+ "internalType": "contract IDistributionService",
875
291
  "name": "",
876
292
  "type": "address"
877
293
  }
@@ -880,45 +296,49 @@
880
296
  "type": "function"
881
297
  },
882
298
  {
883
- "inputs": [
884
- {
885
- "internalType": "Key32",
886
- "name": "key",
887
- "type": "bytes32"
888
- }
889
- ],
890
- "name": "getMetadata",
299
+ "inputs": [],
300
+ "name": "getInitialInfo",
891
301
  "outputs": [
892
302
  {
893
303
  "components": [
304
+ {
305
+ "internalType": "NftId",
306
+ "name": "nftId",
307
+ "type": "uint96"
308
+ },
309
+ {
310
+ "internalType": "NftId",
311
+ "name": "parentNftId",
312
+ "type": "uint96"
313
+ },
894
314
  {
895
315
  "internalType": "ObjectType",
896
316
  "name": "objectType",
897
317
  "type": "uint8"
898
318
  },
899
319
  {
900
- "internalType": "StateId",
901
- "name": "state",
902
- "type": "uint8"
320
+ "internalType": "bool",
321
+ "name": "isInterceptor",
322
+ "type": "bool"
903
323
  },
904
324
  {
905
325
  "internalType": "address",
906
- "name": "updatedBy",
326
+ "name": "objectAddress",
907
327
  "type": "address"
908
328
  },
909
329
  {
910
- "internalType": "Blocknumber",
911
- "name": "updatedIn",
912
- "type": "uint32"
330
+ "internalType": "address",
331
+ "name": "initialOwner",
332
+ "type": "address"
913
333
  },
914
334
  {
915
- "internalType": "Blocknumber",
916
- "name": "createdIn",
917
- "type": "uint32"
335
+ "internalType": "bytes",
336
+ "name": "data",
337
+ "type": "bytes"
918
338
  }
919
339
  ],
920
- "internalType": "struct IKeyValueStore.Metadata",
921
- "name": "metadata",
340
+ "internalType": "struct IRegistry.ObjectInfo",
341
+ "name": "",
922
342
  "type": "tuple"
923
343
  }
924
344
  ],
@@ -927,10 +347,10 @@
927
347
  },
928
348
  {
929
349
  "inputs": [],
930
- "name": "getPolicyService",
350
+ "name": "getInstanceAdmin",
931
351
  "outputs": [
932
352
  {
933
- "internalType": "contract IPolicyService",
353
+ "internalType": "contract InstanceAdmin",
934
354
  "name": "",
935
355
  "type": "address"
936
356
  }
@@ -940,10 +360,10 @@
940
360
  },
941
361
  {
942
362
  "inputs": [],
943
- "name": "getPoolService",
363
+ "name": "getInstanceReader",
944
364
  "outputs": [
945
365
  {
946
- "internalType": "contract IPoolService",
366
+ "internalType": "contract InstanceReader",
947
367
  "name": "",
948
368
  "type": "address"
949
369
  }
@@ -953,10 +373,10 @@
953
373
  },
954
374
  {
955
375
  "inputs": [],
956
- "name": "getProductService",
376
+ "name": "getInstanceStore",
957
377
  "outputs": [
958
378
  {
959
- "internalType": "contract IProductService",
379
+ "internalType": "contract InstanceStore",
960
380
  "name": "",
961
381
  "type": "address"
962
382
  }
@@ -965,396 +385,130 @@
965
385
  "type": "function"
966
386
  },
967
387
  {
968
- "inputs": [
969
- {
970
- "internalType": "Key32",
971
- "name": "key",
972
- "type": "bytes32"
973
- }
974
- ],
975
- "name": "getState",
388
+ "inputs": [],
389
+ "name": "getMajorVersion",
976
390
  "outputs": [
977
391
  {
978
- "internalType": "StateId",
979
- "name": "state",
392
+ "internalType": "VersionPart",
393
+ "name": "majorVersion",
980
394
  "type": "uint8"
981
395
  }
982
396
  ],
983
- "stateMutability": "view",
397
+ "stateMutability": "pure",
984
398
  "type": "function"
985
399
  },
986
400
  {
987
- "inputs": [
988
- {
989
- "internalType": "ObjectType",
990
- "name": "objectType",
991
- "type": "uint8"
992
- }
993
- ],
994
- "name": "hasLifecycle",
401
+ "inputs": [],
402
+ "name": "getNftId",
995
403
  "outputs": [
996
404
  {
997
- "internalType": "bool",
405
+ "internalType": "NftId",
998
406
  "name": "",
999
- "type": "bool"
407
+ "type": "uint96"
1000
408
  }
1001
409
  ],
1002
410
  "stateMutability": "view",
1003
411
  "type": "function"
1004
412
  },
1005
413
  {
1006
- "inputs": [
1007
- {
1008
- "internalType": "ObjectType",
1009
- "name": "objectType",
1010
- "type": "uint8"
1011
- },
1012
- {
1013
- "internalType": "StateId",
1014
- "name": "fromId",
1015
- "type": "uint8"
1016
- },
1017
- {
1018
- "internalType": "StateId",
1019
- "name": "toId",
1020
- "type": "uint8"
1021
- }
1022
- ],
1023
- "name": "isValidTransition",
414
+ "inputs": [],
415
+ "name": "getOwner",
1024
416
  "outputs": [
1025
417
  {
1026
- "internalType": "bool",
418
+ "internalType": "address",
1027
419
  "name": "",
1028
- "type": "bool"
420
+ "type": "address"
1029
421
  }
1030
422
  ],
1031
423
  "stateMutability": "view",
1032
424
  "type": "function"
1033
425
  },
1034
426
  {
1035
- "inputs": [
1036
- {
1037
- "internalType": "bytes4",
1038
- "name": "interfaceId",
1039
- "type": "bytes4"
1040
- }
1041
- ],
1042
- "name": "supportsInterface",
427
+ "inputs": [],
428
+ "name": "getPolicyService",
1043
429
  "outputs": [
1044
430
  {
1045
- "internalType": "bool",
431
+ "internalType": "contract IPolicyService",
1046
432
  "name": "",
1047
- "type": "bool"
433
+ "type": "address"
1048
434
  }
1049
435
  ],
1050
436
  "stateMutability": "view",
1051
437
  "type": "function"
1052
438
  },
1053
439
  {
1054
- "inputs": [
1055
- {
1056
- "internalType": "ObjectType",
1057
- "name": "objectType",
1058
- "type": "uint8"
1059
- },
1060
- {
1061
- "internalType": "KeyId",
1062
- "name": "id",
1063
- "type": "bytes31"
1064
- }
1065
- ],
1066
- "name": "toKey32",
440
+ "inputs": [],
441
+ "name": "getPoolService",
1067
442
  "outputs": [
1068
443
  {
1069
- "internalType": "Key32",
1070
- "name": "",
1071
- "type": "bytes32"
1072
- }
1073
- ],
1074
- "stateMutability": "pure",
1075
- "type": "function"
1076
- },
1077
- {
1078
- "inputs": [
1079
- {
1080
- "internalType": "NftId",
1081
- "name": "bundleNftId",
1082
- "type": "uint96"
1083
- },
1084
- {
1085
- "components": [
1086
- {
1087
- "internalType": "NftId",
1088
- "name": "poolNftId",
1089
- "type": "uint96"
1090
- },
1091
- {
1092
- "components": [
1093
- {
1094
- "internalType": "UFixed",
1095
- "name": "fractionalFee",
1096
- "type": "uint256"
1097
- },
1098
- {
1099
- "internalType": "uint256",
1100
- "name": "fixedFee",
1101
- "type": "uint256"
1102
- }
1103
- ],
1104
- "internalType": "struct Fee",
1105
- "name": "fee",
1106
- "type": "tuple"
1107
- },
1108
- {
1109
- "internalType": "bytes",
1110
- "name": "filter",
1111
- "type": "bytes"
1112
- },
1113
- {
1114
- "internalType": "uint256",
1115
- "name": "capitalAmount",
1116
- "type": "uint256"
1117
- },
1118
- {
1119
- "internalType": "uint256",
1120
- "name": "lockedAmount",
1121
- "type": "uint256"
1122
- },
1123
- {
1124
- "internalType": "uint256",
1125
- "name": "balanceAmount",
1126
- "type": "uint256"
1127
- },
1128
- {
1129
- "internalType": "uint256",
1130
- "name": "lifetime",
1131
- "type": "uint256"
1132
- },
1133
- {
1134
- "internalType": "Timestamp",
1135
- "name": "expiredAt",
1136
- "type": "uint40"
1137
- },
1138
- {
1139
- "internalType": "Timestamp",
1140
- "name": "closedAt",
1141
- "type": "uint40"
1142
- }
1143
- ],
1144
- "internalType": "struct IBundle.BundleInfo",
1145
- "name": "bundle",
1146
- "type": "tuple"
1147
- },
1148
- {
1149
- "internalType": "StateId",
1150
- "name": "newState",
1151
- "type": "uint8"
444
+ "internalType": "contract IPoolService",
445
+ "name": "",
446
+ "type": "address"
1152
447
  }
1153
448
  ],
1154
- "name": "updateBundle",
1155
- "outputs": [],
1156
- "stateMutability": "nonpayable",
449
+ "stateMutability": "view",
1157
450
  "type": "function"
1158
451
  },
1159
452
  {
1160
- "inputs": [
1161
- {
1162
- "internalType": "NftId",
1163
- "name": "bundleNftId",
1164
- "type": "uint96"
1165
- },
453
+ "inputs": [],
454
+ "name": "getProductService",
455
+ "outputs": [
1166
456
  {
1167
- "internalType": "StateId",
1168
- "name": "newState",
1169
- "type": "uint8"
457
+ "internalType": "contract IProductService",
458
+ "name": "",
459
+ "type": "address"
1170
460
  }
1171
461
  ],
1172
- "name": "updateBundleState",
1173
- "outputs": [],
1174
- "stateMutability": "nonpayable",
462
+ "stateMutability": "view",
1175
463
  "type": "function"
1176
464
  },
1177
465
  {
1178
- "inputs": [
1179
- {
1180
- "internalType": "NftId",
1181
- "name": "distributionNftId",
1182
- "type": "uint96"
1183
- },
1184
- {
1185
- "components": [
1186
- {
1187
- "internalType": "NftId",
1188
- "name": "productNftId",
1189
- "type": "uint96"
1190
- },
1191
- {
1192
- "internalType": "contract TokenHandler",
1193
- "name": "tokenHandler",
1194
- "type": "address"
1195
- },
1196
- {
1197
- "components": [
1198
- {
1199
- "internalType": "UFixed",
1200
- "name": "fractionalFee",
1201
- "type": "uint256"
1202
- },
1203
- {
1204
- "internalType": "uint256",
1205
- "name": "fixedFee",
1206
- "type": "uint256"
1207
- }
1208
- ],
1209
- "internalType": "struct Fee",
1210
- "name": "distributionFee",
1211
- "type": "tuple"
1212
- },
1213
- {
1214
- "internalType": "bool",
1215
- "name": "isIntercepting",
1216
- "type": "bool"
1217
- },
1218
- {
1219
- "internalType": "address",
1220
- "name": "wallet",
1221
- "type": "address"
1222
- }
1223
- ],
1224
- "internalType": "struct ISetup.DistributionSetupInfo",
1225
- "name": "setup",
1226
- "type": "tuple"
1227
- },
466
+ "inputs": [],
467
+ "name": "getRegistry",
468
+ "outputs": [
1228
469
  {
1229
- "internalType": "StateId",
1230
- "name": "newState",
1231
- "type": "uint8"
470
+ "internalType": "contract IRegistry",
471
+ "name": "",
472
+ "type": "address"
1232
473
  }
1233
474
  ],
1234
- "name": "updateDistributionSetup",
1235
- "outputs": [],
1236
- "stateMutability": "nonpayable",
475
+ "stateMutability": "view",
1237
476
  "type": "function"
1238
477
  },
1239
478
  {
1240
479
  "inputs": [
1241
480
  {
1242
- "internalType": "NftId",
1243
- "name": "distributionNftId",
1244
- "type": "uint96"
481
+ "internalType": "RoleId",
482
+ "name": "roleId",
483
+ "type": "uint64"
1245
484
  },
1246
485
  {
1247
- "internalType": "StateId",
1248
- "name": "newState",
1249
- "type": "uint8"
486
+ "internalType": "address",
487
+ "name": "account",
488
+ "type": "address"
1250
489
  }
1251
490
  ],
1252
- "name": "updateDistributionSetupState",
491
+ "name": "grantRole",
1253
492
  "outputs": [],
1254
493
  "stateMutability": "nonpayable",
1255
494
  "type": "function"
1256
495
  },
1257
496
  {
1258
- "inputs": [
1259
- {
1260
- "internalType": "NftId",
1261
- "name": "policyNftId",
1262
- "type": "uint96"
1263
- },
1264
- {
1265
- "components": [
1266
- {
1267
- "internalType": "NftId",
1268
- "name": "productNftId",
1269
- "type": "uint96"
1270
- },
1271
- {
1272
- "internalType": "NftId",
1273
- "name": "bundleNftId",
1274
- "type": "uint96"
1275
- },
1276
- {
1277
- "internalType": "ReferralId",
1278
- "name": "referralId",
1279
- "type": "bytes8"
1280
- },
1281
- {
1282
- "internalType": "RiskId",
1283
- "name": "riskId",
1284
- "type": "bytes8"
1285
- },
1286
- {
1287
- "internalType": "uint256",
1288
- "name": "sumInsuredAmount",
1289
- "type": "uint256"
1290
- },
1291
- {
1292
- "internalType": "uint256",
1293
- "name": "premiumAmount",
1294
- "type": "uint256"
1295
- },
1296
- {
1297
- "internalType": "uint256",
1298
- "name": "premiumPaidAmount",
1299
- "type": "uint256"
1300
- },
1301
- {
1302
- "internalType": "uint256",
1303
- "name": "lifetime",
1304
- "type": "uint256"
1305
- },
1306
- {
1307
- "internalType": "bytes",
1308
- "name": "applicationData",
1309
- "type": "bytes"
1310
- },
1311
- {
1312
- "internalType": "bytes",
1313
- "name": "policyData",
1314
- "type": "bytes"
1315
- },
1316
- {
1317
- "internalType": "uint16",
1318
- "name": "claimsCount",
1319
- "type": "uint16"
1320
- },
1321
- {
1322
- "internalType": "uint16",
1323
- "name": "openClaimsCount",
1324
- "type": "uint16"
1325
- },
1326
- {
1327
- "internalType": "uint256",
1328
- "name": "payoutAmount",
1329
- "type": "uint256"
1330
- },
1331
- {
1332
- "internalType": "Timestamp",
1333
- "name": "activatedAt",
1334
- "type": "uint40"
1335
- },
1336
- {
1337
- "internalType": "Timestamp",
1338
- "name": "expiredAt",
1339
- "type": "uint40"
1340
- },
1341
- {
1342
- "internalType": "Timestamp",
1343
- "name": "closedAt",
1344
- "type": "uint40"
1345
- }
1346
- ],
1347
- "internalType": "struct IPolicy.PolicyInfo",
1348
- "name": "policy",
1349
- "type": "tuple"
1350
- },
497
+ "inputs": [],
498
+ "name": "isConsumingScheduledOp",
499
+ "outputs": [
1351
500
  {
1352
- "internalType": "StateId",
1353
- "name": "newState",
1354
- "type": "uint8"
501
+ "internalType": "bytes4",
502
+ "name": "",
503
+ "type": "bytes4"
1355
504
  }
1356
505
  ],
1357
- "name": "updatePolicy",
506
+ "stateMutability": "view",
507
+ "type": "function"
508
+ },
509
+ {
510
+ "inputs": [],
511
+ "name": "linkToRegisteredNftId",
1358
512
  "outputs": [],
1359
513
  "stateMutability": "nonpayable",
1360
514
  "type": "function"
@@ -1362,17 +516,17 @@
1362
516
  {
1363
517
  "inputs": [
1364
518
  {
1365
- "internalType": "NftId",
1366
- "name": "policyNftId",
1367
- "type": "uint96"
519
+ "internalType": "address",
520
+ "name": "to",
521
+ "type": "address"
1368
522
  },
1369
523
  {
1370
- "internalType": "StateId",
1371
- "name": "newState",
1372
- "type": "uint8"
524
+ "internalType": "uint256",
525
+ "name": "tokenId",
526
+ "type": "uint256"
1373
527
  }
1374
528
  ],
1375
- "name": "updatePolicyState",
529
+ "name": "nftMint",
1376
530
  "outputs": [],
1377
531
  "stateMutability": "nonpayable",
1378
532
  "type": "function"
@@ -1380,105 +534,22 @@
1380
534
  {
1381
535
  "inputs": [
1382
536
  {
1383
- "internalType": "NftId",
1384
- "name": "poolNftId",
1385
- "type": "uint96"
537
+ "internalType": "address",
538
+ "name": "from",
539
+ "type": "address"
1386
540
  },
1387
541
  {
1388
- "components": [
1389
- {
1390
- "internalType": "NftId",
1391
- "name": "productNftId",
1392
- "type": "uint96"
1393
- },
1394
- {
1395
- "internalType": "contract TokenHandler",
1396
- "name": "tokenHandler",
1397
- "type": "address"
1398
- },
1399
- {
1400
- "internalType": "UFixed",
1401
- "name": "collateralizationLevel",
1402
- "type": "uint256"
1403
- },
1404
- {
1405
- "components": [
1406
- {
1407
- "internalType": "UFixed",
1408
- "name": "fractionalFee",
1409
- "type": "uint256"
1410
- },
1411
- {
1412
- "internalType": "uint256",
1413
- "name": "fixedFee",
1414
- "type": "uint256"
1415
- }
1416
- ],
1417
- "internalType": "struct Fee",
1418
- "name": "poolFee",
1419
- "type": "tuple"
1420
- },
1421
- {
1422
- "components": [
1423
- {
1424
- "internalType": "UFixed",
1425
- "name": "fractionalFee",
1426
- "type": "uint256"
1427
- },
1428
- {
1429
- "internalType": "uint256",
1430
- "name": "fixedFee",
1431
- "type": "uint256"
1432
- }
1433
- ],
1434
- "internalType": "struct Fee",
1435
- "name": "stakingFee",
1436
- "type": "tuple"
1437
- },
1438
- {
1439
- "components": [
1440
- {
1441
- "internalType": "UFixed",
1442
- "name": "fractionalFee",
1443
- "type": "uint256"
1444
- },
1445
- {
1446
- "internalType": "uint256",
1447
- "name": "fixedFee",
1448
- "type": "uint256"
1449
- }
1450
- ],
1451
- "internalType": "struct Fee",
1452
- "name": "performanceFee",
1453
- "type": "tuple"
1454
- },
1455
- {
1456
- "internalType": "bool",
1457
- "name": "isIntercepting",
1458
- "type": "bool"
1459
- },
1460
- {
1461
- "internalType": "bool",
1462
- "name": "isConfirmingApplication",
1463
- "type": "bool"
1464
- },
1465
- {
1466
- "internalType": "address",
1467
- "name": "wallet",
1468
- "type": "address"
1469
- }
1470
- ],
1471
- "internalType": "struct ISetup.PoolSetupInfo",
1472
- "name": "setup",
1473
- "type": "tuple"
542
+ "internalType": "address",
543
+ "name": "to",
544
+ "type": "address"
1474
545
  },
1475
546
  {
1476
- "internalType": "StateId",
1477
- "name": "newState",
1478
- "type": "uint8"
547
+ "internalType": "uint256",
548
+ "name": "tokenId",
549
+ "type": "uint256"
1479
550
  }
1480
551
  ],
1481
- "name": "updatePoolSetup",
552
+ "name": "nftTransferFrom",
1482
553
  "outputs": [],
1483
554
  "stateMutability": "nonpayable",
1484
555
  "type": "function"
@@ -1486,17 +557,17 @@
1486
557
  {
1487
558
  "inputs": [
1488
559
  {
1489
- "internalType": "NftId",
1490
- "name": "poolNftId",
1491
- "type": "uint96"
560
+ "internalType": "RoleId",
561
+ "name": "roleId",
562
+ "type": "uint64"
1492
563
  },
1493
564
  {
1494
- "internalType": "StateId",
1495
- "name": "newState",
1496
- "type": "uint8"
565
+ "internalType": "address",
566
+ "name": "account",
567
+ "type": "address"
1497
568
  }
1498
569
  ],
1499
- "name": "updatePoolSetupState",
570
+ "name": "revokeRole",
1500
571
  "outputs": [],
1501
572
  "stateMutability": "nonpayable",
1502
573
  "type": "function"
@@ -1504,156 +575,12 @@
1504
575
  {
1505
576
  "inputs": [
1506
577
  {
1507
- "internalType": "NftId",
1508
- "name": "productNftId",
1509
- "type": "uint96"
1510
- },
1511
- {
1512
- "components": [
1513
- {
1514
- "internalType": "contract IERC20Metadata",
1515
- "name": "token",
1516
- "type": "address"
1517
- },
1518
- {
1519
- "internalType": "contract TokenHandler",
1520
- "name": "tokenHandler",
1521
- "type": "address"
1522
- },
1523
- {
1524
- "internalType": "NftId",
1525
- "name": "distributionNftId",
1526
- "type": "uint96"
1527
- },
1528
- {
1529
- "internalType": "NftId",
1530
- "name": "poolNftId",
1531
- "type": "uint96"
1532
- },
1533
- {
1534
- "components": [
1535
- {
1536
- "internalType": "UFixed",
1537
- "name": "fractionalFee",
1538
- "type": "uint256"
1539
- },
1540
- {
1541
- "internalType": "uint256",
1542
- "name": "fixedFee",
1543
- "type": "uint256"
1544
- }
1545
- ],
1546
- "internalType": "struct Fee",
1547
- "name": "distributionFee",
1548
- "type": "tuple"
1549
- },
1550
- {
1551
- "components": [
1552
- {
1553
- "internalType": "UFixed",
1554
- "name": "fractionalFee",
1555
- "type": "uint256"
1556
- },
1557
- {
1558
- "internalType": "uint256",
1559
- "name": "fixedFee",
1560
- "type": "uint256"
1561
- }
1562
- ],
1563
- "internalType": "struct Fee",
1564
- "name": "productFee",
1565
- "type": "tuple"
1566
- },
1567
- {
1568
- "components": [
1569
- {
1570
- "internalType": "UFixed",
1571
- "name": "fractionalFee",
1572
- "type": "uint256"
1573
- },
1574
- {
1575
- "internalType": "uint256",
1576
- "name": "fixedFee",
1577
- "type": "uint256"
1578
- }
1579
- ],
1580
- "internalType": "struct Fee",
1581
- "name": "processingFee",
1582
- "type": "tuple"
1583
- },
1584
- {
1585
- "components": [
1586
- {
1587
- "internalType": "UFixed",
1588
- "name": "fractionalFee",
1589
- "type": "uint256"
1590
- },
1591
- {
1592
- "internalType": "uint256",
1593
- "name": "fixedFee",
1594
- "type": "uint256"
1595
- }
1596
- ],
1597
- "internalType": "struct Fee",
1598
- "name": "poolFee",
1599
- "type": "tuple"
1600
- },
1601
- {
1602
- "components": [
1603
- {
1604
- "internalType": "UFixed",
1605
- "name": "fractionalFee",
1606
- "type": "uint256"
1607
- },
1608
- {
1609
- "internalType": "uint256",
1610
- "name": "fixedFee",
1611
- "type": "uint256"
1612
- }
1613
- ],
1614
- "internalType": "struct Fee",
1615
- "name": "stakingFee",
1616
- "type": "tuple"
1617
- },
1618
- {
1619
- "components": [
1620
- {
1621
- "internalType": "UFixed",
1622
- "name": "fractionalFee",
1623
- "type": "uint256"
1624
- },
1625
- {
1626
- "internalType": "uint256",
1627
- "name": "fixedFee",
1628
- "type": "uint256"
1629
- }
1630
- ],
1631
- "internalType": "struct Fee",
1632
- "name": "performanceFee",
1633
- "type": "tuple"
1634
- },
1635
- {
1636
- "internalType": "bool",
1637
- "name": "isIntercepting",
1638
- "type": "bool"
1639
- },
1640
- {
1641
- "internalType": "address",
1642
- "name": "wallet",
1643
- "type": "address"
1644
- }
1645
- ],
1646
- "internalType": "struct ISetup.ProductSetupInfo",
1647
- "name": "setup",
1648
- "type": "tuple"
1649
- },
1650
- {
1651
- "internalType": "StateId",
1652
- "name": "newState",
1653
- "type": "uint8"
578
+ "internalType": "address",
579
+ "name": "",
580
+ "type": "address"
1654
581
  }
1655
582
  ],
1656
- "name": "updateProductSetup",
583
+ "name": "setAuthority",
1657
584
  "outputs": [],
1658
585
  "stateMutability": "nonpayable",
1659
586
  "type": "function"
@@ -1661,17 +588,22 @@
1661
588
  {
1662
589
  "inputs": [
1663
590
  {
1664
- "internalType": "NftId",
1665
- "name": "productNftId",
1666
- "type": "uint96"
591
+ "internalType": "string",
592
+ "name": "targetName",
593
+ "type": "string"
1667
594
  },
1668
595
  {
1669
- "internalType": "StateId",
1670
- "name": "newState",
1671
- "type": "uint8"
596
+ "internalType": "bytes4[]",
597
+ "name": "selectors",
598
+ "type": "bytes4[]"
599
+ },
600
+ {
601
+ "internalType": "RoleId",
602
+ "name": "roleId",
603
+ "type": "uint64"
1672
604
  }
1673
605
  ],
1674
- "name": "updateProductSetupState",
606
+ "name": "setTargetFunctionRole",
1675
607
  "outputs": [],
1676
608
  "stateMutability": "nonpayable",
1677
609
  "type": "function"
@@ -1679,34 +611,17 @@
1679
611
  {
1680
612
  "inputs": [
1681
613
  {
1682
- "internalType": "RiskId",
1683
- "name": "riskId",
1684
- "type": "bytes8"
1685
- },
1686
- {
1687
- "components": [
1688
- {
1689
- "internalType": "NftId",
1690
- "name": "productNftId",
1691
- "type": "uint96"
1692
- },
1693
- {
1694
- "internalType": "bytes",
1695
- "name": "data",
1696
- "type": "bytes"
1697
- }
1698
- ],
1699
- "internalType": "struct IRisk.RiskInfo",
1700
- "name": "risk",
1701
- "type": "tuple"
614
+ "internalType": "address",
615
+ "name": "target",
616
+ "type": "address"
1702
617
  },
1703
618
  {
1704
- "internalType": "StateId",
1705
- "name": "newState",
1706
- "type": "uint8"
619
+ "internalType": "bool",
620
+ "name": "locked",
621
+ "type": "bool"
1707
622
  }
1708
623
  ],
1709
- "name": "updateRisk",
624
+ "name": "setTargetLocked",
1710
625
  "outputs": [],
1711
626
  "stateMutability": "nonpayable",
1712
627
  "type": "function"
@@ -1714,19 +629,20 @@
1714
629
  {
1715
630
  "inputs": [
1716
631
  {
1717
- "internalType": "RiskId",
1718
- "name": "riskId",
1719
- "type": "bytes8"
1720
- },
632
+ "internalType": "bytes4",
633
+ "name": "interfaceId",
634
+ "type": "bytes4"
635
+ }
636
+ ],
637
+ "name": "supportsInterface",
638
+ "outputs": [
1721
639
  {
1722
- "internalType": "StateId",
1723
- "name": "newState",
1724
- "type": "uint8"
640
+ "internalType": "bool",
641
+ "name": "",
642
+ "type": "bool"
1725
643
  }
1726
644
  ],
1727
- "name": "updateRiskState",
1728
- "outputs": [],
1729
- "stateMutability": "nonpayable",
645
+ "stateMutability": "view",
1730
646
  "type": "function"
1731
647
  }
1732
648
  ],