viem 0.0.1-sushi.26 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (525) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +132 -2
  3. package/abi/package.json +4 -0
  4. package/dist/abi.d.ts +6 -0
  5. package/dist/abi.js +21 -0
  6. package/dist/abi.js.map +1 -0
  7. package/dist/abi.mjs +21 -0
  8. package/dist/abi.mjs.map +1 -0
  9. package/dist/chain-819c7ff7.d.ts +553 -0
  10. package/dist/{chain-c4ccb458.d.ts → chain-a4f98ba3.d.ts} +1 -1
  11. package/dist/chains.d.ts +5 -3
  12. package/dist/chains.js +46 -46
  13. package/dist/chains.mjs +1 -1
  14. package/dist/chunk-APZXOA44.mjs +208 -0
  15. package/dist/chunk-APZXOA44.mjs.map +1 -0
  16. package/dist/chunk-HCZO3OIX.js +208 -0
  17. package/dist/chunk-HCZO3OIX.js.map +1 -0
  18. package/dist/{chunk-SD5X7F4U.mjs → chunk-I7AINPMM.mjs} +2756 -456
  19. package/dist/chunk-I7AINPMM.mjs.map +1 -0
  20. package/dist/chunk-QJNPIGP5.js +5326 -0
  21. package/dist/chunk-QJNPIGP5.js.map +1 -0
  22. package/dist/contract.d.ts +9 -122
  23. package/dist/contract.js +4 -4
  24. package/dist/contract.mjs +18 -18
  25. package/dist/{createClient-68ee4bb4.d.ts → createClient-a47ae6f5.d.ts} +13 -13
  26. package/dist/createPublicClient-e2eae0fc.d.ts +771 -0
  27. package/dist/{eip1193-6f9ba163.d.ts → eip1193-a882d1b8.d.ts} +14 -3
  28. package/dist/encodeFunctionResult-9eb553ce.d.ts +75 -0
  29. package/dist/encodePacked-4c019ed8.d.ts +12 -0
  30. package/dist/ens.d.ts +8 -69
  31. package/dist/ens.js +4 -199
  32. package/dist/ens.js.map +1 -1
  33. package/dist/ens.mjs +6 -201
  34. package/dist/ens.mjs.map +1 -1
  35. package/dist/formatAbiItem-622d2303.d.ts +14 -0
  36. package/dist/getAbiItem-159f3263.d.ts +22 -0
  37. package/dist/index.d.ts +106 -55
  38. package/dist/index.js +451 -41
  39. package/dist/index.js.map +1 -1
  40. package/dist/index.mjs +445 -35
  41. package/dist/index.mjs.map +1 -1
  42. package/dist/namehash-afff0feb.d.ts +25 -0
  43. package/dist/parseGwei-a2d0d77a.d.ts +497 -0
  44. package/dist/public.d.ts +11 -336
  45. package/dist/public.js +4 -3
  46. package/dist/public.mjs +3 -2
  47. package/dist/test-13f4413b.d.ts +205 -0
  48. package/dist/test.d.ts +8 -149
  49. package/dist/test.js +19 -222
  50. package/dist/test.js.map +1 -1
  51. package/dist/test.mjs +29 -232
  52. package/dist/test.mjs.map +1 -1
  53. package/dist/utils/index.d.ts +44 -231
  54. package/dist/utils/index.js +30 -2
  55. package/dist/utils/index.mjs +61 -33
  56. package/dist/wallet.d.ts +6 -41
  57. package/dist/wallet.js +2 -3
  58. package/dist/wallet.mjs +5 -6
  59. package/dist/window.d.ts +4 -2
  60. package/package.json +11 -6
  61. package/public/package.json +4 -0
  62. package/test/package.json +4 -0
  63. package/dist/call-ac509982.d.ts +0 -23
  64. package/dist/chain-f16512e8.d.ts +0 -372
  65. package/dist/chunk-2PFNLP3F.js +0 -192
  66. package/dist/chunk-2PFNLP3F.js.map +0 -1
  67. package/dist/chunk-5ND4P6QL.mjs +0 -192
  68. package/dist/chunk-5ND4P6QL.mjs.map +0 -1
  69. package/dist/chunk-NXCI5KQC.js +0 -3026
  70. package/dist/chunk-NXCI5KQC.js.map +0 -1
  71. package/dist/chunk-O7T5NQLB.mjs +0 -1091
  72. package/dist/chunk-O7T5NQLB.mjs.map +0 -1
  73. package/dist/chunk-SD5X7F4U.mjs.map +0 -1
  74. package/dist/chunk-UTL6F7UN.js +0 -1091
  75. package/dist/chunk-UTL6F7UN.js.map +0 -1
  76. package/dist/contract-9e76e561.d.ts +0 -166
  77. package/dist/createPublicClient-b732194e.d.ts +0 -19
  78. package/dist/createTestClient-dedf321e.d.ts +0 -34
  79. package/dist/createWalletClient-75813d83.d.ts +0 -30
  80. package/dist/decodeErrorResult-0b934d23.d.ts +0 -16
  81. package/dist/getAbiItem-c8e6e7d4.d.ts +0 -97
  82. package/dist/readContract-4f6e2692.d.ts +0 -10
  83. package/dist/rpc-a5a7f376.d.ts +0 -121
  84. package/dist/sendTransaction-e713f90c.d.ts +0 -12
  85. package/dist/transactionReceipt-2a86c7c7.d.ts +0 -26
  86. package/dist/transactionRequest-c7794f5e.d.ts +0 -15
  87. package/dist/watchEvent-c346c12d.d.ts +0 -41
  88. package/src/_test/abis.ts +0 -1420
  89. package/src/_test/bench.ts +0 -15
  90. package/src/_test/constants.ts +0 -63
  91. package/src/_test/generated.ts +0 -128
  92. package/src/_test/globalSetup.ts +0 -11
  93. package/src/_test/index.ts +0 -25
  94. package/src/_test/setup.ts +0 -8
  95. package/src/_test/utils.ts +0 -155
  96. package/src/actions/ens/getEnsAddress.bench.ts +0 -26
  97. package/src/actions/ens/getEnsAddress.test.ts +0 -97
  98. package/src/actions/ens/getEnsAddress.ts +0 -122
  99. package/src/actions/ens/getEnsName.bench.ts +0 -30
  100. package/src/actions/ens/getEnsName.test.ts +0 -101
  101. package/src/actions/ens/getEnsName.ts +0 -106
  102. package/src/actions/ens/index.test.ts +0 -12
  103. package/src/actions/ens/index.ts +0 -3
  104. package/src/actions/index.test.ts +0 -81
  105. package/src/actions/index.ts +0 -182
  106. package/src/actions/public/call.bench.ts +0 -48
  107. package/src/actions/public/call.test.ts +0 -99
  108. package/src/actions/public/call.ts +0 -97
  109. package/src/actions/public/createBlockFilter.bench.ts +0 -11
  110. package/src/actions/public/createBlockFilter.test.ts +0 -9
  111. package/src/actions/public/createBlockFilter.ts +0 -14
  112. package/src/actions/public/createContractEventFilter.test.ts +0 -119
  113. package/src/actions/public/createContractEventFilter.ts +0 -69
  114. package/src/actions/public/createEventFilter.test.ts +0 -277
  115. package/src/actions/public/createEventFilter.ts +0 -93
  116. package/src/actions/public/createPendingTransactionFilter.bench.ts +0 -11
  117. package/src/actions/public/createPendingTransactionFilter.test.ts +0 -9
  118. package/src/actions/public/createPendingTransactionFilter.ts +0 -14
  119. package/src/actions/public/estimateGas.bench.ts +0 -46
  120. package/src/actions/public/estimateGas.test.ts +0 -92
  121. package/src/actions/public/estimateGas.ts +0 -61
  122. package/src/actions/public/getBalance.test.ts +0 -83
  123. package/src/actions/public/getBalance.ts +0 -37
  124. package/src/actions/public/getBlock.bench.ts +0 -28
  125. package/src/actions/public/getBlock.test.ts +0 -575
  126. package/src/actions/public/getBlock.ts +0 -65
  127. package/src/actions/public/getBlockNumber.bench.ts +0 -28
  128. package/src/actions/public/getBlockNumber.test.ts +0 -27
  129. package/src/actions/public/getBlockNumber.ts +0 -32
  130. package/src/actions/public/getBlockTransactionCount.bench.ts +0 -15
  131. package/src/actions/public/getBlockTransactionCount.test.ts +0 -57
  132. package/src/actions/public/getBlockTransactionCount.ts +0 -52
  133. package/src/actions/public/getBytecode.test.ts +0 -27
  134. package/src/actions/public/getBytecode.ts +0 -32
  135. package/src/actions/public/getChainId.bench.ts +0 -15
  136. package/src/actions/public/getChainId.test.ts +0 -8
  137. package/src/actions/public/getChainId.ts +0 -7
  138. package/src/actions/public/getFeeHistory.bench.ts +0 -18
  139. package/src/actions/public/getFeeHistory.test.ts +0 -137
  140. package/src/actions/public/getFeeHistory.ts +0 -44
  141. package/src/actions/public/getFilterChanges.bench.ts +0 -13
  142. package/src/actions/public/getFilterChanges.test.ts +0 -383
  143. package/src/actions/public/getFilterChanges.ts +0 -23
  144. package/src/actions/public/getFilterLogs.test.ts +0 -297
  145. package/src/actions/public/getFilterLogs.ts +0 -20
  146. package/src/actions/public/getGasPrice.bench.ts +0 -19
  147. package/src/actions/public/getGasPrice.test.ts +0 -8
  148. package/src/actions/public/getGasPrice.ts +0 -15
  149. package/src/actions/public/getLogs.test.ts +0 -306
  150. package/src/actions/public/getLogs.ts +0 -84
  151. package/src/actions/public/getStorageAt.test.ts +0 -34
  152. package/src/actions/public/getStorageAt.ts +0 -32
  153. package/src/actions/public/getTransaction.bench.ts +0 -33
  154. package/src/actions/public/getTransaction.test.ts +0 -311
  155. package/src/actions/public/getTransaction.ts +0 -95
  156. package/src/actions/public/getTransactionConfirmations.test.ts +0 -69
  157. package/src/actions/public/getTransactionConfirmations.ts +0 -38
  158. package/src/actions/public/getTransactionCount.test.ts +0 -56
  159. package/src/actions/public/getTransactionCount.ts +0 -34
  160. package/src/actions/public/getTransactionReceipt.bench.ts +0 -33
  161. package/src/actions/public/getTransactionReceipt.test.ts +0 -179
  162. package/src/actions/public/getTransactionReceipt.ts +0 -34
  163. package/src/actions/public/index.test.ts +0 -43
  164. package/src/actions/public/index.ts +0 -146
  165. package/src/actions/public/multicall.test.ts +0 -452
  166. package/src/actions/public/multicall.ts +0 -108
  167. package/src/actions/public/readContract.test.ts +0 -328
  168. package/src/actions/public/readContract.ts +0 -73
  169. package/src/actions/public/simulateContract.bench.ts +0 -41
  170. package/src/actions/public/simulateContract.test.ts +0 -410
  171. package/src/actions/public/simulateContract.ts +0 -91
  172. package/src/actions/public/uninstallFilter.bench.ts +0 -13
  173. package/src/actions/public/uninstallFilter.test.ts +0 -65
  174. package/src/actions/public/uninstallFilter.ts +0 -17
  175. package/src/actions/public/waitForTransactionReceipt.test.ts +0 -322
  176. package/src/actions/public/waitForTransactionReceipt.ts +0 -170
  177. package/src/actions/public/watchBlockNumber.test.ts +0 -166
  178. package/src/actions/public/watchBlockNumber.ts +0 -79
  179. package/src/actions/public/watchBlocks.test.ts +0 -210
  180. package/src/actions/public/watchBlocks.ts +0 -114
  181. package/src/actions/public/watchContractEvent.test.ts +0 -305
  182. package/src/actions/public/watchContractEvent.ts +0 -108
  183. package/src/actions/public/watchEvent.test.ts +0 -195
  184. package/src/actions/public/watchEvent.ts +0 -95
  185. package/src/actions/public/watchPendingTransactions.test.ts +0 -116
  186. package/src/actions/public/watchPendingTransactions.ts +0 -74
  187. package/src/actions/test/dropTransaction.test.ts +0 -34
  188. package/src/actions/test/dropTransaction.ts +0 -17
  189. package/src/actions/test/getAutomine.test.ts +0 -14
  190. package/src/actions/test/getAutomine.ts +0 -11
  191. package/src/actions/test/getTxpoolContent.test.ts +0 -45
  192. package/src/actions/test/getTxpoolContent.ts +0 -7
  193. package/src/actions/test/getTxpoolStatus.test.ts +0 -41
  194. package/src/actions/test/getTxpoolStatus.ts +0 -12
  195. package/src/actions/test/impersonateAccount.test.ts +0 -26
  196. package/src/actions/test/impersonateAccount.ts +0 -17
  197. package/src/actions/test/increaseTime.test.ts +0 -18
  198. package/src/actions/test/increaseTime.ts +0 -17
  199. package/src/actions/test/index.test.ts +0 -38
  200. package/src/actions/test/index.ts +0 -77
  201. package/src/actions/test/inspectTxpool.test.ts +0 -50
  202. package/src/actions/test/inspectTxpool.ts +0 -7
  203. package/src/actions/test/mine.test.ts +0 -20
  204. package/src/actions/test/mine.ts +0 -16
  205. package/src/actions/test/removeBlockTimestampInterval.test.ts +0 -23
  206. package/src/actions/test/removeBlockTimestampInterval.ts +0 -7
  207. package/src/actions/test/reset.test.ts +0 -19
  208. package/src/actions/test/reset.ts +0 -18
  209. package/src/actions/test/revert.test.ts +0 -39
  210. package/src/actions/test/revert.ts +0 -14
  211. package/src/actions/test/sendUnsignedTransaction.test.ts +0 -52
  212. package/src/actions/test/sendUnsignedTransaction.ts +0 -19
  213. package/src/actions/test/setAutomine.test.ts +0 -14
  214. package/src/actions/test/setAutomine.ts +0 -8
  215. package/src/actions/test/setBalance.test.ts +0 -29
  216. package/src/actions/test/setBalance.ts +0 -20
  217. package/src/actions/test/setBlockGasLimit.test.ts +0 -21
  218. package/src/actions/test/setBlockGasLimit.ts +0 -17
  219. package/src/actions/test/setBlockTimestampInterval.test.ts +0 -23
  220. package/src/actions/test/setBlockTimestampInterval.ts +0 -16
  221. package/src/actions/test/setCode.test.ts +0 -26
  222. package/src/actions/test/setCode.ts +0 -19
  223. package/src/actions/test/setCoinbase.test.ts +0 -11
  224. package/src/actions/test/setCoinbase.ts +0 -17
  225. package/src/actions/test/setIntervalMining.test.ts +0 -30
  226. package/src/actions/test/setIntervalMining.ts +0 -16
  227. package/src/actions/test/setLoggingEnabled.test.ts +0 -10
  228. package/src/actions/test/setLoggingEnabled.ts +0 -8
  229. package/src/actions/test/setMinGasPrice.test.ts +0 -22
  230. package/src/actions/test/setMinGasPrice.ts +0 -17
  231. package/src/actions/test/setNextBlockBaseFeePerGas.test.ts +0 -23
  232. package/src/actions/test/setNextBlockBaseFeePerGas.ts +0 -17
  233. package/src/actions/test/setNextBlockTimestamp.test.ts +0 -19
  234. package/src/actions/test/setNextBlockTimestamp.ts +0 -17
  235. package/src/actions/test/setNonce.test.ts +0 -28
  236. package/src/actions/test/setNonce.ts +0 -20
  237. package/src/actions/test/setRpcUrl.test.ts +0 -9
  238. package/src/actions/test/setRpcUrl.ts +0 -8
  239. package/src/actions/test/setStorageAt.test.ts +0 -36
  240. package/src/actions/test/setStorageAt.ts +0 -26
  241. package/src/actions/test/snapshot.test.ts +0 -18
  242. package/src/actions/test/snapshot.ts +0 -7
  243. package/src/actions/test/stopImpersonatingAccount.test.ts +0 -29
  244. package/src/actions/test/stopImpersonatingAccount.ts +0 -17
  245. package/src/actions/wallet/addChain.test.ts +0 -14
  246. package/src/actions/wallet/addChain.ts +0 -21
  247. package/src/actions/wallet/deployContract.test.ts +0 -55
  248. package/src/actions/wallet/deployContract.ts +0 -38
  249. package/src/actions/wallet/getAccounts.test.ts +0 -22
  250. package/src/actions/wallet/getAccounts.ts +0 -7
  251. package/src/actions/wallet/getPermissions.test.ts +0 -24
  252. package/src/actions/wallet/getPermissions.ts +0 -9
  253. package/src/actions/wallet/index.test.ts +0 -21
  254. package/src/actions/wallet/index.ts +0 -36
  255. package/src/actions/wallet/requestAccounts.test.ts +0 -13
  256. package/src/actions/wallet/requestAccounts.ts +0 -7
  257. package/src/actions/wallet/requestPermissions.test.ts +0 -26
  258. package/src/actions/wallet/requestPermissions.ts +0 -19
  259. package/src/actions/wallet/sendTransaction.bench.ts +0 -57
  260. package/src/actions/wallet/sendTransaction.test.ts +0 -440
  261. package/src/actions/wallet/sendTransaction.ts +0 -77
  262. package/src/actions/wallet/signMessage.test.ts +0 -61
  263. package/src/actions/wallet/signMessage.ts +0 -35
  264. package/src/actions/wallet/switchChain.test.ts +0 -21
  265. package/src/actions/wallet/switchChain.ts +0 -19
  266. package/src/actions/wallet/watchAsset.test.ts +0 -40
  267. package/src/actions/wallet/watchAsset.ts +0 -16
  268. package/src/actions/wallet/writeContract.test.ts +0 -84
  269. package/src/actions/wallet/writeContract.ts +0 -47
  270. package/src/chains.test.ts +0 -439
  271. package/src/chains.ts +0 -99
  272. package/src/clients/createClient.test.ts +0 -295
  273. package/src/clients/createClient.ts +0 -81
  274. package/src/clients/createPublicClient.test.ts +0 -165
  275. package/src/clients/createPublicClient.ts +0 -49
  276. package/src/clients/createTestClient.test.ts +0 -145
  277. package/src/clients/createTestClient.ts +0 -72
  278. package/src/clients/createWalletClient.test.ts +0 -121
  279. package/src/clients/createWalletClient.ts +0 -54
  280. package/src/clients/index.test.ts +0 -19
  281. package/src/clients/index.ts +0 -31
  282. package/src/clients/transports/createTransport.test.ts +0 -58
  283. package/src/clients/transports/createTransport.ts +0 -48
  284. package/src/clients/transports/custom.test.ts +0 -98
  285. package/src/clients/transports/custom.ts +0 -34
  286. package/src/clients/transports/fallback.test.ts +0 -393
  287. package/src/clients/transports/fallback.ts +0 -58
  288. package/src/clients/transports/http.test.ts +0 -109
  289. package/src/clients/transports/http.ts +0 -51
  290. package/src/clients/transports/index.test.ts +0 -15
  291. package/src/clients/transports/index.ts +0 -17
  292. package/src/clients/transports/webSocket.test.ts +0 -164
  293. package/src/clients/transports/webSocket.ts +0 -118
  294. package/src/constants/abis.test.ts +0 -53
  295. package/src/constants/abis.ts +0 -44
  296. package/src/constants/index.test.ts +0 -14
  297. package/src/constants/index.ts +0 -3
  298. package/src/constants/solidity.test.ts +0 -41
  299. package/src/constants/solidity.ts +0 -35
  300. package/src/contract.test.ts +0 -32
  301. package/src/contract.ts +0 -68
  302. package/src/ens.test.ts +0 -15
  303. package/src/ens.ts +0 -8
  304. package/src/errors/abi.test.ts +0 -81
  305. package/src/errors/abi.ts +0 -254
  306. package/src/errors/address.test.ts +0 -14
  307. package/src/errors/address.ts +0 -9
  308. package/src/errors/base.test.ts +0 -114
  309. package/src/errors/base.ts +0 -57
  310. package/src/errors/block.test.ts +0 -24
  311. package/src/errors/block.ts +0 -18
  312. package/src/errors/chain.test.ts +0 -46
  313. package/src/errors/chain.ts +0 -33
  314. package/src/errors/contract.test.ts +0 -233
  315. package/src/errors/contract.ts +0 -178
  316. package/src/errors/data.ts +0 -20
  317. package/src/errors/encoding.ts +0 -60
  318. package/src/errors/index.ts +0 -82
  319. package/src/errors/log.ts +0 -8
  320. package/src/errors/request.test.ts +0 -330
  321. package/src/errors/request.ts +0 -163
  322. package/src/errors/rpc.test.ts +0 -87
  323. package/src/errors/rpc.ts +0 -113
  324. package/src/errors/transaction.test.ts +0 -83
  325. package/src/errors/transaction.ts +0 -54
  326. package/src/errors/transport.test.ts +0 -11
  327. package/src/errors/transport.ts +0 -12
  328. package/src/index.test.ts +0 -116
  329. package/src/index.ts +0 -132
  330. package/src/public.test.ts +0 -36
  331. package/src/public.ts +0 -76
  332. package/src/test.test.ts +0 -38
  333. package/src/test.ts +0 -52
  334. package/src/types/block.ts +0 -71
  335. package/src/types/chain.ts +0 -6
  336. package/src/types/contract.ts +0 -497
  337. package/src/types/eip1193.ts +0 -1041
  338. package/src/types/fee.ts +0 -47
  339. package/src/types/filter.ts +0 -8
  340. package/src/types/formatter.ts +0 -23
  341. package/src/types/index.ts +0 -84
  342. package/src/types/log.ts +0 -22
  343. package/src/types/misc.ts +0 -5
  344. package/src/types/multicall.ts +0 -82
  345. package/src/types/rpc.ts +0 -35
  346. package/src/types/transaction.ts +0 -145
  347. package/src/types/utils.ts +0 -88
  348. package/src/types/window.ts +0 -9
  349. package/src/utils/abi/decodeAbi.bench.ts +0 -135
  350. package/src/utils/abi/decodeAbi.test.ts +0 -1614
  351. package/src/utils/abi/decodeAbi.ts +0 -300
  352. package/src/utils/abi/decodeDeployData.test.ts +0 -151
  353. package/src/utils/abi/decodeDeployData.ts +0 -44
  354. package/src/utils/abi/decodeErrorResult.test.ts +0 -230
  355. package/src/utils/abi/decodeErrorResult.ts +0 -45
  356. package/src/utils/abi/decodeEventLog.test.ts +0 -542
  357. package/src/utils/abi/decodeEventLog.ts +0 -107
  358. package/src/utils/abi/decodeFunctionData.test.ts +0 -138
  359. package/src/utils/abi/decodeFunctionData.ts +0 -32
  360. package/src/utils/abi/decodeFunctionResult.test.ts +0 -333
  361. package/src/utils/abi/decodeFunctionResult.ts +0 -57
  362. package/src/utils/abi/encodeAbi.bench.ts +0 -163
  363. package/src/utils/abi/encodeAbi.test.ts +0 -1447
  364. package/src/utils/abi/encodeAbi.ts +0 -273
  365. package/src/utils/abi/encodeDeployData.test.ts +0 -124
  366. package/src/utils/abi/encodeDeployData.ts +0 -40
  367. package/src/utils/abi/encodeErrorResult.test.ts +0 -192
  368. package/src/utils/abi/encodeErrorResult.ts +0 -47
  369. package/src/utils/abi/encodeEventTopics.test.ts +0 -345
  370. package/src/utils/abi/encodeEventTopics.ts +0 -75
  371. package/src/utils/abi/encodeFunctionData.test.ts +0 -138
  372. package/src/utils/abi/encodeFunctionData.ts +0 -42
  373. package/src/utils/abi/encodeFunctionResult.test.ts +0 -279
  374. package/src/utils/abi/encodeFunctionResult.ts +0 -41
  375. package/src/utils/abi/formatAbiItem.test.ts +0 -335
  376. package/src/utils/abi/formatAbiItem.ts +0 -41
  377. package/src/utils/abi/formatAbiItemWithArgs.test.ts +0 -291
  378. package/src/utils/abi/formatAbiItemWithArgs.ts +0 -27
  379. package/src/utils/abi/getAbiItem.test.ts +0 -547
  380. package/src/utils/abi/getAbiItem.ts +0 -95
  381. package/src/utils/abi/index.test.ts +0 -24
  382. package/src/utils/abi/index.ts +0 -48
  383. package/src/utils/address/getAddress.bench.ts +0 -22
  384. package/src/utils/address/getAddress.test.ts +0 -46
  385. package/src/utils/address/getAddress.ts +0 -28
  386. package/src/utils/address/getContractAddress.bench.ts +0 -20
  387. package/src/utils/address/getContractAddress.test.ts +0 -78
  388. package/src/utils/address/getContractAddress.ts +0 -59
  389. package/src/utils/address/index.test.ts +0 -17
  390. package/src/utils/address/index.ts +0 -16
  391. package/src/utils/address/isAddress.test.ts +0 -10
  392. package/src/utils/address/isAddress.ts +0 -10
  393. package/src/utils/address/isAddressEqual.test.ts +0 -55
  394. package/src/utils/address/isAddressEqual.ts +0 -6
  395. package/src/utils/buildRequest.test.ts +0 -428
  396. package/src/utils/buildRequest.ts +0 -72
  397. package/src/utils/chain.test.ts +0 -43
  398. package/src/utils/chain.ts +0 -8
  399. package/src/utils/contract/extractFunctionParts.test.ts +0 -109
  400. package/src/utils/contract/extractFunctionParts.ts +0 -27
  401. package/src/utils/contract/getContractError.test.ts +0 -282
  402. package/src/utils/contract/getContractError.ts +0 -58
  403. package/src/utils/contract/index.test.ts +0 -15
  404. package/src/utils/contract/index.ts +0 -8
  405. package/src/utils/data/concat.test.ts +0 -35
  406. package/src/utils/data/concat.ts +0 -34
  407. package/src/utils/data/index.test.ts +0 -23
  408. package/src/utils/data/index.ts +0 -13
  409. package/src/utils/data/isBytes.test.ts +0 -9
  410. package/src/utils/data/isBytes.ts +0 -7
  411. package/src/utils/data/isHex.test.ts +0 -13
  412. package/src/utils/data/isHex.ts +0 -5
  413. package/src/utils/data/pad.bench.ts +0 -30
  414. package/src/utils/data/pad.test.ts +0 -367
  415. package/src/utils/data/pad.ts +0 -53
  416. package/src/utils/data/size.test.ts +0 -18
  417. package/src/utils/data/size.ts +0 -13
  418. package/src/utils/data/slice.test.ts +0 -203
  419. package/src/utils/data/slice.ts +0 -60
  420. package/src/utils/data/trim.bench.ts +0 -34
  421. package/src/utils/data/trim.test.ts +0 -175
  422. package/src/utils/data/trim.ts +0 -33
  423. package/src/utils/encoding/decodeBytes.bench.ts +0 -40
  424. package/src/utils/encoding/decodeBytes.test.ts +0 -144
  425. package/src/utils/encoding/decodeBytes.ts +0 -63
  426. package/src/utils/encoding/decodeHex.bench.ts +0 -24
  427. package/src/utils/encoding/decodeHex.test.ts +0 -167
  428. package/src/utils/encoding/decodeHex.ts +0 -76
  429. package/src/utils/encoding/decodeRlp.bench.ts +0 -34
  430. package/src/utils/encoding/decodeRlp.test.ts +0 -350
  431. package/src/utils/encoding/decodeRlp.ts +0 -121
  432. package/src/utils/encoding/encodeBytes.bench.ts +0 -29
  433. package/src/utils/encoding/encodeBytes.test.ts +0 -676
  434. package/src/utils/encoding/encodeBytes.ts +0 -59
  435. package/src/utils/encoding/encodeHex.bench.ts +0 -49
  436. package/src/utils/encoding/encodeHex.test.ts +0 -232
  437. package/src/utils/encoding/encodeHex.ts +0 -104
  438. package/src/utils/encoding/encodeRlp.bench.ts +0 -54
  439. package/src/utils/encoding/encodeRlp.test.ts +0 -254
  440. package/src/utils/encoding/encodeRlp.ts +0 -48
  441. package/src/utils/encoding/index.test.ts +0 -32
  442. package/src/utils/encoding/index.ts +0 -36
  443. package/src/utils/ens/index.test.ts +0 -14
  444. package/src/utils/ens/index.ts +0 -7
  445. package/src/utils/ens/labelhash.test.ts +0 -55
  446. package/src/utils/ens/labelhash.ts +0 -16
  447. package/src/utils/ens/namehash.test.ts +0 -65
  448. package/src/utils/ens/namehash.ts +0 -28
  449. package/src/utils/ens/normalize.bench.ts +0 -14
  450. package/src/utils/ens/normalize.test.ts +0 -35
  451. package/src/utils/ens/normalize.ts +0 -14
  452. package/src/utils/ens/packetToBytes.test.ts +0 -11
  453. package/src/utils/ens/packetToBytes.ts +0 -29
  454. package/src/utils/formatters/block.bench.ts +0 -51
  455. package/src/utils/formatters/block.test.ts +0 -115
  456. package/src/utils/formatters/block.ts +0 -37
  457. package/src/utils/formatters/extract.test.ts +0 -14
  458. package/src/utils/formatters/extract.ts +0 -18
  459. package/src/utils/formatters/feeHistory.test.ts +0 -66
  460. package/src/utils/formatters/feeHistory.ts +0 -12
  461. package/src/utils/formatters/format.test.ts +0 -93
  462. package/src/utils/formatters/format.ts +0 -90
  463. package/src/utils/formatters/index.test.ts +0 -27
  464. package/src/utils/formatters/index.ts +0 -34
  465. package/src/utils/formatters/log.test.ts +0 -79
  466. package/src/utils/formatters/log.ts +0 -12
  467. package/src/utils/formatters/transaction.test.ts +0 -271
  468. package/src/utils/formatters/transaction.ts +0 -63
  469. package/src/utils/formatters/transactionReceipt.bench.ts +0 -73
  470. package/src/utils/formatters/transactionReceipt.test.ts +0 -151
  471. package/src/utils/formatters/transactionReceipt.ts +0 -63
  472. package/src/utils/formatters/transactionRequest.bench.ts +0 -29
  473. package/src/utils/formatters/transactionRequest.test.ts +0 -237
  474. package/src/utils/formatters/transactionRequest.ts +0 -56
  475. package/src/utils/hash/getEventSignature.test.ts +0 -61
  476. package/src/utils/hash/getEventSignature.ts +0 -4
  477. package/src/utils/hash/getFunctionSignature.test.ts +0 -22
  478. package/src/utils/hash/getFunctionSignature.ts +0 -5
  479. package/src/utils/hash/hashFunction.test.ts +0 -65
  480. package/src/utils/hash/hashFunction.ts +0 -12
  481. package/src/utils/hash/index.test.ts +0 -13
  482. package/src/utils/hash/index.ts +0 -5
  483. package/src/utils/hash/keccak256.test.ts +0 -59
  484. package/src/utils/hash/keccak256.ts +0 -21
  485. package/src/utils/index.test.ts +0 -111
  486. package/src/utils/index.ts +0 -142
  487. package/src/utils/observe.test.ts +0 -176
  488. package/src/utils/observe.ts +0 -66
  489. package/src/utils/poll.test.ts +0 -127
  490. package/src/utils/poll.ts +0 -42
  491. package/src/utils/promise/index.test.ts +0 -14
  492. package/src/utils/promise/index.ts +0 -3
  493. package/src/utils/promise/withCache.test.ts +0 -97
  494. package/src/utils/promise/withCache.ts +0 -73
  495. package/src/utils/promise/withRetry.test.ts +0 -231
  496. package/src/utils/promise/withRetry.ts +0 -61
  497. package/src/utils/promise/withTimeout.test.ts +0 -37
  498. package/src/utils/promise/withTimeout.ts +0 -39
  499. package/src/utils/rpc.test.ts +0 -990
  500. package/src/utils/rpc.ts +0 -294
  501. package/src/utils/stringify.test.ts +0 -13
  502. package/src/utils/stringify.ts +0 -5
  503. package/src/utils/uid.ts +0 -14
  504. package/src/utils/unit/constants.test.ts +0 -22
  505. package/src/utils/unit/constants.ts +0 -12
  506. package/src/utils/unit/formatEther.test.ts +0 -75
  507. package/src/utils/unit/formatEther.ts +0 -6
  508. package/src/utils/unit/formatGwei.test.ts +0 -32
  509. package/src/utils/unit/formatGwei.ts +0 -6
  510. package/src/utils/unit/formatUnit.bench.ts +0 -21
  511. package/src/utils/unit/formatUnit.test.ts +0 -40
  512. package/src/utils/unit/formatUnit.ts +0 -16
  513. package/src/utils/unit/index.test.ts +0 -28
  514. package/src/utils/unit/index.ts +0 -7
  515. package/src/utils/unit/parseEther.test.ts +0 -126
  516. package/src/utils/unit/parseEther.ts +0 -6
  517. package/src/utils/unit/parseGwei.test.ts +0 -50
  518. package/src/utils/unit/parseGwei.ts +0 -6
  519. package/src/utils/unit/parseUnit.bench.ts +0 -21
  520. package/src/utils/unit/parseUnit.test.ts +0 -54
  521. package/src/utils/unit/parseUnit.ts +0 -27
  522. package/src/utils/wait.ts +0 -3
  523. package/src/wallet.test.ts +0 -19
  524. package/src/wallet.ts +0 -23
  525. package/src/window.ts +0 -1
package/dist/ens.mjs CHANGED
@@ -1,211 +1,16 @@
1
1
  import {
2
- readContract
3
- } from "./chunk-O7T5NQLB.mjs";
4
- import {
5
- ChainDoesNotSupportContract,
6
- ContractFunctionExecutionError,
7
- bytesToHex,
8
- concat,
9
- decodeFunctionResult,
10
- encodeBytes,
11
- encodeFunctionData,
12
- encodeHex,
13
- keccak256,
14
- panicReasons,
15
- stringToBytes
16
- } from "./chunk-SD5X7F4U.mjs";
2
+ getEnsAddress,
3
+ getEnsName,
4
+ labelhash,
5
+ namehash
6
+ } from "./chunk-APZXOA44.mjs";
7
+ import "./chunk-I7AINPMM.mjs";
17
8
 
18
9
  // src/utils/ens/normalize.ts
19
10
  import { toUnicode } from "idna-uts46-hx";
20
11
  function normalize(name) {
21
12
  return toUnicode(name, { useStd3ASCII: true });
22
13
  }
23
-
24
- // src/utils/ens/labelhash.ts
25
- function labelhash(label) {
26
- let result = new Uint8Array(32).fill(0);
27
- if (!label)
28
- return bytesToHex(result);
29
- return keccak256(stringToBytes(normalize(label)));
30
- }
31
-
32
- // src/utils/ens/namehash.ts
33
- function namehash(name) {
34
- let result = new Uint8Array(32).fill(0);
35
- if (!name)
36
- return bytesToHex(result);
37
- const labels = normalize(name).split(".");
38
- for (let i = labels.length - 1; i >= 0; i -= 1) {
39
- const hashed = keccak256(stringToBytes(labels[i]), "bytes");
40
- result = keccak256(concat([result, hashed]), "bytes");
41
- }
42
- return bytesToHex(result);
43
- }
44
-
45
- // src/utils/ens/packetToBytes.ts
46
- function packetToBytes(packet) {
47
- function length(value2) {
48
- if (value2 === "." || value2 === "..")
49
- return 1;
50
- return encodeBytes(value2.replace(/^\.|\.$/gm, "")).length + 2;
51
- }
52
- const bytes = new Uint8Array(length(packet));
53
- const value = packet.replace(/^\.|\.$/gm, "");
54
- if (!value.length)
55
- return bytes;
56
- let offset = 0;
57
- const list = value.split(".");
58
- for (let i = 0; i < list.length; i++) {
59
- const encoded = encodeBytes(list[i]);
60
- bytes[offset] = encoded.length;
61
- bytes.set(encoded, offset + 1);
62
- offset += encoded.length + 1;
63
- }
64
- return bytes;
65
- }
66
-
67
- // src/actions/ens/getEnsAddress.ts
68
- async function getEnsAddress(client, {
69
- blockNumber,
70
- blockTag,
71
- name,
72
- universalResolverAddress: universalResolverAddress_
73
- }) {
74
- let universalResolverAddress = universalResolverAddress_;
75
- if (!universalResolverAddress) {
76
- if (!client.chain)
77
- throw new Error(
78
- "client chain not configured. universalResolverAddress is required."
79
- );
80
- const contract = client.chain?.contracts?.ensUniversalResolver;
81
- if (!contract)
82
- throw new ChainDoesNotSupportContract({
83
- chain: client.chain,
84
- contract: { name: "ensUniversalResolver" }
85
- });
86
- if (blockNumber && contract.blockCreated && contract.blockCreated > blockNumber)
87
- throw new ChainDoesNotSupportContract({
88
- blockNumber,
89
- chain: client.chain,
90
- contract: {
91
- name: "ensUniversalResolver",
92
- blockCreated: contract.blockCreated
93
- }
94
- });
95
- universalResolverAddress = contract.address;
96
- }
97
- const res = await readContract(client, {
98
- address: universalResolverAddress,
99
- abi: [
100
- {
101
- name: "resolve",
102
- type: "function",
103
- stateMutability: "view",
104
- inputs: [
105
- { name: "name", type: "bytes" },
106
- { name: "data", type: "bytes" }
107
- ],
108
- outputs: [
109
- { name: "", type: "bytes" },
110
- { name: "address", type: "address" }
111
- ]
112
- }
113
- ],
114
- functionName: "resolve",
115
- args: [
116
- encodeHex(packetToBytes(name)),
117
- encodeFunctionData({
118
- abi: [
119
- {
120
- name: "addr",
121
- type: "function",
122
- stateMutability: "view",
123
- inputs: [{ name: "name", type: "bytes32" }],
124
- outputs: []
125
- }
126
- ],
127
- functionName: "addr",
128
- args: [namehash(name)]
129
- })
130
- ],
131
- blockNumber,
132
- blockTag
133
- });
134
- return decodeFunctionResult({
135
- abi: [
136
- {
137
- name: "addr",
138
- type: "function",
139
- stateMutability: "view",
140
- inputs: [],
141
- outputs: [{ name: "name", type: "address" }]
142
- }
143
- ],
144
- functionName: "addr",
145
- data: res[0]
146
- });
147
- }
148
-
149
- // src/actions/ens/getEnsName.ts
150
- async function getEnsName(client, {
151
- address,
152
- blockNumber,
153
- blockTag,
154
- universalResolverAddress: universalResolverAddress_
155
- }) {
156
- let universalResolverAddress = universalResolverAddress_;
157
- if (!universalResolverAddress) {
158
- if (!client.chain)
159
- throw new Error(
160
- "client chain not configured. universalResolverAddress is required."
161
- );
162
- const contract = client.chain?.contracts?.ensUniversalResolver;
163
- if (!contract)
164
- throw new ChainDoesNotSupportContract({
165
- chain: client.chain,
166
- contract: { name: "ensUniversalResolver" }
167
- });
168
- if (blockNumber && contract.blockCreated && contract.blockCreated > blockNumber)
169
- throw new ChainDoesNotSupportContract({
170
- blockNumber,
171
- chain: client.chain,
172
- contract: {
173
- name: "ensUniversalResolver",
174
- blockCreated: contract.blockCreated
175
- }
176
- });
177
- universalResolverAddress = contract.address;
178
- }
179
- const reverseNode = `${address.toLowerCase().substring(2)}.addr.reverse`;
180
- try {
181
- const res = await readContract(client, {
182
- address: universalResolverAddress,
183
- abi: [
184
- {
185
- name: "reverse",
186
- type: "function",
187
- stateMutability: "view",
188
- inputs: [{ type: "bytes", name: "reverseName" }],
189
- outputs: [
190
- { type: "string", name: "resolvedName" },
191
- { type: "address", name: "resolvedAddress" },
192
- { type: "address", name: "reverseResolver" },
193
- { type: "address", name: "resolver" }
194
- ]
195
- }
196
- ],
197
- functionName: "reverse",
198
- args: [encodeHex(packetToBytes(reverseNode))],
199
- blockNumber,
200
- blockTag
201
- });
202
- return res[0];
203
- } catch (error) {
204
- if (error instanceof ContractFunctionExecutionError && error.cause.reason === panicReasons[50])
205
- return null;
206
- throw error;
207
- }
208
- }
209
14
  export {
210
15
  getEnsAddress,
211
16
  getEnsName,
package/dist/ens.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/utils/ens/normalize.ts","../src/utils/ens/labelhash.ts","../src/utils/ens/namehash.ts","../src/utils/ens/packetToBytes.ts","../src/actions/ens/getEnsAddress.ts","../src/actions/ens/getEnsName.ts"],"sourcesContent":["import { toUnicode } from 'idna-uts46-hx'\n\n/**\n * @description Normalizes ENS name\n *\n * @example\n * normalize('wagmi-dev.eth')\n * 'wagmi-dev.eth'\n *\n * @see https://docs.ens.domains/contract-api-reference/name-processing#normalising-names\n */\nexport function normalize(name: string) {\n return toUnicode(name, { useStd3ASCII: true })\n}\n","import { bytesToHex, stringToBytes } from '../encoding'\nimport { keccak256 } from '../hash'\nimport { normalize } from './normalize'\n\n/**\n * @description Hashes ENS label\n *\n * @example\n * labelhash('eth')\n * '0x4f5b812789fc606be1b3b16908db13fc7a9adf7ca72641f84d75b47069d3d7f0'\n */\nexport function labelhash(label: string) {\n let result = new Uint8Array(32).fill(0)\n if (!label) return bytesToHex(result)\n return keccak256(stringToBytes(normalize(label)))\n}\n","import { concat } from '../data'\nimport { bytesToHex, stringToBytes } from '../encoding'\nimport { keccak256 } from '../hash'\nimport { normalize } from './normalize'\n\n/**\n * @description Hashes ENS name\n *\n * @example\n * namehash('wagmi-dev.eth')\n * '0xf246651c1b9a6b141d19c2604e9a58f567973833990f830d882534a747801359'\n *\n * @see https://eips.ethereum.org/EIPS/eip-137\n * @see https://docs.ens.domains/contract-api-reference/name-processing#hashing-names\n */\nexport function namehash(name: string) {\n let result = new Uint8Array(32).fill(0)\n if (!name) return bytesToHex(result)\n\n const labels = normalize(name).split('.')\n // Iterate in reverse order building up hash\n for (let i = labels.length - 1; i >= 0; i -= 1) {\n const hashed = keccak256(stringToBytes(labels[i]), 'bytes')\n result = keccak256(concat([result, hashed]), 'bytes')\n }\n\n return bytesToHex(result)\n}\n","// Adapted from https://github.com/mafintosh/dns-packet\nimport { ByteArray } from '../../types'\nimport { encodeBytes } from '../encoding'\n\n/*\n * @description Encodes a DNS packet into a ByteArray containing a UDP payload.\n */\nexport function packetToBytes(packet: string): ByteArray {\n function length(value: string) {\n if (value === '.' || value === '..') return 1\n return encodeBytes(value.replace(/^\\.|\\.$/gm, '')).length + 2\n }\n\n const bytes = new Uint8Array(length(packet))\n // strip leading and trailing `.`\n const value = packet.replace(/^\\.|\\.$/gm, '')\n if (!value.length) return bytes\n\n let offset = 0\n const list = value.split('.')\n for (let i = 0; i < list.length; i++) {\n const encoded = encodeBytes(list[i])\n bytes[offset] = encoded.length\n bytes.set(encoded, offset + 1)\n offset += encoded.length + 1\n }\n\n return bytes\n}\n","import { PublicClient } from '../../clients'\nimport { ChainDoesNotSupportContract } from '../../errors'\nimport type { Address, Prettify } from '../../types'\nimport {\n decodeFunctionResult,\n encodeFunctionData,\n encodeHex,\n} from '../../utils'\nimport { namehash, packetToBytes } from '../../utils/ens'\nimport { readContract, ReadContractArgs } from '../public'\n\nexport type GetEnsAddressArgs = Prettify<\n Pick<ReadContractArgs, 'blockNumber' | 'blockTag'> & {\n /** ENS name to get address. */\n name: string\n /** Address of ENS Universal Resolver Contract */\n universalResolverAddress?: Address\n }\n>\n\n/**\n * @description Gets address for ENS name.\n *\n * - Calls `resolve(bytes, bytes)` on ENS Universal Resolver Contract.\n *\n * @example\n * const ensAddress = await getEnsAddress(publicClient, {\n * name: 'wagmi-dev.eth',\n * })\n * // '0xd2135CfB216b74109775236E36d4b433F1DF507B'\n */\nexport async function getEnsAddress(\n client: PublicClient,\n {\n blockNumber,\n blockTag,\n name,\n universalResolverAddress: universalResolverAddress_,\n }: GetEnsAddressArgs,\n) {\n let universalResolverAddress = universalResolverAddress_\n if (!universalResolverAddress) {\n if (!client.chain)\n throw new Error(\n 'client chain not configured. universalResolverAddress is required.',\n )\n\n const contract = client.chain?.contracts?.ensUniversalResolver\n if (!contract)\n throw new ChainDoesNotSupportContract({\n chain: client.chain,\n contract: { name: 'ensUniversalResolver' },\n })\n\n if (\n blockNumber &&\n contract.blockCreated &&\n contract.blockCreated > blockNumber\n )\n throw new ChainDoesNotSupportContract({\n blockNumber,\n chain: client.chain,\n contract: {\n name: 'ensUniversalResolver',\n blockCreated: contract.blockCreated,\n },\n })\n\n universalResolverAddress = contract.address\n }\n\n const res = await readContract(client, {\n address: universalResolverAddress,\n abi: [\n {\n name: 'resolve',\n type: 'function',\n stateMutability: 'view',\n inputs: [\n { name: 'name', type: 'bytes' },\n { name: 'data', type: 'bytes' },\n ],\n outputs: [\n { name: '', type: 'bytes' },\n { name: 'address', type: 'address' },\n ],\n },\n ],\n functionName: 'resolve',\n args: [\n encodeHex(packetToBytes(name)),\n encodeFunctionData({\n abi: [\n {\n name: 'addr',\n type: 'function',\n stateMutability: 'view',\n inputs: [{ name: 'name', type: 'bytes32' }],\n outputs: [],\n },\n ],\n functionName: 'addr',\n args: [namehash(name)],\n }),\n ],\n blockNumber,\n blockTag,\n })\n return decodeFunctionResult({\n abi: [\n {\n name: 'addr',\n type: 'function',\n stateMutability: 'view',\n inputs: [],\n outputs: [{ name: 'name', type: 'address' }],\n },\n ],\n functionName: 'addr',\n data: res[0],\n })\n}\n","import { PublicClient } from '../../clients'\nimport { panicReasons } from '../../constants'\nimport {\n ChainDoesNotSupportContract,\n ContractFunctionExecutionError,\n ContractFunctionRevertedError,\n} from '../../errors'\nimport type { Address, Prettify } from '../../types'\nimport { encodeHex } from '../../utils'\nimport { packetToBytes } from '../../utils/ens'\nimport { readContract, ReadContractArgs } from '../public'\n\nexport type GetEnsNameArgs = Prettify<\n Pick<ReadContractArgs, 'blockNumber' | 'blockTag'> & {\n /** Address to get ENS name for. */\n address: Address\n /** Address of ENS Universal Resolver Contract. */\n universalResolverAddress?: Address\n }\n>\n\n/**\n * @description Gets primary name for specified address.\n *\n * - Calls `reverse(bytes)` on ENS Universal Resolver Contract.\n *\n * @example\n * const ensName = await getEnsName(publicClient, {\n * address: '0xd2135CfB216b74109775236E36d4b433F1DF507B',\n * })\n * // 'wagmi-dev.eth'\n */\nexport async function getEnsName(\n client: PublicClient,\n {\n address,\n blockNumber,\n blockTag,\n universalResolverAddress: universalResolverAddress_,\n }: GetEnsNameArgs,\n) {\n let universalResolverAddress = universalResolverAddress_\n if (!universalResolverAddress) {\n if (!client.chain)\n throw new Error(\n 'client chain not configured. universalResolverAddress is required.',\n )\n\n const contract = client.chain?.contracts?.ensUniversalResolver\n if (!contract)\n throw new ChainDoesNotSupportContract({\n chain: client.chain,\n contract: { name: 'ensUniversalResolver' },\n })\n\n if (\n blockNumber &&\n contract.blockCreated &&\n contract.blockCreated > blockNumber\n )\n throw new ChainDoesNotSupportContract({\n blockNumber,\n chain: client.chain,\n contract: {\n name: 'ensUniversalResolver',\n blockCreated: contract.blockCreated,\n },\n })\n\n universalResolverAddress = contract.address\n }\n\n const reverseNode = `${address.toLowerCase().substring(2)}.addr.reverse`\n try {\n const res = await readContract(client, {\n address: universalResolverAddress,\n abi: [\n {\n name: 'reverse',\n type: 'function',\n stateMutability: 'view',\n inputs: [{ type: 'bytes', name: 'reverseName' }],\n outputs: [\n { type: 'string', name: 'resolvedName' },\n { type: 'address', name: 'resolvedAddress' },\n { type: 'address', name: 'reverseResolver' },\n { type: 'address', name: 'resolver' },\n ],\n },\n ],\n functionName: 'reverse',\n args: [encodeHex(packetToBytes(reverseNode))],\n blockNumber,\n blockTag,\n })\n return res[0]\n } catch (error) {\n if (\n error instanceof ContractFunctionExecutionError &&\n (error.cause as ContractFunctionRevertedError).reason === panicReasons[50]\n )\n // No primary name set for address.\n return null\n throw error\n }\n}\n"],"mappings":"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","names":["value"]}
1
+ {"version":3,"sources":["../src/utils/ens/normalize.ts"],"sourcesContent":["import { toUnicode } from 'idna-uts46-hx'\n\n/**\n * @description Normalizes ENS name\n *\n * @example\n * normalize('wagmi-dev.eth')\n * 'wagmi-dev.eth'\n *\n * @see https://docs.ens.domains/contract-api-reference/name-processing#normalising-names\n */\nexport function normalize(name: string) {\n return toUnicode(name, { useStd3ASCII: true })\n}\n"],"mappings":";;;;;;;;;AAAA,SAAS,iBAAiB;AAWnB,SAAS,UAAU,MAAc;AACtC,SAAO,UAAU,MAAM,EAAE,cAAc,KAAK,CAAC;AAC/C;","names":[]}
@@ -0,0 +1,14 @@
1
+ import { A as AbiItem } from './chain-819c7ff7.js';
2
+
3
+ declare function formatAbiItemWithArgs({ abiItem, args, includeFunctionName, includeName, }: {
4
+ abiItem: AbiItem;
5
+ args: readonly unknown[];
6
+ includeFunctionName?: boolean;
7
+ includeName?: boolean;
8
+ }): string | undefined;
9
+
10
+ declare function formatAbiItem(abiItem: AbiItem, { includeName }?: {
11
+ includeName?: boolean;
12
+ }): string;
13
+
14
+ export { formatAbiItem as a, formatAbiItemWithArgs as f };
@@ -0,0 +1,22 @@
1
+ import { AbiParameter, AbiParametersToPrimitiveTypes, Narrow, Abi } from 'abitype';
2
+ import { H as Hex, a5 as ExtractNameFromAbi, a6 as ExtractArgsFromAbi } from './chain-819c7ff7.js';
3
+
4
+ type DecodeAbiParametersReturnType<TParams extends readonly AbiParameter[] | readonly unknown[] = readonly AbiParameter[]> = AbiParametersToPrimitiveTypes<TParams extends readonly AbiParameter[] ? TParams : AbiParameter[]>;
5
+ declare function decodeAbiParameters<TParams extends readonly AbiParameter[] | readonly unknown[]>(params: Narrow<TParams>, data: Hex): DecodeAbiParametersReturnType<TParams>;
6
+
7
+ type EncodeAbiParametersReturnType = Hex;
8
+ /**
9
+ * @description Encodes a list of primitive values into an ABI-encoded hex value.
10
+ */
11
+ declare function encodeAbiParameters<TParams extends readonly AbiParameter[] | readonly unknown[]>(params: Narrow<TParams>, values: TParams extends readonly AbiParameter[] ? AbiParametersToPrimitiveTypes<TParams> : never): EncodeAbiParametersReturnType;
12
+
13
+ type GetAbiItemParameters<TAbi extends Abi | readonly unknown[] = Abi, TItemName extends string = string> = {
14
+ abi: Narrow<TAbi>;
15
+ name: ExtractNameFromAbi<TAbi, TItemName>;
16
+ } & Partial<ExtractArgsFromAbi<TAbi, TItemName>>;
17
+ type GetAbiItemReturnType<TAbi extends Abi | readonly unknown[] = Abi, TItemName extends string = string> = Extract<TAbi[number], {
18
+ name: TItemName;
19
+ }>;
20
+ declare function getAbiItem<TAbi extends Abi | readonly unknown[], TItemName extends string, TReturnType = GetAbiItemReturnType<TAbi, TItemName>>({ abi, args, name, }: GetAbiItemParameters<TAbi, TItemName>): TReturnType;
21
+
22
+ export { DecodeAbiParametersReturnType as D, EncodeAbiParametersReturnType as E, GetAbiItemParameters as G, decodeAbiParameters as d, encodeAbiParameters as e, getAbiItem as g };
package/dist/index.d.ts CHANGED
@@ -1,18 +1,21 @@
1
- import { T as TransportConfig, a as Transport, B as BaseRpcRequests } from './createClient-68ee4bb4.js';
2
- export { C as Client, b as ClientConfig, a as Transport, T as TransportConfig, c as createClient, d as createTransport } from './createClient-68ee4bb4.js';
1
+ import { T as TransportConfig, a as Transport, B as BaseRpcRequests } from './createClient-a47ae6f5.js';
2
+ export { C as Client, b as ClientConfig, a as Transport, T as TransportConfig, c as createClient, d as createTransport } from './createClient-a47ae6f5.js';
3
+ import { H as Hex, a as Hash, C as Chain, B as ByteArray } from './chain-819c7ff7.js';
4
+ export { A as AbiItem, b as AccessList, c as Block, d as BlockIdentifier, e as BlockNumber, f as BlockTag, B as ByteArray, C as Chain, g as ContractConfig, I as ExtractFormatter, F as FeeHistory, h as FeeValues, i as FeeValuesEIP1559, j as FeeValuesLegacy, J as Formatted, K as FormattedTransaction, a as Hash, H as Hex, L as Log, R as RpcBlock, k as RpcBlockIdentifier, l as RpcBlockNumber, m as RpcFeeHistory, n as RpcFeeValues, o as RpcLog, p as RpcTransaction, q as RpcTransactionReceipt, r as RpcTransactionRequest, s as RpcUncle, y as Transaction, z as TransactionBase, D as TransactionEIP1559, E as TransactionEIP2930, M as TransactionFormatter, G as TransactionLegacy, T as TransactionReceipt, t as TransactionRequest, u as TransactionRequestBase, v as TransactionRequestEIP1559, w as TransactionRequestEIP2930, x as TransactionRequestLegacy, U as Uncle, N as defineTransaction, O as formatTransaction, P as transactionType } from './chain-819c7ff7.js';
5
+ import { B as BaseError, H as HttpOptions, R as RpcResponse } from './parseGwei-a2d0d77a.js';
6
+ export { B as BaseError, C as CallExecutionError, a as ContractFunctionExecutionError, b as ContractFunctionRevertedError, c as ContractFunctionZeroDataError, E as EstimateGasExecutionError, d as ExecutionRevertedError, F as FeeCapTooHighError, e as FeeCapTooLowError, G as GetContractAddressOptions, o as GetCreate2AddressOptions, p as GetCreateAddressOptions, I as InsufficientFundsError, f as IntrinsicGasTooHighError, g as IntrinsicGasTooLowError, N as NonceMaxValueError, h as NonceTooHighError, i as NonceTooLowError, j as RawContractError, T as TipAboveFeeCapError, q as ToRlpReturnType, k as TransactionExecutionError, m as TransactionNotFoundError, n as TransactionReceiptNotFoundError, l as TransactionTypeNotSupportedError, U as UnknownNodeError, W as WaitForTransactionReceiptTimeoutError, r as boolToBytes, s as boolToHex, t as bytesToBigint, u as bytesToBool, v as bytesToHex, w as bytesToNumber, x as bytesToString, y as formatEther, z as formatGwei, A as formatUnits, D as fromBytes, J as fromHex, K as fromRlp, L as getAccount, M as getAddress, O as getContractAddress, P as getContractError, Q as getCreate2Address, S as getCreateAddress, V as getEventSelector, X as getFunctionSelector, Y as hexToBigInt, Z as hexToBool, _ as hexToBytes, $ as hexToNumber, a0 as hexToString, a1 as isAddress, a2 as isAddressEqual, a3 as isBytes, a4 as isHex, a5 as keccak256, a6 as numberToBytes, a7 as numberToHex, a8 as pad, a9 as padBytes, aa as padHex, ab as parseEther, ac as parseGwei, ad as parseUnits, ae as size, af as slice, ag as sliceBytes, ah as sliceHex, ai as stringToBytes, aj as stringToHex, ak as stringify, al as toBytes, am as toHex, an as toRlp, ao as trim } from './parseGwei-a2d0d77a.js';
3
7
  import WebSocket from 'isomorphic-ws';
4
- import { H as Hex, A as Address, a as Hash, B as ByteArray, b as BlockTag } from './chain-f16512e8.js';
5
- export { c as AccessList, A as Address, d as Block, e as BlockIdentifier, f as BlockNumber, b as BlockTag, B as ByteArray, C as Chain, F as FeeHistory, g as FeeValues, h as FeeValuesEIP1559, i as FeeValuesLegacy, a as Hash, H as Hex, L as Log, R as RpcBlock, j as RpcBlockIdentifier, k as RpcBlockNumber, l as RpcFeeHistory, m as RpcFeeValues, n as RpcLog, o as RpcTransaction, p as RpcTransactionReceipt, q as RpcTransactionRequest, r as RpcUncle, x as Transaction, y as TransactionBase, z as TransactionEIP1559, D as TransactionEIP2930, E as TransactionLegacy, T as TransactionReceipt, s as TransactionRequest, t as TransactionRequestBase, u as TransactionRequestEIP1559, v as TransactionRequestEIP2930, w as TransactionRequestLegacy, U as Uncle } from './chain-f16512e8.js';
6
- import { B as BaseError, R as RpcResponse } from './rpc-a5a7f376.js';
7
- export { B as BaseError, C as ContractFunctionExecutionError, a as ContractFunctionRevertedError, b as ContractFunctionZeroDataError } from './rpc-a5a7f376.js';
8
- export { P as PublicClient, a as PublicClientConfig, c as createPublicClient } from './createPublicClient-b732194e.js';
9
- export { T as TestClient, a as TestClientConfig, c as createTestClient } from './createTestClient-dedf321e.js';
10
- export { W as WalletClient, a as WalletClientConfig, c as createWalletClient } from './createWalletClient-75813d83.js';
11
- export { A as AbiItem, C as ContractConfig } from './contract-9e76e561.js';
12
- import './eip1193-6f9ba163.js';
8
+ export { A as Account, B as BlockFormatter, F as FormattedBlock, e as FormattedTransactionReceipt, f as FormattedTransactionRequest, J as JsonRpcAccount, L as LocalAccount, P as PublicClient, a as PublicClientConfig, T as TransactionReceiptFormatter, g as TransactionRequestFormatter, W as WalletClient, b as WalletClientConfig, c as createPublicClient, d as createWalletClient, h as defineBlock, i as defineTransactionReceipt, j as defineTransactionRequest, k as formatBlock, l as formatTransactionRequest } from './createPublicClient-e2eae0fc.js';
9
+ export { T as TestClient, a as TestClientConfig, c as createTestClient } from './test-13f4413b.js';
10
+ export { Address, ParseAbi, ParseAbiItem, ParseAbiParameter, ParseAbiParameters, parseAbi, parseAbiItem, parseAbiParameter, parseAbiParameters } from 'abitype';
11
+ export { l as labelhash, n as namehash } from './namehash-afff0feb.js';
12
+ export { D as DecodeAbiParametersReturnType, E as EncodeAbiParametersReturnType, G as GetAbiItemParameters, d as decodeAbiParameters, e as encodeAbiParameters, g as getAbiItem } from './getAbiItem-159f3263.js';
13
+ export { D as DecodeErrorResultParameters, a as DecodeErrorResultReturnType, b as DecodeEventLogParameters, c as DecodeEventLogReturnType, d as DecodeFunctionDataParameters, e as DecodeFunctionResultParameters, f as DecodeFunctionResultReturnType, E as EncodeDeployDataParameters, g as EncodeErrorResultParameters, h as EncodeEventTopicsParameters, i as EncodeFunctionDataParameters, j as EncodeFunctionResultParameters, k as decodeErrorResult, l as decodeEventLog, m as decodeFunctionData, n as decodeFunctionResult, o as encodeDeployData, p as encodeErrorResult, q as encodeEventTopics, r as encodeFunctionData, s as encodeFunctionResult } from './encodeFunctionResult-9eb553ce.js';
14
+ export { e as encodePacked } from './encodePacked-4c019ed8.js';
15
+ export { d as defineChain } from './chain-a4f98ba3.js';
16
+ import './eip1193-a882d1b8.js';
13
17
  import '@wagmi/chains';
14
- import 'abitype';
15
- import './decodeErrorResult-0b934d23.js';
18
+ import 'ethers@6/types/providers';
16
19
 
17
20
  declare class AbiConstructorNotFoundError extends BaseError {
18
21
  name: string;
@@ -30,6 +33,10 @@ declare class AbiDecodingDataSizeInvalidError extends BaseError {
30
33
  name: string;
31
34
  constructor(size: number);
32
35
  }
36
+ declare class AbiDecodingZeroDataError extends BaseError {
37
+ name: string;
38
+ constructor();
39
+ }
33
40
  declare class AbiEncodingArrayLengthMismatchError extends BaseError {
34
41
  name: string;
35
42
  constructor({ expectedLength, givenLength, type, }: {
@@ -63,6 +70,12 @@ declare class AbiErrorSignatureNotFoundError extends BaseError {
63
70
  docsPath: string;
64
71
  });
65
72
  }
73
+ declare class AbiEventSignatureNotFoundError extends BaseError {
74
+ name: string;
75
+ constructor(signature: Hex, { docsPath }: {
76
+ docsPath: string;
77
+ });
78
+ }
66
79
  declare class AbiEventNotFoundError extends BaseError {
67
80
  name: string;
68
81
  constructor(eventName: string, { docsPath }: {
@@ -111,7 +124,7 @@ declare class InvalidDefinitionTypeError extends BaseError {
111
124
  declare class InvalidAddressError extends BaseError {
112
125
  name: string;
113
126
  constructor({ address }: {
114
- address: Address;
127
+ address: string;
115
128
  });
116
129
  }
117
130
 
@@ -123,6 +136,18 @@ declare class BlockNotFoundError extends BaseError {
123
136
  });
124
137
  }
125
138
 
139
+ declare class ChainDoesNotSupportContract extends BaseError {
140
+ name: string;
141
+ constructor({ blockNumber, chain, contract, }: {
142
+ blockNumber?: bigint;
143
+ chain: Chain;
144
+ contract: {
145
+ name: string;
146
+ blockCreated?: number;
147
+ };
148
+ });
149
+ }
150
+
126
151
  declare class SizeExceedsPaddingSizeError extends BaseError {
127
152
  name: string;
128
153
  constructor({ size, targetSize, type, }: {
@@ -173,13 +198,19 @@ declare class FilterTypeNotSupportedError extends BaseError {
173
198
 
174
199
  declare class HttpRequestError extends BaseError {
175
200
  name: string;
176
- status: number;
177
- constructor({ body, details, status, url, }: {
201
+ body: {
202
+ [key: string]: unknown;
203
+ };
204
+ headers?: Headers;
205
+ status?: number;
206
+ url: string;
207
+ constructor({ body, details, headers, status, url, }: {
178
208
  body: {
179
209
  [key: string]: unknown;
180
210
  };
181
- details: string;
182
- status: number;
211
+ details?: string;
212
+ headers?: Headers;
213
+ status?: number;
183
214
  url: string;
184
215
  });
185
216
  }
@@ -218,8 +249,9 @@ declare class TimeoutError extends BaseError {
218
249
  }
219
250
 
220
251
  declare class RequestError extends BaseError {
221
- constructor(err: Error, { docsPath, shortMessage }: {
252
+ constructor(err: Error, { docsPath, metaMessages, shortMessage, }: {
222
253
  docsPath?: string;
254
+ metaMessages?: string[];
223
255
  shortMessage: string;
224
256
  });
225
257
  }
@@ -290,36 +322,19 @@ declare class JsonRpcVersionUnsupportedError extends RpcRequestError {
290
322
  code: number;
291
323
  constructor(err: RpcError);
292
324
  }
293
- declare class UnknownRpcError extends RequestError {
294
- name: string;
295
- constructor(err: Error);
296
- }
297
-
298
- declare class InvalidGasArgumentsError extends BaseError {
325
+ declare class UserRejectedRequestError extends RpcRequestError {
299
326
  name: string;
300
- constructor();
301
- }
302
- declare class TransactionNotFoundError extends BaseError {
303
- name: string;
304
- constructor({ blockHash, blockNumber, blockTag, hash, index, }: {
305
- blockHash?: Hash;
306
- blockNumber?: bigint;
307
- blockTag?: BlockTag;
308
- hash?: Hash;
309
- index?: number;
310
- });
327
+ code: number;
328
+ constructor(err: RpcError);
311
329
  }
312
- declare class TransactionReceiptNotFoundError extends BaseError {
330
+ declare class SwitchChainError extends RpcRequestError {
313
331
  name: string;
314
- constructor({ hash }: {
315
- hash: Hash;
316
- });
332
+ code: number;
333
+ constructor(err: RpcError);
317
334
  }
318
- declare class WaitForTransactionReceiptTimeoutError extends BaseError {
335
+ declare class UnknownRpcError extends RequestError {
319
336
  name: string;
320
- constructor({ hash }: {
321
- hash: Hash;
322
- });
337
+ constructor(err: Error);
323
338
  }
324
339
 
325
340
  declare class UrlRequiredError extends BaseError {
@@ -334,31 +349,48 @@ type CustomTransportConfig = {
334
349
  key?: TransportConfig['key'];
335
350
  /** The name of the transport. */
336
351
  name?: TransportConfig['name'];
352
+ /** The max number of times to retry. */
353
+ retryCount?: TransportConfig['retryCount'];
354
+ /** The base delay (in ms) between retries. */
355
+ retryDelay?: TransportConfig['retryDelay'];
337
356
  };
338
357
  type CustomTransport = Transport<'custom', EthereumProvider['request']>;
339
358
  /**
340
359
  * @description Creates a custom transport given an EIP-1193 compliant `request` attribute.
341
360
  */
342
- declare function custom<TProvider extends EthereumProvider>(
343
- /** An Ethereum provider with an EIP-1193 "request" attribute. */
344
- provider: TProvider, { key, name }?: CustomTransportConfig): CustomTransport;
361
+ declare function custom<TProvider extends EthereumProvider>(provider: TProvider, config?: CustomTransportConfig): CustomTransport;
345
362
 
346
363
  type FallbackTransportConfig = {
347
364
  /** The key of the Fallback transport. */
348
365
  key?: TransportConfig['key'];
349
366
  /** The name of the Fallback transport. */
350
367
  name?: TransportConfig['name'];
368
+ /** The max number of times to retry. */
369
+ retryCount?: TransportConfig['retryCount'];
370
+ /** The base delay (in ms) between retries. */
371
+ retryDelay?: TransportConfig['retryDelay'];
351
372
  };
352
373
  type FallbackTransport = Transport<'fallback', {
353
374
  transports: Transport[];
354
375
  }>;
355
- declare function fallback(transports: Transport[], { key, name }?: FallbackTransportConfig): FallbackTransport;
376
+ declare function fallback(transports: Transport[], config?: FallbackTransportConfig): FallbackTransport;
356
377
 
357
378
  type HttpTransportConfig = {
379
+ /**
380
+ * Request configuration to pass to `fetch`.
381
+ * @link https://developer.mozilla.org/en-US/docs/Web/API/fetch
382
+ */
383
+ fetchOptions?: HttpOptions['fetchOptions'];
358
384
  /** The key of the HTTP transport. */
359
385
  key?: TransportConfig['key'];
360
386
  /** The name of the HTTP transport. */
361
387
  name?: TransportConfig['name'];
388
+ /** The max number of times to retry. */
389
+ retryCount?: TransportConfig['retryCount'];
390
+ /** The base delay (in ms) between retries. */
391
+ retryDelay?: TransportConfig['retryDelay'];
392
+ /** The timeout (in ms) for the HTTP request. Default: 10_000 */
393
+ timeout?: TransportConfig['timeout'];
362
394
  };
363
395
  type HttpTransport = Transport<'http', {
364
396
  url?: string;
@@ -368,30 +400,36 @@ type HttpTransport = Transport<'http', {
368
400
  */
369
401
  declare function http(
370
402
  /** URL of the JSON-RPC API. Defaults to the chain's public RPC URL. */
371
- url?: string, { key, name }?: HttpTransportConfig): HttpTransport;
403
+ url?: string, config?: HttpTransportConfig): HttpTransport;
372
404
 
373
- type WebSocketTransportSubscribeArgs = {
405
+ type WebSocketTransportSubscribeParameters = {
374
406
  onData: (data: RpcResponse) => void;
375
407
  onError?: (error: any) => void;
376
408
  };
377
- type WebSocketTransportSubscribeResponse = {
409
+ type WebSocketTransportSubscribeReturnType = {
378
410
  subscriptionId: Hash;
379
411
  unsubscribe: () => Promise<RpcResponse<boolean>>;
380
412
  };
381
413
  type WebSocketTransportSubscribe = {
382
- subscribe(args: WebSocketTransportSubscribeArgs & {
414
+ subscribe(args: WebSocketTransportSubscribeParameters & {
383
415
  /**
384
416
  * @description Add information about compiled contracts
385
417
  * @link https://hardhat.org/hardhat-network/docs/reference#hardhat_addcompilationresult
386
418
  */
387
419
  params: ['newHeads'];
388
- }): Promise<WebSocketTransportSubscribeResponse>;
420
+ }): Promise<WebSocketTransportSubscribeReturnType>;
389
421
  };
390
422
  type WebSocketTransportConfig = {
391
423
  /** The key of the WebSocket transport. */
392
424
  key?: TransportConfig['key'];
393
425
  /** The name of the WebSocket transport. */
394
426
  name?: TransportConfig['name'];
427
+ /** The max number of times to retry. */
428
+ retryCount?: TransportConfig['retryCount'];
429
+ /** The base delay (in ms) between retries. */
430
+ retryDelay?: TransportConfig['retryDelay'];
431
+ /** The timeout (in ms) for async WebSocket requests. Default: 10_000 */
432
+ timeout?: TransportConfig['timeout'];
395
433
  };
396
434
  type WebSocketTransport = Transport<'webSocket', {
397
435
  getSocket(): Promise<WebSocket>;
@@ -402,7 +440,7 @@ type WebSocketTransport = Transport<'webSocket', {
402
440
  */
403
441
  declare function webSocket(
404
442
  /** URL of the JSON-RPC API. Defaults to the chain's public RPC URL. */
405
- url?: string, { key, name, }?: WebSocketTransportConfig): WebSocketTransport;
443
+ url?: string, config?: WebSocketTransportConfig): WebSocketTransport;
406
444
 
407
445
  declare const multicall3Abi: readonly [{
408
446
  readonly inputs: readonly [{
@@ -435,4 +473,17 @@ declare const multicall3Abi: readonly [{
435
473
  readonly type: "function";
436
474
  }];
437
475
 
438
- export { AbiConstructorNotFoundError, AbiConstructorParamsNotFoundError, AbiDecodingDataSizeInvalidError, AbiEncodingArrayLengthMismatchError, AbiEncodingLengthMismatchError, AbiErrorInputsNotFoundError, AbiErrorNotFoundError, AbiErrorSignatureNotFoundError, AbiEventNotFoundError, AbiFunctionNotFoundError, AbiFunctionOutputsNotFoundError, AbiFunctionSignatureNotFoundError, BlockNotFoundError, CustomTransport, CustomTransportConfig, DataLengthTooLongError, DataLengthTooShortError, FallbackTransport, FallbackTransportConfig, FilterTypeNotSupportedError, HttpRequestError, HttpTransport, HttpTransportConfig, InternalRpcError, InvalidAbiDecodingTypeError, InvalidAbiEncodingTypeError, InvalidAddressError, InvalidArrayError, InvalidBytesBooleanError, InvalidDefinitionTypeError, InvalidGasArgumentsError, InvalidHexBooleanError, InvalidHexValueError, InvalidInputRpcError, InvalidParamsRpcError, InvalidRequestRpcError, JsonRpcVersionUnsupportedError, LimitExceededRpcError, MethodNotFoundRpcError, MethodNotSupportedRpcError, OffsetOutOfBoundsError, ParseRpcError, RequestError, ResourceNotFoundRpcError, ResourceUnavailableRpcError, RpcError, RpcRequestError, SizeExceedsPaddingSizeError, TimeoutError, TransactionNotFoundError, TransactionReceiptNotFoundError, TransactionRejectedRpcError, UnknownRpcError, UrlRequiredError, WaitForTransactionReceiptTimeoutError, WebSocketRequestError, WebSocketTransport, WebSocketTransportConfig, custom, fallback, http, multicall3Abi, webSocket };
476
+ declare const etherUnits: {
477
+ gwei: number;
478
+ wei: number;
479
+ };
480
+ declare const gweiUnits: {
481
+ ether: number;
482
+ wei: number;
483
+ };
484
+ declare const weiUnits: {
485
+ ether: number;
486
+ gwei: number;
487
+ };
488
+
489
+ export { AbiConstructorNotFoundError, AbiConstructorParamsNotFoundError, AbiDecodingDataSizeInvalidError, AbiDecodingZeroDataError, AbiEncodingArrayLengthMismatchError, AbiEncodingLengthMismatchError, AbiErrorInputsNotFoundError, AbiErrorNotFoundError, AbiErrorSignatureNotFoundError, AbiEventNotFoundError, AbiEventSignatureNotFoundError, AbiFunctionNotFoundError, AbiFunctionOutputsNotFoundError, AbiFunctionSignatureNotFoundError, BlockNotFoundError, ChainDoesNotSupportContract, CustomTransport, CustomTransportConfig, DataLengthTooLongError, DataLengthTooShortError, FallbackTransport, FallbackTransportConfig, FilterTypeNotSupportedError, HttpRequestError, HttpTransport, HttpTransportConfig, InternalRpcError, InvalidAbiDecodingTypeError, InvalidAbiEncodingTypeError, InvalidAddressError, InvalidArrayError, InvalidBytesBooleanError, InvalidDefinitionTypeError, InvalidHexBooleanError, InvalidHexValueError, InvalidInputRpcError, InvalidParamsRpcError, InvalidRequestRpcError, JsonRpcVersionUnsupportedError, LimitExceededRpcError, MethodNotFoundRpcError, MethodNotSupportedRpcError, OffsetOutOfBoundsError, ParseRpcError, RequestError, ResourceNotFoundRpcError, ResourceUnavailableRpcError, RpcError, RpcRequestError, SizeExceedsPaddingSizeError, SwitchChainError, TimeoutError, TransactionRejectedRpcError, UnknownRpcError, UrlRequiredError, UserRejectedRequestError, WebSocketRequestError, WebSocketTransport, WebSocketTransportConfig, custom, etherUnits, fallback, gweiUnits, http, multicall3Abi, webSocket, weiUnits };