viem 0.0.1-alpha.25 → 0.0.1-alpha.27

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 (503) hide show
  1. package/dist/{call-ac509982.d.ts → call-3476b8ee.d.ts} +4 -5
  2. package/dist/{chain-f16512e8.d.ts → chain-42de87e5.d.ts} +1 -14
  3. package/dist/{chain-c4ccb458.d.ts → chain-b0cfb141.d.ts} +1 -1
  4. package/dist/chains.d.ts +3 -3
  5. package/dist/chains.js +46 -46
  6. package/dist/chains.mjs +1 -1
  7. package/dist/{chunk-NUXMGPMK.js → chunk-2DSFM32P.js} +15 -15
  8. package/dist/{chunk-NUXMGPMK.js.map → chunk-2DSFM32P.js.map} +1 -1
  9. package/dist/{chunk-KSAO4Y4Q.mjs → chunk-AKGXRZDN.mjs} +355 -337
  10. package/dist/chunk-AKGXRZDN.mjs.map +1 -0
  11. package/dist/{chunk-2Y3UZMSP.mjs → chunk-BJJH7RYH.mjs} +61 -16
  12. package/dist/chunk-BJJH7RYH.mjs.map +1 -0
  13. package/dist/{chunk-CD2XJOBJ.js → chunk-JY7JGKSA.js} +136 -91
  14. package/dist/chunk-JY7JGKSA.js.map +1 -0
  15. package/dist/{chunk-LEPQJNVO.mjs → chunk-LF6P33WQ.mjs} +6 -6
  16. package/dist/chunk-LF6P33WQ.mjs.map +1 -0
  17. package/dist/{chunk-THMRUG4D.js → chunk-W7KWIGWO.js} +314 -296
  18. package/dist/chunk-W7KWIGWO.js.map +1 -0
  19. package/dist/{contract-9e76e561.d.ts → contract-9dd2f98b.d.ts} +1 -1
  20. package/dist/contract.d.ts +21 -15
  21. package/dist/contract.js +6 -4
  22. package/dist/contract.mjs +5 -3
  23. package/dist/{createClient-68ee4bb4.d.ts → createClient-6689596e.d.ts} +10 -4
  24. package/dist/{createPublicClient-b732194e.d.ts → createPublicClient-fd558574.d.ts} +3 -3
  25. package/dist/{createTestClient-dedf321e.d.ts → createTestClient-bc1d9028.d.ts} +3 -3
  26. package/dist/{createWalletClient-75813d83.d.ts → createWalletClient-4df88244.d.ts} +3 -3
  27. package/dist/{decodeErrorResult-0b934d23.d.ts → decodeErrorResult-ac835649.d.ts} +2 -2
  28. package/dist/{eip1193-6f9ba163.d.ts → eip1193-617a05ae.d.ts} +2 -2
  29. package/dist/ens.d.ts +8 -8
  30. package/dist/ens.js +21 -21
  31. package/dist/ens.js.map +1 -1
  32. package/dist/ens.mjs +9 -9
  33. package/dist/ens.mjs.map +1 -1
  34. package/dist/{getAbiItem-c8e6e7d4.d.ts → getAbiItem-d2e8bd76.d.ts} +2 -2
  35. package/dist/index.d.ts +44 -21
  36. package/dist/index.js +54 -32
  37. package/dist/index.js.map +1 -1
  38. package/dist/index.mjs +43 -21
  39. package/dist/index.mjs.map +1 -1
  40. package/dist/public.d.ts +13 -12
  41. package/dist/public.js +3 -3
  42. package/dist/public.mjs +2 -2
  43. package/dist/{readContract-4f6e2692.d.ts → readContract-c460f23a.d.ts} +3 -3
  44. package/dist/{rpc-a5a7f376.d.ts → rpc-8c10fc98.d.ts} +3 -5
  45. package/dist/{sendTransaction-e713f90c.d.ts → sendTransaction-7ce442c0.d.ts} +3 -3
  46. package/dist/test.d.ts +4 -4
  47. package/dist/test.js +13 -13
  48. package/dist/test.mjs +1 -1
  49. package/dist/{transactionReceipt-2a86c7c7.d.ts → transactionReceipt-44dbf122.d.ts} +1 -1
  50. package/dist/{transactionRequest-c7794f5e.d.ts → transactionRequest-f437b4ba.d.ts} +1 -1
  51. package/dist/utils/index.d.ts +25 -22
  52. package/dist/utils/index.js +2 -2
  53. package/dist/utils/index.mjs +13 -13
  54. package/dist/wallet.d.ts +6 -6
  55. package/dist/wallet.js +3 -3
  56. package/dist/wallet.mjs +2 -2
  57. package/dist/{watchEvent-c346c12d.d.ts → watchEvent-569c9976.d.ts} +3 -3
  58. package/dist/window.d.ts +2 -2
  59. package/package.json +4 -5
  60. package/public/package.json +4 -0
  61. package/test/package.json +4 -0
  62. package/dist/chunk-2Y3UZMSP.mjs.map +0 -1
  63. package/dist/chunk-CD2XJOBJ.js.map +0 -1
  64. package/dist/chunk-KSAO4Y4Q.mjs.map +0 -1
  65. package/dist/chunk-LEPQJNVO.mjs.map +0 -1
  66. package/dist/chunk-THMRUG4D.js.map +0 -1
  67. package/src/_test/abis.ts +0 -1420
  68. package/src/_test/bench.ts +0 -15
  69. package/src/_test/constants.ts +0 -63
  70. package/src/_test/globalSetup.ts +0 -11
  71. package/src/_test/index.ts +0 -25
  72. package/src/_test/setup.ts +0 -8
  73. package/src/_test/utils.ts +0 -155
  74. package/src/actions/ens/getEnsAddress.bench.ts +0 -26
  75. package/src/actions/ens/getEnsAddress.test.ts +0 -97
  76. package/src/actions/ens/getEnsAddress.ts +0 -122
  77. package/src/actions/ens/getEnsName.bench.ts +0 -30
  78. package/src/actions/ens/getEnsName.test.ts +0 -101
  79. package/src/actions/ens/getEnsName.ts +0 -106
  80. package/src/actions/ens/index.test.ts +0 -12
  81. package/src/actions/ens/index.ts +0 -3
  82. package/src/actions/index.test.ts +0 -81
  83. package/src/actions/index.ts +0 -182
  84. package/src/actions/public/call.bench.ts +0 -48
  85. package/src/actions/public/call.test.ts +0 -99
  86. package/src/actions/public/call.ts +0 -97
  87. package/src/actions/public/createBlockFilter.bench.ts +0 -11
  88. package/src/actions/public/createBlockFilter.test.ts +0 -9
  89. package/src/actions/public/createBlockFilter.ts +0 -14
  90. package/src/actions/public/createContractEventFilter.test.ts +0 -119
  91. package/src/actions/public/createContractEventFilter.ts +0 -69
  92. package/src/actions/public/createEventFilter.test.ts +0 -277
  93. package/src/actions/public/createEventFilter.ts +0 -93
  94. package/src/actions/public/createPendingTransactionFilter.bench.ts +0 -11
  95. package/src/actions/public/createPendingTransactionFilter.test.ts +0 -9
  96. package/src/actions/public/createPendingTransactionFilter.ts +0 -14
  97. package/src/actions/public/estimateGas.bench.ts +0 -46
  98. package/src/actions/public/estimateGas.test.ts +0 -92
  99. package/src/actions/public/estimateGas.ts +0 -61
  100. package/src/actions/public/getBalance.test.ts +0 -83
  101. package/src/actions/public/getBalance.ts +0 -37
  102. package/src/actions/public/getBlock.bench.ts +0 -28
  103. package/src/actions/public/getBlock.test.ts +0 -575
  104. package/src/actions/public/getBlock.ts +0 -65
  105. package/src/actions/public/getBlockNumber.bench.ts +0 -28
  106. package/src/actions/public/getBlockNumber.test.ts +0 -27
  107. package/src/actions/public/getBlockNumber.ts +0 -32
  108. package/src/actions/public/getBlockTransactionCount.bench.ts +0 -15
  109. package/src/actions/public/getBlockTransactionCount.test.ts +0 -57
  110. package/src/actions/public/getBlockTransactionCount.ts +0 -52
  111. package/src/actions/public/getBytecode.test.ts +0 -27
  112. package/src/actions/public/getBytecode.ts +0 -32
  113. package/src/actions/public/getChainId.bench.ts +0 -15
  114. package/src/actions/public/getChainId.test.ts +0 -8
  115. package/src/actions/public/getChainId.ts +0 -7
  116. package/src/actions/public/getFeeHistory.bench.ts +0 -18
  117. package/src/actions/public/getFeeHistory.test.ts +0 -137
  118. package/src/actions/public/getFeeHistory.ts +0 -44
  119. package/src/actions/public/getFilterChanges.bench.ts +0 -13
  120. package/src/actions/public/getFilterChanges.test.ts +0 -383
  121. package/src/actions/public/getFilterChanges.ts +0 -23
  122. package/src/actions/public/getFilterLogs.test.ts +0 -297
  123. package/src/actions/public/getFilterLogs.ts +0 -20
  124. package/src/actions/public/getGasPrice.bench.ts +0 -19
  125. package/src/actions/public/getGasPrice.test.ts +0 -8
  126. package/src/actions/public/getGasPrice.ts +0 -15
  127. package/src/actions/public/getLogs.test.ts +0 -306
  128. package/src/actions/public/getLogs.ts +0 -84
  129. package/src/actions/public/getStorageAt.test.ts +0 -34
  130. package/src/actions/public/getStorageAt.ts +0 -32
  131. package/src/actions/public/getTransaction.bench.ts +0 -33
  132. package/src/actions/public/getTransaction.test.ts +0 -311
  133. package/src/actions/public/getTransaction.ts +0 -95
  134. package/src/actions/public/getTransactionConfirmations.test.ts +0 -69
  135. package/src/actions/public/getTransactionConfirmations.ts +0 -38
  136. package/src/actions/public/getTransactionCount.test.ts +0 -56
  137. package/src/actions/public/getTransactionCount.ts +0 -34
  138. package/src/actions/public/getTransactionReceipt.bench.ts +0 -33
  139. package/src/actions/public/getTransactionReceipt.test.ts +0 -179
  140. package/src/actions/public/getTransactionReceipt.ts +0 -34
  141. package/src/actions/public/index.test.ts +0 -43
  142. package/src/actions/public/index.ts +0 -146
  143. package/src/actions/public/multicall.test.ts +0 -452
  144. package/src/actions/public/multicall.ts +0 -108
  145. package/src/actions/public/readContract.test.ts +0 -328
  146. package/src/actions/public/readContract.ts +0 -73
  147. package/src/actions/public/simulateContract.bench.ts +0 -41
  148. package/src/actions/public/simulateContract.test.ts +0 -410
  149. package/src/actions/public/simulateContract.ts +0 -91
  150. package/src/actions/public/uninstallFilter.bench.ts +0 -13
  151. package/src/actions/public/uninstallFilter.test.ts +0 -65
  152. package/src/actions/public/uninstallFilter.ts +0 -17
  153. package/src/actions/public/waitForTransactionReceipt.test.ts +0 -322
  154. package/src/actions/public/waitForTransactionReceipt.ts +0 -170
  155. package/src/actions/public/watchBlockNumber.test.ts +0 -166
  156. package/src/actions/public/watchBlockNumber.ts +0 -79
  157. package/src/actions/public/watchBlocks.test.ts +0 -210
  158. package/src/actions/public/watchBlocks.ts +0 -114
  159. package/src/actions/public/watchContractEvent.test.ts +0 -305
  160. package/src/actions/public/watchContractEvent.ts +0 -108
  161. package/src/actions/public/watchEvent.test.ts +0 -195
  162. package/src/actions/public/watchEvent.ts +0 -95
  163. package/src/actions/public/watchPendingTransactions.test.ts +0 -116
  164. package/src/actions/public/watchPendingTransactions.ts +0 -74
  165. package/src/actions/test/dropTransaction.test.ts +0 -34
  166. package/src/actions/test/dropTransaction.ts +0 -17
  167. package/src/actions/test/getAutomine.test.ts +0 -14
  168. package/src/actions/test/getAutomine.ts +0 -11
  169. package/src/actions/test/getTxpoolContent.test.ts +0 -45
  170. package/src/actions/test/getTxpoolContent.ts +0 -7
  171. package/src/actions/test/getTxpoolStatus.test.ts +0 -41
  172. package/src/actions/test/getTxpoolStatus.ts +0 -12
  173. package/src/actions/test/impersonateAccount.test.ts +0 -26
  174. package/src/actions/test/impersonateAccount.ts +0 -17
  175. package/src/actions/test/increaseTime.test.ts +0 -18
  176. package/src/actions/test/increaseTime.ts +0 -17
  177. package/src/actions/test/index.test.ts +0 -38
  178. package/src/actions/test/index.ts +0 -77
  179. package/src/actions/test/inspectTxpool.test.ts +0 -50
  180. package/src/actions/test/inspectTxpool.ts +0 -7
  181. package/src/actions/test/mine.test.ts +0 -20
  182. package/src/actions/test/mine.ts +0 -16
  183. package/src/actions/test/removeBlockTimestampInterval.test.ts +0 -23
  184. package/src/actions/test/removeBlockTimestampInterval.ts +0 -7
  185. package/src/actions/test/reset.test.ts +0 -19
  186. package/src/actions/test/reset.ts +0 -18
  187. package/src/actions/test/revert.test.ts +0 -39
  188. package/src/actions/test/revert.ts +0 -14
  189. package/src/actions/test/sendUnsignedTransaction.test.ts +0 -52
  190. package/src/actions/test/sendUnsignedTransaction.ts +0 -19
  191. package/src/actions/test/setAutomine.test.ts +0 -14
  192. package/src/actions/test/setAutomine.ts +0 -8
  193. package/src/actions/test/setBalance.test.ts +0 -29
  194. package/src/actions/test/setBalance.ts +0 -20
  195. package/src/actions/test/setBlockGasLimit.test.ts +0 -21
  196. package/src/actions/test/setBlockGasLimit.ts +0 -17
  197. package/src/actions/test/setBlockTimestampInterval.test.ts +0 -23
  198. package/src/actions/test/setBlockTimestampInterval.ts +0 -16
  199. package/src/actions/test/setCode.test.ts +0 -26
  200. package/src/actions/test/setCode.ts +0 -19
  201. package/src/actions/test/setCoinbase.test.ts +0 -11
  202. package/src/actions/test/setCoinbase.ts +0 -17
  203. package/src/actions/test/setIntervalMining.test.ts +0 -30
  204. package/src/actions/test/setIntervalMining.ts +0 -16
  205. package/src/actions/test/setLoggingEnabled.test.ts +0 -10
  206. package/src/actions/test/setLoggingEnabled.ts +0 -8
  207. package/src/actions/test/setMinGasPrice.test.ts +0 -22
  208. package/src/actions/test/setMinGasPrice.ts +0 -17
  209. package/src/actions/test/setNextBlockBaseFeePerGas.test.ts +0 -23
  210. package/src/actions/test/setNextBlockBaseFeePerGas.ts +0 -17
  211. package/src/actions/test/setNextBlockTimestamp.test.ts +0 -19
  212. package/src/actions/test/setNextBlockTimestamp.ts +0 -17
  213. package/src/actions/test/setNonce.test.ts +0 -28
  214. package/src/actions/test/setNonce.ts +0 -20
  215. package/src/actions/test/setRpcUrl.test.ts +0 -9
  216. package/src/actions/test/setRpcUrl.ts +0 -8
  217. package/src/actions/test/setStorageAt.test.ts +0 -36
  218. package/src/actions/test/setStorageAt.ts +0 -26
  219. package/src/actions/test/snapshot.test.ts +0 -18
  220. package/src/actions/test/snapshot.ts +0 -7
  221. package/src/actions/test/stopImpersonatingAccount.test.ts +0 -29
  222. package/src/actions/test/stopImpersonatingAccount.ts +0 -17
  223. package/src/actions/wallet/addChain.test.ts +0 -14
  224. package/src/actions/wallet/addChain.ts +0 -21
  225. package/src/actions/wallet/deployContract.test.ts +0 -55
  226. package/src/actions/wallet/deployContract.ts +0 -38
  227. package/src/actions/wallet/getAccounts.test.ts +0 -22
  228. package/src/actions/wallet/getAccounts.ts +0 -7
  229. package/src/actions/wallet/getPermissions.test.ts +0 -24
  230. package/src/actions/wallet/getPermissions.ts +0 -9
  231. package/src/actions/wallet/index.test.ts +0 -21
  232. package/src/actions/wallet/index.ts +0 -36
  233. package/src/actions/wallet/requestAccounts.test.ts +0 -13
  234. package/src/actions/wallet/requestAccounts.ts +0 -7
  235. package/src/actions/wallet/requestPermissions.test.ts +0 -26
  236. package/src/actions/wallet/requestPermissions.ts +0 -19
  237. package/src/actions/wallet/sendTransaction.bench.ts +0 -57
  238. package/src/actions/wallet/sendTransaction.test.ts +0 -440
  239. package/src/actions/wallet/sendTransaction.ts +0 -77
  240. package/src/actions/wallet/signMessage.test.ts +0 -61
  241. package/src/actions/wallet/signMessage.ts +0 -35
  242. package/src/actions/wallet/switchChain.test.ts +0 -21
  243. package/src/actions/wallet/switchChain.ts +0 -19
  244. package/src/actions/wallet/watchAsset.test.ts +0 -40
  245. package/src/actions/wallet/watchAsset.ts +0 -16
  246. package/src/actions/wallet/writeContract.test.ts +0 -84
  247. package/src/actions/wallet/writeContract.ts +0 -47
  248. package/src/chains.test.ts +0 -439
  249. package/src/chains.ts +0 -99
  250. package/src/clients/createClient.test.ts +0 -295
  251. package/src/clients/createClient.ts +0 -81
  252. package/src/clients/createPublicClient.test.ts +0 -165
  253. package/src/clients/createPublicClient.ts +0 -49
  254. package/src/clients/createTestClient.test.ts +0 -145
  255. package/src/clients/createTestClient.ts +0 -72
  256. package/src/clients/createWalletClient.test.ts +0 -121
  257. package/src/clients/createWalletClient.ts +0 -54
  258. package/src/clients/index.test.ts +0 -19
  259. package/src/clients/index.ts +0 -31
  260. package/src/clients/transports/createTransport.test.ts +0 -58
  261. package/src/clients/transports/createTransport.ts +0 -48
  262. package/src/clients/transports/custom.test.ts +0 -98
  263. package/src/clients/transports/custom.ts +0 -34
  264. package/src/clients/transports/fallback.test.ts +0 -257
  265. package/src/clients/transports/fallback.ts +0 -50
  266. package/src/clients/transports/http.test.ts +0 -109
  267. package/src/clients/transports/http.ts +0 -51
  268. package/src/clients/transports/index.test.ts +0 -15
  269. package/src/clients/transports/index.ts +0 -17
  270. package/src/clients/transports/webSocket.test.ts +0 -164
  271. package/src/clients/transports/webSocket.ts +0 -118
  272. package/src/constants/abis.test.ts +0 -53
  273. package/src/constants/abis.ts +0 -44
  274. package/src/constants/index.test.ts +0 -14
  275. package/src/constants/index.ts +0 -3
  276. package/src/constants/solidity.test.ts +0 -41
  277. package/src/constants/solidity.ts +0 -35
  278. package/src/contract.test.ts +0 -31
  279. package/src/contract.ts +0 -68
  280. package/src/ens.test.ts +0 -15
  281. package/src/ens.ts +0 -8
  282. package/src/errors/abi.test.ts +0 -81
  283. package/src/errors/abi.ts +0 -254
  284. package/src/errors/address.test.ts +0 -14
  285. package/src/errors/address.ts +0 -9
  286. package/src/errors/base.test.ts +0 -114
  287. package/src/errors/base.ts +0 -57
  288. package/src/errors/block.test.ts +0 -24
  289. package/src/errors/block.ts +0 -18
  290. package/src/errors/chain.test.ts +0 -46
  291. package/src/errors/chain.ts +0 -33
  292. package/src/errors/contract.test.ts +0 -233
  293. package/src/errors/contract.ts +0 -178
  294. package/src/errors/data.ts +0 -20
  295. package/src/errors/encoding.ts +0 -60
  296. package/src/errors/index.ts +0 -82
  297. package/src/errors/log.ts +0 -8
  298. package/src/errors/request.test.ts +0 -330
  299. package/src/errors/request.ts +0 -163
  300. package/src/errors/rpc.test.ts +0 -87
  301. package/src/errors/rpc.ts +0 -113
  302. package/src/errors/transaction.test.ts +0 -83
  303. package/src/errors/transaction.ts +0 -54
  304. package/src/errors/transport.test.ts +0 -11
  305. package/src/errors/transport.ts +0 -12
  306. package/src/index.test.ts +0 -116
  307. package/src/index.ts +0 -132
  308. package/src/public.test.ts +0 -36
  309. package/src/public.ts +0 -76
  310. package/src/test.test.ts +0 -38
  311. package/src/test.ts +0 -52
  312. package/src/types/block.ts +0 -71
  313. package/src/types/chain.ts +0 -6
  314. package/src/types/contract.ts +0 -497
  315. package/src/types/eip1193.ts +0 -1041
  316. package/src/types/fee.ts +0 -47
  317. package/src/types/filter.ts +0 -8
  318. package/src/types/formatter.ts +0 -23
  319. package/src/types/index.ts +0 -84
  320. package/src/types/log.ts +0 -22
  321. package/src/types/misc.ts +0 -5
  322. package/src/types/multicall.ts +0 -82
  323. package/src/types/rpc.ts +0 -35
  324. package/src/types/transaction.ts +0 -145
  325. package/src/types/utils.ts +0 -88
  326. package/src/types/window.ts +0 -9
  327. package/src/utils/abi/decodeAbi.bench.ts +0 -135
  328. package/src/utils/abi/decodeAbi.test.ts +0 -1614
  329. package/src/utils/abi/decodeAbi.ts +0 -300
  330. package/src/utils/abi/decodeDeployData.test.ts +0 -151
  331. package/src/utils/abi/decodeDeployData.ts +0 -44
  332. package/src/utils/abi/decodeErrorResult.test.ts +0 -230
  333. package/src/utils/abi/decodeErrorResult.ts +0 -45
  334. package/src/utils/abi/decodeEventLog.test.ts +0 -542
  335. package/src/utils/abi/decodeEventLog.ts +0 -107
  336. package/src/utils/abi/decodeFunctionData.test.ts +0 -138
  337. package/src/utils/abi/decodeFunctionData.ts +0 -32
  338. package/src/utils/abi/decodeFunctionResult.test.ts +0 -333
  339. package/src/utils/abi/decodeFunctionResult.ts +0 -57
  340. package/src/utils/abi/encodeAbi.bench.ts +0 -163
  341. package/src/utils/abi/encodeAbi.test.ts +0 -1447
  342. package/src/utils/abi/encodeAbi.ts +0 -273
  343. package/src/utils/abi/encodeDeployData.test.ts +0 -124
  344. package/src/utils/abi/encodeDeployData.ts +0 -40
  345. package/src/utils/abi/encodeErrorResult.test.ts +0 -192
  346. package/src/utils/abi/encodeErrorResult.ts +0 -47
  347. package/src/utils/abi/encodeEventTopics.test.ts +0 -345
  348. package/src/utils/abi/encodeEventTopics.ts +0 -75
  349. package/src/utils/abi/encodeFunctionData.test.ts +0 -138
  350. package/src/utils/abi/encodeFunctionData.ts +0 -42
  351. package/src/utils/abi/encodeFunctionResult.test.ts +0 -279
  352. package/src/utils/abi/encodeFunctionResult.ts +0 -41
  353. package/src/utils/abi/formatAbiItem.test.ts +0 -335
  354. package/src/utils/abi/formatAbiItem.ts +0 -41
  355. package/src/utils/abi/formatAbiItemWithArgs.test.ts +0 -291
  356. package/src/utils/abi/formatAbiItemWithArgs.ts +0 -27
  357. package/src/utils/abi/getAbiItem.test.ts +0 -547
  358. package/src/utils/abi/getAbiItem.ts +0 -95
  359. package/src/utils/abi/index.test.ts +0 -24
  360. package/src/utils/abi/index.ts +0 -48
  361. package/src/utils/address/getAddress.bench.ts +0 -22
  362. package/src/utils/address/getAddress.test.ts +0 -46
  363. package/src/utils/address/getAddress.ts +0 -28
  364. package/src/utils/address/getContractAddress.bench.ts +0 -20
  365. package/src/utils/address/getContractAddress.test.ts +0 -78
  366. package/src/utils/address/getContractAddress.ts +0 -59
  367. package/src/utils/address/index.test.ts +0 -17
  368. package/src/utils/address/index.ts +0 -16
  369. package/src/utils/address/isAddress.test.ts +0 -10
  370. package/src/utils/address/isAddress.ts +0 -10
  371. package/src/utils/address/isAddressEqual.test.ts +0 -55
  372. package/src/utils/address/isAddressEqual.ts +0 -6
  373. package/src/utils/buildRequest.test.ts +0 -365
  374. package/src/utils/buildRequest.ts +0 -45
  375. package/src/utils/chain.test.ts +0 -43
  376. package/src/utils/chain.ts +0 -8
  377. package/src/utils/contract/extractFunctionParts.test.ts +0 -109
  378. package/src/utils/contract/extractFunctionParts.ts +0 -27
  379. package/src/utils/contract/getContractError.test.ts +0 -282
  380. package/src/utils/contract/getContractError.ts +0 -58
  381. package/src/utils/contract/index.test.ts +0 -15
  382. package/src/utils/contract/index.ts +0 -8
  383. package/src/utils/data/concat.test.ts +0 -35
  384. package/src/utils/data/concat.ts +0 -34
  385. package/src/utils/data/index.test.ts +0 -23
  386. package/src/utils/data/index.ts +0 -13
  387. package/src/utils/data/isBytes.test.ts +0 -9
  388. package/src/utils/data/isBytes.ts +0 -7
  389. package/src/utils/data/isHex.test.ts +0 -13
  390. package/src/utils/data/isHex.ts +0 -5
  391. package/src/utils/data/pad.bench.ts +0 -30
  392. package/src/utils/data/pad.test.ts +0 -367
  393. package/src/utils/data/pad.ts +0 -53
  394. package/src/utils/data/size.test.ts +0 -18
  395. package/src/utils/data/size.ts +0 -13
  396. package/src/utils/data/slice.test.ts +0 -203
  397. package/src/utils/data/slice.ts +0 -60
  398. package/src/utils/data/trim.bench.ts +0 -34
  399. package/src/utils/data/trim.test.ts +0 -175
  400. package/src/utils/data/trim.ts +0 -33
  401. package/src/utils/encoding/decodeBytes.bench.ts +0 -40
  402. package/src/utils/encoding/decodeBytes.test.ts +0 -144
  403. package/src/utils/encoding/decodeBytes.ts +0 -63
  404. package/src/utils/encoding/decodeHex.bench.ts +0 -24
  405. package/src/utils/encoding/decodeHex.test.ts +0 -167
  406. package/src/utils/encoding/decodeHex.ts +0 -76
  407. package/src/utils/encoding/decodeRlp.bench.ts +0 -34
  408. package/src/utils/encoding/decodeRlp.test.ts +0 -350
  409. package/src/utils/encoding/decodeRlp.ts +0 -121
  410. package/src/utils/encoding/encodeBytes.bench.ts +0 -29
  411. package/src/utils/encoding/encodeBytes.test.ts +0 -676
  412. package/src/utils/encoding/encodeBytes.ts +0 -59
  413. package/src/utils/encoding/encodeHex.bench.ts +0 -49
  414. package/src/utils/encoding/encodeHex.test.ts +0 -232
  415. package/src/utils/encoding/encodeHex.ts +0 -104
  416. package/src/utils/encoding/encodeRlp.bench.ts +0 -54
  417. package/src/utils/encoding/encodeRlp.test.ts +0 -254
  418. package/src/utils/encoding/encodeRlp.ts +0 -48
  419. package/src/utils/encoding/index.test.ts +0 -32
  420. package/src/utils/encoding/index.ts +0 -36
  421. package/src/utils/ens/index.test.ts +0 -14
  422. package/src/utils/ens/index.ts +0 -7
  423. package/src/utils/ens/labelhash.test.ts +0 -55
  424. package/src/utils/ens/labelhash.ts +0 -16
  425. package/src/utils/ens/namehash.test.ts +0 -65
  426. package/src/utils/ens/namehash.ts +0 -28
  427. package/src/utils/ens/normalize.bench.ts +0 -14
  428. package/src/utils/ens/normalize.test.ts +0 -35
  429. package/src/utils/ens/normalize.ts +0 -14
  430. package/src/utils/ens/packetToBytes.test.ts +0 -11
  431. package/src/utils/ens/packetToBytes.ts +0 -29
  432. package/src/utils/formatters/block.bench.ts +0 -51
  433. package/src/utils/formatters/block.test.ts +0 -115
  434. package/src/utils/formatters/block.ts +0 -37
  435. package/src/utils/formatters/extract.test.ts +0 -14
  436. package/src/utils/formatters/extract.ts +0 -18
  437. package/src/utils/formatters/feeHistory.test.ts +0 -66
  438. package/src/utils/formatters/feeHistory.ts +0 -12
  439. package/src/utils/formatters/format.test.ts +0 -93
  440. package/src/utils/formatters/format.ts +0 -90
  441. package/src/utils/formatters/index.test.ts +0 -27
  442. package/src/utils/formatters/index.ts +0 -34
  443. package/src/utils/formatters/log.test.ts +0 -79
  444. package/src/utils/formatters/log.ts +0 -12
  445. package/src/utils/formatters/transaction.test.ts +0 -271
  446. package/src/utils/formatters/transaction.ts +0 -63
  447. package/src/utils/formatters/transactionReceipt.bench.ts +0 -73
  448. package/src/utils/formatters/transactionReceipt.test.ts +0 -151
  449. package/src/utils/formatters/transactionReceipt.ts +0 -63
  450. package/src/utils/formatters/transactionRequest.bench.ts +0 -29
  451. package/src/utils/formatters/transactionRequest.test.ts +0 -237
  452. package/src/utils/formatters/transactionRequest.ts +0 -56
  453. package/src/utils/hash/getEventSignature.test.ts +0 -61
  454. package/src/utils/hash/getEventSignature.ts +0 -4
  455. package/src/utils/hash/getFunctionSignature.test.ts +0 -22
  456. package/src/utils/hash/getFunctionSignature.ts +0 -5
  457. package/src/utils/hash/hashFunction.test.ts +0 -65
  458. package/src/utils/hash/hashFunction.ts +0 -12
  459. package/src/utils/hash/index.test.ts +0 -13
  460. package/src/utils/hash/index.ts +0 -5
  461. package/src/utils/hash/keccak256.test.ts +0 -59
  462. package/src/utils/hash/keccak256.ts +0 -21
  463. package/src/utils/index.test.ts +0 -111
  464. package/src/utils/index.ts +0 -142
  465. package/src/utils/observe.test.ts +0 -176
  466. package/src/utils/observe.ts +0 -66
  467. package/src/utils/poll.test.ts +0 -127
  468. package/src/utils/poll.ts +0 -42
  469. package/src/utils/promise/index.test.ts +0 -14
  470. package/src/utils/promise/index.ts +0 -3
  471. package/src/utils/promise/withCache.test.ts +0 -97
  472. package/src/utils/promise/withCache.ts +0 -73
  473. package/src/utils/promise/withRetry.test.ts +0 -231
  474. package/src/utils/promise/withRetry.ts +0 -61
  475. package/src/utils/promise/withTimeout.test.ts +0 -37
  476. package/src/utils/promise/withTimeout.ts +0 -39
  477. package/src/utils/rpc.test.ts +0 -990
  478. package/src/utils/rpc.ts +0 -294
  479. package/src/utils/stringify.test.ts +0 -13
  480. package/src/utils/stringify.ts +0 -5
  481. package/src/utils/uid.ts +0 -14
  482. package/src/utils/unit/constants.test.ts +0 -22
  483. package/src/utils/unit/constants.ts +0 -12
  484. package/src/utils/unit/formatEther.test.ts +0 -75
  485. package/src/utils/unit/formatEther.ts +0 -6
  486. package/src/utils/unit/formatGwei.test.ts +0 -32
  487. package/src/utils/unit/formatGwei.ts +0 -6
  488. package/src/utils/unit/formatUnit.bench.ts +0 -21
  489. package/src/utils/unit/formatUnit.test.ts +0 -40
  490. package/src/utils/unit/formatUnit.ts +0 -16
  491. package/src/utils/unit/index.test.ts +0 -28
  492. package/src/utils/unit/index.ts +0 -7
  493. package/src/utils/unit/parseEther.test.ts +0 -126
  494. package/src/utils/unit/parseEther.ts +0 -6
  495. package/src/utils/unit/parseGwei.test.ts +0 -50
  496. package/src/utils/unit/parseGwei.ts +0 -6
  497. package/src/utils/unit/parseUnit.bench.ts +0 -21
  498. package/src/utils/unit/parseUnit.test.ts +0 -54
  499. package/src/utils/unit/parseUnit.ts +0 -27
  500. package/src/utils/wait.ts +0 -3
  501. package/src/wallet.test.ts +0 -19
  502. package/src/wallet.ts +0 -23
  503. package/src/window.ts +0 -1
package/src/types/fee.ts DELETED
@@ -1,47 +0,0 @@
1
- import type { Address, Hex } from './misc'
2
-
3
- export type EstimateGasParameters<TQuantity = bigint> = {
4
- /** Contract code or a hashed method call with encoded args */
5
- data?: Hex
6
- /** Gas provided for transaction execution */
7
- gas?: TQuantity
8
- /** Transaction sender */
9
- from?: Address
10
- /** Transaction recipient */
11
- to?: Address
12
- /** Value in wei sent with this transaction */
13
- value?: TQuantity
14
- } & Partial<FeeValues<TQuantity>>
15
-
16
- export type FeeHistory<TQuantity = bigint> = {
17
- /**
18
- * An array of block base fees per gas (in wei). This includes the next block after
19
- * the newest of the returned range, because this value can be derived from the newest block.
20
- * Zeroes are returned for pre-EIP-1559 blocks. */
21
- baseFeePerGas: TQuantity[]
22
- /** An array of block gas used ratios. These are calculated as the ratio of gasUsed and gasLimit. */
23
- gasUsedRatio: number[]
24
- /** Lowest number block of the returned range. */
25
- oldestBlock: TQuantity
26
- /** 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. */
27
- reward?: TQuantity[][]
28
- }
29
-
30
- export type FeeValuesLegacy<TQuantity = bigint> = {
31
- /** Base fee per gas. */
32
- gasPrice: TQuantity
33
- maxFeePerGas?: never
34
- maxPriorityFeePerGas?: never
35
- }
36
-
37
- export type FeeValuesEIP1559<TQuantity = bigint> = {
38
- gasPrice?: never
39
- /** Total fee per gas in wei (gasPrice/baseFeePerGas + maxPriorityFeePerGas). */
40
- maxFeePerGas: TQuantity
41
- /** Max priority fee per gas (in wei). */
42
- maxPriorityFeePerGas: TQuantity
43
- }
44
-
45
- export type FeeValues<TQuantity = bigint> =
46
- | FeeValuesLegacy<TQuantity>
47
- | FeeValuesEIP1559<TQuantity>
@@ -1,8 +0,0 @@
1
- import type { Hex } from './misc'
2
-
3
- export type FilterType = 'transaction' | 'block' | 'event'
4
-
5
- export type Filter<TFilterType extends FilterType = 'event'> = {
6
- id: Hex
7
- type: TFilterType
8
- }
@@ -1,23 +0,0 @@
1
- import { Block } from './block'
2
- import {
3
- RpcBlock,
4
- RpcTransaction,
5
- RpcTransactionReceipt,
6
- RpcTransactionRequest,
7
- } from './rpc'
8
- import {
9
- Transaction,
10
- TransactionReceipt,
11
- TransactionRequest,
12
- } from './transaction'
13
-
14
- export type Formatter<TSource = any, TTarget = any> = (
15
- value: TSource & { [key: string]: unknown },
16
- ) => TTarget
17
-
18
- export type Formatters = {
19
- block?: Formatter<RpcBlock, Block>
20
- transaction?: Formatter<RpcTransaction, Transaction>
21
- transactionReceipt?: Formatter<RpcTransactionReceipt, TransactionReceipt>
22
- transactionRequest?: Formatter<TransactionRequest, RpcTransactionRequest>
23
- }
@@ -1,84 +0,0 @@
1
- export type {
2
- Block,
3
- BlockIdentifier,
4
- BlockNumber,
5
- BlockTag,
6
- Uncle,
7
- } from './block'
8
-
9
- export type { Chain } from './chain'
10
-
11
- export type {
12
- AbiItem,
13
- AbiEventParametersToPrimitiveTypes,
14
- ContractConfig,
15
- EventDefinition,
16
- ExtractArgsFromAbi,
17
- ExtractArgsFromEventDefinition,
18
- ExtractConstructorArgsFromAbi,
19
- ExtractErrorArgsFromAbi,
20
- ExtractErrorNameFromAbi,
21
- ExtractEventArgsFromAbi,
22
- ExtractEventArgsFromTopics,
23
- ExtractEventNameFromAbi,
24
- ExtractFunctionNameFromAbi,
25
- ExtractNameFromAbi,
26
- ExtractResultFromAbi,
27
- GetValue,
28
- } from './contract'
29
-
30
- export type {
31
- EstimateGasParameters,
32
- FeeHistory,
33
- FeeValues,
34
- FeeValuesEIP1559,
35
- FeeValuesLegacy,
36
- } from './fee'
37
-
38
- export type { Filter, FilterType } from './filter'
39
-
40
- export type { Formatter, Formatters } from './formatter'
41
-
42
- export type { Log } from './log'
43
-
44
- export type { Address, ByteArray, Hex, Hash, LogTopic } from './misc'
45
-
46
- export type { MulticallContracts } from './multicall'
47
-
48
- export type {
49
- Index,
50
- Quantity,
51
- RpcBlock,
52
- RpcBlockIdentifier,
53
- RpcBlockNumber,
54
- RpcEstimateGasParameters,
55
- RpcFeeHistory,
56
- RpcFeeValues,
57
- RpcLog,
58
- RpcTransactionReceipt,
59
- RpcTransactionRequest,
60
- RpcTransaction,
61
- RpcUncle,
62
- } from './rpc'
63
-
64
- export type {
65
- AccessList,
66
- TransactionReceipt,
67
- TransactionRequest,
68
- TransactionRequestBase,
69
- TransactionRequestEIP1559,
70
- TransactionRequestEIP2930,
71
- TransactionRequestLegacy,
72
- Transaction,
73
- TransactionBase,
74
- TransactionEIP1559,
75
- TransactionEIP2930,
76
- TransactionLegacy,
77
- } from './transaction'
78
-
79
- export type {
80
- PartialBy,
81
- Prettify,
82
- MergeIntersectionProperties,
83
- OptionalNullable,
84
- } from './utils'
package/src/types/log.ts DELETED
@@ -1,22 +0,0 @@
1
- import type { Address, Hash, Hex } from './misc'
2
-
3
- export type Log<TQuantity = bigint, TIndex = number> = {
4
- /** The address from which this log originated */
5
- address: Address
6
- /** Hash of block containing this log or `null` if pending */
7
- blockHash: Hash | null
8
- /** Number of block containing this log or `null` if pending */
9
- blockNumber: TQuantity | null
10
- /** Contains the non-indexed arguments of the log */
11
- data: Hex
12
- /** Index of this log within its block or `null` if pending */
13
- logIndex: TIndex | null
14
- /** Hash of the transaction that created this log or `null` if pending */
15
- transactionHash: Hash | null
16
- /** Index of the transaction that created this log or `null` if pending */
17
- transactionIndex: TIndex | null
18
- /** List of order-dependent topics */
19
- topics: Hex[]
20
- /** `true` if this filter has been destroyed and is invalid */
21
- removed: boolean
22
- }
package/src/types/misc.ts DELETED
@@ -1,5 +0,0 @@
1
- export type Address = `0x${string}`
2
- export type ByteArray = Uint8Array
3
- export type Hex = `0x${string}`
4
- export type Hash = `0x${string}`
5
- export type LogTopic = Hex | Hex[] | null
@@ -1,82 +0,0 @@
1
- import { Abi } from 'abitype';
2
- import { ContractConfig, ExtractResultFromAbi } from './contract';
3
-
4
- type MAXIMUM_DEPTH = 20
5
-
6
- export type Contract<
7
- TAbi extends Abi | readonly unknown[] = Abi | readonly unknown[],
8
- TFunctionName extends string = string,
9
- > = { abi: TAbi; functionName: TFunctionName }
10
-
11
- export type MulticallContracts<
12
- TContracts extends Contract[],
13
- TProperties extends Record<string, any> = object,
14
- Result extends any[] = [],
15
- Depth extends ReadonlyArray<number> = [],
16
- > = Depth['length'] extends MAXIMUM_DEPTH
17
- ? (ContractConfig & TProperties)[]
18
- : TContracts extends []
19
- ? []
20
- : TContracts extends [infer Head extends Contract]
21
- ? [
22
- ...Result,
23
- ContractConfig<Head['abi'], Head['functionName']> &
24
- TProperties,
25
- ]
26
- : TContracts extends [
27
- infer Head extends Contract,
28
- ...infer Tail extends Contract[],
29
- ]
30
- ? MulticallContracts<
31
- [...Tail],
32
- TProperties,
33
- [
34
- ...Result,
35
- ContractConfig<Head['abi'], Head['functionName']> &
36
- TProperties,
37
- ],
38
- [...Depth, 1]
39
- >
40
- : unknown[] extends TContracts
41
- ? TContracts
42
- : // If `TContracts` is *some* array but we couldn't assign `unknown[]` to it, then it must hold some known/homogenous type!
43
- // use this to infer the param types in the case of Array.map() argument
44
- TContracts extends ContractConfig<infer TAbi, infer TFunctionName>[]
45
- ? (ContractConfig<TAbi, TFunctionName> & TProperties)[]
46
- : (ContractConfig & TProperties)[]
47
-
48
-
49
- export type MulticallResult<Result, TAllowFailure extends boolean = true> = TAllowFailure extends true ? ({
50
- error?: undefined
51
- result: Result
52
- status: 'success'
53
- } | {
54
- error: Error
55
- result?: undefined
56
- status: 'error'
57
- }) : Result
58
-
59
- export type MulticallResults<
60
- TContracts extends Contract[],
61
- TAllowFailure extends boolean = true,
62
- Result extends any[] = [],
63
- Depth extends ReadonlyArray<number> = [],
64
- > = Depth['length'] extends MAXIMUM_DEPTH
65
- ? MulticallResult<ExtractResultFromAbi, TAllowFailure>[]
66
- : TContracts extends []
67
- ? []
68
- : TContracts extends [infer Head extends Contract]
69
- ? [...Result, MulticallResult<ExtractResultFromAbi<Head['abi'], Head['functionName']>, TAllowFailure>]
70
- : TContracts extends [
71
- infer Head extends Contract,
72
- ...infer Tail extends Contract[],
73
- ]
74
- ? MulticallResults<
75
- [...Tail],
76
- TAllowFailure,
77
- [...Result, MulticallResult<ExtractResultFromAbi<Head['abi'], Head['functionName']>, TAllowFailure>],
78
- [...Depth, 1]
79
- >
80
- : TContracts extends ContractConfig<infer TAbi, infer TFunctionName>[]
81
- ? MulticallResult<ExtractResultFromAbi<TAbi, TFunctionName>, TAllowFailure>[]
82
- : MulticallResult<ExtractResultFromAbi, TAllowFailure>[]
package/src/types/rpc.ts DELETED
@@ -1,35 +0,0 @@
1
- import type { Block, BlockIdentifier, BlockNumber, Uncle } from './block'
2
- import type { EstimateGasParameters, FeeHistory, FeeValues } from './fee'
3
- import type { Log } from './log'
4
- import type {
5
- TransactionEIP1559,
6
- TransactionEIP2930,
7
- TransactionLegacy,
8
- TransactionReceipt,
9
- TransactionRequest,
10
- } from './transaction'
11
-
12
- export type Index = `0x${string}`
13
- export type Quantity = `0x${string}`
14
- export type Status = '0x0' | '0x1'
15
- export type TransactionType = '0x0' | '0x1' | '0x2'
16
-
17
- export type RpcBlock = Block<Quantity, RpcTransaction>
18
- export type RpcBlockNumber = BlockNumber<Quantity>
19
- export type RpcBlockIdentifier = BlockIdentifier<Quantity>
20
- export type RpcEstimateGasParameters = EstimateGasParameters<Quantity>
21
- export type RpcUncle = Uncle<Quantity>
22
- export type RpcFeeHistory = FeeHistory<Quantity>
23
- export type RpcFeeValues = FeeValues<Quantity>
24
- export type RpcLog = Log<Quantity, Index>
25
- export type RpcTransactionReceipt = TransactionReceipt<
26
- Quantity,
27
- Index,
28
- Status,
29
- TransactionType
30
- >
31
- export type RpcTransactionRequest = TransactionRequest<Quantity, Index>
32
- export type RpcTransaction =
33
- | TransactionLegacy<Quantity, Index, '0x0'>
34
- | TransactionEIP2930<Quantity, Index, '0x1'>
35
- | TransactionEIP1559<Quantity, Index, '0x2'>
@@ -1,145 +0,0 @@
1
- import { transactionType } from '../utils'
2
- import type { FeeValuesEIP1559, FeeValuesLegacy } from './fee'
3
- import type { Log } from './log'
4
- import type { Address, Hash, Hex } from './misc'
5
- import type { ValueOf } from './utils'
6
-
7
- export type AccessList = Array<{ address: Address; storageKeys: Array<Hex> }>
8
-
9
- export type TransactionType = ValueOf<typeof transactionType>
10
-
11
- export type TransactionReceipt<
12
- TQuantity = bigint,
13
- TIndex = number,
14
- TStatus = 'success' | 'reverted',
15
- TType = TransactionType,
16
- > = {
17
- /** Hash of block containing this transaction */
18
- blockHash: Hash
19
- /** Number of block containing this transaction */
20
- blockNumber: TQuantity
21
- /** Address of new contract or `null` if no contract was created */
22
- contractAddress: Address | null
23
- /** Gas used by this and all preceding transactions in this block */
24
- cumulativeGasUsed: TQuantity
25
- /** Pre-London, it is equal to the transaction's gasPrice. Post-London, it is equal to the actual gas price paid for inclusion. */
26
- effectiveGasPrice: TQuantity
27
- /** Transaction sender */
28
- from: Address
29
- /** Gas used by this transaction */
30
- gasUsed: TQuantity
31
- /** List of log objects generated by this transaction */
32
- logs: Log<TQuantity, TIndex>[]
33
- /** Logs bloom filter */
34
- logsBloom: Hex
35
- /** `1` if this transaction was successful or `0` if it failed */
36
- status: TStatus
37
- /** Transaction recipient or `null` if deploying a contract */
38
- to: Address | null
39
- /** Hash of this transaction */
40
- transactionHash: Hash
41
- /** Index of this transaction in the block */
42
- transactionIndex: TIndex
43
- /** Transaction type */
44
- type: TType
45
- }
46
-
47
- export type TransactionBase<TQuantity = bigint, TIndex = number> = {
48
- /** Hash of block containing this transaction or `null` if pending */
49
- blockHash: Hash | null
50
- /** Number of block containing this transaction or `null` if pending */
51
- blockNumber: TQuantity | null
52
- /** Transaction sender */
53
- from: Address
54
- /** Gas provided for transaction execution */
55
- gas: TQuantity
56
- /** Hash of this transaction */
57
- hash: Hash
58
- /** Contract code or a hashed method call */
59
- input: Hex
60
- /** Unique number identifying this transaction */
61
- nonce: TIndex
62
- /** ECDSA signature r */
63
- r: Hex
64
- /** ECDSA signature s */
65
- s: Hex
66
- /** Transaction recipient or `null` if deploying a contract */
67
- to: Address | null
68
- /** Index of this transaction in the block or `null` if pending */
69
- transactionIndex: TIndex | null
70
- /** ECDSA recovery ID */
71
- v: TQuantity
72
- /** Value in wei sent with this transaction */
73
- value: TQuantity
74
- }
75
- export type TransactionLegacy<
76
- TQuantity = bigint,
77
- TIndex = number,
78
- TType = 'legacy',
79
- > = TransactionBase<TQuantity, TIndex> &
80
- FeeValuesLegacy<TQuantity> & {
81
- accessList?: never
82
- type: TType
83
- }
84
- export type TransactionEIP2930<
85
- TQuantity = bigint,
86
- TIndex = number,
87
- TType = 'eip2930',
88
- > = TransactionBase<TQuantity, TIndex> &
89
- FeeValuesLegacy<TQuantity> & {
90
- accessList: AccessList
91
- type: TType
92
- }
93
- export type TransactionEIP1559<
94
- TQuantity = bigint,
95
- TIndex = number,
96
- TType = 'eip1559',
97
- > = TransactionBase<TQuantity, TIndex> &
98
- FeeValuesEIP1559<TQuantity> & {
99
- accessList: AccessList
100
- type: TType
101
- }
102
- export type Transaction<TQuantity = bigint, TIndex = number> =
103
- | TransactionLegacy<TQuantity, TIndex>
104
- | TransactionEIP2930<TQuantity, TIndex>
105
- | TransactionEIP1559<TQuantity, TIndex>
106
-
107
- export type TransactionRequestBase<TQuantity = bigint, TIndex = number> = {
108
- /** Contract code or a hashed method call with encoded args */
109
- data?: Hex
110
- /** Transaction sender */
111
- from: Address
112
- /** Gas provided for transaction execution */
113
- gas?: TQuantity
114
- /** Unique number identifying this transaction */
115
- nonce?: TIndex
116
- /** Transaction recipient */
117
- to?: Address
118
- /** Value in wei sent with this transaction */
119
- value?: TQuantity
120
- }
121
- export type TransactionRequestLegacy<
122
- TQuantity = bigint,
123
- TIndex = number,
124
- > = TransactionRequestBase<TQuantity, TIndex> &
125
- Partial<FeeValuesLegacy<TQuantity>> & {
126
- accessList?: never
127
- }
128
- export type TransactionRequestEIP2930<
129
- TQuantity = bigint,
130
- TIndex = number,
131
- > = TransactionRequestBase<TQuantity, TIndex> &
132
- Partial<FeeValuesLegacy<TQuantity>> & {
133
- accessList?: AccessList
134
- }
135
- export type TransactionRequestEIP1559<
136
- TQuantity = bigint,
137
- TIndex = number,
138
- > = TransactionRequestBase<TQuantity, TIndex> &
139
- Partial<FeeValuesEIP1559<TQuantity>> & {
140
- accessList?: AccessList
141
- }
142
- export type TransactionRequest<TQuantity = bigint, TIndex = number> =
143
- | TransactionRequestLegacy<TQuantity, TIndex>
144
- | TransactionRequestEIP2930<TQuantity, TIndex>
145
- | TransactionRequestEIP1559<TQuantity, TIndex>
@@ -1,88 +0,0 @@
1
- export type MaybePromise<T> = T | Promise<T>
2
-
3
- /**
4
- * @description Merges the intersection properties of T and U.
5
- *
6
- * @example
7
- * MergeIntersectionProperties<{ a: string, b: number }, { a: number, c: boolean }>
8
- * => { a: number, b: number }
9
- */
10
- export type MergeIntersectionProperties<T, U> = {
11
- [K in
12
- keyof T as K extends keyof U
13
- ? U[K] extends void
14
- ? never
15
- : K
16
- : K]: K extends keyof U ? U[K] : T[K]
17
- }
18
-
19
- /**
20
- * @description Makes nullable properties from T optional.
21
- *
22
- * @example
23
- * OptionalNullable<{ a: string | undefined, c: number }>
24
- * => { a?: string | undefined, c: number }
25
- */
26
- export type OptionalNullable<T> = {
27
- [K in keyof T as T[K] extends NonNullable<unknown> ? K : never]: T[K]
28
- } & {
29
- [K in keyof T as T[K] extends NonNullable<unknown> ? never : K]?: T[K]
30
- }
31
-
32
- /**
33
- * @description Constructs a type by excluding `undefined` from `T`.
34
- *
35
- * @example
36
- * NoUndefined<string | undefined>
37
- * => string
38
- */
39
- export type NoUndefined<T> = T extends undefined ? never : T
40
-
41
- /**
42
- * @description Creates a type that is a partial of T, but with the required keys K.
43
- *
44
- * @example
45
- * PartialBy<{ a: string, b: number }, 'a'>
46
- * => { a?: string, b: number }
47
- */
48
- export type PartialBy<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>
49
-
50
- /**
51
- * @description Combines members of an intersection into a readable type.
52
- *
53
- * @link https://twitter.com/mattpocockuk/status/1622730173446557697?s=20&t=NdpAcmEFXY01xkqU3KO0Mg
54
- * @example
55
- * Prettify<{ a: string } | { b: string } | { c: number, d: bigint }>
56
- * => { a: string, b: string, c: number, d: bigint }
57
- */
58
- export type Prettify<T> = {
59
- [K in keyof T]: T[K]
60
- } & {}
61
-
62
- type TrimLeft<T, Chars extends string = ' '> = T extends `${Chars}${infer R}`
63
- ? TrimLeft<R>
64
- : T
65
- type TrimRight<T, Chars extends string = ' '> = T extends `${infer R}${Chars}`
66
- ? TrimRight<R>
67
- : T
68
-
69
- /**
70
- * @description Trims empty space from type T.
71
- *
72
- * @example
73
- * Trim<' lol '>
74
- * => 'lol'
75
- */
76
- export type Trim<T, Chars extends string = ' '> = TrimLeft<
77
- TrimRight<T, Chars>,
78
- Chars
79
- >
80
-
81
- /**
82
- * @description Creates a type that extracts the values of T.
83
- *
84
- * @example
85
- * ValueOf<{ a: string, b: number }>
86
- * => string | number
87
- */
88
- export type ValueOf<T> = T[keyof T]
@@ -1,9 +0,0 @@
1
- import type { Events, Requests } from './eip1193'
2
-
3
- type WindowProvider = Requests & Events
4
-
5
- declare global {
6
- interface Window {
7
- ethereum?: WindowProvider
8
- }
9
- }
@@ -1,135 +0,0 @@
1
- import { AbiCoder } from 'ethers/lib/utils'
2
- import { bench, describe } from 'vitest'
3
-
4
- import { decodeAbi } from './decodeAbi'
5
-
6
- describe('ABI Decode (static struct)', () => {
7
- bench('viem: `decodeAbi`', () => {
8
- decodeAbi({
9
- data: '0x00000000000000000000000000000000000000000000000000000000000001a40000000000000000000000000000000000000000000000000000000000000001000000000000000000000000a5cc3c03994db5b0d9a5eedd10cabab0813678ac00000000000000000000000000000000000000000000000000000000000000450000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c961145a54c96e3ae9baa048c4f4d6b04c13916b00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000002',
10
- params: [
11
- {
12
- components: [
13
- {
14
- components: [
15
- {
16
- internalType: 'uint256',
17
- name: 'x',
18
- type: 'uint256',
19
- },
20
- {
21
- internalType: 'bool',
22
- name: 'y',
23
- type: 'bool',
24
- },
25
- {
26
- internalType: 'address',
27
- name: 'z',
28
- type: 'address',
29
- },
30
- ],
31
- internalType: 'struct ABIExample.Foo',
32
- name: 'foo',
33
- type: 'tuple',
34
- },
35
- {
36
- components: [
37
- {
38
- internalType: 'uint256',
39
- name: 'x',
40
- type: 'uint256',
41
- },
42
- {
43
- internalType: 'bool',
44
- name: 'y',
45
- type: 'bool',
46
- },
47
- {
48
- internalType: 'address',
49
- name: 'z',
50
- type: 'address',
51
- },
52
- ],
53
- internalType: 'struct ABIExample.Foo',
54
- name: 'baz',
55
- type: 'tuple',
56
- },
57
- {
58
- internalType: 'uint8[2]',
59
- name: 'x',
60
- type: 'uint8[2]',
61
- },
62
- ],
63
- internalType: 'struct ABIExample.Bar',
64
- name: 'barOut',
65
- type: 'tuple',
66
- },
67
- ],
68
- })
69
- })
70
-
71
- bench('ethers: `AbiCoder.decode`', () => {
72
- const coder = new AbiCoder()
73
- coder.decode(
74
- [
75
- {
76
- components: [
77
- {
78
- components: [
79
- {
80
- internalType: 'uint256',
81
- name: 'x',
82
- type: 'uint256',
83
- },
84
- {
85
- internalType: 'bool',
86
- name: 'y',
87
- type: 'bool',
88
- },
89
- {
90
- internalType: 'address',
91
- name: 'z',
92
- type: 'address',
93
- },
94
- ],
95
- internalType: 'struct ABIExample.Foo',
96
- name: 'foo',
97
- type: 'tuple',
98
- },
99
- {
100
- components: [
101
- {
102
- internalType: 'uint256',
103
- name: 'x',
104
- type: 'uint256',
105
- },
106
- {
107
- internalType: 'bool',
108
- name: 'y',
109
- type: 'bool',
110
- },
111
- {
112
- internalType: 'address',
113
- name: 'z',
114
- type: 'address',
115
- },
116
- ],
117
- internalType: 'struct ABIExample.Foo',
118
- name: 'baz',
119
- type: 'tuple',
120
- },
121
- {
122
- internalType: 'uint8[2]',
123
- name: 'x',
124
- type: 'uint8[2]',
125
- },
126
- ],
127
- internalType: 'struct ABIExample.Bar',
128
- name: 'barOut',
129
- type: 'tuple',
130
- },
131
- ],
132
- '0x00000000000000000000000000000000000000000000000000000000000001a40000000000000000000000000000000000000000000000000000000000000001000000000000000000000000a5cc3c03994db5b0d9a5eedd10cabab0813678ac00000000000000000000000000000000000000000000000000000000000000450000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c961145a54c96e3ae9baa048c4f4d6b04c13916b00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000002',
133
- )
134
- })
135
- })