viem 1.5.4 → 1.6.2

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 (343) hide show
  1. package/chains/utils/package.json +5 -0
  2. package/dist/cjs/accounts/index.js +5 -1
  3. package/dist/cjs/accounts/index.js.map +1 -1
  4. package/dist/cjs/accounts/utils/privateKeyToAddress.js +12 -0
  5. package/dist/cjs/accounts/utils/privateKeyToAddress.js.map +1 -0
  6. package/dist/cjs/accounts/utils/signTransaction.js.map +1 -1
  7. package/dist/cjs/actions/getContract.js.map +1 -1
  8. package/dist/cjs/actions/public/estimateGas.js +3 -1
  9. package/dist/cjs/actions/public/estimateGas.js.map +1 -1
  10. package/dist/cjs/actions/public/multicall.js +2 -3
  11. package/dist/cjs/actions/public/multicall.js.map +1 -1
  12. package/dist/cjs/actions/public/watchContractEvent.js +134 -67
  13. package/dist/cjs/actions/public/watchContractEvent.js.map +1 -1
  14. package/dist/cjs/actions/public/watchEvent.js +136 -62
  15. package/dist/cjs/actions/public/watchEvent.js.map +1 -1
  16. package/dist/cjs/actions/wallet/sendTransaction.js.map +1 -1
  17. package/dist/cjs/actions/wallet/writeContract.js.map +1 -1
  18. package/dist/cjs/chains/{formatters/celo.js → celo/formatters.js} +1 -1
  19. package/dist/cjs/chains/celo/formatters.js.map +1 -0
  20. package/dist/cjs/chains/{serializers/celo.js → celo/serializers.js} +1 -1
  21. package/dist/cjs/chains/celo/serializers.js.map +1 -0
  22. package/dist/cjs/{types/formatter.js → chains/celo/types.js} +1 -1
  23. package/dist/cjs/chains/celo/types.js.map +1 -0
  24. package/dist/cjs/chains/index.js +32 -16
  25. package/dist/cjs/chains/index.js.map +1 -1
  26. package/dist/cjs/chains/optimism/fees.js +7 -0
  27. package/dist/cjs/chains/optimism/fees.js.map +1 -0
  28. package/dist/cjs/chains/{formatters/optimism.js → optimism/formatters.js} +13 -1
  29. package/dist/cjs/chains/optimism/formatters.js.map +1 -0
  30. package/dist/cjs/{types/serializer.js → chains/optimism/types.js} +1 -1
  31. package/dist/cjs/chains/optimism/types.js.map +1 -0
  32. package/dist/cjs/chains/utils.js +11 -0
  33. package/dist/cjs/chains/utils.js.map +1 -0
  34. package/dist/cjs/clients/decorators/public.js.map +1 -1
  35. package/dist/cjs/constants/number.js +96 -96
  36. package/dist/cjs/constants/number.js.map +1 -1
  37. package/dist/cjs/errors/node.js +1 -1
  38. package/dist/cjs/errors/node.js.map +1 -1
  39. package/dist/cjs/errors/version.js +1 -1
  40. package/dist/cjs/index.js.map +1 -1
  41. package/dist/cjs/utils/abi/decodeAbiParameters.js.map +1 -1
  42. package/dist/cjs/utils/abi/decodeDeployData.js.map +1 -1
  43. package/dist/cjs/utils/abi/decodeErrorResult.js.map +1 -1
  44. package/dist/cjs/utils/abi/decodeFunctionResult.js.map +1 -1
  45. package/dist/cjs/utils/abi/encodeAbiParameters.js.map +1 -1
  46. package/dist/cjs/utils/abi/encodeDeployData.js.map +1 -1
  47. package/dist/cjs/utils/abi/encodeEventTopics.js.map +1 -1
  48. package/dist/cjs/utils/abi/encodePacked.js.map +1 -1
  49. package/dist/cjs/utils/chain.js +5 -3
  50. package/dist/cjs/utils/chain.js.map +1 -1
  51. package/dist/cjs/utils/formatters/block.js.map +1 -1
  52. package/dist/cjs/utils/formatters/extract.js.map +1 -1
  53. package/dist/cjs/utils/formatters/formatter.js.map +1 -1
  54. package/dist/cjs/utils/formatters/transaction.js.map +1 -1
  55. package/dist/cjs/utils/formatters/transactionReceipt.js.map +1 -1
  56. package/dist/cjs/utils/formatters/transactionRequest.js.map +1 -1
  57. package/dist/cjs/utils/poll.js +1 -1
  58. package/dist/cjs/utils/poll.js.map +1 -1
  59. package/dist/cjs/utils/transaction/prepareRequest.js +15 -6
  60. package/dist/cjs/utils/transaction/prepareRequest.js.map +1 -1
  61. package/dist/cjs/utils/typedData.js +2 -2
  62. package/dist/cjs/utils/typedData.js.map +1 -1
  63. package/dist/esm/accounts/index.js +2 -0
  64. package/dist/esm/accounts/index.js.map +1 -1
  65. package/dist/esm/accounts/utils/privateKeyToAddress.js +15 -0
  66. package/dist/esm/accounts/utils/privateKeyToAddress.js.map +1 -0
  67. package/dist/esm/accounts/utils/signTransaction.js.map +1 -1
  68. package/dist/esm/actions/getContract.js.map +1 -1
  69. package/dist/esm/actions/public/estimateGas.js +4 -2
  70. package/dist/esm/actions/public/estimateGas.js.map +1 -1
  71. package/dist/esm/actions/public/multicall.js +2 -4
  72. package/dist/esm/actions/public/multicall.js.map +1 -1
  73. package/dist/esm/actions/public/watchContractEvent.js +145 -76
  74. package/dist/esm/actions/public/watchContractEvent.js.map +1 -1
  75. package/dist/esm/actions/public/watchEvent.js +146 -70
  76. package/dist/esm/actions/public/watchEvent.js.map +1 -1
  77. package/dist/esm/actions/wallet/sendTransaction.js +1 -1
  78. package/dist/esm/actions/wallet/sendTransaction.js.map +1 -1
  79. package/dist/esm/actions/wallet/writeContract.js.map +1 -1
  80. package/dist/esm/chains/{formatters/celo.js → celo/formatters.js} +2 -2
  81. package/dist/esm/chains/celo/formatters.js.map +1 -0
  82. package/dist/esm/chains/{serializers/celo.js → celo/serializers.js} +1 -1
  83. package/dist/esm/chains/celo/serializers.js.map +1 -0
  84. package/dist/esm/chains/celo/types.js +2 -0
  85. package/dist/esm/chains/celo/types.js.map +1 -0
  86. package/dist/esm/chains/index.js +23 -7
  87. package/dist/esm/chains/index.js.map +1 -1
  88. package/dist/esm/chains/optimism/fees.js +4 -0
  89. package/dist/esm/chains/optimism/fees.js.map +1 -0
  90. package/dist/esm/chains/{formatters/optimism.js → optimism/formatters.js} +15 -2
  91. package/dist/esm/chains/optimism/formatters.js.map +1 -0
  92. package/dist/esm/chains/optimism/types.js +2 -0
  93. package/dist/esm/chains/optimism/types.js.map +1 -0
  94. package/dist/esm/chains/utils.js +4 -0
  95. package/dist/esm/chains/utils.js.map +1 -0
  96. package/dist/esm/clients/decorators/public.js.map +1 -1
  97. package/dist/esm/constants/number.js +96 -96
  98. package/dist/esm/constants/number.js.map +1 -1
  99. package/dist/esm/errors/node.js +1 -1
  100. package/dist/esm/errors/node.js.map +1 -1
  101. package/dist/esm/errors/version.js +1 -1
  102. package/dist/esm/index.js.map +1 -1
  103. package/dist/esm/utils/abi/decodeAbiParameters.js.map +1 -1
  104. package/dist/esm/utils/abi/decodeDeployData.js.map +1 -1
  105. package/dist/esm/utils/abi/decodeErrorResult.js.map +1 -1
  106. package/dist/esm/utils/abi/decodeFunctionResult.js.map +1 -1
  107. package/dist/esm/utils/abi/encodeAbiParameters.js.map +1 -1
  108. package/dist/esm/utils/abi/encodeDeployData.js.map +1 -1
  109. package/dist/esm/utils/abi/encodeEventTopics.js.map +1 -1
  110. package/dist/esm/utils/abi/encodePacked.js.map +1 -1
  111. package/dist/esm/utils/chain.js +5 -3
  112. package/dist/esm/utils/chain.js.map +1 -1
  113. package/dist/esm/utils/formatters/block.js.map +1 -1
  114. package/dist/esm/utils/formatters/extract.js.map +1 -1
  115. package/dist/esm/utils/formatters/formatter.js.map +1 -1
  116. package/dist/esm/utils/formatters/transaction.js.map +1 -1
  117. package/dist/esm/utils/formatters/transactionReceipt.js.map +1 -1
  118. package/dist/esm/utils/formatters/transactionRequest.js.map +1 -1
  119. package/dist/esm/utils/poll.js +1 -1
  120. package/dist/esm/utils/poll.js.map +1 -1
  121. package/dist/esm/utils/transaction/prepareRequest.js +14 -5
  122. package/dist/esm/utils/transaction/prepareRequest.js.map +1 -1
  123. package/dist/esm/utils/typedData.js +2 -2
  124. package/dist/esm/utils/typedData.js.map +1 -1
  125. package/dist/types/accounts/index.d.ts +2 -0
  126. package/dist/types/accounts/index.d.ts.map +1 -1
  127. package/dist/types/accounts/types.d.ts +1 -1
  128. package/dist/types/accounts/types.d.ts.map +1 -1
  129. package/dist/types/accounts/utils/privateKeyToAddress.d.ts +11 -0
  130. package/dist/types/accounts/utils/privateKeyToAddress.d.ts.map +1 -0
  131. package/dist/types/accounts/utils/signTransaction.d.ts +2 -2
  132. package/dist/types/accounts/utils/signTransaction.d.ts.map +1 -1
  133. package/dist/types/accounts/utils/signTypedData.d.ts +1 -1
  134. package/dist/types/accounts/utils/signTypedData.d.ts.map +1 -1
  135. package/dist/types/actions/getContract.d.ts +5 -5
  136. package/dist/types/actions/getContract.d.ts.map +1 -1
  137. package/dist/types/actions/public/createContractEventFilter.d.ts +3 -3
  138. package/dist/types/actions/public/createContractEventFilter.d.ts.map +1 -1
  139. package/dist/types/actions/public/createEventFilter.d.ts +5 -5
  140. package/dist/types/actions/public/createEventFilter.d.ts.map +1 -1
  141. package/dist/types/actions/public/estimateContractGas.d.ts +1 -1
  142. package/dist/types/actions/public/estimateContractGas.d.ts.map +1 -1
  143. package/dist/types/actions/public/estimateGas.d.ts.map +1 -1
  144. package/dist/types/actions/public/getFilterChanges.d.ts +1 -1
  145. package/dist/types/actions/public/getFilterChanges.d.ts.map +1 -1
  146. package/dist/types/actions/public/getFilterLogs.d.ts +1 -1
  147. package/dist/types/actions/public/getFilterLogs.d.ts.map +1 -1
  148. package/dist/types/actions/public/getLogs.d.ts +4 -4
  149. package/dist/types/actions/public/getLogs.d.ts.map +1 -1
  150. package/dist/types/actions/public/getTransactionReceipt.d.ts +1 -1
  151. package/dist/types/actions/public/getTransactionReceipt.d.ts.map +1 -1
  152. package/dist/types/actions/public/multicall.d.ts +1 -1
  153. package/dist/types/actions/public/multicall.d.ts.map +1 -1
  154. package/dist/types/actions/public/readContract.d.ts +1 -1
  155. package/dist/types/actions/public/readContract.d.ts.map +1 -1
  156. package/dist/types/actions/public/simulateContract.d.ts +3 -3
  157. package/dist/types/actions/public/simulateContract.d.ts.map +1 -1
  158. package/dist/types/actions/public/watchContractEvent.d.ts +34 -8
  159. package/dist/types/actions/public/watchContractEvent.d.ts.map +1 -1
  160. package/dist/types/actions/public/watchEvent.d.ts +35 -12
  161. package/dist/types/actions/public/watchEvent.d.ts.map +1 -1
  162. package/dist/types/actions/wallet/deployContract.d.ts +4 -4
  163. package/dist/types/actions/wallet/deployContract.d.ts.map +1 -1
  164. package/dist/types/actions/wallet/sendTransaction.d.ts +2 -2
  165. package/dist/types/actions/wallet/sendTransaction.d.ts.map +1 -1
  166. package/dist/types/actions/wallet/signTypedData.d.ts +1 -1
  167. package/dist/types/actions/wallet/signTypedData.d.ts.map +1 -1
  168. package/dist/types/actions/wallet/writeContract.d.ts +4 -2
  169. package/dist/types/actions/wallet/writeContract.d.ts.map +1 -1
  170. package/dist/types/chains/{formatters/celo.d.ts → celo/formatters.d.ts} +26 -85
  171. package/dist/types/chains/celo/formatters.d.ts.map +1 -0
  172. package/dist/types/chains/{serializers/celo.d.ts → celo/serializers.d.ts} +4 -4
  173. package/dist/types/chains/celo/serializers.d.ts.map +1 -0
  174. package/dist/types/chains/celo/types.d.ts +60 -0
  175. package/dist/types/chains/celo/types.d.ts.map +1 -0
  176. package/dist/types/chains/index.d.ts +2681 -2790
  177. package/dist/types/chains/index.d.ts.map +1 -1
  178. package/dist/types/chains/optimism/fees.d.ts +4 -0
  179. package/dist/types/chains/optimism/fees.d.ts.map +1 -0
  180. package/dist/types/chains/{formatters/optimism.d.ts → optimism/formatters.d.ts} +77 -54
  181. package/dist/types/chains/optimism/formatters.d.ts.map +1 -0
  182. package/dist/types/chains/optimism/types.d.ts +53 -0
  183. package/dist/types/chains/optimism/types.d.ts.map +1 -0
  184. package/dist/types/chains/utils.d.ts +6 -0
  185. package/dist/types/chains/utils.d.ts.map +1 -0
  186. package/dist/types/clients/decorators/public.d.ts +10 -10
  187. package/dist/types/clients/decorators/public.d.ts.map +1 -1
  188. package/dist/types/clients/decorators/wallet.d.ts +3 -3
  189. package/dist/types/clients/decorators/wallet.d.ts.map +1 -1
  190. package/dist/types/constants/number.d.ts.map +1 -1
  191. package/dist/types/errors/node.d.ts.map +1 -1
  192. package/dist/types/errors/version.d.ts +1 -1
  193. package/dist/types/index.d.ts +14 -4
  194. package/dist/types/index.d.ts.map +1 -1
  195. package/dist/types/types/chain.d.ts +52 -8
  196. package/dist/types/types/chain.d.ts.map +1 -1
  197. package/dist/types/types/multicall.d.ts +8 -8
  198. package/dist/types/types/multicall.d.ts.map +1 -1
  199. package/dist/types/types/rpc.d.ts +1 -1
  200. package/dist/types/types/rpc.d.ts.map +1 -1
  201. package/dist/types/types/typedData.d.ts +3 -3
  202. package/dist/types/types/typedData.d.ts.map +1 -1
  203. package/dist/types/types/utils.d.ts +10 -0
  204. package/dist/types/types/utils.d.ts.map +1 -1
  205. package/dist/types/utils/abi/decodeAbiParameters.d.ts +2 -2
  206. package/dist/types/utils/abi/decodeAbiParameters.d.ts.map +1 -1
  207. package/dist/types/utils/abi/decodeDeployData.d.ts +3 -3
  208. package/dist/types/utils/abi/decodeDeployData.d.ts.map +1 -1
  209. package/dist/types/utils/abi/decodeErrorResult.d.ts +3 -3
  210. package/dist/types/utils/abi/decodeErrorResult.d.ts.map +1 -1
  211. package/dist/types/utils/abi/decodeEventLog.d.ts +3 -3
  212. package/dist/types/utils/abi/decodeEventLog.d.ts.map +1 -1
  213. package/dist/types/utils/abi/decodeFunctionResult.d.ts +4 -4
  214. package/dist/types/utils/abi/decodeFunctionResult.d.ts.map +1 -1
  215. package/dist/types/utils/abi/encodeAbiParameters.d.ts +2 -2
  216. package/dist/types/utils/abi/encodeAbiParameters.d.ts.map +1 -1
  217. package/dist/types/utils/abi/encodeDeployData.d.ts +3 -3
  218. package/dist/types/utils/abi/encodeDeployData.d.ts.map +1 -1
  219. package/dist/types/utils/abi/encodeErrorResult.d.ts +4 -4
  220. package/dist/types/utils/abi/encodeErrorResult.d.ts.map +1 -1
  221. package/dist/types/utils/abi/encodeEventTopics.d.ts +4 -4
  222. package/dist/types/utils/abi/encodeEventTopics.d.ts.map +1 -1
  223. package/dist/types/utils/abi/encodeFunctionData.d.ts +4 -4
  224. package/dist/types/utils/abi/encodeFunctionData.d.ts.map +1 -1
  225. package/dist/types/utils/abi/encodeFunctionResult.d.ts +4 -4
  226. package/dist/types/utils/abi/encodeFunctionResult.d.ts.map +1 -1
  227. package/dist/types/utils/abi/encodePacked.d.ts +3 -3
  228. package/dist/types/utils/abi/encodePacked.d.ts.map +1 -1
  229. package/dist/types/utils/abi/getAbiItem.d.ts +3 -3
  230. package/dist/types/utils/abi/getAbiItem.d.ts.map +1 -1
  231. package/dist/types/utils/chain.d.ts +3 -6
  232. package/dist/types/utils/chain.d.ts.map +1 -1
  233. package/dist/types/utils/formatters/block.d.ts +7 -3
  234. package/dist/types/utils/formatters/block.d.ts.map +1 -1
  235. package/dist/types/utils/formatters/extract.d.ts +2 -2
  236. package/dist/types/utils/formatters/extract.d.ts.map +1 -1
  237. package/dist/types/utils/formatters/formatter.d.ts +1 -1
  238. package/dist/types/utils/formatters/transaction.d.ts +8 -4
  239. package/dist/types/utils/formatters/transaction.d.ts.map +1 -1
  240. package/dist/types/utils/formatters/transactionReceipt.d.ts +3 -4
  241. package/dist/types/utils/formatters/transactionReceipt.d.ts.map +1 -1
  242. package/dist/types/utils/formatters/transactionRequest.d.ts +4 -5
  243. package/dist/types/utils/formatters/transactionRequest.d.ts.map +1 -1
  244. package/dist/types/utils/signature/hashTypedData.d.ts +1 -1
  245. package/dist/types/utils/signature/hashTypedData.d.ts.map +1 -1
  246. package/dist/types/utils/signature/recoverTypedDataAddress.d.ts +1 -1
  247. package/dist/types/utils/signature/recoverTypedDataAddress.d.ts.map +1 -1
  248. package/dist/types/utils/signature/verifyTypedData.d.ts +1 -1
  249. package/dist/types/utils/signature/verifyTypedData.d.ts.map +1 -1
  250. package/dist/types/utils/transaction/prepareRequest.d.ts +6 -11
  251. package/dist/types/utils/transaction/prepareRequest.d.ts.map +1 -1
  252. package/dist/types/utils/typedData.d.ts +1 -1
  253. package/dist/types/utils/typedData.d.ts.map +1 -1
  254. package/package.json +9 -3
  255. package/src/accounts/index.ts +6 -0
  256. package/src/accounts/types.ts +1 -1
  257. package/src/accounts/utils/privateKeyToAddress.ts +20 -0
  258. package/src/accounts/utils/signTransaction.ts +2 -2
  259. package/src/accounts/utils/signTypedData.ts +1 -1
  260. package/src/actions/getContract.ts +6 -5
  261. package/src/actions/public/createContractEventFilter.ts +3 -3
  262. package/src/actions/public/createEventFilter.ts +6 -6
  263. package/src/actions/public/estimateContractGas.ts +1 -1
  264. package/src/actions/public/estimateGas.ts +11 -2
  265. package/src/actions/public/getFilterChanges.ts +1 -1
  266. package/src/actions/public/getFilterLogs.ts +1 -1
  267. package/src/actions/public/getLogs.ts +5 -5
  268. package/src/actions/public/multicall.ts +9 -8
  269. package/src/actions/public/readContract.ts +1 -1
  270. package/src/actions/public/simulateContract.ts +3 -3
  271. package/src/actions/public/watchContractEvent.ts +204 -90
  272. package/src/actions/public/watchEvent.ts +232 -111
  273. package/src/actions/wallet/deployContract.ts +4 -4
  274. package/src/actions/wallet/sendTransaction.ts +9 -6
  275. package/src/actions/wallet/signTypedData.ts +1 -1
  276. package/src/actions/wallet/writeContract.ts +12 -8
  277. package/src/chains/{formatters/celo.ts → celo/formatters.ts} +29 -48
  278. package/src/chains/{serializers/celo.ts → celo/serializers.ts} +5 -5
  279. package/src/chains/celo/types.ts +111 -0
  280. package/src/chains/index.ts +23 -7
  281. package/src/chains/optimism/fees.ts +5 -0
  282. package/src/chains/optimism/formatters.ts +74 -0
  283. package/src/chains/optimism/types.ts +102 -0
  284. package/src/chains/utils.ts +41 -0
  285. package/src/clients/decorators/public.ts +16 -16
  286. package/src/clients/decorators/wallet.ts +3 -3
  287. package/src/constants/number.ts +96 -96
  288. package/src/errors/node.ts +2 -1
  289. package/src/errors/version.ts +1 -1
  290. package/src/index.ts +25 -8
  291. package/src/types/chain.ts +91 -14
  292. package/src/types/multicall.ts +14 -11
  293. package/src/types/rpc.ts +2 -6
  294. package/src/types/typedData.ts +2 -3
  295. package/src/types/utils.ts +11 -0
  296. package/src/utils/abi/decodeAbiParameters.ts +7 -8
  297. package/src/utils/abi/decodeDeployData.ts +3 -3
  298. package/src/utils/abi/decodeErrorResult.ts +3 -8
  299. package/src/utils/abi/decodeEventLog.ts +3 -3
  300. package/src/utils/abi/decodeFunctionResult.ts +4 -6
  301. package/src/utils/abi/encodeAbiParameters.ts +8 -9
  302. package/src/utils/abi/encodeDeployData.ts +3 -3
  303. package/src/utils/abi/encodeErrorResult.ts +4 -4
  304. package/src/utils/abi/encodeEventTopics.ts +4 -9
  305. package/src/utils/abi/encodeFunctionData.ts +4 -4
  306. package/src/utils/abi/encodeFunctionResult.ts +4 -4
  307. package/src/utils/abi/encodePacked.ts +6 -8
  308. package/src/utils/abi/getAbiItem.ts +3 -3
  309. package/src/utils/chain.ts +21 -10
  310. package/src/utils/formatters/block.ts +8 -6
  311. package/src/utils/formatters/extract.ts +2 -2
  312. package/src/utils/formatters/formatter.ts +2 -2
  313. package/src/utils/formatters/transaction.ts +8 -6
  314. package/src/utils/formatters/transactionReceipt.ts +9 -3
  315. package/src/utils/formatters/transactionRequest.ts +9 -3
  316. package/src/utils/poll.ts +1 -1
  317. package/src/utils/signature/hashTypedData.ts +1 -1
  318. package/src/utils/signature/recoverTypedDataAddress.ts +1 -1
  319. package/src/utils/signature/verifyTypedData.ts +1 -1
  320. package/src/utils/transaction/prepareRequest.ts +48 -22
  321. package/src/utils/typedData.ts +2 -3
  322. package/dist/cjs/chains/formatters/celo.js.map +0 -1
  323. package/dist/cjs/chains/formatters/optimism.js.map +0 -1
  324. package/dist/cjs/chains/serializers/celo.js.map +0 -1
  325. package/dist/cjs/types/formatter.js.map +0 -1
  326. package/dist/cjs/types/serializer.js.map +0 -1
  327. package/dist/esm/chains/formatters/celo.js.map +0 -1
  328. package/dist/esm/chains/formatters/optimism.js.map +0 -1
  329. package/dist/esm/chains/serializers/celo.js.map +0 -1
  330. package/dist/esm/types/formatter.js +0 -2
  331. package/dist/esm/types/formatter.js.map +0 -1
  332. package/dist/esm/types/serializer.js +0 -2
  333. package/dist/esm/types/serializer.js.map +0 -1
  334. package/dist/types/chains/formatters/celo.d.ts.map +0 -1
  335. package/dist/types/chains/formatters/optimism.d.ts.map +0 -1
  336. package/dist/types/chains/serializers/celo.d.ts.map +0 -1
  337. package/dist/types/types/formatter.d.ts +0 -17
  338. package/dist/types/types/formatter.d.ts.map +0 -1
  339. package/dist/types/types/serializer.d.ts +0 -7
  340. package/dist/types/types/serializer.d.ts.map +0 -1
  341. package/src/chains/formatters/optimism.ts +0 -91
  342. package/src/types/formatter.ts +0 -42
  343. package/src/types/serializer.ts +0 -19
@@ -4,9 +4,9 @@ import { InvalidAddressError } from '../../errors/address.js'
4
4
  import { BaseError } from '../../errors/base.js'
5
5
  import { InvalidChainIdError } from '../../errors/chain.js'
6
6
  import { FeeCapTooHighError, TipAboveFeeCapError } from '../../errors/node.js'
7
+ import type { ChainSerializers } from '../../types/chain.js'
7
8
  import type { FeeValuesEIP1559 } from '../../types/fee.js'
8
9
  import type { Signature } from '../../types/misc.js'
9
- import type { Serializers } from '../../types/serializer.js'
10
10
  import type {
11
11
  AccessList,
12
12
  TransactionSerializable,
@@ -24,7 +24,7 @@ import {
24
24
  } from '../../utils/transaction/serializeTransaction.js'
25
25
 
26
26
  export const serializeTransactionCelo: SerializeTransactionFn<
27
- TransactionSerializableCelo
27
+ CeloTransactionSerializable
28
28
  > = (tx, signature) => {
29
29
  // Handle CIP-42 transactions
30
30
  if (isCIP42(tx))
@@ -39,7 +39,7 @@ export const serializeTransactionCelo: SerializeTransactionFn<
39
39
 
40
40
  export const serializersCelo = {
41
41
  transaction: serializeTransactionCelo,
42
- } as const satisfies Serializers
42
+ } as const satisfies ChainSerializers
43
43
 
44
44
  //////////////////////////////////////////////////////////////////////////////
45
45
  // Types
@@ -58,7 +58,7 @@ export type TransactionSerializableCIP42<
58
58
  type?: 'cip42'
59
59
  }
60
60
 
61
- export type TransactionSerializableCelo =
61
+ export type CeloTransactionSerializable =
62
62
  | TransactionSerializableCIP42
63
63
  | TransactionSerializable
64
64
 
@@ -123,7 +123,7 @@ function serializeTransactionCIP42(
123
123
  // Utilities
124
124
 
125
125
  // process as CIP42 if any of these fields are present. realistically gatewayfee is not used but is part of spec
126
- function isCIP42(transaction: TransactionSerializableCelo) {
126
+ function isCIP42(transaction: CeloTransactionSerializable) {
127
127
  if (
128
128
  'maxFeePerGas' in transaction &&
129
129
  'maxPriorityFeePerGas' in transaction &&
@@ -0,0 +1,111 @@
1
+ import type { Address } from 'abitype'
2
+
3
+ import type { Block, BlockTag } from '../../types/block.js'
4
+ import type { Hex } from '../../types/misc.js'
5
+ import type {
6
+ RpcBlock,
7
+ RpcTransaction,
8
+ RpcTransactionReceipt,
9
+ RpcTransactionRequest,
10
+ } from '../../types/rpc.js'
11
+ import type {
12
+ Transaction,
13
+ TransactionReceipt,
14
+ TransactionRequest,
15
+ } from '../../types/transaction.js'
16
+ import type { NeverBy } from '../../types/utils.js'
17
+ import type { OptimismRpcTransaction } from '../optimism/types.js'
18
+
19
+ type CeloBlockExclude =
20
+ | 'difficulty'
21
+ | 'gasLimit'
22
+ | 'mixHash'
23
+ | 'nonce'
24
+ | 'uncles'
25
+
26
+ export type CeloBlockOverrides = {
27
+ randomness: {
28
+ committed: Hex
29
+ revealed: Hex
30
+ }
31
+ }
32
+ export type CeloBlock<
33
+ TIncludeTransactions extends boolean = boolean,
34
+ TBlockTag extends BlockTag = BlockTag,
35
+ > = NeverBy<
36
+ Block<
37
+ bigint,
38
+ TIncludeTransactions,
39
+ TBlockTag,
40
+ CeloTransaction<TBlockTag extends 'pending' ? true : false>
41
+ >,
42
+ CeloBlockExclude
43
+ > &
44
+ CeloBlockOverrides
45
+
46
+ export type CeloRpcBlockOverrides = {
47
+ randomness: {
48
+ committed: Hex
49
+ revealed: Hex
50
+ }
51
+ }
52
+ export type CeloRpcBlock<
53
+ TBlockTag extends BlockTag = BlockTag,
54
+ TIncludeTransactions extends boolean = boolean,
55
+ > = NeverBy<
56
+ RpcBlock<
57
+ TBlockTag,
58
+ TIncludeTransactions,
59
+ OptimismRpcTransaction<TBlockTag extends 'pending' ? true : false>
60
+ >,
61
+ CeloBlockExclude
62
+ > &
63
+ CeloRpcBlockOverrides
64
+
65
+ export type CeloRpcTransactionOverrides = {
66
+ feeCurrency: Address | null
67
+ gatewayFee: Hex | null
68
+ gatewayFeeRecipient: Address | null
69
+ }
70
+ export type CeloRpcTransaction<TPending extends boolean = boolean> =
71
+ RpcTransaction<TPending> & CeloRpcTransactionOverrides
72
+
73
+ export type CeloRpcTransactionReceiptOverrides = {
74
+ feeCurrency: Address | null
75
+ gatewayFee: Hex | null
76
+ gatewayFeeRecipient: Address | null
77
+ }
78
+ export type CeloRpcTransactionReceipt = RpcTransactionReceipt &
79
+ CeloRpcTransactionReceiptOverrides
80
+
81
+ export type CeloRpcTransactionRequestOverrides = {
82
+ feeCurrency?: Address
83
+ gatewayFee?: Hex
84
+ gatewayFeeRecipient?: Address
85
+ }
86
+ export type CeloRpcTransactionRequest = RpcTransactionRequest &
87
+ CeloRpcTransactionRequestOverrides
88
+
89
+ export type CeloTransactionOverrides = {
90
+ feeCurrency: Address | null
91
+ gatewayFee: bigint | null
92
+ gatewayFeeRecipient: Address | null
93
+ }
94
+ export type CeloTransaction<TPending extends boolean = boolean> =
95
+ Transaction<TPending> & CeloTransactionOverrides
96
+
97
+ export type CeloTransactionReceiptOverrides = {
98
+ feeCurrency: Address | null
99
+ gatewayFee: bigint | null
100
+ gatewayFeeRecipient: Address | null
101
+ }
102
+ export type CeloTransactionReceipt = TransactionReceipt &
103
+ CeloTransactionReceiptOverrides
104
+
105
+ export type CeloTransactionRequestOverrides = {
106
+ feeCurrency?: Address
107
+ gatewayFee?: bigint
108
+ gatewayFeeRecipient?: Address
109
+ }
110
+ export type CeloTransactionRequest = TransactionRequest &
111
+ CeloTransactionRequestOverrides
@@ -1,9 +1,10 @@
1
1
  import * as chains from '@wagmi/chains'
2
2
 
3
3
  import { defineChain } from '../utils/chain.js'
4
- import { formattersCelo } from './formatters/celo.js'
5
- import { formattersOptimism } from './formatters/optimism.js'
6
- import { serializersCelo } from './serializers/celo.js'
4
+ import { formattersCelo } from './celo/formatters.js'
5
+ import { serializersCelo } from './celo/serializers.js'
6
+ import { feesOptimism } from './optimism/fees.js'
7
+ import { formattersOptimism } from './optimism/formatters.js'
7
8
 
8
9
  export const arbitrum = /*#__PURE__*/ defineChain(chains.arbitrum)
9
10
  export const arbitrumGoerli = /*#__PURE__*/ defineChain(chains.arbitrumGoerli)
@@ -11,8 +12,14 @@ export const aurora = /*#__PURE__*/ defineChain(chains.aurora)
11
12
  export const auroraTestnet = /*#__PURE__*/ defineChain(chains.auroraTestnet)
12
13
  export const avalanche = /*#__PURE__*/ defineChain(chains.avalanche)
13
14
  export const avalancheFuji = /*#__PURE__*/ defineChain(chains.avalancheFuji)
14
- export const base = /*#__PURE__*/ defineChain(chains.base)
15
- export const baseGoerli = /*#__PURE__*/ defineChain(chains.baseGoerli)
15
+ export const base = /*#__PURE__*/ defineChain(chains.base, {
16
+ fees: feesOptimism,
17
+ formatters: formattersOptimism,
18
+ })
19
+ export const baseGoerli = /*#__PURE__*/ defineChain(chains.baseGoerli, {
20
+ fees: feesOptimism,
21
+ formatters: formattersOptimism,
22
+ })
16
23
  export const boba = /*#__PURE__*/ defineChain(chains.boba)
17
24
  export const bronos = /*#__PURE__*/ defineChain(chains.bronos)
18
25
  export const bronosTestnet = /*#__PURE__*/ defineChain(chains.bronosTestnet)
@@ -72,9 +79,11 @@ export const moonriver = /*#__PURE__*/ defineChain(chains.moonriver)
72
79
  export const nexi = /*#__PURE__*/ defineChain(chains.nexi)
73
80
  export const okc = /*#__PURE__*/ defineChain(chains.okc)
74
81
  export const optimism = /*#__PURE__*/ defineChain(chains.optimism, {
82
+ fees: feesOptimism,
75
83
  formatters: formattersOptimism,
76
84
  })
77
85
  export const optimismGoerli = /*#__PURE__*/ defineChain(chains.optimismGoerli, {
86
+ fees: feesOptimism,
78
87
  formatters: formattersOptimism,
79
88
  })
80
89
  export const polygon = /*#__PURE__*/ defineChain(chains.polygon)
@@ -85,6 +94,7 @@ export const polygonZkEvmTestnet = /*#__PURE__*/ defineChain(
85
94
  )
86
95
  export const pulsechain = /*#__PURE__*/ defineChain(chains.pulsechain)
87
96
  export const pulsechainV4 = /*#__PURE__*/ defineChain(chains.pulsechainV4)
97
+ export const scrollSepolia = /*#__PURE__*/ defineChain(chains.scrollSepolia)
88
98
  export const scrollTestnet = /*#__PURE__*/ defineChain(chains.scrollTestnet)
89
99
  export const sepolia = /*#__PURE__*/ defineChain(chains.sepolia)
90
100
  export const skaleBlockBrawlers = /*#__PURE__*/ defineChain(
@@ -136,7 +146,13 @@ export const xdcTestnet = /*#__PURE__*/ defineChain(chains.xdcTestnet)
136
146
  export const zhejiang = /*#__PURE__*/ defineChain(chains.zhejiang)
137
147
  export const zkSync = /*#__PURE__*/ defineChain(chains.zkSync)
138
148
  export const zkSyncTestnet = /*#__PURE__*/ defineChain(chains.zkSyncTestnet)
139
- export const zora = /*#__PURE__*/ defineChain(chains.zora)
140
- export const zoraTestnet = /*#__PURE__*/ defineChain(chains.zoraTestnet)
149
+ export const zora = /*#__PURE__*/ defineChain(chains.zora, {
150
+ fees: feesOptimism,
151
+ formatters: formattersOptimism,
152
+ })
153
+ export const zoraTestnet = /*#__PURE__*/ defineChain(chains.zoraTestnet, {
154
+ fees: feesOptimism,
155
+ formatters: formattersOptimism,
156
+ })
141
157
 
142
158
  export type { Chain } from '../types/chain.js'
@@ -0,0 +1,5 @@
1
+ import type { ChainFees } from '../../types/chain.js'
2
+
3
+ export const feesOptimism = {
4
+ defaultPriorityFee: 1_000_000n, // 0.001 gwei
5
+ } as const satisfies ChainFees
@@ -0,0 +1,74 @@
1
+ import { type ChainFormatters } from '../../types/chain.js'
2
+ import type { Hash } from '../../types/misc.js'
3
+ import { type RpcTransaction } from '../../types/rpc.js'
4
+ import { hexToBigInt } from '../../utils/encoding/fromHex.js'
5
+ import { defineBlock } from '../../utils/formatters/block.js'
6
+ import {
7
+ defineTransaction,
8
+ formatTransaction,
9
+ } from '../../utils/formatters/transaction.js'
10
+ import { defineTransactionReceipt } from '../../utils/formatters/transactionReceipt.js'
11
+ import type {
12
+ OptimismBlockOverrides,
13
+ OptimismRpcBlockOverrides,
14
+ OptimismRpcTransaction,
15
+ OptimismRpcTransactionReceiptOverrides,
16
+ OptimismTransaction,
17
+ OptimismTransactionReceiptOverrides,
18
+ } from './types.js'
19
+
20
+ export const formattersOptimism = {
21
+ block: /*#__PURE__*/ defineBlock({
22
+ format(
23
+ args: OptimismRpcBlockOverrides & {
24
+ transactions: Hash[] | OptimismRpcTransaction[]
25
+ },
26
+ ): OptimismBlockOverrides & {
27
+ transactions: Hash[] | OptimismTransaction[]
28
+ } {
29
+ const transactions = args.transactions?.map((transaction) => {
30
+ if (typeof transaction === 'string') return transaction
31
+ const formatted = formatTransaction(
32
+ transaction as RpcTransaction,
33
+ ) as OptimismTransaction
34
+ if (formatted.typeHex === '0x7e') {
35
+ formatted.isSystemTx = transaction.isSystemTx
36
+ formatted.mint = transaction.mint
37
+ ? hexToBigInt(transaction.mint)
38
+ : undefined
39
+ formatted.sourceHash = transaction.sourceHash
40
+ formatted.type = 'deposit'
41
+ }
42
+ return formatted
43
+ }) as Hash[] | OptimismTransaction[]
44
+ return {
45
+ transactions,
46
+ stateRoot: args.stateRoot,
47
+ }
48
+ },
49
+ }),
50
+ transaction: /*#__PURE__*/ defineTransaction({
51
+ format(args: OptimismRpcTransaction): OptimismTransaction {
52
+ const transaction = {} as OptimismTransaction
53
+ if (args.type === '0x7e') {
54
+ transaction.isSystemTx = args.isSystemTx
55
+ transaction.mint = args.mint ? hexToBigInt(args.mint) : undefined
56
+ transaction.sourceHash = args.sourceHash
57
+ transaction.type = 'deposit'
58
+ }
59
+ return transaction
60
+ },
61
+ }),
62
+ transactionReceipt: /*#__PURE__*/ defineTransactionReceipt({
63
+ format(
64
+ args: OptimismRpcTransactionReceiptOverrides,
65
+ ): OptimismTransactionReceiptOverrides {
66
+ return {
67
+ l1GasPrice: args.l1GasPrice ? hexToBigInt(args.l1GasPrice) : null,
68
+ l1GasUsed: args.l1GasUsed ? hexToBigInt(args.l1GasUsed) : null,
69
+ l1Fee: args.l1Fee ? hexToBigInt(args.l1Fee) : null,
70
+ l1FeeScalar: args.l1FeeScalar ? Number(args.l1FeeScalar) : null,
71
+ }
72
+ },
73
+ }),
74
+ } as const satisfies ChainFormatters
@@ -0,0 +1,102 @@
1
+ import type { Block, BlockTag } from '../../types/block.js'
2
+ import type { FeeValuesEIP1559 } from '../../types/fee.js'
3
+ import type { Hash, Hex } from '../../types/misc.js'
4
+ import type {
5
+ Index,
6
+ Quantity,
7
+ RpcBlock,
8
+ RpcTransaction as RpcTransaction_,
9
+ RpcTransactionReceipt,
10
+ } from '../../types/rpc.js'
11
+ import type {
12
+ Transaction as Transaction_,
13
+ TransactionBase,
14
+ TransactionReceipt,
15
+ } from '../../types/transaction.js'
16
+
17
+ export type OptimismBlockOverrides = {
18
+ stateRoot: Hash
19
+ }
20
+ export type OptimismBlock<
21
+ TIncludeTransactions extends boolean = boolean,
22
+ TBlockTag extends BlockTag = BlockTag,
23
+ > = Block<
24
+ bigint,
25
+ TIncludeTransactions,
26
+ TBlockTag,
27
+ OptimismTransaction<TBlockTag extends 'pending' ? true : false>
28
+ > &
29
+ OptimismBlockOverrides
30
+
31
+ export type OptimismRpcBlockOverrides = {
32
+ stateRoot: Hash
33
+ }
34
+ export type OptimismRpcBlock<
35
+ TBlockTag extends BlockTag = BlockTag,
36
+ TIncludeTransactions extends boolean = boolean,
37
+ > = RpcBlock<
38
+ TBlockTag,
39
+ TIncludeTransactions,
40
+ OptimismRpcTransaction<TBlockTag extends 'pending' ? true : false>
41
+ > &
42
+ OptimismRpcBlockOverrides
43
+
44
+ type RpcTransaction<TPending extends boolean = boolean> =
45
+ RpcTransaction_<TPending> & {
46
+ isSystemTx?: undefined
47
+ mint?: undefined
48
+ sourceHash?: undefined
49
+ }
50
+
51
+ export type OptimismRpcDepositTransaction<TPending extends boolean = boolean> =
52
+ Omit<TransactionBase<Quantity, Index, TPending>, 'typeHex'> &
53
+ FeeValuesEIP1559<Quantity> & {
54
+ isSystemTx?: boolean
55
+ mint?: Hex
56
+ sourceHash: Hex
57
+ type: '0x7e'
58
+ }
59
+ export type OptimismRpcTransaction<TPending extends boolean = boolean> =
60
+ | RpcTransaction<TPending>
61
+ | OptimismRpcDepositTransaction<TPending>
62
+
63
+ export type OptimismRpcTransactionReceiptOverrides = {
64
+ l1GasPrice: Hex | null
65
+ l1GasUsed: Hex | null
66
+ l1Fee: Hex | null
67
+ l1FeeScalar: `${number}` | null
68
+ }
69
+ export type OptimismRpcTransactionReceipt = RpcTransactionReceipt &
70
+ OptimismRpcTransactionReceiptOverrides
71
+
72
+ type Transaction<TPending extends boolean = boolean> = Transaction_<
73
+ bigint,
74
+ number,
75
+ TPending
76
+ > & {
77
+ isSystemTx?: undefined
78
+ mint?: undefined
79
+ sourceHash?: undefined
80
+ }
81
+
82
+ export type OptimismDepositTransaction<TPending extends boolean = boolean> =
83
+ TransactionBase<bigint, number, TPending> &
84
+ FeeValuesEIP1559 & {
85
+ isSystemTx?: boolean
86
+ mint?: bigint
87
+ sourceHash: Hex
88
+ type: 'deposit'
89
+ }
90
+
91
+ export type OptimismTransaction<TPending extends boolean = boolean> =
92
+ | Transaction<TPending>
93
+ | OptimismDepositTransaction<TPending>
94
+
95
+ export type OptimismTransactionReceiptOverrides = {
96
+ l1GasPrice: bigint | null
97
+ l1GasUsed: bigint | null
98
+ l1Fee: bigint | null
99
+ l1FeeScalar: number | null
100
+ }
101
+ export type OptimismTransactionReceipt = TransactionReceipt &
102
+ OptimismTransactionReceiptOverrides
@@ -0,0 +1,41 @@
1
+ export { formattersCelo } from './celo/formatters.js'
2
+ export {
3
+ type CeloTransactionSerializable,
4
+ type TransactionSerializableCIP42,
5
+ serializeTransactionCelo,
6
+ serializersCelo,
7
+ } from './celo/serializers.js'
8
+ export type {
9
+ CeloBlock,
10
+ CeloBlockOverrides,
11
+ CeloRpcBlock,
12
+ CeloRpcBlockOverrides,
13
+ CeloRpcTransaction,
14
+ CeloRpcTransactionOverrides,
15
+ CeloRpcTransactionReceipt,
16
+ CeloRpcTransactionReceiptOverrides,
17
+ CeloRpcTransactionRequest,
18
+ CeloRpcTransactionRequestOverrides,
19
+ CeloTransaction,
20
+ CeloTransactionOverrides,
21
+ CeloTransactionReceipt,
22
+ CeloTransactionReceiptOverrides,
23
+ CeloTransactionRequest,
24
+ CeloTransactionRequestOverrides,
25
+ } from './celo/types.js'
26
+
27
+ export { formattersOptimism } from './optimism/formatters.js'
28
+ export type {
29
+ OptimismBlock,
30
+ OptimismBlockOverrides,
31
+ OptimismDepositTransaction,
32
+ OptimismRpcBlock,
33
+ OptimismRpcBlockOverrides,
34
+ OptimismRpcDepositTransaction,
35
+ OptimismRpcTransaction,
36
+ OptimismRpcTransactionReceipt,
37
+ OptimismRpcTransactionReceiptOverrides,
38
+ OptimismTransaction,
39
+ OptimismTransactionReceipt,
40
+ OptimismTransactionReceiptOverrides,
41
+ } from './optimism/types.js'
@@ -278,7 +278,7 @@ export type PublicActions<
278
278
  * })
279
279
  */
280
280
  createContractEventFilter: <
281
- TAbi extends Abi | readonly unknown[],
281
+ const TAbi extends Abi | readonly unknown[],
282
282
  TEventName extends string | undefined,
283
283
  TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined,
284
284
  TStrict extends boolean | undefined = undefined,
@@ -325,8 +325,8 @@ export type PublicActions<
325
325
  * })
326
326
  */
327
327
  createEventFilter: <
328
- TAbiEvent extends AbiEvent | undefined = undefined,
329
- TAbiEvents extends
328
+ const TAbiEvent extends AbiEvent | undefined = undefined,
329
+ const TAbiEvents extends
330
330
  | readonly AbiEvent[]
331
331
  | readonly unknown[]
332
332
  | undefined = TAbiEvent extends AbiEvent ? [TAbiEvent] : undefined,
@@ -406,7 +406,7 @@ export type PublicActions<
406
406
  */
407
407
  estimateContractGas: <
408
408
  TChain extends Chain | undefined,
409
- TAbi extends Abi | readonly unknown[],
409
+ const TAbi extends Abi | readonly unknown[],
410
410
  TFunctionName extends string,
411
411
  >(
412
412
  args: EstimateContractGasParameters<TAbi, TFunctionName, TChain, TAccount>,
@@ -844,7 +844,7 @@ export type PublicActions<
844
844
  */
845
845
  getFilterChanges: <
846
846
  TFilterType extends FilterType,
847
- TAbi extends Abi | readonly unknown[] | undefined,
847
+ const TAbi extends Abi | readonly unknown[] | undefined,
848
848
  TEventName extends string | undefined,
849
849
  TStrict extends boolean | undefined = undefined,
850
850
  TFromBlock extends BlockNumber | BlockTag | undefined = undefined,
@@ -895,7 +895,7 @@ export type PublicActions<
895
895
  * const logs = await client.getFilterLogs({ filter })
896
896
  */
897
897
  getFilterLogs: <
898
- TAbi extends Abi | readonly unknown[] | undefined,
898
+ const TAbi extends Abi | readonly unknown[] | undefined,
899
899
  TEventName extends string | undefined,
900
900
  TStrict extends boolean | undefined = undefined,
901
901
  TFromBlock extends BlockNumber | BlockTag | undefined = undefined,
@@ -951,8 +951,8 @@ export type PublicActions<
951
951
  * const logs = await client.getLogs()
952
952
  */
953
953
  getLogs: <
954
- TAbiEvent extends AbiEvent | undefined = undefined,
955
- TAbiEvents extends
954
+ const TAbiEvent extends AbiEvent | undefined = undefined,
955
+ const TAbiEvents extends
956
956
  | readonly AbiEvent[]
957
957
  | readonly unknown[]
958
958
  | undefined = TAbiEvent extends AbiEvent ? [TAbiEvent] : undefined,
@@ -1170,7 +1170,7 @@ export type PublicActions<
1170
1170
  * // 424122n
1171
1171
  */
1172
1172
  readContract: <
1173
- TAbi extends Abi | readonly unknown[],
1173
+ const TAbi extends Abi | readonly unknown[],
1174
1174
  TFunctionName extends string,
1175
1175
  >(
1176
1176
  args: ReadContractParameters<TAbi, TFunctionName>,
@@ -1206,9 +1206,9 @@ export type PublicActions<
1206
1206
  * })
1207
1207
  */
1208
1208
  simulateContract: <
1209
- TAbi extends Abi | readonly unknown[] = Abi,
1210
- TFunctionName extends string = any,
1211
- TChainOverride extends Chain | undefined = undefined,
1209
+ const TAbi extends Abi | readonly unknown[],
1210
+ TFunctionName extends string,
1211
+ TChainOverride extends Chain | undefined,
1212
1212
  >(
1213
1213
  args: SimulateContractParameters<
1214
1214
  TAbi,
@@ -1383,7 +1383,7 @@ export type PublicActions<
1383
1383
  * })
1384
1384
  */
1385
1385
  watchContractEvent: <
1386
- TAbi extends Abi | readonly unknown[],
1386
+ const TAbi extends Abi | readonly unknown[],
1387
1387
  TEventName extends string,
1388
1388
  TStrict extends boolean | undefined = undefined,
1389
1389
  >(
@@ -1421,8 +1421,8 @@ export type PublicActions<
1421
1421
  * })
1422
1422
  */
1423
1423
  watchEvent: <
1424
- TAbiEvent extends AbiEvent | undefined = undefined,
1425
- TAbiEvents extends
1424
+ const TAbiEvent extends AbiEvent | undefined = undefined,
1425
+ const TAbiEvents extends
1426
1426
  | readonly AbiEvent[]
1427
1427
  | readonly unknown[]
1428
1428
  | undefined = TAbiEvent extends AbiEvent ? [TAbiEvent] : undefined,
@@ -1502,7 +1502,7 @@ export function publicActions<
1502
1502
  getTransactionConfirmations(client, args),
1503
1503
  getTransactionCount: (args) => getTransactionCount(client, args),
1504
1504
  getTransactionReceipt: (args) => getTransactionReceipt(client, args),
1505
- multicall: (args) => multicall(client, args),
1505
+ multicall: (args) => multicall(client, args as any) as any,
1506
1506
  readContract: (args) => readContract(client, args),
1507
1507
  simulateContract: (args) => simulateContract(client, args),
1508
1508
  verifyMessage: (args) => verifyMessage(client, args),
@@ -112,7 +112,7 @@ export type WalletActions<
112
112
  * })
113
113
  */
114
114
  deployContract: <
115
- TAbi extends Abi | readonly unknown[],
115
+ const TAbi extends Abi | readonly unknown[],
116
116
  TChainOverride extends Chain | undefined,
117
117
  >(
118
118
  args: DeployContractParameters<TAbi, TChain, TAccount, TChainOverride>,
@@ -410,7 +410,7 @@ export type WalletActions<
410
410
  * })
411
411
  */
412
412
  signTypedData: <
413
- TTypedData extends TypedData | { [key: string]: unknown },
413
+ const TTypedData extends TypedData | { [key: string]: unknown },
414
414
  TPrimaryType extends string,
415
415
  >(
416
416
  args: SignTypedDataParameters<TTypedData, TPrimaryType, TAccount>,
@@ -509,7 +509,7 @@ export type WalletActions<
509
509
  * const hash = await client.writeContract(request)
510
510
  */
511
511
  writeContract: <
512
- TAbi extends Abi | readonly unknown[],
512
+ const TAbi extends Abi | readonly unknown[],
513
513
  TFunctionName extends string,
514
514
  TChainOverride extends Chain | undefined,
515
515
  >(