@hinkal/common 0.0.104 → 0.0.107

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 (272) hide show
  1. package/API/API.js +58 -0
  2. package/API/HinkalPointsCalls.js +38 -0
  3. package/API/callBeefyGraphAPI.js +37 -0
  4. package/API/callCurveAPI.js +156 -0
  5. package/API/callMonitor.js +30 -0
  6. package/API/callOdosAPI.js +44 -0
  7. package/API/callOneInchAPI.js +37 -0
  8. package/API/callRelayer.js +32 -0
  9. package/API/checkRisk.js +30 -0
  10. package/API/dataServerCalls.js +32 -0
  11. package/API/fetchCommitmentsCache.js +31 -0
  12. package/API/fetchNullifiers.js +30 -0
  13. package/API/getAxelarGasEstimate.js +37 -0
  14. package/API/getCoingeckoPrice.js +27 -0
  15. package/API/getConnextReceiveFee.js +30 -0
  16. package/API/getGasEstimates.js +38 -0
  17. package/API/getRelayerURL.js +32 -0
  18. package/API/getServerURL.js +67 -0
  19. package/API/getTokenPrice.js +41 -0
  20. package/API/kycCalls.js +32 -0
  21. package/API/passwordCalls.js +36 -0
  22. package/API/referralProgramCalls.js +58 -0
  23. package/API/relayCalls.js +30 -0
  24. package/API/restoreSnapshots.js +32 -0
  25. package/API/rewardsPointsCalls.js +40 -0
  26. package/API/userVerifyTransactions.js +45 -0
  27. package/README.md +116 -1
  28. package/assets/{snarkjsWorkerLogic-CatB8Hso.js → snarkjsWorkerLogic-Fv0M38Mc.js} +2 -2
  29. package/assets/{utxoWorkerLogic-DDqTe7hT.js → utxoWorkerLogic-CtFLQiAX.js} +2 -2
  30. package/assets/{zkProofWorkerLauncher-C-pvCm0b.js → zkProofWorkerLauncher-J3Ts5_Ba.js} +1 -1
  31. package/assets/{zkProofWorkerLogic-CLpRqNRx.js → zkProofWorkerLogic-CPNuu61R.js} +18 -19
  32. package/constants/assets.constants.js +16 -0
  33. package/constants/axelar.constants.js +55 -0
  34. package/constants/backend.constants.js +18 -0
  35. package/constants/beefy.registry.js +24 -0
  36. package/constants/chains.constants.js +204 -0
  37. package/constants/coingecko.constants.js +53 -0
  38. package/constants/contracts.constants.js +276 -0
  39. package/constants/crvCvx.registry.js +636 -0
  40. package/constants/crvDynamic.registry.js +24 -0
  41. package/constants/deploy-data/deploy-data-arbMainnet.json.js +7415 -0
  42. package/constants/deploy-data/deploy-data-avalanche.json.js +7411 -0
  43. package/constants/deploy-data/deploy-data-axelar1.json.js +4329 -0
  44. package/constants/deploy-data/deploy-data-axelar2.json.js +4329 -0
  45. package/constants/deploy-data/deploy-data-base.json.js +8425 -0
  46. package/constants/deploy-data/deploy-data-blast.json.js +9600 -0
  47. package/constants/deploy-data/deploy-data-bnbMainnet.json.js +6877 -0
  48. package/constants/deploy-data/deploy-data-ethMainnet.json.js +11427 -0
  49. package/constants/deploy-data/deploy-data-localhost.json.js +13283 -0
  50. package/constants/deploy-data/deploy-data-optimism.json.js +7417 -0
  51. package/constants/deploy-data/deploy-data-polygon.json.js +7439 -0
  52. package/constants/fees.constants.js +57 -0
  53. package/constants/kyc.constants.js +118 -0
  54. package/constants/lido.constants.js +13 -0
  55. package/constants/pendle.registry.js +253 -0
  56. package/constants/protocol.constants.js +26 -0
  57. package/constants/reorg-depths.constants.js +15 -0
  58. package/constants/rewards.constants.js +27 -0
  59. package/constants/server.constants.js +157 -0
  60. package/constants/token-data/ERC20Registry.js +85 -0
  61. package/constants/token-data/arbMainnetRegistry.json.js +946 -0
  62. package/constants/token-data/arbMainnetRegistryFixed.json.js +856 -0
  63. package/constants/token-data/avalancheRegistry.json.js +591 -0
  64. package/constants/token-data/avalancheRegistryFixed.json.js +591 -0
  65. package/constants/token-data/baseRegistry.json.js +490 -0
  66. package/constants/token-data/baseRegistryFixed.json.js +463 -0
  67. package/constants/token-data/blastRegistry.json.js +137 -0
  68. package/constants/token-data/blastRegistryFixed.json.js +137 -0
  69. package/constants/token-data/bnbMainnetRegistry.json.js +973 -0
  70. package/constants/token-data/bnbMainnetRegistryFixed.json.js +973 -0
  71. package/constants/token-data/coingeckoRegistry.json.js +115623 -0
  72. package/constants/token-data/ethMainnetRegistry.json.js +2700 -0
  73. package/constants/token-data/ethMainnetRegistryFixed.json.js +2251 -0
  74. package/constants/token-data/index.js +6 -0
  75. package/constants/token-data/localhostRegistry.json.js +2768 -0
  76. package/constants/token-data/optimismRegistry.json.js +1455 -0
  77. package/constants/token-data/optimismRegistryFixed.json.js +1392 -0
  78. package/constants/token-data/polygonRegistry.json.js +1327 -0
  79. package/constants/token-data/polygonRegistryFixed.json.js +1255 -0
  80. package/constants/token-data/popularTokens.constants.js +14 -0
  81. package/constants/token-data/tokenPricing.consts.js +8 -0
  82. package/constants/vite.constants.js +29 -0
  83. package/crypto/babyJub.js +15 -0
  84. package/crypto/poseidon.js +26 -0
  85. package/crypto/preProcessing.js +9 -0
  86. package/data-structures/Hinkal/Hinkal.js +299 -0
  87. package/data-structures/Hinkal/hinkalActionBeefy.js +101 -0
  88. package/data-structures/Hinkal/hinkalActionConvex.js +83 -0
  89. package/data-structures/Hinkal/hinkalActionCurve.js +112 -0
  90. package/data-structures/Hinkal/hinkalActionLidoEth.js +91 -0
  91. package/data-structures/Hinkal/hinkalActionPendle.js +140 -0
  92. package/data-structures/Hinkal/hinkalActionPendleLP.js +96 -0
  93. package/data-structures/Hinkal/hinkalActionStake.js +138 -0
  94. package/data-structures/Hinkal/hinkalActionVolatile.js +112 -0
  95. package/data-structures/Hinkal/hinkalDeposit.js +95 -0
  96. package/data-structures/Hinkal/hinkalGetZkMeProvider.js +47 -0
  97. package/data-structures/Hinkal/hinkalPrivateWallet.js +66 -0
  98. package/data-structures/Hinkal/hinkalSwap.js +98 -0
  99. package/data-structures/Hinkal/hinkalTransfer.js +5 -0
  100. package/data-structures/Hinkal/hinkalWithdraw.js +91 -0
  101. package/data-structures/Hinkal/resetMerkleTrees.js +49 -0
  102. package/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.js +83 -0
  103. package/data-structures/ValueCache/ValueCache.js +25 -0
  104. package/data-structures/crypto-keys/decodeUTXO.js +40 -0
  105. package/data-structures/crypto-keys/encryptDecryptUtxo.js +41 -0
  106. package/data-structures/crypto-keys/keyUtils.js +10 -0
  107. package/data-structures/crypto-keys/keys.js +90 -0
  108. package/data-structures/custom-token-registry/CustomTokenRegistry.js +33 -0
  109. package/data-structures/event-service/AbstractAccessTokenSnapshotService.js +131 -0
  110. package/data-structures/event-service/AbstractCommitmentsSnapshotService.js +132 -0
  111. package/data-structures/event-service/AbstractEventService.js +118 -0
  112. package/data-structures/event-service/AbstractNullifierSnapshotService.js +59 -0
  113. package/data-structures/event-service/AbstractSnapshotService.js +35 -0
  114. package/data-structures/merkle-tree/MerkleTree.js +177 -0
  115. package/data-structures/merkle-tree/MerkleTreeIncompleteError.js +8 -0
  116. package/data-structures/snapshot/ClientAccessTokenSnapshotService.js +48 -0
  117. package/data-structures/snapshot/ClientCommitmentsSnapshotService.js +47 -0
  118. package/data-structures/snapshot/ClientNullifierSnapshotService.js +44 -0
  119. package/data-structures/token-price-fetcher/TokenChecker.js +29 -0
  120. package/data-structures/token-price-fetcher/TokenPriceFetcher.js +218 -0
  121. package/data-structures/transactions-manager/TransactionsManager.js +194 -0
  122. package/data-structures/transactions-manager/history/getBeefyData.js +68 -0
  123. package/data-structures/transactions-manager/history/getConvexData.js +57 -0
  124. package/data-structures/transactions-manager/history/getCurveData.js +97 -0
  125. package/data-structures/transactions-manager/history/getDepositData.js +36 -0
  126. package/data-structures/transactions-manager/history/getLidoData.js +44 -0
  127. package/data-structures/transactions-manager/history/getPendleData.js +59 -0
  128. package/data-structures/transactions-manager/history/getSwapData.js +43 -0
  129. package/data-structures/transactions-manager/history/getTxDetails.js +74 -0
  130. package/data-structures/transactions-manager/history/getVolatileData.js +75 -0
  131. package/data-structures/transactions-manager/history/history.types.js +62 -0
  132. package/data-structures/transactions-manager/history/history.utils.js +8 -0
  133. package/data-structures/utxo/Utxo.js +134 -0
  134. package/data-structures/volatile-helper/VolatileHelper.js +181 -0
  135. package/error-handling/customErrors/ErrorWithAmount.js +9 -0
  136. package/error-handling/customErrors/FeeOverTransactionValueError.js +9 -0
  137. package/error-handling/customErrors/customErrors.helpers.js +21 -0
  138. package/error-handling/error-codes.constants.js +184 -0
  139. package/error-handling/get-error.message.js +53 -0
  140. package/error-handling/handleErrorRestore.js +35 -0
  141. package/error-handling/logError.js +7 -0
  142. package/error-handling/types.js +4 -0
  143. package/externalABIs/BUSD.js +519 -0
  144. package/externalABIs/BabPassport.json.js +24 -0
  145. package/externalABIs/BeefyRouterAbi.json.js +1022 -0
  146. package/externalABIs/BeefyStrategyAbi.json.js +1423 -0
  147. package/externalABIs/BeefyVaultAbi.json.js +570 -0
  148. package/externalABIs/BeefyZapAbi.json.js +208 -0
  149. package/externalABIs/BeefyZapOneInchAbi.json.js +340 -0
  150. package/externalABIs/ConvexBoosterAbi.json.js +674 -0
  151. package/externalABIs/ConvexBoosterAbiMainnet.json.js +1002 -0
  152. package/externalABIs/ConvexRewardPoolAbi.json.js +883 -0
  153. package/externalABIs/CurveReadingWrapperAbi.json.js +1422 -0
  154. package/externalABIs/CurveWrappedMainPool.json.js +1136 -0
  155. package/externalABIs/CurveZap.json.js +262 -0
  156. package/externalABIs/CvxCrvUtilities.json.js +264 -0
  157. package/externalABIs/DAI.js +334 -0
  158. package/externalABIs/ERC20.json.js +291 -0
  159. package/externalABIs/GalxePassport.json.js +41 -0
  160. package/externalABIs/IQuoterV2.json.js +205 -0
  161. package/externalABIs/ISwapRouter.json.js +568 -0
  162. package/externalABIs/IUniswapV3Factory.json.js +201 -0
  163. package/externalABIs/IUniswapV3Pool.json.js +999 -0
  164. package/externalABIs/LidoStEthAbi.json.js +1603 -0
  165. package/externalABIs/LidoStMaticAbi.json.js +1764 -0
  166. package/externalABIs/LidoStakeManagerAbi.json.js +2082 -0
  167. package/externalABIs/LidoWithdrawalQueueERC721Abi.json.js +2030 -0
  168. package/externalABIs/LidoWstEthAbi.json.js +480 -0
  169. package/externalABIs/OptimismGasPriceOracle.json.js +206 -0
  170. package/externalABIs/PendleRouterAbi.json.js +173 -0
  171. package/externalABIs/PoLidoNftAbi.json.js +701 -0
  172. package/externalABIs/SanctionsList.js +89 -0
  173. package/externalABIs/USDC.js +721 -0
  174. package/externalABIs/USDR.js +346 -0
  175. package/externalABIs/USDR3CRV.js +542 -0
  176. package/externalABIs/USDT.js +393 -0
  177. package/externalABIs/UniswapV2PoolAbi.json.js +80 -0
  178. package/externalABIs/WETH.js +156 -0
  179. package/externalABIs/amToken.js +350 -0
  180. package/externalABIs/transactionsProver.json.js +39 -0
  181. package/functions/kyc/authentoHelper.js +42 -0
  182. package/functions/kyc/passportHelper.js +39 -0
  183. package/functions/kyc/zkMeHelper.js +56 -0
  184. package/functions/pre-transaction/getFlatFees.js +203 -0
  185. package/functions/pre-transaction/interaction-to-action.js +57 -0
  186. package/functions/pre-transaction/outputUtxoProcessing.js +45 -0
  187. package/functions/pre-transaction/process-gas-estimates.js +57 -0
  188. package/functions/pre-transaction/processAmountChanges.js +229 -0
  189. package/functions/private-wallet/emporium.helpers.js +19 -0
  190. package/functions/private-wallet/opProducer.js +24 -0
  191. package/functions/protocols/convex.protocols.js +41 -0
  192. package/functions/protocols/curve.protocols.js +45 -0
  193. package/functions/protocols/pendle.helpers.js +108 -0
  194. package/functions/snarkjs/common.snarkjs.js +96 -0
  195. package/functions/snarkjs/constant.js +211 -0
  196. package/functions/snarkjs/constructEmporiumProof.js +105 -0
  197. package/functions/snarkjs/constructGeneralZkProof.js +129 -0
  198. package/functions/snarkjs/generateCircomData.js +60 -0
  199. package/functions/snarkjs/generateZkProof.js +18 -0
  200. package/functions/snarkjs/getZKFiles.js +30 -0
  201. package/functions/staking/index.js +40 -0
  202. package/functions/utils/amounts.utils.js +70 -0
  203. package/functions/utils/axelar.utils.js +38 -0
  204. package/functions/utils/cacheFunctions.js +67 -0
  205. package/functions/utils/caseInsensitive.utils.js +6 -0
  206. package/functions/utils/convertIntegrationProviderToExternalActionId.js +16 -0
  207. package/functions/utils/create-provider.js +5 -0
  208. package/functions/utils/enum.utils.js +14 -0
  209. package/functions/utils/erc20tokenFunctions.js +20 -0
  210. package/functions/utils/evmNetworkFunctions.js +29 -0
  211. package/functions/utils/external-action.utils.js +61 -0
  212. package/functions/utils/getDataFromTransaction.js +105 -0
  213. package/functions/utils/memoize.utils.js +14 -0
  214. package/functions/utils/nickname.utils.js +7 -0
  215. package/functions/utils/process.utils.js +4 -0
  216. package/functions/utils/reloadPage.js +4 -0
  217. package/functions/utils/requireEnv.js +7 -0
  218. package/functions/utils/resolve-sync.utils.js +22 -0
  219. package/functions/utils/serialize.utils.js +4 -0
  220. package/functions/utils/string.utils.js +14 -0
  221. package/functions/utils/time.utils.js +8 -0
  222. package/functions/utils/userAgent.js +15 -0
  223. package/functions/utils/volatile-patcher.utils.js +40 -0
  224. package/functions/web3/etherFunctions.js +41 -0
  225. package/functions/web3/events/balanceChangedHandler.js +10 -0
  226. package/functions/web3/events/getInputUtxoAndBalance.js +72 -0
  227. package/functions/web3/events/getShieldedBalance.js +107 -0
  228. package/functions/web3/events/web3RetrieveEvents.js +9 -0
  229. package/functions/web3/functionCalls/accessTokenCalls.js +48 -0
  230. package/functions/web3/functionCalls/approveToken.js +153 -0
  231. package/functions/web3/functionCalls/estimateGasRelayer.js +18 -0
  232. package/functions/web3/functionCalls/transactCallDirect.js +60 -0
  233. package/functions/web3/functionCalls/transactCallRelayer.js +42 -0
  234. package/functions/web3/odosAPI.js +65 -0
  235. package/functions/web3/oneInchAPI.js +61 -0
  236. package/functions/web3/runContractFunction.js +95 -0
  237. package/functions/web3/uniswapAPI.js +97 -0
  238. package/index.js +644 -0
  239. package/package.json +5 -4
  240. package/types/beefy.types.js +21 -0
  241. package/types/circom-data.types.js +22 -0
  242. package/types/curve.types.js +25 -0
  243. package/types/ethereum-network.types.js +4 -0
  244. package/types/external-action.types.js +4 -0
  245. package/types/hinkal.stake.types.js +4 -0
  246. package/types/hinkal.types.js +15 -0
  247. package/types/kyc.types.js +13 -0
  248. package/types/pendle.types.js +15 -0
  249. package/types/rewards.types.js +27 -0
  250. package/types/slippage.types.js +15 -0
  251. package/types/time.types.js +58 -0
  252. package/types/token.types.js +4 -0
  253. package/types/transactions.types.js +36 -0
  254. package/webworker/performTaskWithWorker.js +62 -0
  255. package/webworker/snarkjsWorker/snarkjsWorker.types.js +4 -0
  256. package/webworker/snarkjsWorker/snarkjsWorkerLogic.js +32 -0
  257. package/webworker/utxoWorker/utxoWorker.types.js +4 -0
  258. package/webworker/utxoWorker/utxoWorkerLogic.js +70 -0
  259. package/webworker/viteWorkerURL.constant.d.ts +3 -3
  260. package/webworker/worker.registry.js +4 -0
  261. package/webworker/workerFactory.d.ts +0 -1
  262. package/webworker/workerFactory.js +42 -0
  263. package/{workerProxy-BDj498Ht.mjs → webworker/workerProxy.js} +1 -1
  264. package/webworker/zkProofWorker/zkProofWorker.types.js +4 -0
  265. package/webworker/zkProofWorker/zkProofWorkerLogic.js +66 -0
  266. package/assets/viteWorkerURL.constant-DrIQXA2B.js +0 -11
  267. package/index-DbehuQxV.mjs +0 -398145
  268. package/index.mjs +0 -457
  269. package/snarkjsWorkerLogic-BpNWzeoy.mjs +0 -12086
  270. package/utxoWorkerLogic-D7NuHk_K.mjs +0 -64
  271. package/viteWorkerURL.constant-Bc7ufzqC.mjs +0 -9
  272. package/zkProofWorkerLogic-Bnalmuka.mjs +0 -60
@@ -0,0 +1,1022 @@
1
+ const e = [
2
+ {
3
+ inputs: [
4
+ {
5
+ internalType: "address",
6
+ name: "_factory",
7
+ type: "address"
8
+ },
9
+ {
10
+ internalType: "address",
11
+ name: "_pairLibrary",
12
+ type: "address"
13
+ },
14
+ {
15
+ internalType: "address",
16
+ name: "_weth",
17
+ type: "address"
18
+ }
19
+ ],
20
+ stateMutability: "nonpayable",
21
+ type: "constructor"
22
+ },
23
+ {
24
+ anonymous: !1,
25
+ inputs: [
26
+ {
27
+ indexed: !0,
28
+ internalType: "address",
29
+ name: "sender",
30
+ type: "address"
31
+ },
32
+ {
33
+ indexed: !1,
34
+ internalType: "uint256",
35
+ name: "amount0In",
36
+ type: "uint256"
37
+ },
38
+ {
39
+ indexed: !1,
40
+ internalType: "address",
41
+ name: "_tokenIn",
42
+ type: "address"
43
+ },
44
+ {
45
+ indexed: !0,
46
+ internalType: "address",
47
+ name: "to",
48
+ type: "address"
49
+ }
50
+ ],
51
+ name: "Swap",
52
+ type: "event"
53
+ },
54
+ {
55
+ inputs: [
56
+ {
57
+ internalType: "address",
58
+ name: "tokenA",
59
+ type: "address"
60
+ },
61
+ {
62
+ internalType: "address",
63
+ name: "tokenB",
64
+ type: "address"
65
+ },
66
+ {
67
+ internalType: "bool",
68
+ name: "stable",
69
+ type: "bool"
70
+ },
71
+ {
72
+ internalType: "uint256",
73
+ name: "amountADesired",
74
+ type: "uint256"
75
+ },
76
+ {
77
+ internalType: "uint256",
78
+ name: "amountBDesired",
79
+ type: "uint256"
80
+ },
81
+ {
82
+ internalType: "uint256",
83
+ name: "amountAMin",
84
+ type: "uint256"
85
+ },
86
+ {
87
+ internalType: "uint256",
88
+ name: "amountBMin",
89
+ type: "uint256"
90
+ },
91
+ {
92
+ internalType: "address",
93
+ name: "to",
94
+ type: "address"
95
+ },
96
+ {
97
+ internalType: "uint256",
98
+ name: "deadline",
99
+ type: "uint256"
100
+ }
101
+ ],
102
+ name: "addLiquidity",
103
+ outputs: [
104
+ {
105
+ internalType: "uint256",
106
+ name: "amountA",
107
+ type: "uint256"
108
+ },
109
+ {
110
+ internalType: "uint256",
111
+ name: "amountB",
112
+ type: "uint256"
113
+ },
114
+ {
115
+ internalType: "uint256",
116
+ name: "liquidity",
117
+ type: "uint256"
118
+ }
119
+ ],
120
+ stateMutability: "nonpayable",
121
+ type: "function"
122
+ },
123
+ {
124
+ inputs: [
125
+ {
126
+ internalType: "address",
127
+ name: "token",
128
+ type: "address"
129
+ },
130
+ {
131
+ internalType: "bool",
132
+ name: "stable",
133
+ type: "bool"
134
+ },
135
+ {
136
+ internalType: "uint256",
137
+ name: "amountTokenDesired",
138
+ type: "uint256"
139
+ },
140
+ {
141
+ internalType: "uint256",
142
+ name: "amountTokenMin",
143
+ type: "uint256"
144
+ },
145
+ {
146
+ internalType: "uint256",
147
+ name: "amountETHMin",
148
+ type: "uint256"
149
+ },
150
+ {
151
+ internalType: "address",
152
+ name: "to",
153
+ type: "address"
154
+ },
155
+ {
156
+ internalType: "uint256",
157
+ name: "deadline",
158
+ type: "uint256"
159
+ }
160
+ ],
161
+ name: "addLiquidityETH",
162
+ outputs: [
163
+ {
164
+ internalType: "uint256",
165
+ name: "amountToken",
166
+ type: "uint256"
167
+ },
168
+ {
169
+ internalType: "uint256",
170
+ name: "amountETH",
171
+ type: "uint256"
172
+ },
173
+ {
174
+ internalType: "uint256",
175
+ name: "liquidity",
176
+ type: "uint256"
177
+ }
178
+ ],
179
+ stateMutability: "payable",
180
+ type: "function"
181
+ },
182
+ {
183
+ inputs: [],
184
+ name: "factory",
185
+ outputs: [
186
+ {
187
+ internalType: "address",
188
+ name: "",
189
+ type: "address"
190
+ }
191
+ ],
192
+ stateMutability: "view",
193
+ type: "function"
194
+ },
195
+ {
196
+ inputs: [
197
+ {
198
+ internalType: "uint256",
199
+ name: "amountIn",
200
+ type: "uint256"
201
+ },
202
+ {
203
+ internalType: "address",
204
+ name: "tokenIn",
205
+ type: "address"
206
+ },
207
+ {
208
+ internalType: "address",
209
+ name: "tokenOut",
210
+ type: "address"
211
+ }
212
+ ],
213
+ name: "getAmountOut",
214
+ outputs: [
215
+ {
216
+ internalType: "uint256",
217
+ name: "amount",
218
+ type: "uint256"
219
+ },
220
+ {
221
+ internalType: "bool",
222
+ name: "stable",
223
+ type: "bool"
224
+ }
225
+ ],
226
+ stateMutability: "view",
227
+ type: "function"
228
+ },
229
+ {
230
+ inputs: [
231
+ {
232
+ internalType: "uint256",
233
+ name: "amountIn",
234
+ type: "uint256"
235
+ },
236
+ {
237
+ components: [
238
+ {
239
+ internalType: "address",
240
+ name: "from",
241
+ type: "address"
242
+ },
243
+ {
244
+ internalType: "address",
245
+ name: "to",
246
+ type: "address"
247
+ },
248
+ {
249
+ internalType: "bool",
250
+ name: "stable",
251
+ type: "bool"
252
+ }
253
+ ],
254
+ internalType: "struct Router.route[]",
255
+ name: "routes",
256
+ type: "tuple[]"
257
+ }
258
+ ],
259
+ name: "getAmountsOut",
260
+ outputs: [
261
+ {
262
+ internalType: "uint256[]",
263
+ name: "amounts",
264
+ type: "uint256[]"
265
+ }
266
+ ],
267
+ stateMutability: "view",
268
+ type: "function"
269
+ },
270
+ {
271
+ inputs: [
272
+ {
273
+ internalType: "address",
274
+ name: "tokenA",
275
+ type: "address"
276
+ },
277
+ {
278
+ internalType: "address",
279
+ name: "tokenB",
280
+ type: "address"
281
+ },
282
+ {
283
+ internalType: "bool",
284
+ name: "stable",
285
+ type: "bool"
286
+ }
287
+ ],
288
+ name: "getReserves",
289
+ outputs: [
290
+ {
291
+ internalType: "uint256",
292
+ name: "reserveA",
293
+ type: "uint256"
294
+ },
295
+ {
296
+ internalType: "uint256",
297
+ name: "reserveB",
298
+ type: "uint256"
299
+ }
300
+ ],
301
+ stateMutability: "view",
302
+ type: "function"
303
+ },
304
+ {
305
+ inputs: [
306
+ {
307
+ internalType: "address",
308
+ name: "pair",
309
+ type: "address"
310
+ }
311
+ ],
312
+ name: "isPair",
313
+ outputs: [
314
+ {
315
+ internalType: "bool",
316
+ name: "",
317
+ type: "bool"
318
+ }
319
+ ],
320
+ stateMutability: "view",
321
+ type: "function"
322
+ },
323
+ {
324
+ inputs: [
325
+ {
326
+ internalType: "address",
327
+ name: "tokenA",
328
+ type: "address"
329
+ },
330
+ {
331
+ internalType: "address",
332
+ name: "tokenB",
333
+ type: "address"
334
+ },
335
+ {
336
+ internalType: "bool",
337
+ name: "stable",
338
+ type: "bool"
339
+ }
340
+ ],
341
+ name: "pairFor",
342
+ outputs: [
343
+ {
344
+ internalType: "address",
345
+ name: "pair",
346
+ type: "address"
347
+ }
348
+ ],
349
+ stateMutability: "view",
350
+ type: "function"
351
+ },
352
+ {
353
+ inputs: [],
354
+ name: "pairLibrary",
355
+ outputs: [
356
+ {
357
+ internalType: "address",
358
+ name: "",
359
+ type: "address"
360
+ }
361
+ ],
362
+ stateMutability: "view",
363
+ type: "function"
364
+ },
365
+ {
366
+ inputs: [
367
+ {
368
+ internalType: "address",
369
+ name: "tokenA",
370
+ type: "address"
371
+ },
372
+ {
373
+ internalType: "address",
374
+ name: "tokenB",
375
+ type: "address"
376
+ },
377
+ {
378
+ internalType: "bool",
379
+ name: "stable",
380
+ type: "bool"
381
+ },
382
+ {
383
+ internalType: "uint256",
384
+ name: "amountADesired",
385
+ type: "uint256"
386
+ },
387
+ {
388
+ internalType: "uint256",
389
+ name: "amountBDesired",
390
+ type: "uint256"
391
+ }
392
+ ],
393
+ name: "quoteAddLiquidity",
394
+ outputs: [
395
+ {
396
+ internalType: "uint256",
397
+ name: "amountA",
398
+ type: "uint256"
399
+ },
400
+ {
401
+ internalType: "uint256",
402
+ name: "amountB",
403
+ type: "uint256"
404
+ },
405
+ {
406
+ internalType: "uint256",
407
+ name: "liquidity",
408
+ type: "uint256"
409
+ }
410
+ ],
411
+ stateMutability: "view",
412
+ type: "function"
413
+ },
414
+ {
415
+ inputs: [
416
+ {
417
+ internalType: "address",
418
+ name: "tokenA",
419
+ type: "address"
420
+ },
421
+ {
422
+ internalType: "address",
423
+ name: "tokenB",
424
+ type: "address"
425
+ },
426
+ {
427
+ internalType: "bool",
428
+ name: "stable",
429
+ type: "bool"
430
+ },
431
+ {
432
+ internalType: "uint256",
433
+ name: "liquidity",
434
+ type: "uint256"
435
+ }
436
+ ],
437
+ name: "quoteRemoveLiquidity",
438
+ outputs: [
439
+ {
440
+ internalType: "uint256",
441
+ name: "amountA",
442
+ type: "uint256"
443
+ },
444
+ {
445
+ internalType: "uint256",
446
+ name: "amountB",
447
+ type: "uint256"
448
+ }
449
+ ],
450
+ stateMutability: "view",
451
+ type: "function"
452
+ },
453
+ {
454
+ inputs: [
455
+ {
456
+ internalType: "address",
457
+ name: "tokenA",
458
+ type: "address"
459
+ },
460
+ {
461
+ internalType: "address",
462
+ name: "tokenB",
463
+ type: "address"
464
+ },
465
+ {
466
+ internalType: "bool",
467
+ name: "stable",
468
+ type: "bool"
469
+ },
470
+ {
471
+ internalType: "uint256",
472
+ name: "liquidity",
473
+ type: "uint256"
474
+ },
475
+ {
476
+ internalType: "uint256",
477
+ name: "amountAMin",
478
+ type: "uint256"
479
+ },
480
+ {
481
+ internalType: "uint256",
482
+ name: "amountBMin",
483
+ type: "uint256"
484
+ },
485
+ {
486
+ internalType: "address",
487
+ name: "to",
488
+ type: "address"
489
+ },
490
+ {
491
+ internalType: "uint256",
492
+ name: "deadline",
493
+ type: "uint256"
494
+ }
495
+ ],
496
+ name: "removeLiquidity",
497
+ outputs: [
498
+ {
499
+ internalType: "uint256",
500
+ name: "amountA",
501
+ type: "uint256"
502
+ },
503
+ {
504
+ internalType: "uint256",
505
+ name: "amountB",
506
+ type: "uint256"
507
+ }
508
+ ],
509
+ stateMutability: "nonpayable",
510
+ type: "function"
511
+ },
512
+ {
513
+ inputs: [
514
+ {
515
+ internalType: "address",
516
+ name: "token",
517
+ type: "address"
518
+ },
519
+ {
520
+ internalType: "bool",
521
+ name: "stable",
522
+ type: "bool"
523
+ },
524
+ {
525
+ internalType: "uint256",
526
+ name: "liquidity",
527
+ type: "uint256"
528
+ },
529
+ {
530
+ internalType: "uint256",
531
+ name: "amountTokenMin",
532
+ type: "uint256"
533
+ },
534
+ {
535
+ internalType: "uint256",
536
+ name: "amountETHMin",
537
+ type: "uint256"
538
+ },
539
+ {
540
+ internalType: "address",
541
+ name: "to",
542
+ type: "address"
543
+ },
544
+ {
545
+ internalType: "uint256",
546
+ name: "deadline",
547
+ type: "uint256"
548
+ }
549
+ ],
550
+ name: "removeLiquidityETH",
551
+ outputs: [
552
+ {
553
+ internalType: "uint256",
554
+ name: "amountToken",
555
+ type: "uint256"
556
+ },
557
+ {
558
+ internalType: "uint256",
559
+ name: "amountETH",
560
+ type: "uint256"
561
+ }
562
+ ],
563
+ stateMutability: "nonpayable",
564
+ type: "function"
565
+ },
566
+ {
567
+ inputs: [
568
+ {
569
+ internalType: "address",
570
+ name: "token",
571
+ type: "address"
572
+ },
573
+ {
574
+ internalType: "bool",
575
+ name: "stable",
576
+ type: "bool"
577
+ },
578
+ {
579
+ internalType: "uint256",
580
+ name: "liquidity",
581
+ type: "uint256"
582
+ },
583
+ {
584
+ internalType: "uint256",
585
+ name: "amountTokenMin",
586
+ type: "uint256"
587
+ },
588
+ {
589
+ internalType: "uint256",
590
+ name: "amountETHMin",
591
+ type: "uint256"
592
+ },
593
+ {
594
+ internalType: "address",
595
+ name: "to",
596
+ type: "address"
597
+ },
598
+ {
599
+ internalType: "uint256",
600
+ name: "deadline",
601
+ type: "uint256"
602
+ },
603
+ {
604
+ internalType: "bool",
605
+ name: "approveMax",
606
+ type: "bool"
607
+ },
608
+ {
609
+ internalType: "uint8",
610
+ name: "v",
611
+ type: "uint8"
612
+ },
613
+ {
614
+ internalType: "bytes32",
615
+ name: "r",
616
+ type: "bytes32"
617
+ },
618
+ {
619
+ internalType: "bytes32",
620
+ name: "s",
621
+ type: "bytes32"
622
+ }
623
+ ],
624
+ name: "removeLiquidityETHWithPermit",
625
+ outputs: [
626
+ {
627
+ internalType: "uint256",
628
+ name: "amountToken",
629
+ type: "uint256"
630
+ },
631
+ {
632
+ internalType: "uint256",
633
+ name: "amountETH",
634
+ type: "uint256"
635
+ }
636
+ ],
637
+ stateMutability: "nonpayable",
638
+ type: "function"
639
+ },
640
+ {
641
+ inputs: [
642
+ {
643
+ internalType: "address",
644
+ name: "tokenA",
645
+ type: "address"
646
+ },
647
+ {
648
+ internalType: "address",
649
+ name: "tokenB",
650
+ type: "address"
651
+ },
652
+ {
653
+ internalType: "bool",
654
+ name: "stable",
655
+ type: "bool"
656
+ },
657
+ {
658
+ internalType: "uint256",
659
+ name: "liquidity",
660
+ type: "uint256"
661
+ },
662
+ {
663
+ internalType: "uint256",
664
+ name: "amountAMin",
665
+ type: "uint256"
666
+ },
667
+ {
668
+ internalType: "uint256",
669
+ name: "amountBMin",
670
+ type: "uint256"
671
+ },
672
+ {
673
+ internalType: "address",
674
+ name: "to",
675
+ type: "address"
676
+ },
677
+ {
678
+ internalType: "uint256",
679
+ name: "deadline",
680
+ type: "uint256"
681
+ },
682
+ {
683
+ internalType: "bool",
684
+ name: "approveMax",
685
+ type: "bool"
686
+ },
687
+ {
688
+ internalType: "uint8",
689
+ name: "v",
690
+ type: "uint8"
691
+ },
692
+ {
693
+ internalType: "bytes32",
694
+ name: "r",
695
+ type: "bytes32"
696
+ },
697
+ {
698
+ internalType: "bytes32",
699
+ name: "s",
700
+ type: "bytes32"
701
+ }
702
+ ],
703
+ name: "removeLiquidityWithPermit",
704
+ outputs: [
705
+ {
706
+ internalType: "uint256",
707
+ name: "amountA",
708
+ type: "uint256"
709
+ },
710
+ {
711
+ internalType: "uint256",
712
+ name: "amountB",
713
+ type: "uint256"
714
+ }
715
+ ],
716
+ stateMutability: "nonpayable",
717
+ type: "function"
718
+ },
719
+ {
720
+ inputs: [
721
+ {
722
+ internalType: "address",
723
+ name: "tokenA",
724
+ type: "address"
725
+ },
726
+ {
727
+ internalType: "address",
728
+ name: "tokenB",
729
+ type: "address"
730
+ }
731
+ ],
732
+ name: "sortTokens",
733
+ outputs: [
734
+ {
735
+ internalType: "address",
736
+ name: "token0",
737
+ type: "address"
738
+ },
739
+ {
740
+ internalType: "address",
741
+ name: "token1",
742
+ type: "address"
743
+ }
744
+ ],
745
+ stateMutability: "pure",
746
+ type: "function"
747
+ },
748
+ {
749
+ inputs: [
750
+ {
751
+ internalType: "uint256",
752
+ name: "amountOutMin",
753
+ type: "uint256"
754
+ },
755
+ {
756
+ components: [
757
+ {
758
+ internalType: "address",
759
+ name: "from",
760
+ type: "address"
761
+ },
762
+ {
763
+ internalType: "address",
764
+ name: "to",
765
+ type: "address"
766
+ },
767
+ {
768
+ internalType: "bool",
769
+ name: "stable",
770
+ type: "bool"
771
+ }
772
+ ],
773
+ internalType: "struct Router.route[]",
774
+ name: "routes",
775
+ type: "tuple[]"
776
+ },
777
+ {
778
+ internalType: "address",
779
+ name: "to",
780
+ type: "address"
781
+ },
782
+ {
783
+ internalType: "uint256",
784
+ name: "deadline",
785
+ type: "uint256"
786
+ }
787
+ ],
788
+ name: "swapExactETHForTokens",
789
+ outputs: [
790
+ {
791
+ internalType: "uint256[]",
792
+ name: "amounts",
793
+ type: "uint256[]"
794
+ }
795
+ ],
796
+ stateMutability: "payable",
797
+ type: "function"
798
+ },
799
+ {
800
+ inputs: [
801
+ {
802
+ internalType: "uint256",
803
+ name: "amountIn",
804
+ type: "uint256"
805
+ },
806
+ {
807
+ internalType: "uint256",
808
+ name: "amountOutMin",
809
+ type: "uint256"
810
+ },
811
+ {
812
+ components: [
813
+ {
814
+ internalType: "address",
815
+ name: "from",
816
+ type: "address"
817
+ },
818
+ {
819
+ internalType: "address",
820
+ name: "to",
821
+ type: "address"
822
+ },
823
+ {
824
+ internalType: "bool",
825
+ name: "stable",
826
+ type: "bool"
827
+ }
828
+ ],
829
+ internalType: "struct Router.route[]",
830
+ name: "routes",
831
+ type: "tuple[]"
832
+ },
833
+ {
834
+ internalType: "address",
835
+ name: "to",
836
+ type: "address"
837
+ },
838
+ {
839
+ internalType: "uint256",
840
+ name: "deadline",
841
+ type: "uint256"
842
+ }
843
+ ],
844
+ name: "swapExactTokensForETH",
845
+ outputs: [
846
+ {
847
+ internalType: "uint256[]",
848
+ name: "amounts",
849
+ type: "uint256[]"
850
+ }
851
+ ],
852
+ stateMutability: "nonpayable",
853
+ type: "function"
854
+ },
855
+ {
856
+ inputs: [
857
+ {
858
+ internalType: "uint256",
859
+ name: "amountIn",
860
+ type: "uint256"
861
+ },
862
+ {
863
+ internalType: "uint256",
864
+ name: "amountOutMin",
865
+ type: "uint256"
866
+ },
867
+ {
868
+ components: [
869
+ {
870
+ internalType: "address",
871
+ name: "from",
872
+ type: "address"
873
+ },
874
+ {
875
+ internalType: "address",
876
+ name: "to",
877
+ type: "address"
878
+ },
879
+ {
880
+ internalType: "bool",
881
+ name: "stable",
882
+ type: "bool"
883
+ }
884
+ ],
885
+ internalType: "struct Router.route[]",
886
+ name: "routes",
887
+ type: "tuple[]"
888
+ },
889
+ {
890
+ internalType: "address",
891
+ name: "to",
892
+ type: "address"
893
+ },
894
+ {
895
+ internalType: "uint256",
896
+ name: "deadline",
897
+ type: "uint256"
898
+ }
899
+ ],
900
+ name: "swapExactTokensForTokens",
901
+ outputs: [
902
+ {
903
+ internalType: "uint256[]",
904
+ name: "amounts",
905
+ type: "uint256[]"
906
+ }
907
+ ],
908
+ stateMutability: "nonpayable",
909
+ type: "function"
910
+ },
911
+ {
912
+ inputs: [
913
+ {
914
+ internalType: "uint256",
915
+ name: "amountIn",
916
+ type: "uint256"
917
+ },
918
+ {
919
+ internalType: "uint256",
920
+ name: "amountOutMin",
921
+ type: "uint256"
922
+ },
923
+ {
924
+ internalType: "address",
925
+ name: "tokenFrom",
926
+ type: "address"
927
+ },
928
+ {
929
+ internalType: "address",
930
+ name: "tokenTo",
931
+ type: "address"
932
+ },
933
+ {
934
+ internalType: "bool",
935
+ name: "stable",
936
+ type: "bool"
937
+ },
938
+ {
939
+ internalType: "address",
940
+ name: "to",
941
+ type: "address"
942
+ },
943
+ {
944
+ internalType: "uint256",
945
+ name: "deadline",
946
+ type: "uint256"
947
+ }
948
+ ],
949
+ name: "swapExactTokensForTokensSimple",
950
+ outputs: [
951
+ {
952
+ internalType: "uint256[]",
953
+ name: "amounts",
954
+ type: "uint256[]"
955
+ }
956
+ ],
957
+ stateMutability: "nonpayable",
958
+ type: "function"
959
+ },
960
+ {
961
+ inputs: [],
962
+ name: "weth",
963
+ outputs: [
964
+ {
965
+ internalType: "contract IWETH",
966
+ name: "",
967
+ type: "address"
968
+ }
969
+ ],
970
+ stateMutability: "view",
971
+ type: "function"
972
+ },
973
+ {
974
+ stateMutability: "payable",
975
+ type: "receive"
976
+ },
977
+ {
978
+ inputs: [
979
+ {
980
+ internalType: "address",
981
+ name: "tokenA",
982
+ type: "address"
983
+ },
984
+ {
985
+ internalType: "address",
986
+ name: "tokenB",
987
+ type: "address"
988
+ },
989
+ {
990
+ internalType: "address",
991
+ name: "_factory",
992
+ type: "address"
993
+ }
994
+ ],
995
+ name: "quoteStableLiquidityRatio",
996
+ outputs: [
997
+ {
998
+ internalType: "uint256",
999
+ name: "ratio",
1000
+ type: "uint256"
1001
+ }
1002
+ ],
1003
+ stateMutability: "view",
1004
+ type: "function"
1005
+ },
1006
+ {
1007
+ inputs: [],
1008
+ name: "defaultFactory",
1009
+ outputs: [
1010
+ {
1011
+ internalType: "address",
1012
+ name: "",
1013
+ type: "address"
1014
+ }
1015
+ ],
1016
+ stateMutability: "view",
1017
+ type: "function"
1018
+ }
1019
+ ];
1020
+ export {
1021
+ e as abi
1022
+ };