viem 1.1.8 → 1.2.1

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/actions/package.json +5 -0
  2. package/dist/cjs/actions/ens/getEnsAddress.js.map +1 -1
  3. package/dist/cjs/actions/ens/getEnsAvatar.js.map +1 -1
  4. package/dist/cjs/actions/ens/getEnsName.js.map +1 -1
  5. package/dist/cjs/actions/ens/getEnsResolver.js.map +1 -1
  6. package/dist/cjs/actions/ens/getEnsText.js.map +1 -1
  7. package/dist/cjs/actions/index.js +155 -0
  8. package/dist/cjs/actions/index.js.map +1 -0
  9. package/dist/cjs/actions/public/call.js.map +1 -1
  10. package/dist/cjs/actions/public/createBlockFilter.js.map +1 -1
  11. package/dist/cjs/actions/public/createContractEventFilter.js.map +1 -1
  12. package/dist/cjs/actions/public/createEventFilter.js.map +1 -1
  13. package/dist/cjs/actions/public/createPendingTransactionFilter.js.map +1 -1
  14. package/dist/cjs/actions/public/estimateContractGas.js.map +1 -1
  15. package/dist/cjs/actions/public/estimateGas.js.map +1 -1
  16. package/dist/cjs/actions/public/getBalance.js.map +1 -1
  17. package/dist/cjs/actions/public/getBlock.js.map +1 -1
  18. package/dist/cjs/actions/public/getBlockNumber.js.map +1 -1
  19. package/dist/cjs/actions/public/getBlockTransactionCount.js.map +1 -1
  20. package/dist/cjs/actions/public/getBytecode.js.map +1 -1
  21. package/dist/cjs/actions/public/getChainId.js.map +1 -1
  22. package/dist/cjs/actions/public/getFeeHistory.js.map +1 -1
  23. package/dist/cjs/actions/public/getFilterChanges.js.map +1 -1
  24. package/dist/cjs/actions/public/getFilterLogs.js.map +1 -1
  25. package/dist/cjs/actions/public/getGasPrice.js.map +1 -1
  26. package/dist/cjs/actions/public/getLogs.js.map +1 -1
  27. package/dist/cjs/actions/public/getStorageAt.js.map +1 -1
  28. package/dist/cjs/actions/public/getTransaction.js.map +1 -1
  29. package/dist/cjs/actions/public/getTransactionConfirmations.js.map +1 -1
  30. package/dist/cjs/actions/public/getTransactionCount.js.map +1 -1
  31. package/dist/cjs/actions/public/getTransactionReceipt.js.map +1 -1
  32. package/dist/cjs/actions/public/multicall.js +1 -0
  33. package/dist/cjs/actions/public/multicall.js.map +1 -1
  34. package/dist/cjs/actions/public/readContract.js.map +1 -1
  35. package/dist/cjs/actions/public/simulateContract.js.map +1 -1
  36. package/dist/cjs/actions/public/uninstallFilter.js.map +1 -1
  37. package/dist/cjs/actions/public/verifyHash.js.map +1 -1
  38. package/dist/cjs/actions/public/verifyMessage.js.map +1 -1
  39. package/dist/cjs/actions/public/verifyTypedData.js +2 -2
  40. package/dist/cjs/actions/public/verifyTypedData.js.map +1 -1
  41. package/dist/cjs/actions/public/waitForTransactionReceipt.js.map +1 -1
  42. package/dist/cjs/actions/public/watchBlockNumber.js.map +1 -1
  43. package/dist/cjs/actions/public/watchBlocks.js.map +1 -1
  44. package/dist/cjs/actions/public/watchContractEvent.js.map +1 -1
  45. package/dist/cjs/actions/public/watchEvent.js.map +1 -1
  46. package/dist/cjs/actions/public/watchPendingTransactions.js.map +1 -1
  47. package/dist/cjs/actions/test/dropTransaction.js.map +1 -1
  48. package/dist/cjs/actions/test/getAutomine.js.map +1 -1
  49. package/dist/cjs/actions/test/getTxpoolContent.js.map +1 -1
  50. package/dist/cjs/actions/test/getTxpoolStatus.js.map +1 -1
  51. package/dist/cjs/actions/test/impersonateAccount.js.map +1 -1
  52. package/dist/cjs/actions/test/increaseTime.js.map +1 -1
  53. package/dist/cjs/actions/test/inspectTxpool.js.map +1 -1
  54. package/dist/cjs/actions/test/mine.js.map +1 -1
  55. package/dist/cjs/actions/test/removeBlockTimestampInterval.js.map +1 -1
  56. package/dist/cjs/actions/test/reset.js.map +1 -1
  57. package/dist/cjs/actions/test/revert.js.map +1 -1
  58. package/dist/cjs/actions/test/sendUnsignedTransaction.js.map +1 -1
  59. package/dist/cjs/actions/test/setAutomine.js.map +1 -1
  60. package/dist/cjs/actions/test/setBalance.js.map +1 -1
  61. package/dist/cjs/actions/test/setBlockGasLimit.js.map +1 -1
  62. package/dist/cjs/actions/test/setBlockTimestampInterval.js.map +1 -1
  63. package/dist/cjs/actions/test/setCode.js.map +1 -1
  64. package/dist/cjs/actions/test/setCoinbase.js.map +1 -1
  65. package/dist/cjs/actions/test/setIntervalMining.js.map +1 -1
  66. package/dist/cjs/actions/test/setLoggingEnabled.js.map +1 -1
  67. package/dist/cjs/actions/test/setMinGasPrice.js.map +1 -1
  68. package/dist/cjs/actions/test/setNextBlockBaseFeePerGas.js.map +1 -1
  69. package/dist/cjs/actions/test/setNextBlockTimestamp.js.map +1 -1
  70. package/dist/cjs/actions/test/setNonce.js.map +1 -1
  71. package/dist/cjs/actions/test/setRpcUrl.js.map +1 -1
  72. package/dist/cjs/actions/test/setStorageAt.js.map +1 -1
  73. package/dist/cjs/actions/test/snapshot.js.map +1 -1
  74. package/dist/cjs/actions/test/stopImpersonatingAccount.js.map +1 -1
  75. package/dist/cjs/actions/wallet/addChain.js.map +1 -1
  76. package/dist/cjs/actions/wallet/deployContract.js.map +1 -1
  77. package/dist/cjs/actions/wallet/getAddresses.js.map +1 -1
  78. package/dist/cjs/actions/wallet/getPermissions.js.map +1 -1
  79. package/dist/cjs/actions/wallet/requestAddresses.js.map +1 -1
  80. package/dist/cjs/actions/wallet/requestPermissions.js.map +1 -1
  81. package/dist/cjs/actions/wallet/sendTransaction.js.map +1 -1
  82. package/dist/cjs/actions/wallet/signMessage.js.map +1 -1
  83. package/dist/cjs/actions/wallet/signTypedData.js.map +1 -1
  84. package/dist/cjs/actions/wallet/switchChain.js.map +1 -1
  85. package/dist/cjs/actions/wallet/watchAsset.js.map +1 -1
  86. package/dist/cjs/actions/wallet/writeContract.js.map +1 -1
  87. package/dist/cjs/clients/createClient.js +18 -3
  88. package/dist/cjs/clients/createClient.js.map +1 -1
  89. package/dist/cjs/clients/createPublicClient.js +8 -14
  90. package/dist/cjs/clients/createPublicClient.js.map +1 -1
  91. package/dist/cjs/clients/createTestClient.js +12 -16
  92. package/dist/cjs/clients/createTestClient.js.map +1 -1
  93. package/dist/cjs/clients/createWalletClient.js +9 -16
  94. package/dist/cjs/clients/createWalletClient.js.map +1 -1
  95. package/dist/cjs/clients/decorators/public.js.map +1 -1
  96. package/dist/cjs/clients/decorators/test.js +35 -30
  97. package/dist/cjs/clients/decorators/test.js.map +1 -1
  98. package/dist/cjs/clients/decorators/wallet.js.map +1 -1
  99. package/dist/cjs/errors/version.js +1 -1
  100. package/dist/cjs/index.js +11 -5
  101. package/dist/cjs/index.js.map +1 -1
  102. package/dist/cjs/utils/ccip.js.map +1 -1
  103. package/dist/cjs/utils/ens/avatar/parseAvatarRecord.js.map +1 -1
  104. package/dist/cjs/utils/ens/avatar/utils.js.map +1 -1
  105. package/dist/cjs/utils/filters/createFilterRequestScope.js.map +1 -1
  106. package/dist/cjs/utils/transaction/prepareRequest.js.map +1 -1
  107. package/dist/esm/actions/ens/getEnsAddress.js.map +1 -1
  108. package/dist/esm/actions/ens/getEnsAvatar.js.map +1 -1
  109. package/dist/esm/actions/ens/getEnsName.js.map +1 -1
  110. package/dist/esm/actions/ens/getEnsResolver.js.map +1 -1
  111. package/dist/esm/actions/ens/getEnsText.js.map +1 -1
  112. package/dist/esm/actions/index.js +76 -0
  113. package/dist/esm/actions/index.js.map +1 -0
  114. package/dist/esm/actions/public/call.js.map +1 -1
  115. package/dist/esm/actions/public/createBlockFilter.js.map +1 -1
  116. package/dist/esm/actions/public/createContractEventFilter.js.map +1 -1
  117. package/dist/esm/actions/public/createEventFilter.js.map +1 -1
  118. package/dist/esm/actions/public/createPendingTransactionFilter.js.map +1 -1
  119. package/dist/esm/actions/public/estimateContractGas.js.map +1 -1
  120. package/dist/esm/actions/public/estimateGas.js.map +1 -1
  121. package/dist/esm/actions/public/getBalance.js.map +1 -1
  122. package/dist/esm/actions/public/getBlock.js.map +1 -1
  123. package/dist/esm/actions/public/getBlockNumber.js.map +1 -1
  124. package/dist/esm/actions/public/getBlockTransactionCount.js.map +1 -1
  125. package/dist/esm/actions/public/getBytecode.js.map +1 -1
  126. package/dist/esm/actions/public/getChainId.js.map +1 -1
  127. package/dist/esm/actions/public/getFeeHistory.js.map +1 -1
  128. package/dist/esm/actions/public/getFilterChanges.js.map +1 -1
  129. package/dist/esm/actions/public/getFilterLogs.js.map +1 -1
  130. package/dist/esm/actions/public/getGasPrice.js.map +1 -1
  131. package/dist/esm/actions/public/getLogs.js.map +1 -1
  132. package/dist/esm/actions/public/getStorageAt.js.map +1 -1
  133. package/dist/esm/actions/public/getTransaction.js.map +1 -1
  134. package/dist/esm/actions/public/getTransactionConfirmations.js.map +1 -1
  135. package/dist/esm/actions/public/getTransactionCount.js.map +1 -1
  136. package/dist/esm/actions/public/getTransactionReceipt.js.map +1 -1
  137. package/dist/esm/actions/public/multicall.js +1 -0
  138. package/dist/esm/actions/public/multicall.js.map +1 -1
  139. package/dist/esm/actions/public/readContract.js.map +1 -1
  140. package/dist/esm/actions/public/simulateContract.js.map +1 -1
  141. package/dist/esm/actions/public/uninstallFilter.js.map +1 -1
  142. package/dist/esm/actions/public/verifyHash.js.map +1 -1
  143. package/dist/esm/actions/public/verifyMessage.js.map +1 -1
  144. package/dist/esm/actions/public/verifyTypedData.js +1 -1
  145. package/dist/esm/actions/public/verifyTypedData.js.map +1 -1
  146. package/dist/esm/actions/public/waitForTransactionReceipt.js.map +1 -1
  147. package/dist/esm/actions/public/watchBlockNumber.js.map +1 -1
  148. package/dist/esm/actions/public/watchBlocks.js.map +1 -1
  149. package/dist/esm/actions/public/watchContractEvent.js.map +1 -1
  150. package/dist/esm/actions/public/watchEvent.js.map +1 -1
  151. package/dist/esm/actions/public/watchPendingTransactions.js.map +1 -1
  152. package/dist/esm/actions/test/dropTransaction.js.map +1 -1
  153. package/dist/esm/actions/test/getAutomine.js.map +1 -1
  154. package/dist/esm/actions/test/getTxpoolContent.js.map +1 -1
  155. package/dist/esm/actions/test/getTxpoolStatus.js.map +1 -1
  156. package/dist/esm/actions/test/impersonateAccount.js.map +1 -1
  157. package/dist/esm/actions/test/increaseTime.js.map +1 -1
  158. package/dist/esm/actions/test/inspectTxpool.js.map +1 -1
  159. package/dist/esm/actions/test/mine.js.map +1 -1
  160. package/dist/esm/actions/test/removeBlockTimestampInterval.js.map +1 -1
  161. package/dist/esm/actions/test/reset.js.map +1 -1
  162. package/dist/esm/actions/test/revert.js.map +1 -1
  163. package/dist/esm/actions/test/sendUnsignedTransaction.js.map +1 -1
  164. package/dist/esm/actions/test/setAutomine.js.map +1 -1
  165. package/dist/esm/actions/test/setBalance.js.map +1 -1
  166. package/dist/esm/actions/test/setBlockGasLimit.js.map +1 -1
  167. package/dist/esm/actions/test/setBlockTimestampInterval.js.map +1 -1
  168. package/dist/esm/actions/test/setCode.js.map +1 -1
  169. package/dist/esm/actions/test/setCoinbase.js.map +1 -1
  170. package/dist/esm/actions/test/setIntervalMining.js.map +1 -1
  171. package/dist/esm/actions/test/setLoggingEnabled.js.map +1 -1
  172. package/dist/esm/actions/test/setMinGasPrice.js.map +1 -1
  173. package/dist/esm/actions/test/setNextBlockBaseFeePerGas.js.map +1 -1
  174. package/dist/esm/actions/test/setNextBlockTimestamp.js.map +1 -1
  175. package/dist/esm/actions/test/setNonce.js.map +1 -1
  176. package/dist/esm/actions/test/setRpcUrl.js.map +1 -1
  177. package/dist/esm/actions/test/setStorageAt.js.map +1 -1
  178. package/dist/esm/actions/test/snapshot.js.map +1 -1
  179. package/dist/esm/actions/test/stopImpersonatingAccount.js.map +1 -1
  180. package/dist/esm/actions/wallet/addChain.js.map +1 -1
  181. package/dist/esm/actions/wallet/deployContract.js.map +1 -1
  182. package/dist/esm/actions/wallet/getAddresses.js.map +1 -1
  183. package/dist/esm/actions/wallet/getPermissions.js.map +1 -1
  184. package/dist/esm/actions/wallet/requestAddresses.js.map +1 -1
  185. package/dist/esm/actions/wallet/requestPermissions.js.map +1 -1
  186. package/dist/esm/actions/wallet/sendTransaction.js.map +1 -1
  187. package/dist/esm/actions/wallet/signMessage.js.map +1 -1
  188. package/dist/esm/actions/wallet/signTypedData.js.map +1 -1
  189. package/dist/esm/actions/wallet/switchChain.js.map +1 -1
  190. package/dist/esm/actions/wallet/watchAsset.js.map +1 -1
  191. package/dist/esm/actions/wallet/writeContract.js.map +1 -1
  192. package/dist/esm/clients/createClient.js +18 -3
  193. package/dist/esm/clients/createClient.js.map +1 -1
  194. package/dist/esm/clients/createPublicClient.js +8 -14
  195. package/dist/esm/clients/createPublicClient.js.map +1 -1
  196. package/dist/esm/clients/createTestClient.js +12 -16
  197. package/dist/esm/clients/createTestClient.js.map +1 -1
  198. package/dist/esm/clients/createWalletClient.js +9 -16
  199. package/dist/esm/clients/createWalletClient.js.map +1 -1
  200. package/dist/esm/clients/decorators/public.js.map +1 -1
  201. package/dist/esm/clients/decorators/test.js +35 -30
  202. package/dist/esm/clients/decorators/test.js.map +1 -1
  203. package/dist/esm/clients/decorators/wallet.js.map +1 -1
  204. package/dist/esm/errors/version.js +1 -1
  205. package/dist/esm/index.js +5 -0
  206. package/dist/esm/index.js.map +1 -1
  207. package/dist/esm/utils/ccip.js.map +1 -1
  208. package/dist/esm/utils/ens/avatar/parseAvatarRecord.js.map +1 -1
  209. package/dist/esm/utils/ens/avatar/utils.js.map +1 -1
  210. package/dist/esm/utils/filters/createFilterRequestScope.js.map +1 -1
  211. package/dist/esm/utils/transaction/prepareRequest.js.map +1 -1
  212. package/dist/types/actions/ens/getEnsAddress.d.ts +2 -2
  213. package/dist/types/actions/ens/getEnsAddress.d.ts.map +1 -1
  214. package/dist/types/actions/ens/getEnsAvatar.d.ts +2 -2
  215. package/dist/types/actions/ens/getEnsAvatar.d.ts.map +1 -1
  216. package/dist/types/actions/ens/getEnsName.d.ts +2 -2
  217. package/dist/types/actions/ens/getEnsName.d.ts.map +1 -1
  218. package/dist/types/actions/ens/getEnsResolver.d.ts +2 -2
  219. package/dist/types/actions/ens/getEnsResolver.d.ts.map +1 -1
  220. package/dist/types/actions/ens/getEnsText.d.ts +2 -2
  221. package/dist/types/actions/ens/getEnsText.d.ts.map +1 -1
  222. package/dist/types/actions/index.d.ts +76 -0
  223. package/dist/types/actions/index.d.ts.map +1 -0
  224. package/dist/types/actions/public/call.d.ts +2 -2
  225. package/dist/types/actions/public/call.d.ts.map +1 -1
  226. package/dist/types/actions/public/createBlockFilter.d.ts +2 -2
  227. package/dist/types/actions/public/createBlockFilter.d.ts.map +1 -1
  228. package/dist/types/actions/public/createContractEventFilter.d.ts +2 -2
  229. package/dist/types/actions/public/createContractEventFilter.d.ts.map +1 -1
  230. package/dist/types/actions/public/createEventFilter.d.ts +2 -2
  231. package/dist/types/actions/public/createEventFilter.d.ts.map +1 -1
  232. package/dist/types/actions/public/createPendingTransactionFilter.d.ts +2 -2
  233. package/dist/types/actions/public/createPendingTransactionFilter.d.ts.map +1 -1
  234. package/dist/types/actions/public/estimateContractGas.d.ts +2 -3
  235. package/dist/types/actions/public/estimateContractGas.d.ts.map +1 -1
  236. package/dist/types/actions/public/estimateGas.d.ts +2 -3
  237. package/dist/types/actions/public/estimateGas.d.ts.map +1 -1
  238. package/dist/types/actions/public/getBalance.d.ts +2 -2
  239. package/dist/types/actions/public/getBalance.d.ts.map +1 -1
  240. package/dist/types/actions/public/getBlock.d.ts +2 -3
  241. package/dist/types/actions/public/getBlock.d.ts.map +1 -1
  242. package/dist/types/actions/public/getBlockNumber.d.ts +4 -4
  243. package/dist/types/actions/public/getBlockNumber.d.ts.map +1 -1
  244. package/dist/types/actions/public/getBlockTransactionCount.d.ts +2 -2
  245. package/dist/types/actions/public/getBlockTransactionCount.d.ts.map +1 -1
  246. package/dist/types/actions/public/getBytecode.d.ts +2 -2
  247. package/dist/types/actions/public/getBytecode.d.ts.map +1 -1
  248. package/dist/types/actions/public/getChainId.d.ts +2 -3
  249. package/dist/types/actions/public/getChainId.d.ts.map +1 -1
  250. package/dist/types/actions/public/getFeeHistory.d.ts +2 -2
  251. package/dist/types/actions/public/getFeeHistory.d.ts.map +1 -1
  252. package/dist/types/actions/public/getFilterChanges.d.ts +2 -2
  253. package/dist/types/actions/public/getFilterChanges.d.ts.map +1 -1
  254. package/dist/types/actions/public/getFilterLogs.d.ts +2 -2
  255. package/dist/types/actions/public/getFilterLogs.d.ts.map +1 -1
  256. package/dist/types/actions/public/getGasPrice.d.ts +2 -3
  257. package/dist/types/actions/public/getGasPrice.d.ts.map +1 -1
  258. package/dist/types/actions/public/getLogs.d.ts +2 -2
  259. package/dist/types/actions/public/getLogs.d.ts.map +1 -1
  260. package/dist/types/actions/public/getStorageAt.d.ts +2 -2
  261. package/dist/types/actions/public/getStorageAt.d.ts.map +1 -1
  262. package/dist/types/actions/public/getTransaction.d.ts +2 -2
  263. package/dist/types/actions/public/getTransaction.d.ts.map +1 -1
  264. package/dist/types/actions/public/getTransactionConfirmations.d.ts +2 -2
  265. package/dist/types/actions/public/getTransactionConfirmations.d.ts.map +1 -1
  266. package/dist/types/actions/public/getTransactionCount.d.ts +2 -3
  267. package/dist/types/actions/public/getTransactionCount.d.ts.map +1 -1
  268. package/dist/types/actions/public/getTransactionReceipt.d.ts +2 -2
  269. package/dist/types/actions/public/getTransactionReceipt.d.ts.map +1 -1
  270. package/dist/types/actions/public/multicall.d.ts +2 -2
  271. package/dist/types/actions/public/multicall.d.ts.map +1 -1
  272. package/dist/types/actions/public/readContract.d.ts +2 -2
  273. package/dist/types/actions/public/readContract.d.ts.map +1 -1
  274. package/dist/types/actions/public/simulateContract.d.ts +2 -2
  275. package/dist/types/actions/public/simulateContract.d.ts.map +1 -1
  276. package/dist/types/actions/public/uninstallFilter.d.ts +2 -2
  277. package/dist/types/actions/public/uninstallFilter.d.ts.map +1 -1
  278. package/dist/types/actions/public/verifyHash.d.ts +2 -2
  279. package/dist/types/actions/public/verifyHash.d.ts.map +1 -1
  280. package/dist/types/actions/public/verifyMessage.d.ts +2 -2
  281. package/dist/types/actions/public/verifyMessage.d.ts.map +1 -1
  282. package/dist/types/actions/public/verifyTypedData.d.ts +2 -2
  283. package/dist/types/actions/public/verifyTypedData.d.ts.map +1 -1
  284. package/dist/types/actions/public/waitForTransactionReceipt.d.ts +2 -2
  285. package/dist/types/actions/public/waitForTransactionReceipt.d.ts.map +1 -1
  286. package/dist/types/actions/public/watchBlockNumber.d.ts +2 -2
  287. package/dist/types/actions/public/watchBlockNumber.d.ts.map +1 -1
  288. package/dist/types/actions/public/watchBlocks.d.ts +2 -2
  289. package/dist/types/actions/public/watchBlocks.d.ts.map +1 -1
  290. package/dist/types/actions/public/watchContractEvent.d.ts +2 -2
  291. package/dist/types/actions/public/watchContractEvent.d.ts.map +1 -1
  292. package/dist/types/actions/public/watchEvent.d.ts +2 -2
  293. package/dist/types/actions/public/watchEvent.d.ts.map +1 -1
  294. package/dist/types/actions/public/watchPendingTransactions.d.ts +2 -2
  295. package/dist/types/actions/public/watchPendingTransactions.d.ts.map +1 -1
  296. package/dist/types/actions/test/dropTransaction.d.ts +2 -1
  297. package/dist/types/actions/test/dropTransaction.d.ts.map +1 -1
  298. package/dist/types/actions/test/getAutomine.d.ts +2 -1
  299. package/dist/types/actions/test/getAutomine.d.ts.map +1 -1
  300. package/dist/types/actions/test/getTxpoolContent.d.ts +2 -1
  301. package/dist/types/actions/test/getTxpoolContent.d.ts.map +1 -1
  302. package/dist/types/actions/test/getTxpoolStatus.d.ts +2 -1
  303. package/dist/types/actions/test/getTxpoolStatus.d.ts.map +1 -1
  304. package/dist/types/actions/test/impersonateAccount.d.ts +2 -1
  305. package/dist/types/actions/test/impersonateAccount.d.ts.map +1 -1
  306. package/dist/types/actions/test/increaseTime.d.ts +2 -1
  307. package/dist/types/actions/test/increaseTime.d.ts.map +1 -1
  308. package/dist/types/actions/test/inspectTxpool.d.ts +2 -1
  309. package/dist/types/actions/test/inspectTxpool.d.ts.map +1 -1
  310. package/dist/types/actions/test/mine.d.ts +2 -1
  311. package/dist/types/actions/test/mine.d.ts.map +1 -1
  312. package/dist/types/actions/test/removeBlockTimestampInterval.d.ts +2 -1
  313. package/dist/types/actions/test/removeBlockTimestampInterval.d.ts.map +1 -1
  314. package/dist/types/actions/test/reset.d.ts +2 -1
  315. package/dist/types/actions/test/reset.d.ts.map +1 -1
  316. package/dist/types/actions/test/revert.d.ts +2 -1
  317. package/dist/types/actions/test/revert.d.ts.map +1 -1
  318. package/dist/types/actions/test/sendUnsignedTransaction.d.ts +2 -1
  319. package/dist/types/actions/test/sendUnsignedTransaction.d.ts.map +1 -1
  320. package/dist/types/actions/test/setAutomine.d.ts +2 -1
  321. package/dist/types/actions/test/setAutomine.d.ts.map +1 -1
  322. package/dist/types/actions/test/setBalance.d.ts +2 -1
  323. package/dist/types/actions/test/setBalance.d.ts.map +1 -1
  324. package/dist/types/actions/test/setBlockGasLimit.d.ts +2 -1
  325. package/dist/types/actions/test/setBlockGasLimit.d.ts.map +1 -1
  326. package/dist/types/actions/test/setBlockTimestampInterval.d.ts +2 -1
  327. package/dist/types/actions/test/setBlockTimestampInterval.d.ts.map +1 -1
  328. package/dist/types/actions/test/setCode.d.ts +2 -1
  329. package/dist/types/actions/test/setCode.d.ts.map +1 -1
  330. package/dist/types/actions/test/setCoinbase.d.ts +2 -1
  331. package/dist/types/actions/test/setCoinbase.d.ts.map +1 -1
  332. package/dist/types/actions/test/setIntervalMining.d.ts +2 -1
  333. package/dist/types/actions/test/setIntervalMining.d.ts.map +1 -1
  334. package/dist/types/actions/test/setLoggingEnabled.d.ts +2 -1
  335. package/dist/types/actions/test/setLoggingEnabled.d.ts.map +1 -1
  336. package/dist/types/actions/test/setMinGasPrice.d.ts +2 -1
  337. package/dist/types/actions/test/setMinGasPrice.d.ts.map +1 -1
  338. package/dist/types/actions/test/setNextBlockBaseFeePerGas.d.ts +2 -1
  339. package/dist/types/actions/test/setNextBlockBaseFeePerGas.d.ts.map +1 -1
  340. package/dist/types/actions/test/setNextBlockTimestamp.d.ts +2 -1
  341. package/dist/types/actions/test/setNextBlockTimestamp.d.ts.map +1 -1
  342. package/dist/types/actions/test/setNonce.d.ts +2 -1
  343. package/dist/types/actions/test/setNonce.d.ts.map +1 -1
  344. package/dist/types/actions/test/setRpcUrl.d.ts +2 -1
  345. package/dist/types/actions/test/setRpcUrl.d.ts.map +1 -1
  346. package/dist/types/actions/test/setStorageAt.d.ts +2 -1
  347. package/dist/types/actions/test/setStorageAt.d.ts.map +1 -1
  348. package/dist/types/actions/test/snapshot.d.ts +2 -1
  349. package/dist/types/actions/test/snapshot.d.ts.map +1 -1
  350. package/dist/types/actions/test/stopImpersonatingAccount.d.ts +2 -1
  351. package/dist/types/actions/test/stopImpersonatingAccount.d.ts.map +1 -1
  352. package/dist/types/actions/wallet/addChain.d.ts +2 -2
  353. package/dist/types/actions/wallet/addChain.d.ts.map +1 -1
  354. package/dist/types/actions/wallet/deployContract.d.ts +2 -2
  355. package/dist/types/actions/wallet/deployContract.d.ts.map +1 -1
  356. package/dist/types/actions/wallet/getAddresses.d.ts +2 -2
  357. package/dist/types/actions/wallet/getAddresses.d.ts.map +1 -1
  358. package/dist/types/actions/wallet/getPermissions.d.ts +2 -2
  359. package/dist/types/actions/wallet/getPermissions.d.ts.map +1 -1
  360. package/dist/types/actions/wallet/requestAddresses.d.ts +2 -2
  361. package/dist/types/actions/wallet/requestAddresses.d.ts.map +1 -1
  362. package/dist/types/actions/wallet/requestPermissions.d.ts +2 -2
  363. package/dist/types/actions/wallet/requestPermissions.d.ts.map +1 -1
  364. package/dist/types/actions/wallet/sendTransaction.d.ts +2 -2
  365. package/dist/types/actions/wallet/sendTransaction.d.ts.map +1 -1
  366. package/dist/types/actions/wallet/signMessage.d.ts +2 -2
  367. package/dist/types/actions/wallet/signMessage.d.ts.map +1 -1
  368. package/dist/types/actions/wallet/signTypedData.d.ts +2 -2
  369. package/dist/types/actions/wallet/signTypedData.d.ts.map +1 -1
  370. package/dist/types/actions/wallet/switchChain.d.ts +2 -2
  371. package/dist/types/actions/wallet/switchChain.d.ts.map +1 -1
  372. package/dist/types/actions/wallet/watchAsset.d.ts +2 -2
  373. package/dist/types/actions/wallet/watchAsset.d.ts.map +1 -1
  374. package/dist/types/actions/wallet/writeContract.d.ts +2 -2
  375. package/dist/types/actions/wallet/writeContract.d.ts.map +1 -1
  376. package/dist/types/clients/createClient.d.ts +35 -3
  377. package/dist/types/clients/createClient.d.ts.map +1 -1
  378. package/dist/types/clients/createPublicClient.d.ts +3 -15
  379. package/dist/types/clients/createPublicClient.d.ts.map +1 -1
  380. package/dist/types/clients/createTestClient.d.ts +6 -3
  381. package/dist/types/clients/createTestClient.d.ts.map +1 -1
  382. package/dist/types/clients/createWalletClient.d.ts +5 -10
  383. package/dist/types/clients/createWalletClient.d.ts.map +1 -1
  384. package/dist/types/clients/decorators/public.d.ts +524 -5
  385. package/dist/types/clients/decorators/public.d.ts.map +1 -1
  386. package/dist/types/clients/decorators/test.d.ts +6 -2
  387. package/dist/types/clients/decorators/test.d.ts.map +1 -1
  388. package/dist/types/clients/decorators/wallet.d.ts +520 -2
  389. package/dist/types/clients/decorators/wallet.d.ts.map +1 -1
  390. package/dist/types/errors/version.d.ts +1 -1
  391. package/dist/types/index.d.ts +6 -2
  392. package/dist/types/index.d.ts.map +1 -1
  393. package/dist/types/types/account.d.ts +2 -2
  394. package/dist/types/types/account.d.ts.map +1 -1
  395. package/dist/types/utils/ccip.d.ts +2 -2
  396. package/dist/types/utils/ccip.d.ts.map +1 -1
  397. package/dist/types/utils/ens/avatar/parseAvatarRecord.d.ts +2 -2
  398. package/dist/types/utils/ens/avatar/parseAvatarRecord.d.ts.map +1 -1
  399. package/dist/types/utils/ens/avatar/utils.d.ts +2 -2
  400. package/dist/types/utils/ens/avatar/utils.d.ts.map +1 -1
  401. package/dist/types/utils/filters/createFilterRequestScope.d.ts +4 -3
  402. package/dist/types/utils/filters/createFilterRequestScope.d.ts.map +1 -1
  403. package/dist/types/utils/formatters/transaction.d.ts +1 -1
  404. package/dist/types/utils/transaction/prepareRequest.d.ts +2 -3
  405. package/dist/types/utils/transaction/prepareRequest.d.ts.map +1 -1
  406. package/package.json +11 -2
  407. package/src/actions/ens/getEnsAddress.ts +2 -2
  408. package/src/actions/ens/getEnsAvatar.ts +2 -2
  409. package/src/actions/ens/getEnsName.ts +2 -2
  410. package/src/actions/ens/getEnsResolver.ts +2 -2
  411. package/src/actions/ens/getEnsText.ts +2 -2
  412. package/src/actions/index.ts +324 -0
  413. package/src/actions/public/call.ts +4 -4
  414. package/src/actions/public/createBlockFilter.ts +2 -2
  415. package/src/actions/public/createContractEventFilter.ts +2 -2
  416. package/src/actions/public/createEventFilter.ts +2 -2
  417. package/src/actions/public/createPendingTransactionFilter.ts +2 -2
  418. package/src/actions/public/estimateContractGas.ts +2 -6
  419. package/src/actions/public/estimateGas.ts +4 -7
  420. package/src/actions/public/getBalance.ts +2 -2
  421. package/src/actions/public/getBlock.ts +4 -7
  422. package/src/actions/public/getBlockNumber.ts +2 -2
  423. package/src/actions/public/getBlockTransactionCount.ts +2 -2
  424. package/src/actions/public/getBytecode.ts +2 -2
  425. package/src/actions/public/getChainId.ts +3 -8
  426. package/src/actions/public/getFeeHistory.ts +2 -2
  427. package/src/actions/public/getFilterChanges.ts +2 -2
  428. package/src/actions/public/getFilterLogs.ts +2 -2
  429. package/src/actions/public/getGasPrice.ts +3 -8
  430. package/src/actions/public/getLogs.ts +2 -2
  431. package/src/actions/public/getStorageAt.ts +2 -2
  432. package/src/actions/public/getTransaction.ts +2 -2
  433. package/src/actions/public/getTransactionConfirmations.ts +2 -2
  434. package/src/actions/public/getTransactionCount.ts +3 -6
  435. package/src/actions/public/getTransactionReceipt.ts +2 -2
  436. package/src/actions/public/multicall.ts +3 -2
  437. package/src/actions/public/readContract.ts +2 -2
  438. package/src/actions/public/simulateContract.ts +2 -2
  439. package/src/actions/public/uninstallFilter.ts +2 -2
  440. package/src/actions/public/verifyHash.ts +2 -2
  441. package/src/actions/public/verifyMessage.ts +2 -2
  442. package/src/actions/public/verifyTypedData.ts +3 -3
  443. package/src/actions/public/waitForTransactionReceipt.ts +2 -2
  444. package/src/actions/public/watchBlockNumber.ts +2 -2
  445. package/src/actions/public/watchBlocks.ts +2 -2
  446. package/src/actions/public/watchContractEvent.ts +2 -2
  447. package/src/actions/public/watchEvent.ts +2 -2
  448. package/src/actions/public/watchPendingTransactions.ts +2 -2
  449. package/src/actions/test/dropTransaction.ts +6 -2
  450. package/src/actions/test/getAutomine.ts +6 -2
  451. package/src/actions/test/getTxpoolContent.ts +6 -2
  452. package/src/actions/test/getTxpoolStatus.ts +6 -2
  453. package/src/actions/test/impersonateAccount.ts +6 -2
  454. package/src/actions/test/increaseTime.ts +6 -2
  455. package/src/actions/test/inspectTxpool.ts +6 -2
  456. package/src/actions/test/mine.ts +6 -2
  457. package/src/actions/test/removeBlockTimestampInterval.ts +3 -1
  458. package/src/actions/test/reset.ts +6 -2
  459. package/src/actions/test/revert.ts +6 -2
  460. package/src/actions/test/sendUnsignedTransaction.ts +3 -1
  461. package/src/actions/test/setAutomine.ts +6 -2
  462. package/src/actions/test/setBalance.ts +6 -2
  463. package/src/actions/test/setBlockGasLimit.ts +6 -2
  464. package/src/actions/test/setBlockTimestampInterval.ts +3 -1
  465. package/src/actions/test/setCode.ts +6 -2
  466. package/src/actions/test/setCoinbase.ts +6 -2
  467. package/src/actions/test/setIntervalMining.ts +6 -2
  468. package/src/actions/test/setLoggingEnabled.ts +6 -2
  469. package/src/actions/test/setMinGasPrice.ts +6 -2
  470. package/src/actions/test/setNextBlockBaseFeePerGas.ts +3 -1
  471. package/src/actions/test/setNextBlockTimestamp.ts +6 -2
  472. package/src/actions/test/setNonce.ts +6 -2
  473. package/src/actions/test/setRpcUrl.ts +6 -2
  474. package/src/actions/test/setStorageAt.ts +6 -2
  475. package/src/actions/test/snapshot.ts +5 -3
  476. package/src/actions/test/stopImpersonatingAccount.ts +3 -1
  477. package/src/actions/wallet/addChain.ts +2 -5
  478. package/src/actions/wallet/deployContract.ts +2 -2
  479. package/src/actions/wallet/getAddresses.ts +2 -2
  480. package/src/actions/wallet/getPermissions.ts +2 -2
  481. package/src/actions/wallet/requestAddresses.ts +2 -2
  482. package/src/actions/wallet/requestPermissions.ts +2 -2
  483. package/src/actions/wallet/sendTransaction.ts +2 -2
  484. package/src/actions/wallet/signMessage.ts +2 -2
  485. package/src/actions/wallet/signTypedData.ts +2 -2
  486. package/src/actions/wallet/switchChain.ts +2 -5
  487. package/src/actions/wallet/watchAsset.ts +2 -2
  488. package/src/actions/wallet/writeContract.ts +2 -2
  489. package/src/clients/createClient.ts +83 -6
  490. package/src/clients/createPublicClient.ts +18 -38
  491. package/src/clients/createTestClient.ts +34 -23
  492. package/src/clients/createWalletClient.ts +22 -41
  493. package/src/clients/decorators/public.ts +10 -12
  494. package/src/clients/decorators/test.ts +56 -36
  495. package/src/clients/decorators/wallet.ts +3 -9
  496. package/src/errors/version.ts +1 -1
  497. package/src/index.ts +20 -4
  498. package/src/types/account.ts +9 -5
  499. package/src/utils/ccip.ts +3 -3
  500. package/src/utils/ens/avatar/parseAvatarRecord.ts +3 -3
  501. package/src/utils/ens/avatar/utils.ts +2 -2
  502. package/src/utils/filters/createFilterRequestScope.ts +4 -3
  503. package/src/utils/transaction/prepareRequest.ts +2 -5
@@ -1,4 +1,4 @@
1
- import type { PublicClient } from '../../clients/createPublicClient.js'
1
+ import type { Client } from '../../clients/createClient.js'
2
2
  import type { Transport } from '../../clients/transports/createTransport.js'
3
3
  import type { Chain } from '../../types/chain.js'
4
4
  import type { Filter } from '../../types/filter.js'
@@ -28,7 +28,7 @@ export type CreateBlockFilterReturnType = Filter<'block'>
28
28
  * // { id: "0x345a6572337856574a76364e457a4366", type: 'block' }
29
29
  */
30
30
  export async function createBlockFilter<TChain extends Chain | undefined>(
31
- client: PublicClient<Transport, TChain>,
31
+ client: Client<Transport, TChain>,
32
32
  ): Promise<CreateBlockFilterReturnType> {
33
33
  const getRequest = createFilterRequestScope(client, {
34
34
  method: 'eth_newBlockFilter',
@@ -1,6 +1,6 @@
1
1
  import type { Abi, Address, Narrow } from 'abitype'
2
2
 
3
- import type { PublicClient } from '../../clients/createPublicClient.js'
3
+ import type { Client } from '../../clients/createClient.js'
4
4
  import type { Transport } from '../../clients/transports/createTransport.js'
5
5
  import type { BlockNumber, BlockTag } from '../../types/block.js'
6
6
  import type { Chain } from '../../types/chain.js'
@@ -87,7 +87,7 @@ export async function createContractEventFilter<
87
87
  TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined,
88
88
  TStrict extends boolean | undefined = undefined,
89
89
  >(
90
- client: PublicClient<Transport, TChain>,
90
+ client: Client<Transport, TChain>,
91
91
  {
92
92
  address,
93
93
  abi,
@@ -1,6 +1,6 @@
1
1
  import type { Abi, AbiEvent, Address, Narrow } from 'abitype'
2
2
 
3
- import type { PublicClient } from '../../clients/createPublicClient.js'
3
+ import type { Client } from '../../clients/createClient.js'
4
4
  import type { Transport } from '../../clients/transports/createTransport.js'
5
5
  import type { BlockNumber, BlockTag } from '../../types/block.js'
6
6
  import type { Chain } from '../../types/chain.js'
@@ -109,7 +109,7 @@ export async function createEventFilter<
109
109
  | MaybeExtractEventArgsFromAbi<_Abi, _EventName>
110
110
  | undefined = undefined,
111
111
  >(
112
- client: PublicClient<Transport, TChain>,
112
+ client: Client<Transport, TChain>,
113
113
  {
114
114
  address,
115
115
  args,
@@ -1,4 +1,4 @@
1
- import type { PublicClient } from '../../clients/createPublicClient.js'
1
+ import type { Client } from '../../clients/createClient.js'
2
2
  import type { Transport } from '../../clients/transports/createTransport.js'
3
3
  import type { Chain } from '../../types/chain.js'
4
4
  import type { Filter } from '../../types/filter.js'
@@ -31,7 +31,7 @@ export async function createPendingTransactionFilter<
31
31
  TTransport extends Transport,
32
32
  TChain extends Chain | undefined,
33
33
  >(
34
- client: PublicClient<TTransport, TChain>,
34
+ client: Client<TTransport, TChain>,
35
35
  ): Promise<CreatePendingTransactionFilterReturnType> {
36
36
  const getRequest = createFilterRequestScope(client, {
37
37
  method: 'eth_newPendingTransactionFilter',
@@ -2,7 +2,7 @@ import type { Abi } from 'abitype'
2
2
 
3
3
  import type { Account } from '../../accounts/types.js'
4
4
  import { parseAccount } from '../../accounts/utils/parseAccount.js'
5
- import type { PublicClient } from '../../clients/createPublicClient.js'
5
+ import type { Client } from '../../clients/createClient.js'
6
6
  import type { Transport } from '../../clients/transports/createTransport.js'
7
7
  import type { BaseError } from '../../errors/base.js'
8
8
  import type { Chain } from '../../types/chain.js'
@@ -12,8 +12,6 @@ import {
12
12
  encodeFunctionData,
13
13
  } from '../../utils/abi/encodeFunctionData.js'
14
14
  import { getContractError } from '../../utils/errors/getContractError.js'
15
-
16
- import type { WalletClient } from '../../clients/createWalletClient.js'
17
15
  import { type EstimateGasParameters, estimateGas } from './estimateGas.js'
18
16
 
19
17
  export type EstimateContractGasParameters<
@@ -66,9 +64,7 @@ export async function estimateContractGas<
66
64
  TChain extends Chain | undefined,
67
65
  TAccount extends Account | undefined = undefined,
68
66
  >(
69
- client:
70
- | PublicClient<Transport, TChain>
71
- | WalletClient<Transport, TChain, TAccount>,
67
+ client: Client<Transport, TChain, TAccount>,
72
68
  {
73
69
  abi,
74
70
  address,
@@ -1,7 +1,6 @@
1
1
  import type { Account } from '../../accounts/types.js'
2
2
  import { parseAccount } from '../../accounts/utils/parseAccount.js'
3
- import type { PublicClient } from '../../clients/createPublicClient.js'
4
- import type { WalletClient } from '../../clients/createWalletClient.js'
3
+ import type { Client } from '../../clients/createClient.js'
5
4
  import type { Transport } from '../../clients/transports/createTransport.js'
6
5
  import { AccountNotFoundError } from '../../errors/account.js'
7
6
  import type { BaseError } from '../../errors/base.js'
@@ -75,12 +74,10 @@ export async function estimateGas<
75
74
  TChain extends Chain | undefined,
76
75
  TAccount extends Account | undefined = undefined,
77
76
  >(
78
- client:
79
- | PublicClient<Transport, TChain>
80
- | WalletClient<Transport, TChain, TAccount>,
77
+ client: Client<Transport, TChain, TAccount>,
81
78
  args: EstimateGasParameters<TChain, TAccount>,
82
79
  ): Promise<EstimateGasReturnType> {
83
- const account_ = args.account ?? (client as unknown as WalletClient).account
80
+ const account_ = args.account ?? client.account
84
81
  if (!account_)
85
82
  throw new AccountNotFoundError({
86
83
  docsPath: '/docs/actions/public/estimateGas',
@@ -126,7 +123,7 @@ export async function estimateGas<
126
123
  value,
127
124
  } as TransactionRequest)
128
125
 
129
- const balance = await (client as PublicClient).request({
126
+ const balance = await client.request({
130
127
  method: 'eth_estimateGas',
131
128
  params: block ? [request, block] : [request],
132
129
  })
@@ -1,6 +1,6 @@
1
1
  import type { Address } from 'abitype'
2
2
 
3
- import type { PublicClient } from '../../clients/createPublicClient.js'
3
+ import type { Client } from '../../clients/createClient.js'
4
4
  import type { Transport } from '../../clients/transports/createTransport.js'
5
5
  import type { BlockTag } from '../../types/block.js'
6
6
  import type { Chain } from '../../types/chain.js'
@@ -60,7 +60,7 @@ export type GetBalanceReturnType = bigint
60
60
  * // 10000000000000000000000n (wei)
61
61
  */
62
62
  export async function getBalance<TChain extends Chain | undefined>(
63
- client: PublicClient<Transport, TChain>,
63
+ client: Client<Transport, TChain>,
64
64
  { address, blockNumber, blockTag = 'latest' }: GetBalanceParameters,
65
65
  ): Promise<GetBalanceReturnType> {
66
66
  const blockNumberHex = blockNumber ? numberToHex(blockNumber) : undefined
@@ -1,6 +1,5 @@
1
1
  import type { Account } from '../../accounts/types.js'
2
- import type { PublicClient } from '../../clients/createPublicClient.js'
3
- import type { WalletClient } from '../../clients/createWalletClient.js'
2
+ import type { Client } from '../../clients/createClient.js'
4
3
  import type { Transport } from '../../clients/transports/createTransport.js'
5
4
  import { BlockNotFoundError } from '../../errors/block.js'
6
5
  import type { BlockTag } from '../../types/block.js'
@@ -72,9 +71,7 @@ export async function getBlock<
72
71
  TChain extends Chain | undefined,
73
72
  TAccount extends Account | undefined,
74
73
  >(
75
- client:
76
- | PublicClient<Transport, TChain>
77
- | WalletClient<Transport, TChain, TAccount>,
74
+ client: Client<Transport, TChain, TAccount>,
78
75
  {
79
76
  blockHash,
80
77
  blockNumber,
@@ -87,12 +84,12 @@ export async function getBlock<
87
84
 
88
85
  let block: RpcBlock | null = null
89
86
  if (blockHash) {
90
- block = await (client as PublicClient).request({
87
+ block = await client.request({
91
88
  method: 'eth_getBlockByHash',
92
89
  params: [blockHash, includeTransactions],
93
90
  })
94
91
  } else {
95
- block = await (client as PublicClient).request({
92
+ block = await client.request({
96
93
  method: 'eth_getBlockByNumber',
97
94
  params: [blockNumberHex || blockTag, includeTransactions],
98
95
  })
@@ -1,4 +1,4 @@
1
- import type { PublicClient } from '../../clients/createPublicClient.js'
1
+ import type { Client } from '../../clients/createClient.js'
2
2
  import type { Transport } from '../../clients/transports/createTransport.js'
3
3
  import type { Chain } from '../../types/chain.js'
4
4
  import { getCache, withCache } from '../../utils/promise/withCache.js'
@@ -40,7 +40,7 @@ export function getBlockNumberCache(id: string) {
40
40
  * // 69420n
41
41
  */
42
42
  export async function getBlockNumber<TChain extends Chain | undefined>(
43
- client: PublicClient<Transport, TChain>,
43
+ client: Client<Transport, TChain>,
44
44
  { maxAge = client.pollingInterval }: GetBlockNumberParameters = {},
45
45
  ): Promise<GetBlockNumberReturnType> {
46
46
  const blockNumberHex = await withCache(
@@ -1,4 +1,4 @@
1
- import type { PublicClient } from '../../clients/createPublicClient.js'
1
+ import type { Client } from '../../clients/createClient.js'
2
2
  import type { Transport } from '../../clients/transports/createTransport.js'
3
3
  import type { BlockTag } from '../../types/block.js'
4
4
  import type { Chain } from '../../types/chain.js'
@@ -55,7 +55,7 @@ export type GetBlockTransactionCountReturnType = number
55
55
  export async function getBlockTransactionCount<
56
56
  TChain extends Chain | undefined,
57
57
  >(
58
- client: PublicClient<Transport, TChain>,
58
+ client: Client<Transport, TChain>,
59
59
  {
60
60
  blockHash,
61
61
  blockNumber,
@@ -1,6 +1,6 @@
1
1
  import type { Address } from 'abitype'
2
2
 
3
- import type { PublicClient } from '../../clients/createPublicClient.js'
3
+ import type { Client } from '../../clients/createClient.js'
4
4
  import type { Transport } from '../../clients/transports/createTransport.js'
5
5
  import type { BlockTag } from '../../types/block.js'
6
6
  import type { Chain } from '../../types/chain.js'
@@ -46,7 +46,7 @@ export type GetBytecodeReturnType = Hex | undefined
46
46
  * })
47
47
  */
48
48
  export async function getBytecode<TChain extends Chain | undefined>(
49
- client: PublicClient<Transport, TChain>,
49
+ client: Client<Transport, TChain>,
50
50
  { address, blockNumber, blockTag = 'latest' }: GetBytecodeParameters,
51
51
  ): Promise<GetBytecodeReturnType> {
52
52
  const blockNumberHex =
@@ -1,6 +1,5 @@
1
1
  import type { Account } from '../../accounts/types.js'
2
- import type { PublicClient } from '../../clients/createPublicClient.js'
3
- import type { WalletClient } from '../../clients/createWalletClient.js'
2
+ import type { Client } from '../../clients/createClient.js'
4
3
  import type { Transport } from '../../clients/transports/createTransport.js'
5
4
  import type { Chain } from '../../types/chain.js'
6
5
  import { hexToNumber } from '../../utils/encoding/fromHex.js'
@@ -31,12 +30,8 @@ export type GetChainIdReturnType = number
31
30
  export async function getChainId<
32
31
  TChain extends Chain | undefined,
33
32
  TAccount extends Account | undefined,
34
- >(
35
- client:
36
- | PublicClient<Transport, TChain>
37
- | WalletClient<Transport, TChain, TAccount>,
38
- ): Promise<GetChainIdReturnType> {
39
- const chainIdHex = await (client as PublicClient).request({
33
+ >(client: Client<Transport, TChain, TAccount>): Promise<GetChainIdReturnType> {
34
+ const chainIdHex = await client.request({
40
35
  method: 'eth_chainId',
41
36
  })
42
37
  return hexToNumber(chainIdHex)
@@ -1,4 +1,4 @@
1
- import type { PublicClient } from '../../clients/createPublicClient.js'
1
+ import type { Client } from '../../clients/createClient.js'
2
2
  import type { Transport } from '../../clients/transports/createTransport.js'
3
3
  import type { BlockTag } from '../../types/block.js'
4
4
  import type { Chain } from '../../types/chain.js'
@@ -57,7 +57,7 @@ export type GetFeeHistoryReturnType = FeeHistory
57
57
  * })
58
58
  */
59
59
  export async function getFeeHistory<TChain extends Chain | undefined>(
60
- client: PublicClient<Transport, TChain>,
60
+ client: Client<Transport, TChain>,
61
61
  {
62
62
  blockCount,
63
63
  blockNumber,
@@ -1,6 +1,6 @@
1
1
  import type { Abi, AbiEvent, ExtractAbiEvent } from 'abitype'
2
2
 
3
- import type { PublicClient } from '../../clients/createPublicClient.js'
3
+ import type { Client } from '../../clients/createClient.js'
4
4
  import type { Transport } from '../../clients/transports/createTransport.js'
5
5
  import {
6
6
  DecodeLogDataMismatch,
@@ -126,7 +126,7 @@ export async function getFilterChanges<
126
126
  TEventName extends string | undefined,
127
127
  TStrict extends boolean | undefined = undefined,
128
128
  >(
129
- _client: PublicClient<TTransport, TChain>,
129
+ _client: Client<TTransport, TChain>,
130
130
  {
131
131
  filter,
132
132
  }: GetFilterChangesParameters<TFilterType, TAbi, TEventName, TStrict>,
@@ -1,6 +1,6 @@
1
1
  import type { Abi, AbiEvent, ExtractAbiEvent } from 'abitype'
2
2
 
3
- import type { PublicClient } from '../../clients/createPublicClient.js'
3
+ import type { Client } from '../../clients/createClient.js'
4
4
  import type { Transport } from '../../clients/transports/createTransport.js'
5
5
  import {
6
6
  DecodeLogDataMismatch,
@@ -63,7 +63,7 @@ export async function getFilterLogs<
63
63
  TEventName extends string | undefined,
64
64
  TStrict extends boolean | undefined = undefined,
65
65
  >(
66
- _client: PublicClient<Transport, TChain>,
66
+ _client: Client<Transport, TChain>,
67
67
  { filter }: GetFilterLogsParameters<TAbi, TEventName, TStrict>,
68
68
  ): Promise<GetFilterLogsReturnType<TAbi, TEventName, TStrict>> {
69
69
  const strict = filter.strict ?? false
@@ -1,6 +1,5 @@
1
1
  import type { Account } from '../../accounts/types.js'
2
- import type { PublicClient } from '../../clients/createPublicClient.js'
3
- import type { WalletClient } from '../../clients/createWalletClient.js'
2
+ import type { Client } from '../../clients/createClient.js'
4
3
  import type { Transport } from '../../clients/transports/createTransport.js'
5
4
  import type { Chain } from '../../types/chain.js'
6
5
 
@@ -29,12 +28,8 @@ export type GetGasPriceReturnType = bigint
29
28
  export async function getGasPrice<
30
29
  TChain extends Chain | undefined,
31
30
  TAccount extends Account | undefined,
32
- >(
33
- client:
34
- | PublicClient<Transport, TChain>
35
- | WalletClient<Transport, TChain, TAccount>,
36
- ): Promise<GetGasPriceReturnType> {
37
- const gasPrice = await (client as PublicClient).request({
31
+ >(client: Client<Transport, TChain, TAccount>): Promise<GetGasPriceReturnType> {
32
+ const gasPrice = await client.request({
38
33
  method: 'eth_gasPrice',
39
34
  })
40
35
  return BigInt(gasPrice)
@@ -1,6 +1,6 @@
1
1
  import type { AbiEvent, Address, Narrow } from 'abitype'
2
2
 
3
- import type { PublicClient } from '../../clients/createPublicClient.js'
3
+ import type { Client } from '../../clients/createClient.js'
4
4
  import type { Transport } from '../../clients/transports/createTransport.js'
5
5
  import {
6
6
  DecodeLogDataMismatch,
@@ -95,7 +95,7 @@ export async function getLogs<
95
95
  TAbiEvent extends AbiEvent | undefined,
96
96
  TStrict extends boolean | undefined = undefined,
97
97
  >(
98
- client: PublicClient<Transport, TChain>,
98
+ client: Client<Transport, TChain>,
99
99
  {
100
100
  address,
101
101
  blockHash,
@@ -1,6 +1,6 @@
1
1
  import type { Address } from 'abitype'
2
2
 
3
- import type { PublicClient } from '../../clients/createPublicClient.js'
3
+ import type { Client } from '../../clients/createClient.js'
4
4
  import type { Transport } from '../../clients/transports/createTransport.js'
5
5
  import type { BlockTag } from '../../types/block.js'
6
6
  import type { Chain } from '../../types/chain.js'
@@ -48,7 +48,7 @@ export type GetStorageAtReturnType = Hex | undefined
48
48
  * })
49
49
  */
50
50
  export async function getStorageAt<TChain extends Chain | undefined>(
51
- client: PublicClient<Transport, TChain>,
51
+ client: Client<Transport, TChain>,
52
52
  { address, blockNumber, blockTag = 'latest', slot }: GetStorageAtParameters,
53
53
  ): Promise<GetStorageAtReturnType> {
54
54
  const blockNumberHex =
@@ -1,4 +1,4 @@
1
- import type { PublicClient } from '../../clients/createPublicClient.js'
1
+ import type { Client } from '../../clients/createClient.js'
2
2
  import type { Transport } from '../../clients/transports/createTransport.js'
3
3
  import { TransactionNotFoundError } from '../../errors/transaction.js'
4
4
  import type { BlockTag } from '../../types/block.js'
@@ -76,7 +76,7 @@ export type GetTransactionReturnType<TChain extends Chain | undefined = Chain> =
76
76
  * })
77
77
  */
78
78
  export async function getTransaction<TChain extends Chain | undefined>(
79
- client: PublicClient<Transport, TChain>,
79
+ client: Client<Transport, TChain>,
80
80
  {
81
81
  blockHash,
82
82
  blockNumber,
@@ -1,4 +1,4 @@
1
- import type { PublicClient } from '../../clients/createPublicClient.js'
1
+ import type { Client } from '../../clients/createClient.js'
2
2
  import type { Transport } from '../../clients/transports/createTransport.js'
3
3
  import type { Chain } from '../../types/chain.js'
4
4
  import type { Hash } from '../../types/misc.js'
@@ -50,7 +50,7 @@ export type GetTransactionConfirmationsReturnType = bigint
50
50
  export async function getTransactionConfirmations<
51
51
  TChain extends Chain | undefined,
52
52
  >(
53
- client: PublicClient<Transport, TChain>,
53
+ client: Client<Transport, TChain>,
54
54
  { hash, transactionReceipt }: GetTransactionConfirmationsParameters<TChain>,
55
55
  ): Promise<GetTransactionConfirmationsReturnType> {
56
56
  const [blockNumber, transaction] = await Promise.all([
@@ -1,8 +1,7 @@
1
1
  import type { Address } from 'abitype'
2
2
 
3
3
  import type { Account } from '../../accounts/types.js'
4
- import type { PublicClient } from '../../clients/createPublicClient.js'
5
- import type { WalletClient } from '../../clients/createWalletClient.js'
4
+ import type { Client } from '../../clients/createClient.js'
6
5
  import type { Transport } from '../../clients/transports/createTransport.js'
7
6
  import type { BlockTag } from '../../types/block.js'
8
7
  import type { Chain } from '../../types/chain.js'
@@ -53,12 +52,10 @@ export async function getTransactionCount<
53
52
  TChain extends Chain | undefined,
54
53
  TAccount extends Account | undefined,
55
54
  >(
56
- client:
57
- | PublicClient<Transport, TChain>
58
- | WalletClient<Transport, TChain, TAccount>,
55
+ client: Client<Transport, TChain, TAccount>,
59
56
  { address, blockTag = 'latest', blockNumber }: GetTransactionCountParameters,
60
57
  ): Promise<GetTransactionCountReturnType> {
61
- const count = await (client as PublicClient).request({
58
+ const count = await client.request({
62
59
  method: 'eth_getTransactionCount',
63
60
  params: [address, blockNumber ? numberToHex(blockNumber) : blockTag],
64
61
  })
@@ -1,4 +1,4 @@
1
- import type { PublicClient } from '../../clients/createPublicClient.js'
1
+ import type { Client } from '../../clients/createClient.js'
2
2
  import type { Transport } from '../../clients/transports/createTransport.js'
3
3
  import { TransactionReceiptNotFoundError } from '../../errors/transaction.js'
4
4
  import type { Chain } from '../../types/chain.js'
@@ -42,7 +42,7 @@ export type GetTransactionReceiptReturnType<
42
42
  * })
43
43
  */
44
44
  export async function getTransactionReceipt<TChain extends Chain | undefined>(
45
- client: PublicClient<Transport, TChain>,
45
+ client: Client<Transport, TChain>,
46
46
  { hash }: GetTransactionReceiptParameters,
47
47
  ) {
48
48
  const receipt = await client.request({
@@ -1,6 +1,6 @@
1
1
  import type { Address, Narrow } from 'abitype'
2
2
 
3
- import type { PublicClient } from '../../clients/createPublicClient.js'
3
+ import type { Client } from '../../clients/createClient.js'
4
4
  import type { Transport } from '../../clients/transports/createTransport.js'
5
5
  import { multicall3Abi } from '../../constants/abis.js'
6
6
  import { AbiDecodingZeroDataError } from '../../errors/abi.js'
@@ -84,7 +84,7 @@ export async function multicall<
84
84
  TContracts extends ContractFunctionConfig[],
85
85
  TAllowFailure extends boolean = true,
86
86
  >(
87
- client: PublicClient<Transport, TChain>,
87
+ client: Client<Transport, TChain>,
88
88
  args: MulticallParameters<TContracts, TAllowFailure>,
89
89
  ): Promise<MulticallReturnType<TContracts, TAllowFailure>> {
90
90
  const {
@@ -194,6 +194,7 @@ export async function multicall<
194
194
  if (!success) throw new RawContractError({ data: returnData })
195
195
  const result = decodeFunctionResult({
196
196
  abi,
197
+ args,
197
198
  data: returnData,
198
199
  functionName: functionName,
199
200
  })
@@ -1,6 +1,6 @@
1
1
  import type { Abi } from 'abitype'
2
2
 
3
- import type { PublicClient } from '../../clients/createPublicClient.js'
3
+ import type { Client } from '../../clients/createClient.js'
4
4
  import type { Transport } from '../../clients/transports/createTransport.js'
5
5
  import type { BaseError } from '../../errors/base.js'
6
6
  import type { Chain } from '../../types/chain.js'
@@ -67,7 +67,7 @@ export async function readContract<
67
67
  TAbi extends Abi | readonly unknown[],
68
68
  TFunctionName extends string,
69
69
  >(
70
- client: PublicClient<Transport, TChain>,
70
+ client: Client<Transport, TChain>,
71
71
  {
72
72
  abi,
73
73
  address,
@@ -1,7 +1,7 @@
1
1
  import type { Abi } from 'abitype'
2
2
 
3
3
  import { parseAccount } from '../../accounts/utils/parseAccount.js'
4
- import type { PublicClient } from '../../clients/createPublicClient.js'
4
+ import type { Client } from '../../clients/createClient.js'
5
5
  import type { Transport } from '../../clients/transports/createTransport.js'
6
6
  import type { BaseError } from '../../errors/base.js'
7
7
  import type { Chain } from '../../types/chain.js'
@@ -105,7 +105,7 @@ export async function simulateContract<
105
105
  TFunctionName extends string,
106
106
  TChainOverride extends Chain | undefined,
107
107
  >(
108
- client: PublicClient<Transport, TChain>,
108
+ client: Client<Transport, TChain>,
109
109
  {
110
110
  abi,
111
111
  address,
@@ -1,4 +1,4 @@
1
- import type { PublicClient } from '../../clients/createPublicClient.js'
1
+ import type { Client } from '../../clients/createClient.js'
2
2
  import type { Transport } from '../../clients/transports/createTransport.js'
3
3
  import type { Chain } from '../../types/chain.js'
4
4
  import type { Filter } from '../../types/filter.js'
@@ -36,7 +36,7 @@ export async function uninstallFilter<
36
36
  TTransport extends Transport,
37
37
  TChain extends Chain | undefined,
38
38
  >(
39
- _client: PublicClient<TTransport, TChain>,
39
+ _client: Client<TTransport, TChain>,
40
40
  { filter }: UninstallFilterParameters,
41
41
  ): Promise<UninstallFilterReturnType> {
42
42
  return filter.request({
@@ -1,7 +1,7 @@
1
1
  import type { Address } from 'abitype'
2
2
 
3
3
  import type { Chain } from '../../chains/index.js'
4
- import type { PublicClient } from '../../clients/createPublicClient.js'
4
+ import type { Client } from '../../clients/createClient.js'
5
5
  import type { Transport } from '../../clients/transports/createTransport.js'
6
6
  import { universalSignatureValidatorAbi } from '../../constants/abis.js'
7
7
  import { universalSignatureValidatorByteCode } from '../../constants/contracts.js'
@@ -33,7 +33,7 @@ export type VerifyHashReturnType = boolean
33
33
  * @returns Whether or not the signature is valid. {@link VerifyHashReturnType}
34
34
  */
35
35
  export async function verifyHash<TChain extends Chain | undefined,>(
36
- client: PublicClient<Transport, TChain>,
36
+ client: Client<Transport, TChain>,
37
37
  { address, hash, signature, ...callRequest }: VerifyHashParameters,
38
38
  ): Promise<VerifyHashReturnType> {
39
39
  const signatureHex = isHex(signature) ? signature : toHex(signature)
@@ -1,5 +1,5 @@
1
1
  import type { Chain } from '../../chains/index.js'
2
- import type { PublicClient } from '../../clients/createPublicClient.js'
2
+ import type { Client } from '../../clients/createClient.js'
3
3
  import type { Transport } from '../../clients/transports/createTransport.js'
4
4
  import type { ByteArray, Hex, SignableMessage } from '../../types/misc.js'
5
5
  import { hashMessage } from '../../utils/index.js'
@@ -29,7 +29,7 @@ export type VerifyMessageReturnType = boolean
29
29
  * @returns Whether or not the signature is valid. {@link VerifyMessageReturnType}
30
30
  */
31
31
  export async function verifyMessage<TChain extends Chain | undefined,>(
32
- client: PublicClient<Transport, TChain>,
32
+ client: Client<Transport, TChain>,
33
33
  { address, message, signature, ...callRequest }: VerifyMessageParameters,
34
34
  ): Promise<VerifyMessageReturnType> {
35
35
  const hash = hashMessage(message)
@@ -1,9 +1,9 @@
1
1
  import type { Chain } from '../../chains/index.js'
2
- import type { PublicClient } from '../../clients/createPublicClient.js'
2
+ import type { Client } from '../../clients/createClient.js'
3
3
  import type { Transport } from '../../clients/transports/createTransport.js'
4
4
  import type { ByteArray, Hex } from '../../types/misc.js'
5
5
  import type { TypedDataDefinition } from '../../types/typedData.js'
6
- import { hashTypedData } from '../../utils/index.js'
6
+ import { hashTypedData } from '../../utils/signature/hashTypedData.js'
7
7
  import { type VerifyHashParameters, verifyHash } from './verifyHash.js'
8
8
  import type { Address, TypedData } from 'abitype'
9
9
 
@@ -30,7 +30,7 @@ export type VerifyTypedDataReturnType = boolean
30
30
  * @returns Whether or not the signature is valid. {@link VerifyTypedDataReturnType}
31
31
  */
32
32
  export async function verifyTypedData<TChain extends Chain | undefined,>(
33
- client: PublicClient<Transport, TChain>,
33
+ client: Client<Transport, TChain>,
34
34
  {
35
35
  address,
36
36
  signature,
@@ -1,4 +1,4 @@
1
- import type { PublicClient } from '../../clients/createPublicClient.js'
1
+ import type { Client } from '../../clients/createClient.js'
2
2
  import type { Transport } from '../../clients/transports/createTransport.js'
3
3
  import {
4
4
  TransactionNotFoundError,
@@ -99,7 +99,7 @@ export type WaitForTransactionReceiptParameters<
99
99
  export async function waitForTransactionReceipt<
100
100
  TChain extends Chain | undefined,
101
101
  >(
102
- client: PublicClient<Transport, TChain>,
102
+ client: Client<Transport, TChain>,
103
103
  {
104
104
  confirmations = 1,
105
105
  hash,
@@ -1,4 +1,4 @@
1
- import type { PublicClient } from '../../clients/createPublicClient.js'
1
+ import type { Client } from '../../clients/createClient.js'
2
2
  import type { Transport } from '../../clients/transports/createTransport.js'
3
3
  import type { Chain } from '../../types/chain.js'
4
4
  import type { GetTransportConfig } from '../../types/transport.js'
@@ -77,7 +77,7 @@ export function watchBlockNumber<
77
77
  TChain extends Chain | undefined,
78
78
  TTransport extends Transport,
79
79
  >(
80
- client: PublicClient<TTransport, TChain>,
80
+ client: Client<TTransport, TChain>,
81
81
  {
82
82
  emitOnBegin = false,
83
83
  emitMissed = false,
@@ -1,4 +1,4 @@
1
- import type { PublicClient } from '../../clients/createPublicClient.js'
1
+ import type { Client } from '../../clients/createClient.js'
2
2
  import type { Transport } from '../../clients/transports/createTransport.js'
3
3
  import type { BlockTag } from '../../types/block.js'
4
4
  import type { Chain } from '../../types/chain.js'
@@ -84,7 +84,7 @@ export function watchBlocks<
84
84
  TTransport extends Transport,
85
85
  TChain extends Chain | undefined,
86
86
  >(
87
- client: PublicClient<TTransport, TChain>,
87
+ client: Client<TTransport, TChain>,
88
88
  {
89
89
  blockTag = 'latest',
90
90
  emitMissed = false,
@@ -1,6 +1,6 @@
1
1
  import type { Abi, Address, ExtractAbiEvent, Narrow } from 'abitype'
2
2
 
3
- import type { PublicClient } from '../../clients/createPublicClient.js'
3
+ import type { Client } from '../../clients/createClient.js'
4
4
  import type { Transport } from '../../clients/transports/createTransport.js'
5
5
  import type { Chain } from '../../types/chain.js'
6
6
  import type { GetEventArgs, InferEventName } from '../../types/contract.js'
@@ -101,7 +101,7 @@ export function watchContractEvent<
101
101
  TEventName extends string,
102
102
  TStrict extends boolean | undefined = undefined,
103
103
  >(
104
- client: PublicClient<Transport, TChain>,
104
+ client: Client<Transport, TChain>,
105
105
  {
106
106
  abi,
107
107
  address,