viem 0.0.1-sushi.27 → 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 (523) 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-83ece55b.d.ts → chain-a4f98ba3.d.ts} +1 -1
  11. package/dist/chains.d.ts +7 -5
  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-RPR4ZSAP.mjs → chunk-I7AINPMM.mjs} +2754 -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-cc01b906.d.ts → createClient-a47ae6f5.d.ts} +13 -13
  26. package/dist/createPublicClient-e2eae0fc.d.ts +771 -0
  27. package/dist/{eip1193-bbebfb3d.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 +9 -6
  61. package/dist/call-14050d5c.d.ts +0 -23
  62. package/dist/chain-9a8c6614.d.ts +0 -372
  63. package/dist/chunk-3MFDRMZW.js +0 -3028
  64. package/dist/chunk-3MFDRMZW.js.map +0 -1
  65. package/dist/chunk-4MP6LO5V.js +0 -192
  66. package/dist/chunk-4MP6LO5V.js.map +0 -1
  67. package/dist/chunk-MV7PYF3D.mjs +0 -192
  68. package/dist/chunk-MV7PYF3D.mjs.map +0 -1
  69. package/dist/chunk-PSLMBGQ4.mjs +0 -1091
  70. package/dist/chunk-PSLMBGQ4.mjs.map +0 -1
  71. package/dist/chunk-RPR4ZSAP.mjs.map +0 -1
  72. package/dist/chunk-XB55RCBE.js +0 -1091
  73. package/dist/chunk-XB55RCBE.js.map +0 -1
  74. package/dist/contract-3b4a1df6.d.ts +0 -166
  75. package/dist/createPublicClient-9823f081.d.ts +0 -19
  76. package/dist/createTestClient-63b16109.d.ts +0 -34
  77. package/dist/createWalletClient-6dbbe0ee.d.ts +0 -30
  78. package/dist/decodeErrorResult-b0d3ce71.d.ts +0 -16
  79. package/dist/getAbiItem-540089dd.d.ts +0 -97
  80. package/dist/readContract-5c96b3bc.d.ts +0 -10
  81. package/dist/rpc-c367eceb.d.ts +0 -121
  82. package/dist/sendTransaction-50d22f3e.d.ts +0 -12
  83. package/dist/transactionReceipt-504958d3.d.ts +0 -26
  84. package/dist/transactionRequest-37f60d32.d.ts +0 -15
  85. package/dist/watchEvent-ca77f9e9.d.ts +0 -41
  86. package/src/_test/abis.ts +0 -1420
  87. package/src/_test/bench.ts +0 -15
  88. package/src/_test/constants.ts +0 -63
  89. package/src/_test/generated.ts +0 -128
  90. package/src/_test/globalSetup.ts +0 -11
  91. package/src/_test/index.ts +0 -25
  92. package/src/_test/setup.ts +0 -8
  93. package/src/_test/utils.ts +0 -155
  94. package/src/actions/ens/getEnsAddress.bench.ts +0 -26
  95. package/src/actions/ens/getEnsAddress.test.ts +0 -97
  96. package/src/actions/ens/getEnsAddress.ts +0 -122
  97. package/src/actions/ens/getEnsName.bench.ts +0 -30
  98. package/src/actions/ens/getEnsName.test.ts +0 -101
  99. package/src/actions/ens/getEnsName.ts +0 -106
  100. package/src/actions/ens/index.test.ts +0 -12
  101. package/src/actions/ens/index.ts +0 -3
  102. package/src/actions/index.test.ts +0 -81
  103. package/src/actions/index.ts +0 -182
  104. package/src/actions/public/call.bench.ts +0 -48
  105. package/src/actions/public/call.test.ts +0 -99
  106. package/src/actions/public/call.ts +0 -97
  107. package/src/actions/public/createBlockFilter.bench.ts +0 -11
  108. package/src/actions/public/createBlockFilter.test.ts +0 -9
  109. package/src/actions/public/createBlockFilter.ts +0 -14
  110. package/src/actions/public/createContractEventFilter.test.ts +0 -119
  111. package/src/actions/public/createContractEventFilter.ts +0 -69
  112. package/src/actions/public/createEventFilter.test.ts +0 -277
  113. package/src/actions/public/createEventFilter.ts +0 -93
  114. package/src/actions/public/createPendingTransactionFilter.bench.ts +0 -11
  115. package/src/actions/public/createPendingTransactionFilter.test.ts +0 -9
  116. package/src/actions/public/createPendingTransactionFilter.ts +0 -14
  117. package/src/actions/public/estimateGas.bench.ts +0 -46
  118. package/src/actions/public/estimateGas.test.ts +0 -92
  119. package/src/actions/public/estimateGas.ts +0 -61
  120. package/src/actions/public/getBalance.test.ts +0 -83
  121. package/src/actions/public/getBalance.ts +0 -37
  122. package/src/actions/public/getBlock.bench.ts +0 -28
  123. package/src/actions/public/getBlock.test.ts +0 -575
  124. package/src/actions/public/getBlock.ts +0 -65
  125. package/src/actions/public/getBlockNumber.bench.ts +0 -28
  126. package/src/actions/public/getBlockNumber.test.ts +0 -27
  127. package/src/actions/public/getBlockNumber.ts +0 -32
  128. package/src/actions/public/getBlockTransactionCount.bench.ts +0 -15
  129. package/src/actions/public/getBlockTransactionCount.test.ts +0 -57
  130. package/src/actions/public/getBlockTransactionCount.ts +0 -52
  131. package/src/actions/public/getBytecode.test.ts +0 -27
  132. package/src/actions/public/getBytecode.ts +0 -32
  133. package/src/actions/public/getChainId.bench.ts +0 -15
  134. package/src/actions/public/getChainId.test.ts +0 -8
  135. package/src/actions/public/getChainId.ts +0 -7
  136. package/src/actions/public/getFeeHistory.bench.ts +0 -18
  137. package/src/actions/public/getFeeHistory.test.ts +0 -137
  138. package/src/actions/public/getFeeHistory.ts +0 -44
  139. package/src/actions/public/getFilterChanges.bench.ts +0 -13
  140. package/src/actions/public/getFilterChanges.test.ts +0 -383
  141. package/src/actions/public/getFilterChanges.ts +0 -23
  142. package/src/actions/public/getFilterLogs.test.ts +0 -297
  143. package/src/actions/public/getFilterLogs.ts +0 -20
  144. package/src/actions/public/getGasPrice.bench.ts +0 -19
  145. package/src/actions/public/getGasPrice.test.ts +0 -8
  146. package/src/actions/public/getGasPrice.ts +0 -15
  147. package/src/actions/public/getLogs.test.ts +0 -306
  148. package/src/actions/public/getLogs.ts +0 -84
  149. package/src/actions/public/getStorageAt.test.ts +0 -34
  150. package/src/actions/public/getStorageAt.ts +0 -32
  151. package/src/actions/public/getTransaction.bench.ts +0 -33
  152. package/src/actions/public/getTransaction.test.ts +0 -311
  153. package/src/actions/public/getTransaction.ts +0 -95
  154. package/src/actions/public/getTransactionConfirmations.test.ts +0 -69
  155. package/src/actions/public/getTransactionConfirmations.ts +0 -38
  156. package/src/actions/public/getTransactionCount.test.ts +0 -56
  157. package/src/actions/public/getTransactionCount.ts +0 -34
  158. package/src/actions/public/getTransactionReceipt.bench.ts +0 -33
  159. package/src/actions/public/getTransactionReceipt.test.ts +0 -179
  160. package/src/actions/public/getTransactionReceipt.ts +0 -34
  161. package/src/actions/public/index.test.ts +0 -43
  162. package/src/actions/public/index.ts +0 -146
  163. package/src/actions/public/multicall.test.ts +0 -452
  164. package/src/actions/public/multicall.ts +0 -108
  165. package/src/actions/public/readContract.test.ts +0 -328
  166. package/src/actions/public/readContract.ts +0 -73
  167. package/src/actions/public/simulateContract.bench.ts +0 -41
  168. package/src/actions/public/simulateContract.test.ts +0 -410
  169. package/src/actions/public/simulateContract.ts +0 -91
  170. package/src/actions/public/uninstallFilter.bench.ts +0 -13
  171. package/src/actions/public/uninstallFilter.test.ts +0 -65
  172. package/src/actions/public/uninstallFilter.ts +0 -17
  173. package/src/actions/public/waitForTransactionReceipt.test.ts +0 -322
  174. package/src/actions/public/waitForTransactionReceipt.ts +0 -170
  175. package/src/actions/public/watchBlockNumber.test.ts +0 -166
  176. package/src/actions/public/watchBlockNumber.ts +0 -79
  177. package/src/actions/public/watchBlocks.test.ts +0 -210
  178. package/src/actions/public/watchBlocks.ts +0 -114
  179. package/src/actions/public/watchContractEvent.test.ts +0 -305
  180. package/src/actions/public/watchContractEvent.ts +0 -108
  181. package/src/actions/public/watchEvent.test.ts +0 -195
  182. package/src/actions/public/watchEvent.ts +0 -95
  183. package/src/actions/public/watchPendingTransactions.test.ts +0 -116
  184. package/src/actions/public/watchPendingTransactions.ts +0 -74
  185. package/src/actions/test/dropTransaction.test.ts +0 -34
  186. package/src/actions/test/dropTransaction.ts +0 -17
  187. package/src/actions/test/getAutomine.test.ts +0 -14
  188. package/src/actions/test/getAutomine.ts +0 -11
  189. package/src/actions/test/getTxpoolContent.test.ts +0 -45
  190. package/src/actions/test/getTxpoolContent.ts +0 -7
  191. package/src/actions/test/getTxpoolStatus.test.ts +0 -41
  192. package/src/actions/test/getTxpoolStatus.ts +0 -12
  193. package/src/actions/test/impersonateAccount.test.ts +0 -26
  194. package/src/actions/test/impersonateAccount.ts +0 -17
  195. package/src/actions/test/increaseTime.test.ts +0 -18
  196. package/src/actions/test/increaseTime.ts +0 -17
  197. package/src/actions/test/index.test.ts +0 -38
  198. package/src/actions/test/index.ts +0 -77
  199. package/src/actions/test/inspectTxpool.test.ts +0 -50
  200. package/src/actions/test/inspectTxpool.ts +0 -7
  201. package/src/actions/test/mine.test.ts +0 -20
  202. package/src/actions/test/mine.ts +0 -16
  203. package/src/actions/test/removeBlockTimestampInterval.test.ts +0 -23
  204. package/src/actions/test/removeBlockTimestampInterval.ts +0 -7
  205. package/src/actions/test/reset.test.ts +0 -19
  206. package/src/actions/test/reset.ts +0 -18
  207. package/src/actions/test/revert.test.ts +0 -39
  208. package/src/actions/test/revert.ts +0 -14
  209. package/src/actions/test/sendUnsignedTransaction.test.ts +0 -52
  210. package/src/actions/test/sendUnsignedTransaction.ts +0 -19
  211. package/src/actions/test/setAutomine.test.ts +0 -14
  212. package/src/actions/test/setAutomine.ts +0 -8
  213. package/src/actions/test/setBalance.test.ts +0 -29
  214. package/src/actions/test/setBalance.ts +0 -20
  215. package/src/actions/test/setBlockGasLimit.test.ts +0 -21
  216. package/src/actions/test/setBlockGasLimit.ts +0 -17
  217. package/src/actions/test/setBlockTimestampInterval.test.ts +0 -23
  218. package/src/actions/test/setBlockTimestampInterval.ts +0 -16
  219. package/src/actions/test/setCode.test.ts +0 -26
  220. package/src/actions/test/setCode.ts +0 -19
  221. package/src/actions/test/setCoinbase.test.ts +0 -11
  222. package/src/actions/test/setCoinbase.ts +0 -17
  223. package/src/actions/test/setIntervalMining.test.ts +0 -30
  224. package/src/actions/test/setIntervalMining.ts +0 -16
  225. package/src/actions/test/setLoggingEnabled.test.ts +0 -10
  226. package/src/actions/test/setLoggingEnabled.ts +0 -8
  227. package/src/actions/test/setMinGasPrice.test.ts +0 -22
  228. package/src/actions/test/setMinGasPrice.ts +0 -17
  229. package/src/actions/test/setNextBlockBaseFeePerGas.test.ts +0 -23
  230. package/src/actions/test/setNextBlockBaseFeePerGas.ts +0 -17
  231. package/src/actions/test/setNextBlockTimestamp.test.ts +0 -19
  232. package/src/actions/test/setNextBlockTimestamp.ts +0 -17
  233. package/src/actions/test/setNonce.test.ts +0 -28
  234. package/src/actions/test/setNonce.ts +0 -20
  235. package/src/actions/test/setRpcUrl.test.ts +0 -9
  236. package/src/actions/test/setRpcUrl.ts +0 -8
  237. package/src/actions/test/setStorageAt.test.ts +0 -36
  238. package/src/actions/test/setStorageAt.ts +0 -26
  239. package/src/actions/test/snapshot.test.ts +0 -18
  240. package/src/actions/test/snapshot.ts +0 -7
  241. package/src/actions/test/stopImpersonatingAccount.test.ts +0 -29
  242. package/src/actions/test/stopImpersonatingAccount.ts +0 -17
  243. package/src/actions/wallet/addChain.test.ts +0 -14
  244. package/src/actions/wallet/addChain.ts +0 -21
  245. package/src/actions/wallet/deployContract.test.ts +0 -55
  246. package/src/actions/wallet/deployContract.ts +0 -38
  247. package/src/actions/wallet/getAccounts.test.ts +0 -22
  248. package/src/actions/wallet/getAccounts.ts +0 -7
  249. package/src/actions/wallet/getPermissions.test.ts +0 -24
  250. package/src/actions/wallet/getPermissions.ts +0 -9
  251. package/src/actions/wallet/index.test.ts +0 -21
  252. package/src/actions/wallet/index.ts +0 -36
  253. package/src/actions/wallet/requestAccounts.test.ts +0 -13
  254. package/src/actions/wallet/requestAccounts.ts +0 -7
  255. package/src/actions/wallet/requestPermissions.test.ts +0 -26
  256. package/src/actions/wallet/requestPermissions.ts +0 -19
  257. package/src/actions/wallet/sendTransaction.bench.ts +0 -57
  258. package/src/actions/wallet/sendTransaction.test.ts +0 -440
  259. package/src/actions/wallet/sendTransaction.ts +0 -77
  260. package/src/actions/wallet/signMessage.test.ts +0 -61
  261. package/src/actions/wallet/signMessage.ts +0 -35
  262. package/src/actions/wallet/switchChain.test.ts +0 -21
  263. package/src/actions/wallet/switchChain.ts +0 -19
  264. package/src/actions/wallet/watchAsset.test.ts +0 -40
  265. package/src/actions/wallet/watchAsset.ts +0 -16
  266. package/src/actions/wallet/writeContract.test.ts +0 -84
  267. package/src/actions/wallet/writeContract.ts +0 -47
  268. package/src/chains.test.ts +0 -439
  269. package/src/chains.ts +0 -99
  270. package/src/clients/createClient.test.ts +0 -295
  271. package/src/clients/createClient.ts +0 -81
  272. package/src/clients/createPublicClient.test.ts +0 -165
  273. package/src/clients/createPublicClient.ts +0 -49
  274. package/src/clients/createTestClient.test.ts +0 -145
  275. package/src/clients/createTestClient.ts +0 -72
  276. package/src/clients/createWalletClient.test.ts +0 -121
  277. package/src/clients/createWalletClient.ts +0 -54
  278. package/src/clients/index.test.ts +0 -19
  279. package/src/clients/index.ts +0 -31
  280. package/src/clients/transports/createTransport.test.ts +0 -58
  281. package/src/clients/transports/createTransport.ts +0 -48
  282. package/src/clients/transports/custom.test.ts +0 -98
  283. package/src/clients/transports/custom.ts +0 -34
  284. package/src/clients/transports/fallback.test.ts +0 -393
  285. package/src/clients/transports/fallback.ts +0 -58
  286. package/src/clients/transports/http.test.ts +0 -109
  287. package/src/clients/transports/http.ts +0 -51
  288. package/src/clients/transports/index.test.ts +0 -15
  289. package/src/clients/transports/index.ts +0 -17
  290. package/src/clients/transports/webSocket.test.ts +0 -164
  291. package/src/clients/transports/webSocket.ts +0 -118
  292. package/src/constants/abis.test.ts +0 -53
  293. package/src/constants/abis.ts +0 -44
  294. package/src/constants/index.test.ts +0 -14
  295. package/src/constants/index.ts +0 -3
  296. package/src/constants/solidity.test.ts +0 -41
  297. package/src/constants/solidity.ts +0 -35
  298. package/src/contract.test.ts +0 -32
  299. package/src/contract.ts +0 -68
  300. package/src/ens.test.ts +0 -15
  301. package/src/ens.ts +0 -8
  302. package/src/errors/abi.test.ts +0 -81
  303. package/src/errors/abi.ts +0 -254
  304. package/src/errors/address.test.ts +0 -14
  305. package/src/errors/address.ts +0 -9
  306. package/src/errors/base.test.ts +0 -114
  307. package/src/errors/base.ts +0 -57
  308. package/src/errors/block.test.ts +0 -24
  309. package/src/errors/block.ts +0 -18
  310. package/src/errors/chain.test.ts +0 -46
  311. package/src/errors/chain.ts +0 -33
  312. package/src/errors/contract.test.ts +0 -233
  313. package/src/errors/contract.ts +0 -178
  314. package/src/errors/data.ts +0 -20
  315. package/src/errors/encoding.ts +0 -60
  316. package/src/errors/index.ts +0 -82
  317. package/src/errors/log.ts +0 -8
  318. package/src/errors/request.test.ts +0 -330
  319. package/src/errors/request.ts +0 -163
  320. package/src/errors/rpc.test.ts +0 -87
  321. package/src/errors/rpc.ts +0 -113
  322. package/src/errors/transaction.test.ts +0 -83
  323. package/src/errors/transaction.ts +0 -54
  324. package/src/errors/transport.test.ts +0 -11
  325. package/src/errors/transport.ts +0 -12
  326. package/src/index.test.ts +0 -116
  327. package/src/index.ts +0 -132
  328. package/src/public.test.ts +0 -36
  329. package/src/public.ts +0 -76
  330. package/src/test.test.ts +0 -38
  331. package/src/test.ts +0 -52
  332. package/src/types/block.ts +0 -71
  333. package/src/types/chain.ts +0 -6
  334. package/src/types/contract.ts +0 -497
  335. package/src/types/eip1193.ts +0 -1041
  336. package/src/types/fee.ts +0 -47
  337. package/src/types/filter.ts +0 -8
  338. package/src/types/formatter.ts +0 -23
  339. package/src/types/index.ts +0 -84
  340. package/src/types/log.ts +0 -22
  341. package/src/types/misc.ts +0 -5
  342. package/src/types/multicall.ts +0 -82
  343. package/src/types/rpc.ts +0 -35
  344. package/src/types/transaction.ts +0 -145
  345. package/src/types/utils.ts +0 -88
  346. package/src/types/window.ts +0 -9
  347. package/src/utils/abi/decodeAbi.bench.ts +0 -135
  348. package/src/utils/abi/decodeAbi.test.ts +0 -1614
  349. package/src/utils/abi/decodeAbi.ts +0 -300
  350. package/src/utils/abi/decodeDeployData.test.ts +0 -151
  351. package/src/utils/abi/decodeDeployData.ts +0 -44
  352. package/src/utils/abi/decodeErrorResult.test.ts +0 -230
  353. package/src/utils/abi/decodeErrorResult.ts +0 -45
  354. package/src/utils/abi/decodeEventLog.test.ts +0 -542
  355. package/src/utils/abi/decodeEventLog.ts +0 -107
  356. package/src/utils/abi/decodeFunctionData.test.ts +0 -138
  357. package/src/utils/abi/decodeFunctionData.ts +0 -32
  358. package/src/utils/abi/decodeFunctionResult.test.ts +0 -333
  359. package/src/utils/abi/decodeFunctionResult.ts +0 -57
  360. package/src/utils/abi/encodeAbi.bench.ts +0 -163
  361. package/src/utils/abi/encodeAbi.test.ts +0 -1447
  362. package/src/utils/abi/encodeAbi.ts +0 -273
  363. package/src/utils/abi/encodeDeployData.test.ts +0 -124
  364. package/src/utils/abi/encodeDeployData.ts +0 -40
  365. package/src/utils/abi/encodeErrorResult.test.ts +0 -192
  366. package/src/utils/abi/encodeErrorResult.ts +0 -47
  367. package/src/utils/abi/encodeEventTopics.test.ts +0 -345
  368. package/src/utils/abi/encodeEventTopics.ts +0 -75
  369. package/src/utils/abi/encodeFunctionData.test.ts +0 -138
  370. package/src/utils/abi/encodeFunctionData.ts +0 -42
  371. package/src/utils/abi/encodeFunctionResult.test.ts +0 -279
  372. package/src/utils/abi/encodeFunctionResult.ts +0 -41
  373. package/src/utils/abi/formatAbiItem.test.ts +0 -335
  374. package/src/utils/abi/formatAbiItem.ts +0 -41
  375. package/src/utils/abi/formatAbiItemWithArgs.test.ts +0 -291
  376. package/src/utils/abi/formatAbiItemWithArgs.ts +0 -27
  377. package/src/utils/abi/getAbiItem.test.ts +0 -547
  378. package/src/utils/abi/getAbiItem.ts +0 -95
  379. package/src/utils/abi/index.test.ts +0 -24
  380. package/src/utils/abi/index.ts +0 -48
  381. package/src/utils/address/getAddress.bench.ts +0 -22
  382. package/src/utils/address/getAddress.test.ts +0 -46
  383. package/src/utils/address/getAddress.ts +0 -28
  384. package/src/utils/address/getContractAddress.bench.ts +0 -20
  385. package/src/utils/address/getContractAddress.test.ts +0 -78
  386. package/src/utils/address/getContractAddress.ts +0 -59
  387. package/src/utils/address/index.test.ts +0 -17
  388. package/src/utils/address/index.ts +0 -16
  389. package/src/utils/address/isAddress.test.ts +0 -10
  390. package/src/utils/address/isAddress.ts +0 -10
  391. package/src/utils/address/isAddressEqual.test.ts +0 -55
  392. package/src/utils/address/isAddressEqual.ts +0 -6
  393. package/src/utils/buildRequest.test.ts +0 -428
  394. package/src/utils/buildRequest.ts +0 -72
  395. package/src/utils/chain.test.ts +0 -43
  396. package/src/utils/chain.ts +0 -8
  397. package/src/utils/contract/extractFunctionParts.test.ts +0 -109
  398. package/src/utils/contract/extractFunctionParts.ts +0 -27
  399. package/src/utils/contract/getContractError.test.ts +0 -282
  400. package/src/utils/contract/getContractError.ts +0 -58
  401. package/src/utils/contract/index.test.ts +0 -15
  402. package/src/utils/contract/index.ts +0 -8
  403. package/src/utils/data/concat.test.ts +0 -35
  404. package/src/utils/data/concat.ts +0 -34
  405. package/src/utils/data/index.test.ts +0 -23
  406. package/src/utils/data/index.ts +0 -13
  407. package/src/utils/data/isBytes.test.ts +0 -9
  408. package/src/utils/data/isBytes.ts +0 -7
  409. package/src/utils/data/isHex.test.ts +0 -13
  410. package/src/utils/data/isHex.ts +0 -5
  411. package/src/utils/data/pad.bench.ts +0 -30
  412. package/src/utils/data/pad.test.ts +0 -367
  413. package/src/utils/data/pad.ts +0 -53
  414. package/src/utils/data/size.test.ts +0 -18
  415. package/src/utils/data/size.ts +0 -13
  416. package/src/utils/data/slice.test.ts +0 -203
  417. package/src/utils/data/slice.ts +0 -60
  418. package/src/utils/data/trim.bench.ts +0 -34
  419. package/src/utils/data/trim.test.ts +0 -175
  420. package/src/utils/data/trim.ts +0 -33
  421. package/src/utils/encoding/decodeBytes.bench.ts +0 -40
  422. package/src/utils/encoding/decodeBytes.test.ts +0 -144
  423. package/src/utils/encoding/decodeBytes.ts +0 -63
  424. package/src/utils/encoding/decodeHex.bench.ts +0 -24
  425. package/src/utils/encoding/decodeHex.test.ts +0 -167
  426. package/src/utils/encoding/decodeHex.ts +0 -76
  427. package/src/utils/encoding/decodeRlp.bench.ts +0 -34
  428. package/src/utils/encoding/decodeRlp.test.ts +0 -350
  429. package/src/utils/encoding/decodeRlp.ts +0 -121
  430. package/src/utils/encoding/encodeBytes.bench.ts +0 -29
  431. package/src/utils/encoding/encodeBytes.test.ts +0 -676
  432. package/src/utils/encoding/encodeBytes.ts +0 -59
  433. package/src/utils/encoding/encodeHex.bench.ts +0 -49
  434. package/src/utils/encoding/encodeHex.test.ts +0 -232
  435. package/src/utils/encoding/encodeHex.ts +0 -104
  436. package/src/utils/encoding/encodeRlp.bench.ts +0 -54
  437. package/src/utils/encoding/encodeRlp.test.ts +0 -254
  438. package/src/utils/encoding/encodeRlp.ts +0 -48
  439. package/src/utils/encoding/index.test.ts +0 -32
  440. package/src/utils/encoding/index.ts +0 -36
  441. package/src/utils/ens/index.test.ts +0 -14
  442. package/src/utils/ens/index.ts +0 -7
  443. package/src/utils/ens/labelhash.test.ts +0 -55
  444. package/src/utils/ens/labelhash.ts +0 -16
  445. package/src/utils/ens/namehash.test.ts +0 -65
  446. package/src/utils/ens/namehash.ts +0 -28
  447. package/src/utils/ens/normalize.bench.ts +0 -14
  448. package/src/utils/ens/normalize.test.ts +0 -35
  449. package/src/utils/ens/normalize.ts +0 -14
  450. package/src/utils/ens/packetToBytes.test.ts +0 -11
  451. package/src/utils/ens/packetToBytes.ts +0 -29
  452. package/src/utils/formatters/block.bench.ts +0 -51
  453. package/src/utils/formatters/block.test.ts +0 -115
  454. package/src/utils/formatters/block.ts +0 -37
  455. package/src/utils/formatters/extract.test.ts +0 -14
  456. package/src/utils/formatters/extract.ts +0 -18
  457. package/src/utils/formatters/feeHistory.test.ts +0 -66
  458. package/src/utils/formatters/feeHistory.ts +0 -12
  459. package/src/utils/formatters/format.test.ts +0 -93
  460. package/src/utils/formatters/format.ts +0 -90
  461. package/src/utils/formatters/index.test.ts +0 -27
  462. package/src/utils/formatters/index.ts +0 -34
  463. package/src/utils/formatters/log.test.ts +0 -79
  464. package/src/utils/formatters/log.ts +0 -12
  465. package/src/utils/formatters/transaction.test.ts +0 -271
  466. package/src/utils/formatters/transaction.ts +0 -63
  467. package/src/utils/formatters/transactionReceipt.bench.ts +0 -73
  468. package/src/utils/formatters/transactionReceipt.test.ts +0 -151
  469. package/src/utils/formatters/transactionReceipt.ts +0 -63
  470. package/src/utils/formatters/transactionRequest.bench.ts +0 -29
  471. package/src/utils/formatters/transactionRequest.test.ts +0 -237
  472. package/src/utils/formatters/transactionRequest.ts +0 -56
  473. package/src/utils/hash/getEventSignature.test.ts +0 -61
  474. package/src/utils/hash/getEventSignature.ts +0 -4
  475. package/src/utils/hash/getFunctionSignature.test.ts +0 -22
  476. package/src/utils/hash/getFunctionSignature.ts +0 -5
  477. package/src/utils/hash/hashFunction.test.ts +0 -65
  478. package/src/utils/hash/hashFunction.ts +0 -12
  479. package/src/utils/hash/index.test.ts +0 -13
  480. package/src/utils/hash/index.ts +0 -5
  481. package/src/utils/hash/keccak256.test.ts +0 -59
  482. package/src/utils/hash/keccak256.ts +0 -21
  483. package/src/utils/index.test.ts +0 -111
  484. package/src/utils/index.ts +0 -142
  485. package/src/utils/observe.test.ts +0 -176
  486. package/src/utils/observe.ts +0 -66
  487. package/src/utils/poll.test.ts +0 -127
  488. package/src/utils/poll.ts +0 -42
  489. package/src/utils/promise/index.test.ts +0 -14
  490. package/src/utils/promise/index.ts +0 -3
  491. package/src/utils/promise/withCache.test.ts +0 -97
  492. package/src/utils/promise/withCache.ts +0 -73
  493. package/src/utils/promise/withRetry.test.ts +0 -231
  494. package/src/utils/promise/withRetry.ts +0 -61
  495. package/src/utils/promise/withTimeout.test.ts +0 -37
  496. package/src/utils/promise/withTimeout.ts +0 -39
  497. package/src/utils/rpc.test.ts +0 -990
  498. package/src/utils/rpc.ts +0 -294
  499. package/src/utils/stringify.test.ts +0 -13
  500. package/src/utils/stringify.ts +0 -5
  501. package/src/utils/uid.ts +0 -14
  502. package/src/utils/unit/constants.test.ts +0 -22
  503. package/src/utils/unit/constants.ts +0 -12
  504. package/src/utils/unit/formatEther.test.ts +0 -75
  505. package/src/utils/unit/formatEther.ts +0 -6
  506. package/src/utils/unit/formatGwei.test.ts +0 -32
  507. package/src/utils/unit/formatGwei.ts +0 -6
  508. package/src/utils/unit/formatUnit.bench.ts +0 -21
  509. package/src/utils/unit/formatUnit.test.ts +0 -40
  510. package/src/utils/unit/formatUnit.ts +0 -16
  511. package/src/utils/unit/index.test.ts +0 -28
  512. package/src/utils/unit/index.ts +0 -7
  513. package/src/utils/unit/parseEther.test.ts +0 -126
  514. package/src/utils/unit/parseEther.ts +0 -6
  515. package/src/utils/unit/parseGwei.test.ts +0 -50
  516. package/src/utils/unit/parseGwei.ts +0 -6
  517. package/src/utils/unit/parseUnit.bench.ts +0 -21
  518. package/src/utils/unit/parseUnit.test.ts +0 -54
  519. package/src/utils/unit/parseUnit.ts +0 -27
  520. package/src/utils/wait.ts +0 -3
  521. package/src/wallet.test.ts +0 -19
  522. package/src/wallet.ts +0 -23
  523. package/src/window.ts +0 -1
@@ -0,0 +1,553 @@
1
+ import { Chain as Chain$1 } from '@wagmi/chains';
2
+ import { Address, Abi, AbiFunction, ExtractAbiFunction, AbiParametersToPrimitiveTypes, AbiError, ExtractAbiError, AbiEvent, ExtractAbiEvent, ExtractAbiErrorNames, ExtractAbiEventNames, AbiStateMutability, ExtractAbiFunctionNames, Narrow, AbiParameter, AbiParameterToPrimitiveType } from 'abitype';
3
+ import { TopicFilter } from 'ethers@6/types/providers';
4
+
5
+ type ByteArray = Uint8Array;
6
+ type Hex = `0x${string}`;
7
+ type Hash = `0x${string}`;
8
+ type LogTopic = Hex | Hex[] | null;
9
+
10
+ declare module 'abitype' {
11
+ interface Config {
12
+ BytesType: {
13
+ inputs: Hex;
14
+ outputs: Hex;
15
+ };
16
+ }
17
+ }
18
+
19
+ type ExtractFormatter<TChain extends Chain, TKey extends keyof NonNullable<TChain['formatters']>, TFallbackFormatter extends Formatter = Formatter> = NonNullable<TChain['formatters']>[TKey] extends NonNullable<unknown> ? NonNullable<TChain['formatters']>[TKey] : TFallbackFormatter;
20
+ type FormatOptions<TSource, TTarget> = {
21
+ formatter: Formatter<TSource, TTarget>;
22
+ };
23
+ /**
24
+ * Creates a type that is the result of applying `TFormatter` to `TSource`.
25
+ *
26
+ * @example
27
+ * Formatted<() => { a: undefined, b: bigint }, { a: bigint }>
28
+ * => { a: undefined, b: bigint }
29
+ *
30
+ * @example
31
+ * Formatted<() => {}, { a: bigint }>
32
+ * => { a: bigint }
33
+ *
34
+ * @example
35
+ * Formatted<() => { a: bigint | undefined, b: bigint }, { a: bigint, b: bigint }, true>
36
+ * => { a?: bigint | undefined, b: bigint }
37
+ */
38
+ type Formatted<TFormatter, TFallback, TAllowOptional = false, TUseParameters = false> = TFormatter extends Formatter ? ReturnType<TFormatter> extends Record<string, never> ? TFallback : TAllowOptional extends true ? OptionalNullable<TUseParameters extends true ? Parameters<TFormatter>[0] : ReturnType<TFormatter>> : TUseParameters extends true ? Parameters<TFormatter>[0] : ReturnType<TFormatter> : never;
39
+ /**
40
+ * @description Formats a data object using the given replacer and an optional formatter.
41
+ */
42
+ declare function format<TFormatter, TSource extends Record<string, any>, TTarget>(data: TSource, { formatter }: FormatOptions<TSource, TTarget>): Formatted<TFormatter, TTarget, false, false>;
43
+ declare function defineFormatter<TSource extends Record<string, unknown>, TFormatted>({ format, }: {
44
+ format: (data: TSource) => TFormatted;
45
+ }): <TFormat extends Formatter<TSource, Partial<TFormatted> & {
46
+ [key: string]: unknown;
47
+ }>, TExclude extends (keyof TSource)[] = []>({ exclude, format: formatOverride, }: {
48
+ exclude?: TExclude | undefined;
49
+ format?: TFormat | undefined;
50
+ }) => (data: TSource & {
51
+ [key: string]: unknown;
52
+ }) => TFormatted & ReturnType<TFormat> & { [K in TExclude[number]]: never; };
53
+
54
+ type TransactionFormatter<TChain extends Chain = Chain> = ExtractFormatter<TChain, 'transaction', NonNullable<Formatters['transaction']>>;
55
+ type FormattedTransaction<TFormatter extends Formatter | undefined = Formatter> = Formatted<TFormatter, Transaction>;
56
+ declare const transactionType: {
57
+ readonly '0x0': "legacy";
58
+ readonly '0x1': "eip2930";
59
+ readonly '0x2': "eip1559";
60
+ };
61
+ declare function formatTransaction(transaction: Partial<RpcTransaction>): Transaction<bigint, number>;
62
+ declare const defineTransaction: <TFormat extends Formatter<Partial<RpcTransaction>, Partial<Transaction<bigint, number>> & {
63
+ [key: string]: unknown;
64
+ }>, TExclude extends ("type" | "value" | "blockHash" | "blockNumber" | "from" | "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" | "gas" | "nonce" | "to" | "accessList" | "chainId" | "hash" | "input" | "r" | "s" | "transactionIndex" | "v")[] = []>({ exclude, format: formatOverride, }: {
65
+ exclude?: TExclude | undefined;
66
+ format?: TFormat | undefined;
67
+ }) => (data: Partial<RpcTransaction> & {
68
+ [key: string]: unknown;
69
+ }) => Transaction<bigint, number> & ReturnType<TFormat> & { [K in TExclude[number]]: never; };
70
+
71
+ type Block<TQuantity = bigint, TTransaction = Transaction> = {
72
+ /** Base fee per gas */
73
+ baseFeePerGas: TQuantity | null;
74
+ /** Difficulty for this block */
75
+ difficulty: TQuantity;
76
+ /** "Extra data" field of this block */
77
+ extraData: Hex;
78
+ /** Maximum gas allowed in this block */
79
+ gasLimit: TQuantity;
80
+ /** Total used gas by all transactions in this block */
81
+ gasUsed: TQuantity;
82
+ /** Block hash or `null` if pending */
83
+ hash: Hash | null;
84
+ /** Logs bloom filter or `null` if pending */
85
+ logsBloom: Hex | null;
86
+ /** Address that received this block’s mining rewards */
87
+ miner: Address;
88
+ /** Unique identifier for the block. */
89
+ mixHash: Hash;
90
+ /** Proof-of-work hash or `null` if pending */
91
+ nonce: Hex | null;
92
+ /** Block number or `null` if pending */
93
+ number: TQuantity | null;
94
+ /** Parent block hash */
95
+ parentHash: Hash;
96
+ /** Root of the this block’s receipts trie */
97
+ receiptsRoot: Hex;
98
+ sealFields: Hex[];
99
+ /** SHA3 of the uncles data in this block */
100
+ sha3Uncles: Hash;
101
+ /** Size of this block in bytes */
102
+ size: TQuantity;
103
+ /** Root of this block’s final state trie */
104
+ stateRoot: Hash;
105
+ /** Unix timestamp of when this block was collated */
106
+ timestamp: TQuantity;
107
+ /** Total difficulty of the chain until this block */
108
+ totalDifficulty: TQuantity | null;
109
+ /** List of transaction objects or hashes */
110
+ transactions: Hash[] | TTransaction[];
111
+ /** Root of this block’s transaction trie */
112
+ transactionsRoot: Hash;
113
+ /** List of uncle hashes */
114
+ uncles: Hash[];
115
+ };
116
+ type BlockIdentifier<TQuantity = bigint> = {
117
+ /** Whether or not to throw an error if the block is not in the canonical chain as described below. Only allowed in conjunction with the blockHash tag. Defaults to false. */
118
+ requireCanonical?: boolean;
119
+ } & ({
120
+ /** The block in the canonical chain with this number */
121
+ blockNumber: BlockNumber<TQuantity>;
122
+ } | {
123
+ /** The block uniquely identified by this hash. The `blockNumber` and `blockHash` properties are mutually exclusive; exactly one of them must be set. */
124
+ blockHash: Hash;
125
+ });
126
+ type BlockNumber<TQuantity = bigint> = TQuantity;
127
+ type BlockTag = 'latest' | 'earliest' | 'pending' | 'safe' | 'finalized';
128
+ type Uncle<TQuantity = bigint, TTransaction = Transaction> = Block<TQuantity, TTransaction>;
129
+
130
+ type FeeHistory<TQuantity = bigint> = {
131
+ /**
132
+ * An array of block base fees per gas (in wei). This includes the next block after
133
+ * the newest of the returned range, because this value can be derived from the newest block.
134
+ * Zeroes are returned for pre-EIP-1559 blocks. */
135
+ baseFeePerGas: TQuantity[];
136
+ /** An array of block gas used ratios. These are calculated as the ratio of gasUsed and gasLimit. */
137
+ gasUsedRatio: number[];
138
+ /** Lowest number block of the returned range. */
139
+ oldestBlock: TQuantity;
140
+ /** An array of effective priority fees (in wei) per gas data points from a single block. All zeroes are returned if the block is empty. */
141
+ reward?: TQuantity[][];
142
+ };
143
+ type FeeValuesLegacy<TQuantity = bigint> = {
144
+ /** Base fee per gas. */
145
+ gasPrice: TQuantity;
146
+ maxFeePerGas?: never;
147
+ maxPriorityFeePerGas?: never;
148
+ };
149
+ type FeeValuesEIP1559<TQuantity = bigint> = {
150
+ gasPrice?: never;
151
+ /** Total fee per gas in wei (gasPrice/baseFeePerGas + maxPriorityFeePerGas). */
152
+ maxFeePerGas: TQuantity;
153
+ /** Max priority fee per gas (in wei). */
154
+ maxPriorityFeePerGas: TQuantity;
155
+ };
156
+ type FeeValues<TQuantity = bigint> = FeeValuesLegacy<TQuantity> | FeeValuesEIP1559<TQuantity>;
157
+
158
+ /**
159
+ * @description Excludes empty attributes from T if TMaybeExclude is true.
160
+ *
161
+ * @example
162
+ * MaybeExcludeEmpty<{ a: string, b: number, c: [] }, true>
163
+ * => { a: string, b: number }
164
+ *
165
+ * MaybeExcludeEmpty<{ a: string, b: number, c: [] }, false>
166
+ * => { a: string, b: number, c: [] }
167
+ *
168
+ * MaybeExcludeEmpty<{ a: string, b: number, c: undefined }, true>
169
+ * => { a: string, b: number }
170
+ */
171
+ type MaybeExcludeEmpty<T, TMaybeExclude extends boolean> = TMaybeExclude extends true ? Exclude<T, [] | null | undefined> : T;
172
+ /**
173
+ * @description Makes attributes on the type T required if TRequired is true.
174
+ *
175
+ * @example
176
+ * MaybeRequired<{ a: string, b?: number }, true>
177
+ * => { a: string, b: number }
178
+ *
179
+ * MaybeRequired<{ a: string, b?: number }, false>
180
+ * => { a: string, b?: number }
181
+ */
182
+ type MaybeRequired<T, TRequired extends boolean> = TRequired extends true ? Required<T> : T;
183
+ /**
184
+ * @description Merges the intersection properties of T and U.
185
+ *
186
+ * @example
187
+ * MergeIntersectionProperties<{ a: string, b: number }, { a: number, c: boolean }>
188
+ * => { a: number, b: number }
189
+ */
190
+ type MergeIntersectionProperties<T, U> = {
191
+ [K in keyof T as K extends keyof U ? U[K] extends void ? never : K : K]: K extends keyof U ? U[K] : T[K];
192
+ };
193
+ /**
194
+ * @description Makes nullable properties from T optional.
195
+ *
196
+ * @example
197
+ * OptionalNullable<{ a: string | undefined, c: number }>
198
+ * => { a?: string | undefined, c: number }
199
+ */
200
+ type OptionalNullable<T> = {
201
+ [K in keyof T as T[K] extends NonNullable<unknown> ? K : never]: T[K];
202
+ } & {
203
+ [K in keyof T as T[K] extends NonNullable<unknown> ? never : K]?: T[K];
204
+ };
205
+ /**
206
+ * @description Constructs a type by excluding `undefined` from `T`.
207
+ *
208
+ * @example
209
+ * NoUndefined<string | undefined>
210
+ * => string
211
+ */
212
+ type NoUndefined<T> = T extends undefined ? never : T;
213
+ /**
214
+ * @description Combines members of an intersection into a readable type.
215
+ *
216
+ * @link https://twitter.com/mattpocockuk/status/1622730173446557697?s=20&t=NdpAcmEFXY01xkqU3KO0Mg
217
+ * @example
218
+ * Prettify<{ a: string } | { b: string } | { c: number, d: bigint }>
219
+ * => { a: string, b: string, c: number, d: bigint }
220
+ */
221
+ type Prettify<T> = {
222
+ [K in keyof T]: T[K];
223
+ } & {};
224
+ /**
225
+ * @description Creates a type that extracts the values of T.
226
+ *
227
+ * @example
228
+ * ValueOf<{ a: string, b: number }>
229
+ * => string | number
230
+ */
231
+ type ValueOf<T> = T[keyof T];
232
+
233
+ type EventParametersConfig = {
234
+ enableUnion: boolean;
235
+ indexedOnly: boolean;
236
+ required: boolean;
237
+ };
238
+ type EventParametersDefaultConfig = {
239
+ enableUnion: true;
240
+ indexedOnly: true;
241
+ required: false;
242
+ };
243
+ type AbiItem = Abi[number];
244
+ type EventDefinition = `${string}(${string})`;
245
+ type HashedEventTypes = 'string' | 'bytes' | 'tuple' | `${string}[${string}]`;
246
+ type EventTopicParam<TPrimitiveType = Hex, TTopic extends LogTopic = LogTopic> = NoUndefined<(TTopic extends Hex ? TPrimitiveType : undefined) | (TTopic extends Hex[] ? TPrimitiveType[] : undefined) | (TTopic extends null ? null : undefined)>;
247
+ type AbiEventParameterToPrimitiveType<TParam extends AbiParameter, TConfig extends EventParametersConfig = EventParametersDefaultConfig> = TConfig extends {
248
+ enableUnion: true;
249
+ } ? EventTopicParam<AbiParameterToPrimitiveType<TParam>> : AbiParameterToPrimitiveType<TParam>;
250
+ type AbiEventParametersToPrimitiveTypes<TAbiParameters extends readonly AbiParameter[], TConfig extends EventParametersConfig = EventParametersDefaultConfig, TBase = TAbiParameters[0] extends {
251
+ name: string;
252
+ } ? {} : []> = Prettify<TAbiParameters extends readonly [infer Head, ...infer Tail] ? Head extends {
253
+ indexed: true;
254
+ } ? Head extends AbiParameter ? Head extends {
255
+ name: infer Name;
256
+ } ? Name extends string ? MaybeRequired<{
257
+ [name in Name]?: AbiEventParameterToPrimitiveType<Head, TConfig>;
258
+ }, TConfig['required']> & (Tail extends readonly [] ? {} : Tail extends readonly AbiParameter[] ? AbiEventParametersToPrimitiveTypes<Tail, TConfig> : {}) : never : MaybeExcludeEmpty<(TConfig extends {
259
+ enableUnion: true;
260
+ } ? [AbiEventParameterToPrimitiveType<Head, TConfig>] : []) | [
261
+ AbiEventParameterToPrimitiveType<Head, TConfig>,
262
+ ...(Tail extends readonly [] ? [] : Tail extends readonly AbiParameter[] ? AbiEventParametersToPrimitiveTypes<Tail, TConfig> : [])
263
+ ], TConfig['required']> : TBase : TConfig extends {
264
+ indexedOnly: false;
265
+ } ? Head extends AbiParameter ? Head extends {
266
+ name: infer Name;
267
+ } ? Name extends string ? {
268
+ [name in Name]: AbiParameterToPrimitiveType<Head>;
269
+ } & (Tail extends readonly [] ? {} : Tail extends readonly AbiParameter[] ? AbiEventParametersToPrimitiveTypes<Tail, TConfig> : {}) : never : [
270
+ AbiParameterToPrimitiveType<Head>,
271
+ ...(Tail extends readonly [] ? [] : Tail extends readonly AbiParameter[] ? AbiEventParametersToPrimitiveTypes<Tail, TConfig> : [])
272
+ ] : TBase : Tail extends readonly [] ? TBase : Tail extends readonly AbiParameter[] ? AbiEventParametersToPrimitiveTypes<Tail, TConfig> : TBase : TBase>;
273
+ type AbiEventTopicToPrimitiveType<TParam extends AbiParameter, TTopic extends LogTopic, TPrimitiveType = TParam['type'] extends HashedEventTypes ? TTopic : AbiParameterToPrimitiveType<TParam>> = EventTopicParam<TPrimitiveType, TTopic>;
274
+ type AbiEventTopicsToPrimitiveTypes<TAbiParameters extends readonly AbiParameter[], TTopics extends LogTopic[] | undefined = undefined, TData extends Hex | undefined = undefined, TBase = TAbiParameters[0] extends {
275
+ name: string;
276
+ } ? {} : []> = Prettify<TAbiParameters extends readonly [infer Head, ...infer Tail] ? TTopics extends readonly [infer TopicHead, ...infer TopicTail] ? Head extends {
277
+ indexed: true;
278
+ } ? Head extends AbiParameter ? Head extends {
279
+ name: infer Name;
280
+ } ? Name extends string ? {
281
+ [name in Name]: TopicHead extends LogTopic ? AbiEventTopicToPrimitiveType<Head, TopicHead> : never;
282
+ } & (Tail extends readonly [] ? {} : Tail extends readonly AbiParameter[] ? TopicTail extends LogTopic[] ? AbiEventTopicsToPrimitiveTypes<Tail, TopicTail, TData> : {} : {}) : never : [
283
+ TopicHead extends LogTopic ? AbiEventTopicToPrimitiveType<Head, TopicHead> : never,
284
+ ...(Tail extends readonly [] ? [] : Tail extends readonly AbiParameter[] ? TopicTail extends LogTopic[] ? AbiEventTopicsToPrimitiveTypes<Tail, TopicTail, TData> : [] : [])
285
+ ] : TBase : TBase : TTopics extends readonly [] ? TData extends '0x' ? TBase : TData extends Hex ? Head extends AbiParameter ? Head extends {
286
+ indexed: true;
287
+ } ? Tail extends readonly AbiParameter[] ? AbiEventTopicsToPrimitiveTypes<Tail, [], TData> : TBase : Head extends {
288
+ name: infer Name;
289
+ } ? Name extends string ? {
290
+ [name in Name]: AbiParameterToPrimitiveType<Head>;
291
+ } & (Tail extends readonly [] ? {} : Tail extends readonly AbiParameter[] ? AbiEventTopicsToPrimitiveTypes<Tail, [], TData> : {}) : never : [
292
+ AbiParameterToPrimitiveType<Head>,
293
+ ...(Tail extends readonly [] ? [] : Tail extends readonly AbiParameter[] ? AbiEventTopicsToPrimitiveTypes<Tail, [], TData> : [])
294
+ ] : TBase : TBase : TBase : undefined>;
295
+ type ExtractArgsFromAbi<TAbi extends Abi | readonly unknown[], TFunctionName extends string, TAbiFunction extends AbiFunction & {
296
+ type: 'function';
297
+ } = TAbi extends Abi ? ExtractAbiFunction<TAbi, TFunctionName> : AbiFunction & {
298
+ type: 'function';
299
+ }, TArgs = AbiParametersToPrimitiveTypes<TAbiFunction['inputs']>, FailedToParseArgs = ([TArgs] extends [never] ? true : false) | (readonly unknown[] extends TArgs ? true : false)> = true extends FailedToParseArgs ? {
300
+ /**
301
+ * Arguments to pass contract method
302
+ *
303
+ * Use a [const assertion](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-4.html#const-assertions) on {@link abi} for type inference.
304
+ */
305
+ args?: readonly unknown[];
306
+ } : TArgs extends readonly [] ? {
307
+ args?: never;
308
+ } : {
309
+ /** Arguments to pass contract method */ args: TArgs;
310
+ };
311
+ type ExtractConstructorArgsFromAbi<TAbi extends Abi | readonly unknown[], TAbiFunction extends AbiFunction & {
312
+ type: 'constructor';
313
+ } = TAbi extends Abi ? Extract<TAbi[number], {
314
+ type: 'constructor';
315
+ }> : AbiFunction & {
316
+ type: 'constructor';
317
+ }, TArgs = AbiParametersToPrimitiveTypes<TAbiFunction['inputs']>, FailedToParseArgs = ([TArgs] extends [never] ? true : false) | (readonly unknown[] extends TArgs ? true : false)> = true extends FailedToParseArgs ? {
318
+ /**
319
+ * Arguments to pass contract method
320
+ *
321
+ * Use a [const assertion](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-4.html#const-assertions) on {@link abi} for type inference.
322
+ */
323
+ args?: readonly unknown[];
324
+ } : TArgs extends readonly [] ? {
325
+ args?: never;
326
+ } : {
327
+ /** Arguments to pass contract method */ args: TArgs;
328
+ };
329
+ type ExtractErrorArgsFromAbi<TAbi extends Abi | readonly unknown[], TErrorName extends string, TAbiError extends AbiError = TAbi extends Abi ? ExtractAbiError<TAbi, TErrorName> : AbiError, TArgs = AbiParametersToPrimitiveTypes<TAbiError['inputs']>, FailedToParseArgs = ([TArgs] extends [never] ? true : false) | (readonly unknown[] extends TArgs ? true : false)> = true extends FailedToParseArgs ? {
330
+ /**
331
+ * Arguments to pass contract method
332
+ *
333
+ * Use a [const assertion](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-4.html#const-assertions) on {@link abi} for type inference.
334
+ */
335
+ args?: readonly unknown[];
336
+ } : TArgs extends readonly [] ? {
337
+ args?: never;
338
+ } : {
339
+ /** Arguments to pass contract method */ args: TArgs;
340
+ };
341
+ type ExtractEventArgsFromAbi<TAbi extends Abi | readonly unknown[], TEventName extends string, TConfig extends EventParametersConfig = EventParametersDefaultConfig, TAbiEvent extends AbiEvent & {
342
+ type: 'event';
343
+ } = TAbi extends Abi ? ExtractAbiEvent<TAbi, TEventName> : AbiEvent & {
344
+ type: 'event';
345
+ }, TArgs = AbiEventParametersToPrimitiveTypes<TAbiEvent['inputs'], TConfig>, FailedToParseArgs = ([TArgs] extends [never] ? true : false) | (readonly unknown[] extends TArgs ? true : false)> = true extends FailedToParseArgs ? readonly unknown[] : TArgs extends readonly [] ? never : TArgs;
346
+ type ExtractEventArgsFromTopics<TAbi extends Abi | readonly unknown[], TEventName extends string, TTopics extends LogTopic[], TData extends Hex | undefined, TAbiEvent extends AbiEvent & {
347
+ type: 'event';
348
+ } = TAbi extends Abi ? ExtractAbiEvent<TAbi, TEventName> : AbiEvent & {
349
+ type: 'event';
350
+ }, TArgs = AbiEventTopicsToPrimitiveTypes<TAbiEvent['inputs'], TTopics, TData>> = TTopics extends readonly [] ? TData extends undefined ? {
351
+ args?: never;
352
+ } : {
353
+ args?: TArgs;
354
+ } : {
355
+ args?: TArgs;
356
+ };
357
+ type ExtractErrorNameFromAbi<TAbi extends Abi | readonly unknown[] = Abi, TErrorName extends string = string> = TAbi extends Abi ? ExtractAbiErrorNames<TAbi> extends infer AbiErrorNames ? AbiErrorNames | (TErrorName extends AbiErrorNames ? TErrorName : never) | (Abi extends TAbi ? string : never) : never : TErrorName;
358
+ type ExtractEventNameFromAbi<TAbi extends Abi | readonly unknown[] = Abi, TEventName extends string | undefined = string> = TAbi extends Abi ? ExtractAbiEventNames<TAbi> extends infer AbiEventNames ? AbiEventNames | (TEventName extends AbiEventNames ? TEventName : never) : never : TEventName;
359
+ type ExtractFunctionNameFromAbi<TAbi extends Abi | readonly unknown[] = Abi, TFunctionName extends string = string, TAbiStateMutability extends AbiStateMutability = AbiStateMutability> = TAbi extends Abi ? ExtractAbiFunctionNames<TAbi, TAbiStateMutability> extends infer AbiFunctionNames ? AbiFunctionNames | (TFunctionName extends AbiFunctionNames ? TFunctionName : never) | (Abi extends TAbi ? string : never) : never : TFunctionName;
360
+ type ExtractNames<TAbi extends Abi> = ExtractAbiFunctionNames<TAbi> | ExtractAbiEventNames<TAbi> | ExtractAbiErrorNames<TAbi>;
361
+ type ExtractNameFromAbi<TAbi extends Abi | readonly unknown[] = Abi, TName extends string = string> = TAbi extends Abi ? ExtractNames<TAbi> extends infer AbiNames ? AbiNames | (TName extends AbiNames ? TName : never) | (Abi extends TAbi ? string : never) : never : TName;
362
+ type ExtractResultFromAbi<TAbi extends Abi | readonly unknown[] = Abi, TFunctionName extends string = string, TAbiFunction extends AbiFunction & {
363
+ type: 'function';
364
+ } = TAbi extends Abi ? ExtractAbiFunction<TAbi, TFunctionName> : AbiFunction & {
365
+ type: 'function';
366
+ }, TArgs = AbiParametersToPrimitiveTypes<TAbiFunction['outputs']>, FailedToParseArgs = ([TArgs] extends [never] ? true : false) | (readonly unknown[] extends TArgs ? true : false)> = true extends FailedToParseArgs ? unknown : TArgs extends readonly [] ? void : TArgs extends readonly [infer Arg] ? Arg : TArgs;
367
+ type MaybeAbiEventName<TAbiEvent extends AbiEvent | undefined> = TAbiEvent extends AbiEvent ? TAbiEvent['name'] : undefined;
368
+ type MaybeExtractEventArgsFromAbi<TAbi extends Abi | readonly unknown[] = Abi, TEventName extends string | undefined = undefined> = TEventName extends string ? ExtractEventArgsFromAbi<TAbi, TEventName> : undefined;
369
+ type ContractConfig<TAbi extends Abi | readonly unknown[] = Abi, TFunctionName extends string = string, TAbiStateMutability extends AbiStateMutability = AbiStateMutability> = {
370
+ /** Contract ABI */
371
+ abi: Narrow<TAbi>;
372
+ /** Contract address */
373
+ address: Address;
374
+ /** Function to invoke on the contract */
375
+ functionName: ExtractFunctionNameFromAbi<TAbi, TFunctionName, TAbiStateMutability>;
376
+ } & ExtractArgsFromAbi<TAbi, TFunctionName>;
377
+ type GetValue<TAbi extends Abi | readonly unknown[], TFunctionName extends string, TValueType = TransactionRequest['value'], TAbiFunction extends AbiFunction & {
378
+ type: 'function';
379
+ } = TAbi extends Abi ? ExtractAbiFunction<TAbi, TFunctionName> : AbiFunction & {
380
+ type: 'function';
381
+ }> = TAbiFunction['stateMutability'] extends 'payable' ? TValueType : TAbiFunction['payable'] extends true ? TValueType : never;
382
+
383
+ type DecodedAbiEvent<TAbiEvent extends AbiEvent | undefined = undefined, TAbi extends Abi | readonly unknown[] = [TAbiEvent], TEventName extends string | undefined = TAbiEvent extends AbiEvent ? TAbiEvent['name'] : undefined> = TAbi extends Abi ? TEventName extends string ? {
384
+ args: ExtractEventArgsFromAbi<TAbi, TEventName, {
385
+ enableUnion: false;
386
+ indexedOnly: false;
387
+ required: true;
388
+ }>;
389
+ /** The event name decoded from `topics`. */
390
+ eventName: TEventName;
391
+ } : {
392
+ args: ExtractEventArgsFromAbi<TAbi, string, {
393
+ enableUnion: false;
394
+ indexedOnly: false;
395
+ required: true;
396
+ }>;
397
+ /** The event name decoded from `topics`. */
398
+ eventName: ExtractAbiEventNames<TAbi>;
399
+ } : {};
400
+ type Log<TQuantity = bigint, TIndex = number, TAbiEvent extends AbiEvent | undefined = undefined, TAbi extends Abi | readonly unknown[] = [TAbiEvent], TEventName extends string | undefined = TAbiEvent extends AbiEvent ? TAbiEvent['name'] : undefined> = {
401
+ /** The address from which this log originated */
402
+ address: Address;
403
+ /** Hash of block containing this log or `null` if pending */
404
+ blockHash: Hash | null;
405
+ /** Number of block containing this log or `null` if pending */
406
+ blockNumber: TQuantity | null;
407
+ /** Contains the non-indexed arguments of the log */
408
+ data: Hex;
409
+ /** Index of this log within its block or `null` if pending */
410
+ logIndex: TIndex | null;
411
+ /** Hash of the transaction that created this log or `null` if pending */
412
+ transactionHash: Hash | null;
413
+ /** Index of the transaction that created this log or `null` if pending */
414
+ transactionIndex: TIndex | null;
415
+ /** List of order-dependent topics */
416
+ topics: TopicFilter;
417
+ /** `true` if this filter has been destroyed and is invalid */
418
+ removed: boolean;
419
+ } & DecodedAbiEvent<TAbiEvent, TAbi, TEventName>;
420
+
421
+ type Index = `0x${string}`;
422
+ type Quantity = `0x${string}`;
423
+ type Status = '0x0' | '0x1';
424
+ type TransactionType$1 = '0x0' | '0x1' | '0x2';
425
+ type RpcBlock = Block<Quantity, RpcTransaction>;
426
+ type RpcBlockNumber = BlockNumber<Quantity>;
427
+ type RpcBlockIdentifier = BlockIdentifier<Quantity>;
428
+ type RpcUncle = Uncle<Quantity>;
429
+ type RpcFeeHistory = FeeHistory<Quantity>;
430
+ type RpcFeeValues = FeeValues<Quantity>;
431
+ type RpcLog = Log<Quantity, Index>;
432
+ type RpcTransactionReceipt = TransactionReceipt<Quantity, Index, Status, TransactionType$1>;
433
+ type RpcTransactionRequest = TransactionRequest<Quantity, Index>;
434
+ type RpcTransaction = TransactionLegacy<Quantity, Index, '0x0'> | TransactionEIP2930<Quantity, Index, '0x1'> | TransactionEIP1559<Quantity, Index, '0x2'>;
435
+
436
+ type AccessList = {
437
+ address: Address;
438
+ storageKeys: Hex[];
439
+ }[];
440
+ type TransactionType = ValueOf<typeof transactionType>;
441
+ type TransactionReceipt<TQuantity = bigint, TIndex = number, TStatus = 'success' | 'reverted', TType = TransactionType> = {
442
+ /** Hash of block containing this transaction */
443
+ blockHash: Hash;
444
+ /** Number of block containing this transaction */
445
+ blockNumber: TQuantity;
446
+ /** Address of new contract or `null` if no contract was created */
447
+ contractAddress: Address | null;
448
+ /** Gas used by this and all preceding transactions in this block */
449
+ cumulativeGasUsed: TQuantity;
450
+ /** Pre-London, it is equal to the transaction's gasPrice. Post-London, it is equal to the actual gas price paid for inclusion. */
451
+ effectiveGasPrice: TQuantity;
452
+ /** Transaction sender */
453
+ from: Address;
454
+ /** Gas used by this transaction */
455
+ gasUsed: TQuantity;
456
+ /** List of log objects generated by this transaction */
457
+ logs: Log<TQuantity, TIndex>[];
458
+ /** Logs bloom filter */
459
+ logsBloom: Hex;
460
+ /** `1` if this transaction was successful or `0` if it failed */
461
+ status: TStatus;
462
+ /** Transaction recipient or `null` if deploying a contract */
463
+ to: Address | null;
464
+ /** Hash of this transaction */
465
+ transactionHash: Hash;
466
+ /** Index of this transaction in the block */
467
+ transactionIndex: TIndex;
468
+ /** Transaction type */
469
+ type: TType;
470
+ };
471
+ type TransactionBase<TQuantity = bigint, TIndex = number> = {
472
+ /** Hash of block containing this transaction or `null` if pending */
473
+ blockHash: Hash | null;
474
+ /** Number of block containing this transaction or `null` if pending */
475
+ blockNumber: TQuantity | null;
476
+ /** Chain ID. */
477
+ chainId: TIndex;
478
+ /** Transaction sender */
479
+ from: Address;
480
+ /** Gas provided for transaction execution */
481
+ gas: TQuantity;
482
+ /** Hash of this transaction */
483
+ hash: Hash;
484
+ /** Contract code or a hashed method call */
485
+ input: Hex;
486
+ /** Unique number identifying this transaction */
487
+ nonce: TIndex;
488
+ /** ECDSA signature r */
489
+ r: Hex;
490
+ /** ECDSA signature s */
491
+ s: Hex;
492
+ /** Transaction recipient or `null` if deploying a contract */
493
+ to: Address | null;
494
+ /** Index of this transaction in the block or `null` if pending */
495
+ transactionIndex: TIndex | null;
496
+ /** ECDSA recovery ID */
497
+ v: TQuantity;
498
+ /** Value in wei sent with this transaction */
499
+ value: TQuantity;
500
+ };
501
+ type TransactionLegacy<TQuantity = bigint, TIndex = number, TType = 'legacy'> = TransactionBase<TQuantity, TIndex> & FeeValuesLegacy<TQuantity> & {
502
+ accessList?: never;
503
+ type: TType;
504
+ };
505
+ type TransactionEIP2930<TQuantity = bigint, TIndex = number, TType = 'eip2930'> = TransactionBase<TQuantity, TIndex> & FeeValuesLegacy<TQuantity> & {
506
+ accessList: AccessList;
507
+ type: TType;
508
+ };
509
+ type TransactionEIP1559<TQuantity = bigint, TIndex = number, TType = 'eip1559'> = TransactionBase<TQuantity, TIndex> & FeeValuesEIP1559<TQuantity> & {
510
+ accessList: AccessList;
511
+ type: TType;
512
+ };
513
+ type Transaction<TQuantity = bigint, TIndex = number> = TransactionLegacy<TQuantity, TIndex> | TransactionEIP2930<TQuantity, TIndex> | TransactionEIP1559<TQuantity, TIndex>;
514
+ type TransactionRequestBase<TQuantity = bigint, TIndex = number> = {
515
+ /** Contract code or a hashed method call with encoded args */
516
+ data?: Hex;
517
+ /** Transaction sender */
518
+ from: Address;
519
+ /** Gas provided for transaction execution */
520
+ gas?: TQuantity;
521
+ /** Unique number identifying this transaction */
522
+ nonce?: TIndex;
523
+ /** Transaction recipient */
524
+ to?: Address;
525
+ /** Value in wei sent with this transaction */
526
+ value?: TQuantity;
527
+ };
528
+ type TransactionRequestLegacy<TQuantity = bigint, TIndex = number> = TransactionRequestBase<TQuantity, TIndex> & Partial<FeeValuesLegacy<TQuantity>> & {
529
+ accessList?: never;
530
+ };
531
+ type TransactionRequestEIP2930<TQuantity = bigint, TIndex = number> = TransactionRequestBase<TQuantity, TIndex> & Partial<FeeValuesLegacy<TQuantity>> & {
532
+ accessList?: AccessList;
533
+ };
534
+ type TransactionRequestEIP1559<TQuantity = bigint, TIndex = number> = TransactionRequestBase<TQuantity, TIndex> & Partial<FeeValuesEIP1559<TQuantity>> & {
535
+ accessList?: AccessList;
536
+ };
537
+ type TransactionRequest<TQuantity = bigint, TIndex = number> = TransactionRequestLegacy<TQuantity, TIndex> | TransactionRequestEIP2930<TQuantity, TIndex> | TransactionRequestEIP1559<TQuantity, TIndex>;
538
+
539
+ type Formatter<TSource = any, TTarget = any> = (value: TSource & {
540
+ [key: string]: unknown;
541
+ }) => TTarget;
542
+ type Formatters = {
543
+ block?: Formatter<RpcBlock, Block>;
544
+ transaction?: Formatter<RpcTransaction, Transaction>;
545
+ transactionReceipt?: Formatter<RpcTransactionReceipt, TransactionReceipt>;
546
+ transactionRequest?: Formatter<TransactionRequest, RpcTransactionRequest>;
547
+ };
548
+
549
+ type Chain<TFormatters extends Formatters = Formatters> = Chain$1 & {
550
+ formatters?: TFormatters;
551
+ };
552
+
553
+ export { MaybeExtractEventArgsFromAbi as $, AbiItem as A, ByteArray as B, Chain as C, TransactionEIP1559 as D, TransactionEIP2930 as E, FeeHistory as F, TransactionLegacy as G, Hex as H, ExtractFormatter as I, Formatted as J, FormattedTransaction as K, Log as L, TransactionFormatter as M, defineTransaction as N, formatTransaction as O, transactionType as P, Formatters as Q, RpcBlock as R, Formatter as S, TransactionReceipt as T, Uncle as U, TransactionType as V, MergeIntersectionProperties as W, ExtractConstructorArgsFromAbi as X, GetValue as Y, ExtractResultFromAbi as Z, MaybeAbiEventName as _, Hash as a, ExtractEventNameFromAbi as a0, ExtractEventArgsFromAbi as a1, Prettify as a2, Quantity as a3, EventDefinition as a4, ExtractNameFromAbi as a5, ExtractArgsFromAbi as a6, LogTopic as a7, ExtractEventArgsFromTopics as a8, ExtractFunctionNameFromAbi as a9, ExtractErrorNameFromAbi as aa, ExtractErrorArgsFromAbi as ab, defineFormatter as ac, format as ad, AccessList as b, Block as c, BlockIdentifier as d, BlockNumber as e, BlockTag as f, ContractConfig as g, FeeValues as h, FeeValuesEIP1559 as i, FeeValuesLegacy as j, RpcBlockIdentifier as k, RpcBlockNumber as l, RpcFeeHistory as m, RpcFeeValues as n, RpcLog as o, RpcTransaction as p, RpcTransactionReceipt as q, RpcTransactionRequest as r, RpcUncle as s, TransactionRequest as t, TransactionRequestBase as u, TransactionRequestEIP1559 as v, TransactionRequestEIP2930 as w, TransactionRequestLegacy as x, Transaction as y, TransactionBase as z };
@@ -1,4 +1,4 @@
1
- import { M as Formatters, C as Chain } from './chain-9a8c6614.js';
1
+ import { Q as Formatters, C as Chain } from './chain-819c7ff7.js';
2
2
 
3
3
  declare function defineChain<TFormatters extends Formatters = Formatters, TChain extends Chain<TFormatters> = Chain<TFormatters>>(chain: TChain): TChain;
4
4
 
package/dist/chains.d.ts CHANGED
@@ -1,7 +1,9 @@
1
- import { R as RpcBlock, d as Block, x as Transaction, H as Hex, o as RpcTransaction, p as RpcTransactionReceipt, T as TransactionReceipt, K as TransactionType, s as TransactionRequest, q as RpcTransactionRequest } from './chain-9a8c6614.js';
2
- export { C as Chain } from './chain-9a8c6614.js';
3
- export { d as defineChain } from './chain-83ece55b.js';
1
+ import { R as RpcBlock, c as Block, y as Transaction, H as Hex, p as RpcTransaction, q as RpcTransactionReceipt, T as TransactionReceipt, V as TransactionType, t as TransactionRequest, r as RpcTransactionRequest } from './chain-819c7ff7.js';
2
+ export { C as Chain } from './chain-819c7ff7.js';
3
+ export { d as defineChain } from './chain-a4f98ba3.js';
4
4
  import '@wagmi/chains';
5
+ import 'abitype';
6
+ import 'ethers@6/types/providers';
5
7
 
6
8
  declare const arbitrum: {
7
9
  readonly id: 42161;
@@ -372,10 +374,10 @@ declare const celo: {
372
374
  revealed: Hex;
373
375
  };
374
376
  } & {
377
+ nonce: never;
375
378
  difficulty: never;
376
379
  gasLimit: never;
377
380
  mixHash: never;
378
- nonce: never;
379
381
  uncles: never;
380
382
  };
381
383
  transaction: (data: Partial<RpcTransaction> & {
@@ -447,10 +449,10 @@ declare const celoAlfajores: {
447
449
  revealed: Hex;
448
450
  };
449
451
  } & {
452
+ nonce: never;
450
453
  difficulty: never;
451
454
  gasLimit: never;
452
455
  mixHash: never;
453
- nonce: never;
454
456
  uncles: never;
455
457
  };
456
458
  transaction: (data: Partial<RpcTransaction> & {