@paraswap/dex-lib 2.42.22 → 2.42.23

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 (225) hide show
  1. package/build/abi/hashflow/HashflowRouter.abi.json +816 -246
  2. package/build/abi/kyberswap-elastic/IAntiSnipAttackPositionManager.json +1276 -0
  3. package/build/abi/kyberswap-elastic/IFactory.json +550 -0
  4. package/build/abi/kyberswap-elastic/IPool.json +1042 -0
  5. package/build/abi/kyberswap-elastic/IQuoterV2.json +226 -0
  6. package/build/abi/kyberswap-elastic/IRouter.json +239 -0
  7. package/build/abi/kyberswap-elastic/TicksFeesReader.json +142 -0
  8. package/build/abi/wombat/asset.json +769 -0
  9. package/build/abi/wombat/bmw.json +1247 -0
  10. package/build/abi/wombat/pool.json +1364 -0
  11. package/build/config.js +14 -14
  12. package/build/dex/baseswap-v3/baseswap-v3-factory.d.ts +26 -0
  13. package/build/dex/baseswap-v3/baseswap-v3-factory.js +44 -0
  14. package/build/dex/baseswap-v3/baseswap-v3-factory.js.map +1 -0
  15. package/build/dex/baseswap-v3/baseswap-v3-pool.d.ts +46 -0
  16. package/build/dex/baseswap-v3/baseswap-v3-pool.js +312 -0
  17. package/build/dex/baseswap-v3/baseswap-v3-pool.js.map +1 -0
  18. package/build/dex/baseswap-v3/baseswap-v3.d.ts +71 -0
  19. package/build/dex/baseswap-v3/baseswap-v3.js +752 -0
  20. package/build/dex/baseswap-v3/baseswap-v3.js.map +1 -0
  21. package/build/dex/baseswap-v3/config.d.ts +9 -0
  22. package/build/dex/baseswap-v3/config.js +48 -0
  23. package/build/dex/baseswap-v3/config.js.map +1 -0
  24. package/build/dex/baseswap-v3/constants.d.ts +28 -0
  25. package/build/dex/baseswap-v3/constants.js +35 -0
  26. package/build/dex/baseswap-v3/constants.js.map +1 -0
  27. package/build/dex/baseswap-v3/contract-math/BitMath.d.ts +4 -0
  28. package/build/dex/baseswap-v3/contract-math/BitMath.js +93 -0
  29. package/build/dex/baseswap-v3/contract-math/BitMath.js.map +1 -0
  30. package/build/dex/baseswap-v3/contract-math/FixedPoint128.d.ts +3 -0
  31. package/build/dex/baseswap-v3/contract-math/FixedPoint128.js +8 -0
  32. package/build/dex/baseswap-v3/contract-math/FixedPoint128.js.map +1 -0
  33. package/build/dex/baseswap-v3/contract-math/FixedPoint96.d.ts +4 -0
  34. package/build/dex/baseswap-v3/contract-math/FixedPoint96.js +9 -0
  35. package/build/dex/baseswap-v3/contract-math/FixedPoint96.js.map +1 -0
  36. package/build/dex/baseswap-v3/contract-math/FullMath.d.ts +4 -0
  37. package/build/dex/baseswap-v3/contract-math/FullMath.js +19 -0
  38. package/build/dex/baseswap-v3/contract-math/FullMath.js.map +1 -0
  39. package/build/dex/baseswap-v3/contract-math/LiquidityMath.d.ts +3 -0
  40. package/build/dex/baseswap-v3/contract-math/LiquidityMath.js +22 -0
  41. package/build/dex/baseswap-v3/contract-math/LiquidityMath.js.map +1 -0
  42. package/build/dex/baseswap-v3/contract-math/Oracle.d.ts +10 -0
  43. package/build/dex/baseswap-v3/contract-math/Oracle.js +133 -0
  44. package/build/dex/baseswap-v3/contract-math/Oracle.js.map +1 -0
  45. package/build/dex/baseswap-v3/contract-math/SqrtPriceMath.d.ts +10 -0
  46. package/build/dex/baseswap-v3/contract-math/SqrtPriceMath.js +91 -0
  47. package/build/dex/baseswap-v3/contract-math/SqrtPriceMath.js.map +1 -0
  48. package/build/dex/baseswap-v3/contract-math/SwapMath.d.ts +8 -0
  49. package/build/dex/baseswap-v3/contract-math/SwapMath.js +70 -0
  50. package/build/dex/baseswap-v3/contract-math/SwapMath.js.map +1 -0
  51. package/build/dex/baseswap-v3/contract-math/Tick.d.ts +7 -0
  52. package/build/dex/baseswap-v3/contract-math/Tick.js +45 -0
  53. package/build/dex/baseswap-v3/contract-math/Tick.js.map +1 -0
  54. package/build/dex/baseswap-v3/contract-math/TickBitMap.d.ts +7 -0
  55. package/build/dex/baseswap-v3/contract-math/TickBitMap.js +84 -0
  56. package/build/dex/baseswap-v3/contract-math/TickBitMap.js.map +1 -0
  57. package/build/dex/baseswap-v3/contract-math/TickMath.d.ts +8 -0
  58. package/build/dex/baseswap-v3/contract-math/TickMath.js +162 -0
  59. package/build/dex/baseswap-v3/contract-math/TickMath.js.map +1 -0
  60. package/build/dex/baseswap-v3/contract-math/UnsafeMath.d.ts +3 -0
  61. package/build/dex/baseswap-v3/contract-math/UnsafeMath.js +10 -0
  62. package/build/dex/baseswap-v3/contract-math/UnsafeMath.js.map +1 -0
  63. package/build/dex/baseswap-v3/contract-math/uniswap-v3-math.d.ts +37 -0
  64. package/build/dex/baseswap-v3/contract-math/uniswap-v3-math.js +393 -0
  65. package/build/dex/baseswap-v3/contract-math/uniswap-v3-math.js.map +1 -0
  66. package/build/dex/baseswap-v3/contract-math/utils.d.ts +7 -0
  67. package/build/dex/baseswap-v3/contract-math/utils.js +42 -0
  68. package/build/dex/baseswap-v3/contract-math/utils.js.map +1 -0
  69. package/build/dex/baseswap-v3/types.d.ts +164 -0
  70. package/build/dex/baseswap-v3/types.js +9 -0
  71. package/build/dex/baseswap-v3/types.js.map +1 -0
  72. package/build/dex/baseswap-v3/utils.d.ts +6 -0
  73. package/build/dex/baseswap-v3/utils.js +65 -0
  74. package/build/dex/baseswap-v3/utils.js.map +1 -0
  75. package/build/dex/hashflow/config.d.ts +1 -1
  76. package/build/dex/hashflow/config.js +6 -6
  77. package/build/dex/hashflow/config.js.map +1 -1
  78. package/build/dex/hashflow/hashflow.d.ts +7 -7
  79. package/build/dex/hashflow/hashflow.js +47 -54
  80. package/build/dex/hashflow/hashflow.js.map +1 -1
  81. package/build/dex/hashflow/rate-fetcher.d.ts +1 -1
  82. package/build/dex/hashflow/rate-fetcher.js +2 -4
  83. package/build/dex/hashflow/rate-fetcher.js.map +1 -1
  84. package/build/dex/hashflow/types.d.ts +5 -6
  85. package/build/dex/hashflow/types.js.map +1 -1
  86. package/build/dex/hashflow/validators.js +11 -4
  87. package/build/dex/hashflow/validators.js.map +1 -1
  88. package/build/dex/hello/config.d.ts +4 -0
  89. package/build/dex/hello/config.js +15 -0
  90. package/build/dex/hello/config.js.map +1 -0
  91. package/build/dex/hello/hello-pool.d.ts +39 -0
  92. package/build/dex/hello/hello-pool.js +64 -0
  93. package/build/dex/hello/hello-pool.js.map +1 -0
  94. package/build/dex/hello/hello.d.ts +37 -0
  95. package/build/dex/hello/hello.js +126 -0
  96. package/build/dex/hello/hello.js.map +1 -0
  97. package/build/dex/hello/types.d.ts +6 -0
  98. package/build/dex/hello/types.js +3 -0
  99. package/build/dex/hello/types.js.map +1 -0
  100. package/build/dex/kyberswap-elastic/config.d.ts +4 -0
  101. package/build/dex/kyberswap-elastic/config.js +80 -0
  102. package/build/dex/kyberswap-elastic/config.js.map +1 -0
  103. package/build/dex/kyberswap-elastic/constants.d.ts +17 -0
  104. package/build/dex/kyberswap-elastic/constants.js +42 -0
  105. package/build/dex/kyberswap-elastic/constants.js.map +1 -0
  106. package/build/dex/kyberswap-elastic/contract-math/FixedPoint96.d.ts +4 -0
  107. package/build/dex/kyberswap-elastic/contract-math/FixedPoint96.js +9 -0
  108. package/build/dex/kyberswap-elastic/contract-math/FixedPoint96.js.map +1 -0
  109. package/build/dex/kyberswap-elastic/contract-math/FullMath.d.ts +5 -0
  110. package/build/dex/kyberswap-elastic/contract-math/FullMath.js +22 -0
  111. package/build/dex/kyberswap-elastic/contract-math/FullMath.js.map +1 -0
  112. package/build/dex/kyberswap-elastic/contract-math/LiqDeltaMath.d.ts +3 -0
  113. package/build/dex/kyberswap-elastic/contract-math/LiqDeltaMath.js +12 -0
  114. package/build/dex/kyberswap-elastic/contract-math/LiqDeltaMath.js.map +1 -0
  115. package/build/dex/kyberswap-elastic/contract-math/LiquidityMath.d.ts +3 -0
  116. package/build/dex/kyberswap-elastic/contract-math/LiquidityMath.js +22 -0
  117. package/build/dex/kyberswap-elastic/contract-math/LiquidityMath.js.map +1 -0
  118. package/build/dex/kyberswap-elastic/contract-math/QtyDeltaMath.d.ts +5 -0
  119. package/build/dex/kyberswap-elastic/contract-math/QtyDeltaMath.js +25 -0
  120. package/build/dex/kyberswap-elastic/contract-math/QtyDeltaMath.js.map +1 -0
  121. package/build/dex/kyberswap-elastic/contract-math/QuadMath.d.ts +4 -0
  122. package/build/dex/kyberswap-elastic/contract-math/QuadMath.js +27 -0
  123. package/build/dex/kyberswap-elastic/contract-math/QuadMath.js.map +1 -0
  124. package/build/dex/kyberswap-elastic/contract-math/ReinvestmentMath.d.ts +3 -0
  125. package/build/dex/kyberswap-elastic/contract-math/ReinvestmentMath.js +14 -0
  126. package/build/dex/kyberswap-elastic/contract-math/ReinvestmentMath.js.map +1 -0
  127. package/build/dex/kyberswap-elastic/contract-math/SafeCast.d.ts +8 -0
  128. package/build/dex/kyberswap-elastic/contract-math/SafeCast.js +30 -0
  129. package/build/dex/kyberswap-elastic/contract-math/SafeCast.js.map +1 -0
  130. package/build/dex/kyberswap-elastic/contract-math/SqrtPriceMath.d.ts +10 -0
  131. package/build/dex/kyberswap-elastic/contract-math/SqrtPriceMath.js +91 -0
  132. package/build/dex/kyberswap-elastic/contract-math/SqrtPriceMath.js.map +1 -0
  133. package/build/dex/kyberswap-elastic/contract-math/SwapMath.d.ts +13 -0
  134. package/build/dex/kyberswap-elastic/contract-math/SwapMath.js +188 -0
  135. package/build/dex/kyberswap-elastic/contract-math/SwapMath.js.map +1 -0
  136. package/build/dex/kyberswap-elastic/contract-math/TickLinkedList.d.ts +6 -0
  137. package/build/dex/kyberswap-elastic/contract-math/TickLinkedList.js +41 -0
  138. package/build/dex/kyberswap-elastic/contract-math/TickLinkedList.js.map +1 -0
  139. package/build/dex/kyberswap-elastic/contract-math/TickMath.d.ts +9 -0
  140. package/build/dex/kyberswap-elastic/contract-math/TickMath.js +165 -0
  141. package/build/dex/kyberswap-elastic/contract-math/TickMath.js.map +1 -0
  142. package/build/dex/kyberswap-elastic/contract-math/UnsafeMath.d.ts +3 -0
  143. package/build/dex/kyberswap-elastic/contract-math/UnsafeMath.js +10 -0
  144. package/build/dex/kyberswap-elastic/contract-math/UnsafeMath.js.map +1 -0
  145. package/build/dex/kyberswap-elastic/contract-math/kyberswap-elastic-math.d.ts +28 -0
  146. package/build/dex/kyberswap-elastic/contract-math/kyberswap-elastic-math.js +502 -0
  147. package/build/dex/kyberswap-elastic/contract-math/kyberswap-elastic-math.js.map +1 -0
  148. package/build/dex/kyberswap-elastic/contract-math/utils.d.ts +3 -0
  149. package/build/dex/kyberswap-elastic/contract-math/utils.js +16 -0
  150. package/build/dex/kyberswap-elastic/contract-math/utils.js.map +1 -0
  151. package/build/dex/kyberswap-elastic/errors.d.ts +2 -0
  152. package/build/dex/kyberswap-elastic/errors.js +6 -0
  153. package/build/dex/kyberswap-elastic/errors.js.map +1 -0
  154. package/build/dex/kyberswap-elastic/kyberswap-elastic-pool.d.ts +80 -0
  155. package/build/dex/kyberswap-elastic/kyberswap-elastic-pool.js +458 -0
  156. package/build/dex/kyberswap-elastic/kyberswap-elastic-pool.js.map +1 -0
  157. package/build/dex/kyberswap-elastic/kyberswap-elastic.d.ts +53 -0
  158. package/build/dex/kyberswap-elastic/kyberswap-elastic.js +610 -0
  159. package/build/dex/kyberswap-elastic/kyberswap-elastic.js.map +1 -0
  160. package/build/dex/kyberswap-elastic/types.d.ts +134 -0
  161. package/build/dex/kyberswap-elastic/types.js +9 -0
  162. package/build/dex/kyberswap-elastic/types.js.map +1 -0
  163. package/build/dex/kyberswap-elastic/utils/decoders.d.ts +9 -0
  164. package/build/dex/kyberswap-elastic/utils/decoders.js +78 -0
  165. package/build/dex/kyberswap-elastic/utils/decoders.js.map +1 -0
  166. package/build/dex/morphex/config.d.ts +11 -0
  167. package/build/dex/morphex/config.js +43 -0
  168. package/build/dex/morphex/config.js.map +1 -0
  169. package/build/dex/morphex/morphex.d.ts +25 -0
  170. package/build/dex/morphex/morphex.js +19 -0
  171. package/build/dex/morphex/morphex.js.map +1 -0
  172. package/build/dex/my-test-dex/config.d.ts +4 -0
  173. package/build/dex/my-test-dex/config.js +15 -0
  174. package/build/dex/my-test-dex/config.js.map +1 -0
  175. package/build/dex/my-test-dex/my-test-dex-pool.d.ts +39 -0
  176. package/build/dex/my-test-dex/my-test-dex-pool.js +64 -0
  177. package/build/dex/my-test-dex/my-test-dex-pool.js.map +1 -0
  178. package/build/dex/my-test-dex/my-test-dex.d.ts +37 -0
  179. package/build/dex/my-test-dex/my-test-dex.js +126 -0
  180. package/build/dex/my-test-dex/my-test-dex.js.map +1 -0
  181. package/build/dex/my-test-dex/types.d.ts +6 -0
  182. package/build/dex/my-test-dex/types.js +3 -0
  183. package/build/dex/my-test-dex/types.js.map +1 -0
  184. package/build/dex/solidly/forks-override/fvm.d.ts +20 -0
  185. package/build/dex/solidly/forks-override/fvm.js +42 -0
  186. package/build/dex/solidly/forks-override/fvm.js.map +1 -0
  187. package/build/dex/wombat/config.d.ts +4 -0
  188. package/build/dex/wombat/config.js +99 -0
  189. package/build/dex/wombat/config.js.map +1 -0
  190. package/build/dex/wombat/types.d.ts +33 -0
  191. package/build/dex/wombat/types.js +3 -0
  192. package/build/dex/wombat/types.js.map +1 -0
  193. package/build/dex/wombat/utils.d.ts +9 -0
  194. package/build/dex/wombat/utils.js +66 -0
  195. package/build/dex/wombat/utils.js.map +1 -0
  196. package/build/dex/wombat/wombat-bmw.d.ts +40 -0
  197. package/build/dex/wombat/wombat-bmw.js +147 -0
  198. package/build/dex/wombat/wombat-bmw.js.map +1 -0
  199. package/build/dex/wombat/wombat-pool.d.ts +22 -0
  200. package/build/dex/wombat/wombat-pool.js +161 -0
  201. package/build/dex/wombat/wombat-pool.js.map +1 -0
  202. package/build/dex/wombat/wombat-quoter.d.ts +16 -0
  203. package/build/dex/wombat/wombat-quoter.js +176 -0
  204. package/build/dex/wombat/wombat-quoter.js.map +1 -0
  205. package/build/dex/wombat/wombat.d.ts +55 -0
  206. package/build/dex/wombat/wombat.js +290 -0
  207. package/build/dex/wombat/wombat.js.map +1 -0
  208. package/build/lib/fetcher/fetcher.d.ts +1 -1
  209. package/build/lib/fetcher/fetcher.js.map +1 -1
  210. package/package.json +2 -2
  211. package/src/abi/hashflow/HashflowRouter.abi.json +816 -246
  212. package/src/config.ts +14 -14
  213. package/src/dex/hashflow/config.ts +8 -8
  214. package/src/dex/hashflow/hashflow-e2e.test.ts +4 -4
  215. package/src/dex/hashflow/hashflow-integration.test.ts +9 -6
  216. package/src/dex/hashflow/hashflow.ts +70 -87
  217. package/src/dex/hashflow/rate-fetcher.ts +6 -8
  218. package/src/dex/hashflow/types.ts +5 -6
  219. package/src/dex/hashflow/validators.ts +11 -4
  220. package/src/lib/fetcher/fetcher.ts +2 -2
  221. package/tests/constants-e2e.ts +1 -1
  222. package/tests/tenderly-simulation.ts +5 -2
  223. package/.vscode/launch.json +0 -39
  224. package/.vscode/settings.json +0 -2
  225. package/.vscode/tasks.json +0 -15
@@ -5,28 +5,53 @@
5
5
  {
6
6
  "indexed": false,
7
7
  "internalType": "address",
8
- "name": "governance",
8
+ "name": "guardian",
9
9
  "type": "address"
10
- },
10
+ }
11
+ ],
12
+ "name": "UpdateLimitOrderGuardian",
13
+ "type": "event"
14
+ },
15
+ {
16
+ "anonymous": false,
17
+ "inputs": [
11
18
  {
12
19
  "indexed": false,
13
20
  "internalType": "address",
14
- "name": "prevGovernance",
21
+ "name": "pool",
15
22
  "type": "address"
23
+ },
24
+ {
25
+ "indexed": false,
26
+ "internalType": "bool",
27
+ "name": "authorized",
28
+ "type": "bool"
16
29
  }
17
30
  ],
18
- "name": "UpdateGovernance",
31
+ "name": "UpdatePoolAuthorizaton",
19
32
  "type": "event"
20
33
  },
21
34
  {
22
35
  "anonymous": false,
23
36
  "inputs": [
24
37
  {
25
- "indexed": false,
38
+ "indexed": true,
26
39
  "internalType": "address",
27
- "name": "migrationRouter",
40
+ "name": "pool",
28
41
  "type": "address"
29
42
  },
43
+ {
44
+ "indexed": false,
45
+ "internalType": "uint16",
46
+ "name": "otherHashflowChainId",
47
+ "type": "uint16"
48
+ },
49
+ {
50
+ "indexed": false,
51
+ "internalType": "bytes32",
52
+ "name": "caller",
53
+ "type": "bytes32"
54
+ },
30
55
  {
31
56
  "indexed": false,
32
57
  "internalType": "bool",
@@ -34,18 +59,24 @@
34
59
  "type": "bool"
35
60
  }
36
61
  ],
37
- "name": "UpdateMigrationRouterStatus",
62
+ "name": "UpdateXChainCallerAuthorization",
38
63
  "type": "event"
39
64
  },
40
65
  {
41
66
  "anonymous": false,
42
67
  "inputs": [
43
68
  {
44
- "indexed": false,
69
+ "indexed": true,
45
70
  "internalType": "address",
46
71
  "name": "pool",
47
72
  "type": "address"
48
73
  },
74
+ {
75
+ "indexed": false,
76
+ "internalType": "address",
77
+ "name": "xChainMessenger",
78
+ "type": "address"
79
+ },
49
80
  {
50
81
  "indexed": false,
51
82
  "internalType": "bool",
@@ -53,26 +84,63 @@
53
84
  "type": "bool"
54
85
  }
55
86
  ],
56
- "name": "UpdatePoolAuthorizaton",
87
+ "name": "UpdateXChainMessengerAuthorization",
57
88
  "type": "event"
58
89
  },
59
90
  {
60
91
  "anonymous": false,
61
92
  "inputs": [
93
+ {
94
+ "indexed": true,
95
+ "internalType": "address",
96
+ "name": "callee",
97
+ "type": "address"
98
+ },
62
99
  {
63
100
  "indexed": false,
64
101
  "internalType": "address",
65
- "name": "xChainUa",
102
+ "name": "xChainMessenger",
66
103
  "type": "address"
67
104
  },
68
105
  {
69
106
  "indexed": false,
107
+ "internalType": "bool",
108
+ "name": "authorized",
109
+ "type": "bool"
110
+ }
111
+ ],
112
+ "name": "UpdateXChainMessengerCallerAuthorization",
113
+ "type": "event"
114
+ },
115
+ {
116
+ "anonymous": false,
117
+ "inputs": [
118
+ {
119
+ "indexed": true,
70
120
  "internalType": "address",
71
- "name": "prevXChainUa",
121
+ "name": "pool",
72
122
  "type": "address"
123
+ },
124
+ {
125
+ "indexed": false,
126
+ "internalType": "uint16",
127
+ "name": "otherHashflowChainId",
128
+ "type": "uint16"
129
+ },
130
+ {
131
+ "indexed": false,
132
+ "internalType": "bytes32",
133
+ "name": "otherChainPool",
134
+ "type": "bytes32"
135
+ },
136
+ {
137
+ "indexed": false,
138
+ "internalType": "bool",
139
+ "name": "authorized",
140
+ "type": "bool"
73
141
  }
74
142
  ],
75
- "name": "UpdateXChainUA",
143
+ "name": "UpdateXChainPoolAuthorization",
76
144
  "type": "event"
77
145
  },
78
146
  {
@@ -81,21 +149,395 @@
81
149
  "internalType": "address",
82
150
  "name": "pool",
83
151
  "type": "address"
152
+ }
153
+ ],
154
+ "name": "authorizedPools",
155
+ "outputs": [
156
+ {
157
+ "internalType": "bool",
158
+ "name": "",
159
+ "type": "bool"
160
+ }
161
+ ],
162
+ "stateMutability": "view",
163
+ "type": "function"
164
+ },
165
+ {
166
+ "inputs": [
167
+ {
168
+ "internalType": "address",
169
+ "name": "dstContract",
170
+ "type": "address"
171
+ },
172
+ {
173
+ "internalType": "uint16",
174
+ "name": "srcHashflowChainId",
175
+ "type": "uint16"
84
176
  },
177
+ {
178
+ "internalType": "bytes32",
179
+ "name": "caller",
180
+ "type": "bytes32"
181
+ }
182
+ ],
183
+ "name": "authorizedXChainCallers",
184
+ "outputs": [
185
+ {
186
+ "internalType": "bool",
187
+ "name": "",
188
+ "type": "bool"
189
+ }
190
+ ],
191
+ "stateMutability": "view",
192
+ "type": "function"
193
+ },
194
+ {
195
+ "inputs": [
85
196
  {
86
197
  "internalType": "address",
87
- "name": "token",
198
+ "name": "callee",
199
+ "type": "address"
200
+ },
201
+ {
202
+ "internalType": "address",
203
+ "name": "messenger",
204
+ "type": "address"
205
+ }
206
+ ],
207
+ "name": "authorizedXChainMessengersByCallee",
208
+ "outputs": [
209
+ {
210
+ "internalType": "bool",
211
+ "name": "",
212
+ "type": "bool"
213
+ }
214
+ ],
215
+ "stateMutability": "view",
216
+ "type": "function"
217
+ },
218
+ {
219
+ "inputs": [
220
+ {
221
+ "internalType": "address",
222
+ "name": "pool",
223
+ "type": "address"
224
+ },
225
+ {
226
+ "internalType": "address",
227
+ "name": "messenger",
228
+ "type": "address"
229
+ }
230
+ ],
231
+ "name": "authorizedXChainMessengersByPool",
232
+ "outputs": [
233
+ {
234
+ "internalType": "bool",
235
+ "name": "",
236
+ "type": "bool"
237
+ }
238
+ ],
239
+ "stateMutability": "view",
240
+ "type": "function"
241
+ },
242
+ {
243
+ "inputs": [
244
+ {
245
+ "internalType": "bytes32",
246
+ "name": "dstPool",
247
+ "type": "bytes32"
248
+ },
249
+ {
250
+ "internalType": "uint16",
251
+ "name": "srcHChainId",
252
+ "type": "uint16"
253
+ },
254
+ {
255
+ "internalType": "bytes32",
256
+ "name": "srcPool",
257
+ "type": "bytes32"
258
+ }
259
+ ],
260
+ "name": "authorizedXChainPools",
261
+ "outputs": [
262
+ {
263
+ "internalType": "bool",
264
+ "name": "",
265
+ "type": "bool"
266
+ }
267
+ ],
268
+ "stateMutability": "view",
269
+ "type": "function"
270
+ },
271
+ {
272
+ "inputs": [],
273
+ "name": "factory",
274
+ "outputs": [
275
+ {
276
+ "internalType": "address",
277
+ "name": "",
278
+ "type": "address"
279
+ }
280
+ ],
281
+ "stateMutability": "view",
282
+ "type": "function"
283
+ },
284
+ {
285
+ "inputs": [
286
+ {
287
+ "components": [
288
+ {
289
+ "internalType": "uint16",
290
+ "name": "srcHashflowChainId",
291
+ "type": "uint16"
292
+ },
293
+ {
294
+ "internalType": "bytes32",
295
+ "name": "srcPool",
296
+ "type": "bytes32"
297
+ },
298
+ {
299
+ "internalType": "address",
300
+ "name": "dstPool",
301
+ "type": "address"
302
+ },
303
+ {
304
+ "internalType": "address",
305
+ "name": "dstExternalAccount",
306
+ "type": "address"
307
+ },
308
+ {
309
+ "internalType": "address",
310
+ "name": "dstTrader",
311
+ "type": "address"
312
+ },
313
+ {
314
+ "internalType": "address",
315
+ "name": "quoteToken",
316
+ "type": "address"
317
+ },
318
+ {
319
+ "internalType": "uint256",
320
+ "name": "quoteTokenAmount",
321
+ "type": "uint256"
322
+ },
323
+ {
324
+ "internalType": "bytes32",
325
+ "name": "txid",
326
+ "type": "bytes32"
327
+ },
328
+ {
329
+ "internalType": "bytes32",
330
+ "name": "srcCaller",
331
+ "type": "bytes32"
332
+ },
333
+ {
334
+ "internalType": "address",
335
+ "name": "dstContract",
336
+ "type": "address"
337
+ },
338
+ {
339
+ "internalType": "bytes",
340
+ "name": "dstContractCalldata",
341
+ "type": "bytes"
342
+ }
343
+ ],
344
+ "internalType": "struct IHashflowRouter.XChainFillMessage",
345
+ "name": "fillMessage",
346
+ "type": "tuple"
347
+ }
348
+ ],
349
+ "name": "fillXChain",
350
+ "outputs": [],
351
+ "stateMutability": "nonpayable",
352
+ "type": "function"
353
+ },
354
+ {
355
+ "inputs": [
356
+ {
357
+ "internalType": "address",
358
+ "name": "pool",
359
+ "type": "address"
360
+ }
361
+ ],
362
+ "name": "forceUnauthorizePool",
363
+ "outputs": [],
364
+ "stateMutability": "nonpayable",
365
+ "type": "function"
366
+ },
367
+ {
368
+ "inputs": [
369
+ {
370
+ "internalType": "address",
371
+ "name": "factory",
372
+ "type": "address"
373
+ }
374
+ ],
375
+ "name": "initialize",
376
+ "outputs": [],
377
+ "stateMutability": "nonpayable",
378
+ "type": "function"
379
+ },
380
+ {
381
+ "inputs": [
382
+ {
383
+ "internalType": "address",
384
+ "name": "pool",
88
385
  "type": "address"
89
386
  },
90
387
  {
91
- "internalType": "uint256",
92
- "name": "amount",
93
- "type": "uint256"
388
+ "internalType": "bool",
389
+ "name": "enabled",
390
+ "type": "bool"
391
+ }
392
+ ],
393
+ "name": "killswitchPool",
394
+ "outputs": [],
395
+ "stateMutability": "nonpayable",
396
+ "type": "function"
397
+ },
398
+ {
399
+ "inputs": [
400
+ {
401
+ "components": [
402
+ {
403
+ "internalType": "address",
404
+ "name": "pool",
405
+ "type": "address"
406
+ },
407
+ {
408
+ "internalType": "address",
409
+ "name": "externalAccount",
410
+ "type": "address"
411
+ },
412
+ {
413
+ "internalType": "address",
414
+ "name": "trader",
415
+ "type": "address"
416
+ },
417
+ {
418
+ "internalType": "address",
419
+ "name": "baseToken",
420
+ "type": "address"
421
+ },
422
+ {
423
+ "internalType": "address",
424
+ "name": "quoteToken",
425
+ "type": "address"
426
+ },
427
+ {
428
+ "internalType": "uint256",
429
+ "name": "baseTokenAmount",
430
+ "type": "uint256"
431
+ },
432
+ {
433
+ "internalType": "uint256",
434
+ "name": "quoteTokenAmount",
435
+ "type": "uint256"
436
+ },
437
+ {
438
+ "internalType": "uint256",
439
+ "name": "quoteExpiry",
440
+ "type": "uint256"
441
+ },
442
+ {
443
+ "internalType": "bytes32",
444
+ "name": "txid",
445
+ "type": "bytes32"
446
+ },
447
+ {
448
+ "internalType": "bytes",
449
+ "name": "takerSignature",
450
+ "type": "bytes"
451
+ },
452
+ {
453
+ "internalType": "bytes",
454
+ "name": "makerSignature",
455
+ "type": "bytes"
456
+ }
457
+ ],
458
+ "internalType": "struct IQuote.RFQMQuote",
459
+ "name": "quote",
460
+ "type": "tuple"
461
+ }
462
+ ],
463
+ "name": "tradeRFQM",
464
+ "outputs": [],
465
+ "stateMutability": "nonpayable",
466
+ "type": "function"
467
+ },
468
+ {
469
+ "inputs": [
470
+ {
471
+ "components": [
472
+ {
473
+ "internalType": "address",
474
+ "name": "pool",
475
+ "type": "address"
476
+ },
477
+ {
478
+ "internalType": "address",
479
+ "name": "externalAccount",
480
+ "type": "address"
481
+ },
482
+ {
483
+ "internalType": "address",
484
+ "name": "trader",
485
+ "type": "address"
486
+ },
487
+ {
488
+ "internalType": "address",
489
+ "name": "baseToken",
490
+ "type": "address"
491
+ },
492
+ {
493
+ "internalType": "address",
494
+ "name": "quoteToken",
495
+ "type": "address"
496
+ },
497
+ {
498
+ "internalType": "uint256",
499
+ "name": "baseTokenAmount",
500
+ "type": "uint256"
501
+ },
502
+ {
503
+ "internalType": "uint256",
504
+ "name": "quoteTokenAmount",
505
+ "type": "uint256"
506
+ },
507
+ {
508
+ "internalType": "uint256",
509
+ "name": "quoteExpiry",
510
+ "type": "uint256"
511
+ },
512
+ {
513
+ "internalType": "bytes32",
514
+ "name": "txid",
515
+ "type": "bytes32"
516
+ },
517
+ {
518
+ "internalType": "bytes",
519
+ "name": "takerSignature",
520
+ "type": "bytes"
521
+ },
522
+ {
523
+ "internalType": "bytes",
524
+ "name": "makerSignature",
525
+ "type": "bytes"
526
+ }
527
+ ],
528
+ "internalType": "struct IQuote.RFQMQuote",
529
+ "name": "quote",
530
+ "type": "tuple"
531
+ },
532
+ {
533
+ "internalType": "bytes",
534
+ "name": "guardianSignature",
535
+ "type": "bytes"
94
536
  }
95
537
  ],
96
- "name": "addLiquidityPrivatePool",
538
+ "name": "tradeRFQMLimitOrder",
97
539
  "outputs": [],
98
- "stateMutability": "payable",
540
+ "stateMutability": "nonpayable",
99
541
  "type": "function"
100
542
  },
101
543
  {
@@ -109,124 +551,63 @@
109
551
  },
110
552
  {
111
553
  "internalType": "address",
112
- "name": "token",
554
+ "name": "externalAccount",
555
+ "type": "address"
556
+ },
557
+ {
558
+ "internalType": "address",
559
+ "name": "trader",
560
+ "type": "address"
561
+ },
562
+ {
563
+ "internalType": "address",
564
+ "name": "baseToken",
565
+ "type": "address"
566
+ },
567
+ {
568
+ "internalType": "address",
569
+ "name": "quoteToken",
113
570
  "type": "address"
114
571
  },
115
572
  {
116
573
  "internalType": "uint256",
117
- "name": "amount",
574
+ "name": "baseTokenAmount",
118
575
  "type": "uint256"
119
576
  },
120
577
  {
121
578
  "internalType": "uint256",
122
- "name": "nonce",
579
+ "name": "quoteTokenAmount",
123
580
  "type": "uint256"
124
581
  },
582
+ {
583
+ "internalType": "uint256",
584
+ "name": "quoteExpiry",
585
+ "type": "uint256"
586
+ },
587
+ {
588
+ "internalType": "bytes32",
589
+ "name": "txid",
590
+ "type": "bytes32"
591
+ },
125
592
  {
126
593
  "internalType": "bytes",
127
- "name": "signature",
594
+ "name": "takerSignature",
595
+ "type": "bytes"
596
+ },
597
+ {
598
+ "internalType": "bytes",
599
+ "name": "makerSignature",
128
600
  "type": "bytes"
129
601
  }
130
602
  ],
131
- "internalType": "struct IQuote.Deposit",
132
- "name": "deposit",
603
+ "internalType": "struct IQuote.RFQMQuote",
604
+ "name": "quote",
133
605
  "type": "tuple"
134
- }
135
- ],
136
- "name": "addLiquidityPublicPool",
137
- "outputs": [],
138
- "stateMutability": "payable",
139
- "type": "function"
140
- },
141
- {
142
- "inputs": [
143
- {
144
- "internalType": "address",
145
- "name": "pool",
146
- "type": "address"
147
- }
148
- ],
149
- "name": "isPoolAuthorized",
150
- "outputs": [
151
- {
152
- "internalType": "bool",
153
- "name": "",
154
- "type": "bool"
155
- }
156
- ],
157
- "stateMutability": "view",
158
- "type": "function"
159
- },
160
- {
161
- "inputs": [
162
- {
163
- "internalType": "address",
164
- "name": "pool",
165
- "type": "address"
166
- },
167
- {
168
- "internalType": "bool",
169
- "name": "enabled",
170
- "type": "bool"
171
- }
172
- ],
173
- "name": "killswitchPool",
174
- "outputs": [],
175
- "stateMutability": "nonpayable",
176
- "type": "function"
177
- },
178
- {
179
- "inputs": [
180
- {
181
- "internalType": "address",
182
- "name": "migrationRouter",
183
- "type": "address"
184
- }
185
- ],
186
- "name": "migratePoolAuthorization",
187
- "outputs": [],
188
- "stateMutability": "nonpayable",
189
- "type": "function"
190
- },
191
- {
192
- "inputs": [
193
- {
194
- "internalType": "address",
195
- "name": "pool",
196
- "type": "address"
197
- },
198
- {
199
- "internalType": "address",
200
- "name": "token",
201
- "type": "address"
202
- },
203
- {
204
- "internalType": "uint256",
205
- "name": "burnAmount",
206
- "type": "uint256"
207
- }
208
- ],
209
- "name": "removeLiquidityPublicPool",
210
- "outputs": [],
211
- "stateMutability": "nonpayable",
212
- "type": "function"
213
- },
214
- {
215
- "inputs": [
216
- {
217
- "internalType": "address",
218
- "name": "pool",
219
- "type": "address"
220
- },
221
- {
222
- "internalType": "address",
223
- "name": "token",
224
- "type": "address"
225
606
  },
226
607
  {
227
- "internalType": "uint256",
228
- "name": "burnAmount",
229
- "type": "uint256"
608
+ "internalType": "bytes",
609
+ "name": "guardianSignature",
610
+ "type": "bytes"
230
611
  },
231
612
  {
232
613
  "internalType": "uint256",
@@ -249,12 +630,12 @@
249
630
  "type": "bytes32"
250
631
  },
251
632
  {
252
- "internalType": "bool",
253
- "name": "approveMax",
254
- "type": "bool"
633
+ "internalType": "uint256",
634
+ "name": "amountToApprove",
635
+ "type": "uint256"
255
636
  }
256
637
  ],
257
- "name": "removeLiquidityPublicPoolWithPermit",
638
+ "name": "tradeRFQMLimitOrderWithPermit",
258
639
  "outputs": [],
259
640
  "stateMutability": "nonpayable",
260
641
  "type": "function"
@@ -278,11 +659,6 @@
278
659
  "name": "trader",
279
660
  "type": "address"
280
661
  },
281
- {
282
- "internalType": "address",
283
- "name": "effectiveTrader",
284
- "type": "address"
285
- },
286
662
  {
287
663
  "internalType": "address",
288
664
  "name": "baseToken",
@@ -295,17 +671,12 @@
295
671
  },
296
672
  {
297
673
  "internalType": "uint256",
298
- "name": "effectiveBaseTokenAmount",
299
- "type": "uint256"
300
- },
301
- {
302
- "internalType": "uint256",
303
- "name": "maxBaseTokenAmount",
674
+ "name": "baseTokenAmount",
304
675
  "type": "uint256"
305
676
  },
306
677
  {
307
678
  "internalType": "uint256",
308
- "name": "maxQuoteTokenAmount",
679
+ "name": "quoteTokenAmount",
309
680
  "type": "uint256"
310
681
  },
311
682
  {
@@ -313,11 +684,6 @@
313
684
  "name": "quoteExpiry",
314
685
  "type": "uint256"
315
686
  },
316
- {
317
- "internalType": "uint256",
318
- "name": "nonce",
319
- "type": "uint256"
320
- },
321
687
  {
322
688
  "internalType": "bytes32",
323
689
  "name": "txid",
@@ -325,28 +691,48 @@
325
691
  },
326
692
  {
327
693
  "internalType": "bytes",
328
- "name": "signature",
694
+ "name": "takerSignature",
695
+ "type": "bytes"
696
+ },
697
+ {
698
+ "internalType": "bytes",
699
+ "name": "makerSignature",
329
700
  "type": "bytes"
330
701
  }
331
702
  ],
332
- "internalType": "struct IQuote.RFQTQuote[]",
333
- "name": "quotes",
334
- "type": "tuple[]"
703
+ "internalType": "struct IQuote.RFQMQuote",
704
+ "name": "quote",
705
+ "type": "tuple"
335
706
  },
336
707
  {
337
- "internalType": "address",
338
- "name": "baseToken",
339
- "type": "address"
708
+ "internalType": "uint256",
709
+ "name": "deadline",
710
+ "type": "uint256"
340
711
  },
341
712
  {
342
- "internalType": "address",
343
- "name": "quoteToken",
344
- "type": "address"
713
+ "internalType": "uint8",
714
+ "name": "v",
715
+ "type": "uint8"
716
+ },
717
+ {
718
+ "internalType": "bytes32",
719
+ "name": "r",
720
+ "type": "bytes32"
721
+ },
722
+ {
723
+ "internalType": "bytes32",
724
+ "name": "s",
725
+ "type": "bytes32"
726
+ },
727
+ {
728
+ "internalType": "uint256",
729
+ "name": "amountToApprove",
730
+ "type": "uint256"
345
731
  }
346
732
  ],
347
- "name": "tradeMultiHop",
733
+ "name": "tradeRFQMWithPermit",
348
734
  "outputs": [],
349
- "stateMutability": "payable",
735
+ "stateMutability": "nonpayable",
350
736
  "type": "function"
351
737
  },
352
738
  {
@@ -368,6 +754,11 @@
368
754
  "name": "trader",
369
755
  "type": "address"
370
756
  },
757
+ {
758
+ "internalType": "address",
759
+ "name": "effectiveTrader",
760
+ "type": "address"
761
+ },
371
762
  {
372
763
  "internalType": "address",
373
764
  "name": "baseToken",
@@ -378,6 +769,11 @@
378
769
  "name": "quoteToken",
379
770
  "type": "address"
380
771
  },
772
+ {
773
+ "internalType": "uint256",
774
+ "name": "effectiveBaseTokenAmount",
775
+ "type": "uint256"
776
+ },
381
777
  {
382
778
  "internalType": "uint256",
383
779
  "name": "baseTokenAmount",
@@ -393,6 +789,11 @@
393
789
  "name": "quoteExpiry",
394
790
  "type": "uint256"
395
791
  },
792
+ {
793
+ "internalType": "uint256",
794
+ "name": "nonce",
795
+ "type": "uint256"
796
+ },
396
797
  {
397
798
  "internalType": "bytes32",
398
799
  "name": "txid",
@@ -400,23 +801,18 @@
400
801
  },
401
802
  {
402
803
  "internalType": "bytes",
403
- "name": "takerSignature",
404
- "type": "bytes"
405
- },
406
- {
407
- "internalType": "bytes",
408
- "name": "makerSignature",
804
+ "name": "signature",
409
805
  "type": "bytes"
410
806
  }
411
807
  ],
412
- "internalType": "struct IQuote.RFQMQuote",
808
+ "internalType": "struct IQuote.RFQTQuote",
413
809
  "name": "quote",
414
810
  "type": "tuple"
415
811
  }
416
812
  ],
417
- "name": "tradeRFQm",
813
+ "name": "tradeRFQT",
418
814
  "outputs": [],
419
- "stateMutability": "nonpayable",
815
+ "stateMutability": "payable",
420
816
  "type": "function"
421
817
  },
422
818
  {
@@ -438,6 +834,11 @@
438
834
  "name": "trader",
439
835
  "type": "address"
440
836
  },
837
+ {
838
+ "internalType": "address",
839
+ "name": "effectiveTrader",
840
+ "type": "address"
841
+ },
441
842
  {
442
843
  "internalType": "address",
443
844
  "name": "baseToken",
@@ -448,6 +849,11 @@
448
849
  "name": "quoteToken",
449
850
  "type": "address"
450
851
  },
852
+ {
853
+ "internalType": "uint256",
854
+ "name": "effectiveBaseTokenAmount",
855
+ "type": "uint256"
856
+ },
451
857
  {
452
858
  "internalType": "uint256",
453
859
  "name": "baseTokenAmount",
@@ -464,22 +870,22 @@
464
870
  "type": "uint256"
465
871
  },
466
872
  {
467
- "internalType": "bytes32",
468
- "name": "txid",
469
- "type": "bytes32"
873
+ "internalType": "uint256",
874
+ "name": "nonce",
875
+ "type": "uint256"
470
876
  },
471
877
  {
472
- "internalType": "bytes",
473
- "name": "takerSignature",
474
- "type": "bytes"
878
+ "internalType": "bytes32",
879
+ "name": "txid",
880
+ "type": "bytes32"
475
881
  },
476
882
  {
477
883
  "internalType": "bytes",
478
- "name": "makerSignature",
884
+ "name": "signature",
479
885
  "type": "bytes"
480
886
  }
481
887
  ],
482
- "internalType": "struct IQuote.RFQMQuote",
888
+ "internalType": "struct IQuote.RFQTQuote",
483
889
  "name": "quote",
484
890
  "type": "tuple"
485
891
  },
@@ -504,12 +910,12 @@
504
910
  "type": "bytes32"
505
911
  },
506
912
  {
507
- "internalType": "bool",
508
- "name": "approveMax",
509
- "type": "bool"
913
+ "internalType": "uint256",
914
+ "name": "amountToApprove",
915
+ "type": "uint256"
510
916
  }
511
917
  ],
512
- "name": "tradeRFQmWithPermit",
918
+ "name": "tradeRFQTWithPermit",
513
919
  "outputs": [],
514
920
  "stateMutability": "nonpayable",
515
921
  "type": "function"
@@ -518,25 +924,45 @@
518
924
  "inputs": [
519
925
  {
520
926
  "components": [
927
+ {
928
+ "internalType": "uint16",
929
+ "name": "srcChainId",
930
+ "type": "uint16"
931
+ },
932
+ {
933
+ "internalType": "uint16",
934
+ "name": "dstChainId",
935
+ "type": "uint16"
936
+ },
521
937
  {
522
938
  "internalType": "address",
523
- "name": "pool",
939
+ "name": "srcPool",
524
940
  "type": "address"
525
941
  },
942
+ {
943
+ "internalType": "bytes32",
944
+ "name": "dstPool",
945
+ "type": "bytes32"
946
+ },
526
947
  {
527
948
  "internalType": "address",
528
- "name": "externalAccount",
949
+ "name": "srcExternalAccount",
529
950
  "type": "address"
530
951
  },
952
+ {
953
+ "internalType": "bytes32",
954
+ "name": "dstExternalAccount",
955
+ "type": "bytes32"
956
+ },
531
957
  {
532
958
  "internalType": "address",
533
959
  "name": "trader",
534
960
  "type": "address"
535
961
  },
536
962
  {
537
- "internalType": "address",
538
- "name": "effectiveTrader",
539
- "type": "address"
963
+ "internalType": "bytes32",
964
+ "name": "dstTrader",
965
+ "type": "bytes32"
540
966
  },
541
967
  {
542
968
  "internalType": "address",
@@ -544,23 +970,18 @@
544
970
  "type": "address"
545
971
  },
546
972
  {
547
- "internalType": "address",
973
+ "internalType": "bytes32",
548
974
  "name": "quoteToken",
549
- "type": "address"
550
- },
551
- {
552
- "internalType": "uint256",
553
- "name": "effectiveBaseTokenAmount",
554
- "type": "uint256"
975
+ "type": "bytes32"
555
976
  },
556
977
  {
557
978
  "internalType": "uint256",
558
- "name": "maxBaseTokenAmount",
979
+ "name": "baseTokenAmount",
559
980
  "type": "uint256"
560
981
  },
561
982
  {
562
983
  "internalType": "uint256",
563
- "name": "maxQuoteTokenAmount",
984
+ "name": "quoteTokenAmount",
564
985
  "type": "uint256"
565
986
  },
566
987
  {
@@ -568,28 +989,43 @@
568
989
  "name": "quoteExpiry",
569
990
  "type": "uint256"
570
991
  },
571
- {
572
- "internalType": "uint256",
573
- "name": "nonce",
574
- "type": "uint256"
575
- },
576
992
  {
577
993
  "internalType": "bytes32",
578
994
  "name": "txid",
579
995
  "type": "bytes32"
580
996
  },
997
+ {
998
+ "internalType": "address",
999
+ "name": "xChainMessenger",
1000
+ "type": "address"
1001
+ },
581
1002
  {
582
1003
  "internalType": "bytes",
583
- "name": "signature",
1004
+ "name": "takerSignature",
1005
+ "type": "bytes"
1006
+ },
1007
+ {
1008
+ "internalType": "bytes",
1009
+ "name": "makerSignature",
584
1010
  "type": "bytes"
585
1011
  }
586
1012
  ],
587
- "internalType": "struct IQuote.RFQTQuote",
1013
+ "internalType": "struct IQuote.XChainRFQMQuote",
588
1014
  "name": "quote",
589
1015
  "type": "tuple"
1016
+ },
1017
+ {
1018
+ "internalType": "bytes32",
1019
+ "name": "dstContract",
1020
+ "type": "bytes32"
1021
+ },
1022
+ {
1023
+ "internalType": "bytes",
1024
+ "name": "dstCalldata",
1025
+ "type": "bytes"
590
1026
  }
591
1027
  ],
592
- "name": "tradeSingleHop",
1028
+ "name": "tradeXChainRFQM",
593
1029
  "outputs": [],
594
1030
  "stateMutability": "payable",
595
1031
  "type": "function"
@@ -633,15 +1069,20 @@
633
1069
  "name": "trader",
634
1070
  "type": "address"
635
1071
  },
1072
+ {
1073
+ "internalType": "bytes32",
1074
+ "name": "dstTrader",
1075
+ "type": "bytes32"
1076
+ },
636
1077
  {
637
1078
  "internalType": "address",
638
1079
  "name": "baseToken",
639
1080
  "type": "address"
640
1081
  },
641
1082
  {
642
- "internalType": "address",
1083
+ "internalType": "bytes32",
643
1084
  "name": "quoteToken",
644
- "type": "address"
1085
+ "type": "bytes32"
645
1086
  },
646
1087
  {
647
1088
  "internalType": "uint256",
@@ -658,33 +1099,68 @@
658
1099
  "name": "quoteExpiry",
659
1100
  "type": "uint256"
660
1101
  },
661
- {
662
- "internalType": "uint256",
663
- "name": "nonce",
664
- "type": "uint256"
665
- },
666
1102
  {
667
1103
  "internalType": "bytes32",
668
1104
  "name": "txid",
669
1105
  "type": "bytes32"
670
1106
  },
1107
+ {
1108
+ "internalType": "address",
1109
+ "name": "xChainMessenger",
1110
+ "type": "address"
1111
+ },
671
1112
  {
672
1113
  "internalType": "bytes",
673
- "name": "signature",
1114
+ "name": "takerSignature",
1115
+ "type": "bytes"
1116
+ },
1117
+ {
1118
+ "internalType": "bytes",
1119
+ "name": "makerSignature",
674
1120
  "type": "bytes"
675
1121
  }
676
1122
  ],
677
- "internalType": "struct IQuote.XChainRFQTQuote",
1123
+ "internalType": "struct IQuote.XChainRFQMQuote",
678
1124
  "name": "quote",
679
1125
  "type": "tuple"
680
1126
  },
681
1127
  {
682
- "internalType": "enum IHashflowXChainUA.XChainMessageProtocol",
683
- "name": "protocol",
1128
+ "internalType": "bytes32",
1129
+ "name": "dstContract",
1130
+ "type": "bytes32"
1131
+ },
1132
+ {
1133
+ "internalType": "bytes",
1134
+ "name": "dstCalldata",
1135
+ "type": "bytes"
1136
+ },
1137
+ {
1138
+ "internalType": "uint256",
1139
+ "name": "deadline",
1140
+ "type": "uint256"
1141
+ },
1142
+ {
1143
+ "internalType": "uint8",
1144
+ "name": "v",
684
1145
  "type": "uint8"
1146
+ },
1147
+ {
1148
+ "internalType": "bytes32",
1149
+ "name": "r",
1150
+ "type": "bytes32"
1151
+ },
1152
+ {
1153
+ "internalType": "bytes32",
1154
+ "name": "s",
1155
+ "type": "bytes32"
1156
+ },
1157
+ {
1158
+ "internalType": "uint256",
1159
+ "name": "amountToApprove",
1160
+ "type": "uint256"
685
1161
  }
686
1162
  ],
687
- "name": "tradeXChain",
1163
+ "name": "tradeXChainRFQMWithPermit",
688
1164
  "outputs": [],
689
1165
  "stateMutability": "payable",
690
1166
  "type": "function"
@@ -724,9 +1200,9 @@
724
1200
  "type": "bytes32"
725
1201
  },
726
1202
  {
727
- "internalType": "address",
728
- "name": "trader",
729
- "type": "address"
1203
+ "internalType": "bytes32",
1204
+ "name": "dstTrader",
1205
+ "type": "bytes32"
730
1206
  },
731
1207
  {
732
1208
  "internalType": "address",
@@ -734,9 +1210,14 @@
734
1210
  "type": "address"
735
1211
  },
736
1212
  {
737
- "internalType": "address",
1213
+ "internalType": "bytes32",
738
1214
  "name": "quoteToken",
739
- "type": "address"
1215
+ "type": "bytes32"
1216
+ },
1217
+ {
1218
+ "internalType": "uint256",
1219
+ "name": "effectiveBaseTokenAmount",
1220
+ "type": "uint256"
740
1221
  },
741
1222
  {
742
1223
  "internalType": "uint256",
@@ -753,33 +1234,43 @@
753
1234
  "name": "quoteExpiry",
754
1235
  "type": "uint256"
755
1236
  },
1237
+ {
1238
+ "internalType": "uint256",
1239
+ "name": "nonce",
1240
+ "type": "uint256"
1241
+ },
756
1242
  {
757
1243
  "internalType": "bytes32",
758
1244
  "name": "txid",
759
1245
  "type": "bytes32"
760
1246
  },
761
1247
  {
762
- "internalType": "bytes",
763
- "name": "takerSignature",
764
- "type": "bytes"
1248
+ "internalType": "address",
1249
+ "name": "xChainMessenger",
1250
+ "type": "address"
765
1251
  },
766
1252
  {
767
1253
  "internalType": "bytes",
768
- "name": "makerSignature",
1254
+ "name": "signature",
769
1255
  "type": "bytes"
770
1256
  }
771
1257
  ],
772
- "internalType": "struct IQuote.XChainRFQMQuote",
1258
+ "internalType": "struct IQuote.XChainRFQTQuote",
773
1259
  "name": "quote",
774
1260
  "type": "tuple"
775
1261
  },
776
1262
  {
777
- "internalType": "enum IHashflowXChainUA.XChainMessageProtocol",
778
- "name": "protocol",
779
- "type": "uint8"
1263
+ "internalType": "bytes32",
1264
+ "name": "dstContract",
1265
+ "type": "bytes32"
1266
+ },
1267
+ {
1268
+ "internalType": "bytes",
1269
+ "name": "dstCalldata",
1270
+ "type": "bytes"
780
1271
  }
781
1272
  ],
782
- "name": "tradeXChainRFQm",
1273
+ "name": "tradeXChainRFQT",
783
1274
  "outputs": [],
784
1275
  "stateMutability": "payable",
785
1276
  "type": "function"
@@ -819,9 +1310,9 @@
819
1310
  "type": "bytes32"
820
1311
  },
821
1312
  {
822
- "internalType": "address",
823
- "name": "trader",
824
- "type": "address"
1313
+ "internalType": "bytes32",
1314
+ "name": "dstTrader",
1315
+ "type": "bytes32"
825
1316
  },
826
1317
  {
827
1318
  "internalType": "address",
@@ -829,9 +1320,14 @@
829
1320
  "type": "address"
830
1321
  },
831
1322
  {
832
- "internalType": "address",
1323
+ "internalType": "bytes32",
833
1324
  "name": "quoteToken",
834
- "type": "address"
1325
+ "type": "bytes32"
1326
+ },
1327
+ {
1328
+ "internalType": "uint256",
1329
+ "name": "effectiveBaseTokenAmount",
1330
+ "type": "uint256"
835
1331
  },
836
1332
  {
837
1333
  "internalType": "uint256",
@@ -848,30 +1344,40 @@
848
1344
  "name": "quoteExpiry",
849
1345
  "type": "uint256"
850
1346
  },
1347
+ {
1348
+ "internalType": "uint256",
1349
+ "name": "nonce",
1350
+ "type": "uint256"
1351
+ },
851
1352
  {
852
1353
  "internalType": "bytes32",
853
1354
  "name": "txid",
854
1355
  "type": "bytes32"
855
1356
  },
856
1357
  {
857
- "internalType": "bytes",
858
- "name": "takerSignature",
859
- "type": "bytes"
1358
+ "internalType": "address",
1359
+ "name": "xChainMessenger",
1360
+ "type": "address"
860
1361
  },
861
1362
  {
862
1363
  "internalType": "bytes",
863
- "name": "makerSignature",
1364
+ "name": "signature",
864
1365
  "type": "bytes"
865
1366
  }
866
1367
  ],
867
- "internalType": "struct IQuote.XChainRFQMQuote",
1368
+ "internalType": "struct IQuote.XChainRFQTQuote",
868
1369
  "name": "quote",
869
1370
  "type": "tuple"
870
1371
  },
871
1372
  {
872
- "internalType": "enum IHashflowXChainUA.XChainMessageProtocol",
873
- "name": "protocol",
874
- "type": "uint8"
1373
+ "internalType": "bytes32",
1374
+ "name": "dstContract",
1375
+ "type": "bytes32"
1376
+ },
1377
+ {
1378
+ "internalType": "bytes",
1379
+ "name": "dstCalldata",
1380
+ "type": "bytes"
875
1381
  },
876
1382
  {
877
1383
  "internalType": "uint256",
@@ -894,12 +1400,12 @@
894
1400
  "type": "bytes32"
895
1401
  },
896
1402
  {
897
- "internalType": "bool",
898
- "name": "approveMax",
899
- "type": "bool"
1403
+ "internalType": "uint256",
1404
+ "name": "amountToApprove",
1405
+ "type": "uint256"
900
1406
  }
901
1407
  ],
902
- "name": "tradeXChainRFQmWithPermit",
1408
+ "name": "tradeXChainRFQTWithPermit",
903
1409
  "outputs": [],
904
1410
  "stateMutability": "payable",
905
1411
  "type": "function"
@@ -908,11 +1414,11 @@
908
1414
  "inputs": [
909
1415
  {
910
1416
  "internalType": "address",
911
- "name": "governance",
1417
+ "name": "guardian",
912
1418
  "type": "address"
913
1419
  }
914
1420
  ],
915
- "name": "updateGovernance",
1421
+ "name": "updateLimitOrderGuardian",
916
1422
  "outputs": [],
917
1423
  "stateMutability": "nonpayable",
918
1424
  "type": "function"
@@ -921,16 +1427,39 @@
921
1427
  "inputs": [
922
1428
  {
923
1429
  "internalType": "address",
924
- "name": "router",
1430
+ "name": "pool",
925
1431
  "type": "address"
926
1432
  },
927
1433
  {
928
1434
  "internalType": "bool",
929
- "name": "status",
1435
+ "name": "authorized",
1436
+ "type": "bool"
1437
+ }
1438
+ ],
1439
+ "name": "updatePoolAuthorization",
1440
+ "outputs": [],
1441
+ "stateMutability": "nonpayable",
1442
+ "type": "function"
1443
+ },
1444
+ {
1445
+ "inputs": [
1446
+ {
1447
+ "internalType": "uint16",
1448
+ "name": "otherHashflowChainId",
1449
+ "type": "uint16"
1450
+ },
1451
+ {
1452
+ "internalType": "bytes32",
1453
+ "name": "caller",
1454
+ "type": "bytes32"
1455
+ },
1456
+ {
1457
+ "internalType": "bool",
1458
+ "name": "authorized",
930
1459
  "type": "bool"
931
1460
  }
932
1461
  ],
933
- "name": "updateMigrationRouterStatus",
1462
+ "name": "updateXChainCallerAuthorization",
934
1463
  "outputs": [],
935
1464
  "stateMutability": "nonpayable",
936
1465
  "type": "function"
@@ -939,7 +1468,7 @@
939
1468
  "inputs": [
940
1469
  {
941
1470
  "internalType": "address",
942
- "name": "pool",
1471
+ "name": "xChainMessenger",
943
1472
  "type": "address"
944
1473
  },
945
1474
  {
@@ -948,7 +1477,48 @@
948
1477
  "type": "bool"
949
1478
  }
950
1479
  ],
951
- "name": "updatePoolAuthorization",
1480
+ "name": "updateXChainMessengerAuthorization",
1481
+ "outputs": [],
1482
+ "stateMutability": "nonpayable",
1483
+ "type": "function"
1484
+ },
1485
+ {
1486
+ "inputs": [
1487
+ {
1488
+ "internalType": "address",
1489
+ "name": "xChainMessenger",
1490
+ "type": "address"
1491
+ },
1492
+ {
1493
+ "internalType": "bool",
1494
+ "name": "authorized",
1495
+ "type": "bool"
1496
+ }
1497
+ ],
1498
+ "name": "updateXChainMessengerCallerAuthorization",
1499
+ "outputs": [],
1500
+ "stateMutability": "nonpayable",
1501
+ "type": "function"
1502
+ },
1503
+ {
1504
+ "inputs": [
1505
+ {
1506
+ "internalType": "uint16",
1507
+ "name": "otherHashflowChainId",
1508
+ "type": "uint16"
1509
+ },
1510
+ {
1511
+ "internalType": "bytes32",
1512
+ "name": "otherPool",
1513
+ "type": "bytes32"
1514
+ },
1515
+ {
1516
+ "internalType": "bool",
1517
+ "name": "authorized",
1518
+ "type": "bool"
1519
+ }
1520
+ ],
1521
+ "name": "updateXChainPoolAuthorization",
952
1522
  "outputs": [],
953
1523
  "stateMutability": "nonpayable",
954
1524
  "type": "function"
@@ -957,11 +1527,11 @@
957
1527
  "inputs": [
958
1528
  {
959
1529
  "internalType": "address",
960
- "name": "xChainUa",
1530
+ "name": "token",
961
1531
  "type": "address"
962
1532
  }
963
1533
  ],
964
- "name": "updateXChainUa",
1534
+ "name": "withdrawFunds",
965
1535
  "outputs": [],
966
1536
  "stateMutability": "nonpayable",
967
1537
  "type": "function"