sushi 3.0.0 → 3.1.2

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 (2365) hide show
  1. package/dist/_cjs/abi/StargateFeeLibraryV03.js.map +1 -0
  2. package/dist/_cjs/abi/StargatePool.js.map +1 -0
  3. package/dist/_cjs/abi/balanceOfAbi.js.map +1 -0
  4. package/dist/_cjs/abi/bentoBoxV1Abi.js.map +1 -0
  5. package/dist/_cjs/abi/bentoBoxV1TotalsAbi.js.map +1 -0
  6. package/dist/_cjs/abi/cloneRewarderTime.js.map +1 -0
  7. package/dist/_cjs/abi/complexRewarderTimeAbi.js.map +1 -0
  8. package/dist/_cjs/abi/eip2612Abi.js +24 -0
  9. package/dist/_cjs/abi/eip2612Abi.js.map +1 -0
  10. package/dist/_cjs/abi/erc20Abi.js +444 -0
  11. package/dist/_cjs/abi/erc20Abi.js.map +1 -0
  12. package/dist/_cjs/abi/furoStreamAbi.js.map +1 -0
  13. package/dist/_cjs/abi/furoStreamRouterAbi.js.map +1 -0
  14. package/dist/_cjs/abi/furoVestingAbi.js.map +1 -0
  15. package/dist/_cjs/abi/furoVestingRouterAbi.js.map +1 -0
  16. package/dist/_cjs/abi/gasDataArbitrumAbi.js.map +1 -0
  17. package/dist/_cjs/abi/gasPriceOracleAbi.js.map +1 -0
  18. package/dist/_cjs/abi/getPoolsAbi.js.map +1 -0
  19. package/dist/_cjs/abi/getReservesAbi.js.map +1 -0
  20. package/dist/_cjs/abi/index.js +123 -0
  21. package/dist/_cjs/abi/index.js.map +1 -0
  22. package/dist/_cjs/abi/masterChefV1Abi.js.map +1 -0
  23. package/dist/_cjs/abi/masterChefV2Abi.js.map +1 -0
  24. package/dist/_cjs/abi/miniChefAbi.js.map +1 -0
  25. package/dist/_cjs/abi/miniChefV2Abi.js +471 -0
  26. package/dist/_cjs/abi/miniChefV2Abi.js.map +1 -0
  27. package/dist/_cjs/abi/multicall2Abi.js.map +1 -0
  28. package/dist/_cjs/abi/multicall3Abi.js.map +1 -0
  29. package/dist/_cjs/abi/multicallAbi.js +25 -0
  30. package/dist/_cjs/abi/multicallAbi.js.map +1 -0
  31. package/dist/_cjs/abi/nonfungiblePositionManagerAbi.js.map +1 -0
  32. package/dist/_cjs/abi/peripheryPaymentsWithFeeAbi.js +115 -0
  33. package/dist/_cjs/abi/peripheryPaymentsWithFeeAbi.js.map +1 -0
  34. package/dist/_cjs/abi/permit2Abi.js.map +1 -0
  35. package/dist/_cjs/abi/poolsCountAbi.js.map +1 -0
  36. package/dist/_cjs/abi/routeProcessor2Abi.js.map +1 -0
  37. package/dist/_cjs/abi/routeProcessor3Abi.js.map +1 -0
  38. package/dist/_cjs/abi/routeProcessor3_1Abi.js.map +1 -0
  39. package/dist/_cjs/abi/routeProcessor4Abi.js +210 -0
  40. package/dist/_cjs/abi/routeProcessor4Abi.js.map +1 -0
  41. package/dist/_cjs/abi/routeProcessor5Abi.js +477 -0
  42. package/dist/_cjs/abi/routeProcessor5Abi.js.map +1 -0
  43. package/dist/_cjs/abi/routeProcessorAbi.js.map +1 -0
  44. package/dist/_cjs/abi/selfPermitAbi.js +158 -0
  45. package/dist/_cjs/abi/selfPermitAbi.js.map +1 -0
  46. package/dist/_cjs/abi/slot0Abi.js.map +1 -0
  47. package/dist/_cjs/abi/squidAdapterAbi.js +122 -0
  48. package/dist/_cjs/abi/squidAdapterAbi.js.map +1 -0
  49. package/dist/_cjs/abi/squidRouterAbi.js +626 -0
  50. package/dist/_cjs/abi/squidRouterAbi.js.map +1 -0
  51. package/dist/_cjs/abi/stargateAdapterAbi.js +135 -0
  52. package/dist/_cjs/abi/stargateAdapterAbi.js.map +1 -0
  53. package/dist/_cjs/abi/sushiV3FactoryAbi.js.map +1 -0
  54. package/dist/_cjs/abi/sushiV3PoolAbi.js.map +1 -0
  55. package/dist/_cjs/abi/sushiXSwap2Abi.js +241 -0
  56. package/dist/_cjs/abi/sushiXSwap2Abi.js.map +1 -0
  57. package/dist/_cjs/abi/sushiXSwapAbi.js.map +1 -0
  58. package/dist/_cjs/abi/sushiswapV2Factory.js +124 -0
  59. package/dist/_cjs/abi/sushiswapV2Factory.js.map +1 -0
  60. package/dist/_cjs/abi/swapFeeAbi.js.map +1 -0
  61. package/dist/_cjs/abi/tickLensAbi.js.map +1 -0
  62. package/dist/_cjs/abi/totalsAbi.js.map +1 -0
  63. package/dist/_cjs/abi/tridentConstantPoolAbi.js.map +1 -0
  64. package/dist/_cjs/abi/tridentConstantPoolFactoryAbi.js.map +1 -0
  65. package/dist/_cjs/abi/tridentGetPoolsAbi.js.map +1 -0
  66. package/dist/_cjs/abi/tridentPoolsCountAbi.js.map +1 -0
  67. package/dist/_cjs/abi/tridentRouterAbi.js.map +1 -0
  68. package/dist/_cjs/abi/tridentStablePoolAbi.js.map +1 -0
  69. package/dist/_cjs/abi/tridentStablePoolFactoryAbi.js.map +1 -0
  70. package/dist/_cjs/abi/tridentSwapFeeAbi.js.map +1 -0
  71. package/dist/_cjs/abi/uniswapV2PairAbi.js.map +1 -0
  72. package/dist/_cjs/abi/uniswapV2RouterAbi.js.map +1 -0
  73. package/dist/_cjs/abi/uniswapV3FactoryAbi.js +240 -0
  74. package/dist/_cjs/abi/uniswapV3FactoryAbi.js.map +1 -0
  75. package/dist/_cjs/abi/uniswapV3PoolAbi.js +646 -0
  76. package/dist/_cjs/abi/uniswapV3PoolAbi.js.map +1 -0
  77. package/dist/_cjs/abi/v3baseAbi.js.map +1 -0
  78. package/dist/_cjs/abi/weth9Abi.js.map +1 -0
  79. package/dist/_cjs/abi/xsushiAbi.js +170 -0
  80. package/dist/_cjs/abi/xsushiAbi.js.map +1 -0
  81. package/dist/_cjs/api/get-user.js +8 -0
  82. package/dist/_cjs/api/get-user.js.map +1 -0
  83. package/dist/_cjs/api/shema.js +3 -0
  84. package/dist/_cjs/api/shema.js.map +1 -0
  85. package/dist/_cjs/bigint-serializer/index.js +44 -0
  86. package/dist/_cjs/bigint-serializer/index.js.map +1 -0
  87. package/dist/_cjs/calculate/fee.js +9 -0
  88. package/dist/_cjs/calculate/fee.js.map +1 -0
  89. package/dist/_cjs/calculate/gasMargin.js +8 -0
  90. package/dist/_cjs/calculate/gasMargin.js.map +1 -0
  91. package/dist/_cjs/calculate/index.js +10 -0
  92. package/dist/_cjs/calculate/index.js.map +1 -0
  93. package/dist/_cjs/calculate/slippageAmount.js +15 -0
  94. package/dist/_cjs/calculate/slippageAmount.js.map +1 -0
  95. package/dist/_cjs/chain/constants.js +111 -0
  96. package/dist/_cjs/chain/constants.js.map +1 -0
  97. package/dist/_cjs/chain/generated.js +1042 -0
  98. package/dist/_cjs/chain/generated.js.map +1 -0
  99. package/dist/_cjs/chain/index.js +201 -0
  100. package/dist/_cjs/chain/index.js.map +1 -0
  101. package/dist/_cjs/config/api.js +7 -0
  102. package/dist/_cjs/config/api.js.map +1 -0
  103. package/dist/_cjs/config/default-slippage.js +5 -0
  104. package/dist/_cjs/config/default-slippage.js.map +1 -0
  105. package/dist/_cjs/config/features/bentobox.js +53 -0
  106. package/dist/_cjs/config/features/bentobox.js.map +1 -0
  107. package/dist/_cjs/config/features/extractor.js +42 -0
  108. package/dist/_cjs/config/features/extractor.js.map +1 -0
  109. package/dist/_cjs/config/features/furo.js +24 -0
  110. package/dist/_cjs/config/features/furo.js.map +1 -0
  111. package/dist/_cjs/config/features/index.js +35 -0
  112. package/dist/_cjs/config/features/index.js.map +1 -0
  113. package/dist/_cjs/config/features/master-chef.js +11 -0
  114. package/dist/_cjs/config/features/master-chef.js.map +1 -0
  115. package/dist/_cjs/config/features/merkl.js +26 -0
  116. package/dist/_cjs/config/features/merkl.js.map +1 -0
  117. package/dist/_cjs/config/features/mini-chef.js +44 -0
  118. package/dist/_cjs/config/features/mini-chef.js.map +1 -0
  119. package/dist/_cjs/config/features/pancakeswap-v2.js +13 -0
  120. package/dist/_cjs/config/features/pancakeswap-v2.js.map +1 -0
  121. package/dist/_cjs/config/features/pancakeswap-v3.js +54 -0
  122. package/dist/_cjs/config/features/pancakeswap-v3.js.map +1 -0
  123. package/dist/_cjs/config/features/route-processor.js +349 -0
  124. package/dist/_cjs/config/features/route-processor.js.map +1 -0
  125. package/dist/_cjs/config/features/squid.js +49 -0
  126. package/dist/_cjs/config/features/squid.js.map +1 -0
  127. package/dist/_cjs/config/features/stargate.js +753 -0
  128. package/dist/_cjs/config/features/stargate.js.map +1 -0
  129. package/dist/_cjs/config/features/sushiswap-v2.js +145 -0
  130. package/dist/_cjs/config/features/sushiswap-v2.js.map +1 -0
  131. package/dist/_cjs/config/features/sushiswap-v3.js +167 -0
  132. package/dist/_cjs/config/features/sushiswap-v3.js.map +1 -0
  133. package/dist/_cjs/config/features/sushiswap.js +14 -0
  134. package/dist/_cjs/config/features/sushiswap.js.map +1 -0
  135. package/dist/_cjs/config/features/sushixswap.js +117 -0
  136. package/dist/_cjs/config/features/sushixswap.js.map +1 -0
  137. package/dist/_cjs/config/features/trident.js +57 -0
  138. package/dist/_cjs/config/features/trident.js.map +1 -0
  139. package/dist/_cjs/config/features/uniswap-v2.js +29 -0
  140. package/dist/_cjs/config/features/uniswap-v2.js.map +1 -0
  141. package/dist/_cjs/config/features/uniswap-v3.js +76 -0
  142. package/dist/_cjs/config/features/uniswap-v3.js.map +1 -0
  143. package/dist/_cjs/config/governance.js +9 -0
  144. package/dist/_cjs/config/governance.js.map +1 -0
  145. package/dist/_cjs/config/index.js +34 -0
  146. package/dist/_cjs/config/index.js.map +1 -0
  147. package/dist/_cjs/config/native-address.js +5 -0
  148. package/dist/_cjs/config/native-address.js.map +1 -0
  149. package/dist/_cjs/config/native-ids.js +51 -0
  150. package/dist/_cjs/config/native-ids.js.map +1 -0
  151. package/dist/_cjs/config/subgraph/hosts.js +32 -0
  152. package/dist/_cjs/config/subgraph/hosts.js.map +1 -0
  153. package/dist/_cjs/config/subgraph/index.js +21 -0
  154. package/dist/_cjs/config/subgraph/index.js.map +1 -0
  155. package/dist/_cjs/config/subgraph/max-first.js +13 -0
  156. package/dist/_cjs/config/subgraph/max-first.js.map +1 -0
  157. package/dist/_cjs/config/subgraph/seconds-between-blocks.js +32 -0
  158. package/dist/_cjs/config/subgraph/seconds-between-blocks.js.map +1 -0
  159. package/dist/_cjs/config/subgraph/subgraphs/bentobox.js +21 -0
  160. package/dist/_cjs/config/subgraph/subgraphs/bentobox.js.map +1 -0
  161. package/dist/_cjs/config/subgraph/subgraphs/blocks.js +39 -0
  162. package/dist/_cjs/config/subgraph/subgraphs/blocks.js.map +1 -0
  163. package/dist/_cjs/config/subgraph/subgraphs/data-api.js +6 -0
  164. package/dist/_cjs/config/subgraph/subgraphs/data-api.js.map +1 -0
  165. package/dist/_cjs/config/subgraph/subgraphs/furo.js +23 -0
  166. package/dist/_cjs/config/subgraph/subgraphs/furo.js.map +1 -0
  167. package/dist/_cjs/config/subgraph/subgraphs/index.js +27 -0
  168. package/dist/_cjs/config/subgraph/subgraphs/index.js.map +1 -0
  169. package/dist/_cjs/config/subgraph/subgraphs/master-chef-v1.js +6 -0
  170. package/dist/_cjs/config/subgraph/subgraphs/master-chef-v1.js.map +1 -0
  171. package/dist/_cjs/config/subgraph/subgraphs/master-chef-v2.js +6 -0
  172. package/dist/_cjs/config/subgraph/subgraphs/master-chef-v2.js.map +1 -0
  173. package/dist/_cjs/config/subgraph/subgraphs/mini-chef.js +24 -0
  174. package/dist/_cjs/config/subgraph/subgraphs/mini-chef.js.map +1 -0
  175. package/dist/_cjs/config/subgraph/subgraphs/sushi-bar.js +6 -0
  176. package/dist/_cjs/config/subgraph/subgraphs/sushi-bar.js.map +1 -0
  177. package/dist/_cjs/config/subgraph/subgraphs/sushiswap-v2.js +40 -0
  178. package/dist/_cjs/config/subgraph/subgraphs/sushiswap-v2.js.map +1 -0
  179. package/dist/_cjs/config/subgraph/subgraphs/sushiswap-v3.js +35 -0
  180. package/dist/_cjs/config/subgraph/subgraphs/sushiswap-v3.js.map +1 -0
  181. package/dist/_cjs/config/token-chomper.js +77 -0
  182. package/dist/_cjs/config/token-chomper.js.map +1 -0
  183. package/dist/_cjs/config/token-maps/additional-bases.js +103 -0
  184. package/dist/_cjs/config/token-maps/additional-bases.js.map +1 -0
  185. package/dist/_cjs/config/token-maps/bases-to-check-trades-against.js +461 -0
  186. package/dist/_cjs/config/token-maps/bases-to-check-trades-against.js.map +1 -0
  187. package/dist/_cjs/config/token-maps/custom-bases.js +14 -0
  188. package/dist/_cjs/config/token-maps/custom-bases.js.map +1 -0
  189. package/dist/_cjs/config/token-maps/default-bases.js +329 -0
  190. package/dist/_cjs/config/token-maps/default-bases.js.map +1 -0
  191. package/dist/_cjs/config/token-maps/default-quote.js +62 -0
  192. package/dist/_cjs/config/token-maps/default-quote.js.map +1 -0
  193. package/dist/_cjs/config/token-maps/index.js +25 -0
  194. package/dist/_cjs/config/token-maps/index.js.map +1 -0
  195. package/dist/_cjs/config/token-maps/lsds.js +408 -0
  196. package/dist/_cjs/config/token-maps/lsds.js.map +1 -0
  197. package/dist/_cjs/config/token-maps/short-name-to-currency.js +261 -0
  198. package/dist/_cjs/config/token-maps/short-name-to-currency.js.map +1 -0
  199. package/dist/_cjs/config/token-maps/stables.js +197 -0
  200. package/dist/_cjs/config/token-maps/stables.js.map +1 -0
  201. package/dist/_cjs/config/token-security.js +25 -0
  202. package/dist/_cjs/config/token-security.js.map +1 -0
  203. package/dist/_cjs/config/viem.js +695 -0
  204. package/dist/_cjs/config/viem.js.map +1 -0
  205. package/dist/_cjs/config/wallet.js +71 -0
  206. package/dist/_cjs/config/wallet.js.map +1 -0
  207. package/dist/_cjs/config/wnative.js +8 -0
  208. package/dist/_cjs/config/wnative.js.map +1 -0
  209. package/dist/_cjs/contract/erc20.js +9 -0
  210. package/dist/_cjs/contract/erc20.js.map +1 -0
  211. package/dist/_cjs/contract/index.js +18 -0
  212. package/dist/_cjs/contract/index.js.map +1 -0
  213. package/dist/_cjs/convert/index.js +6 -0
  214. package/dist/_cjs/convert/index.js.map +1 -0
  215. package/dist/_cjs/convert/to-hex.js +13 -0
  216. package/dist/_cjs/convert/to-hex.js.map +1 -0
  217. package/dist/_cjs/currency/amount.js +96 -0
  218. package/dist/_cjs/currency/amount.js.map +1 -0
  219. package/dist/_cjs/currency/currency.js +20 -0
  220. package/dist/_cjs/currency/currency.js.map +1 -0
  221. package/dist/_cjs/currency/index.js +27 -0
  222. package/dist/_cjs/currency/index.js.map +1 -0
  223. package/dist/_cjs/currency/native.js +63 -0
  224. package/dist/_cjs/currency/native.js.map +1 -0
  225. package/dist/_cjs/currency/price.js +55 -0
  226. package/dist/_cjs/currency/price.js.map +1 -0
  227. package/dist/_cjs/currency/share.js +64 -0
  228. package/dist/_cjs/currency/share.js.map +1 -0
  229. package/dist/_cjs/currency/token-addresses.js +558 -0
  230. package/dist/_cjs/currency/token-addresses.js.map +1 -0
  231. package/dist/_cjs/currency/token.js +70 -0
  232. package/dist/_cjs/currency/token.js.map +1 -0
  233. package/dist/_cjs/currency/tokens.js +798 -0
  234. package/dist/_cjs/currency/tokens.js.map +1 -0
  235. package/dist/_cjs/currency/try-parse-amount.js +22 -0
  236. package/dist/_cjs/currency/try-parse-amount.js.map +1 -0
  237. package/dist/_cjs/currency/type.js +3 -0
  238. package/dist/_cjs/currency/type.js.map +1 -0
  239. package/dist/_cjs/currency/unwrap.js +12 -0
  240. package/dist/_cjs/currency/unwrap.js.map +1 -0
  241. package/dist/_cjs/currency/zod.js +24 -0
  242. package/dist/_cjs/currency/zod.js.map +1 -0
  243. package/dist/_cjs/data/index.js +18 -0
  244. package/dist/_cjs/data/index.js.map +1 -0
  245. package/dist/_cjs/data/lowercase-map.js +19 -0
  246. package/dist/_cjs/data/lowercase-map.js.map +1 -0
  247. package/dist/_cjs/dex/errors.js +25 -0
  248. package/dist/_cjs/dex/errors.js.map +1 -0
  249. package/dist/_cjs/dex/fee.js +12 -0
  250. package/dist/_cjs/dex/fee.js.map +1 -0
  251. package/dist/_cjs/dex/index.js +22 -0
  252. package/dist/_cjs/dex/index.js.map +1 -0
  253. package/dist/_cjs/dex/pool.js +7 -0
  254. package/dist/_cjs/dex/pool.js.map +1 -0
  255. package/dist/_cjs/dex/trade-type.js +9 -0
  256. package/dist/_cjs/dex/trade-type.js.map +1 -0
  257. package/dist/_cjs/dex/version.js +9 -0
  258. package/dist/_cjs/dex/version.js.map +1 -0
  259. package/dist/_cjs/format/address.js +15 -0
  260. package/dist/_cjs/format/address.js.map +1 -0
  261. package/dist/_cjs/format/hash.js +13 -0
  262. package/dist/_cjs/format/hash.js.map +1 -0
  263. package/dist/_cjs/format/id.js +14 -0
  264. package/dist/_cjs/format/id.js.map +1 -0
  265. package/dist/_cjs/format/index.js +24 -0
  266. package/dist/_cjs/format/index.js.map +1 -0
  267. package/dist/_cjs/format/number.js +63 -0
  268. package/dist/_cjs/format/number.js.map +1 -0
  269. package/dist/_cjs/format/percent.js +25 -0
  270. package/dist/_cjs/format/percent.js.map +1 -0
  271. package/dist/_cjs/format/price.js +40 -0
  272. package/dist/_cjs/format/price.js.map +1 -0
  273. package/dist/_cjs/format/unsanitize.js +8 -0
  274. package/dist/_cjs/format/unsanitize.js.map +1 -0
  275. package/dist/_cjs/index.js +31 -0
  276. package/dist/_cjs/index.js.map +1 -0
  277. package/dist/_cjs/log/index.js +6 -0
  278. package/dist/_cjs/log/index.js.map +1 -0
  279. package/dist/_cjs/log/log.js +8 -0
  280. package/dist/_cjs/log/log.js.map +1 -0
  281. package/dist/_cjs/math/Big.js +7 -0
  282. package/dist/_cjs/math/Big.js.map +1 -0
  283. package/dist/_cjs/math/BigintIsh.js.map +1 -0
  284. package/dist/_cjs/math/Decimal.js +6 -0
  285. package/dist/_cjs/math/Decimal.js.map +1 -0
  286. package/dist/_cjs/math/Fraction.js +113 -0
  287. package/dist/_cjs/math/Fraction.js.map +1 -0
  288. package/dist/_cjs/math/Percent.js +39 -0
  289. package/dist/_cjs/math/Percent.js.map +1 -0
  290. package/dist/_cjs/math/Rounding.js.map +1 -0
  291. package/dist/_cjs/math/constants/index.js.map +1 -0
  292. package/dist/_cjs/math/constants/numbers.js +25 -0
  293. package/dist/_cjs/math/constants/numbers.js.map +1 -0
  294. package/dist/_cjs/math/functions/abs.js.map +1 -0
  295. package/dist/_cjs/math/functions/difference.js.map +1 -0
  296. package/dist/_cjs/math/functions/index.js.map +1 -0
  297. package/dist/_cjs/math/functions/maximum.js +15 -0
  298. package/dist/_cjs/math/functions/maximum.js.map +1 -0
  299. package/dist/_cjs/math/functions/minimum.js +15 -0
  300. package/dist/_cjs/math/functions/minimum.js.map +1 -0
  301. package/dist/_cjs/math/functions/sqrt.js +22 -0
  302. package/dist/_cjs/math/functions/sqrt.js.map +1 -0
  303. package/dist/_cjs/math/index.js +30 -0
  304. package/dist/_cjs/math/index.js.map +1 -0
  305. package/dist/_cjs/package.json +1 -0
  306. package/dist/_cjs/pool/index.js +21 -0
  307. package/dist/_cjs/pool/index.js.map +1 -0
  308. package/dist/_cjs/pool/sushiswap-v2/compute-sushiswap-v2-pool-address.js +20 -0
  309. package/dist/_cjs/pool/sushiswap-v2/compute-sushiswap-v2-pool-address.js.map +1 -0
  310. package/dist/_cjs/pool/sushiswap-v2/index.js +20 -0
  311. package/dist/_cjs/pool/sushiswap-v2/index.js.map +1 -0
  312. package/dist/_cjs/pool/sushiswap-v2/sushiswap-v2-pool.js +176 -0
  313. package/dist/_cjs/pool/sushiswap-v2/sushiswap-v2-pool.js.map +1 -0
  314. package/dist/_cjs/pool/sushiswap-v2/zod.js +10 -0
  315. package/dist/_cjs/pool/sushiswap-v2/zod.js.map +1 -0
  316. package/dist/_cjs/pool/sushiswap-v3/entities/Multicall.js +19 -0
  317. package/dist/_cjs/pool/sushiswap-v3/entities/Multicall.js.map +1 -0
  318. package/dist/_cjs/pool/sushiswap-v3/entities/NonfungiblePositionManager.js +208 -0
  319. package/dist/_cjs/pool/sushiswap-v3/entities/NonfungiblePositionManager.js.map +1 -0
  320. package/dist/_cjs/pool/sushiswap-v3/entities/Payments.js +59 -0
  321. package/dist/_cjs/pool/sushiswap-v3/entities/Payments.js.map +1 -0
  322. package/dist/_cjs/pool/sushiswap-v3/entities/Position.js +174 -0
  323. package/dist/_cjs/pool/sushiswap-v3/entities/Position.js.map +1 -0
  324. package/dist/_cjs/pool/sushiswap-v3/entities/SelfPermit.js +34 -0
  325. package/dist/_cjs/pool/sushiswap-v3/entities/SelfPermit.js.map +1 -0
  326. package/dist/_cjs/pool/sushiswap-v3/entities/SushiSwapV3Pool.js +162 -0
  327. package/dist/_cjs/pool/sushiswap-v3/entities/SushiSwapV3Pool.js.map +1 -0
  328. package/dist/_cjs/pool/sushiswap-v3/entities/Tick.js +15 -0
  329. package/dist/_cjs/pool/sushiswap-v3/entities/Tick.js.map +1 -0
  330. package/dist/_cjs/pool/sushiswap-v3/entities/TickDataProvider.js +14 -0
  331. package/dist/_cjs/pool/sushiswap-v3/entities/TickDataProvider.js.map +1 -0
  332. package/dist/_cjs/pool/sushiswap-v3/entities/TickListDataProvider.js +20 -0
  333. package/dist/_cjs/pool/sushiswap-v3/entities/TickListDataProvider.js.map +1 -0
  334. package/dist/_cjs/pool/sushiswap-v3/entities/index.js +25 -0
  335. package/dist/_cjs/pool/sushiswap-v3/entities/index.js.map +1 -0
  336. package/dist/_cjs/pool/sushiswap-v3/index.js +19 -0
  337. package/dist/_cjs/pool/sushiswap-v3/index.js.map +1 -0
  338. package/dist/_cjs/pool/sushiswap-v3/internalConstants.js +6 -0
  339. package/dist/_cjs/pool/sushiswap-v3/internalConstants.js.map +1 -0
  340. package/dist/_cjs/pool/sushiswap-v3/utils/calldata.js +3 -0
  341. package/dist/_cjs/pool/sushiswap-v3/utils/calldata.js.map +1 -0
  342. package/dist/_cjs/pool/sushiswap-v3/utils/computePoolAddress.js +27 -0
  343. package/dist/_cjs/pool/sushiswap-v3/utils/computePoolAddress.js.map +1 -0
  344. package/dist/_cjs/pool/sushiswap-v3/utils/encodeSqrtRatioX96.js +12 -0
  345. package/dist/_cjs/pool/sushiswap-v3/utils/encodeSqrtRatioX96.js.map +1 -0
  346. package/dist/_cjs/pool/sushiswap-v3/utils/fullMath.js +17 -0
  347. package/dist/_cjs/pool/sushiswap-v3/utils/fullMath.js.map +1 -0
  348. package/dist/_cjs/pool/sushiswap-v3/utils/index.js +35 -0
  349. package/dist/_cjs/pool/sushiswap-v3/utils/index.js.map +1 -0
  350. package/dist/_cjs/pool/sushiswap-v3/utils/isSorted.js +13 -0
  351. package/dist/_cjs/pool/sushiswap-v3/utils/isSorted.js.map +1 -0
  352. package/dist/_cjs/pool/sushiswap-v3/utils/liquidityMath.js +17 -0
  353. package/dist/_cjs/pool/sushiswap-v3/utils/liquidityMath.js.map +1 -0
  354. package/dist/_cjs/pool/sushiswap-v3/utils/maxLiquidityForAmounts.js +51 -0
  355. package/dist/_cjs/pool/sushiswap-v3/utils/maxLiquidityForAmounts.js.map +1 -0
  356. package/dist/_cjs/pool/sushiswap-v3/utils/misc.js +101 -0
  357. package/dist/_cjs/pool/sushiswap-v3/utils/misc.js.map +1 -0
  358. package/dist/_cjs/pool/sushiswap-v3/utils/mostSignificantBit.js +20 -0
  359. package/dist/_cjs/pool/sushiswap-v3/utils/mostSignificantBit.js.map +1 -0
  360. package/dist/_cjs/pool/sushiswap-v3/utils/nearestUsableTick.js +19 -0
  361. package/dist/_cjs/pool/sushiswap-v3/utils/nearestUsableTick.js.map +1 -0
  362. package/dist/_cjs/pool/sushiswap-v3/utils/position.js +17 -0
  363. package/dist/_cjs/pool/sushiswap-v3/utils/position.js.map +1 -0
  364. package/dist/_cjs/pool/sushiswap-v3/utils/priceTickConversions.js +36 -0
  365. package/dist/_cjs/pool/sushiswap-v3/utils/priceTickConversions.js.map +1 -0
  366. package/dist/_cjs/pool/sushiswap-v3/utils/sqrtPriceMath.js +90 -0
  367. package/dist/_cjs/pool/sushiswap-v3/utils/sqrtPriceMath.js.map +1 -0
  368. package/dist/_cjs/pool/sushiswap-v3/utils/swapMath.js +73 -0
  369. package/dist/_cjs/pool/sushiswap-v3/utils/swapMath.js.map +1 -0
  370. package/dist/_cjs/pool/sushiswap-v3/utils/tickLibrary.js +45 -0
  371. package/dist/_cjs/pool/sushiswap-v3/utils/tickLibrary.js.map +1 -0
  372. package/dist/_cjs/pool/sushiswap-v3/utils/tickList.js +92 -0
  373. package/dist/_cjs/pool/sushiswap-v3/utils/tickList.js.map +1 -0
  374. package/dist/_cjs/pool/sushiswap-v3/utils/tickMath.js +97 -0
  375. package/dist/_cjs/pool/sushiswap-v3/utils/tickMath.js.map +1 -0
  376. package/dist/_cjs/pool/sushiswap-v3/utils/validateAndParseAddress.js +16 -0
  377. package/dist/_cjs/pool/sushiswap-v3/utils/validateAndParseAddress.js.map +1 -0
  378. package/dist/_cjs/pool/trident-constant-product/compute-init-code-hash.js +13 -0
  379. package/dist/_cjs/pool/trident-constant-product/compute-init-code-hash.js.map +1 -0
  380. package/dist/_cjs/pool/trident-constant-product/compute-trident-constant-pool-address.js +19 -0
  381. package/dist/_cjs/pool/trident-constant-product/compute-trident-constant-pool-address.js.map +1 -0
  382. package/dist/_cjs/pool/trident-constant-product/index.js +21 -0
  383. package/dist/_cjs/pool/trident-constant-product/index.js.map +1 -0
  384. package/dist/_cjs/pool/trident-constant-product/trident-constant-pool.js +219 -0
  385. package/dist/_cjs/pool/trident-constant-product/trident-constant-pool.js.map +1 -0
  386. package/dist/_cjs/pool/trident-constant-product/zod.js +13 -0
  387. package/dist/_cjs/pool/trident-constant-product/zod.js.map +1 -0
  388. package/dist/_cjs/pool/trident-stable/compute-trident-stable-pool-address.js +19 -0
  389. package/dist/_cjs/pool/trident-stable/compute-trident-stable-pool-address.js.map +1 -0
  390. package/dist/_cjs/pool/trident-stable/index.js +20 -0
  391. package/dist/_cjs/pool/trident-stable/index.js.map +1 -0
  392. package/dist/_cjs/pool/trident-stable/trident-stable-pool.js +283 -0
  393. package/dist/_cjs/pool/trident-stable/trident-stable-pool.js.map +1 -0
  394. package/dist/_cjs/pool/trident-stable/zod.js +20 -0
  395. package/dist/_cjs/pool/trident-stable/zod.js.map +1 -0
  396. package/dist/_cjs/pricing/IncrementalPricer.js +375 -0
  397. package/dist/_cjs/pricing/IncrementalPricer.js.map +1 -0
  398. package/dist/_cjs/pricing/PoolTokenGraph.js +58 -0
  399. package/dist/_cjs/pricing/PoolTokenGraph.js.map +1 -0
  400. package/dist/_cjs/pricing/index.js +18 -0
  401. package/dist/_cjs/pricing/index.js.map +1 -0
  402. package/dist/_cjs/router/HEXer.js +112 -0
  403. package/dist/_cjs/router/HEXer.js.map +1 -0
  404. package/dist/_cjs/router/PoolBinarySerialization.js +467 -0
  405. package/dist/_cjs/router/PoolBinarySerialization.js.map +1 -0
  406. package/dist/_cjs/router/Sankey.AnyChart.js +26 -0
  407. package/dist/_cjs/router/Sankey.AnyChart.js.map +1 -0
  408. package/dist/_cjs/router/curve-sdk.js +204 -0
  409. package/dist/_cjs/router/curve-sdk.js.map +1 -0
  410. package/dist/_cjs/router/data-fetcher.js +159 -0
  411. package/dist/_cjs/router/data-fetcher.js.map +1 -0
  412. package/dist/_cjs/router/get-currency-combinations.js +69 -0
  413. package/dist/_cjs/router/get-currency-combinations.js.map +1 -0
  414. package/dist/_cjs/router/index.js +29 -0
  415. package/dist/_cjs/router/index.js.map +1 -0
  416. package/dist/_cjs/router/liquidity-providers/ApeSwap.js +31 -0
  417. package/dist/_cjs/router/liquidity-providers/ApeSwap.js.map +1 -0
  418. package/dist/_cjs/router/liquidity-providers/Biswap.js +26 -0
  419. package/dist/_cjs/router/liquidity-providers/Biswap.js.map +1 -0
  420. package/dist/_cjs/router/liquidity-providers/CurvePoolsWhitelist.js +3983 -0
  421. package/dist/_cjs/router/liquidity-providers/CurvePoolsWhitelist.js.map +1 -0
  422. package/dist/_cjs/router/liquidity-providers/CurveProvider.js +398 -0
  423. package/dist/_cjs/router/liquidity-providers/CurveProvider.js.map +1 -0
  424. package/dist/_cjs/router/liquidity-providers/CurveProviderWhitelist.js +99 -0
  425. package/dist/_cjs/router/liquidity-providers/CurveProviderWhitelist.js.map +1 -0
  426. package/dist/_cjs/router/liquidity-providers/Dfyn.js +31 -0
  427. package/dist/_cjs/router/liquidity-providers/Dfyn.js.map +1 -0
  428. package/dist/_cjs/router/liquidity-providers/DovishV3.js +28 -0
  429. package/dist/_cjs/router/liquidity-providers/DovishV3.js.map +1 -0
  430. package/dist/_cjs/router/liquidity-providers/Elk.js +47 -0
  431. package/dist/_cjs/router/liquidity-providers/Elk.js.map +1 -0
  432. package/dist/_cjs/router/liquidity-providers/HoneySwap.js +25 -0
  433. package/dist/_cjs/router/liquidity-providers/HoneySwap.js.map +1 -0
  434. package/dist/_cjs/router/liquidity-providers/JetSwap.js +29 -0
  435. package/dist/_cjs/router/liquidity-providers/JetSwap.js.map +1 -0
  436. package/dist/_cjs/router/liquidity-providers/LaserSwap.js +26 -0
  437. package/dist/_cjs/router/liquidity-providers/LaserSwap.js.map +1 -0
  438. package/dist/_cjs/router/liquidity-providers/LiquidityProvider.js +64 -0
  439. package/dist/_cjs/router/liquidity-providers/LiquidityProvider.js.map +1 -0
  440. package/dist/_cjs/router/liquidity-providers/NativeWrapProvider.js +46 -0
  441. package/dist/_cjs/router/liquidity-providers/NativeWrapProvider.js.map +1 -0
  442. package/dist/_cjs/router/liquidity-providers/NetSwap.js +25 -0
  443. package/dist/_cjs/router/liquidity-providers/NetSwap.js.map +1 -0
  444. package/dist/_cjs/router/liquidity-providers/PancakeSwap.js +28 -0
  445. package/dist/_cjs/router/liquidity-providers/PancakeSwap.js.map +1 -0
  446. package/dist/_cjs/router/liquidity-providers/QuickSwap.js +25 -0
  447. package/dist/_cjs/router/liquidity-providers/QuickSwap.js.map +1 -0
  448. package/dist/_cjs/router/liquidity-providers/SpookySwap.js +25 -0
  449. package/dist/_cjs/router/liquidity-providers/SpookySwap.js.map +1 -0
  450. package/dist/_cjs/router/liquidity-providers/SushiSwapV2.js +20 -0
  451. package/dist/_cjs/router/liquidity-providers/SushiSwapV2.js.map +1 -0
  452. package/dist/_cjs/router/liquidity-providers/SushiSwapV3.js +106 -0
  453. package/dist/_cjs/router/liquidity-providers/SushiSwapV3.js.map +1 -0
  454. package/dist/_cjs/router/liquidity-providers/TraderJoe.js +25 -0
  455. package/dist/_cjs/router/liquidity-providers/TraderJoe.js.map +1 -0
  456. package/dist/_cjs/router/liquidity-providers/UbeSwap.js +25 -0
  457. package/dist/_cjs/router/liquidity-providers/UbeSwap.js.map +1 -0
  458. package/dist/_cjs/router/liquidity-providers/UniswapV2.js +25 -0
  459. package/dist/_cjs/router/liquidity-providers/UniswapV2.js.map +1 -0
  460. package/dist/_cjs/router/liquidity-providers/UniswapV2Base.js +110 -0
  461. package/dist/_cjs/router/liquidity-providers/UniswapV2Base.js.map +1 -0
  462. package/dist/_cjs/router/liquidity-providers/UniswapV3.js +43 -0
  463. package/dist/_cjs/router/liquidity-providers/UniswapV3.js.map +1 -0
  464. package/dist/_cjs/router/liquidity-providers/UniswapV3Base.js +280 -0
  465. package/dist/_cjs/router/liquidity-providers/UniswapV3Base.js.map +1 -0
  466. package/dist/_cjs/router/liquidity-providers/index.js +27 -0
  467. package/dist/_cjs/router/liquidity-providers/index.js.map +1 -0
  468. package/dist/_cjs/router/pool-codes/BentoBridge.js +82 -0
  469. package/dist/_cjs/router/pool-codes/BentoBridge.js.map +1 -0
  470. package/dist/_cjs/router/pool-codes/BentoPool.js +47 -0
  471. package/dist/_cjs/router/pool-codes/BentoPool.js.map +1 -0
  472. package/dist/_cjs/router/pool-codes/Bridge.js +7 -0
  473. package/dist/_cjs/router/pool-codes/Bridge.js.map +1 -0
  474. package/dist/_cjs/router/pool-codes/ConstantProductPool.js +42 -0
  475. package/dist/_cjs/router/pool-codes/ConstantProductPool.js.map +1 -0
  476. package/dist/_cjs/router/pool-codes/CurvePool.js +43 -0
  477. package/dist/_cjs/router/pool-codes/CurvePool.js.map +1 -0
  478. package/dist/_cjs/router/pool-codes/NativeWrapBridge.js +50 -0
  479. package/dist/_cjs/router/pool-codes/NativeWrapBridge.js.map +1 -0
  480. package/dist/_cjs/router/pool-codes/PoolCode.js +35 -0
  481. package/dist/_cjs/router/pool-codes/PoolCode.js.map +1 -0
  482. package/dist/_cjs/router/pool-codes/TridentCLPool.js +27 -0
  483. package/dist/_cjs/router/pool-codes/TridentCLPool.js.map +1 -0
  484. package/dist/_cjs/router/pool-codes/UniV3Pool.js +27 -0
  485. package/dist/_cjs/router/pool-codes/UniV3Pool.js.map +1 -0
  486. package/dist/_cjs/router/pool-codes/UniV4Pool.js +40 -0
  487. package/dist/_cjs/router/pool-codes/UniV4Pool.js.map +1 -0
  488. package/dist/_cjs/router/pool-codes/index.js +22 -0
  489. package/dist/_cjs/router/pool-codes/index.js.map +1 -0
  490. package/dist/_cjs/router/router.js +335 -0
  491. package/dist/_cjs/router/router.js.map +1 -0
  492. package/dist/_cjs/router/routingBases.js +56 -0
  493. package/dist/_cjs/router/routingBases.js.map +1 -0
  494. package/dist/_cjs/router/tines-to-route-processor-2.js +187 -0
  495. package/dist/_cjs/router/tines-to-route-processor-2.js.map +1 -0
  496. package/dist/_cjs/router/tines-to-route-processor-4.js +69 -0
  497. package/dist/_cjs/router/tines-to-route-processor-4.js.map +1 -0
  498. package/dist/_cjs/router/tines-to-route-processor-6.js +18 -0
  499. package/dist/_cjs/router/tines-to-route-processor-6.js.map +1 -0
  500. package/dist/_cjs/router/tines-to-route-processor.js +192 -0
  501. package/dist/_cjs/router/tines-to-route-processor.js.map +1 -0
  502. package/dist/_cjs/serializer/AddressValidation.js +9 -0
  503. package/dist/_cjs/serializer/AddressValidation.js.map +1 -0
  504. package/dist/_cjs/serializer/BinarySerialization.js +256 -0
  505. package/dist/_cjs/serializer/BinarySerialization.js.map +1 -0
  506. package/dist/_cjs/serializer/index.js +18 -0
  507. package/dist/_cjs/serializer/index.js.map +1 -0
  508. package/dist/_cjs/sort/index.js +18 -0
  509. package/dist/_cjs/sort/index.js.map +1 -0
  510. package/dist/_cjs/sort/sortedInsert.js +33 -0
  511. package/dist/_cjs/sort/sortedInsert.js.map +1 -0
  512. package/dist/_cjs/tines/BridgeBento.js +116 -0
  513. package/dist/_cjs/tines/BridgeBento.js.map +1 -0
  514. package/dist/_cjs/tines/BridgeBidirectionalUnlimited.js +26 -0
  515. package/dist/_cjs/tines/BridgeBidirectionalUnlimited.js.map +1 -0
  516. package/dist/_cjs/tines/BridgeStargateV04OneWay.js +44 -0
  517. package/dist/_cjs/tines/BridgeStargateV04OneWay.js.map +1 -0
  518. package/dist/_cjs/tines/CLPool.js +248 -0
  519. package/dist/_cjs/tines/CLPool.js.map +1 -0
  520. package/dist/_cjs/tines/CurveMultitokenPool.js +227 -0
  521. package/dist/_cjs/tines/CurveMultitokenPool.js.map +1 -0
  522. package/dist/_cjs/tines/CurveMultitokenPoolSingle.js +195 -0
  523. package/dist/_cjs/tines/CurveMultitokenPoolSingle.js.map +1 -0
  524. package/dist/_cjs/tines/CurvePool.js +121 -0
  525. package/dist/_cjs/tines/CurvePool.js.map +1 -0
  526. package/dist/_cjs/tines/Graph.js +1187 -0
  527. package/dist/_cjs/tines/Graph.js.map +1 -0
  528. package/dist/_cjs/tines/MultiRouter.js +193 -0
  529. package/dist/_cjs/tines/MultiRouter.js.map +1 -0
  530. package/dist/_cjs/tines/PrimaryPools.js +147 -0
  531. package/dist/_cjs/tines/PrimaryPools.js.map +1 -0
  532. package/dist/_cjs/tines/RPool.js +77 -0
  533. package/dist/_cjs/tines/RPool.js.map +1 -0
  534. package/dist/_cjs/tines/StableSwapPool.js +222 -0
  535. package/dist/_cjs/tines/StableSwapPool.js.map +1 -0
  536. package/dist/_cjs/tines/StarGateFeesV04.js +114 -0
  537. package/dist/_cjs/tines/StarGateFeesV04.js.map +1 -0
  538. package/dist/_cjs/tines/UniV3Pool.js +291 -0
  539. package/dist/_cjs/tines/UniV3Pool.js.map +1 -0
  540. package/dist/_cjs/tines/UniV4Pool.js +28 -0
  541. package/dist/_cjs/tines/UniV4Pool.js.map +1 -0
  542. package/dist/_cjs/tines/Utils.js +114 -0
  543. package/dist/_cjs/tines/Utils.js.map +1 -0
  544. package/dist/_cjs/tines/constants/hybrid.js +5 -0
  545. package/dist/_cjs/tines/constants/hybrid.js.map +1 -0
  546. package/dist/_cjs/tines/constants/index.js +18 -0
  547. package/dist/_cjs/tines/constants/index.js.map +1 -0
  548. package/dist/_cjs/tines/functions/computeHybridLiquidity.js +26 -0
  549. package/dist/_cjs/tines/functions/computeHybridLiquidity.js.map +1 -0
  550. package/dist/_cjs/tines/functions/convertTokenToBento.js +14 -0
  551. package/dist/_cjs/tines/functions/convertTokenToBento.js.map +1 -0
  552. package/dist/_cjs/tines/functions/getBentoChainId.js +8 -0
  553. package/dist/_cjs/tines/functions/getBentoChainId.js.map +1 -0
  554. package/dist/_cjs/tines/functions/index.js +10 -0
  555. package/dist/_cjs/tines/functions/index.js.map +1 -0
  556. package/dist/_cjs/tines/index.js +34 -0
  557. package/dist/_cjs/tines/index.js.map +1 -0
  558. package/dist/_cjs/token-list/constants.js +63 -0
  559. package/dist/_cjs/token-list/constants.js.map +1 -0
  560. package/dist/_cjs/token-list/index.js +20 -0
  561. package/dist/_cjs/token-list/index.js.map +1 -0
  562. package/dist/_cjs/token-list/wrapped-token-info.js +85 -0
  563. package/dist/_cjs/token-list/wrapped-token-info.js.map +1 -0
  564. package/dist/_cjs/types/address.js +3 -0
  565. package/dist/_cjs/types/address.js.map +1 -0
  566. package/dist/_cjs/types/api.js +3 -0
  567. package/dist/_cjs/types/api.js.map +1 -0
  568. package/dist/_cjs/types/contract.js.map +1 -0
  569. package/dist/_cjs/types/id.js +3 -0
  570. package/dist/_cjs/types/id.js.map +1 -0
  571. package/dist/_cjs/types/index.js +19 -0
  572. package/dist/_cjs/types/index.js.map +1 -0
  573. package/dist/_cjs/types/mutable.js +3 -0
  574. package/dist/_cjs/types/mutable.js.map +1 -0
  575. package/dist/_cjs/types/sushi-pool/index.js +29 -0
  576. package/dist/_cjs/types/sushi-pool/index.js.map +1 -0
  577. package/dist/_cjs/types/sushi-pool/maybe-nested-pool.js +8 -0
  578. package/dist/_cjs/types/sushi-pool/maybe-nested-pool.js.map +1 -0
  579. package/dist/_cjs/types/sushi-pool/pool-base.js +3 -0
  580. package/dist/_cjs/types/sushi-pool/pool-base.js.map +1 -0
  581. package/dist/_cjs/types/sushi-pool/pool-history.js +3 -0
  582. package/dist/_cjs/types/sushi-pool/pool-history.js.map +1 -0
  583. package/dist/_cjs/types/sushi-pool/pool-id.js +3 -0
  584. package/dist/_cjs/types/sushi-pool/pool-id.js.map +1 -0
  585. package/dist/_cjs/types/sushi-pool/pool-if-incentivized.js +3 -0
  586. package/dist/_cjs/types/sushi-pool/pool-if-incentivized.js.map +1 -0
  587. package/dist/_cjs/types/sushi-pool/pool-swap-fee.js +3 -0
  588. package/dist/_cjs/types/sushi-pool/pool-swap-fee.js.map +1 -0
  589. package/dist/_cjs/types/sushi-pool/pool-v2.js +9 -0
  590. package/dist/_cjs/types/sushi-pool/pool-v2.js.map +1 -0
  591. package/dist/_cjs/types/sushi-pool/pool-v3.js +9 -0
  592. package/dist/_cjs/types/sushi-pool/pool-v3.js.map +1 -0
  593. package/dist/_cjs/types/sushi-pool/pool-with-aprs.js +3 -0
  594. package/dist/_cjs/types/sushi-pool/pool-with-aprs.js.map +1 -0
  595. package/dist/_cjs/types/sushi-pool/pool-with-buckets.js +3 -0
  596. package/dist/_cjs/types/sushi-pool/pool-with-buckets.js.map +1 -0
  597. package/dist/_cjs/types/sushi-pool/pool-with-incentives.js +16 -0
  598. package/dist/_cjs/types/sushi-pool/pool-with-incentives.js.map +1 -0
  599. package/dist/_cjs/types/sushi-pool/protocol.js +8 -0
  600. package/dist/_cjs/types/sushi-pool/protocol.js.map +1 -0
  601. package/dist/_cjs/types/sushi-position/index.js +20 -0
  602. package/dist/_cjs/types/sushi-position/index.js.map +1 -0
  603. package/dist/_cjs/types/sushi-position/sushi-position-base.js +3 -0
  604. package/dist/_cjs/types/sushi-position/sushi-position-base.js.map +1 -0
  605. package/dist/_cjs/types/sushi-position/sushi-position-staked.js +3 -0
  606. package/dist/_cjs/types/sushi-position/sushi-position-staked.js.map +1 -0
  607. package/dist/_cjs/types/sushi-position/sushi-position-with-pool.js +3 -0
  608. package/dist/_cjs/types/sushi-position/sushi-position-with-pool.js.map +1 -0
  609. package/dist/_cjs/types/token.js +3 -0
  610. package/dist/_cjs/types/token.js.map +1 -0
  611. package/dist/_cjs/validate/index.js +20 -0
  612. package/dist/_cjs/validate/index.js.map +1 -0
  613. package/dist/_cjs/validate/isPromiseFulfilled.js.map +1 -0
  614. package/dist/_cjs/validate/isPromiseRejected.js.map +1 -0
  615. package/dist/_cjs/validate/isZero.js +8 -0
  616. package/dist/_cjs/validate/isZero.js.map +1 -0
  617. package/dist/_esm/abi/StargateFeeLibraryV03.js +173 -0
  618. package/dist/_esm/abi/StargateFeeLibraryV03.js.map +1 -0
  619. package/dist/_esm/abi/StargatePool.js +1120 -0
  620. package/dist/_esm/abi/StargatePool.js.map +1 -0
  621. package/dist/_esm/abi/balanceOfAbi.js +22 -0
  622. package/dist/_esm/abi/balanceOfAbi.js.map +1 -0
  623. package/dist/_esm/abi/bentoBoxV1Abi.js +1155 -0
  624. package/dist/_esm/abi/bentoBoxV1Abi.js.map +1 -0
  625. package/dist/_esm/abi/bentoBoxV1TotalsAbi.js +27 -0
  626. package/dist/_esm/abi/bentoBoxV1TotalsAbi.js.map +1 -0
  627. package/dist/_esm/abi/cloneRewarderTime.js +295 -0
  628. package/dist/_esm/abi/cloneRewarderTime.js.map +1 -0
  629. package/dist/_esm/abi/complexRewarderTimeAbi.js +307 -0
  630. package/dist/_esm/abi/complexRewarderTimeAbi.js.map +1 -0
  631. package/dist/_esm/abi/eip2612Abi.js +21 -0
  632. package/dist/_esm/abi/eip2612Abi.js.map +1 -0
  633. package/dist/_esm/abi/erc20Abi.js +445 -0
  634. package/dist/_esm/abi/erc20Abi.js.map +1 -0
  635. package/dist/_esm/abi/furoStreamAbi.js +1024 -0
  636. package/dist/_esm/abi/furoStreamAbi.js.map +1 -0
  637. package/dist/_esm/abi/furoStreamRouterAbi.js +174 -0
  638. package/dist/_esm/abi/furoStreamRouterAbi.js.map +1 -0
  639. package/dist/_esm/abi/furoVestingAbi.js +952 -0
  640. package/dist/_esm/abi/furoVestingAbi.js.map +1 -0
  641. package/dist/_esm/abi/furoVestingRouterAbi.js +206 -0
  642. package/dist/_esm/abi/furoVestingRouterAbi.js.map +1 -0
  643. package/dist/_esm/abi/gasDataArbitrumAbi.js +41 -0
  644. package/dist/_esm/abi/gasDataArbitrumAbi.js.map +1 -0
  645. package/dist/_esm/abi/gasPriceOracleAbi.js +299 -0
  646. package/dist/_esm/abi/gasPriceOracleAbi.js.map +1 -0
  647. package/dist/_esm/abi/getPoolsAbi.js +37 -0
  648. package/dist/_esm/abi/getPoolsAbi.js.map +1 -0
  649. package/dist/_esm/abi/getReservesAbi.js +26 -0
  650. package/dist/_esm/abi/getReservesAbi.js.map +1 -0
  651. package/dist/_esm/abi/index.js +59 -0
  652. package/dist/_esm/abi/index.js.map +1 -0
  653. package/dist/_esm/abi/masterChefV1Abi.js +543 -0
  654. package/dist/_esm/abi/masterChefV1Abi.js.map +1 -0
  655. package/dist/_esm/abi/masterChefV2Abi.js +855 -0
  656. package/dist/_esm/abi/masterChefV2Abi.js.map +1 -0
  657. package/dist/_esm/abi/miniChefAbi.js +468 -0
  658. package/dist/_esm/abi/miniChefAbi.js.map +1 -0
  659. package/dist/_esm/abi/miniChefV2Abi.js +468 -0
  660. package/dist/_esm/abi/miniChefV2Abi.js.map +1 -0
  661. package/dist/_esm/abi/multicall2Abi.js +168 -0
  662. package/dist/_esm/abi/multicall2Abi.js.map +1 -0
  663. package/dist/_esm/abi/multicall3Abi.js +239 -0
  664. package/dist/_esm/abi/multicall3Abi.js.map +1 -0
  665. package/dist/_esm/abi/multicallAbi.js +22 -0
  666. package/dist/_esm/abi/multicallAbi.js.map +1 -0
  667. package/dist/_esm/abi/nonfungiblePositionManagerAbi.js +1222 -0
  668. package/dist/_esm/abi/nonfungiblePositionManagerAbi.js.map +1 -0
  669. package/dist/_esm/abi/peripheryPaymentsWithFeeAbi.js +112 -0
  670. package/dist/_esm/abi/peripheryPaymentsWithFeeAbi.js.map +1 -0
  671. package/dist/_esm/abi/permit2Abi.js +902 -0
  672. package/dist/_esm/abi/permit2Abi.js.map +1 -0
  673. package/dist/_esm/abi/poolsCountAbi.js +27 -0
  674. package/dist/_esm/abi/poolsCountAbi.js.map +1 -0
  675. package/dist/_esm/abi/routeProcessor2Abi.js +290 -0
  676. package/dist/_esm/abi/routeProcessor2Abi.js.map +1 -0
  677. package/dist/_esm/abi/routeProcessor3Abi.js +290 -0
  678. package/dist/_esm/abi/routeProcessor3Abi.js.map +1 -0
  679. package/dist/_esm/abi/routeProcessor3_1Abi.js +290 -0
  680. package/dist/_esm/abi/routeProcessor3_1Abi.js.map +1 -0
  681. package/dist/_esm/abi/routeProcessor4Abi.js +207 -0
  682. package/dist/_esm/abi/routeProcessor4Abi.js.map +1 -0
  683. package/dist/_esm/abi/routeProcessor5Abi.js +474 -0
  684. package/dist/_esm/abi/routeProcessor5Abi.js.map +1 -0
  685. package/dist/_esm/abi/routeProcessorAbi.js +129 -0
  686. package/dist/_esm/abi/routeProcessorAbi.js.map +1 -0
  687. package/dist/_esm/abi/selfPermitAbi.js +155 -0
  688. package/dist/_esm/abi/selfPermitAbi.js.map +1 -0
  689. package/dist/_esm/abi/slot0Abi.js +26 -0
  690. package/dist/_esm/abi/slot0Abi.js.map +1 -0
  691. package/dist/_esm/abi/squidAdapterAbi.js +119 -0
  692. package/dist/_esm/abi/squidAdapterAbi.js.map +1 -0
  693. package/dist/_esm/abi/squidRouterAbi.js +623 -0
  694. package/dist/_esm/abi/squidRouterAbi.js.map +1 -0
  695. package/dist/_esm/abi/stargateAdapterAbi.js +132 -0
  696. package/dist/_esm/abi/stargateAdapterAbi.js.map +1 -0
  697. package/dist/_esm/abi/sushiV3FactoryAbi.js +237 -0
  698. package/dist/_esm/abi/sushiV3FactoryAbi.js.map +1 -0
  699. package/dist/_esm/abi/sushiV3PoolAbi.js +989 -0
  700. package/dist/_esm/abi/sushiV3PoolAbi.js.map +1 -0
  701. package/dist/_esm/abi/sushiXSwap2Abi.js +238 -0
  702. package/dist/_esm/abi/sushiXSwap2Abi.js.map +1 -0
  703. package/dist/_esm/abi/sushiXSwapAbi.js +268 -0
  704. package/dist/_esm/abi/sushiXSwapAbi.js.map +1 -0
  705. package/dist/_esm/abi/sushiswapV2Factory.js +121 -0
  706. package/dist/_esm/abi/sushiswapV2Factory.js.map +1 -0
  707. package/dist/_esm/abi/swapFeeAbi.js +16 -0
  708. package/dist/_esm/abi/swapFeeAbi.js.map +1 -0
  709. package/dist/_esm/abi/tickLensAbi.js +24 -0
  710. package/dist/_esm/abi/tickLensAbi.js.map +1 -0
  711. package/dist/_esm/abi/totalsAbi.js +27 -0
  712. package/dist/_esm/abi/totalsAbi.js.map +1 -0
  713. package/dist/_esm/abi/tridentConstantPoolAbi.js +853 -0
  714. package/dist/_esm/abi/tridentConstantPoolAbi.js.map +1 -0
  715. package/dist/_esm/abi/tridentConstantPoolFactoryAbi.js +232 -0
  716. package/dist/_esm/abi/tridentConstantPoolFactoryAbi.js.map +1 -0
  717. package/dist/_esm/abi/tridentGetPoolsAbi.js +37 -0
  718. package/dist/_esm/abi/tridentGetPoolsAbi.js.map +1 -0
  719. package/dist/_esm/abi/tridentPoolsCountAbi.js +27 -0
  720. package/dist/_esm/abi/tridentPoolsCountAbi.js.map +1 -0
  721. package/dist/_esm/abi/tridentRouterAbi.js +764 -0
  722. package/dist/_esm/abi/tridentRouterAbi.js.map +1 -0
  723. package/dist/_esm/abi/tridentStablePoolAbi.js +842 -0
  724. package/dist/_esm/abi/tridentStablePoolAbi.js.map +1 -0
  725. package/dist/_esm/abi/tridentStablePoolFactoryAbi.js +227 -0
  726. package/dist/_esm/abi/tridentStablePoolFactoryAbi.js.map +1 -0
  727. package/dist/_esm/abi/tridentSwapFeeAbi.js +16 -0
  728. package/dist/_esm/abi/tridentSwapFeeAbi.js.map +1 -0
  729. package/dist/_esm/abi/uniswapV2PairAbi.js +708 -0
  730. package/dist/_esm/abi/uniswapV2PairAbi.js.map +1 -0
  731. package/dist/_esm/abi/uniswapV2RouterAbi.js +357 -0
  732. package/dist/_esm/abi/uniswapV2RouterAbi.js.map +1 -0
  733. package/dist/_esm/abi/uniswapV3FactoryAbi.js +237 -0
  734. package/dist/_esm/abi/uniswapV3FactoryAbi.js.map +1 -0
  735. package/dist/_esm/abi/uniswapV3PoolAbi.js +643 -0
  736. package/dist/_esm/abi/uniswapV3PoolAbi.js.map +1 -0
  737. package/dist/_esm/abi/v3baseAbi.js +31 -0
  738. package/dist/_esm/abi/v3baseAbi.js.map +1 -0
  739. package/dist/_esm/abi/weth9Abi.js +154 -0
  740. package/dist/_esm/abi/weth9Abi.js.map +1 -0
  741. package/dist/_esm/abi/xsushiAbi.js +167 -0
  742. package/dist/_esm/abi/xsushiAbi.js.map +1 -0
  743. package/dist/_esm/api/get-user.js +5 -0
  744. package/dist/_esm/api/get-user.js.map +1 -0
  745. package/dist/_esm/api/shema.js +2 -0
  746. package/dist/_esm/api/shema.js.map +1 -0
  747. package/dist/_esm/bigint-serializer/index.js +42 -0
  748. package/dist/_esm/bigint-serializer/index.js.map +1 -0
  749. package/dist/_esm/calculate/fee.js +5 -0
  750. package/dist/_esm/calculate/fee.js.map +1 -0
  751. package/dist/_esm/calculate/gasMargin.js +5 -0
  752. package/dist/_esm/calculate/gasMargin.js.map +1 -0
  753. package/dist/_esm/calculate/index.js +4 -0
  754. package/dist/_esm/calculate/index.js.map +1 -0
  755. package/dist/_esm/calculate/slippageAmount.js +12 -0
  756. package/dist/_esm/calculate/slippageAmount.js.map +1 -0
  757. package/dist/_esm/chain/constants.js +134 -0
  758. package/dist/_esm/chain/constants.js.map +1 -0
  759. package/dist/_esm/chain/generated.js +1040 -0
  760. package/dist/_esm/chain/generated.js.map +1 -0
  761. package/dist/_esm/chain/index.js +191 -0
  762. package/dist/_esm/chain/index.js.map +1 -0
  763. package/dist/_esm/config/api.js +4 -0
  764. package/dist/_esm/config/api.js.map +1 -0
  765. package/dist/_esm/config/default-slippage.js +2 -0
  766. package/dist/_esm/config/default-slippage.js.map +1 -0
  767. package/dist/_esm/config/features/bentobox.js +49 -0
  768. package/dist/_esm/config/features/bentobox.js.map +1 -0
  769. package/dist/_esm/config/features/extractor.js +39 -0
  770. package/dist/_esm/config/features/extractor.js.map +1 -0
  771. package/dist/_esm/config/features/furo.js +20 -0
  772. package/dist/_esm/config/features/furo.js.map +1 -0
  773. package/dist/_esm/config/features/index.js +19 -0
  774. package/dist/_esm/config/features/index.js.map +1 -0
  775. package/dist/_esm/config/features/master-chef.js +12 -0
  776. package/dist/_esm/config/features/master-chef.js.map +1 -0
  777. package/dist/_esm/config/features/merkl.js +23 -0
  778. package/dist/_esm/config/features/merkl.js.map +1 -0
  779. package/dist/_esm/config/features/mini-chef.js +41 -0
  780. package/dist/_esm/config/features/mini-chef.js.map +1 -0
  781. package/dist/_esm/config/features/pancakeswap-v2.js +10 -0
  782. package/dist/_esm/config/features/pancakeswap-v2.js.map +1 -0
  783. package/dist/_esm/config/features/pancakeswap-v3.js +57 -0
  784. package/dist/_esm/config/features/pancakeswap-v3.js.map +1 -0
  785. package/dist/_esm/config/features/route-processor.js +352 -0
  786. package/dist/_esm/config/features/route-processor.js.map +1 -0
  787. package/dist/_esm/config/features/squid.js +46 -0
  788. package/dist/_esm/config/features/squid.js.map +1 -0
  789. package/dist/_esm/config/features/stargate.js +771 -0
  790. package/dist/_esm/config/features/stargate.js.map +1 -0
  791. package/dist/_esm/config/features/sushiswap-v2.js +220 -0
  792. package/dist/_esm/config/features/sushiswap-v2.js.map +1 -0
  793. package/dist/_esm/config/features/sushiswap-v3.js +185 -0
  794. package/dist/_esm/config/features/sushiswap-v3.js.map +1 -0
  795. package/dist/_esm/config/features/sushiswap.js +10 -0
  796. package/dist/_esm/config/features/sushiswap.js.map +1 -0
  797. package/dist/_esm/config/features/sushixswap.js +112 -0
  798. package/dist/_esm/config/features/sushixswap.js.map +1 -0
  799. package/dist/_esm/config/features/trident.js +56 -0
  800. package/dist/_esm/config/features/trident.js.map +1 -0
  801. package/dist/_esm/config/features/uniswap-v2.js +28 -0
  802. package/dist/_esm/config/features/uniswap-v2.js.map +1 -0
  803. package/dist/_esm/config/features/uniswap-v3.js +85 -0
  804. package/dist/_esm/config/features/uniswap-v3.js.map +1 -0
  805. package/dist/_esm/config/governance.js +6 -0
  806. package/dist/_esm/config/governance.js.map +1 -0
  807. package/dist/_esm/config/index.js +18 -0
  808. package/dist/_esm/config/index.js.map +1 -0
  809. package/dist/_esm/config/native-address.js +2 -0
  810. package/dist/_esm/config/native-address.js.map +1 -0
  811. package/dist/_esm/config/native-ids.js +59 -0
  812. package/dist/_esm/config/native-ids.js.map +1 -0
  813. package/dist/_esm/config/subgraph/hosts.js +29 -0
  814. package/dist/_esm/config/subgraph/hosts.js.map +1 -0
  815. package/dist/_esm/config/subgraph/index.js +5 -0
  816. package/dist/_esm/config/subgraph/index.js.map +1 -0
  817. package/dist/_esm/config/subgraph/max-first.js +10 -0
  818. package/dist/_esm/config/subgraph/max-first.js.map +1 -0
  819. package/dist/_esm/config/subgraph/seconds-between-blocks.js +30 -0
  820. package/dist/_esm/config/subgraph/seconds-between-blocks.js.map +1 -0
  821. package/dist/_esm/config/subgraph/subgraphs/bentobox.js +18 -0
  822. package/dist/_esm/config/subgraph/subgraphs/bentobox.js.map +1 -0
  823. package/dist/_esm/config/subgraph/subgraphs/blocks.js +40 -0
  824. package/dist/_esm/config/subgraph/subgraphs/blocks.js.map +1 -0
  825. package/dist/_esm/config/subgraph/subgraphs/data-api.js +3 -0
  826. package/dist/_esm/config/subgraph/subgraphs/data-api.js.map +1 -0
  827. package/dist/_esm/config/subgraph/subgraphs/furo.js +20 -0
  828. package/dist/_esm/config/subgraph/subgraphs/furo.js.map +1 -0
  829. package/dist/_esm/config/subgraph/subgraphs/index.js +11 -0
  830. package/dist/_esm/config/subgraph/subgraphs/index.js.map +1 -0
  831. package/dist/_esm/config/subgraph/subgraphs/master-chef-v1.js +3 -0
  832. package/dist/_esm/config/subgraph/subgraphs/master-chef-v1.js.map +1 -0
  833. package/dist/_esm/config/subgraph/subgraphs/master-chef-v2.js +3 -0
  834. package/dist/_esm/config/subgraph/subgraphs/master-chef-v2.js.map +1 -0
  835. package/dist/_esm/config/subgraph/subgraphs/mini-chef.js +22 -0
  836. package/dist/_esm/config/subgraph/subgraphs/mini-chef.js.map +1 -0
  837. package/dist/_esm/config/subgraph/subgraphs/sushi-bar.js +3 -0
  838. package/dist/_esm/config/subgraph/subgraphs/sushi-bar.js.map +1 -0
  839. package/dist/_esm/config/subgraph/subgraphs/sushiswap-v2.js +37 -0
  840. package/dist/_esm/config/subgraph/subgraphs/sushiswap-v2.js.map +1 -0
  841. package/dist/_esm/config/subgraph/subgraphs/sushiswap-v3.js +32 -0
  842. package/dist/_esm/config/subgraph/subgraphs/sushiswap-v3.js.map +1 -0
  843. package/dist/_esm/config/token-chomper.js +73 -0
  844. package/dist/_esm/config/token-chomper.js.map +1 -0
  845. package/dist/_esm/config/token-maps/additional-bases.js +103 -0
  846. package/dist/_esm/config/token-maps/additional-bases.js.map +1 -0
  847. package/dist/_esm/config/token-maps/bases-to-check-trades-against.js +460 -0
  848. package/dist/_esm/config/token-maps/bases-to-check-trades-against.js.map +1 -0
  849. package/dist/_esm/config/token-maps/custom-bases.js +15 -0
  850. package/dist/_esm/config/token-maps/custom-bases.js.map +1 -0
  851. package/dist/_esm/config/token-maps/default-bases.js +349 -0
  852. package/dist/_esm/config/token-maps/default-bases.js.map +1 -0
  853. package/dist/_esm/config/token-maps/default-quote.js +76 -0
  854. package/dist/_esm/config/token-maps/default-quote.js.map +1 -0
  855. package/dist/_esm/config/token-maps/index.js +9 -0
  856. package/dist/_esm/config/token-maps/index.js.map +1 -0
  857. package/dist/_esm/config/token-maps/lsds.js +406 -0
  858. package/dist/_esm/config/token-maps/lsds.js.map +1 -0
  859. package/dist/_esm/config/token-maps/short-name-to-currency.js +283 -0
  860. package/dist/_esm/config/token-maps/short-name-to-currency.js.map +1 -0
  861. package/dist/_esm/config/token-maps/stables.js +207 -0
  862. package/dist/_esm/config/token-maps/stables.js.map +1 -0
  863. package/dist/_esm/config/token-security.js +21 -0
  864. package/dist/_esm/config/token-security.js.map +1 -0
  865. package/dist/_esm/config/viem.js +755 -0
  866. package/dist/_esm/config/viem.js.map +1 -0
  867. package/dist/_esm/config/wallet.js +67 -0
  868. package/dist/_esm/config/wallet.js.map +1 -0
  869. package/dist/_esm/config/wnative.js +5 -0
  870. package/dist/_esm/config/wnative.js.map +1 -0
  871. package/dist/_esm/contract/erc20.js +6 -0
  872. package/dist/_esm/contract/erc20.js.map +1 -0
  873. package/dist/_esm/contract/index.js +2 -0
  874. package/dist/_esm/contract/index.js.map +1 -0
  875. package/dist/_esm/convert/index.js +2 -0
  876. package/dist/_esm/convert/index.js.map +1 -0
  877. package/dist/_esm/convert/to-hex.js +14 -0
  878. package/dist/_esm/convert/to-hex.js.map +1 -0
  879. package/dist/_esm/currency/amount.js +104 -0
  880. package/dist/_esm/currency/amount.js.map +1 -0
  881. package/dist/_esm/currency/currency.js +30 -0
  882. package/dist/_esm/currency/currency.js.map +1 -0
  883. package/dist/_esm/currency/index.js +14 -0
  884. package/dist/_esm/currency/index.js.map +1 -0
  885. package/dist/_esm/currency/native.js +65 -0
  886. package/dist/_esm/currency/native.js.map +1 -0
  887. package/dist/_esm/currency/price.js +71 -0
  888. package/dist/_esm/currency/price.js.map +1 -0
  889. package/dist/_esm/currency/share.js +67 -0
  890. package/dist/_esm/currency/share.js.map +1 -0
  891. package/dist/_esm/currency/token-addresses.js +583 -0
  892. package/dist/_esm/currency/token-addresses.js.map +1 -0
  893. package/dist/_esm/currency/token.js +93 -0
  894. package/dist/_esm/currency/token.js.map +1 -0
  895. package/dist/_esm/currency/tokens.js +822 -0
  896. package/dist/_esm/currency/tokens.js.map +1 -0
  897. package/dist/_esm/currency/try-parse-amount.js +22 -0
  898. package/dist/_esm/currency/try-parse-amount.js.map +1 -0
  899. package/dist/_esm/currency/type.js +2 -0
  900. package/dist/_esm/currency/type.js.map +1 -0
  901. package/dist/_esm/currency/unwrap.js +9 -0
  902. package/dist/_esm/currency/unwrap.js.map +1 -0
  903. package/dist/_esm/currency/zod.js +21 -0
  904. package/dist/_esm/currency/zod.js.map +1 -0
  905. package/dist/_esm/data/index.js +2 -0
  906. package/dist/_esm/data/index.js.map +1 -0
  907. package/dist/_esm/data/lowercase-map.js +15 -0
  908. package/dist/_esm/data/lowercase-map.js.map +1 -0
  909. package/dist/_esm/dex/errors.js +29 -0
  910. package/dist/_esm/dex/errors.js.map +1 -0
  911. package/dist/_esm/dex/fee.js +15 -0
  912. package/dist/_esm/dex/fee.js.map +1 -0
  913. package/dist/_esm/dex/index.js +6 -0
  914. package/dist/_esm/dex/index.js.map +1 -0
  915. package/dist/_esm/dex/pool.js +5 -0
  916. package/dist/_esm/dex/pool.js.map +1 -0
  917. package/dist/_esm/dex/trade-type.js +6 -0
  918. package/dist/_esm/dex/trade-type.js.map +1 -0
  919. package/dist/_esm/dex/version.js +7 -0
  920. package/dist/_esm/dex/version.js.map +1 -0
  921. package/dist/_esm/format/address.js +12 -0
  922. package/dist/_esm/format/address.js.map +1 -0
  923. package/dist/_esm/format/hash.js +10 -0
  924. package/dist/_esm/format/hash.js.map +1 -0
  925. package/dist/_esm/format/id.js +9 -0
  926. package/dist/_esm/format/id.js.map +1 -0
  927. package/dist/_esm/format/index.js +8 -0
  928. package/dist/_esm/format/index.js.map +1 -0
  929. package/dist/_esm/format/number.js +77 -0
  930. package/dist/_esm/format/number.js.map +1 -0
  931. package/dist/_esm/format/percent.js +21 -0
  932. package/dist/_esm/format/percent.js.map +1 -0
  933. package/dist/_esm/format/price.js +54 -0
  934. package/dist/_esm/format/price.js.map +1 -0
  935. package/dist/_esm/format/unsanitize.js +5 -0
  936. package/dist/_esm/format/unsanitize.js.map +1 -0
  937. package/dist/_esm/index.js +18 -0
  938. package/dist/_esm/index.js.map +1 -0
  939. package/dist/_esm/log/index.js +2 -0
  940. package/dist/_esm/log/index.js.map +1 -0
  941. package/dist/_esm/log/log.js +5 -0
  942. package/dist/_esm/log/log.js.map +1 -0
  943. package/dist/_esm/math/Big.js +5 -0
  944. package/dist/_esm/math/Big.js.map +1 -0
  945. package/dist/_esm/math/BigintIsh.js +2 -0
  946. package/dist/_esm/math/BigintIsh.js.map +1 -0
  947. package/dist/_esm/math/Decimal.js +4 -0
  948. package/dist/_esm/math/Decimal.js.map +1 -0
  949. package/dist/_esm/math/Fraction.js +117 -0
  950. package/dist/_esm/math/Fraction.js.map +1 -0
  951. package/dist/_esm/math/Percent.js +47 -0
  952. package/dist/_esm/math/Percent.js.map +1 -0
  953. package/dist/_esm/math/Rounding.js +8 -0
  954. package/dist/_esm/math/Rounding.js.map +1 -0
  955. package/dist/_esm/math/constants/index.js +2 -0
  956. package/dist/_esm/math/constants/index.js.map +1 -0
  957. package/dist/_esm/math/constants/numbers.js +23 -0
  958. package/dist/_esm/math/constants/numbers.js.map +1 -0
  959. package/dist/_esm/math/functions/abs.js +4 -0
  960. package/dist/_esm/math/functions/abs.js.map +1 -0
  961. package/dist/_esm/math/functions/difference.js +7 -0
  962. package/dist/_esm/math/functions/difference.js.map +1 -0
  963. package/dist/_esm/math/functions/index.js +6 -0
  964. package/dist/_esm/math/functions/index.js.map +1 -0
  965. package/dist/_esm/math/functions/maximum.js +16 -0
  966. package/dist/_esm/math/functions/maximum.js.map +1 -0
  967. package/dist/_esm/math/functions/minimum.js +17 -0
  968. package/dist/_esm/math/functions/minimum.js.map +1 -0
  969. package/dist/_esm/math/functions/sqrt.js +23 -0
  970. package/dist/_esm/math/functions/sqrt.js.map +1 -0
  971. package/dist/_esm/math/index.js +9 -0
  972. package/dist/_esm/math/index.js.map +1 -0
  973. package/dist/_esm/package.json +1 -0
  974. package/dist/_esm/pool/index.js +5 -0
  975. package/dist/_esm/pool/index.js.map +1 -0
  976. package/dist/_esm/pool/sushiswap-v2/compute-sushiswap-v2-pool-address.js +25 -0
  977. package/dist/_esm/pool/sushiswap-v2/compute-sushiswap-v2-pool-address.js.map +1 -0
  978. package/dist/_esm/pool/sushiswap-v2/index.js +4 -0
  979. package/dist/_esm/pool/sushiswap-v2/index.js.map +1 -0
  980. package/dist/_esm/pool/sushiswap-v2/sushiswap-v2-pool.js +189 -0
  981. package/dist/_esm/pool/sushiswap-v2/sushiswap-v2-pool.js.map +1 -0
  982. package/dist/_esm/pool/sushiswap-v2/zod.js +7 -0
  983. package/dist/_esm/pool/sushiswap-v2/zod.js.map +1 -0
  984. package/dist/_esm/pool/sushiswap-v3/entities/Multicall.js +18 -0
  985. package/dist/_esm/pool/sushiswap-v3/entities/Multicall.js.map +1 -0
  986. package/dist/_esm/pool/sushiswap-v3/entities/NonfungiblePositionManager.js +228 -0
  987. package/dist/_esm/pool/sushiswap-v3/entities/NonfungiblePositionManager.js.map +1 -0
  988. package/dist/_esm/pool/sushiswap-v3/entities/Payments.js +60 -0
  989. package/dist/_esm/pool/sushiswap-v3/entities/Payments.js.map +1 -0
  990. package/dist/_esm/pool/sushiswap-v3/entities/Position.js +256 -0
  991. package/dist/_esm/pool/sushiswap-v3/entities/Position.js.map +1 -0
  992. package/dist/_esm/pool/sushiswap-v3/entities/SelfPermit.js +34 -0
  993. package/dist/_esm/pool/sushiswap-v3/entities/SelfPermit.js.map +1 -0
  994. package/dist/_esm/pool/sushiswap-v3/entities/SushiSwapV3Pool.js +224 -0
  995. package/dist/_esm/pool/sushiswap-v3/entities/SushiSwapV3Pool.js.map +1 -0
  996. package/dist/_esm/pool/sushiswap-v3/entities/Tick.js +11 -0
  997. package/dist/_esm/pool/sushiswap-v3/entities/Tick.js.map +1 -0
  998. package/dist/_esm/pool/sushiswap-v3/entities/TickDataProvider.js +14 -0
  999. package/dist/_esm/pool/sushiswap-v3/entities/TickDataProvider.js.map +1 -0
  1000. package/dist/_esm/pool/sushiswap-v3/entities/TickListDataProvider.js +19 -0
  1001. package/dist/_esm/pool/sushiswap-v3/entities/TickListDataProvider.js.map +1 -0
  1002. package/dist/_esm/pool/sushiswap-v3/entities/index.js +9 -0
  1003. package/dist/_esm/pool/sushiswap-v3/entities/index.js.map +1 -0
  1004. package/dist/_esm/pool/sushiswap-v3/index.js +3 -0
  1005. package/dist/_esm/pool/sushiswap-v3/index.js.map +1 -0
  1006. package/dist/_esm/pool/sushiswap-v3/internalConstants.js +4 -0
  1007. package/dist/_esm/pool/sushiswap-v3/internalConstants.js.map +1 -0
  1008. package/dist/_esm/pool/sushiswap-v3/utils/calldata.js +2 -0
  1009. package/dist/_esm/pool/sushiswap-v3/utils/calldata.js.map +1 -0
  1010. package/dist/_esm/pool/sushiswap-v3/utils/computePoolAddress.js +34 -0
  1011. package/dist/_esm/pool/sushiswap-v3/utils/computePoolAddress.js.map +1 -0
  1012. package/dist/_esm/pool/sushiswap-v3/utils/encodeSqrtRatioX96.js +14 -0
  1013. package/dist/_esm/pool/sushiswap-v3/utils/encodeSqrtRatioX96.js.map +1 -0
  1014. package/dist/_esm/pool/sushiswap-v3/utils/fullMath.js +16 -0
  1015. package/dist/_esm/pool/sushiswap-v3/utils/fullMath.js.map +1 -0
  1016. package/dist/_esm/pool/sushiswap-v3/utils/index.js +19 -0
  1017. package/dist/_esm/pool/sushiswap-v3/utils/index.js.map +1 -0
  1018. package/dist/_esm/pool/sushiswap-v3/utils/isSorted.js +15 -0
  1019. package/dist/_esm/pool/sushiswap-v3/utils/isSorted.js.map +1 -0
  1020. package/dist/_esm/pool/sushiswap-v3/utils/liquidityMath.js +16 -0
  1021. package/dist/_esm/pool/sushiswap-v3/utils/liquidityMath.js.map +1 -0
  1022. package/dist/_esm/pool/sushiswap-v3/utils/maxLiquidityForAmounts.js +84 -0
  1023. package/dist/_esm/pool/sushiswap-v3/utils/maxLiquidityForAmounts.js.map +1 -0
  1024. package/dist/_esm/pool/sushiswap-v3/utils/misc.js +122 -0
  1025. package/dist/_esm/pool/sushiswap-v3/utils/misc.js.map +1 -0
  1026. package/dist/_esm/pool/sushiswap-v3/utils/mostSignificantBit.js +16 -0
  1027. package/dist/_esm/pool/sushiswap-v3/utils/mostSignificantBit.js.map +1 -0
  1028. package/dist/_esm/pool/sushiswap-v3/utils/nearestUsableTick.js +20 -0
  1029. package/dist/_esm/pool/sushiswap-v3/utils/nearestUsableTick.js.map +1 -0
  1030. package/dist/_esm/pool/sushiswap-v3/utils/position.js +17 -0
  1031. package/dist/_esm/pool/sushiswap-v3/utils/position.js.map +1 -0
  1032. package/dist/_esm/pool/sushiswap-v3/utils/priceTickConversions.js +43 -0
  1033. package/dist/_esm/pool/sushiswap-v3/utils/priceTickConversions.js.map +1 -0
  1034. package/dist/_esm/pool/sushiswap-v3/utils/sqrtPriceMath.js +89 -0
  1035. package/dist/_esm/pool/sushiswap-v3/utils/sqrtPriceMath.js.map +1 -0
  1036. package/dist/_esm/pool/sushiswap-v3/utils/swapMath.js +75 -0
  1037. package/dist/_esm/pool/sushiswap-v3/utils/swapMath.js.map +1 -0
  1038. package/dist/_esm/pool/sushiswap-v3/utils/tickLibrary.js +43 -0
  1039. package/dist/_esm/pool/sushiswap-v3/utils/tickLibrary.js.map +1 -0
  1040. package/dist/_esm/pool/sushiswap-v3/utils/tickList.js +104 -0
  1041. package/dist/_esm/pool/sushiswap-v3/utils/tickList.js.map +1 -0
  1042. package/dist/_esm/pool/sushiswap-v3/utils/tickMath.js +118 -0
  1043. package/dist/_esm/pool/sushiswap-v3/utils/tickMath.js.map +1 -0
  1044. package/dist/_esm/pool/sushiswap-v3/utils/validateAndParseAddress.js +13 -0
  1045. package/dist/_esm/pool/sushiswap-v3/utils/validateAndParseAddress.js.map +1 -0
  1046. package/dist/_esm/pool/trident-constant-product/compute-init-code-hash.js +9 -0
  1047. package/dist/_esm/pool/trident-constant-product/compute-init-code-hash.js.map +1 -0
  1048. package/dist/_esm/pool/trident-constant-product/compute-trident-constant-pool-address.js +24 -0
  1049. package/dist/_esm/pool/trident-constant-product/compute-trident-constant-pool-address.js.map +1 -0
  1050. package/dist/_esm/pool/trident-constant-product/index.js +5 -0
  1051. package/dist/_esm/pool/trident-constant-product/index.js.map +1 -0
  1052. package/dist/_esm/pool/trident-constant-product/trident-constant-pool.js +233 -0
  1053. package/dist/_esm/pool/trident-constant-product/trident-constant-pool.js.map +1 -0
  1054. package/dist/_esm/pool/trident-constant-product/zod.js +10 -0
  1055. package/dist/_esm/pool/trident-constant-product/zod.js.map +1 -0
  1056. package/dist/_esm/pool/trident-stable/compute-trident-stable-pool-address.js +25 -0
  1057. package/dist/_esm/pool/trident-stable/compute-trident-stable-pool-address.js.map +1 -0
  1058. package/dist/_esm/pool/trident-stable/index.js +4 -0
  1059. package/dist/_esm/pool/trident-stable/index.js.map +1 -0
  1060. package/dist/_esm/pool/trident-stable/trident-stable-pool.js +365 -0
  1061. package/dist/_esm/pool/trident-stable/trident-stable-pool.js.map +1 -0
  1062. package/dist/_esm/pool/trident-stable/zod.js +17 -0
  1063. package/dist/_esm/pool/trident-stable/zod.js.map +1 -0
  1064. package/dist/_esm/pricing/IncrementalPricer.js +430 -0
  1065. package/dist/_esm/pricing/IncrementalPricer.js.map +1 -0
  1066. package/dist/_esm/pricing/PoolTokenGraph.js +56 -0
  1067. package/dist/_esm/pricing/PoolTokenGraph.js.map +1 -0
  1068. package/dist/_esm/pricing/index.js +2 -0
  1069. package/dist/_esm/pricing/index.js.map +1 -0
  1070. package/dist/_esm/router/HEXer.js +110 -0
  1071. package/dist/_esm/router/HEXer.js.map +1 -0
  1072. package/dist/_esm/router/PoolBinarySerialization.js +471 -0
  1073. package/dist/_esm/router/PoolBinarySerialization.js.map +1 -0
  1074. package/dist/_esm/router/Sankey.AnyChart.js +25 -0
  1075. package/dist/_esm/router/Sankey.AnyChart.js.map +1 -0
  1076. package/dist/_esm/router/curve-sdk.js +215 -0
  1077. package/dist/_esm/router/curve-sdk.js.map +1 -0
  1078. package/dist/_esm/router/data-fetcher.js +188 -0
  1079. package/dist/_esm/router/data-fetcher.js.map +1 -0
  1080. package/dist/_esm/router/get-currency-combinations.js +73 -0
  1081. package/dist/_esm/router/get-currency-combinations.js.map +1 -0
  1082. package/dist/_esm/router/index.js +13 -0
  1083. package/dist/_esm/router/index.js.map +1 -0
  1084. package/dist/_esm/router/liquidity-providers/ApeSwap.js +27 -0
  1085. package/dist/_esm/router/liquidity-providers/ApeSwap.js.map +1 -0
  1086. package/dist/_esm/router/liquidity-providers/Biswap.js +22 -0
  1087. package/dist/_esm/router/liquidity-providers/Biswap.js.map +1 -0
  1088. package/dist/_esm/router/liquidity-providers/CurvePoolsWhitelist.js +3980 -0
  1089. package/dist/_esm/router/liquidity-providers/CurvePoolsWhitelist.js.map +1 -0
  1090. package/dist/_esm/router/liquidity-providers/CurveProvider.js +473 -0
  1091. package/dist/_esm/router/liquidity-providers/CurveProvider.js.map +1 -0
  1092. package/dist/_esm/router/liquidity-providers/CurveProviderWhitelist.js +200 -0
  1093. package/dist/_esm/router/liquidity-providers/CurveProviderWhitelist.js.map +1 -0
  1094. package/dist/_esm/router/liquidity-providers/Dfyn.js +27 -0
  1095. package/dist/_esm/router/liquidity-providers/Dfyn.js.map +1 -0
  1096. package/dist/_esm/router/liquidity-providers/DovishV3.js +24 -0
  1097. package/dist/_esm/router/liquidity-providers/DovishV3.js.map +1 -0
  1098. package/dist/_esm/router/liquidity-providers/Elk.js +51 -0
  1099. package/dist/_esm/router/liquidity-providers/Elk.js.map +1 -0
  1100. package/dist/_esm/router/liquidity-providers/HoneySwap.js +21 -0
  1101. package/dist/_esm/router/liquidity-providers/HoneySwap.js.map +1 -0
  1102. package/dist/_esm/router/liquidity-providers/JetSwap.js +25 -0
  1103. package/dist/_esm/router/liquidity-providers/JetSwap.js.map +1 -0
  1104. package/dist/_esm/router/liquidity-providers/LaserSwap.js +22 -0
  1105. package/dist/_esm/router/liquidity-providers/LaserSwap.js.map +1 -0
  1106. package/dist/_esm/router/liquidity-providers/LiquidityProvider.js +70 -0
  1107. package/dist/_esm/router/liquidity-providers/LiquidityProvider.js.map +1 -0
  1108. package/dist/_esm/router/liquidity-providers/NativeWrapProvider.js +42 -0
  1109. package/dist/_esm/router/liquidity-providers/NativeWrapProvider.js.map +1 -0
  1110. package/dist/_esm/router/liquidity-providers/NetSwap.js +21 -0
  1111. package/dist/_esm/router/liquidity-providers/NetSwap.js.map +1 -0
  1112. package/dist/_esm/router/liquidity-providers/PancakeSwap.js +24 -0
  1113. package/dist/_esm/router/liquidity-providers/PancakeSwap.js.map +1 -0
  1114. package/dist/_esm/router/liquidity-providers/QuickSwap.js +21 -0
  1115. package/dist/_esm/router/liquidity-providers/QuickSwap.js.map +1 -0
  1116. package/dist/_esm/router/liquidity-providers/SpookySwap.js +21 -0
  1117. package/dist/_esm/router/liquidity-providers/SpookySwap.js.map +1 -0
  1118. package/dist/_esm/router/liquidity-providers/SushiSwapV2.js +17 -0
  1119. package/dist/_esm/router/liquidity-providers/SushiSwapV2.js.map +1 -0
  1120. package/dist/_esm/router/liquidity-providers/SushiSwapV3.js +102 -0
  1121. package/dist/_esm/router/liquidity-providers/SushiSwapV3.js.map +1 -0
  1122. package/dist/_esm/router/liquidity-providers/TraderJoe.js +21 -0
  1123. package/dist/_esm/router/liquidity-providers/TraderJoe.js.map +1 -0
  1124. package/dist/_esm/router/liquidity-providers/UbeSwap.js +21 -0
  1125. package/dist/_esm/router/liquidity-providers/UbeSwap.js.map +1 -0
  1126. package/dist/_esm/router/liquidity-providers/UniswapV2.js +21 -0
  1127. package/dist/_esm/router/liquidity-providers/UniswapV2.js.map +1 -0
  1128. package/dist/_esm/router/liquidity-providers/UniswapV2Base.js +110 -0
  1129. package/dist/_esm/router/liquidity-providers/UniswapV2Base.js.map +1 -0
  1130. package/dist/_esm/router/liquidity-providers/UniswapV3.js +39 -0
  1131. package/dist/_esm/router/liquidity-providers/UniswapV3.js.map +1 -0
  1132. package/dist/_esm/router/liquidity-providers/UniswapV3Base.js +285 -0
  1133. package/dist/_esm/router/liquidity-providers/UniswapV3Base.js.map +1 -0
  1134. package/dist/_esm/router/liquidity-providers/index.js +9 -0
  1135. package/dist/_esm/router/liquidity-providers/index.js.map +1 -0
  1136. package/dist/_esm/router/pool-codes/BentoBridge.js +86 -0
  1137. package/dist/_esm/router/pool-codes/BentoBridge.js.map +1 -0
  1138. package/dist/_esm/router/pool-codes/BentoPool.js +48 -0
  1139. package/dist/_esm/router/pool-codes/BentoPool.js.map +1 -0
  1140. package/dist/_esm/router/pool-codes/Bridge.js +4 -0
  1141. package/dist/_esm/router/pool-codes/Bridge.js.map +1 -0
  1142. package/dist/_esm/router/pool-codes/ConstantProductPool.js +41 -0
  1143. package/dist/_esm/router/pool-codes/ConstantProductPool.js.map +1 -0
  1144. package/dist/_esm/router/pool-codes/CurvePool.js +41 -0
  1145. package/dist/_esm/router/pool-codes/CurvePool.js.map +1 -0
  1146. package/dist/_esm/router/pool-codes/NativeWrapBridge.js +52 -0
  1147. package/dist/_esm/router/pool-codes/NativeWrapBridge.js.map +1 -0
  1148. package/dist/_esm/router/pool-codes/PoolCode.js +36 -0
  1149. package/dist/_esm/router/pool-codes/PoolCode.js.map +1 -0
  1150. package/dist/_esm/router/pool-codes/TridentCLPool.js +25 -0
  1151. package/dist/_esm/router/pool-codes/TridentCLPool.js.map +1 -0
  1152. package/dist/_esm/router/pool-codes/UniV3Pool.js +25 -0
  1153. package/dist/_esm/router/pool-codes/UniV3Pool.js.map +1 -0
  1154. package/dist/_esm/router/pool-codes/UniV4Pool.js +37 -0
  1155. package/dist/_esm/router/pool-codes/UniV4Pool.js.map +1 -0
  1156. package/dist/_esm/router/pool-codes/index.js +10 -0
  1157. package/dist/_esm/router/pool-codes/index.js.map +1 -0
  1158. package/dist/_esm/router/router.js +334 -0
  1159. package/dist/_esm/router/router.js.map +1 -0
  1160. package/dist/_esm/router/routingBases.js +50 -0
  1161. package/dist/_esm/router/routingBases.js.map +1 -0
  1162. package/dist/_esm/router/tines-to-route-processor-2.js +189 -0
  1163. package/dist/_esm/router/tines-to-route-processor-2.js.map +1 -0
  1164. package/dist/_esm/router/tines-to-route-processor-4.js +75 -0
  1165. package/dist/_esm/router/tines-to-route-processor-4.js.map +1 -0
  1166. package/dist/_esm/router/tines-to-route-processor-6.js +14 -0
  1167. package/dist/_esm/router/tines-to-route-processor-6.js.map +1 -0
  1168. package/dist/_esm/router/tines-to-route-processor.js +200 -0
  1169. package/dist/_esm/router/tines-to-route-processor.js.map +1 -0
  1170. package/dist/_esm/serializer/AddressValidation.js +5 -0
  1171. package/dist/_esm/serializer/AddressValidation.js.map +1 -0
  1172. package/dist/_esm/serializer/BinarySerialization.js +270 -0
  1173. package/dist/_esm/serializer/BinarySerialization.js.map +1 -0
  1174. package/dist/_esm/serializer/index.js +2 -0
  1175. package/dist/_esm/serializer/index.js.map +1 -0
  1176. package/dist/_esm/sort/index.js +2 -0
  1177. package/dist/_esm/sort/index.js.map +1 -0
  1178. package/dist/_esm/sort/sortedInsert.js +34 -0
  1179. package/dist/_esm/sort/sortedInsert.js.map +1 -0
  1180. package/dist/_esm/tines/BridgeBento.js +116 -0
  1181. package/dist/_esm/tines/BridgeBento.js.map +1 -0
  1182. package/dist/_esm/tines/BridgeBidirectionalUnlimited.js +22 -0
  1183. package/dist/_esm/tines/BridgeBidirectionalUnlimited.js.map +1 -0
  1184. package/dist/_esm/tines/BridgeStargateV04OneWay.js +43 -0
  1185. package/dist/_esm/tines/BridgeStargateV04OneWay.js.map +1 -0
  1186. package/dist/_esm/tines/CLPool.js +265 -0
  1187. package/dist/_esm/tines/CLPool.js.map +1 -0
  1188. package/dist/_esm/tines/CurveMultitokenPool.js +257 -0
  1189. package/dist/_esm/tines/CurveMultitokenPool.js.map +1 -0
  1190. package/dist/_esm/tines/CurveMultitokenPoolSingle.js +194 -0
  1191. package/dist/_esm/tines/CurveMultitokenPoolSingle.js.map +1 -0
  1192. package/dist/_esm/tines/CurvePool.js +120 -0
  1193. package/dist/_esm/tines/CurvePool.js.map +1 -0
  1194. package/dist/_esm/tines/Graph.js +1324 -0
  1195. package/dist/_esm/tines/Graph.js.map +1 -0
  1196. package/dist/_esm/tines/MultiRouter.js +191 -0
  1197. package/dist/_esm/tines/MultiRouter.js.map +1 -0
  1198. package/dist/_esm/tines/PrimaryPools.js +166 -0
  1199. package/dist/_esm/tines/PrimaryPools.js.map +1 -0
  1200. package/dist/_esm/tines/RPool.js +80 -0
  1201. package/dist/_esm/tines/RPool.js.map +1 -0
  1202. package/dist/_esm/tines/StableSwapPool.js +221 -0
  1203. package/dist/_esm/tines/StableSwapPool.js.map +1 -0
  1204. package/dist/_esm/tines/StarGateFeesV04.js +135 -0
  1205. package/dist/_esm/tines/StarGateFeesV04.js.map +1 -0
  1206. package/dist/_esm/tines/UniV3Pool.js +325 -0
  1207. package/dist/_esm/tines/UniV3Pool.js.map +1 -0
  1208. package/dist/_esm/tines/UniV4Pool.js +40 -0
  1209. package/dist/_esm/tines/UniV4Pool.js.map +1 -0
  1210. package/dist/_esm/tines/Utils.js +108 -0
  1211. package/dist/_esm/tines/Utils.js.map +1 -0
  1212. package/dist/_esm/tines/constants/hybrid.js +2 -0
  1213. package/dist/_esm/tines/constants/hybrid.js.map +1 -0
  1214. package/dist/_esm/tines/constants/index.js +2 -0
  1215. package/dist/_esm/tines/constants/index.js.map +1 -0
  1216. package/dist/_esm/tines/functions/computeHybridLiquidity.js +22 -0
  1217. package/dist/_esm/tines/functions/computeHybridLiquidity.js.map +1 -0
  1218. package/dist/_esm/tines/functions/convertTokenToBento.js +11 -0
  1219. package/dist/_esm/tines/functions/convertTokenToBento.js.map +1 -0
  1220. package/dist/_esm/tines/functions/getBentoChainId.js +4 -0
  1221. package/dist/_esm/tines/functions/getBentoChainId.js.map +1 -0
  1222. package/dist/_esm/tines/functions/index.js +4 -0
  1223. package/dist/_esm/tines/functions/index.js.map +1 -0
  1224. package/dist/_esm/tines/index.js +18 -0
  1225. package/dist/_esm/tines/index.js.map +1 -0
  1226. package/dist/_esm/token-list/constants.js +66 -0
  1227. package/dist/_esm/token-list/constants.js.map +1 -0
  1228. package/dist/_esm/token-list/index.js +4 -0
  1229. package/dist/_esm/token-list/index.js.map +1 -0
  1230. package/dist/_esm/token-list/wrapped-token-info.js +85 -0
  1231. package/dist/_esm/token-list/wrapped-token-info.js.map +1 -0
  1232. package/dist/_esm/types/address.js +2 -0
  1233. package/dist/_esm/types/address.js.map +1 -0
  1234. package/dist/_esm/types/api.js +2 -0
  1235. package/dist/_esm/types/api.js.map +1 -0
  1236. package/dist/_esm/types/contract.js +2 -0
  1237. package/dist/_esm/types/contract.js.map +1 -0
  1238. package/dist/_esm/types/id.js +2 -0
  1239. package/dist/_esm/types/id.js.map +1 -0
  1240. package/dist/_esm/types/index.js +3 -0
  1241. package/dist/_esm/types/index.js.map +1 -0
  1242. package/dist/_esm/types/mutable.js +2 -0
  1243. package/dist/_esm/types/mutable.js.map +1 -0
  1244. package/dist/_esm/types/sushi-pool/index.js +13 -0
  1245. package/dist/_esm/types/sushi-pool/index.js.map +1 -0
  1246. package/dist/_esm/types/sushi-pool/maybe-nested-pool.js +4 -0
  1247. package/dist/_esm/types/sushi-pool/maybe-nested-pool.js.map +1 -0
  1248. package/dist/_esm/types/sushi-pool/pool-base.js +2 -0
  1249. package/dist/_esm/types/sushi-pool/pool-base.js.map +1 -0
  1250. package/dist/_esm/types/sushi-pool/pool-history.js +2 -0
  1251. package/dist/_esm/types/sushi-pool/pool-history.js.map +1 -0
  1252. package/dist/_esm/types/sushi-pool/pool-id.js +2 -0
  1253. package/dist/_esm/types/sushi-pool/pool-id.js.map +1 -0
  1254. package/dist/_esm/types/sushi-pool/pool-if-incentivized.js +2 -0
  1255. package/dist/_esm/types/sushi-pool/pool-if-incentivized.js.map +1 -0
  1256. package/dist/_esm/types/sushi-pool/pool-swap-fee.js +2 -0
  1257. package/dist/_esm/types/sushi-pool/pool-swap-fee.js.map +1 -0
  1258. package/dist/_esm/types/sushi-pool/pool-v2.js +5 -0
  1259. package/dist/_esm/types/sushi-pool/pool-v2.js.map +1 -0
  1260. package/dist/_esm/types/sushi-pool/pool-v3.js +5 -0
  1261. package/dist/_esm/types/sushi-pool/pool-v3.js.map +1 -0
  1262. package/dist/_esm/types/sushi-pool/pool-with-aprs.js +2 -0
  1263. package/dist/_esm/types/sushi-pool/pool-with-aprs.js.map +1 -0
  1264. package/dist/_esm/types/sushi-pool/pool-with-buckets.js +2 -0
  1265. package/dist/_esm/types/sushi-pool/pool-with-buckets.js.map +1 -0
  1266. package/dist/_esm/types/sushi-pool/pool-with-incentives.js +13 -0
  1267. package/dist/_esm/types/sushi-pool/pool-with-incentives.js.map +1 -0
  1268. package/dist/_esm/types/sushi-pool/protocol.js +5 -0
  1269. package/dist/_esm/types/sushi-pool/protocol.js.map +1 -0
  1270. package/dist/_esm/types/sushi-position/index.js +4 -0
  1271. package/dist/_esm/types/sushi-position/index.js.map +1 -0
  1272. package/dist/_esm/types/sushi-position/sushi-position-base.js +2 -0
  1273. package/dist/_esm/types/sushi-position/sushi-position-base.js.map +1 -0
  1274. package/dist/_esm/types/sushi-position/sushi-position-staked.js +2 -0
  1275. package/dist/_esm/types/sushi-position/sushi-position-staked.js.map +1 -0
  1276. package/dist/_esm/types/sushi-position/sushi-position-with-pool.js +2 -0
  1277. package/dist/_esm/types/sushi-position/sushi-position-with-pool.js.map +1 -0
  1278. package/dist/_esm/types/token.js +2 -0
  1279. package/dist/_esm/types/token.js.map +1 -0
  1280. package/dist/_esm/validate/index.js +4 -0
  1281. package/dist/_esm/validate/index.js.map +1 -0
  1282. package/dist/_esm/validate/isPromiseFulfilled.js +2 -0
  1283. package/dist/_esm/validate/isPromiseFulfilled.js.map +1 -0
  1284. package/dist/_esm/validate/isPromiseRejected.js +2 -0
  1285. package/dist/_esm/validate/isPromiseRejected.js.map +1 -0
  1286. package/dist/_esm/validate/isZero.js +8 -0
  1287. package/dist/_esm/validate/isZero.js.map +1 -0
  1288. package/dist/_types/abi/StargateFeeLibraryV03.d.ts.map +1 -0
  1289. package/dist/_types/abi/StargatePool.d.ts.map +1 -0
  1290. package/dist/_types/abi/balanceOfAbi.d.ts.map +1 -0
  1291. package/dist/_types/abi/bentoBoxV1Abi.d.ts.map +1 -0
  1292. package/dist/_types/abi/bentoBoxV1TotalsAbi.d.ts.map +1 -0
  1293. package/dist/_types/abi/cloneRewarderTime.d.ts.map +1 -0
  1294. package/dist/_types/abi/complexRewarderTimeAbi.d.ts.map +1 -0
  1295. package/dist/_types/abi/eip2612Abi.d.ts +16 -0
  1296. package/dist/_types/abi/eip2612Abi.d.ts.map +1 -0
  1297. package/dist/_types/abi/erc20Abi.d.ts +333 -0
  1298. package/dist/_types/abi/erc20Abi.d.ts.map +1 -0
  1299. package/dist/_types/abi/furoStreamAbi.d.ts.map +1 -0
  1300. package/dist/_types/abi/furoStreamRouterAbi.d.ts.map +1 -0
  1301. package/dist/_types/abi/furoVestingAbi.d.ts.map +1 -0
  1302. package/dist/_types/abi/furoVestingRouterAbi.d.ts.map +1 -0
  1303. package/dist/_types/abi/gasDataArbitrumAbi.d.ts.map +1 -0
  1304. package/dist/_types/abi/gasPriceOracleAbi.d.ts.map +1 -0
  1305. package/dist/_types/abi/getPoolsAbi.d.ts.map +1 -0
  1306. package/dist/_types/abi/getReservesAbi.d.ts.map +1 -0
  1307. package/dist/_types/abi/index.d.ts +59 -0
  1308. package/dist/_types/abi/index.d.ts.map +1 -0
  1309. package/dist/_types/abi/masterChefV1Abi.d.ts.map +1 -0
  1310. package/dist/_types/abi/masterChefV2Abi.d.ts.map +1 -0
  1311. package/dist/_types/abi/miniChefAbi.d.ts.map +1 -0
  1312. package/dist/_types/abi/miniChefV2Abi.d.ts +638 -0
  1313. package/dist/_types/abi/miniChefV2Abi.d.ts.map +1 -0
  1314. package/dist/_types/abi/multicall2Abi.d.ts.map +1 -0
  1315. package/dist/_types/abi/multicall3Abi.d.ts.map +1 -0
  1316. package/dist/_types/abi/multicallAbi.d.ts +16 -0
  1317. package/dist/_types/abi/multicallAbi.d.ts.map +1 -0
  1318. package/dist/_types/abi/nonfungiblePositionManagerAbi.d.ts.map +1 -0
  1319. package/dist/_types/abi/peripheryPaymentsWithFeeAbi.d.ts +88 -0
  1320. package/dist/_types/abi/peripheryPaymentsWithFeeAbi.d.ts.map +1 -0
  1321. package/dist/_types/abi/permit2Abi.d.ts.map +1 -0
  1322. package/dist/_types/abi/poolsCountAbi.d.ts.map +1 -0
  1323. package/dist/_types/abi/routeProcessor2Abi.d.ts.map +1 -0
  1324. package/dist/_types/abi/routeProcessor3Abi.d.ts.map +1 -0
  1325. package/dist/_types/abi/routeProcessor3_1Abi.d.ts.map +1 -0
  1326. package/dist/_types/abi/routeProcessor4Abi.d.ts +286 -0
  1327. package/dist/_types/abi/routeProcessor4Abi.d.ts.map +1 -0
  1328. package/dist/_types/abi/routeProcessor5Abi.d.ts +58 -0
  1329. package/dist/_types/abi/routeProcessor5Abi.d.ts.map +1 -0
  1330. package/dist/_types/abi/routeProcessorAbi.d.ts.map +1 -0
  1331. package/dist/_types/abi/selfPermitAbi.d.ts +122 -0
  1332. package/dist/_types/abi/selfPermitAbi.d.ts.map +1 -0
  1333. package/dist/_types/abi/slot0Abi.d.ts.map +1 -0
  1334. package/dist/_types/abi/squidAdapterAbi.d.ts +32 -0
  1335. package/dist/_types/abi/squidAdapterAbi.d.ts.map +1 -0
  1336. package/dist/_types/abi/squidRouterAbi.d.ts +68 -0
  1337. package/dist/_types/abi/squidRouterAbi.d.ts.map +1 -0
  1338. package/dist/_types/abi/stargateAdapterAbi.d.ts +231 -0
  1339. package/dist/_types/abi/stargateAdapterAbi.d.ts.map +1 -0
  1340. package/dist/_types/abi/sushiV3FactoryAbi.d.ts.map +1 -0
  1341. package/dist/_types/abi/sushiV3PoolAbi.d.ts.map +1 -0
  1342. package/dist/_types/abi/sushiXSwap2Abi.d.ts +68 -0
  1343. package/dist/_types/abi/sushiXSwap2Abi.d.ts.map +1 -0
  1344. package/dist/_types/abi/sushiXSwapAbi.d.ts.map +1 -0
  1345. package/dist/_types/abi/sushiswapV2Factory.d.ts +165 -0
  1346. package/dist/_types/abi/sushiswapV2Factory.d.ts.map +1 -0
  1347. package/dist/_types/abi/swapFeeAbi.d.ts.map +1 -0
  1348. package/dist/_types/abi/tickLensAbi.d.ts.map +1 -0
  1349. package/dist/_types/abi/totalsAbi.d.ts.map +1 -0
  1350. package/dist/_types/abi/tridentConstantPoolAbi.d.ts.map +1 -0
  1351. package/dist/_types/abi/tridentConstantPoolFactoryAbi.d.ts.map +1 -0
  1352. package/dist/_types/abi/tridentGetPoolsAbi.d.ts.map +1 -0
  1353. package/dist/_types/abi/tridentPoolsCountAbi.d.ts.map +1 -0
  1354. package/dist/_types/abi/tridentRouterAbi.d.ts.map +1 -0
  1355. package/dist/_types/abi/tridentStablePoolAbi.d.ts.map +1 -0
  1356. package/dist/_types/abi/tridentStablePoolFactoryAbi.d.ts.map +1 -0
  1357. package/dist/_types/abi/tridentSwapFeeAbi.d.ts.map +1 -0
  1358. package/dist/_types/abi/uniswapV2PairAbi.d.ts.map +1 -0
  1359. package/dist/_types/abi/uniswapV2RouterAbi.d.ts.map +1 -0
  1360. package/dist/_types/abi/uniswapV3FactoryAbi.d.ts +184 -0
  1361. package/dist/_types/abi/uniswapV3FactoryAbi.d.ts.map +1 -0
  1362. package/dist/_types/abi/uniswapV3PoolAbi.d.ts +775 -0
  1363. package/dist/_types/abi/uniswapV3PoolAbi.d.ts.map +1 -0
  1364. package/dist/_types/abi/v3baseAbi.d.ts.map +1 -0
  1365. package/dist/_types/abi/weth9Abi.d.ts.map +1 -0
  1366. package/dist/_types/abi/xsushiAbi.d.ts +40 -0
  1367. package/dist/_types/abi/xsushiAbi.d.ts.map +1 -0
  1368. package/dist/_types/api/get-user.d.ts +2 -0
  1369. package/dist/_types/api/get-user.d.ts.map +1 -0
  1370. package/dist/_types/api/shema.d.ts +2 -0
  1371. package/dist/_types/api/shema.d.ts.map +1 -0
  1372. package/dist/_types/bigint-serializer/index.d.ts +4 -0
  1373. package/dist/_types/bigint-serializer/index.d.ts.map +1 -0
  1374. package/dist/_types/calculate/fee.d.ts +4 -0
  1375. package/dist/_types/calculate/fee.d.ts.map +1 -0
  1376. package/dist/_types/calculate/gasMargin.d.ts.map +1 -0
  1377. package/dist/_types/calculate/index.d.ts +4 -0
  1378. package/dist/_types/calculate/index.d.ts.map +1 -0
  1379. package/dist/_types/calculate/slippageAmount.d.ts +4 -0
  1380. package/dist/_types/calculate/slippageAmount.d.ts.map +1 -0
  1381. package/dist/_types/chain/constants.d.ts +148 -0
  1382. package/dist/_types/chain/constants.d.ts.map +1 -0
  1383. package/dist/_types/chain/generated.d.ts +855 -0
  1384. package/dist/_types/chain/generated.d.ts.map +1 -0
  1385. package/dist/_types/chain/index.d.ts +936 -0
  1386. package/dist/_types/chain/index.d.ts.map +1 -0
  1387. package/dist/_types/config/api.d.ts +2 -0
  1388. package/dist/_types/config/api.d.ts.map +1 -0
  1389. package/dist/_types/config/default-slippage.d.ts +2 -0
  1390. package/dist/_types/config/default-slippage.d.ts.map +1 -0
  1391. package/dist/_types/config/features/bentobox.d.ts +6 -0
  1392. package/dist/_types/config/features/bentobox.d.ts.map +1 -0
  1393. package/dist/_types/config/features/extractor.d.ts +4 -0
  1394. package/dist/_types/config/features/extractor.d.ts.map +1 -0
  1395. package/dist/_types/config/features/furo.d.ts +5 -0
  1396. package/dist/_types/config/features/furo.d.ts.map +1 -0
  1397. package/dist/_types/config/features/index.d.ts +19 -0
  1398. package/dist/_types/config/features/index.d.ts.map +1 -0
  1399. package/dist/_types/config/features/master-chef.d.ts +7 -0
  1400. package/dist/_types/config/features/master-chef.d.ts.map +1 -0
  1401. package/dist/_types/config/features/merkl.d.ts +6 -0
  1402. package/dist/_types/config/features/merkl.d.ts.map +1 -0
  1403. package/dist/_types/config/features/mini-chef.d.ts +24 -0
  1404. package/dist/_types/config/features/mini-chef.d.ts.map +1 -0
  1405. package/dist/_types/config/features/pancakeswap-v2.d.ts +9 -0
  1406. package/dist/_types/config/features/pancakeswap-v2.d.ts.map +1 -0
  1407. package/dist/_types/config/features/pancakeswap-v3.d.ts +23 -0
  1408. package/dist/_types/config/features/pancakeswap-v3.d.ts.map +1 -0
  1409. package/dist/_types/config/features/route-processor.d.ts +31 -0
  1410. package/dist/_types/config/features/route-processor.d.ts.map +1 -0
  1411. package/dist/_types/config/features/squid.d.ts +52 -0
  1412. package/dist/_types/config/features/squid.d.ts.map +1 -0
  1413. package/dist/_types/config/features/stargate.d.ts +121 -0
  1414. package/dist/_types/config/features/stargate.d.ts.map +1 -0
  1415. package/dist/_types/config/features/sushiswap-v2.d.ts +9 -0
  1416. package/dist/_types/config/features/sushiswap-v2.d.ts.map +1 -0
  1417. package/dist/_types/config/features/sushiswap-v3.d.ts +29 -0
  1418. package/dist/_types/config/features/sushiswap-v3.d.ts.map +1 -0
  1419. package/dist/_types/config/features/sushiswap.d.ts +6 -0
  1420. package/dist/_types/config/features/sushiswap.d.ts.map +1 -0
  1421. package/dist/_types/config/features/sushixswap.d.ts +18 -0
  1422. package/dist/_types/config/features/sushixswap.d.ts.map +1 -0
  1423. package/dist/_types/config/features/trident.d.ts +45 -0
  1424. package/dist/_types/config/features/trident.d.ts.map +1 -0
  1425. package/dist/_types/config/features/uniswap-v2.d.ts +6 -0
  1426. package/dist/_types/config/features/uniswap-v2.d.ts.map +1 -0
  1427. package/dist/_types/config/features/uniswap-v3.d.ts +27 -0
  1428. package/dist/_types/config/features/uniswap-v3.d.ts.map +1 -0
  1429. package/dist/_types/config/governance.d.ts +4 -0
  1430. package/dist/_types/config/governance.d.ts.map +1 -0
  1431. package/dist/_types/config/index.d.ts +18 -0
  1432. package/dist/_types/config/index.d.ts.map +1 -0
  1433. package/dist/_types/config/native-address.d.ts +2 -0
  1434. package/dist/_types/config/native-address.d.ts.map +1 -0
  1435. package/dist/_types/config/native-ids.d.ts +47 -0
  1436. package/dist/_types/config/native-ids.d.ts.map +1 -0
  1437. package/dist/_types/config/subgraph/hosts.d.ts +23 -0
  1438. package/dist/_types/config/subgraph/hosts.d.ts.map +1 -0
  1439. package/dist/_types/config/subgraph/index.d.ts +5 -0
  1440. package/dist/_types/config/subgraph/index.d.ts.map +1 -0
  1441. package/dist/_types/config/subgraph/max-first.d.ts +3 -0
  1442. package/dist/_types/config/subgraph/max-first.d.ts.map +1 -0
  1443. package/dist/_types/config/subgraph/seconds-between-blocks.d.ts +3 -0
  1444. package/dist/_types/config/subgraph/seconds-between-blocks.d.ts.map +1 -0
  1445. package/dist/_types/config/subgraph/subgraphs/bentobox.d.ts +3 -0
  1446. package/dist/_types/config/subgraph/subgraphs/bentobox.d.ts.map +1 -0
  1447. package/dist/_types/config/subgraph/subgraphs/blocks.d.ts +3 -0
  1448. package/dist/_types/config/subgraph/subgraphs/blocks.d.ts.map +1 -0
  1449. package/dist/_types/config/subgraph/subgraphs/data-api.d.ts +2 -0
  1450. package/dist/_types/config/subgraph/subgraphs/data-api.d.ts.map +1 -0
  1451. package/dist/_types/config/subgraph/subgraphs/furo.d.ts +3 -0
  1452. package/dist/_types/config/subgraph/subgraphs/furo.d.ts.map +1 -0
  1453. package/dist/_types/config/subgraph/subgraphs/index.d.ts +11 -0
  1454. package/dist/_types/config/subgraph/subgraphs/index.d.ts.map +1 -0
  1455. package/dist/_types/config/subgraph/subgraphs/master-chef-v1.d.ts +2 -0
  1456. package/dist/_types/config/subgraph/subgraphs/master-chef-v1.d.ts.map +1 -0
  1457. package/dist/_types/config/subgraph/subgraphs/master-chef-v2.d.ts +2 -0
  1458. package/dist/_types/config/subgraph/subgraphs/master-chef-v2.d.ts.map +1 -0
  1459. package/dist/_types/config/subgraph/subgraphs/mini-chef.d.ts +3 -0
  1460. package/dist/_types/config/subgraph/subgraphs/mini-chef.d.ts.map +1 -0
  1461. package/dist/_types/config/subgraph/subgraphs/sushi-bar.d.ts +2 -0
  1462. package/dist/_types/config/subgraph/subgraphs/sushi-bar.d.ts.map +1 -0
  1463. package/dist/_types/config/subgraph/subgraphs/sushiswap-v2.d.ts +3 -0
  1464. package/dist/_types/config/subgraph/subgraphs/sushiswap-v2.d.ts.map +1 -0
  1465. package/dist/_types/config/subgraph/subgraphs/sushiswap-v3.d.ts +3 -0
  1466. package/dist/_types/config/subgraph/subgraphs/sushiswap-v3.d.ts.map +1 -0
  1467. package/dist/_types/config/token-chomper.d.ts +6 -0
  1468. package/dist/_types/config/token-chomper.d.ts.map +1 -0
  1469. package/dist/_types/config/token-maps/additional-bases.d.ts +7 -0
  1470. package/dist/_types/config/token-maps/additional-bases.d.ts.map +1 -0
  1471. package/dist/_types/config/token-maps/bases-to-check-trades-against.d.ts +5 -0
  1472. package/dist/_types/config/token-maps/bases-to-check-trades-against.d.ts.map +1 -0
  1473. package/dist/_types/config/token-maps/custom-bases.d.ts +11 -0
  1474. package/dist/_types/config/token-maps/custom-bases.d.ts.map +1 -0
  1475. package/dist/_types/config/token-maps/default-bases.d.ts +49 -0
  1476. package/dist/_types/config/token-maps/default-bases.d.ts.map +1 -0
  1477. package/dist/_types/config/token-maps/default-quote.d.ts +45 -0
  1478. package/dist/_types/config/token-maps/default-quote.d.ts.map +1 -0
  1479. package/dist/_types/config/token-maps/index.d.ts +9 -0
  1480. package/dist/_types/config/token-maps/index.d.ts.map +1 -0
  1481. package/dist/_types/config/token-maps/lsds.d.ts +49 -0
  1482. package/dist/_types/config/token-maps/lsds.d.ts.map +1 -0
  1483. package/dist/_types/config/token-maps/short-name-to-currency.d.ts +243 -0
  1484. package/dist/_types/config/token-maps/short-name-to-currency.d.ts.map +1 -0
  1485. package/dist/_types/config/token-maps/stables.d.ts +49 -0
  1486. package/dist/_types/config/token-maps/stables.d.ts.map +1 -0
  1487. package/dist/_types/config/token-security.d.ts +7 -0
  1488. package/dist/_types/config/token-security.d.ts.map +1 -0
  1489. package/dist/_types/config/viem.d.ts +4445 -0
  1490. package/dist/_types/config/viem.d.ts.map +1 -0
  1491. package/dist/_types/config/wallet.d.ts +6 -0
  1492. package/dist/_types/config/wallet.d.ts.map +1 -0
  1493. package/dist/_types/config/wnative.d.ts +3 -0
  1494. package/dist/_types/config/wnative.d.ts.map +1 -0
  1495. package/dist/_types/contract/erc20.d.ts +188 -0
  1496. package/dist/_types/contract/erc20.d.ts.map +1 -0
  1497. package/dist/_types/contract/index.d.ts +2 -0
  1498. package/dist/_types/contract/index.d.ts.map +1 -0
  1499. package/dist/_types/convert/index.d.ts +2 -0
  1500. package/dist/_types/convert/index.d.ts.map +1 -0
  1501. package/dist/_types/convert/to-hex.d.ts +8 -0
  1502. package/dist/_types/convert/to-hex.d.ts.map +1 -0
  1503. package/dist/_types/currency/amount.d.ts +43 -0
  1504. package/dist/_types/currency/amount.d.ts.map +1 -0
  1505. package/dist/_types/currency/currency.d.ts +68 -0
  1506. package/dist/_types/currency/currency.d.ts.map +1 -0
  1507. package/dist/_types/currency/index.d.ts +12 -0
  1508. package/dist/_types/currency/index.d.ts.map +1 -0
  1509. package/dist/_types/currency/native.d.ts +25 -0
  1510. package/dist/_types/currency/native.d.ts.map +1 -0
  1511. package/dist/_types/currency/price.d.ts +40 -0
  1512. package/dist/_types/currency/price.d.ts.map +1 -0
  1513. package/dist/_types/currency/share.d.ts +28 -0
  1514. package/dist/_types/currency/share.d.ts.map +1 -0
  1515. package/dist/_types/currency/token-addresses.d.ts +552 -0
  1516. package/dist/_types/currency/token-addresses.d.ts.map +1 -0
  1517. package/dist/_types/currency/token.d.ts +56 -0
  1518. package/dist/_types/currency/token.d.ts.map +1 -0
  1519. package/dist/_types/currency/tokens.d.ts +199 -0
  1520. package/dist/_types/currency/tokens.d.ts.map +1 -0
  1521. package/dist/_types/currency/try-parse-amount.d.ts +4 -0
  1522. package/dist/_types/currency/try-parse-amount.d.ts.map +1 -0
  1523. package/dist/_types/currency/type.d.ts +4 -0
  1524. package/dist/_types/currency/type.d.ts.map +1 -0
  1525. package/dist/_types/currency/unwrap.d.ts +3 -0
  1526. package/dist/_types/currency/unwrap.d.ts.map +1 -0
  1527. package/dist/_types/currency/zod.d.ts +121 -0
  1528. package/dist/_types/currency/zod.d.ts.map +1 -0
  1529. package/dist/_types/data/index.d.ts +2 -0
  1530. package/dist/_types/data/index.d.ts.map +1 -0
  1531. package/dist/_types/data/lowercase-map.d.ts +7 -0
  1532. package/dist/_types/data/lowercase-map.d.ts.map +1 -0
  1533. package/dist/_types/dex/errors.d.ts +17 -0
  1534. package/dist/_types/dex/errors.d.ts.map +1 -0
  1535. package/dist/_types/dex/fee.d.ts +13 -0
  1536. package/dist/_types/dex/fee.d.ts.map +1 -0
  1537. package/dist/_types/dex/index.d.ts +6 -0
  1538. package/dist/_types/dex/index.d.ts.map +1 -0
  1539. package/dist/_types/dex/pool.d.ts +15 -0
  1540. package/dist/_types/dex/pool.d.ts.map +1 -0
  1541. package/dist/_types/dex/trade-type.d.ts +5 -0
  1542. package/dist/_types/dex/trade-type.d.ts.map +1 -0
  1543. package/dist/_types/dex/version.d.ts +5 -0
  1544. package/dist/_types/dex/version.d.ts.map +1 -0
  1545. package/dist/_types/format/address.d.ts.map +1 -0
  1546. package/dist/_types/format/hash.d.ts +2 -0
  1547. package/dist/_types/format/hash.d.ts.map +1 -0
  1548. package/dist/_types/format/id.d.ts +8 -0
  1549. package/dist/_types/format/id.d.ts.map +1 -0
  1550. package/dist/_types/format/index.d.ts +8 -0
  1551. package/dist/_types/format/index.d.ts.map +1 -0
  1552. package/dist/_types/format/number.d.ts +8 -0
  1553. package/dist/_types/format/number.d.ts.map +1 -0
  1554. package/dist/_types/format/percent.d.ts.map +1 -0
  1555. package/dist/_types/format/price.d.ts.map +1 -0
  1556. package/dist/_types/format/unsanitize.d.ts +2 -0
  1557. package/dist/_types/format/unsanitize.d.ts.map +1 -0
  1558. package/dist/_types/index.d.ts +15 -0
  1559. package/dist/_types/index.d.ts.map +1 -0
  1560. package/dist/_types/log/index.d.ts +2 -0
  1561. package/dist/_types/log/index.d.ts.map +1 -0
  1562. package/dist/_types/log/log.d.ts.map +1 -0
  1563. package/dist/_types/math/Big.d.ts.map +1 -0
  1564. package/dist/_types/math/BigintIsh.d.ts.map +1 -0
  1565. package/dist/_types/math/Decimal.d.ts.map +1 -0
  1566. package/dist/_types/math/Fraction.d.ts.map +1 -0
  1567. package/dist/_types/math/Percent.d.ts.map +1 -0
  1568. package/dist/_types/math/Rounding.d.ts.map +1 -0
  1569. package/dist/_types/math/constants/index.d.ts.map +1 -0
  1570. package/dist/_types/math/constants/numbers.d.ts.map +1 -0
  1571. package/dist/_types/math/functions/abs.d.ts.map +1 -0
  1572. package/dist/_types/math/functions/difference.d.ts.map +1 -0
  1573. package/dist/_types/math/functions/index.d.ts.map +1 -0
  1574. package/dist/_types/math/functions/maximum.d.ts.map +1 -0
  1575. package/dist/_types/math/functions/minimum.d.ts.map +1 -0
  1576. package/dist/_types/math/functions/sqrt.d.ts.map +1 -0
  1577. package/dist/_types/math/index.d.ts.map +1 -0
  1578. package/dist/_types/pool/index.d.ts +5 -0
  1579. package/dist/_types/pool/index.d.ts.map +1 -0
  1580. package/dist/_types/pool/sushiswap-v2/compute-sushiswap-v2-pool-address.d.ts +17 -0
  1581. package/dist/_types/pool/sushiswap-v2/compute-sushiswap-v2-pool-address.d.ts.map +1 -0
  1582. package/dist/_types/pool/sushiswap-v2/index.d.ts +4 -0
  1583. package/dist/_types/pool/sushiswap-v2/index.d.ts.map +1 -0
  1584. package/dist/_types/pool/sushiswap-v2/sushiswap-v2-pool.d.ts +45 -0
  1585. package/dist/_types/pool/sushiswap-v2/sushiswap-v2-pool.d.ts.map +1 -0
  1586. package/dist/_types/pool/sushiswap-v2/zod.d.ts +225 -0
  1587. package/dist/_types/pool/sushiswap-v2/zod.d.ts.map +1 -0
  1588. package/dist/_types/pool/sushiswap-v3/entities/Multicall.d.ts +10 -0
  1589. package/dist/_types/pool/sushiswap-v3/entities/Multicall.d.ts.map +1 -0
  1590. package/dist/_types/pool/sushiswap-v3/entities/NonfungiblePositionManager.d.ts +148 -0
  1591. package/dist/_types/pool/sushiswap-v3/entities/NonfungiblePositionManager.d.ts.map +1 -0
  1592. package/dist/_types/pool/sushiswap-v3/entities/Payments.d.ts +25 -0
  1593. package/dist/_types/pool/sushiswap-v3/entities/Payments.d.ts.map +1 -0
  1594. package/dist/_types/pool/sushiswap-v3/entities/Position.d.ts +132 -0
  1595. package/dist/_types/pool/sushiswap-v3/entities/Position.d.ts.map +1 -0
  1596. package/dist/_types/pool/sushiswap-v3/entities/SelfPermit.d.ts +27 -0
  1597. package/dist/_types/pool/sushiswap-v3/entities/SelfPermit.d.ts.map +1 -0
  1598. package/dist/_types/pool/sushiswap-v3/entities/SushiSwapV3Pool.d.ts +83 -0
  1599. package/dist/_types/pool/sushiswap-v3/entities/SushiSwapV3Pool.d.ts.map +1 -0
  1600. package/dist/_types/pool/sushiswap-v3/entities/Tick.d.ts +13 -0
  1601. package/dist/_types/pool/sushiswap-v3/entities/Tick.d.ts.map +1 -0
  1602. package/dist/_types/pool/sushiswap-v3/entities/TickDataProvider.d.ts +32 -0
  1603. package/dist/_types/pool/sushiswap-v3/entities/TickDataProvider.d.ts.map +1 -0
  1604. package/dist/_types/pool/sushiswap-v3/entities/TickListDataProvider.d.ts +16 -0
  1605. package/dist/_types/pool/sushiswap-v3/entities/TickListDataProvider.d.ts.map +1 -0
  1606. package/dist/_types/pool/sushiswap-v3/entities/index.d.ts +9 -0
  1607. package/dist/_types/pool/sushiswap-v3/entities/index.d.ts.map +1 -0
  1608. package/dist/_types/pool/sushiswap-v3/index.d.ts +3 -0
  1609. package/dist/_types/pool/sushiswap-v3/index.d.ts.map +1 -0
  1610. package/dist/_types/pool/sushiswap-v3/internalConstants.d.ts +3 -0
  1611. package/dist/_types/pool/sushiswap-v3/internalConstants.d.ts.map +1 -0
  1612. package/dist/_types/pool/sushiswap-v3/utils/calldata.d.ts +14 -0
  1613. package/dist/_types/pool/sushiswap-v3/utils/calldata.d.ts.map +1 -0
  1614. package/dist/_types/pool/sushiswap-v3/utils/computePoolAddress.d.ts +20 -0
  1615. package/dist/_types/pool/sushiswap-v3/utils/computePoolAddress.d.ts.map +1 -0
  1616. package/dist/_types/pool/sushiswap-v3/utils/encodeSqrtRatioX96.d.ts +9 -0
  1617. package/dist/_types/pool/sushiswap-v3/utils/encodeSqrtRatioX96.d.ts.map +1 -0
  1618. package/dist/_types/pool/sushiswap-v3/utils/fullMath.d.ts +8 -0
  1619. package/dist/_types/pool/sushiswap-v3/utils/fullMath.d.ts.map +1 -0
  1620. package/dist/_types/pool/sushiswap-v3/utils/index.d.ts +19 -0
  1621. package/dist/_types/pool/sushiswap-v3/utils/index.d.ts.map +1 -0
  1622. package/dist/_types/pool/sushiswap-v3/utils/isSorted.d.ts +8 -0
  1623. package/dist/_types/pool/sushiswap-v3/utils/isSorted.d.ts.map +1 -0
  1624. package/dist/_types/pool/sushiswap-v3/utils/liquidityMath.d.ts +8 -0
  1625. package/dist/_types/pool/sushiswap-v3/utils/liquidityMath.d.ts.map +1 -0
  1626. package/dist/_types/pool/sushiswap-v3/utils/maxLiquidityForAmounts.d.ts +14 -0
  1627. package/dist/_types/pool/sushiswap-v3/utils/maxLiquidityForAmounts.d.ts.map +1 -0
  1628. package/dist/_types/pool/sushiswap-v3/utils/misc.d.ts +28 -0
  1629. package/dist/_types/pool/sushiswap-v3/utils/misc.d.ts.map +1 -0
  1630. package/dist/_types/pool/sushiswap-v3/utils/mostSignificantBit.d.ts +2 -0
  1631. package/dist/_types/pool/sushiswap-v3/utils/mostSignificantBit.d.ts.map +1 -0
  1632. package/dist/_types/pool/sushiswap-v3/utils/nearestUsableTick.d.ts +7 -0
  1633. package/dist/_types/pool/sushiswap-v3/utils/nearestUsableTick.d.ts.map +1 -0
  1634. package/dist/_types/pool/sushiswap-v3/utils/position.d.ts +8 -0
  1635. package/dist/_types/pool/sushiswap-v3/utils/position.d.ts.map +1 -0
  1636. package/dist/_types/pool/sushiswap-v3/utils/priceTickConversions.d.ts +16 -0
  1637. package/dist/_types/pool/sushiswap-v3/utils/priceTickConversions.d.ts.map +1 -0
  1638. package/dist/_types/pool/sushiswap-v3/utils/sqrtPriceMath.d.ts +13 -0
  1639. package/dist/_types/pool/sushiswap-v3/utils/sqrtPriceMath.d.ts.map +1 -0
  1640. package/dist/_types/pool/sushiswap-v3/utils/swapMath.d.ts +9 -0
  1641. package/dist/_types/pool/sushiswap-v3/utils/swapMath.d.ts.map +1 -0
  1642. package/dist/_types/pool/sushiswap-v3/utils/tickLibrary.d.ts +14 -0
  1643. package/dist/_types/pool/sushiswap-v3/utils/tickLibrary.d.ts.map +1 -0
  1644. package/dist/_types/pool/sushiswap-v3/utils/tickList.d.ts +24 -0
  1645. package/dist/_types/pool/sushiswap-v3/utils/tickList.d.ts.map +1 -0
  1646. package/dist/_types/pool/sushiswap-v3/utils/tickMath.d.ts +34 -0
  1647. package/dist/_types/pool/sushiswap-v3/utils/tickMath.d.ts.map +1 -0
  1648. package/dist/_types/pool/sushiswap-v3/utils/validateAndParseAddress.d.ts +2 -0
  1649. package/dist/_types/pool/sushiswap-v3/utils/validateAndParseAddress.d.ts.map +1 -0
  1650. package/dist/_types/pool/trident-constant-product/compute-init-code-hash.d.ts +7 -0
  1651. package/dist/_types/pool/trident-constant-product/compute-init-code-hash.d.ts.map +1 -0
  1652. package/dist/_types/pool/trident-constant-product/compute-trident-constant-pool-address.d.ts +11 -0
  1653. package/dist/_types/pool/trident-constant-product/compute-trident-constant-pool-address.d.ts.map +1 -0
  1654. package/dist/_types/pool/trident-constant-product/index.d.ts +5 -0
  1655. package/dist/_types/pool/trident-constant-product/index.d.ts.map +1 -0
  1656. package/dist/_types/pool/trident-constant-product/trident-constant-pool.d.ts +55 -0
  1657. package/dist/_types/pool/trident-constant-product/trident-constant-pool.d.ts.map +1 -0
  1658. package/dist/_types/pool/trident-constant-product/zod.d.ts +232 -0
  1659. package/dist/_types/pool/trident-constant-product/zod.d.ts.map +1 -0
  1660. package/dist/_types/pool/trident-stable/compute-trident-stable-pool-address.d.ts +10 -0
  1661. package/dist/_types/pool/trident-stable/compute-trident-stable-pool-address.d.ts.map +1 -0
  1662. package/dist/_types/pool/trident-stable/index.d.ts +4 -0
  1663. package/dist/_types/pool/trident-stable/index.d.ts.map +1 -0
  1664. package/dist/_types/pool/trident-stable/trident-stable-pool.d.ts +68 -0
  1665. package/dist/_types/pool/trident-stable/trident-stable-pool.d.ts.map +1 -0
  1666. package/dist/_types/pool/trident-stable/zod.d.ts +265 -0
  1667. package/dist/_types/pool/trident-stable/zod.d.ts.map +1 -0
  1668. package/dist/_types/pricing/IncrementalPricer.d.ts +48 -0
  1669. package/dist/_types/pricing/IncrementalPricer.d.ts.map +1 -0
  1670. package/dist/_types/pricing/PoolTokenGraph.d.ts +22 -0
  1671. package/dist/_types/pricing/PoolTokenGraph.d.ts.map +1 -0
  1672. package/dist/_types/pricing/index.d.ts +2 -0
  1673. package/dist/_types/pricing/index.d.ts.map +1 -0
  1674. package/dist/_types/router/HEXer.d.ts +20 -0
  1675. package/dist/_types/router/HEXer.d.ts.map +1 -0
  1676. package/dist/_types/router/PoolBinarySerialization.d.ts +11 -0
  1677. package/dist/_types/router/PoolBinarySerialization.d.ts.map +1 -0
  1678. package/dist/_types/router/Sankey.AnyChart.d.ts +7 -0
  1679. package/dist/_types/router/Sankey.AnyChart.d.ts.map +1 -0
  1680. package/dist/_types/router/curve-sdk.d.ts +214 -0
  1681. package/dist/_types/router/curve-sdk.d.ts.map +1 -0
  1682. package/dist/_types/router/data-fetcher.d.ts +24 -0
  1683. package/dist/_types/router/data-fetcher.d.ts.map +1 -0
  1684. package/dist/_types/router/get-currency-combinations.d.ts +5 -0
  1685. package/dist/_types/router/get-currency-combinations.d.ts.map +1 -0
  1686. package/dist/_types/router/index.d.ts +13 -0
  1687. package/dist/_types/router/index.d.ts.map +1 -0
  1688. package/dist/_types/router/liquidity-providers/ApeSwap.d.ts +10 -0
  1689. package/dist/_types/router/liquidity-providers/ApeSwap.d.ts.map +1 -0
  1690. package/dist/_types/router/liquidity-providers/Biswap.d.ts +11 -0
  1691. package/dist/_types/router/liquidity-providers/Biswap.d.ts.map +1 -0
  1692. package/dist/_types/router/liquidity-providers/CurvePoolsWhitelist.d.ts +12 -0
  1693. package/dist/_types/router/liquidity-providers/CurvePoolsWhitelist.d.ts.map +1 -0
  1694. package/dist/_types/router/liquidity-providers/CurveProvider.d.ts +41 -0
  1695. package/dist/_types/router/liquidity-providers/CurveProvider.d.ts.map +1 -0
  1696. package/dist/_types/router/liquidity-providers/CurveProviderWhitelist.d.ts +40 -0
  1697. package/dist/_types/router/liquidity-providers/CurveProviderWhitelist.d.ts.map +1 -0
  1698. package/dist/_types/router/liquidity-providers/Dfyn.d.ts +10 -0
  1699. package/dist/_types/router/liquidity-providers/Dfyn.d.ts.map +1 -0
  1700. package/dist/_types/router/liquidity-providers/DovishV3.d.ts +10 -0
  1701. package/dist/_types/router/liquidity-providers/DovishV3.d.ts.map +1 -0
  1702. package/dist/_types/router/liquidity-providers/Elk.d.ts +10 -0
  1703. package/dist/_types/router/liquidity-providers/Elk.d.ts.map +1 -0
  1704. package/dist/_types/router/liquidity-providers/HoneySwap.d.ts +10 -0
  1705. package/dist/_types/router/liquidity-providers/HoneySwap.d.ts.map +1 -0
  1706. package/dist/_types/router/liquidity-providers/JetSwap.d.ts +10 -0
  1707. package/dist/_types/router/liquidity-providers/JetSwap.d.ts.map +1 -0
  1708. package/dist/_types/router/liquidity-providers/LaserSwap.d.ts +11 -0
  1709. package/dist/_types/router/liquidity-providers/LaserSwap.d.ts.map +1 -0
  1710. package/dist/_types/router/liquidity-providers/LiquidityProvider.d.ts +87 -0
  1711. package/dist/_types/router/liquidity-providers/LiquidityProvider.d.ts.map +1 -0
  1712. package/dist/_types/router/liquidity-providers/NativeWrapProvider.d.ts +15 -0
  1713. package/dist/_types/router/liquidity-providers/NativeWrapProvider.d.ts.map +1 -0
  1714. package/dist/_types/router/liquidity-providers/NetSwap.d.ts +10 -0
  1715. package/dist/_types/router/liquidity-providers/NetSwap.d.ts.map +1 -0
  1716. package/dist/_types/router/liquidity-providers/PancakeSwap.d.ts +11 -0
  1717. package/dist/_types/router/liquidity-providers/PancakeSwap.d.ts.map +1 -0
  1718. package/dist/_types/router/liquidity-providers/QuickSwap.d.ts +10 -0
  1719. package/dist/_types/router/liquidity-providers/QuickSwap.d.ts.map +1 -0
  1720. package/dist/_types/router/liquidity-providers/SpookySwap.d.ts +10 -0
  1721. package/dist/_types/router/liquidity-providers/SpookySwap.d.ts.map +1 -0
  1722. package/dist/_types/router/liquidity-providers/SushiSwapV2.d.ts +10 -0
  1723. package/dist/_types/router/liquidity-providers/SushiSwapV2.d.ts.map +1 -0
  1724. package/dist/_types/router/liquidity-providers/SushiSwapV3.d.ts +10 -0
  1725. package/dist/_types/router/liquidity-providers/SushiSwapV3.d.ts.map +1 -0
  1726. package/dist/_types/router/liquidity-providers/TraderJoe.d.ts +10 -0
  1727. package/dist/_types/router/liquidity-providers/TraderJoe.d.ts.map +1 -0
  1728. package/dist/_types/router/liquidity-providers/UbeSwap.d.ts +10 -0
  1729. package/dist/_types/router/liquidity-providers/UbeSwap.d.ts.map +1 -0
  1730. package/dist/_types/router/liquidity-providers/UniswapV2.d.ts +10 -0
  1731. package/dist/_types/router/liquidity-providers/UniswapV2.d.ts.map +1 -0
  1732. package/dist/_types/router/liquidity-providers/UniswapV2Base.d.ts +29 -0
  1733. package/dist/_types/router/liquidity-providers/UniswapV2Base.d.ts.map +1 -0
  1734. package/dist/_types/router/liquidity-providers/UniswapV3.d.ts +10 -0
  1735. package/dist/_types/router/liquidity-providers/UniswapV3.d.ts.map +1 -0
  1736. package/dist/_types/router/liquidity-providers/UniswapV3Base.d.ts +32 -0
  1737. package/dist/_types/router/liquidity-providers/UniswapV3Base.d.ts.map +1 -0
  1738. package/dist/_types/router/liquidity-providers/index.d.ts +9 -0
  1739. package/dist/_types/router/liquidity-providers/index.d.ts.map +1 -0
  1740. package/dist/_types/router/pool-codes/BentoBridge.d.ts +11 -0
  1741. package/dist/_types/router/pool-codes/BentoBridge.d.ts.map +1 -0
  1742. package/dist/_types/router/pool-codes/BentoPool.d.ts +9 -0
  1743. package/dist/_types/router/pool-codes/BentoPool.d.ts.map +1 -0
  1744. package/dist/_types/router/pool-codes/Bridge.d.ts +5 -0
  1745. package/dist/_types/router/pool-codes/Bridge.d.ts.map +1 -0
  1746. package/dist/_types/router/pool-codes/ConstantProductPool.d.ts +10 -0
  1747. package/dist/_types/router/pool-codes/ConstantProductPool.d.ts.map +1 -0
  1748. package/dist/_types/router/pool-codes/CurvePool.d.ts +13 -0
  1749. package/dist/_types/router/pool-codes/CurvePool.d.ts.map +1 -0
  1750. package/dist/_types/router/pool-codes/NativeWrapBridge.d.ts +10 -0
  1751. package/dist/_types/router/pool-codes/NativeWrapBridge.d.ts.map +1 -0
  1752. package/dist/_types/router/pool-codes/PoolCode.d.ts +24 -0
  1753. package/dist/_types/router/pool-codes/PoolCode.d.ts.map +1 -0
  1754. package/dist/_types/router/pool-codes/TridentCLPool.d.ts +10 -0
  1755. package/dist/_types/router/pool-codes/TridentCLPool.d.ts.map +1 -0
  1756. package/dist/_types/router/pool-codes/UniV3Pool.d.ts +10 -0
  1757. package/dist/_types/router/pool-codes/UniV3Pool.d.ts.map +1 -0
  1758. package/dist/_types/router/pool-codes/UniV4Pool.d.ts +13 -0
  1759. package/dist/_types/router/pool-codes/UniV4Pool.d.ts.map +1 -0
  1760. package/dist/_types/router/pool-codes/index.d.ts +10 -0
  1761. package/dist/_types/router/pool-codes/index.d.ts.map +1 -0
  1762. package/dist/_types/router/router.d.ts +68 -0
  1763. package/dist/_types/router/router.d.ts.map +1 -0
  1764. package/dist/_types/router/routingBases.d.ts +8 -0
  1765. package/dist/_types/router/routingBases.d.ts.map +1 -0
  1766. package/dist/_types/router/tines-to-route-processor-2.d.ts +41 -0
  1767. package/dist/_types/router/tines-to-route-processor-2.d.ts.map +1 -0
  1768. package/dist/_types/router/tines-to-route-processor-4.d.ts +12 -0
  1769. package/dist/_types/router/tines-to-route-processor-4.d.ts.map +1 -0
  1770. package/dist/_types/router/tines-to-route-processor-6.d.ts +5 -0
  1771. package/dist/_types/router/tines-to-route-processor-6.d.ts.map +1 -0
  1772. package/dist/_types/router/tines-to-route-processor.d.ts +21 -0
  1773. package/dist/_types/router/tines-to-route-processor.d.ts.map +1 -0
  1774. package/dist/_types/serializer/AddressValidation.d.ts +2 -0
  1775. package/dist/_types/serializer/AddressValidation.d.ts.map +1 -0
  1776. package/dist/_types/serializer/BinarySerialization.d.ts +43 -0
  1777. package/dist/_types/serializer/BinarySerialization.d.ts.map +1 -0
  1778. package/dist/_types/serializer/index.d.ts +2 -0
  1779. package/dist/_types/serializer/index.d.ts.map +1 -0
  1780. package/dist/_types/sort/index.d.ts +2 -0
  1781. package/dist/_types/sort/index.d.ts.map +1 -0
  1782. package/dist/_types/sort/sortedInsert.d.ts +2 -0
  1783. package/dist/_types/sort/sortedInsert.d.ts.map +1 -0
  1784. package/dist/_types/tines/BridgeBento.d.ts +21 -0
  1785. package/dist/_types/tines/BridgeBento.d.ts.map +1 -0
  1786. package/dist/_types/tines/BridgeBidirectionalUnlimited.d.ts +16 -0
  1787. package/dist/_types/tines/BridgeBidirectionalUnlimited.d.ts.map +1 -0
  1788. package/dist/_types/tines/BridgeStargateV04OneWay.d.ts +23 -0
  1789. package/dist/_types/tines/BridgeStargateV04OneWay.d.ts.map +1 -0
  1790. package/dist/_types/tines/CLPool.d.ts +27 -0
  1791. package/dist/_types/tines/CLPool.d.ts.map +1 -0
  1792. package/dist/_types/tines/CurveMultitokenPool.d.ts +58 -0
  1793. package/dist/_types/tines/CurveMultitokenPool.d.ts.map +1 -0
  1794. package/dist/_types/tines/CurveMultitokenPoolSingle.d.ts +54 -0
  1795. package/dist/_types/tines/CurveMultitokenPoolSingle.d.ts.map +1 -0
  1796. package/dist/_types/tines/CurvePool.d.ts +28 -0
  1797. package/dist/_types/tines/CurvePool.d.ts.map +1 -0
  1798. package/dist/_types/tines/Graph.d.ts +135 -0
  1799. package/dist/_types/tines/Graph.d.ts.map +1 -0
  1800. package/dist/_types/tines/MultiRouter.d.ts +11 -0
  1801. package/dist/_types/tines/MultiRouter.d.ts.map +1 -0
  1802. package/dist/_types/tines/PrimaryPools.d.ts +44 -0
  1803. package/dist/_types/tines/PrimaryPools.d.ts.map +1 -0
  1804. package/dist/_types/tines/RPool.d.ts +54 -0
  1805. package/dist/_types/tines/RPool.d.ts.map +1 -0
  1806. package/dist/_types/tines/StableSwapPool.d.ts +50 -0
  1807. package/dist/_types/tines/StableSwapPool.d.ts.map +1 -0
  1808. package/dist/_types/tines/StarGateFeesV04.d.ts +16 -0
  1809. package/dist/_types/tines/StarGateFeesV04.d.ts.map +1 -0
  1810. package/dist/_types/tines/UniV3Pool.d.ts +25 -0
  1811. package/dist/_types/tines/UniV3Pool.d.ts.map +1 -0
  1812. package/dist/_types/tines/UniV4Pool.d.ts +13 -0
  1813. package/dist/_types/tines/UniV4Pool.d.ts.map +1 -0
  1814. package/dist/_types/tines/Utils.d.ts +9 -0
  1815. package/dist/_types/tines/Utils.d.ts.map +1 -0
  1816. package/dist/_types/tines/constants/hybrid.d.ts +2 -0
  1817. package/dist/_types/tines/constants/hybrid.d.ts.map +1 -0
  1818. package/dist/_types/tines/constants/index.d.ts +2 -0
  1819. package/dist/_types/tines/constants/index.d.ts.map +1 -0
  1820. package/dist/_types/tines/functions/computeHybridLiquidity.d.ts +2 -0
  1821. package/dist/_types/tines/functions/computeHybridLiquidity.d.ts.map +1 -0
  1822. package/dist/_types/tines/functions/convertTokenToBento.d.ts +4 -0
  1823. package/dist/_types/tines/functions/convertTokenToBento.d.ts.map +1 -0
  1824. package/dist/_types/tines/functions/getBentoChainId.d.ts +2 -0
  1825. package/dist/_types/tines/functions/getBentoChainId.d.ts.map +1 -0
  1826. package/dist/_types/tines/functions/index.d.ts +4 -0
  1827. package/dist/_types/tines/functions/index.d.ts.map +1 -0
  1828. package/dist/_types/tines/index.d.ts +18 -0
  1829. package/dist/_types/tines/index.d.ts.map +1 -0
  1830. package/dist/_types/token-list/constants.d.ts +19 -0
  1831. package/dist/_types/token-list/constants.d.ts.map +1 -0
  1832. package/dist/_types/token-list/index.d.ts +4 -0
  1833. package/dist/_types/token-list/index.d.ts.map +1 -0
  1834. package/dist/_types/token-list/wrapped-token-info.d.ts +44 -0
  1835. package/dist/_types/token-list/wrapped-token-info.d.ts.map +1 -0
  1836. package/dist/_types/types/address.d.ts +2 -0
  1837. package/dist/_types/types/address.d.ts.map +1 -0
  1838. package/dist/_types/types/api.d.ts +2 -0
  1839. package/dist/_types/types/api.d.ts.map +1 -0
  1840. package/dist/_types/types/contract.d.ts +3 -0
  1841. package/dist/_types/types/contract.d.ts.map +1 -0
  1842. package/dist/_types/types/id.d.ts +3 -0
  1843. package/dist/_types/types/id.d.ts.map +1 -0
  1844. package/dist/_types/types/index.d.ts +8 -0
  1845. package/dist/_types/types/index.d.ts.map +1 -0
  1846. package/dist/_types/types/mutable.d.ts +4 -0
  1847. package/dist/_types/types/mutable.d.ts.map +1 -0
  1848. package/dist/_types/types/sushi-pool/index.d.ts +13 -0
  1849. package/dist/_types/types/sushi-pool/index.d.ts.map +1 -0
  1850. package/dist/_types/types/sushi-pool/maybe-nested-pool.d.ts +6 -0
  1851. package/dist/_types/types/sushi-pool/maybe-nested-pool.d.ts.map +1 -0
  1852. package/dist/_types/types/sushi-pool/pool-base.d.ts +18 -0
  1853. package/dist/_types/types/sushi-pool/pool-base.d.ts.map +1 -0
  1854. package/dist/_types/types/sushi-pool/pool-history.d.ts +30 -0
  1855. package/dist/_types/types/sushi-pool/pool-history.d.ts.map +1 -0
  1856. package/dist/_types/types/sushi-pool/pool-id.d.ts +11 -0
  1857. package/dist/_types/types/sushi-pool/pool-id.d.ts.map +1 -0
  1858. package/dist/_types/types/sushi-pool/pool-if-incentivized.d.ts +12 -0
  1859. package/dist/_types/types/sushi-pool/pool-if-incentivized.d.ts.map +1 -0
  1860. package/dist/_types/types/sushi-pool/pool-swap-fee.d.ts +5 -0
  1861. package/dist/_types/types/sushi-pool/pool-swap-fee.d.ts.map +1 -0
  1862. package/dist/_types/types/sushi-pool/pool-v2.d.ts +9 -0
  1863. package/dist/_types/types/sushi-pool/pool-v2.d.ts.map +1 -0
  1864. package/dist/_types/types/sushi-pool/pool-v3.d.ts +18 -0
  1865. package/dist/_types/types/sushi-pool/pool-v3.d.ts.map +1 -0
  1866. package/dist/_types/types/sushi-pool/pool-with-aprs.d.ts +12 -0
  1867. package/dist/_types/types/sushi-pool/pool-with-aprs.d.ts.map +1 -0
  1868. package/dist/_types/types/sushi-pool/pool-with-buckets.d.ts +14 -0
  1869. package/dist/_types/types/sushi-pool/pool-with-buckets.d.ts.map +1 -0
  1870. package/dist/_types/types/sushi-pool/pool-with-incentives.d.ts +31 -0
  1871. package/dist/_types/types/sushi-pool/pool-with-incentives.d.ts.map +1 -0
  1872. package/dist/_types/types/sushi-pool/protocol.d.ts +8 -0
  1873. package/dist/_types/types/sushi-pool/protocol.d.ts.map +1 -0
  1874. package/dist/_types/types/sushi-position/index.d.ts +4 -0
  1875. package/dist/_types/types/sushi-position/index.d.ts.map +1 -0
  1876. package/dist/_types/types/sushi-position/sushi-position-base.d.ts +8 -0
  1877. package/dist/_types/types/sushi-position/sushi-position-base.d.ts.map +1 -0
  1878. package/dist/_types/types/sushi-position/sushi-position-staked.d.ts +5 -0
  1879. package/dist/_types/types/sushi-position/sushi-position-staked.d.ts.map +1 -0
  1880. package/dist/_types/types/sushi-position/sushi-position-with-pool.d.ts +6 -0
  1881. package/dist/_types/types/sushi-position/sushi-position-with-pool.d.ts.map +1 -0
  1882. package/dist/_types/types/token.d.ts +12 -0
  1883. package/dist/_types/types/token.d.ts.map +1 -0
  1884. package/dist/_types/validate/index.d.ts +4 -0
  1885. package/dist/_types/validate/index.d.ts.map +1 -0
  1886. package/dist/_types/validate/isPromiseFulfilled.d.ts.map +1 -0
  1887. package/dist/_types/validate/isPromiseRejected.d.ts.map +1 -0
  1888. package/dist/_types/validate/isZero.d.ts.map +1 -0
  1889. package/package.json +208 -37
  1890. package/dist/abi/StargateFeeLibraryV03.d.ts.map +0 -1
  1891. package/dist/abi/StargateFeeLibraryV03.js.map +0 -1
  1892. package/dist/abi/StargatePool.d.ts.map +0 -1
  1893. package/dist/abi/StargatePool.js.map +0 -1
  1894. package/dist/abi/balanceOfAbi.d.ts.map +0 -1
  1895. package/dist/abi/balanceOfAbi.js.map +0 -1
  1896. package/dist/abi/bentoBoxV1Abi.d.ts.map +0 -1
  1897. package/dist/abi/bentoBoxV1Abi.js.map +0 -1
  1898. package/dist/abi/bentoBoxV1TotalsAbi.d.ts.map +0 -1
  1899. package/dist/abi/bentoBoxV1TotalsAbi.js.map +0 -1
  1900. package/dist/abi/cloneRewarderTime.d.ts.map +0 -1
  1901. package/dist/abi/cloneRewarderTime.js.map +0 -1
  1902. package/dist/abi/complexRewarderTimeAbi.d.ts.map +0 -1
  1903. package/dist/abi/complexRewarderTimeAbi.js.map +0 -1
  1904. package/dist/abi/erc20Abi.d.ts +0 -185
  1905. package/dist/abi/erc20Abi.d.ts.map +0 -1
  1906. package/dist/abi/erc20Abi.js +0 -247
  1907. package/dist/abi/erc20Abi.js.map +0 -1
  1908. package/dist/abi/furoStreamAbi.d.ts.map +0 -1
  1909. package/dist/abi/furoStreamAbi.js.map +0 -1
  1910. package/dist/abi/furoStreamRouterAbi.d.ts.map +0 -1
  1911. package/dist/abi/furoStreamRouterAbi.js.map +0 -1
  1912. package/dist/abi/furoVestingAbi.d.ts.map +0 -1
  1913. package/dist/abi/furoVestingAbi.js.map +0 -1
  1914. package/dist/abi/furoVestingRouterAbi.d.ts.map +0 -1
  1915. package/dist/abi/furoVestingRouterAbi.js.map +0 -1
  1916. package/dist/abi/gasDataArbitrumAbi.d.ts.map +0 -1
  1917. package/dist/abi/gasDataArbitrumAbi.js.map +0 -1
  1918. package/dist/abi/gasPriceOracleAbi.d.ts.map +0 -1
  1919. package/dist/abi/gasPriceOracleAbi.js.map +0 -1
  1920. package/dist/abi/getPoolsAbi.d.ts.map +0 -1
  1921. package/dist/abi/getPoolsAbi.js.map +0 -1
  1922. package/dist/abi/getReservesAbi.d.ts.map +0 -1
  1923. package/dist/abi/getReservesAbi.js.map +0 -1
  1924. package/dist/abi/index.d.ts +0 -47
  1925. package/dist/abi/index.d.ts.map +0 -1
  1926. package/dist/abi/index.js +0 -97
  1927. package/dist/abi/index.js.map +0 -1
  1928. package/dist/abi/masterChefV1Abi.d.ts.map +0 -1
  1929. package/dist/abi/masterChefV1Abi.js.map +0 -1
  1930. package/dist/abi/masterChefV2Abi.d.ts.map +0 -1
  1931. package/dist/abi/masterChefV2Abi.js.map +0 -1
  1932. package/dist/abi/miniChefAbi.d.ts.map +0 -1
  1933. package/dist/abi/miniChefAbi.js.map +0 -1
  1934. package/dist/abi/multicall2Abi.d.ts.map +0 -1
  1935. package/dist/abi/multicall2Abi.js.map +0 -1
  1936. package/dist/abi/multicall3Abi.d.ts.map +0 -1
  1937. package/dist/abi/multicall3Abi.js.map +0 -1
  1938. package/dist/abi/nonfungiblePositionManagerAbi.d.ts.map +0 -1
  1939. package/dist/abi/nonfungiblePositionManagerAbi.js.map +0 -1
  1940. package/dist/abi/permit2Abi.d.ts.map +0 -1
  1941. package/dist/abi/permit2Abi.js.map +0 -1
  1942. package/dist/abi/poolsCountAbi.d.ts.map +0 -1
  1943. package/dist/abi/poolsCountAbi.js.map +0 -1
  1944. package/dist/abi/routeProcessor2Abi.d.ts.map +0 -1
  1945. package/dist/abi/routeProcessor2Abi.js.map +0 -1
  1946. package/dist/abi/routeProcessor3Abi.d.ts.map +0 -1
  1947. package/dist/abi/routeProcessor3Abi.js.map +0 -1
  1948. package/dist/abi/routeProcessor3_1Abi.d.ts.map +0 -1
  1949. package/dist/abi/routeProcessor3_1Abi.js.map +0 -1
  1950. package/dist/abi/routeProcessor4Abi.d.ts +0 -228
  1951. package/dist/abi/routeProcessor4Abi.d.ts.map +0 -1
  1952. package/dist/abi/routeProcessor4Abi.js +0 -293
  1953. package/dist/abi/routeProcessor4Abi.js.map +0 -1
  1954. package/dist/abi/routeProcessorAbi.d.ts.map +0 -1
  1955. package/dist/abi/routeProcessorAbi.js.map +0 -1
  1956. package/dist/abi/slot0Abi.d.ts.map +0 -1
  1957. package/dist/abi/slot0Abi.js.map +0 -1
  1958. package/dist/abi/sushiV3FactoryAbi.d.ts.map +0 -1
  1959. package/dist/abi/sushiV3FactoryAbi.js.map +0 -1
  1960. package/dist/abi/sushiV3PoolAbi.d.ts.map +0 -1
  1961. package/dist/abi/sushiV3PoolAbi.js.map +0 -1
  1962. package/dist/abi/sushiXSwapAbi.d.ts.map +0 -1
  1963. package/dist/abi/sushiXSwapAbi.js.map +0 -1
  1964. package/dist/abi/swapFeeAbi.d.ts.map +0 -1
  1965. package/dist/abi/swapFeeAbi.js.map +0 -1
  1966. package/dist/abi/tickLensAbi.d.ts.map +0 -1
  1967. package/dist/abi/tickLensAbi.js.map +0 -1
  1968. package/dist/abi/totalsAbi.d.ts.map +0 -1
  1969. package/dist/abi/totalsAbi.js.map +0 -1
  1970. package/dist/abi/tridentConstantPoolAbi.d.ts.map +0 -1
  1971. package/dist/abi/tridentConstantPoolAbi.js.map +0 -1
  1972. package/dist/abi/tridentConstantPoolFactoryAbi.d.ts.map +0 -1
  1973. package/dist/abi/tridentConstantPoolFactoryAbi.js.map +0 -1
  1974. package/dist/abi/tridentGetPoolsAbi.d.ts.map +0 -1
  1975. package/dist/abi/tridentGetPoolsAbi.js.map +0 -1
  1976. package/dist/abi/tridentPoolsCountAbi.d.ts.map +0 -1
  1977. package/dist/abi/tridentPoolsCountAbi.js.map +0 -1
  1978. package/dist/abi/tridentRouterAbi.d.ts.map +0 -1
  1979. package/dist/abi/tridentRouterAbi.js.map +0 -1
  1980. package/dist/abi/tridentStablePoolAbi.d.ts.map +0 -1
  1981. package/dist/abi/tridentStablePoolAbi.js.map +0 -1
  1982. package/dist/abi/tridentStablePoolFactoryAbi.d.ts.map +0 -1
  1983. package/dist/abi/tridentStablePoolFactoryAbi.js.map +0 -1
  1984. package/dist/abi/tridentSwapFeeAbi.d.ts.map +0 -1
  1985. package/dist/abi/tridentSwapFeeAbi.js.map +0 -1
  1986. package/dist/abi/uniswapV2PairAbi.d.ts.map +0 -1
  1987. package/dist/abi/uniswapV2PairAbi.js.map +0 -1
  1988. package/dist/abi/uniswapV2RouterAbi.d.ts.map +0 -1
  1989. package/dist/abi/uniswapV2RouterAbi.js.map +0 -1
  1990. package/dist/abi/v3baseAbi.d.ts.map +0 -1
  1991. package/dist/abi/v3baseAbi.js.map +0 -1
  1992. package/dist/abi/weth9Abi.d.ts.map +0 -1
  1993. package/dist/abi/weth9Abi.js.map +0 -1
  1994. package/dist/calculate/gasMargin.d.ts.map +0 -1
  1995. package/dist/calculate/gasMargin.js +0 -9
  1996. package/dist/calculate/gasMargin.js.map +0 -1
  1997. package/dist/calculate/index.d.ts +0 -2
  1998. package/dist/calculate/index.d.ts.map +0 -1
  1999. package/dist/calculate/index.js +0 -6
  2000. package/dist/calculate/index.js.map +0 -1
  2001. package/dist/chain/constants.d.ts +0 -94
  2002. package/dist/chain/constants.d.ts.map +0 -1
  2003. package/dist/chain/constants.js +0 -121
  2004. package/dist/chain/constants.js.map +0 -1
  2005. package/dist/chain/generated.d.ts +0 -687
  2006. package/dist/chain/generated.d.ts.map +0 -1
  2007. package/dist/chain/generated.js +0 -836
  2008. package/dist/chain/generated.js.map +0 -1
  2009. package/dist/chain/index.d.ts +0 -760
  2010. package/dist/chain/index.d.ts.map +0 -1
  2011. package/dist/chain/index.js +0 -146
  2012. package/dist/chain/index.js.map +0 -1
  2013. package/dist/convert/index.d.ts +0 -2
  2014. package/dist/convert/index.d.ts.map +0 -1
  2015. package/dist/convert/index.js +0 -6
  2016. package/dist/convert/index.js.map +0 -1
  2017. package/dist/convert/toHex.d.ts +0 -8
  2018. package/dist/convert/toHex.d.ts.map +0 -1
  2019. package/dist/convert/toHex.js +0 -18
  2020. package/dist/convert/toHex.js.map +0 -1
  2021. package/dist/currency/AddressMapper.d.ts +0 -8
  2022. package/dist/currency/AddressMapper.d.ts.map +0 -1
  2023. package/dist/currency/AddressMapper.js +0 -55
  2024. package/dist/currency/AddressMapper.js.map +0 -1
  2025. package/dist/currency/AddressMapper.test.d.ts +0 -2
  2026. package/dist/currency/AddressMapper.test.d.ts.map +0 -1
  2027. package/dist/currency/AddressMapper.test.js +0 -226
  2028. package/dist/currency/AddressMapper.test.js.map +0 -1
  2029. package/dist/currency/Amount.d.ts +0 -43
  2030. package/dist/currency/Amount.d.ts.map +0 -1
  2031. package/dist/currency/Amount.js +0 -112
  2032. package/dist/currency/Amount.js.map +0 -1
  2033. package/dist/currency/Amount.test.d.ts +0 -2
  2034. package/dist/currency/Amount.test.d.ts.map +0 -1
  2035. package/dist/currency/Amount.test.js +0 -141
  2036. package/dist/currency/Amount.test.js.map +0 -1
  2037. package/dist/currency/Currency.d.ts +0 -56
  2038. package/dist/currency/Currency.d.ts.map +0 -1
  2039. package/dist/currency/Currency.js +0 -48
  2040. package/dist/currency/Currency.js.map +0 -1
  2041. package/dist/currency/Native.d.ts +0 -24
  2042. package/dist/currency/Native.d.ts.map +0 -1
  2043. package/dist/currency/Native.js +0 -72
  2044. package/dist/currency/Native.js.map +0 -1
  2045. package/dist/currency/Native.test.d.ts +0 -2
  2046. package/dist/currency/Native.test.d.ts.map +0 -1
  2047. package/dist/currency/Native.test.js +0 -38
  2048. package/dist/currency/Native.test.js.map +0 -1
  2049. package/dist/currency/Price.d.ts +0 -40
  2050. package/dist/currency/Price.d.ts.map +0 -1
  2051. package/dist/currency/Price.js +0 -80
  2052. package/dist/currency/Price.js.map +0 -1
  2053. package/dist/currency/Price.test.d.ts +0 -2
  2054. package/dist/currency/Price.test.d.ts.map +0 -1
  2055. package/dist/currency/Price.test.js +0 -59
  2056. package/dist/currency/Price.test.js.map +0 -1
  2057. package/dist/currency/Share.d.ts +0 -28
  2058. package/dist/currency/Share.d.ts.map +0 -1
  2059. package/dist/currency/Share.js +0 -75
  2060. package/dist/currency/Share.js.map +0 -1
  2061. package/dist/currency/Token.d.ts +0 -44
  2062. package/dist/currency/Token.d.ts.map +0 -1
  2063. package/dist/currency/Token.js +0 -93
  2064. package/dist/currency/Token.js.map +0 -1
  2065. package/dist/currency/Token.test.d.ts +0 -2
  2066. package/dist/currency/Token.test.d.ts.map +0 -1
  2067. package/dist/currency/Token.test.js +0 -66
  2068. package/dist/currency/Token.test.js.map +0 -1
  2069. package/dist/currency/Type.d.ts +0 -4
  2070. package/dist/currency/Type.d.ts.map +0 -1
  2071. package/dist/currency/Type.js +0 -3
  2072. package/dist/currency/Type.js.map +0 -1
  2073. package/dist/currency/constants/default-quote.d.ts +0 -38
  2074. package/dist/currency/constants/default-quote.d.ts.map +0 -1
  2075. package/dist/currency/constants/default-quote.js +0 -68
  2076. package/dist/currency/constants/default-quote.js.map +0 -1
  2077. package/dist/currency/constants/governance.d.ts +0 -4
  2078. package/dist/currency/constants/governance.d.ts.map +0 -1
  2079. package/dist/currency/constants/governance.js +0 -9
  2080. package/dist/currency/constants/governance.js.map +0 -1
  2081. package/dist/currency/constants/index.d.ts +0 -10
  2082. package/dist/currency/constants/index.d.ts.map +0 -1
  2083. package/dist/currency/constants/index.js +0 -26
  2084. package/dist/currency/constants/index.js.map +0 -1
  2085. package/dist/currency/constants/lsds.d.ts +0 -4
  2086. package/dist/currency/constants/lsds.d.ts.map +0 -1
  2087. package/dist/currency/constants/lsds.js +0 -8
  2088. package/dist/currency/constants/lsds.js.map +0 -1
  2089. package/dist/currency/constants/native-ids.d.ts +0 -46
  2090. package/dist/currency/constants/native-ids.d.ts.map +0 -1
  2091. package/dist/currency/constants/native-ids.js +0 -55
  2092. package/dist/currency/constants/native-ids.js.map +0 -1
  2093. package/dist/currency/constants/short-name-to-currency.d.ts +0 -221
  2094. package/dist/currency/constants/short-name-to-currency.d.ts.map +0 -1
  2095. package/dist/currency/constants/short-name-to-currency.js +0 -267
  2096. package/dist/currency/constants/short-name-to-currency.js.map +0 -1
  2097. package/dist/currency/constants/stables.d.ts +0 -4
  2098. package/dist/currency/constants/stables.d.ts.map +0 -1
  2099. package/dist/currency/constants/stables.js +0 -14
  2100. package/dist/currency/constants/stables.js.map +0 -1
  2101. package/dist/currency/constants/token-addresses.d.ts +0 -476
  2102. package/dist/currency/constants/token-addresses.d.ts.map +0 -1
  2103. package/dist/currency/constants/token-addresses.js +0 -494
  2104. package/dist/currency/constants/token-addresses.js.map +0 -1
  2105. package/dist/currency/constants/token-map.d.ts +0 -5
  2106. package/dist/currency/constants/token-map.d.ts.map +0 -1
  2107. package/dist/currency/constants/token-map.js +0 -91
  2108. package/dist/currency/constants/token-map.js.map +0 -1
  2109. package/dist/currency/constants/tokens.d.ts +0 -99
  2110. package/dist/currency/constants/tokens.d.ts.map +0 -1
  2111. package/dist/currency/constants/tokens.js +0 -511
  2112. package/dist/currency/constants/tokens.js.map +0 -1
  2113. package/dist/currency/functions/address-map-to-token-map.d.ts +0 -9
  2114. package/dist/currency/functions/address-map-to-token-map.d.ts.map +0 -1
  2115. package/dist/currency/functions/address-map-to-token-map.js +0 -18
  2116. package/dist/currency/functions/address-map-to-token-map.js.map +0 -1
  2117. package/dist/currency/functions/index.d.ts +0 -4
  2118. package/dist/currency/functions/index.d.ts.map +0 -1
  2119. package/dist/currency/functions/index.js +0 -20
  2120. package/dist/currency/functions/index.js.map +0 -1
  2121. package/dist/currency/functions/try-parse-amount.d.ts +0 -4
  2122. package/dist/currency/functions/try-parse-amount.d.ts.map +0 -1
  2123. package/dist/currency/functions/try-parse-amount.js +0 -25
  2124. package/dist/currency/functions/try-parse-amount.js.map +0 -1
  2125. package/dist/currency/functions/unwrap.d.ts +0 -3
  2126. package/dist/currency/functions/unwrap.d.ts.map +0 -1
  2127. package/dist/currency/functions/unwrap.js +0 -12
  2128. package/dist/currency/functions/unwrap.js.map +0 -1
  2129. package/dist/currency/index.d.ts +0 -11
  2130. package/dist/currency/index.d.ts.map +0 -1
  2131. package/dist/currency/index.js +0 -29
  2132. package/dist/currency/index.js.map +0 -1
  2133. package/dist/currency/zod.d.ts +0 -121
  2134. package/dist/currency/zod.d.ts.map +0 -1
  2135. package/dist/currency/zod.js +0 -27
  2136. package/dist/currency/zod.js.map +0 -1
  2137. package/dist/format/address.d.ts.map +0 -1
  2138. package/dist/format/address.js +0 -16
  2139. package/dist/format/address.js.map +0 -1
  2140. package/dist/format/index.d.ts +0 -5
  2141. package/dist/format/index.d.ts.map +0 -1
  2142. package/dist/format/index.js +0 -21
  2143. package/dist/format/index.js.map +0 -1
  2144. package/dist/format/number.d.ts +0 -2
  2145. package/dist/format/number.d.ts.map +0 -1
  2146. package/dist/format/number.js +0 -12
  2147. package/dist/format/number.js.map +0 -1
  2148. package/dist/format/percent.d.ts.map +0 -1
  2149. package/dist/format/percent.js +0 -12
  2150. package/dist/format/percent.js.map +0 -1
  2151. package/dist/format/price.d.ts.map +0 -1
  2152. package/dist/format/price.js +0 -24
  2153. package/dist/format/price.js.map +0 -1
  2154. package/dist/gas/calculateGasMargin.d.ts +0 -2
  2155. package/dist/gas/calculateGasMargin.d.ts.map +0 -1
  2156. package/dist/gas/calculateGasMargin.js +0 -9
  2157. package/dist/gas/calculateGasMargin.js.map +0 -1
  2158. package/dist/gas/index.d.ts +0 -2
  2159. package/dist/gas/index.d.ts.map +0 -1
  2160. package/dist/gas/index.js +0 -6
  2161. package/dist/gas/index.js.map +0 -1
  2162. package/dist/index.d.ts +0 -7
  2163. package/dist/index.d.ts.map +0 -1
  2164. package/dist/index.js +0 -23
  2165. package/dist/index.js.map +0 -1
  2166. package/dist/log/index.d.ts +0 -2
  2167. package/dist/log/index.d.ts.map +0 -1
  2168. package/dist/log/index.js +0 -6
  2169. package/dist/log/index.js.map +0 -1
  2170. package/dist/log/log.d.ts.map +0 -1
  2171. package/dist/log/log.js +0 -9
  2172. package/dist/log/log.js.map +0 -1
  2173. package/dist/log/log.test.d.ts +0 -2
  2174. package/dist/log/log.test.d.ts.map +0 -1
  2175. package/dist/log/log.test.js +0 -12
  2176. package/dist/log/log.test.js.map +0 -1
  2177. package/dist/math/Big.d.ts.map +0 -1
  2178. package/dist/math/Big.js +0 -10
  2179. package/dist/math/Big.js.map +0 -1
  2180. package/dist/math/BigintIsh.d.ts.map +0 -1
  2181. package/dist/math/BigintIsh.js.map +0 -1
  2182. package/dist/math/Decimal.d.ts.map +0 -1
  2183. package/dist/math/Decimal.js +0 -9
  2184. package/dist/math/Decimal.js.map +0 -1
  2185. package/dist/math/Fraction.d.ts.map +0 -1
  2186. package/dist/math/Fraction.js +0 -123
  2187. package/dist/math/Fraction.js.map +0 -1
  2188. package/dist/math/Fraction.test.d.ts +0 -2
  2189. package/dist/math/Fraction.test.d.ts.map +0 -1
  2190. package/dist/math/Fraction.test.js +0 -88
  2191. package/dist/math/Fraction.test.js.map +0 -1
  2192. package/dist/math/Percent.d.ts.map +0 -1
  2193. package/dist/math/Percent.js +0 -47
  2194. package/dist/math/Percent.js.map +0 -1
  2195. package/dist/math/Percent.test.d.ts +0 -2
  2196. package/dist/math/Percent.test.d.ts.map +0 -1
  2197. package/dist/math/Percent.test.js +0 -57
  2198. package/dist/math/Percent.test.js.map +0 -1
  2199. package/dist/math/Rounding.d.ts.map +0 -1
  2200. package/dist/math/Rounding.js.map +0 -1
  2201. package/dist/math/constants/index.d.ts.map +0 -1
  2202. package/dist/math/constants/index.js.map +0 -1
  2203. package/dist/math/constants/numbers.d.ts.map +0 -1
  2204. package/dist/math/constants/numbers.js +0 -29
  2205. package/dist/math/constants/numbers.js.map +0 -1
  2206. package/dist/math/functions/abs.d.ts.map +0 -1
  2207. package/dist/math/functions/abs.js.map +0 -1
  2208. package/dist/math/functions/difference.d.ts.map +0 -1
  2209. package/dist/math/functions/difference.js.map +0 -1
  2210. package/dist/math/functions/index.d.ts.map +0 -1
  2211. package/dist/math/functions/index.js.map +0 -1
  2212. package/dist/math/functions/maximum.d.ts.map +0 -1
  2213. package/dist/math/functions/maximum.js +0 -20
  2214. package/dist/math/functions/maximum.js.map +0 -1
  2215. package/dist/math/functions/minimum.d.ts.map +0 -1
  2216. package/dist/math/functions/minimum.js +0 -20
  2217. package/dist/math/functions/minimum.js.map +0 -1
  2218. package/dist/math/functions/sqrt.d.ts.map +0 -1
  2219. package/dist/math/functions/sqrt.js +0 -30
  2220. package/dist/math/functions/sqrt.js.map +0 -1
  2221. package/dist/math/index.d.ts.map +0 -1
  2222. package/dist/math/index.js +0 -33
  2223. package/dist/math/index.js.map +0 -1
  2224. package/dist/types/contract.d.ts +0 -3
  2225. package/dist/types/contract.d.ts.map +0 -1
  2226. package/dist/types/contract.js.map +0 -1
  2227. package/dist/types/index.d.ts +0 -2
  2228. package/dist/types/index.d.ts.map +0 -1
  2229. package/dist/types/index.js +0 -18
  2230. package/dist/types/index.js.map +0 -1
  2231. package/dist/validate/index.d.ts +0 -4
  2232. package/dist/validate/index.d.ts.map +0 -1
  2233. package/dist/validate/index.js +0 -20
  2234. package/dist/validate/index.js.map +0 -1
  2235. package/dist/validate/isPromiseFulfilled.d.ts.map +0 -1
  2236. package/dist/validate/isPromiseFulfilled.js.map +0 -1
  2237. package/dist/validate/isPromiseRejected.d.ts.map +0 -1
  2238. package/dist/validate/isPromiseRejected.js.map +0 -1
  2239. package/dist/validate/isZero.d.ts.map +0 -1
  2240. package/dist/validate/isZero.js +0 -12
  2241. package/dist/validate/isZero.js.map +0 -1
  2242. /package/dist/{abi → _cjs/abi}/StargateFeeLibraryV03.js +0 -0
  2243. /package/dist/{abi → _cjs/abi}/StargatePool.js +0 -0
  2244. /package/dist/{abi → _cjs/abi}/balanceOfAbi.js +0 -0
  2245. /package/dist/{abi → _cjs/abi}/bentoBoxV1Abi.js +0 -0
  2246. /package/dist/{abi → _cjs/abi}/bentoBoxV1TotalsAbi.js +0 -0
  2247. /package/dist/{abi → _cjs/abi}/cloneRewarderTime.js +0 -0
  2248. /package/dist/{abi → _cjs/abi}/complexRewarderTimeAbi.js +0 -0
  2249. /package/dist/{abi → _cjs/abi}/furoStreamAbi.js +0 -0
  2250. /package/dist/{abi → _cjs/abi}/furoStreamRouterAbi.js +0 -0
  2251. /package/dist/{abi → _cjs/abi}/furoVestingAbi.js +0 -0
  2252. /package/dist/{abi → _cjs/abi}/furoVestingRouterAbi.js +0 -0
  2253. /package/dist/{abi → _cjs/abi}/gasDataArbitrumAbi.js +0 -0
  2254. /package/dist/{abi → _cjs/abi}/gasPriceOracleAbi.js +0 -0
  2255. /package/dist/{abi → _cjs/abi}/getPoolsAbi.js +0 -0
  2256. /package/dist/{abi → _cjs/abi}/getReservesAbi.js +0 -0
  2257. /package/dist/{abi → _cjs/abi}/masterChefV1Abi.js +0 -0
  2258. /package/dist/{abi → _cjs/abi}/masterChefV2Abi.js +0 -0
  2259. /package/dist/{abi → _cjs/abi}/miniChefAbi.js +0 -0
  2260. /package/dist/{abi → _cjs/abi}/multicall2Abi.js +0 -0
  2261. /package/dist/{abi → _cjs/abi}/multicall3Abi.js +0 -0
  2262. /package/dist/{abi → _cjs/abi}/nonfungiblePositionManagerAbi.js +0 -0
  2263. /package/dist/{abi → _cjs/abi}/permit2Abi.js +0 -0
  2264. /package/dist/{abi → _cjs/abi}/poolsCountAbi.js +0 -0
  2265. /package/dist/{abi → _cjs/abi}/routeProcessor2Abi.js +0 -0
  2266. /package/dist/{abi → _cjs/abi}/routeProcessor3Abi.js +0 -0
  2267. /package/dist/{abi → _cjs/abi}/routeProcessor3_1Abi.js +0 -0
  2268. /package/dist/{abi → _cjs/abi}/routeProcessorAbi.js +0 -0
  2269. /package/dist/{abi → _cjs/abi}/slot0Abi.js +0 -0
  2270. /package/dist/{abi → _cjs/abi}/sushiV3FactoryAbi.js +0 -0
  2271. /package/dist/{abi → _cjs/abi}/sushiV3PoolAbi.js +0 -0
  2272. /package/dist/{abi → _cjs/abi}/sushiXSwapAbi.js +0 -0
  2273. /package/dist/{abi → _cjs/abi}/swapFeeAbi.js +0 -0
  2274. /package/dist/{abi → _cjs/abi}/tickLensAbi.js +0 -0
  2275. /package/dist/{abi → _cjs/abi}/totalsAbi.js +0 -0
  2276. /package/dist/{abi → _cjs/abi}/tridentConstantPoolAbi.js +0 -0
  2277. /package/dist/{abi → _cjs/abi}/tridentConstantPoolFactoryAbi.js +0 -0
  2278. /package/dist/{abi → _cjs/abi}/tridentGetPoolsAbi.js +0 -0
  2279. /package/dist/{abi → _cjs/abi}/tridentPoolsCountAbi.js +0 -0
  2280. /package/dist/{abi → _cjs/abi}/tridentRouterAbi.js +0 -0
  2281. /package/dist/{abi → _cjs/abi}/tridentStablePoolAbi.js +0 -0
  2282. /package/dist/{abi → _cjs/abi}/tridentStablePoolFactoryAbi.js +0 -0
  2283. /package/dist/{abi → _cjs/abi}/tridentSwapFeeAbi.js +0 -0
  2284. /package/dist/{abi → _cjs/abi}/uniswapV2PairAbi.js +0 -0
  2285. /package/dist/{abi → _cjs/abi}/uniswapV2RouterAbi.js +0 -0
  2286. /package/dist/{abi → _cjs/abi}/v3baseAbi.js +0 -0
  2287. /package/dist/{abi → _cjs/abi}/weth9Abi.js +0 -0
  2288. /package/dist/{math → _cjs/math}/BigintIsh.js +0 -0
  2289. /package/dist/{math → _cjs/math}/Rounding.js +0 -0
  2290. /package/dist/{math → _cjs/math}/constants/index.js +0 -0
  2291. /package/dist/{math → _cjs/math}/functions/abs.js +0 -0
  2292. /package/dist/{math → _cjs/math}/functions/difference.js +0 -0
  2293. /package/dist/{math → _cjs/math}/functions/index.js +0 -0
  2294. /package/dist/{types → _cjs/types}/contract.js +0 -0
  2295. /package/dist/{validate → _cjs/validate}/isPromiseFulfilled.js +0 -0
  2296. /package/dist/{validate → _cjs/validate}/isPromiseRejected.js +0 -0
  2297. /package/dist/{abi → _types/abi}/StargateFeeLibraryV03.d.ts +0 -0
  2298. /package/dist/{abi → _types/abi}/StargatePool.d.ts +0 -0
  2299. /package/dist/{abi → _types/abi}/balanceOfAbi.d.ts +0 -0
  2300. /package/dist/{abi → _types/abi}/bentoBoxV1Abi.d.ts +0 -0
  2301. /package/dist/{abi → _types/abi}/bentoBoxV1TotalsAbi.d.ts +0 -0
  2302. /package/dist/{abi → _types/abi}/cloneRewarderTime.d.ts +0 -0
  2303. /package/dist/{abi → _types/abi}/complexRewarderTimeAbi.d.ts +0 -0
  2304. /package/dist/{abi → _types/abi}/furoStreamAbi.d.ts +0 -0
  2305. /package/dist/{abi → _types/abi}/furoStreamRouterAbi.d.ts +0 -0
  2306. /package/dist/{abi → _types/abi}/furoVestingAbi.d.ts +0 -0
  2307. /package/dist/{abi → _types/abi}/furoVestingRouterAbi.d.ts +0 -0
  2308. /package/dist/{abi → _types/abi}/gasDataArbitrumAbi.d.ts +0 -0
  2309. /package/dist/{abi → _types/abi}/gasPriceOracleAbi.d.ts +0 -0
  2310. /package/dist/{abi → _types/abi}/getPoolsAbi.d.ts +0 -0
  2311. /package/dist/{abi → _types/abi}/getReservesAbi.d.ts +0 -0
  2312. /package/dist/{abi → _types/abi}/masterChefV1Abi.d.ts +0 -0
  2313. /package/dist/{abi → _types/abi}/masterChefV2Abi.d.ts +0 -0
  2314. /package/dist/{abi → _types/abi}/miniChefAbi.d.ts +0 -0
  2315. /package/dist/{abi → _types/abi}/multicall2Abi.d.ts +0 -0
  2316. /package/dist/{abi → _types/abi}/multicall3Abi.d.ts +0 -0
  2317. /package/dist/{abi → _types/abi}/nonfungiblePositionManagerAbi.d.ts +0 -0
  2318. /package/dist/{abi → _types/abi}/permit2Abi.d.ts +0 -0
  2319. /package/dist/{abi → _types/abi}/poolsCountAbi.d.ts +0 -0
  2320. /package/dist/{abi → _types/abi}/routeProcessor2Abi.d.ts +0 -0
  2321. /package/dist/{abi → _types/abi}/routeProcessor3Abi.d.ts +0 -0
  2322. /package/dist/{abi → _types/abi}/routeProcessor3_1Abi.d.ts +0 -0
  2323. /package/dist/{abi → _types/abi}/routeProcessorAbi.d.ts +0 -0
  2324. /package/dist/{abi → _types/abi}/slot0Abi.d.ts +0 -0
  2325. /package/dist/{abi → _types/abi}/sushiV3FactoryAbi.d.ts +0 -0
  2326. /package/dist/{abi → _types/abi}/sushiV3PoolAbi.d.ts +0 -0
  2327. /package/dist/{abi → _types/abi}/sushiXSwapAbi.d.ts +0 -0
  2328. /package/dist/{abi → _types/abi}/swapFeeAbi.d.ts +0 -0
  2329. /package/dist/{abi → _types/abi}/tickLensAbi.d.ts +0 -0
  2330. /package/dist/{abi → _types/abi}/totalsAbi.d.ts +0 -0
  2331. /package/dist/{abi → _types/abi}/tridentConstantPoolAbi.d.ts +0 -0
  2332. /package/dist/{abi → _types/abi}/tridentConstantPoolFactoryAbi.d.ts +0 -0
  2333. /package/dist/{abi → _types/abi}/tridentGetPoolsAbi.d.ts +0 -0
  2334. /package/dist/{abi → _types/abi}/tridentPoolsCountAbi.d.ts +0 -0
  2335. /package/dist/{abi → _types/abi}/tridentRouterAbi.d.ts +0 -0
  2336. /package/dist/{abi → _types/abi}/tridentStablePoolAbi.d.ts +0 -0
  2337. /package/dist/{abi → _types/abi}/tridentStablePoolFactoryAbi.d.ts +0 -0
  2338. /package/dist/{abi → _types/abi}/tridentSwapFeeAbi.d.ts +0 -0
  2339. /package/dist/{abi → _types/abi}/uniswapV2PairAbi.d.ts +0 -0
  2340. /package/dist/{abi → _types/abi}/uniswapV2RouterAbi.d.ts +0 -0
  2341. /package/dist/{abi → _types/abi}/v3baseAbi.d.ts +0 -0
  2342. /package/dist/{abi → _types/abi}/weth9Abi.d.ts +0 -0
  2343. /package/dist/{calculate → _types/calculate}/gasMargin.d.ts +0 -0
  2344. /package/dist/{format → _types/format}/address.d.ts +0 -0
  2345. /package/dist/{format → _types/format}/percent.d.ts +0 -0
  2346. /package/dist/{format → _types/format}/price.d.ts +0 -0
  2347. /package/dist/{log → _types/log}/log.d.ts +0 -0
  2348. /package/dist/{math → _types/math}/Big.d.ts +0 -0
  2349. /package/dist/{math → _types/math}/BigintIsh.d.ts +0 -0
  2350. /package/dist/{math → _types/math}/Decimal.d.ts +0 -0
  2351. /package/dist/{math → _types/math}/Fraction.d.ts +0 -0
  2352. /package/dist/{math → _types/math}/Percent.d.ts +0 -0
  2353. /package/dist/{math → _types/math}/Rounding.d.ts +0 -0
  2354. /package/dist/{math → _types/math}/constants/index.d.ts +0 -0
  2355. /package/dist/{math → _types/math}/constants/numbers.d.ts +0 -0
  2356. /package/dist/{math → _types/math}/functions/abs.d.ts +0 -0
  2357. /package/dist/{math → _types/math}/functions/difference.d.ts +0 -0
  2358. /package/dist/{math → _types/math}/functions/index.d.ts +0 -0
  2359. /package/dist/{math → _types/math}/functions/maximum.d.ts +0 -0
  2360. /package/dist/{math → _types/math}/functions/minimum.d.ts +0 -0
  2361. /package/dist/{math → _types/math}/functions/sqrt.d.ts +0 -0
  2362. /package/dist/{math → _types/math}/index.d.ts +0 -0
  2363. /package/dist/{validate → _types/validate}/isPromiseFulfilled.d.ts +0 -0
  2364. /package/dist/{validate → _types/validate}/isPromiseRejected.d.ts +0 -0
  2365. /package/dist/{validate → _types/validate}/isZero.d.ts +0 -0
@@ -0,0 +1,1324 @@
1
+ import { PoolType, RPool, setTokenId } from './RPool.js';
2
+ import { StableSwapRPool } from './StableSwapPool.js';
3
+ import { ASSERT, DEBUG, closeValues, fastArrayMerge, getBigInt, } from './Utils.js';
4
+ const ROUTER_DISTRIBUTION_PORTION = 65535;
5
+ export var RouteStatus;
6
+ (function (RouteStatus) {
7
+ RouteStatus["Success"] = "Success";
8
+ RouteStatus["NoWay"] = "NoWay";
9
+ RouteStatus["Partial"] = "Partial";
10
+ })(RouteStatus || (RouteStatus = {}));
11
+ export function NoWayMultiRoute(from, to) {
12
+ return {
13
+ status: RouteStatus.NoWay,
14
+ fromToken: from,
15
+ toToken: to,
16
+ amountIn: 0,
17
+ amountInBI: 0n,
18
+ amountOut: 0,
19
+ amountOutBI: 0n,
20
+ legs: [],
21
+ gasSpent: 0,
22
+ totalAmountOut: 0,
23
+ totalAmountOutBI: 0n,
24
+ primaryPrice: undefined,
25
+ swapPrice: undefined,
26
+ priceImpact: undefined,
27
+ };
28
+ }
29
+ export class Edge {
30
+ constructor(p, v0, v1) {
31
+ this.pool = p;
32
+ this.vert0 = v0;
33
+ this.vert1 = v1;
34
+ this.amountInPrevious = 0;
35
+ this.amountOutPrevious = 0;
36
+ this.canBeUsed = true;
37
+ this.direction = true;
38
+ this.spentGas = 0;
39
+ this.spentGasNew = 0;
40
+ this.bestEdgeIncome = 0;
41
+ }
42
+ cleanTmpData() {
43
+ this.amountInPrevious = 0;
44
+ this.amountOutPrevious = 0;
45
+ this.canBeUsed = true;
46
+ this.direction = true;
47
+ this.spentGas = 0;
48
+ this.spentGasNew = 0;
49
+ this.bestEdgeIncome = 0;
50
+ this.pool.cleanTmpData();
51
+ }
52
+ reserve(v) {
53
+ return v === this.vert0 ? this.pool.getReserve0() : this.pool.getReserve1();
54
+ }
55
+ calcOutput(v, amountIn) {
56
+ let res;
57
+ let gas;
58
+ if (v === this.vert1) {
59
+ if (this.direction) {
60
+ if (amountIn < this.amountOutPrevious) {
61
+ const { inp, gasSpent } = this.pool.calcInByOut(this.amountOutPrevious - amountIn, true);
62
+ res = this.amountInPrevious - inp;
63
+ gas = gasSpent;
64
+ }
65
+ else {
66
+ const { out, gasSpent } = this.pool.calcOutByIn(amountIn - this.amountOutPrevious, false);
67
+ res = out + this.amountInPrevious;
68
+ gas = gasSpent;
69
+ }
70
+ }
71
+ else {
72
+ const { out, gasSpent } = this.pool.calcOutByIn(this.amountOutPrevious + amountIn, false);
73
+ res = out - this.amountInPrevious;
74
+ gas = gasSpent;
75
+ }
76
+ }
77
+ else {
78
+ if (this.direction) {
79
+ const { out, gasSpent } = this.pool.calcOutByIn(this.amountInPrevious + amountIn, true);
80
+ res = out - this.amountOutPrevious;
81
+ gas = gasSpent;
82
+ }
83
+ else {
84
+ if (amountIn < this.amountInPrevious) {
85
+ const { inp, gasSpent } = this.pool.calcInByOut(this.amountInPrevious - amountIn, false);
86
+ res = this.amountOutPrevious - inp;
87
+ gas = gasSpent;
88
+ }
89
+ else {
90
+ const { out, gasSpent } = this.pool.calcOutByIn(amountIn - this.amountInPrevious, true);
91
+ res = out + this.amountOutPrevious;
92
+ gas = gasSpent;
93
+ }
94
+ }
95
+ }
96
+ // this.testApply(v, amountIn, out);
97
+ return { out: res, gasSpent: gas - this.spentGas };
98
+ }
99
+ calcInput(v, amountOut) {
100
+ let res;
101
+ let gas;
102
+ if (v === this.vert1) {
103
+ if (!this.direction) {
104
+ if (amountOut < this.amountOutPrevious) {
105
+ const { out, gasSpent } = this.pool.calcOutByIn(this.amountOutPrevious - amountOut, false);
106
+ res = this.amountInPrevious - out;
107
+ gas = gasSpent;
108
+ }
109
+ else {
110
+ const { inp, gasSpent } = this.pool.calcInByOut(amountOut - this.amountOutPrevious, true);
111
+ res = inp + this.amountInPrevious;
112
+ gas = gasSpent;
113
+ }
114
+ }
115
+ else {
116
+ const { inp, gasSpent } = this.pool.calcInByOut(this.amountOutPrevious + amountOut, true);
117
+ res = inp - this.amountInPrevious;
118
+ gas = gasSpent;
119
+ }
120
+ }
121
+ else {
122
+ if (!this.direction) {
123
+ const { inp, gasSpent } = this.pool.calcInByOut(this.amountInPrevious + amountOut, false);
124
+ res = inp - this.amountOutPrevious;
125
+ gas = gasSpent;
126
+ }
127
+ else {
128
+ if (amountOut < this.amountInPrevious) {
129
+ const { out, gasSpent } = this.pool.calcOutByIn(this.amountInPrevious - amountOut, true);
130
+ res = this.amountOutPrevious - out;
131
+ gas = gasSpent;
132
+ }
133
+ else {
134
+ const { inp, gasSpent } = this.pool.calcInByOut(amountOut - this.amountInPrevious, false);
135
+ res = inp + this.amountOutPrevious;
136
+ gas = gasSpent;
137
+ }
138
+ }
139
+ }
140
+ // this.testApply(v, amountIn, out);
141
+ return { inp: res, gasSpent: gas - this.spentGas };
142
+ }
143
+ checkMinimalLiquidityExceededAfterSwap(from, amountOut) {
144
+ if (from === this.vert0) {
145
+ const r1 = parseInt(this.pool.getReserve1().toString());
146
+ if (this.direction) {
147
+ return r1 - amountOut - this.amountOutPrevious < this.pool.minLiquidity;
148
+ }
149
+ else {
150
+ return r1 - amountOut + this.amountOutPrevious < this.pool.minLiquidity;
151
+ }
152
+ }
153
+ else {
154
+ const r0 = parseInt(this.pool.getReserve0().toString());
155
+ if (this.direction) {
156
+ return r0 - amountOut + this.amountInPrevious < this.pool.minLiquidity;
157
+ }
158
+ else {
159
+ return r0 - amountOut - this.amountInPrevious < this.pool.minLiquidity;
160
+ }
161
+ }
162
+ }
163
+ // doesn't used in production - just for testing
164
+ testApply(from, amountIn, amountOut) {
165
+ console.assert(this.amountInPrevious * this.amountOutPrevious >= 0);
166
+ const inPrev = this.direction
167
+ ? this.amountInPrevious
168
+ : -this.amountInPrevious;
169
+ const outPrev = this.direction
170
+ ? this.amountOutPrevious
171
+ : -this.amountOutPrevious;
172
+ const to = from.getNeibour(this);
173
+ let directionNew;
174
+ let amountInNew = 0;
175
+ let amountOutNew = 0;
176
+ if (to) {
177
+ const inInc = from === this.vert0 ? amountIn : -amountOut;
178
+ const outInc = from === this.vert0 ? amountOut : -amountIn;
179
+ const inNew = inPrev + inInc;
180
+ const outNew = outPrev + outInc;
181
+ console.assert(inNew * outNew >= 0);
182
+ if (inNew >= 0) {
183
+ directionNew = true;
184
+ amountInNew = inNew;
185
+ amountOutNew = outNew;
186
+ }
187
+ else {
188
+ directionNew = false;
189
+ amountInNew = -inNew;
190
+ amountOutNew = -outNew;
191
+ }
192
+ }
193
+ else
194
+ console.error('Error 221');
195
+ if (directionNew) {
196
+ const calc = this.pool.calcOutByIn(amountInNew, true).out;
197
+ const res = closeValues(amountOutNew, calc, 1e-6);
198
+ if (!res)
199
+ console.log('Err 225-1 !!', amountOutNew, calc, Math.abs(calc / amountOutNew - 1));
200
+ return res;
201
+ }
202
+ else {
203
+ const calc = this.pool.calcOutByIn(amountOutNew, false).out;
204
+ const res = closeValues(amountInNew, calc, 1e-6);
205
+ if (!res)
206
+ console.log('Err 225-2!!', amountInNew, calc, Math.abs(calc / amountInNew - 1));
207
+ return res;
208
+ }
209
+ }
210
+ applySwap(from) {
211
+ console.assert(this.amountInPrevious * this.amountOutPrevious >= 0);
212
+ const inPrev = this.direction
213
+ ? this.amountInPrevious
214
+ : -this.amountInPrevious;
215
+ const outPrev = this.direction
216
+ ? this.amountOutPrevious
217
+ : -this.amountOutPrevious;
218
+ const to = from.getNeibour(this);
219
+ const inInc = from === this.vert0 ? from.bestIncome : -to.bestIncome;
220
+ const outInc = from === this.vert0 ? to.bestIncome : -from.bestIncome;
221
+ const inNew = inPrev + inInc;
222
+ const outNew = outPrev + outInc;
223
+ console.assert(inNew * outNew >= 0);
224
+ if (inNew >= 0) {
225
+ this.direction = true;
226
+ this.amountInPrevious = inNew;
227
+ this.amountOutPrevious = outNew;
228
+ }
229
+ else {
230
+ this.direction = false;
231
+ this.amountInPrevious = -inNew;
232
+ this.amountOutPrevious = -outNew;
233
+ }
234
+ this.pool.setCurrentFlow(inNew, -outNew, this.spentGasNew);
235
+ this.spentGas = this.spentGasNew;
236
+ ASSERT(() => {
237
+ let precision = Math.max(1 / this.amountOutPrevious, 1 / this.amountInPrevious, 1e-9);
238
+ if (precision === Infinity)
239
+ precision = 1e-9;
240
+ if (this.pool instanceof StableSwapRPool) {
241
+ let price = this.pool.calcCurrentPriceWithoutFee(true);
242
+ if (price < 1)
243
+ price = 1 / price;
244
+ if (price > 1e8) {
245
+ // precision degradation for extreme conditions. Almost impossible situation in production
246
+ precision = 2e-3;
247
+ }
248
+ }
249
+ // if (this.pool instanceof CurveMultitokenPool)
250
+ // console.log(this.amountInPrevious, this.amountOutPrevious, this.direction, this.pool.flow0, this.pool.flow1)
251
+ if (this.direction) {
252
+ const granularity = this.pool.granularity1();
253
+ return closeValues(this.amountOutPrevious / granularity, this.pool.calcOutByIn(this.amountInPrevious, this.direction).out /
254
+ granularity, precision);
255
+ }
256
+ else {
257
+ const granularity = this.pool.granularity0();
258
+ return closeValues(this.amountInPrevious / granularity, this.pool.calcOutByIn(this.amountOutPrevious, this.direction).out /
259
+ granularity, precision);
260
+ }
261
+ }, 'Error 225');
262
+ }
263
+ }
264
+ export class Vertice {
265
+ constructor(t) {
266
+ this.token = t;
267
+ setTokenId(this.token);
268
+ this.edges = [];
269
+ this.price = 0;
270
+ this.gasPrice = 0;
271
+ this.bestIncome = 0;
272
+ this.gasSpent = 0;
273
+ this.bestTotal = 0;
274
+ this.bestSource = undefined;
275
+ this.checkLine = -1;
276
+ }
277
+ cleanTmpData() {
278
+ this.bestIncome = 0;
279
+ this.gasSpent = 0;
280
+ this.bestTotal = 0;
281
+ this.bestSource = undefined;
282
+ this.checkLine = -1;
283
+ }
284
+ getNeibour(e) {
285
+ if (!e)
286
+ return undefined;
287
+ return e.vert0 === this ? e.vert1 : e.vert0;
288
+ }
289
+ getOutputEdges() {
290
+ return this.edges.filter((e) => {
291
+ if (!e.canBeUsed)
292
+ return false;
293
+ if (e.amountInPrevious === 0)
294
+ return false;
295
+ if (e.direction !== (e.vert0 === this))
296
+ return false;
297
+ return true;
298
+ });
299
+ }
300
+ getInputEdges() {
301
+ return this.edges.filter((e) => {
302
+ if (!e.canBeUsed)
303
+ return false;
304
+ if (e.amountInPrevious === 0)
305
+ return false;
306
+ if (e.direction === (e.vert0 === this))
307
+ return false;
308
+ return true;
309
+ });
310
+ }
311
+ }
312
+ export class Graph {
313
+ // Single network usage: (pools, baseToken, gasPrice)
314
+ // Multiple Network usage: (pools, networks)
315
+ constructor(pools, start, baseTokenOrNetworks, gasPriceSingleNetwork, minPriceLiquidity = 0, trustedForPricingTokens, priceLogging = false) {
316
+ const networks = Array.isArray(baseTokenOrNetworks)
317
+ ? baseTokenOrNetworks
318
+ : [
319
+ {
320
+ chainId: baseTokenOrNetworks.chainId,
321
+ baseToken: baseTokenOrNetworks,
322
+ //baseTokenPrice: 1,
323
+ gasPrice: gasPriceSingleNetwork || 0,
324
+ },
325
+ ];
326
+ setTokenId(...networks.map((n) => n.baseToken));
327
+ this.vertices = [];
328
+ this.edges = [];
329
+ this.tokens = new Map();
330
+ pools.forEach((p) => {
331
+ const v0 = this.getOrCreateVertice(p.token0);
332
+ const v1 = this.getOrCreateVertice(p.token1);
333
+ const edge = new Edge(p, v0, v1);
334
+ v0.edges.push(edge);
335
+ v1.edges.push(edge);
336
+ this.edges.push(edge);
337
+ });
338
+ // networks.forEach((n) => {
339
+ // const baseVert = this.getVert(n.baseToken)
340
+ // if (baseVert) {
341
+ // this.setPricesStable(baseVert, n.baseTokenPrice, n.gasPrice, true)
342
+ // }
343
+ // })
344
+ // Lets try to price from the first trusted token first
345
+ const startToken = trustedForPricingTokens
346
+ ? trustedForPricingTokens[0] ?? start
347
+ : start;
348
+ setTokenId(startToken);
349
+ const startV = this.getVert(startToken);
350
+ if (startV !== undefined)
351
+ this.setPricesStable(startV, 1, networks, minPriceLiquidity, trustedForPricingTokens, priceLogging);
352
+ }
353
+ getVert(t) {
354
+ return this.tokens.get(t.tokenId);
355
+ }
356
+ cleanTmpData() {
357
+ this.edges.forEach((e) => e.cleanTmpData());
358
+ this.vertices.forEach((v) => v.cleanTmpData());
359
+ }
360
+ // Set prices using greedy algorithm
361
+ setPricesStable(from, price, networks, minLiquidity = 0, trustedTokens, logging = false) {
362
+ const processedVert = new Set();
363
+ let nextEdges = [];
364
+ const trustedTokensSet = new Set(trustedTokens?.map((t) => t.address) ?? []);
365
+ if (trustedTokens)
366
+ trustedTokensSet.add(from.token.address);
367
+ function addVertice(v, price) {
368
+ v.price = price;
369
+ processedVert.add(v);
370
+ if (trustedTokens && !trustedTokensSet.has(v.token.address))
371
+ return;
372
+ const newEdges = v.edges
373
+ .filter((e) => !processedVert.has(v.getNeibour(e)))
374
+ .map((e) => {
375
+ const liquidity = price * Number(e.reserve(v));
376
+ return [liquidity, e];
377
+ })
378
+ .filter(([liquidity, e]) => e.pool.alwaysAppropriateForPricing() ||
379
+ (liquidity >= minLiquidity && e.pool.isPoolAppropriateForPricing()));
380
+ nextEdges = fastArrayMerge(nextEdges, newEdges);
381
+ }
382
+ if (logging)
383
+ console.log(`Pricing: Initial token ${from.token.symbol} price=${price}`);
384
+ addVertice(from, price);
385
+ while (nextEdges.length > 0) {
386
+ const [liquidity, bestEdge] = nextEdges.pop();
387
+ const [vFrom, vTo] = processedVert.has(bestEdge.vert1)
388
+ ? [bestEdge.vert1, bestEdge.vert0]
389
+ : [bestEdge.vert0, bestEdge.vert1];
390
+ if (processedVert.has(vTo))
391
+ continue;
392
+ const p = bestEdge.pool.calcCurrentPriceWithoutFee(vFrom === bestEdge.vert1);
393
+ if (logging)
394
+ console.log(`Pricing: + Token ${vTo.token.symbol} price=${vFrom.price * p}` +
395
+ ` from ${vFrom.token.symbol} pool=${bestEdge.pool.address} liquidity=${liquidity}`);
396
+ addVertice(vTo, vFrom.price * p);
397
+ }
398
+ const gasPrice = new Map();
399
+ networks.forEach((n) => {
400
+ const vPrice = this.getVert(n.baseToken)?.price || 0;
401
+ gasPrice.set(n.chainId, n.gasPrice * vPrice);
402
+ });
403
+ processedVert.forEach((v) => {
404
+ const gasPriceChainId = gasPrice.get(v.token.chainId);
405
+ if (gasPriceChainId === undefined)
406
+ console.error(`Error 427: token {${v.token.address} ${v.token.symbol}}` +
407
+ ` has unknown chainId ${v.token.chainId} (${typeof v.token
408
+ .chainId}).` +
409
+ `Known chainIds: ${Array.from(gasPrice.keys()).map((k) => `"${k}"(${typeof k})`)}`);
410
+ if (v.price === 0)
411
+ console.error(`Error 428: token {${v.token.address} ${v.token.symbol} ${v.token.chainId}} was not priced`);
412
+ v.gasPrice = gasPriceChainId / v.price;
413
+ });
414
+ }
415
+ getPriceReasoning(from, price, token, minLiquidity = 0, trustedTokens) {
416
+ const processedVert = new Set();
417
+ const vertToPricingInfo = new Map();
418
+ let nextEdges = [];
419
+ const trustedTokensSet = new Set(trustedTokens?.map((t) => t.address) ?? []);
420
+ if (trustedTokens)
421
+ trustedTokensSet.add(from.address);
422
+ function addVertice(parent, v, price, poolPrice, liquidity, edge) {
423
+ processedVert.add(v);
424
+ vertToPricingInfo.set(v, {
425
+ parent: vertToPricingInfo.get(parent),
426
+ vert: v,
427
+ price,
428
+ poolPrice,
429
+ liquidity,
430
+ edge,
431
+ });
432
+ if (trustedTokens && !trustedTokensSet.has(v.token.address))
433
+ return;
434
+ const newEdges = v.edges
435
+ .filter((e) => !processedVert.has(v.getNeibour(e)))
436
+ .map((e) => {
437
+ const liquidity = price * Number(e.reserve(v));
438
+ return [liquidity, e];
439
+ })
440
+ .filter(([liquidity, e]) => e.pool.alwaysAppropriateForPricing() ||
441
+ (liquidity >= minLiquidity && e.pool.isPoolAppropriateForPricing()));
442
+ nextEdges = fastArrayMerge(nextEdges, newEdges);
443
+ }
444
+ setTokenId(from);
445
+ addVertice(undefined, this.tokens.get(from.tokenId), price / 10 ** from.decimals, 1, 0, undefined);
446
+ while (nextEdges.length > 0) {
447
+ const [liquidity, bestEdge] = nextEdges.pop();
448
+ const [vFrom, vTo] = processedVert.has(bestEdge.vert1)
449
+ ? [bestEdge.vert1, bestEdge.vert0]
450
+ : [bestEdge.vert0, bestEdge.vert1];
451
+ if (processedVert.has(vTo))
452
+ continue;
453
+ const p = bestEdge.pool.calcCurrentPriceWithoutFee(vFrom === bestEdge.vert1);
454
+ const pPrice = vertToPricingInfo.get(vFrom)?.price;
455
+ addVertice(vFrom, vTo, pPrice * p, p, liquidity, bestEdge);
456
+ if (vTo.token.address === token) {
457
+ const lines = [];
458
+ let t = vertToPricingInfo.get(vTo);
459
+ while (t !== undefined) {
460
+ const dec = t.vert.token.decimals;
461
+ const parentDecExp = t.parent?.vert.token.decimals ?? dec;
462
+ lines.push(`Token ${t.vert.token.symbol} (${t.vert.token.address}) price is ${t.price * 10 ** dec}$`);
463
+ if (t.edge !== undefined) {
464
+ lines.push(`Pool ${t.edge.pool.address} liquidity ${Math.round(t.liquidity)}$ price ${(t.poolPrice / 10 ** parentDecExp) * 10 ** dec}`);
465
+ }
466
+ t = t.parent;
467
+ }
468
+ return lines.reverse();
469
+ }
470
+ }
471
+ return ['Token is not priced'];
472
+ }
473
+ // Set prices using greedy algorithm
474
+ setPricesStableInsideChain(from, price, gasPrice) {
475
+ const processedVert = new Set();
476
+ let nextEdges = [];
477
+ const edgeValues = new Map();
478
+ const value = (e) => edgeValues.get(e);
479
+ function addVertice(v, price, gasPrice) {
480
+ v.price = price;
481
+ v.gasPrice = gasPrice;
482
+ const newEdges = v.edges.filter((e) => {
483
+ const newV = v.getNeibour(e);
484
+ return (newV?.token.chainId === v.token.chainId &&
485
+ !processedVert.has(v.getNeibour(e)));
486
+ });
487
+ newEdges.forEach((e) => edgeValues.set(e, price * parseInt(e.reserve(v).toString())));
488
+ newEdges.sort((e1, e2) => value(e1) - value(e2));
489
+ const res = [];
490
+ while (nextEdges.length && newEdges.length) {
491
+ if (value(nextEdges[0]) < value(newEdges[0]))
492
+ res.push(nextEdges.shift());
493
+ else
494
+ res.push(newEdges.shift());
495
+ }
496
+ nextEdges = [...res, ...nextEdges, ...newEdges];
497
+ processedVert.add(v);
498
+ }
499
+ addVertice(from, price, gasPrice);
500
+ while (nextEdges.length > 0) {
501
+ const bestEdge = nextEdges.pop();
502
+ const [vFrom, vTo] = processedVert.has(bestEdge.vert1)
503
+ ? [bestEdge.vert1, bestEdge.vert0]
504
+ : [bestEdge.vert0, bestEdge.vert1];
505
+ if (processedVert.has(vTo))
506
+ continue;
507
+ const p = bestEdge.pool.calcCurrentPriceWithoutFee(vFrom === bestEdge.vert1);
508
+ addVertice(vTo, vFrom.price * p, vFrom.gasPrice / p);
509
+ }
510
+ }
511
+ // Set prices by search in depth
512
+ setPrices(from, price, gasPrice) {
513
+ if (from.price !== 0)
514
+ return;
515
+ from.price = price;
516
+ from.gasPrice = gasPrice;
517
+ const edges = from.edges
518
+ .map((e) => [e, parseInt(e.reserve(from).toString())])
519
+ .sort(([, r1], [, r2]) => r2 - r1);
520
+ edges.forEach(([e]) => {
521
+ const v = e.vert0 === from ? e.vert1 : e.vert0;
522
+ if (v.price !== 0)
523
+ return;
524
+ const p = e.pool.calcCurrentPriceWithoutFee(from === e.vert1);
525
+ this.setPrices(v, price * p, gasPrice / p);
526
+ });
527
+ }
528
+ getOrCreateVertice(token) {
529
+ let vert = this.getVert(token);
530
+ if (vert)
531
+ return vert;
532
+ vert = new Vertice(token);
533
+ this.vertices.push(vert);
534
+ this.tokens.set(token.tokenId, vert);
535
+ return vert;
536
+ }
537
+ /*exportPath(from: RToken, to: RToken) {
538
+
539
+ const fromVert = this.getVert(from) as Vertice
540
+ const toVert = this.getVert(to) as Vertice
541
+ const initValue = (fromVert.bestIncome * fromVert.price) / toVert.price
542
+
543
+ const route = new Set<Edge>()
544
+ for (let v = toVert; v !== fromVert; v = v.getNeibour(v.bestSource) as Vertice) {
545
+ if (v.bestSource) route.add(v.bestSource)
546
+ }
547
+
548
+ function edgeStyle(e: Edge) {
549
+ const finish = e.vert1.bestSource === e
550
+ const start = e.vert0.bestSource === e
551
+ let label
552
+ if (e.bestEdgeIncome === -1) label = 'label: "low_liq"'
553
+ if (e.bestEdgeIncome !== 0) label = `label: "${print((e.bestEdgeIncome / initValue - 1) * 100, 3)}%"`
554
+ const edgeValue = route.has(e) ? 'value: 2' : undefined
555
+ let arrow
556
+ if (finish && start) arrow = 'arrows: "from,to"'
557
+ if (finish) arrow = 'arrows: "to"'
558
+ if (start) arrow = 'arrows: "from"'
559
+ return ['', label, edgeValue, arrow].filter((a) => a !== undefined).join(', ')
560
+ }
561
+
562
+ function print(n: number, digits: number) {
563
+ let out
564
+ if (n === 0) out = '0'
565
+ else {
566
+ const n0 = n > 0 ? n : -n
567
+ const shift = digits - Math.ceil(Math.log(n0) / Math.LN10)
568
+ if (shift <= 0) out = `${Math.round(n0)}`
569
+ else {
570
+ const mult = Math.pow(10, shift)
571
+ out = `${Math.round(n0 * mult) / mult}`
572
+ }
573
+ if (n < 0) out = -out
574
+ }
575
+ return out
576
+ }
577
+
578
+ function nodeLabel(v: Vertice) {
579
+ const value = (v.bestIncome * v.price) / toVert.price
580
+ const income = `${print(value, 3)}`
581
+ const total = `${print(v.bestTotal, 3)}`
582
+ // const income = `${print((value/initValue-1)*100, 3)}%`
583
+ // const total = `${print((v.bestTotal/initValue-1)*100, 3)}%`
584
+ const checkLine = v.checkLine === -1 ? undefined : `${v.checkLine}`
585
+ return [checkLine, income, total].filter((a) => a !== undefined).join(':')
586
+ }
587
+
588
+ const nodes = `var nodes = new vis.DataSet([
589
+ ${this.vertices.map((t) => `{ id: ${t.token.name}, label: "${nodeLabel(t)}"}`).join(',\n\t\t')}
590
+ ]);\n`
591
+ const edges = `var edges = new vis.DataSet([
592
+ ${this.edges
593
+ .map((p) => `{ from: ${p.vert0.token.name}, to: ${p.vert1.token.name}${edgeStyle(p)}}`)
594
+ .join(',\n\t\t')}
595
+ ]);\n`
596
+ const data = `var data = {
597
+ nodes: nodes,
598
+ edges: edges,
599
+ };\n`
600
+
601
+ // TODO: This should be removed, this pacakge will not be installable on a client while this remains.
602
+ const fs = require("fs");
603
+ fs.writeFileSync(
604
+ "D:/Info/Notes/GraphVisualization/data.js",
605
+ nodes + edges + data
606
+ );
607
+ }*/
608
+ findBestPathExactIn(from, to, amountIn) {
609
+ const start = this.getVert(from);
610
+ const finish = this.getVert(to);
611
+ if (!start || !finish || Number.isNaN(finish.price))
612
+ return undefined;
613
+ this.edges.forEach((e) => {
614
+ e.bestEdgeIncome = 0;
615
+ e.spentGasNew = 0;
616
+ });
617
+ this.vertices.forEach((v) => {
618
+ v.bestIncome = 0;
619
+ v.gasSpent = 0;
620
+ v.bestTotal = 0;
621
+ v.bestSource = undefined;
622
+ v.checkLine = -1;
623
+ });
624
+ start.bestIncome = amountIn;
625
+ start.bestTotal = amountIn;
626
+ const processedVert = new Set();
627
+ const nextVertList = [start]; // TODO: Use sorted Set!
628
+ let debug_info = '';
629
+ let checkLine = 0;
630
+ for (;;) {
631
+ let closestVert;
632
+ let closestTotal;
633
+ let closestPosition = 0;
634
+ nextVertList.forEach((v, i) => {
635
+ if (closestTotal === undefined || v.bestTotal > closestTotal) {
636
+ closestTotal = v.bestTotal;
637
+ closestVert = v;
638
+ closestPosition = i;
639
+ }
640
+ });
641
+ if (!closestVert)
642
+ return undefined;
643
+ closestVert.checkLine = checkLine++;
644
+ if (closestVert === finish) {
645
+ const bestPath = [];
646
+ for (let v = finish; v?.bestSource; v = v.getNeibour(v.bestSource)) {
647
+ bestPath.unshift(v.bestSource);
648
+ }
649
+ DEBUG(() => console.log(debug_info));
650
+ return {
651
+ path: bestPath,
652
+ output: finish.bestIncome,
653
+ gasSpent: finish.gasSpent,
654
+ totalOutput: finish.bestTotal,
655
+ };
656
+ }
657
+ nextVertList.splice(closestPosition, 1);
658
+ closestVert.edges.forEach((e) => {
659
+ const v2 = closestVert === e.vert0 ? e.vert1 : e.vert0;
660
+ if (processedVert.has(v2))
661
+ return;
662
+ // multitoken pool protection. Don't use two pools from one multipool in one path (but is possible in
663
+ // different paths => in one route). It is not better then use one pool (For curve at least)
664
+ // and it is calculated wrong (with no flow applying)
665
+ if (e.pool.address === closestVert.bestSource?.pool.address)
666
+ return;
667
+ let newIncome;
668
+ let gas;
669
+ try {
670
+ const { out, gasSpent } = e.calcOutput(closestVert, closestVert.bestIncome);
671
+ if (!Number.isFinite(out) || !Number.isFinite(gasSpent))
672
+ // Math errors protection
673
+ return;
674
+ newIncome = out;
675
+ gas = gasSpent;
676
+ }
677
+ catch (_err) {
678
+ // Any arithmetic error or out-of-liquidity
679
+ e.bestEdgeIncome = -1;
680
+ return;
681
+ }
682
+ // if (e.checkMinimalLiquidityExceededAfterSwap(closestVert as Vertice, newIncome)) {
683
+ // e.bestEdgeIncome = -1
684
+ // return
685
+ // }
686
+ const newGasSpent = closestVert.gasSpent + gas;
687
+ const price = v2.price / finish.price;
688
+ const gasPrice = v2.gasPrice * price;
689
+ const newTotal = newIncome * price - newGasSpent * gasPrice;
690
+ console.assert(e.bestEdgeIncome === 0, 'Error 373');
691
+ e.bestEdgeIncome = newIncome * price;
692
+ e.spentGasNew = e.spentGas + gas;
693
+ if (!v2.bestSource)
694
+ nextVertList.push(v2);
695
+ if (!v2.bestSource || newTotal > v2.bestTotal) {
696
+ DEBUG(() => {
697
+ const st = closestVert?.token === from ? '*' : '';
698
+ const fn = v2?.token === to ? '*' : '';
699
+ debug_info += `${st}${closestVert?.token.name}->${v2.token.name}${fn} ${v2.bestIncome} -> ${newIncome}\n`;
700
+ });
701
+ v2.bestIncome = newIncome;
702
+ v2.gasSpent = newGasSpent;
703
+ v2.bestTotal = newTotal;
704
+ v2.bestSource = e;
705
+ }
706
+ });
707
+ processedVert.add(closestVert);
708
+ }
709
+ }
710
+ findBestPathExactOut(from, to, amountOut) {
711
+ const start = this.getVert(to);
712
+ const finish = this.getVert(from);
713
+ if (!start || !finish)
714
+ return undefined;
715
+ this.edges.forEach((e) => {
716
+ e.bestEdgeIncome = 0;
717
+ e.spentGasNew = 0;
718
+ });
719
+ this.vertices.forEach((v) => {
720
+ v.bestIncome = 0;
721
+ v.gasSpent = 0;
722
+ v.bestTotal = 0;
723
+ v.bestSource = undefined;
724
+ v.checkLine = -1;
725
+ });
726
+ start.bestIncome = amountOut;
727
+ start.bestTotal = amountOut;
728
+ const processedVert = new Set();
729
+ const nextVertList = [start]; // TODO: Use sorted Set!
730
+ let debug_info = '';
731
+ let checkLine = 0;
732
+ for (;;) {
733
+ let closestVert;
734
+ let closestTotal;
735
+ let closestPosition = 0;
736
+ nextVertList.forEach((v, i) => {
737
+ if (closestTotal === undefined || v.bestTotal < closestTotal) {
738
+ closestTotal = v.bestTotal;
739
+ closestVert = v;
740
+ closestPosition = i;
741
+ }
742
+ });
743
+ if (!closestVert)
744
+ return undefined;
745
+ closestVert.checkLine = checkLine++;
746
+ if (closestVert === finish) {
747
+ const bestPath = [];
748
+ for (let v = finish; v?.bestSource; v = v.getNeibour(v.bestSource)) {
749
+ bestPath.push(v.bestSource);
750
+ }
751
+ DEBUG(() => console.log(debug_info));
752
+ return {
753
+ path: bestPath,
754
+ input: finish.bestIncome,
755
+ gasSpent: finish.gasSpent,
756
+ totalInput: finish.bestTotal,
757
+ };
758
+ }
759
+ nextVertList.splice(closestPosition, 1);
760
+ closestVert.edges.forEach((e) => {
761
+ const v2 = closestVert === e.vert0 ? e.vert1 : e.vert0;
762
+ if (processedVert.has(v2))
763
+ return;
764
+ let newIncome;
765
+ let gas;
766
+ try {
767
+ const { inp, gasSpent } = e.calcInput(closestVert, closestVert.bestIncome);
768
+ if (!Number.isFinite(inp) || !Number.isFinite(gasSpent))
769
+ // Math errors protection
770
+ return;
771
+ if (inp < 0)
772
+ return; // No enouph liquidity in the pool
773
+ newIncome = inp;
774
+ gas = gasSpent;
775
+ }
776
+ catch (_e) {
777
+ // Any arithmetic error or out-of-liquidity
778
+ return;
779
+ }
780
+ const newGasSpent = closestVert.gasSpent + gas;
781
+ const price = v2.price / finish.price;
782
+ const gasPrice = v2.gasPrice * price;
783
+ const newTotal = newIncome * price + newGasSpent * gasPrice;
784
+ console.assert(e.bestEdgeIncome === 0, 'Error 373');
785
+ e.bestEdgeIncome = newIncome * price;
786
+ e.spentGasNew = e.spentGas + gas;
787
+ if (!v2.bestSource)
788
+ nextVertList.push(v2);
789
+ if (!v2.bestSource || newTotal < v2.bestTotal) {
790
+ DEBUG(() => {
791
+ const st = v2?.token === from ? '*' : '';
792
+ const fn = closestVert?.token === to ? '*' : '';
793
+ debug_info += `${st}${closestVert?.token.name}<-${v2.token.name}${fn} ${v2.bestIncome} -> ${newIncome}\n`;
794
+ });
795
+ v2.bestIncome = newIncome;
796
+ v2.gasSpent = newGasSpent;
797
+ v2.bestTotal = newTotal;
798
+ v2.bestSource = e;
799
+ }
800
+ });
801
+ processedVert.add(closestVert);
802
+ }
803
+ }
804
+ addPath(from, to, path) {
805
+ let _from = from;
806
+ path.forEach((e) => {
807
+ if (_from) {
808
+ e.applySwap(_from);
809
+ _from = _from.getNeibour(e);
810
+ }
811
+ else {
812
+ console.error('Unexpected 315');
813
+ }
814
+ });
815
+ ASSERT(() => {
816
+ const res = this.vertices.every((v) => {
817
+ let total = 0;
818
+ let totalModule = 0;
819
+ v.edges.forEach((e) => {
820
+ if (e.vert0 === v) {
821
+ if (e.direction) {
822
+ total -= e.amountInPrevious;
823
+ }
824
+ else {
825
+ total += e.amountInPrevious;
826
+ }
827
+ totalModule += e.amountInPrevious;
828
+ }
829
+ else {
830
+ if (e.direction) {
831
+ total += e.amountOutPrevious;
832
+ }
833
+ else {
834
+ total -= e.amountOutPrevious;
835
+ }
836
+ totalModule += e.amountOutPrevious;
837
+ }
838
+ });
839
+ if (v === from)
840
+ return total <= 0;
841
+ if (v === to)
842
+ return total >= 0;
843
+ if (totalModule === 0)
844
+ return total === 0;
845
+ return Math.abs(total / totalModule) < 1e10;
846
+ });
847
+ return res;
848
+ }, 'Error 290');
849
+ }
850
+ getPrimaryPriceForPath(from, path) {
851
+ let p = 1;
852
+ let prevToken = from;
853
+ path.forEach((edge) => {
854
+ const direction = edge.vert0 === prevToken;
855
+ const edgePrice = edge.pool.calcCurrentPriceWithoutFee(direction);
856
+ p *= edgePrice;
857
+ prevToken = prevToken.getNeibour(edge);
858
+ });
859
+ return p;
860
+ }
861
+ findBestRouteExactIn(from, to, amountIn, mode) {
862
+ let amountInBI;
863
+ if (typeof amountIn === 'bigint') {
864
+ amountInBI = amountIn;
865
+ amountIn = Number(amountIn);
866
+ }
867
+ else {
868
+ amountInBI = getBigInt(amountIn);
869
+ }
870
+ let routeValues = [];
871
+ if (Array.isArray(mode)) {
872
+ const sum = mode.reduce((a, b) => a + b, 0);
873
+ routeValues = mode.map((e) => e / sum);
874
+ }
875
+ else {
876
+ for (let i = 0; i < mode; ++i)
877
+ routeValues.push(1 / mode);
878
+ }
879
+ this.edges.forEach((e) => {
880
+ e.amountInPrevious = 0;
881
+ e.amountOutPrevious = 0;
882
+ e.direction = true;
883
+ e.pool.cleanTmpData();
884
+ });
885
+ let output = 0;
886
+ let gasSpentInit = 0;
887
+ let totalOutput = 0;
888
+ let totalrouted = 0;
889
+ let primaryPrice;
890
+ let step;
891
+ for (step = 0; step < routeValues.length; ++step) {
892
+ const routeValue = routeValues[step];
893
+ const p = this.findBestPathExactIn(from, to, amountIn * routeValue);
894
+ if (!p) {
895
+ break;
896
+ }
897
+ else {
898
+ output += p.output;
899
+ gasSpentInit += p.gasSpent;
900
+ totalOutput += p.totalOutput;
901
+ this.addPath(this.getVert(from), this.getVert(to), p.path);
902
+ totalrouted += routeValue;
903
+ }
904
+ }
905
+ if (step === 0 || output === 0)
906
+ return NoWayMultiRoute(from, to);
907
+ let status;
908
+ if (step < routeValues.length)
909
+ status = RouteStatus.Partial;
910
+ else
911
+ status = RouteStatus.Success;
912
+ this.removeEdgesWithLowFlow(0.001);
913
+ const fromVert = this.getVert(from);
914
+ const toVert = this.getVert(to);
915
+ const { legs, gasSpent } = this.getRouteLegs(fromVert, toVert);
916
+ console.assert(gasSpent <= gasSpentInit, 'Internal Error 491');
917
+ //if (topologyWasChanged || removedEdgesNumber > 0) {
918
+ this.edges.forEach((e) => e.pool.cleanTmpData());
919
+ // const initialOutput = output
920
+ // const assumeZero = legs.some(l => l.assumedAmountOut < 1)
921
+ // if (Math.abs(output - 17947093338.87304) < 1e-3) {
922
+ // debugger
923
+ // }
924
+ output = this.updateLegsAmountOut(legs, amountIn * totalrouted);
925
+ // const diff = (output - initialOutput)/initialOutput
926
+ // if (Math.abs(diff) > 1e-4 && !assumeZero) console.log(` Output recalc: ${diff} ${initialOutput}=>${output}`)
927
+ totalOutput = output - toVert.gasPrice * gasSpent;
928
+ if (output === 0) {
929
+ status = RouteStatus.NoWay;
930
+ totalOutput = 0;
931
+ }
932
+ //}
933
+ let swapPrice;
934
+ let priceImpact;
935
+ try {
936
+ swapPrice = output / amountIn / totalrouted;
937
+ const priceTo = this.getVert(to)?.price;
938
+ const priceFrom = this.getVert(from)?.price;
939
+ primaryPrice = priceTo && priceFrom ? priceFrom / priceTo : undefined;
940
+ priceImpact =
941
+ primaryPrice !== undefined ? 1 - swapPrice / primaryPrice : undefined;
942
+ }
943
+ catch (_e) {
944
+ /* skip division by 0 errors*/
945
+ }
946
+ return {
947
+ status,
948
+ fromToken: from,
949
+ toToken: to,
950
+ primaryPrice,
951
+ swapPrice,
952
+ priceImpact,
953
+ amountIn: amountIn * totalrouted,
954
+ amountInBI: status === RouteStatus.Success
955
+ ? amountInBI
956
+ : getBigInt(amountIn * totalrouted),
957
+ amountOut: output,
958
+ amountOutBI: getBigInt(output),
959
+ legs,
960
+ gasSpent,
961
+ totalAmountOut: totalOutput,
962
+ totalAmountOutBI: getBigInt(totalOutput),
963
+ };
964
+ }
965
+ findBestRouteExactOut(from, to, amountOut, mode) {
966
+ let routeValues = [];
967
+ if (Array.isArray(mode)) {
968
+ const sum = mode.reduce((a, b) => a + b, 0);
969
+ routeValues = mode.map((e) => e / sum);
970
+ }
971
+ else {
972
+ for (let i = 0; i < mode; ++i)
973
+ routeValues.push(1 / mode);
974
+ }
975
+ this.edges.forEach((e) => {
976
+ e.amountInPrevious = 0;
977
+ e.amountOutPrevious = 0;
978
+ e.direction = true;
979
+ });
980
+ let input = 0;
981
+ let gasSpentInit = 0;
982
+ //let totalInput = 0
983
+ let totalrouted = 0;
984
+ let primaryPrice;
985
+ let step;
986
+ for (step = 0; step < routeValues.length; ++step) {
987
+ const routeValue = routeValues[step];
988
+ const p = this.findBestPathExactOut(from, to, amountOut * routeValue);
989
+ if (!p) {
990
+ break;
991
+ }
992
+ else {
993
+ input += p.input;
994
+ gasSpentInit += p.gasSpent;
995
+ //totalInput += p.totalInput
996
+ this.addPath(this.getVert(from), this.getVert(to), p.path);
997
+ totalrouted += routeValue;
998
+ // if (step === 0) {
999
+ // primaryPrice = this.getPrimaryPriceForPath(this.getVert(from) as Vertice, p.path)
1000
+ // }
1001
+ }
1002
+ }
1003
+ if (step === 0)
1004
+ return NoWayMultiRoute(from, to);
1005
+ let status;
1006
+ if (step < routeValues.length)
1007
+ status = RouteStatus.Partial;
1008
+ else
1009
+ status = RouteStatus.Success;
1010
+ const removedEdgesNumber = this.removeEdgesWithLowFlow(0.001);
1011
+ const fromVert = this.getVert(from);
1012
+ const toVert = this.getVert(to);
1013
+ const { legs, gasSpent, topologyWasChanged } = this.getRouteLegs(fromVert, toVert);
1014
+ console.assert(gasSpent <= gasSpentInit, 'Internal Error 491');
1015
+ if (topologyWasChanged || removedEdgesNumber > 0) {
1016
+ input = this.calcLegsAmountIn(legs, amountOut);
1017
+ }
1018
+ let swapPrice;
1019
+ let priceImpact;
1020
+ try {
1021
+ swapPrice = amountOut / input;
1022
+ const priceTo = this.getVert(to)?.price;
1023
+ const priceFrom = this.getVert(from)?.price;
1024
+ primaryPrice = priceTo && priceFrom ? priceFrom / priceTo : undefined;
1025
+ priceImpact =
1026
+ primaryPrice !== undefined ? 1 - swapPrice / primaryPrice : undefined;
1027
+ }
1028
+ catch (_e) {
1029
+ /* skip division by 0 errors*/
1030
+ }
1031
+ return {
1032
+ status,
1033
+ fromToken: from,
1034
+ toToken: to,
1035
+ primaryPrice,
1036
+ swapPrice,
1037
+ priceImpact,
1038
+ amountIn: input,
1039
+ amountInBI: getBigInt(input),
1040
+ amountOut: amountOut * totalrouted,
1041
+ amountOutBI: getBigInt(amountOut * totalrouted),
1042
+ legs,
1043
+ gasSpent,
1044
+ totalAmountOut: amountOut - gasSpent * toVert.gasPrice, // TODO: should be totalAmountIn instead !!!!
1045
+ totalAmountOutBI: getBigInt(amountOut - gasSpent * toVert.gasPrice), // TODO: should be totalAmountInBI instead !!!!
1046
+ };
1047
+ }
1048
+ getRouteLegs(from, to) {
1049
+ const { vertices, topologyWasChanged } = this.cleanTopology(from, to);
1050
+ const legs = [];
1051
+ let gasSpent = 0;
1052
+ vertices.forEach((n) => {
1053
+ const outEdges = n.getOutputEdges().map((e) => {
1054
+ const from = this.edgeFrom(e);
1055
+ return from ? [e, from.vert, from.amount] : [e];
1056
+ });
1057
+ let outAmount = outEdges.reduce((a, b) => a + b[2], 0);
1058
+ if (outAmount <= 0)
1059
+ return;
1060
+ const total = outAmount;
1061
+ // IMPORTANT: Casting to Number to avoid compiler bug which for some reason
1062
+ // keeps reference to outAmount which is mutated later
1063
+ // const total = Number(outAmount)
1064
+ // const totalTest = outAmount
1065
+ outEdges.forEach((e, i) => {
1066
+ const p = e[2];
1067
+ const quantity = i + 1 === outEdges.length ? 1 : p / outAmount;
1068
+ const edge = e[0];
1069
+ legs.push({
1070
+ poolAddress: edge.pool.address,
1071
+ uniqueId: edge.pool.uniqueID(),
1072
+ poolType: edge.pool.poolType(),
1073
+ poolFee: edge.pool.fee,
1074
+ tokenFrom: n.token,
1075
+ tokenTo: n.getNeibour(edge).token,
1076
+ assumedAmountIn: edge.direction
1077
+ ? edge.amountInPrevious
1078
+ : edge.amountOutPrevious,
1079
+ assumedAmountOut: edge.direction
1080
+ ? edge.amountOutPrevious
1081
+ : edge.amountInPrevious,
1082
+ swapPortion: quantity,
1083
+ absolutePortion: p / total,
1084
+ });
1085
+ gasSpent += edge.pool.calcOutByIn(edge.direction ? edge.amountInPrevious : edge.amountOutPrevious, edge.direction).gasSpent;
1086
+ // console.debug('before amountOut mutation', { total, outAmount })
1087
+ outAmount -= p;
1088
+ // console.debug('after amountOut mutation', { total, outAmount })
1089
+ });
1090
+ // console.debug('AFTER', { outAmount, total, totalTest }, outAmount / total)
1091
+ console.assert(outAmount / total < 1e-12, 'Error 281');
1092
+ });
1093
+ return { legs, gasSpent, topologyWasChanged };
1094
+ }
1095
+ edgeFrom(e) {
1096
+ if (e.amountInPrevious === 0)
1097
+ return undefined;
1098
+ return e.direction
1099
+ ? { vert: e.vert0, amount: e.amountInPrevious }
1100
+ : { vert: e.vert1, amount: e.amountOutPrevious };
1101
+ }
1102
+ // Removes all edges that have lesser than minFraction portion of vertex output liquidity
1103
+ // Such edges can appear as an accumulation of forward and backward streams
1104
+ // They spend more gas than provide slippage reduction
1105
+ // They confuse users
1106
+ // Also, route processor can fail trying to process them
1107
+ removeEdgesWithLowFlow(minFraction) {
1108
+ const weakEdgeList = [];
1109
+ this.vertices.forEach((v) => {
1110
+ const outEdges = v.getOutputEdges();
1111
+ if (outEdges.length <= 1)
1112
+ return;
1113
+ const amounts = outEdges.map((e) => {
1114
+ const data = this.edgeFrom(e);
1115
+ if (data !== undefined)
1116
+ return data.amount;
1117
+ console.error('Tines: Internal Error 1123');
1118
+ return undefined;
1119
+ });
1120
+ const totalOut = amounts.reduce((a, b) => {
1121
+ a += b;
1122
+ return a;
1123
+ }, 0);
1124
+ outEdges.forEach((e, i) => {
1125
+ if (amounts[i] / totalOut < minFraction)
1126
+ weakEdgeList.push(e);
1127
+ });
1128
+ });
1129
+ weakEdgeList.forEach((e) => {
1130
+ e.canBeUsed = false;
1131
+ });
1132
+ return weakEdgeList.length;
1133
+ }
1134
+ // returns route output
1135
+ updateLegsAmountOut(legs, amountIn) {
1136
+ if (legs.length === 0)
1137
+ return 0;
1138
+ const amounts = new Map();
1139
+ amounts.set(legs[0].tokenFrom.tokenId, amountIn);
1140
+ legs.forEach((l) => {
1141
+ const vert = this.getVert(l.tokenFrom);
1142
+ console.assert(vert !== undefined, 'Internal Error 570');
1143
+ const edge = vert.edges.find((e) => e.pool.uniqueID() === l.uniqueId);
1144
+ console.assert(edge !== undefined, 'Internel Error 569');
1145
+ const pool = edge.pool;
1146
+ const direction = vert === edge.vert0;
1147
+ const inputTotal = amounts.get(l.tokenFrom.tokenId);
1148
+ console.assert(inputTotal !== undefined, 'Internal Error 564');
1149
+ const routerPortion = Math.round(l.swapPortion * ROUTER_DISTRIBUTION_PORTION) /
1150
+ ROUTER_DISTRIBUTION_PORTION;
1151
+ const input = Math.floor(inputTotal * routerPortion);
1152
+ amounts.set(l.tokenFrom.tokenId, inputTotal - input);
1153
+ const output = pool.calcOutByInReal(input, direction);
1154
+ const vertNext = vert.getNeibour(edge);
1155
+ const prevAmount = amounts.get(vertNext.token.tokenId);
1156
+ amounts.set(vertNext.token.tokenId, (prevAmount || 0) + output);
1157
+ l.assumedAmountIn = input;
1158
+ l.assumedAmountOut = output;
1159
+ });
1160
+ return (amounts.get(legs[legs.length - 1].tokenTo.tokenId) || 0);
1161
+ }
1162
+ // TODO: make full test coverage!
1163
+ calcLegsAmountIn(legs, amountOut) {
1164
+ const totalOutputAssumed = new Map();
1165
+ legs.forEach((l) => {
1166
+ const prevValue = totalOutputAssumed.get(l.tokenFrom.tokenId) || 0;
1167
+ totalOutputAssumed.set(l.tokenFrom.tokenId, prevValue + l.assumedAmountOut);
1168
+ });
1169
+ const amounts = new Map();
1170
+ amounts.set(legs[legs.length - 1].tokenTo.tokenId, amountOut);
1171
+ for (let i = legs.length - 1; i >= 0; --i) {
1172
+ const l = legs[i];
1173
+ const vert = this.getVert(l.tokenTo);
1174
+ console.assert(vert !== undefined, 'Internal Error 884');
1175
+ const edge = vert.edges.find((e) => e.pool.uniqueID() === l.uniqueId);
1176
+ console.assert(edge !== undefined, 'Internel Error 888');
1177
+ const pool = edge.pool;
1178
+ const direction = vert === edge.vert1;
1179
+ const outputTotal = amounts.get(l.tokenTo.tokenId);
1180
+ console.assert(outputTotal !== undefined, 'Internal Error 893');
1181
+ const totalAssumed = totalOutputAssumed.get(l.tokenFrom.tokenId);
1182
+ console.assert(totalAssumed !== undefined, 'Internal Error 903');
1183
+ const output = (outputTotal * l.assumedAmountOut) /
1184
+ totalAssumed;
1185
+ const input = pool.calcInByOut(output, direction).inp;
1186
+ const vertNext = vert.getNeibour(edge);
1187
+ const prevAmount = amounts.get(vertNext.token.tokenId);
1188
+ amounts.set(vertNext.token.tokenId, (prevAmount || 0) + input);
1189
+ }
1190
+ return amounts.get(legs[0].tokenFrom.tokenId) || 0;
1191
+ }
1192
+ // removes all cycles if there are any, then removes all dead end could appear after cycle removing
1193
+ // Returns clean result topologically sorted
1194
+ cleanTopology(from, to) {
1195
+ let topologyWasChanged = false;
1196
+ let result = this.topologySort(from, to);
1197
+ if (result.status !== 2) {
1198
+ topologyWasChanged = true;
1199
+ // it can be 3, because we make this.removeEdgesWithLowFlow(0.005) before
1200
+ // console.assert(result.status === 0, 'Internal Error 554')
1201
+ while (result.status === 0) {
1202
+ this.removeWeakestEdge(result.vertices);
1203
+ result = this.topologySort(from, to);
1204
+ }
1205
+ if (result.status === 3) {
1206
+ this.removeDeadEnds(result.vertices);
1207
+ result = this.topologySort(from, to);
1208
+ }
1209
+ console.assert(result.status === 2, 'Internal Error 563');
1210
+ if (result.status !== 2)
1211
+ return { vertices: [], topologyWasChanged };
1212
+ }
1213
+ return { vertices: result.vertices, topologyWasChanged };
1214
+ }
1215
+ removeDeadEnds(verts) {
1216
+ verts.forEach((v) => {
1217
+ v.getInputEdges().forEach((e) => {
1218
+ e.canBeUsed = false;
1219
+ });
1220
+ });
1221
+ }
1222
+ removeWeakestEdge(verts) {
1223
+ let minVert = undefined;
1224
+ let minVertNext;
1225
+ let minOutput = Number.MAX_VALUE;
1226
+ verts.forEach((v1, i) => {
1227
+ const v2 = i === 0 ? verts[verts.length - 1] : verts[i - 1];
1228
+ let out = 0;
1229
+ v1.getOutputEdges().forEach((e) => {
1230
+ if (v1.getNeibour(e) !== v2)
1231
+ return;
1232
+ out += e.direction ? e.amountOutPrevious : e.amountInPrevious;
1233
+ });
1234
+ if (out < minOutput) {
1235
+ minVert = v1;
1236
+ minVertNext = v2;
1237
+ minOutput = out;
1238
+ }
1239
+ });
1240
+ if (minVert !== undefined)
1241
+ minVert.getOutputEdges().forEach((e) => {
1242
+ if (minVert.getNeibour(e) !== minVertNext)
1243
+ return;
1244
+ e.canBeUsed = false;
1245
+ });
1246
+ }
1247
+ // topological sort
1248
+ // if there is a cycle - returns [0, <List of envolved vertices in the cycle>]
1249
+ // if there are no cycles but deadends- returns [3, <List of all envolved deadend vertices>]
1250
+ // if there are no cycles or deadends- returns [2, <List of all envolved vertices topologically sorted>]
1251
+ topologySort(from, to) {
1252
+ // undefined or 0 - not processed, 1 - in process, 2 - finished, 3 - dedend
1253
+ const vertState = new Map();
1254
+ const vertsFinished = [];
1255
+ const foundCycle = [];
1256
+ const foundDeadEndVerts = [];
1257
+ // 0 - cycle was found and created, return
1258
+ // 1 - during cycle creating
1259
+ // 2 - vertex is processed ok
1260
+ // 3 - dead end vertex
1261
+ function topSortRecursive(current) {
1262
+ const state = vertState.get(current);
1263
+ if (state === 2 || state === 3)
1264
+ return state;
1265
+ if (state === 1) {
1266
+ console.assert(foundCycle.length === 0, 'Internal Error 566');
1267
+ foundCycle.push(current);
1268
+ return 1;
1269
+ }
1270
+ vertState.set(current, 1);
1271
+ let successors2Exist = false;
1272
+ const outEdges = current.getOutputEdges();
1273
+ for (let i = 0; i < outEdges.length; ++i) {
1274
+ const e = outEdges[i];
1275
+ const res = topSortRecursive(current.getNeibour(e));
1276
+ if (res === 0)
1277
+ return 0;
1278
+ if (res === 1) {
1279
+ if (foundCycle[0] === current)
1280
+ return 0;
1281
+ else {
1282
+ foundCycle.push(current);
1283
+ return 1;
1284
+ }
1285
+ }
1286
+ if (res === 2)
1287
+ successors2Exist = true; // Ok successors
1288
+ }
1289
+ if (successors2Exist) {
1290
+ console.assert(current !== to, 'Internal Error 589');
1291
+ vertsFinished.push(current);
1292
+ vertState.set(current, 2);
1293
+ return 2;
1294
+ }
1295
+ else {
1296
+ if (current !== to) {
1297
+ foundDeadEndVerts.push(current);
1298
+ vertState.set(current, 3);
1299
+ return 3;
1300
+ }
1301
+ vertsFinished.push(current);
1302
+ vertState.set(current, 2);
1303
+ return 2;
1304
+ }
1305
+ }
1306
+ const res = topSortRecursive(from);
1307
+ if (res === 0)
1308
+ return { status: 0, vertices: foundCycle };
1309
+ if (foundDeadEndVerts.length)
1310
+ return { status: 3, vertices: foundDeadEndVerts };
1311
+ ASSERT(() => {
1312
+ if (vertsFinished[0] !== to)
1313
+ return false;
1314
+ if (vertsFinished[vertsFinished.length - 1] !== from)
1315
+ return false;
1316
+ return true;
1317
+ }, 'Internal Error 614');
1318
+ if (res === 2)
1319
+ return { status: 2, vertices: vertsFinished.reverse() };
1320
+ console.assert(true, 'Internal Error 612');
1321
+ return { status: 1, vertices: [] };
1322
+ }
1323
+ }
1324
+ //# sourceMappingURL=Graph.js.map