@hyperlane-xyz/core 5.5.0 → 5.6.0

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 (355) hide show
  1. package/contracts/PackageVersioned.sol +1 -1
  2. package/contracts/client/GasRouter.sol +16 -0
  3. package/contracts/libs/TypeCasts.sol +4 -0
  4. package/contracts/token/HypERC20Collateral.sol +16 -0
  5. package/contracts/token/extensions/HypERC4626Collateral.sol +8 -8
  6. package/contracts/token/extensions/WHypERC4626.sol +113 -0
  7. package/dist/buildArtifact.js +1 -1
  8. package/dist/buildArtifact.json +1 -1
  9. package/dist/contracts/client/GasRouter.d.ts +11 -0
  10. package/dist/contracts/client/GasRouter.d.ts.map +1 -1
  11. package/dist/contracts/test/TestGasRouter.d.ts +11 -0
  12. package/dist/contracts/test/TestGasRouter.d.ts.map +1 -1
  13. package/dist/contracts/token/HypERC20.d.ts +11 -0
  14. package/dist/contracts/token/HypERC20.d.ts.map +1 -1
  15. package/dist/contracts/token/HypERC20Collateral.d.ts +11 -0
  16. package/dist/contracts/token/HypERC20Collateral.d.ts.map +1 -1
  17. package/dist/contracts/token/HypERC721.d.ts +11 -0
  18. package/dist/contracts/token/HypERC721.d.ts.map +1 -1
  19. package/dist/contracts/token/HypERC721Collateral.d.ts +11 -0
  20. package/dist/contracts/token/HypERC721Collateral.d.ts.map +1 -1
  21. package/dist/contracts/token/HypNative.d.ts +11 -0
  22. package/dist/contracts/token/HypNative.d.ts.map +1 -1
  23. package/dist/contracts/token/extensions/FastHypERC20.d.ts +11 -0
  24. package/dist/contracts/token/extensions/FastHypERC20.d.ts.map +1 -1
  25. package/dist/contracts/token/extensions/FastHypERC20Collateral.d.ts +11 -0
  26. package/dist/contracts/token/extensions/FastHypERC20Collateral.d.ts.map +1 -1
  27. package/dist/contracts/token/extensions/HypERC4626.d.ts +11 -0
  28. package/dist/contracts/token/extensions/HypERC4626.d.ts.map +1 -1
  29. package/dist/contracts/token/extensions/HypERC4626Collateral.d.ts +26 -15
  30. package/dist/contracts/token/extensions/HypERC4626Collateral.d.ts.map +1 -1
  31. package/dist/contracts/token/extensions/HypERC4626OwnerCollateral.d.ts +11 -0
  32. package/dist/contracts/token/extensions/HypERC4626OwnerCollateral.d.ts.map +1 -1
  33. package/dist/contracts/token/extensions/HypERC721URICollateral.d.ts +11 -0
  34. package/dist/contracts/token/extensions/HypERC721URICollateral.d.ts.map +1 -1
  35. package/dist/contracts/token/extensions/HypERC721URIStorage.d.ts +11 -0
  36. package/dist/contracts/token/extensions/HypERC721URIStorage.d.ts.map +1 -1
  37. package/dist/contracts/token/extensions/HypFiatToken.d.ts +11 -0
  38. package/dist/contracts/token/extensions/HypFiatToken.d.ts.map +1 -1
  39. package/dist/contracts/token/extensions/HypNativeScaled.d.ts +11 -0
  40. package/dist/contracts/token/extensions/HypNativeScaled.d.ts.map +1 -1
  41. package/dist/contracts/token/extensions/HypXERC20.d.ts +11 -0
  42. package/dist/contracts/token/extensions/HypXERC20.d.ts.map +1 -1
  43. package/dist/contracts/token/extensions/HypXERC20Lockbox.d.ts +11 -0
  44. package/dist/contracts/token/extensions/HypXERC20Lockbox.d.ts.map +1 -1
  45. package/dist/contracts/token/extensions/WHypERC4626.d.ts +466 -0
  46. package/dist/contracts/token/extensions/WHypERC4626.d.ts.map +1 -0
  47. package/dist/contracts/token/extensions/WHypERC4626.js +2 -0
  48. package/dist/contracts/token/extensions/WHypERC4626.js.map +1 -0
  49. package/dist/contracts/token/extensions/index.d.ts +1 -0
  50. package/dist/contracts/token/extensions/index.d.ts.map +1 -1
  51. package/dist/contracts/token/libs/FastTokenRouter.d.ts +11 -0
  52. package/dist/contracts/token/libs/FastTokenRouter.d.ts.map +1 -1
  53. package/dist/contracts/token/libs/TokenRouter.d.ts +11 -0
  54. package/dist/contracts/token/libs/TokenRouter.d.ts.map +1 -1
  55. package/dist/factories/contracts/AttributeCheckpointFraud__factory.d.ts +1 -1
  56. package/dist/factories/contracts/AttributeCheckpointFraud__factory.d.ts.map +1 -1
  57. package/dist/factories/contracts/AttributeCheckpointFraud__factory.js +1 -1
  58. package/dist/factories/contracts/AttributeCheckpointFraud__factory.js.map +1 -1
  59. package/dist/factories/contracts/CheckpointFraudProofs__factory.d.ts +1 -1
  60. package/dist/factories/contracts/CheckpointFraudProofs__factory.d.ts.map +1 -1
  61. package/dist/factories/contracts/CheckpointFraudProofs__factory.js +1 -1
  62. package/dist/factories/contracts/CheckpointFraudProofs__factory.js.map +1 -1
  63. package/dist/factories/contracts/Mailbox__factory.d.ts +1 -1
  64. package/dist/factories/contracts/Mailbox__factory.d.ts.map +1 -1
  65. package/dist/factories/contracts/Mailbox__factory.js +1 -1
  66. package/dist/factories/contracts/Mailbox__factory.js.map +1 -1
  67. package/dist/factories/contracts/avs/ECDSAStakeRegistry__factory.d.ts +1 -1
  68. package/dist/factories/contracts/avs/ECDSAStakeRegistry__factory.js +1 -1
  69. package/dist/factories/contracts/avs/HyperlaneServiceManager__factory.d.ts +1 -1
  70. package/dist/factories/contracts/avs/HyperlaneServiceManager__factory.js +1 -1
  71. package/dist/factories/contracts/client/GasRouter__factory.d.ts +15 -0
  72. package/dist/factories/contracts/client/GasRouter__factory.d.ts.map +1 -1
  73. package/dist/factories/contracts/client/GasRouter__factory.js +19 -0
  74. package/dist/factories/contracts/client/GasRouter__factory.js.map +1 -1
  75. package/dist/factories/contracts/hooks/ArbL2ToL1Hook__factory.d.ts +1 -1
  76. package/dist/factories/contracts/hooks/ArbL2ToL1Hook__factory.d.ts.map +1 -1
  77. package/dist/factories/contracts/hooks/ArbL2ToL1Hook__factory.js +1 -1
  78. package/dist/factories/contracts/hooks/ArbL2ToL1Hook__factory.js.map +1 -1
  79. package/dist/factories/contracts/hooks/MerkleTreeHook__factory.d.ts +1 -1
  80. package/dist/factories/contracts/hooks/MerkleTreeHook__factory.js +1 -1
  81. package/dist/factories/contracts/hooks/OPL2ToL1Hook__factory.d.ts +1 -1
  82. package/dist/factories/contracts/hooks/OPL2ToL1Hook__factory.d.ts.map +1 -1
  83. package/dist/factories/contracts/hooks/OPL2ToL1Hook__factory.js +1 -1
  84. package/dist/factories/contracts/hooks/OPL2ToL1Hook__factory.js.map +1 -1
  85. package/dist/factories/contracts/hooks/OPStackHook__factory.d.ts +1 -1
  86. package/dist/factories/contracts/hooks/OPStackHook__factory.d.ts.map +1 -1
  87. package/dist/factories/contracts/hooks/OPStackHook__factory.js +1 -1
  88. package/dist/factories/contracts/hooks/OPStackHook__factory.js.map +1 -1
  89. package/dist/factories/contracts/hooks/PausableHook__factory.d.ts +1 -1
  90. package/dist/factories/contracts/hooks/PausableHook__factory.js +1 -1
  91. package/dist/factories/contracts/hooks/PolygonPosHook__factory.d.ts +1 -1
  92. package/dist/factories/contracts/hooks/PolygonPosHook__factory.js +1 -1
  93. package/dist/factories/contracts/hooks/ProtocolFee__factory.d.ts +1 -1
  94. package/dist/factories/contracts/hooks/ProtocolFee__factory.d.ts.map +1 -1
  95. package/dist/factories/contracts/hooks/ProtocolFee__factory.js +1 -1
  96. package/dist/factories/contracts/hooks/ProtocolFee__factory.js.map +1 -1
  97. package/dist/factories/contracts/hooks/aggregation/ERC5164Hook__factory.d.ts +1 -1
  98. package/dist/factories/contracts/hooks/aggregation/ERC5164Hook__factory.d.ts.map +1 -1
  99. package/dist/factories/contracts/hooks/aggregation/ERC5164Hook__factory.js +1 -1
  100. package/dist/factories/contracts/hooks/aggregation/ERC5164Hook__factory.js.map +1 -1
  101. package/dist/factories/contracts/hooks/aggregation/StaticAggregationHookFactory__factory.d.ts +1 -1
  102. package/dist/factories/contracts/hooks/aggregation/StaticAggregationHookFactory__factory.js +1 -1
  103. package/dist/factories/contracts/hooks/aggregation/StaticAggregationHook__factory.d.ts +1 -1
  104. package/dist/factories/contracts/hooks/aggregation/StaticAggregationHook__factory.js +1 -1
  105. package/dist/factories/contracts/hooks/igp/InterchainGasPaymaster__factory.d.ts +1 -1
  106. package/dist/factories/contracts/hooks/igp/InterchainGasPaymaster__factory.d.ts.map +1 -1
  107. package/dist/factories/contracts/hooks/igp/InterchainGasPaymaster__factory.js +1 -1
  108. package/dist/factories/contracts/hooks/igp/InterchainGasPaymaster__factory.js.map +1 -1
  109. package/dist/factories/contracts/hooks/igp/StorageGasOracle__factory.d.ts +1 -1
  110. package/dist/factories/contracts/hooks/igp/StorageGasOracle__factory.js +1 -1
  111. package/dist/factories/contracts/hooks/layer-zero/LayerZeroV1Hook__factory.d.ts +1 -1
  112. package/dist/factories/contracts/hooks/layer-zero/LayerZeroV1Hook__factory.js +1 -1
  113. package/dist/factories/contracts/hooks/layer-zero/LayerZeroV2Hook__factory.d.ts +1 -1
  114. package/dist/factories/contracts/hooks/layer-zero/LayerZeroV2Hook__factory.d.ts.map +1 -1
  115. package/dist/factories/contracts/hooks/layer-zero/LayerZeroV2Hook__factory.js +1 -1
  116. package/dist/factories/contracts/hooks/layer-zero/LayerZeroV2Hook__factory.js.map +1 -1
  117. package/dist/factories/contracts/hooks/routing/DestinationRecipientRoutingHook__factory.d.ts +1 -1
  118. package/dist/factories/contracts/hooks/routing/DestinationRecipientRoutingHook__factory.js +1 -1
  119. package/dist/factories/contracts/hooks/routing/DomainRoutingHook__factory.d.ts +1 -1
  120. package/dist/factories/contracts/hooks/routing/DomainRoutingHook__factory.js +1 -1
  121. package/dist/factories/contracts/hooks/routing/FallbackDomainRoutingHook__factory.d.ts +1 -1
  122. package/dist/factories/contracts/hooks/routing/FallbackDomainRoutingHook__factory.js +1 -1
  123. package/dist/factories/contracts/hooks/warp-route/RateLimitedHook__factory.d.ts +1 -1
  124. package/dist/factories/contracts/hooks/warp-route/RateLimitedHook__factory.js +1 -1
  125. package/dist/factories/contracts/isms/NoopIsm__factory.d.ts +1 -1
  126. package/dist/factories/contracts/isms/NoopIsm__factory.js +1 -1
  127. package/dist/factories/contracts/isms/PausableIsm__factory.d.ts +1 -1
  128. package/dist/factories/contracts/isms/PausableIsm__factory.js +1 -1
  129. package/dist/factories/contracts/isms/TrustedRelayerIsm__factory.d.ts +1 -1
  130. package/dist/factories/contracts/isms/TrustedRelayerIsm__factory.js +1 -1
  131. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.d.ts +1 -1
  132. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.js +1 -1
  133. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.d.ts +1 -1
  134. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.js +1 -1
  135. package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.d.ts +1 -1
  136. package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.d.ts.map +1 -1
  137. package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.js +1 -1
  138. package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.js.map +1 -1
  139. package/dist/factories/contracts/isms/hook/ERC5164Ism__factory.d.ts +1 -1
  140. package/dist/factories/contracts/isms/hook/ERC5164Ism__factory.d.ts.map +1 -1
  141. package/dist/factories/contracts/isms/hook/ERC5164Ism__factory.js +1 -1
  142. package/dist/factories/contracts/isms/hook/ERC5164Ism__factory.js.map +1 -1
  143. package/dist/factories/contracts/isms/hook/OPL2ToL1Ism__factory.d.ts +1 -1
  144. package/dist/factories/contracts/isms/hook/OPL2ToL1Ism__factory.d.ts.map +1 -1
  145. package/dist/factories/contracts/isms/hook/OPL2ToL1Ism__factory.js +1 -1
  146. package/dist/factories/contracts/isms/hook/OPL2ToL1Ism__factory.js.map +1 -1
  147. package/dist/factories/contracts/isms/hook/OPStackIsm__factory.d.ts +1 -1
  148. package/dist/factories/contracts/isms/hook/OPStackIsm__factory.d.ts.map +1 -1
  149. package/dist/factories/contracts/isms/hook/OPStackIsm__factory.js +1 -1
  150. package/dist/factories/contracts/isms/hook/OPStackIsm__factory.js.map +1 -1
  151. package/dist/factories/contracts/isms/hook/PolygonPosIsm__factory.d.ts +1 -1
  152. package/dist/factories/contracts/isms/hook/PolygonPosIsm__factory.d.ts.map +1 -1
  153. package/dist/factories/contracts/isms/hook/PolygonPosIsm__factory.js +1 -1
  154. package/dist/factories/contracts/isms/hook/PolygonPosIsm__factory.js.map +1 -1
  155. package/dist/factories/contracts/isms/hook/layer-zero/LayerZeroV2Ism__factory.d.ts +1 -1
  156. package/dist/factories/contracts/isms/hook/layer-zero/LayerZeroV2Ism__factory.d.ts.map +1 -1
  157. package/dist/factories/contracts/isms/hook/layer-zero/LayerZeroV2Ism__factory.js +1 -1
  158. package/dist/factories/contracts/isms/hook/layer-zero/LayerZeroV2Ism__factory.js.map +1 -1
  159. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.d.ts +1 -1
  160. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.js +1 -1
  161. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.d.ts +1 -1
  162. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.js +1 -1
  163. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.d.ts +1 -1
  164. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.js +1 -1
  165. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.d.ts +1 -1
  166. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.js +1 -1
  167. package/dist/factories/contracts/isms/multisig/ValidatorAnnounce__factory.d.ts +1 -1
  168. package/dist/factories/contracts/isms/multisig/ValidatorAnnounce__factory.js +1 -1
  169. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsmFactory__factory.d.ts +1 -1
  170. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsmFactory__factory.js +1 -1
  171. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsm__factory.d.ts +1 -1
  172. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsm__factory.js +1 -1
  173. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsmFactory__factory.d.ts +1 -1
  174. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsmFactory__factory.js +1 -1
  175. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsm__factory.d.ts +1 -1
  176. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsm__factory.js +1 -1
  177. package/dist/factories/contracts/isms/routing/DefaultFallbackRoutingIsm__factory.d.ts +1 -1
  178. package/dist/factories/contracts/isms/routing/DefaultFallbackRoutingIsm__factory.d.ts.map +1 -1
  179. package/dist/factories/contracts/isms/routing/DefaultFallbackRoutingIsm__factory.js +1 -1
  180. package/dist/factories/contracts/isms/routing/DefaultFallbackRoutingIsm__factory.js.map +1 -1
  181. package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory.sol/DomainRoutingIsmFactory__factory.d.ts +1 -1
  182. package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory.sol/DomainRoutingIsmFactory__factory.d.ts.map +1 -1
  183. package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory.sol/DomainRoutingIsmFactory__factory.js +1 -1
  184. package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory.sol/DomainRoutingIsmFactory__factory.js.map +1 -1
  185. package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.d.ts +1 -1
  186. package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.d.ts.map +1 -1
  187. package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.js +1 -1
  188. package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.js.map +1 -1
  189. package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.d.ts +1 -1
  190. package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.js +1 -1
  191. package/dist/factories/contracts/isms/warp-route/RateLimitedIsm__factory.d.ts +1 -1
  192. package/dist/factories/contracts/isms/warp-route/RateLimitedIsm__factory.d.ts.map +1 -1
  193. package/dist/factories/contracts/isms/warp-route/RateLimitedIsm__factory.js +1 -1
  194. package/dist/factories/contracts/isms/warp-route/RateLimitedIsm__factory.js.map +1 -1
  195. package/dist/factories/contracts/libs/EnumerableMapEnrollment__factory.d.ts +1 -1
  196. package/dist/factories/contracts/libs/EnumerableMapEnrollment__factory.js +1 -1
  197. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts +1 -1
  198. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts.map +1 -1
  199. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.js +1 -1
  200. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.js.map +1 -1
  201. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts +1 -1
  202. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts.map +1 -1
  203. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.js +1 -1
  204. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.js.map +1 -1
  205. package/dist/factories/contracts/middleware/libs/OwnableMulticall__factory.d.ts +1 -1
  206. package/dist/factories/contracts/middleware/libs/OwnableMulticall__factory.d.ts.map +1 -1
  207. package/dist/factories/contracts/middleware/libs/OwnableMulticall__factory.js +1 -1
  208. package/dist/factories/contracts/middleware/libs/OwnableMulticall__factory.js.map +1 -1
  209. package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.d.ts +1 -1
  210. package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.d.ts.map +1 -1
  211. package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.js +1 -1
  212. package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.js.map +1 -1
  213. package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.d.ts +1 -1
  214. package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.js +1 -1
  215. package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.d.ts +1 -1
  216. package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.d.ts.map +1 -1
  217. package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.js +1 -1
  218. package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.js.map +1 -1
  219. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts +1 -1
  220. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts.map +1 -1
  221. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.js +1 -1
  222. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.js.map +1 -1
  223. package/dist/factories/contracts/mock/MockMailbox__factory.d.ts +1 -1
  224. package/dist/factories/contracts/mock/MockMailbox__factory.d.ts.map +1 -1
  225. package/dist/factories/contracts/mock/MockMailbox__factory.js +1 -1
  226. package/dist/factories/contracts/mock/MockMailbox__factory.js.map +1 -1
  227. package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismMessenger__factory.d.ts +1 -1
  228. package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismMessenger__factory.d.ts.map +1 -1
  229. package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismMessenger__factory.js +1 -1
  230. package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismMessenger__factory.js.map +1 -1
  231. package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismPortal__factory.d.ts +1 -1
  232. package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismPortal__factory.d.ts.map +1 -1
  233. package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismPortal__factory.js +1 -1
  234. package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismPortal__factory.js.map +1 -1
  235. package/dist/factories/contracts/mock/MockPortalBridge__factory.d.ts +1 -1
  236. package/dist/factories/contracts/mock/MockPortalBridge__factory.js +1 -1
  237. package/dist/factories/contracts/test/TestGasRouter__factory.d.ts +16 -1
  238. package/dist/factories/contracts/test/TestGasRouter__factory.d.ts.map +1 -1
  239. package/dist/factories/contracts/test/TestGasRouter__factory.js +20 -1
  240. package/dist/factories/contracts/test/TestGasRouter__factory.js.map +1 -1
  241. package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.d.ts +1 -1
  242. package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.d.ts.map +1 -1
  243. package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.js +1 -1
  244. package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.js.map +1 -1
  245. package/dist/factories/contracts/test/TestMailbox__factory.d.ts +1 -1
  246. package/dist/factories/contracts/test/TestMailbox__factory.d.ts.map +1 -1
  247. package/dist/factories/contracts/test/TestMailbox__factory.js +1 -1
  248. package/dist/factories/contracts/test/TestMailbox__factory.js.map +1 -1
  249. package/dist/factories/contracts/test/TestMerkleTreeHook__factory.d.ts +1 -1
  250. package/dist/factories/contracts/test/TestMerkleTreeHook__factory.js +1 -1
  251. package/dist/factories/contracts/test/TestMessage__factory.d.ts +1 -1
  252. package/dist/factories/contracts/test/TestMessage__factory.d.ts.map +1 -1
  253. package/dist/factories/contracts/test/TestMessage__factory.js +1 -1
  254. package/dist/factories/contracts/test/TestMessage__factory.js.map +1 -1
  255. package/dist/factories/contracts/test/TestPostDispatchHook__factory.d.ts +1 -1
  256. package/dist/factories/contracts/test/TestPostDispatchHook__factory.js +1 -1
  257. package/dist/factories/contracts/test/TestQuerySender__factory.d.ts +1 -1
  258. package/dist/factories/contracts/test/TestQuerySender__factory.js +1 -1
  259. package/dist/factories/contracts/test/TestQuery__factory.d.ts +1 -1
  260. package/dist/factories/contracts/test/TestQuery__factory.d.ts.map +1 -1
  261. package/dist/factories/contracts/test/TestQuery__factory.js +1 -1
  262. package/dist/factories/contracts/test/TestQuery__factory.js.map +1 -1
  263. package/dist/factories/contracts/test/TestRemoteChallenger__factory.d.ts +1 -1
  264. package/dist/factories/contracts/test/TestRemoteChallenger__factory.js +1 -1
  265. package/dist/factories/contracts/test/TestRouter__factory.d.ts +1 -1
  266. package/dist/factories/contracts/test/TestRouter__factory.js +1 -1
  267. package/dist/factories/contracts/test/TestSendReceiver__factory.d.ts +1 -1
  268. package/dist/factories/contracts/test/TestSendReceiver__factory.js +1 -1
  269. package/dist/factories/contracts/test/avs/TestHyperlaneServiceManager__factory.d.ts +1 -1
  270. package/dist/factories/contracts/test/avs/TestHyperlaneServiceManager__factory.js +1 -1
  271. package/dist/factories/contracts/token/HypERC20Collateral__factory.d.ts +16 -1
  272. package/dist/factories/contracts/token/HypERC20Collateral__factory.d.ts.map +1 -1
  273. package/dist/factories/contracts/token/HypERC20Collateral__factory.js +20 -1
  274. package/dist/factories/contracts/token/HypERC20Collateral__factory.js.map +1 -1
  275. package/dist/factories/contracts/token/HypERC20__factory.d.ts +16 -1
  276. package/dist/factories/contracts/token/HypERC20__factory.d.ts.map +1 -1
  277. package/dist/factories/contracts/token/HypERC20__factory.js +20 -1
  278. package/dist/factories/contracts/token/HypERC20__factory.js.map +1 -1
  279. package/dist/factories/contracts/token/HypERC721Collateral__factory.d.ts +16 -1
  280. package/dist/factories/contracts/token/HypERC721Collateral__factory.d.ts.map +1 -1
  281. package/dist/factories/contracts/token/HypERC721Collateral__factory.js +20 -1
  282. package/dist/factories/contracts/token/HypERC721Collateral__factory.js.map +1 -1
  283. package/dist/factories/contracts/token/HypERC721__factory.d.ts +16 -1
  284. package/dist/factories/contracts/token/HypERC721__factory.d.ts.map +1 -1
  285. package/dist/factories/contracts/token/HypERC721__factory.js +20 -1
  286. package/dist/factories/contracts/token/HypERC721__factory.js.map +1 -1
  287. package/dist/factories/contracts/token/HypNative__factory.d.ts +16 -1
  288. package/dist/factories/contracts/token/HypNative__factory.d.ts.map +1 -1
  289. package/dist/factories/contracts/token/HypNative__factory.js +20 -1
  290. package/dist/factories/contracts/token/HypNative__factory.js.map +1 -1
  291. package/dist/factories/contracts/token/extensions/FastHypERC20Collateral__factory.d.ts +16 -1
  292. package/dist/factories/contracts/token/extensions/FastHypERC20Collateral__factory.d.ts.map +1 -1
  293. package/dist/factories/contracts/token/extensions/FastHypERC20Collateral__factory.js +20 -1
  294. package/dist/factories/contracts/token/extensions/FastHypERC20Collateral__factory.js.map +1 -1
  295. package/dist/factories/contracts/token/extensions/FastHypERC20__factory.d.ts +16 -1
  296. package/dist/factories/contracts/token/extensions/FastHypERC20__factory.d.ts.map +1 -1
  297. package/dist/factories/contracts/token/extensions/FastHypERC20__factory.js +20 -1
  298. package/dist/factories/contracts/token/extensions/FastHypERC20__factory.js.map +1 -1
  299. package/dist/factories/contracts/token/extensions/HypERC4626Collateral__factory.d.ts +24 -1
  300. package/dist/factories/contracts/token/extensions/HypERC4626Collateral__factory.d.ts.map +1 -1
  301. package/dist/factories/contracts/token/extensions/HypERC4626Collateral__factory.js +30 -1
  302. package/dist/factories/contracts/token/extensions/HypERC4626Collateral__factory.js.map +1 -1
  303. package/dist/factories/contracts/token/extensions/HypERC4626OwnerCollateral__factory.d.ts +16 -1
  304. package/dist/factories/contracts/token/extensions/HypERC4626OwnerCollateral__factory.d.ts.map +1 -1
  305. package/dist/factories/contracts/token/extensions/HypERC4626OwnerCollateral__factory.js +20 -1
  306. package/dist/factories/contracts/token/extensions/HypERC4626OwnerCollateral__factory.js.map +1 -1
  307. package/dist/factories/contracts/token/extensions/HypERC4626__factory.d.ts +16 -1
  308. package/dist/factories/contracts/token/extensions/HypERC4626__factory.d.ts.map +1 -1
  309. package/dist/factories/contracts/token/extensions/HypERC4626__factory.js +20 -1
  310. package/dist/factories/contracts/token/extensions/HypERC4626__factory.js.map +1 -1
  311. package/dist/factories/contracts/token/extensions/HypERC721URICollateral__factory.d.ts +16 -1
  312. package/dist/factories/contracts/token/extensions/HypERC721URICollateral__factory.d.ts.map +1 -1
  313. package/dist/factories/contracts/token/extensions/HypERC721URICollateral__factory.js +20 -1
  314. package/dist/factories/contracts/token/extensions/HypERC721URICollateral__factory.js.map +1 -1
  315. package/dist/factories/contracts/token/extensions/HypERC721URIStorage__factory.d.ts +16 -1
  316. package/dist/factories/contracts/token/extensions/HypERC721URIStorage__factory.d.ts.map +1 -1
  317. package/dist/factories/contracts/token/extensions/HypERC721URIStorage__factory.js +20 -1
  318. package/dist/factories/contracts/token/extensions/HypERC721URIStorage__factory.js.map +1 -1
  319. package/dist/factories/contracts/token/extensions/HypFiatToken__factory.d.ts +16 -1
  320. package/dist/factories/contracts/token/extensions/HypFiatToken__factory.d.ts.map +1 -1
  321. package/dist/factories/contracts/token/extensions/HypFiatToken__factory.js +20 -1
  322. package/dist/factories/contracts/token/extensions/HypFiatToken__factory.js.map +1 -1
  323. package/dist/factories/contracts/token/extensions/HypNativeScaled__factory.d.ts +16 -1
  324. package/dist/factories/contracts/token/extensions/HypNativeScaled__factory.d.ts.map +1 -1
  325. package/dist/factories/contracts/token/extensions/HypNativeScaled__factory.js +20 -1
  326. package/dist/factories/contracts/token/extensions/HypNativeScaled__factory.js.map +1 -1
  327. package/dist/factories/contracts/token/extensions/HypXERC20Lockbox__factory.d.ts +16 -1
  328. package/dist/factories/contracts/token/extensions/HypXERC20Lockbox__factory.d.ts.map +1 -1
  329. package/dist/factories/contracts/token/extensions/HypXERC20Lockbox__factory.js +20 -1
  330. package/dist/factories/contracts/token/extensions/HypXERC20Lockbox__factory.js.map +1 -1
  331. package/dist/factories/contracts/token/extensions/HypXERC20__factory.d.ts +16 -1
  332. package/dist/factories/contracts/token/extensions/HypXERC20__factory.d.ts.map +1 -1
  333. package/dist/factories/contracts/token/extensions/HypXERC20__factory.js +20 -1
  334. package/dist/factories/contracts/token/extensions/HypXERC20__factory.js.map +1 -1
  335. package/dist/factories/contracts/token/extensions/WHypERC4626__factory.d.ts +339 -0
  336. package/dist/factories/contracts/token/extensions/WHypERC4626__factory.d.ts.map +1 -0
  337. package/dist/factories/contracts/token/extensions/WHypERC4626__factory.js +458 -0
  338. package/dist/factories/contracts/token/extensions/WHypERC4626__factory.js.map +1 -0
  339. package/dist/factories/contracts/token/extensions/index.d.ts +1 -0
  340. package/dist/factories/contracts/token/extensions/index.d.ts.map +1 -1
  341. package/dist/factories/contracts/token/extensions/index.js +1 -0
  342. package/dist/factories/contracts/token/extensions/index.js.map +1 -1
  343. package/dist/factories/contracts/token/libs/FastTokenRouter__factory.d.ts +15 -0
  344. package/dist/factories/contracts/token/libs/FastTokenRouter__factory.d.ts.map +1 -1
  345. package/dist/factories/contracts/token/libs/FastTokenRouter__factory.js +19 -0
  346. package/dist/factories/contracts/token/libs/FastTokenRouter__factory.js.map +1 -1
  347. package/dist/factories/contracts/token/libs/TokenRouter__factory.d.ts +15 -0
  348. package/dist/factories/contracts/token/libs/TokenRouter__factory.d.ts.map +1 -1
  349. package/dist/factories/contracts/token/libs/TokenRouter__factory.js +19 -0
  350. package/dist/factories/contracts/token/libs/TokenRouter__factory.js.map +1 -1
  351. package/dist/index.d.ts +2 -0
  352. package/dist/index.d.ts.map +1 -1
  353. package/dist/index.js +1 -0
  354. package/dist/index.js.map +1 -1
  355. package/package.json +2 -2
@@ -7,5 +7,5 @@ pragma solidity >=0.6.11;
7
7
  **/
8
8
  abstract contract PackageVersioned {
9
9
  // GENERATED CODE - DO NOT EDIT
10
- string public constant PACKAGE_VERSION = "5.5.0";
10
+ string public constant PACKAGE_VERSION = "5.6.0";
11
11
  }
@@ -1,10 +1,25 @@
1
1
  // SPDX-License-Identifier: MIT OR Apache-2.0
2
2
  pragma solidity >=0.6.11;
3
3
 
4
+ /*@@@@@@@ @@@@@@@@@
5
+ @@@@@@@@@ @@@@@@@@@
6
+ @@@@@@@@@ @@@@@@@@@
7
+ @@@@@@@@@ @@@@@@@@@
8
+ @@@@@@@@@@@@@@@@@@@@@@@@@
9
+ @@@@@ HYPERLANE @@@@@@@
10
+ @@@@@@@@@@@@@@@@@@@@@@@@@
11
+ @@@@@@@@@ @@@@@@@@@
12
+ @@@@@@@@@ @@@@@@@@@
13
+ @@@@@@@@@ @@@@@@@@@
14
+ @@@@@@@@@ @@@@@@@@*/
15
+
16
+ // ============ Internal Imports ============
4
17
  import {Router} from "./Router.sol";
5
18
  import {StandardHookMetadata} from "../hooks/libs/StandardHookMetadata.sol";
6
19
 
7
20
  abstract contract GasRouter is Router {
21
+ event GasSet(uint32 domain, uint256 gas);
22
+
8
23
  // ============ Mutable Storage ============
9
24
  mapping(uint32 => uint256) public destinationGas;
10
25
 
@@ -56,6 +71,7 @@ abstract contract GasRouter is Router {
56
71
 
57
72
  function _setDestinationGas(uint32 domain, uint256 gas) internal {
58
73
  destinationGas[domain] = gas;
74
+ emit GasSet(domain, gas);
59
75
  }
60
76
 
61
77
  function _GasRouter_dispatch(
@@ -9,6 +9,10 @@ library TypeCasts {
9
9
 
10
10
  // alignment preserving cast
11
11
  function bytes32ToAddress(bytes32 _buf) internal pure returns (address) {
12
+ require(
13
+ uint256(_buf) <= uint256(type(uint160).max),
14
+ "TypeCasts: bytes32ToAddress overflow"
15
+ );
12
16
  return address(uint160(uint256(_buf)));
13
17
  }
14
18
  }
@@ -1,10 +1,25 @@
1
1
  // SPDX-License-Identifier: Apache-2.0
2
2
  pragma solidity >=0.8.0;
3
3
 
4
+ /*@@@@@@@ @@@@@@@@@
5
+ @@@@@@@@@ @@@@@@@@@
6
+ @@@@@@@@@ @@@@@@@@@
7
+ @@@@@@@@@ @@@@@@@@@
8
+ @@@@@@@@@@@@@@@@@@@@@@@@@
9
+ @@@@@ HYPERLANE @@@@@@@
10
+ @@@@@@@@@@@@@@@@@@@@@@@@@
11
+ @@@@@@@@@ @@@@@@@@@
12
+ @@@@@@@@@ @@@@@@@@@
13
+ @@@@@@@@@ @@@@@@@@@
14
+ @@@@@@@@@ @@@@@@@@*/
15
+
16
+ // ============ Internal Imports ============
4
17
  import {TokenRouter} from "./libs/TokenRouter.sol";
5
18
  import {TokenMessage} from "./libs/TokenMessage.sol";
6
19
  import {MailboxClient} from "../client/MailboxClient.sol";
7
20
 
21
+ // ============ External Imports ============
22
+ import {Address} from "@openzeppelin/contracts/utils/Address.sol";
8
23
  import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
9
24
  import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
10
25
 
@@ -22,6 +37,7 @@ contract HypERC20Collateral is TokenRouter {
22
37
  * @param erc20 Address of the token to keep as collateral
23
38
  */
24
39
  constructor(address erc20, address _mailbox) TokenRouter(_mailbox) {
40
+ require(Address.isContract(erc20), "HypERC20Collateral: invalid token");
25
41
  wrappedToken = IERC20(erc20);
26
42
  }
27
43
 
@@ -66,11 +66,7 @@ contract HypERC4626Collateral is HypERC20Collateral {
66
66
  // Can't override _transferFromSender only because we need to pass shares in the token message
67
67
  _transferFromSender(_amount);
68
68
  uint256 _shares = _depositIntoVault(_amount);
69
- uint256 _exchangeRate = PRECISION.mulDiv(
70
- vault.totalAssets(),
71
- vault.totalSupply(),
72
- Math.Rounding.Down
73
- );
69
+ uint256 _exchangeRate = vault.convertToAssets(PRECISION);
74
70
 
75
71
  rateUpdateNonce++;
76
72
  bytes memory _tokenMetadata = abi.encode(
@@ -121,15 +117,19 @@ contract HypERC4626Collateral is HypERC20Collateral {
121
117
  * @dev Update the exchange rate on the synthetic token by accounting for additional yield accrued to the underlying vault
122
118
  * @param _destinationDomain domain of the vault
123
119
  */
124
- function rebase(uint32 _destinationDomain) public payable {
120
+ function rebase(
121
+ uint32 _destinationDomain,
122
+ bytes calldata _hookMetadata,
123
+ address _hook
124
+ ) public payable {
125
125
  // force a rebase with an empty transfer to 0x1
126
126
  _transferRemote(
127
127
  _destinationDomain,
128
128
  NULL_RECIPIENT,
129
129
  0,
130
130
  msg.value,
131
- bytes(""),
132
- address(0)
131
+ _hookMetadata,
132
+ _hook
133
133
  );
134
134
  }
135
135
  }
@@ -0,0 +1,113 @@
1
+ // SPDX-License-Identifier: MIT OR Apache-2.0
2
+ pragma solidity >=0.8.0;
3
+
4
+ import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
5
+ import {HypERC4626} from "./HypERC4626.sol";
6
+ import {PackageVersioned} from "../../PackageVersioned.sol";
7
+
8
+ /*@@@@@@@ @@@@@@@@@
9
+ @@@@@@@@@ @@@@@@@@@
10
+ @@@@@@@@@ @@@@@@@@@
11
+ @@@@@@@@@ @@@@@@@@@
12
+ @@@@@@@@@@@@@@@@@@@@@@@@@
13
+ @@@@@ HYPERLANE @@@@@@@
14
+ @@@@@@@@@@@@@@@@@@@@@@@@@
15
+ @@@@@@@@@ @@@@@@@@@
16
+ @@@@@@@@@ @@@@@@@@@
17
+ @@@@@@@@@ @@@@@@@@@
18
+ @@@@@@@@@ @@@@@@@@*/
19
+
20
+ /**
21
+ * @title WHypERC4626
22
+ * @author Abacus Works
23
+ * @notice A wrapper for HypERC4626 that allows for wrapping and unwrapping of underlying rebasing tokens
24
+ */
25
+ contract WHypERC4626 is ERC20, PackageVersioned {
26
+ HypERC4626 public immutable underlying;
27
+
28
+ constructor(
29
+ HypERC4626 _underlying,
30
+ string memory name,
31
+ string memory symbol
32
+ ) ERC20(name, symbol) {
33
+ underlying = _underlying;
34
+ }
35
+
36
+ /*
37
+ * @notice Wraps an amount of underlying tokens into wrapped tokens
38
+ * @param _underlyingAmount The amount of underlying tokens to wrap
39
+ * @return The amount of wrapped tokens
40
+ */
41
+ function wrap(uint256 _underlyingAmount) external returns (uint256) {
42
+ require(
43
+ _underlyingAmount > 0,
44
+ "WHypERC4626: wrap amount must be greater than 0"
45
+ );
46
+ uint256 wrappedAmount = underlying.assetsToShares(_underlyingAmount);
47
+ _mint(msg.sender, wrappedAmount);
48
+ underlying.transferFrom(msg.sender, address(this), _underlyingAmount);
49
+ return wrappedAmount;
50
+ }
51
+
52
+ /*
53
+ * @notice Unwraps an amount of wrapped tokens into underlying tokens
54
+ * @param _wrappedAmount The amount of wrapped tokens to unwrap
55
+ * @return The amount of underlying tokens
56
+ */
57
+ function unwrap(uint256 _wrappedAmount) external returns (uint256) {
58
+ require(
59
+ _wrappedAmount > 0,
60
+ "WHypERC4626: unwrap amount must be greater than 0"
61
+ );
62
+ uint256 underlyingAmount = underlying.sharesToAssets(_wrappedAmount);
63
+ _burn(msg.sender, _wrappedAmount);
64
+ underlying.transfer(msg.sender, underlyingAmount);
65
+ return underlyingAmount;
66
+ }
67
+
68
+ /*
69
+ * @notice Gets the amount of wrapped tokens for a given amount of underlying tokens
70
+ * @param _underlyingAmount The amount of underlying tokens
71
+ * @return The amount of wrapped tokens
72
+ */
73
+ function getWrappedAmount(
74
+ uint256 _underlyingAmount
75
+ ) external view returns (uint256) {
76
+ return underlying.assetsToShares(_underlyingAmount);
77
+ }
78
+
79
+ /*
80
+ * @notice Gets the amount of underlying tokens for a given amount of wrapped tokens
81
+ * @param _wrappedAmount The amount of wrapped tokens
82
+ * @return The amount of underlying tokens
83
+ */
84
+ function getUnderlyingAmount(
85
+ uint256 _wrappedAmount
86
+ ) external view returns (uint256) {
87
+ return underlying.sharesToAssets(_wrappedAmount);
88
+ }
89
+
90
+ /*
91
+ * @notice Gets the amount of wrapped tokens for 1 unit of underlying tokens
92
+ * @return The amount of wrapped tokens
93
+ */
94
+ function wrappedPerUnderlying() external view returns (uint256) {
95
+ return underlying.assetsToShares(1 * 10 ** underlying.decimals());
96
+ }
97
+
98
+ /*
99
+ * @notice Gets the amount of underlying tokens for 1 unit of wrapped tokens
100
+ * @return The amount of underlying tokens
101
+ */
102
+ function underlyingPerWrapped() external view returns (uint256) {
103
+ return underlying.sharesToAssets(1 * 10 ** decimals());
104
+ }
105
+
106
+ /*
107
+ * @notice Gets the decimals of the wrapped token
108
+ * @return The decimals of the wrapped token
109
+ */
110
+ function decimals() public view override returns (uint8) {
111
+ return underlying.decimals();
112
+ }
113
+ }