@paraswap/dex-lib 2.16.8-pancakeswapv3.0 → 2.17.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 (198) hide show
  1. package/.idea/aws.xml +17 -0
  2. package/.idea/codeStyles/Project.xml +19 -0
  3. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  4. package/.idea/misc.xml +6 -0
  5. package/.idea/modules.xml +8 -0
  6. package/.idea/paraswap-dex-lib.iml +9 -0
  7. package/.idea/vcs.xml +6 -0
  8. package/build/abi/woo-fi/WooFeeManager.abi.json +318 -0
  9. package/build/abi/woo-fi/WooPP.abi.json +548 -0
  10. package/build/abi/woo-fi/Wooracle.abi.json +260 -0
  11. package/build/config.js +4 -4
  12. package/build/dex/aave-v3/tokens/arbitrum.json +50 -0
  13. package/build/dex/aave-v3/tokens/avalanche.json +74 -0
  14. package/build/dex/aave-v3/tokens/fantom.json +62 -0
  15. package/build/dex/aave-v3/tokens/optimism.json +50 -0
  16. package/build/dex/aave-v3/tokens/polygon.json +116 -0
  17. package/build/dex/balancer-v2/balancer-v2.d.ts +14 -19
  18. package/build/dex/balancer-v2/balancer-v2.js +27 -22
  19. package/build/dex/balancer-v2/balancer-v2.js.map +1 -1
  20. package/build/dex/balancer-v2/config.d.ts +2 -7
  21. package/build/dex/balancer-v2/config.js +20 -30
  22. package/build/dex/balancer-v2/config.js.map +1 -1
  23. package/build/dex/balancer-v2/pools/balancer-v2-pool.d.ts +25 -0
  24. package/build/dex/balancer-v2/pools/balancer-v2-pool.js +107 -0
  25. package/build/dex/balancer-v2/pools/balancer-v2-pool.js.map +1 -0
  26. package/build/dex/balancer-v2/pools/linear/LinearMath.d.ts +20 -0
  27. package/build/dex/balancer-v2/pools/linear/LinearMath.js +179 -0
  28. package/build/dex/balancer-v2/pools/linear/LinearMath.js.map +1 -0
  29. package/build/dex/balancer-v2/pools/linear/LinearPool.d.ts +50 -0
  30. package/build/dex/balancer-v2/pools/linear/LinearPool.js +458 -0
  31. package/build/dex/balancer-v2/pools/linear/LinearPool.js.map +1 -0
  32. package/build/dex/balancer-v2/pools/phantom-stable/PhantomStableMath.d.ts +10 -0
  33. package/build/dex/balancer-v2/pools/phantom-stable/PhantomStableMath.js +314 -0
  34. package/build/dex/balancer-v2/pools/phantom-stable/PhantomStableMath.js.map +1 -0
  35. package/build/dex/balancer-v2/pools/phantom-stable/PhantomStablePool.d.ts +50 -0
  36. package/build/dex/balancer-v2/pools/phantom-stable/PhantomStablePool.js +367 -0
  37. package/build/dex/balancer-v2/pools/phantom-stable/PhantomStablePool.js.map +1 -0
  38. package/build/dex/balancer-v2/pools/stable/StableMath.d.ts +7 -0
  39. package/build/dex/balancer-v2/pools/stable/StableMath.js +111 -0
  40. package/build/dex/balancer-v2/pools/stable/StableMath.js.map +1 -0
  41. package/build/dex/balancer-v2/pools/stable/StablePool.d.ts +30 -0
  42. package/build/dex/balancer-v2/pools/stable/StablePool.js +129 -0
  43. package/build/dex/balancer-v2/pools/stable/StablePool.js.map +1 -0
  44. package/build/dex/balancer-v2/pools/weighted/WeightedMath.d.ts +6 -0
  45. package/build/dex/balancer-v2/pools/weighted/WeightedMath.js +61 -0
  46. package/build/dex/balancer-v2/pools/weighted/WeightedMath.js.map +1 -0
  47. package/build/dex/balancer-v2/pools/weighted/WeightedPool.d.ts +30 -0
  48. package/build/dex/balancer-v2/pools/weighted/WeightedPool.js +112 -0
  49. package/build/dex/balancer-v2/pools/weighted/WeightedPool.js.map +1 -0
  50. package/build/dex/balancer-v2/types.d.ts +1 -0
  51. package/build/dex/balancer-v2/types.js.map +1 -1
  52. package/build/dex/balancer-v2/utils.d.ts +3 -2
  53. package/build/dex/balancer-v2/utils.js +6 -4
  54. package/build/dex/balancer-v2/utils.js.map +1 -1
  55. package/build/dex/index.js +1 -1
  56. package/build/dex/index.js.map +1 -1
  57. package/build/dex/quickswap-v3.d.ts +21 -0
  58. package/build/dex/quickswap-v3.js +40 -0
  59. package/build/dex/quickswap-v3.js.map +1 -0
  60. package/build/dex/uniswap-v3/config.js +28 -0
  61. package/build/dex/uniswap-v3/config.js.map +1 -1
  62. package/build/dex/uniswap-v3/uniswap-v3-pool.d.ts +2 -1
  63. package/build/dex/uniswap-v3/uniswap-v3-pool.js +3 -2
  64. package/build/dex/uniswap-v3/uniswap-v3-pool.js.map +1 -1
  65. package/build/dex/uniswap-v3/uniswap-v3.js +1 -1
  66. package/build/dex/uniswap-v3/uniswap-v3.js.map +1 -1
  67. package/build/dex/{pancakeswap-v3 → woo-fi}/config.d.ts +2 -2
  68. package/build/dex/woo-fi/config.js +141 -0
  69. package/build/dex/woo-fi/config.js.map +1 -0
  70. package/build/dex/woo-fi/constants.d.ts +5 -0
  71. package/build/dex/woo-fi/constants.js +20 -0
  72. package/build/dex/woo-fi/constants.js.map +1 -0
  73. package/build/dex/woo-fi/types.d.ts +48 -0
  74. package/build/dex/woo-fi/types.js +3 -0
  75. package/build/dex/woo-fi/types.js.map +1 -0
  76. package/build/dex/woo-fi/woo-fi-decimal-math.d.ts +14 -0
  77. package/build/dex/woo-fi/woo-fi-decimal-math.js +42 -0
  78. package/build/dex/woo-fi/woo-fi-decimal-math.js.map +1 -0
  79. package/build/dex/woo-fi/woo-fi-math.d.ts +31 -0
  80. package/build/dex/woo-fi/woo-fi-math.js +300 -0
  81. package/build/dex/woo-fi/woo-fi-math.js.map +1 -0
  82. package/build/dex/woo-fi/woo-fi.d.ts +65 -0
  83. package/build/dex/woo-fi/woo-fi.js +480 -0
  84. package/build/dex/woo-fi/woo-fi.js.map +1 -0
  85. package/package.json +1 -1
  86. package/src/config.ts +4 -4
  87. package/src/dex/balancer-v2/balancer-v2-e2e.test.ts +538 -225
  88. package/src/dex/balancer-v2/balancer-v2-integration.test.ts +305 -122
  89. package/src/dex/balancer-v2/balancer-v2.ts +60 -56
  90. package/src/dex/balancer-v2/config.ts +23 -35
  91. package/src/dex/balancer-v2/pools/balancer-v2-pool.ts +274 -0
  92. package/src/dex/balancer-v2/{LinearMath.ts → pools/linear/LinearMath.ts} +11 -10
  93. package/src/dex/balancer-v2/{LinearPool.ts → pools/linear/LinearPool.ts} +210 -6
  94. package/src/dex/balancer-v2/{StableMath.ts → pools/phantom-stable/PhantomStableMath.ts} +101 -21
  95. package/src/dex/balancer-v2/{PhantomStablePool.ts → pools/phantom-stable/PhantomStablePool.ts} +167 -12
  96. package/src/dex/balancer-v2/pools/stable/StableMath.ts +204 -0
  97. package/src/dex/balancer-v2/pools/stable/StablePool.ts +221 -0
  98. package/src/dex/balancer-v2/pools/weighted/WeightedMath.ts +84 -0
  99. package/src/dex/balancer-v2/pools/weighted/WeightedPool.ts +189 -0
  100. package/src/dex/balancer-v2/types.ts +1 -0
  101. package/src/dex/balancer-v2/utils.ts +7 -1
  102. package/src/dex/index.ts +1 -1
  103. package/src/dex/uniswap-v3/config.ts +32 -0
  104. package/src/dex/uniswap-v3/forks/pancakeswap-v3/pancakeswap-v3.ts +28 -0
  105. package/src/dex/uniswap-v3/uniswap-v3-e2e.test.ts +156 -0
  106. package/src/dex/uniswap-v3/uniswap-v3-events.test.ts +0 -4
  107. package/src/dex/uniswap-v3/uniswap-v3-pool.ts +2 -1
  108. package/src/dex/uniswap-v3/uniswap-v3.ts +1 -0
  109. package/tests/constants-e2e.ts +33 -8
  110. package/build/abi/pancakeswap-v3/PancakeV3StateMulticall.abi.json +0 -781
  111. package/build/abi/pancakeswap-v3/PancakeswapV3Pool.abi.json +0 -1039
  112. package/build/abi/pancakeswap-v3/PancakeswapV3Quoter.abi.json +0 -285
  113. package/build/abi/pancakeswap-v3/PancakeswapV3Router.abi.json +0 -583
  114. package/build/dex/pancakeswap-v3/config.js +0 -62
  115. package/build/dex/pancakeswap-v3/config.js.map +0 -1
  116. package/build/dex/pancakeswap-v3/constants.d.ts +0 -23
  117. package/build/dex/pancakeswap-v3/constants.js +0 -29
  118. package/build/dex/pancakeswap-v3/constants.js.map +0 -1
  119. package/build/dex/pancakeswap-v3/contract-math/BitMath.d.ts +0 -4
  120. package/build/dex/pancakeswap-v3/contract-math/BitMath.js +0 -93
  121. package/build/dex/pancakeswap-v3/contract-math/BitMath.js.map +0 -1
  122. package/build/dex/pancakeswap-v3/contract-math/FixedPoint128.d.ts +0 -3
  123. package/build/dex/pancakeswap-v3/contract-math/FixedPoint128.js +0 -8
  124. package/build/dex/pancakeswap-v3/contract-math/FixedPoint128.js.map +0 -1
  125. package/build/dex/pancakeswap-v3/contract-math/FixedPoint96.d.ts +0 -4
  126. package/build/dex/pancakeswap-v3/contract-math/FixedPoint96.js +0 -9
  127. package/build/dex/pancakeswap-v3/contract-math/FixedPoint96.js.map +0 -1
  128. package/build/dex/pancakeswap-v3/contract-math/FullMath.d.ts +0 -4
  129. package/build/dex/pancakeswap-v3/contract-math/FullMath.js +0 -19
  130. package/build/dex/pancakeswap-v3/contract-math/FullMath.js.map +0 -1
  131. package/build/dex/pancakeswap-v3/contract-math/LiquidityMath.d.ts +0 -3
  132. package/build/dex/pancakeswap-v3/contract-math/LiquidityMath.js +0 -22
  133. package/build/dex/pancakeswap-v3/contract-math/LiquidityMath.js.map +0 -1
  134. package/build/dex/pancakeswap-v3/contract-math/Oracle.d.ts +0 -10
  135. package/build/dex/pancakeswap-v3/contract-math/Oracle.js +0 -133
  136. package/build/dex/pancakeswap-v3/contract-math/Oracle.js.map +0 -1
  137. package/build/dex/pancakeswap-v3/contract-math/SqrtPriceMath.d.ts +0 -10
  138. package/build/dex/pancakeswap-v3/contract-math/SqrtPriceMath.js +0 -91
  139. package/build/dex/pancakeswap-v3/contract-math/SqrtPriceMath.js.map +0 -1
  140. package/build/dex/pancakeswap-v3/contract-math/SwapMath.d.ts +0 -8
  141. package/build/dex/pancakeswap-v3/contract-math/SwapMath.js +0 -70
  142. package/build/dex/pancakeswap-v3/contract-math/SwapMath.js.map +0 -1
  143. package/build/dex/pancakeswap-v3/contract-math/Tick.d.ts +0 -7
  144. package/build/dex/pancakeswap-v3/contract-math/Tick.js +0 -45
  145. package/build/dex/pancakeswap-v3/contract-math/Tick.js.map +0 -1
  146. package/build/dex/pancakeswap-v3/contract-math/TickBitMap.d.ts +0 -8
  147. package/build/dex/pancakeswap-v3/contract-math/TickBitMap.js +0 -87
  148. package/build/dex/pancakeswap-v3/contract-math/TickBitMap.js.map +0 -1
  149. package/build/dex/pancakeswap-v3/contract-math/TickMath.d.ts +0 -8
  150. package/build/dex/pancakeswap-v3/contract-math/TickMath.js +0 -162
  151. package/build/dex/pancakeswap-v3/contract-math/TickMath.js.map +0 -1
  152. package/build/dex/pancakeswap-v3/contract-math/UnsafeMath.d.ts +0 -3
  153. package/build/dex/pancakeswap-v3/contract-math/UnsafeMath.js +0 -10
  154. package/build/dex/pancakeswap-v3/contract-math/UnsafeMath.js.map +0 -1
  155. package/build/dex/pancakeswap-v3/contract-math/pancakeswap-v3-math.d.ts +0 -18
  156. package/build/dex/pancakeswap-v3/contract-math/pancakeswap-v3-math.js +0 -407
  157. package/build/dex/pancakeswap-v3/contract-math/pancakeswap-v3-math.js.map +0 -1
  158. package/build/dex/pancakeswap-v3/contract-math/utils.d.ts +0 -3
  159. package/build/dex/pancakeswap-v3/contract-math/utils.js +0 -16
  160. package/build/dex/pancakeswap-v3/contract-math/utils.js.map +0 -1
  161. package/build/dex/pancakeswap-v3/pancakeswap-v3-pool.d.ts +0 -45
  162. package/build/dex/pancakeswap-v3/pancakeswap-v3-pool.js +0 -340
  163. package/build/dex/pancakeswap-v3/pancakeswap-v3-pool.js.map +0 -1
  164. package/build/dex/pancakeswap-v3/pancakeswap-v3.d.ts +0 -55
  165. package/build/dex/pancakeswap-v3/pancakeswap-v3.js +0 -605
  166. package/build/dex/pancakeswap-v3/pancakeswap-v3.js.map +0 -1
  167. package/build/dex/pancakeswap-v3/types.d.ts +0 -137
  168. package/build/dex/pancakeswap-v3/types.js +0 -9
  169. package/build/dex/pancakeswap-v3/types.js.map +0 -1
  170. package/build/dex/pancakeswap-v3/utils.d.ts +0 -6
  171. package/build/dex/pancakeswap-v3/utils.js +0 -65
  172. package/build/dex/pancakeswap-v3/utils.js.map +0 -1
  173. package/src/abi/pancakeswap-v3/PancakeV3StateMulticall.abi.json +0 -781
  174. package/src/abi/pancakeswap-v3/PancakeswapV3Pool.abi.json +0 -1039
  175. package/src/dex/balancer-v2/balancer-v2-pool.ts +0 -744
  176. package/src/dex/pancakeswap-v3/config.ts +0 -68
  177. package/src/dex/pancakeswap-v3/constants.ts +0 -35
  178. package/src/dex/pancakeswap-v3/contract-math/BitMath.ts +0 -90
  179. package/src/dex/pancakeswap-v3/contract-math/FixedPoint128.ts +0 -3
  180. package/src/dex/pancakeswap-v3/contract-math/FixedPoint96.ts +0 -4
  181. package/src/dex/pancakeswap-v3/contract-math/FullMath.ts +0 -30
  182. package/src/dex/pancakeswap-v3/contract-math/LiquidityMath.ts +0 -17
  183. package/src/dex/pancakeswap-v3/contract-math/Oracle.ts +0 -226
  184. package/src/dex/pancakeswap-v3/contract-math/SqrtPriceMath.ts +0 -226
  185. package/src/dex/pancakeswap-v3/contract-math/SwapMath.ts +0 -139
  186. package/src/dex/pancakeswap-v3/contract-math/Tick.ts +0 -82
  187. package/src/dex/pancakeswap-v3/contract-math/TickBitMap.ts +0 -128
  188. package/src/dex/pancakeswap-v3/contract-math/TickMath.ts +0 -211
  189. package/src/dex/pancakeswap-v3/contract-math/UnsafeMath.ts +0 -5
  190. package/src/dex/pancakeswap-v3/contract-math/pancakeswap-v3-math.ts +0 -691
  191. package/src/dex/pancakeswap-v3/contract-math/utils.ts +0 -11
  192. package/src/dex/pancakeswap-v3/pancakeswap-v3-e2e.test.ts +0 -168
  193. package/src/dex/pancakeswap-v3/pancakeswap-v3-events.test.ts +0 -124
  194. package/src/dex/pancakeswap-v3/pancakeswap-v3-integration.test.ts +0 -338
  195. package/src/dex/pancakeswap-v3/pancakeswap-v3-pool.ts +0 -554
  196. package/src/dex/pancakeswap-v3/pancakeswap-v3.ts +0 -1000
  197. /package/src/abi/{pancakeswap-v3/PancakeswapV3Quoter.abi.json → uniswap-v3/pancakeswap-v3/PancakeswapV3QuoterV2.abi.json} +0 -0
  198. /package/src/abi/{pancakeswap-v3 → uniswap-v3/pancakeswap-v3}/PancakeswapV3Router.abi.json +0 -0
@@ -1,781 +0,0 @@
1
- [
2
- {
3
- "inputs": [
4
- {
5
- "internalType": "contract IPancakeV3Factory",
6
- "name": "factory",
7
- "type": "address"
8
- },
9
- {
10
- "internalType": "address",
11
- "name": "tokenIn",
12
- "type": "address"
13
- },
14
- {
15
- "internalType": "address",
16
- "name": "tokenOut",
17
- "type": "address"
18
- },
19
- {
20
- "internalType": "uint24",
21
- "name": "fee",
22
- "type": "uint24"
23
- },
24
- {
25
- "internalType": "int16",
26
- "name": "tickBitmapStart",
27
- "type": "int16"
28
- },
29
- {
30
- "internalType": "int16",
31
- "name": "tickBitmapEnd",
32
- "type": "int16"
33
- }
34
- ],
35
- "name": "getAdditionalBitmapWithTicks",
36
- "outputs": [
37
- {
38
- "components": [
39
- {
40
- "internalType": "int16",
41
- "name": "index",
42
- "type": "int16"
43
- },
44
- {
45
- "internalType": "uint256",
46
- "name": "value",
47
- "type": "uint256"
48
- }
49
- ],
50
- "internalType": "struct IPancakeV3StateMulticall.TickBitMapMappings[]",
51
- "name": "tickBitmap",
52
- "type": "tuple[]"
53
- },
54
- {
55
- "components": [
56
- {
57
- "internalType": "int24",
58
- "name": "index",
59
- "type": "int24"
60
- },
61
- {
62
- "components": [
63
- {
64
- "internalType": "uint128",
65
- "name": "liquidityGross",
66
- "type": "uint128"
67
- },
68
- {
69
- "internalType": "int128",
70
- "name": "liquidityNet",
71
- "type": "int128"
72
- },
73
- {
74
- "internalType": "int56",
75
- "name": "tickCumulativeOutside",
76
- "type": "int56"
77
- },
78
- {
79
- "internalType": "uint160",
80
- "name": "secondsPerLiquidityOutsideX128",
81
- "type": "uint160"
82
- },
83
- {
84
- "internalType": "uint32",
85
- "name": "secondsOutside",
86
- "type": "uint32"
87
- },
88
- {
89
- "internalType": "bool",
90
- "name": "initialized",
91
- "type": "bool"
92
- }
93
- ],
94
- "internalType": "struct IPancakeV3StateMulticall.TickInfo",
95
- "name": "value",
96
- "type": "tuple"
97
- }
98
- ],
99
- "internalType": "struct IPancakeV3StateMulticall.TickInfoMappings[]",
100
- "name": "ticks",
101
- "type": "tuple[]"
102
- }
103
- ],
104
- "stateMutability": "view",
105
- "type": "function"
106
- },
107
- {
108
- "inputs": [
109
- {
110
- "internalType": "contract IPancakeV3Factory",
111
- "name": "factory",
112
- "type": "address"
113
- },
114
- {
115
- "internalType": "address",
116
- "name": "tokenIn",
117
- "type": "address"
118
- },
119
- {
120
- "internalType": "address",
121
- "name": "tokenOut",
122
- "type": "address"
123
- },
124
- {
125
- "internalType": "uint24",
126
- "name": "fee",
127
- "type": "uint24"
128
- },
129
- {
130
- "internalType": "int16",
131
- "name": "tickBitmapStart",
132
- "type": "int16"
133
- },
134
- {
135
- "internalType": "int16",
136
- "name": "tickBitmapEnd",
137
- "type": "int16"
138
- }
139
- ],
140
- "name": "getAdditionalBitmapWithoutTicks",
141
- "outputs": [
142
- {
143
- "components": [
144
- {
145
- "internalType": "int16",
146
- "name": "index",
147
- "type": "int16"
148
- },
149
- {
150
- "internalType": "uint256",
151
- "name": "value",
152
- "type": "uint256"
153
- }
154
- ],
155
- "internalType": "struct IPancakeV3StateMulticall.TickBitMapMappings[]",
156
- "name": "tickBitmap",
157
- "type": "tuple[]"
158
- }
159
- ],
160
- "stateMutability": "view",
161
- "type": "function"
162
- },
163
- {
164
- "inputs": [
165
- {
166
- "internalType": "contract IPancakeV3Factory",
167
- "name": "factory",
168
- "type": "address"
169
- },
170
- {
171
- "internalType": "address",
172
- "name": "tokenIn",
173
- "type": "address"
174
- },
175
- {
176
- "internalType": "address",
177
- "name": "tokenOut",
178
- "type": "address"
179
- },
180
- {
181
- "internalType": "uint24",
182
- "name": "fee",
183
- "type": "uint24"
184
- },
185
- {
186
- "internalType": "int16",
187
- "name": "tickBitmapStart",
188
- "type": "int16"
189
- },
190
- {
191
- "internalType": "int16",
192
- "name": "tickBitmapEnd",
193
- "type": "int16"
194
- }
195
- ],
196
- "name": "getFullState",
197
- "outputs": [
198
- {
199
- "components": [
200
- {
201
- "internalType": "contract IPancakeV3Pool",
202
- "name": "pool",
203
- "type": "address"
204
- },
205
- {
206
- "internalType": "uint256",
207
- "name": "blockTimestamp",
208
- "type": "uint256"
209
- },
210
- {
211
- "components": [
212
- {
213
- "internalType": "uint160",
214
- "name": "sqrtPriceX96",
215
- "type": "uint160"
216
- },
217
- {
218
- "internalType": "int24",
219
- "name": "tick",
220
- "type": "int24"
221
- },
222
- {
223
- "internalType": "uint16",
224
- "name": "observationIndex",
225
- "type": "uint16"
226
- },
227
- {
228
- "internalType": "uint16",
229
- "name": "observationCardinality",
230
- "type": "uint16"
231
- },
232
- {
233
- "internalType": "uint16",
234
- "name": "observationCardinalityNext",
235
- "type": "uint16"
236
- },
237
- {
238
- "internalType": "uint32",
239
- "name": "feeProtocol",
240
- "type": "uint32"
241
- },
242
- {
243
- "internalType": "bool",
244
- "name": "unlocked",
245
- "type": "bool"
246
- }
247
- ],
248
- "internalType": "struct IPancakeV3StateMulticall.Slot0",
249
- "name": "slot0",
250
- "type": "tuple"
251
- },
252
- {
253
- "internalType": "uint128",
254
- "name": "liquidity",
255
- "type": "uint128"
256
- },
257
- {
258
- "internalType": "int24",
259
- "name": "tickSpacing",
260
- "type": "int24"
261
- },
262
- {
263
- "internalType": "uint128",
264
- "name": "maxLiquidityPerTick",
265
- "type": "uint128"
266
- },
267
- {
268
- "components": [
269
- {
270
- "internalType": "uint32",
271
- "name": "blockTimestamp",
272
- "type": "uint32"
273
- },
274
- {
275
- "internalType": "int56",
276
- "name": "tickCumulative",
277
- "type": "int56"
278
- },
279
- {
280
- "internalType": "uint160",
281
- "name": "secondsPerLiquidityCumulativeX128",
282
- "type": "uint160"
283
- },
284
- {
285
- "internalType": "bool",
286
- "name": "initialized",
287
- "type": "bool"
288
- }
289
- ],
290
- "internalType": "struct IPancakeV3StateMulticall.Observation",
291
- "name": "observation",
292
- "type": "tuple"
293
- },
294
- {
295
- "components": [
296
- {
297
- "internalType": "int16",
298
- "name": "index",
299
- "type": "int16"
300
- },
301
- {
302
- "internalType": "uint256",
303
- "name": "value",
304
- "type": "uint256"
305
- }
306
- ],
307
- "internalType": "struct IPancakeV3StateMulticall.TickBitMapMappings[]",
308
- "name": "tickBitmap",
309
- "type": "tuple[]"
310
- },
311
- {
312
- "components": [
313
- {
314
- "internalType": "int24",
315
- "name": "index",
316
- "type": "int24"
317
- },
318
- {
319
- "components": [
320
- {
321
- "internalType": "uint128",
322
- "name": "liquidityGross",
323
- "type": "uint128"
324
- },
325
- {
326
- "internalType": "int128",
327
- "name": "liquidityNet",
328
- "type": "int128"
329
- },
330
- {
331
- "internalType": "int56",
332
- "name": "tickCumulativeOutside",
333
- "type": "int56"
334
- },
335
- {
336
- "internalType": "uint160",
337
- "name": "secondsPerLiquidityOutsideX128",
338
- "type": "uint160"
339
- },
340
- {
341
- "internalType": "uint32",
342
- "name": "secondsOutside",
343
- "type": "uint32"
344
- },
345
- {
346
- "internalType": "bool",
347
- "name": "initialized",
348
- "type": "bool"
349
- }
350
- ],
351
- "internalType": "struct IPancakeV3StateMulticall.TickInfo",
352
- "name": "value",
353
- "type": "tuple"
354
- }
355
- ],
356
- "internalType": "struct IPancakeV3StateMulticall.TickInfoMappings[]",
357
- "name": "ticks",
358
- "type": "tuple[]"
359
- }
360
- ],
361
- "internalType": "struct IPancakeV3StateMulticall.StateResult",
362
- "name": "state",
363
- "type": "tuple"
364
- }
365
- ],
366
- "stateMutability": "view",
367
- "type": "function"
368
- },
369
- {
370
- "inputs": [
371
- {
372
- "internalType": "contract IPancakeV3Factory",
373
- "name": "factory",
374
- "type": "address"
375
- },
376
- {
377
- "internalType": "address",
378
- "name": "tokenIn",
379
- "type": "address"
380
- },
381
- {
382
- "internalType": "address",
383
- "name": "tokenOut",
384
- "type": "address"
385
- },
386
- {
387
- "internalType": "uint24",
388
- "name": "fee",
389
- "type": "uint24"
390
- },
391
- {
392
- "internalType": "int16",
393
- "name": "leftBitmapAmount",
394
- "type": "int16"
395
- },
396
- {
397
- "internalType": "int16",
398
- "name": "rightBitmapAmount",
399
- "type": "int16"
400
- }
401
- ],
402
- "name": "getFullStateWithRelativeBitmaps",
403
- "outputs": [
404
- {
405
- "components": [
406
- {
407
- "internalType": "contract IPancakeV3Pool",
408
- "name": "pool",
409
- "type": "address"
410
- },
411
- {
412
- "internalType": "uint256",
413
- "name": "blockTimestamp",
414
- "type": "uint256"
415
- },
416
- {
417
- "components": [
418
- {
419
- "internalType": "uint160",
420
- "name": "sqrtPriceX96",
421
- "type": "uint160"
422
- },
423
- {
424
- "internalType": "int24",
425
- "name": "tick",
426
- "type": "int24"
427
- },
428
- {
429
- "internalType": "uint16",
430
- "name": "observationIndex",
431
- "type": "uint16"
432
- },
433
- {
434
- "internalType": "uint16",
435
- "name": "observationCardinality",
436
- "type": "uint16"
437
- },
438
- {
439
- "internalType": "uint16",
440
- "name": "observationCardinalityNext",
441
- "type": "uint16"
442
- },
443
- {
444
- "internalType": "uint32",
445
- "name": "feeProtocol",
446
- "type": "uint32"
447
- },
448
- {
449
- "internalType": "bool",
450
- "name": "unlocked",
451
- "type": "bool"
452
- }
453
- ],
454
- "internalType": "struct IPancakeV3StateMulticall.Slot0",
455
- "name": "slot0",
456
- "type": "tuple"
457
- },
458
- {
459
- "internalType": "uint128",
460
- "name": "liquidity",
461
- "type": "uint128"
462
- },
463
- {
464
- "internalType": "int24",
465
- "name": "tickSpacing",
466
- "type": "int24"
467
- },
468
- {
469
- "internalType": "uint128",
470
- "name": "maxLiquidityPerTick",
471
- "type": "uint128"
472
- },
473
- {
474
- "components": [
475
- {
476
- "internalType": "uint32",
477
- "name": "blockTimestamp",
478
- "type": "uint32"
479
- },
480
- {
481
- "internalType": "int56",
482
- "name": "tickCumulative",
483
- "type": "int56"
484
- },
485
- {
486
- "internalType": "uint160",
487
- "name": "secondsPerLiquidityCumulativeX128",
488
- "type": "uint160"
489
- },
490
- {
491
- "internalType": "bool",
492
- "name": "initialized",
493
- "type": "bool"
494
- }
495
- ],
496
- "internalType": "struct IPancakeV3StateMulticall.Observation",
497
- "name": "observation",
498
- "type": "tuple"
499
- },
500
- {
501
- "components": [
502
- {
503
- "internalType": "int16",
504
- "name": "index",
505
- "type": "int16"
506
- },
507
- {
508
- "internalType": "uint256",
509
- "name": "value",
510
- "type": "uint256"
511
- }
512
- ],
513
- "internalType": "struct IPancakeV3StateMulticall.TickBitMapMappings[]",
514
- "name": "tickBitmap",
515
- "type": "tuple[]"
516
- },
517
- {
518
- "components": [
519
- {
520
- "internalType": "int24",
521
- "name": "index",
522
- "type": "int24"
523
- },
524
- {
525
- "components": [
526
- {
527
- "internalType": "uint128",
528
- "name": "liquidityGross",
529
- "type": "uint128"
530
- },
531
- {
532
- "internalType": "int128",
533
- "name": "liquidityNet",
534
- "type": "int128"
535
- },
536
- {
537
- "internalType": "int56",
538
- "name": "tickCumulativeOutside",
539
- "type": "int56"
540
- },
541
- {
542
- "internalType": "uint160",
543
- "name": "secondsPerLiquidityOutsideX128",
544
- "type": "uint160"
545
- },
546
- {
547
- "internalType": "uint32",
548
- "name": "secondsOutside",
549
- "type": "uint32"
550
- },
551
- {
552
- "internalType": "bool",
553
- "name": "initialized",
554
- "type": "bool"
555
- }
556
- ],
557
- "internalType": "struct IPancakeV3StateMulticall.TickInfo",
558
- "name": "value",
559
- "type": "tuple"
560
- }
561
- ],
562
- "internalType": "struct IPancakeV3StateMulticall.TickInfoMappings[]",
563
- "name": "ticks",
564
- "type": "tuple[]"
565
- }
566
- ],
567
- "internalType": "struct IPancakeV3StateMulticall.StateResult",
568
- "name": "state",
569
- "type": "tuple"
570
- }
571
- ],
572
- "stateMutability": "view",
573
- "type": "function"
574
- },
575
- {
576
- "inputs": [
577
- {
578
- "internalType": "contract IPancakeV3Factory",
579
- "name": "factory",
580
- "type": "address"
581
- },
582
- {
583
- "internalType": "address",
584
- "name": "tokenIn",
585
- "type": "address"
586
- },
587
- {
588
- "internalType": "address",
589
- "name": "tokenOut",
590
- "type": "address"
591
- },
592
- {
593
- "internalType": "uint24",
594
- "name": "fee",
595
- "type": "uint24"
596
- },
597
- {
598
- "internalType": "int16",
599
- "name": "tickBitmapStart",
600
- "type": "int16"
601
- },
602
- {
603
- "internalType": "int16",
604
- "name": "tickBitmapEnd",
605
- "type": "int16"
606
- }
607
- ],
608
- "name": "getFullStateWithoutTicks",
609
- "outputs": [
610
- {
611
- "components": [
612
- {
613
- "internalType": "contract IPancakeV3Pool",
614
- "name": "pool",
615
- "type": "address"
616
- },
617
- {
618
- "internalType": "uint256",
619
- "name": "blockTimestamp",
620
- "type": "uint256"
621
- },
622
- {
623
- "components": [
624
- {
625
- "internalType": "uint160",
626
- "name": "sqrtPriceX96",
627
- "type": "uint160"
628
- },
629
- {
630
- "internalType": "int24",
631
- "name": "tick",
632
- "type": "int24"
633
- },
634
- {
635
- "internalType": "uint16",
636
- "name": "observationIndex",
637
- "type": "uint16"
638
- },
639
- {
640
- "internalType": "uint16",
641
- "name": "observationCardinality",
642
- "type": "uint16"
643
- },
644
- {
645
- "internalType": "uint16",
646
- "name": "observationCardinalityNext",
647
- "type": "uint16"
648
- },
649
- {
650
- "internalType": "uint32",
651
- "name": "feeProtocol",
652
- "type": "uint32"
653
- },
654
- {
655
- "internalType": "bool",
656
- "name": "unlocked",
657
- "type": "bool"
658
- }
659
- ],
660
- "internalType": "struct IPancakeV3StateMulticall.Slot0",
661
- "name": "slot0",
662
- "type": "tuple"
663
- },
664
- {
665
- "internalType": "uint128",
666
- "name": "liquidity",
667
- "type": "uint128"
668
- },
669
- {
670
- "internalType": "int24",
671
- "name": "tickSpacing",
672
- "type": "int24"
673
- },
674
- {
675
- "internalType": "uint128",
676
- "name": "maxLiquidityPerTick",
677
- "type": "uint128"
678
- },
679
- {
680
- "components": [
681
- {
682
- "internalType": "uint32",
683
- "name": "blockTimestamp",
684
- "type": "uint32"
685
- },
686
- {
687
- "internalType": "int56",
688
- "name": "tickCumulative",
689
- "type": "int56"
690
- },
691
- {
692
- "internalType": "uint160",
693
- "name": "secondsPerLiquidityCumulativeX128",
694
- "type": "uint160"
695
- },
696
- {
697
- "internalType": "bool",
698
- "name": "initialized",
699
- "type": "bool"
700
- }
701
- ],
702
- "internalType": "struct IPancakeV3StateMulticall.Observation",
703
- "name": "observation",
704
- "type": "tuple"
705
- },
706
- {
707
- "components": [
708
- {
709
- "internalType": "int16",
710
- "name": "index",
711
- "type": "int16"
712
- },
713
- {
714
- "internalType": "uint256",
715
- "name": "value",
716
- "type": "uint256"
717
- }
718
- ],
719
- "internalType": "struct IPancakeV3StateMulticall.TickBitMapMappings[]",
720
- "name": "tickBitmap",
721
- "type": "tuple[]"
722
- },
723
- {
724
- "components": [
725
- {
726
- "internalType": "int24",
727
- "name": "index",
728
- "type": "int24"
729
- },
730
- {
731
- "components": [
732
- {
733
- "internalType": "uint128",
734
- "name": "liquidityGross",
735
- "type": "uint128"
736
- },
737
- {
738
- "internalType": "int128",
739
- "name": "liquidityNet",
740
- "type": "int128"
741
- },
742
- {
743
- "internalType": "int56",
744
- "name": "tickCumulativeOutside",
745
- "type": "int56"
746
- },
747
- {
748
- "internalType": "uint160",
749
- "name": "secondsPerLiquidityOutsideX128",
750
- "type": "uint160"
751
- },
752
- {
753
- "internalType": "uint32",
754
- "name": "secondsOutside",
755
- "type": "uint32"
756
- },
757
- {
758
- "internalType": "bool",
759
- "name": "initialized",
760
- "type": "bool"
761
- }
762
- ],
763
- "internalType": "struct IPancakeV3StateMulticall.TickInfo",
764
- "name": "value",
765
- "type": "tuple"
766
- }
767
- ],
768
- "internalType": "struct IPancakeV3StateMulticall.TickInfoMappings[]",
769
- "name": "ticks",
770
- "type": "tuple[]"
771
- }
772
- ],
773
- "internalType": "struct IPancakeV3StateMulticall.StateResult",
774
- "name": "state",
775
- "type": "tuple"
776
- }
777
- ],
778
- "stateMutability": "view",
779
- "type": "function"
780
- }
781
- ]