viem 2.7.20 → 2.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (826) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/_cjs/accounts/utils/sign.js +1 -0
  3. package/_cjs/accounts/utils/sign.js.map +1 -1
  4. package/_cjs/accounts/utils/signTransaction.js +11 -2
  5. package/_cjs/accounts/utils/signTransaction.js.map +1 -1
  6. package/_cjs/actions/index.js +4 -2
  7. package/_cjs/actions/index.js.map +1 -1
  8. package/_cjs/actions/public/call.js +3 -1
  9. package/_cjs/actions/public/call.js.map +1 -1
  10. package/_cjs/actions/public/estimateGas.js +3 -1
  11. package/_cjs/actions/public/estimateGas.js.map +1 -1
  12. package/_cjs/actions/public/getBlobBaseFee.js +11 -0
  13. package/_cjs/actions/public/getBlobBaseFee.js.map +1 -0
  14. package/_cjs/actions/public/multicall.js +1 -1
  15. package/_cjs/actions/public/multicall.js.map +1 -1
  16. package/_cjs/actions/wallet/prepareTransactionRequest.js +11 -2
  17. package/_cjs/actions/wallet/prepareTransactionRequest.js.map +1 -1
  18. package/_cjs/actions/wallet/sendRawTransaction.js.map +1 -1
  19. package/_cjs/actions/wallet/sendTransaction.js +7 -8
  20. package/_cjs/actions/wallet/sendTransaction.js.map +1 -1
  21. package/_cjs/actions/wallet/signTransaction.js +7 -6
  22. package/_cjs/actions/wallet/signTransaction.js.map +1 -1
  23. package/_cjs/chains/celo/serializers.js +10 -15
  24. package/_cjs/chains/celo/serializers.js.map +1 -1
  25. package/_cjs/chains/definitions/ancient8Sepolia.js +1 -1
  26. package/_cjs/chains/definitions/ancient8Sepolia.js.map +1 -1
  27. package/_cjs/chains/definitions/anvil.js +1 -1
  28. package/_cjs/chains/definitions/anvil.js.map +1 -1
  29. package/_cjs/chains/definitions/arbitrum.js +1 -1
  30. package/_cjs/chains/definitions/arbitrum.js.map +1 -1
  31. package/_cjs/chains/definitions/arbitrumGoerli.js +1 -1
  32. package/_cjs/chains/definitions/arbitrumGoerli.js.map +1 -1
  33. package/_cjs/chains/definitions/arbitrumNova.js +1 -1
  34. package/_cjs/chains/definitions/arbitrumNova.js.map +1 -1
  35. package/_cjs/chains/definitions/arbitrumSepolia.js +1 -1
  36. package/_cjs/chains/definitions/arbitrumSepolia.js.map +1 -1
  37. package/_cjs/chains/definitions/astarZkEVM.js +1 -1
  38. package/_cjs/chains/definitions/astarZkEVM.js.map +1 -1
  39. package/_cjs/chains/definitions/astarZkatana.js +1 -1
  40. package/_cjs/chains/definitions/astarZkatana.js.map +1 -1
  41. package/_cjs/chains/definitions/astarZkyoto.js +1 -1
  42. package/_cjs/chains/definitions/astarZkyoto.js.map +1 -1
  43. package/_cjs/chains/definitions/avalanche.js +1 -1
  44. package/_cjs/chains/definitions/avalanche.js.map +1 -1
  45. package/_cjs/chains/definitions/avalancheFuji.js +1 -1
  46. package/_cjs/chains/definitions/avalancheFuji.js.map +1 -1
  47. package/_cjs/chains/definitions/baseSepolia.js +1 -1
  48. package/_cjs/chains/definitions/baseSepolia.js.map +1 -1
  49. package/_cjs/chains/definitions/blastSepolia.js +2 -2
  50. package/_cjs/chains/definitions/blastSepolia.js.map +1 -1
  51. package/_cjs/chains/definitions/canto.js +1 -1
  52. package/_cjs/chains/definitions/canto.js.map +1 -1
  53. package/_cjs/chains/definitions/celo.js +1 -1
  54. package/_cjs/chains/definitions/celo.js.map +1 -1
  55. package/_cjs/chains/definitions/celoAlfajores.js +1 -1
  56. package/_cjs/chains/definitions/celoAlfajores.js.map +1 -1
  57. package/_cjs/chains/definitions/chiliz.js +1 -1
  58. package/_cjs/chains/definitions/chiliz.js.map +1 -1
  59. package/_cjs/chains/definitions/confluxESpace.js +1 -1
  60. package/_cjs/chains/definitions/confluxESpace.js.map +1 -1
  61. package/_cjs/chains/definitions/coreDao.js +1 -1
  62. package/_cjs/chains/definitions/coreDao.js.map +1 -1
  63. package/_cjs/chains/definitions/crossbell.js +2 -2
  64. package/_cjs/chains/definitions/crossbell.js.map +1 -1
  65. package/_cjs/chains/definitions/dfk.js +1 -1
  66. package/_cjs/chains/definitions/dfk.js.map +1 -1
  67. package/_cjs/chains/definitions/dogechain.js +1 -1
  68. package/_cjs/chains/definitions/dogechain.js.map +1 -1
  69. package/_cjs/chains/definitions/eon.js +1 -1
  70. package/_cjs/chains/definitions/eon.js.map +1 -1
  71. package/_cjs/chains/definitions/evmos.js +1 -1
  72. package/_cjs/chains/definitions/evmos.js.map +1 -1
  73. package/_cjs/chains/definitions/evmosTestnet.js +1 -1
  74. package/_cjs/chains/definitions/evmosTestnet.js.map +1 -1
  75. package/_cjs/chains/definitions/fantomSonicTestnet.js +1 -1
  76. package/_cjs/chains/definitions/fantomSonicTestnet.js.map +1 -1
  77. package/_cjs/chains/definitions/fantomTestnet.js +1 -1
  78. package/_cjs/chains/definitions/fantomTestnet.js.map +1 -1
  79. package/_cjs/chains/definitions/filecoinCalibration.js +1 -1
  80. package/_cjs/chains/definitions/filecoinCalibration.js.map +1 -1
  81. package/_cjs/chains/definitions/filecoinHyperspace.js +1 -1
  82. package/_cjs/chains/definitions/filecoinHyperspace.js.map +1 -1
  83. package/_cjs/chains/definitions/foundry.js +1 -1
  84. package/_cjs/chains/definitions/foundry.js.map +1 -1
  85. package/_cjs/chains/definitions/gnosisChiado.js +1 -1
  86. package/_cjs/chains/definitions/gnosisChiado.js.map +1 -1
  87. package/_cjs/chains/definitions/gobi.js +1 -1
  88. package/_cjs/chains/definitions/gobi.js.map +1 -1
  89. package/_cjs/chains/definitions/goerli.js +1 -1
  90. package/_cjs/chains/definitions/goerli.js.map +1 -1
  91. package/_cjs/chains/definitions/hardhat.js +1 -1
  92. package/_cjs/chains/definitions/hardhat.js.map +1 -1
  93. package/_cjs/chains/definitions/harmonyOne.js +1 -1
  94. package/_cjs/chains/definitions/harmonyOne.js.map +1 -1
  95. package/_cjs/chains/definitions/iotex.js +1 -1
  96. package/_cjs/chains/definitions/iotex.js.map +1 -1
  97. package/_cjs/chains/definitions/iotexTestnet.js +1 -1
  98. package/_cjs/chains/definitions/iotexTestnet.js.map +1 -1
  99. package/_cjs/chains/definitions/klaytn.js +1 -1
  100. package/_cjs/chains/definitions/klaytn.js.map +1 -1
  101. package/_cjs/chains/definitions/klaytnBaobab.js +1 -1
  102. package/_cjs/chains/definitions/klaytnBaobab.js.map +1 -1
  103. package/_cjs/chains/definitions/lightlinkPegasus.js +1 -1
  104. package/_cjs/chains/definitions/lightlinkPegasus.js.map +1 -1
  105. package/_cjs/chains/definitions/lightlinkPhoenix.js +1 -1
  106. package/_cjs/chains/definitions/lightlinkPhoenix.js.map +1 -1
  107. package/_cjs/chains/definitions/linea.js +1 -1
  108. package/_cjs/chains/definitions/linea.js.map +1 -1
  109. package/_cjs/chains/definitions/lineaTestnet.js +1 -1
  110. package/_cjs/chains/definitions/lineaTestnet.js.map +1 -1
  111. package/_cjs/chains/definitions/liskSepolia.js +1 -1
  112. package/_cjs/chains/definitions/liskSepolia.js.map +1 -1
  113. package/_cjs/chains/definitions/localhost.js +1 -1
  114. package/_cjs/chains/definitions/localhost.js.map +1 -1
  115. package/_cjs/chains/definitions/mainnet.js +2 -2
  116. package/_cjs/chains/definitions/mainnet.js.map +1 -1
  117. package/_cjs/chains/definitions/mantaTestnet.js +1 -1
  118. package/_cjs/chains/definitions/mantaTestnet.js.map +1 -1
  119. package/_cjs/chains/definitions/metachainIstanbul.js +1 -1
  120. package/_cjs/chains/definitions/metachainIstanbul.js.map +1 -1
  121. package/_cjs/chains/definitions/metis.js +1 -1
  122. package/_cjs/chains/definitions/metis.js.map +1 -1
  123. package/_cjs/chains/definitions/neonDevnet.js +1 -1
  124. package/_cjs/chains/definitions/neonDevnet.js.map +1 -1
  125. package/_cjs/chains/definitions/neonMainnet.js +1 -1
  126. package/_cjs/chains/definitions/neonMainnet.js.map +1 -1
  127. package/_cjs/chains/definitions/optimismSepolia.js +1 -1
  128. package/_cjs/chains/definitions/optimismSepolia.js.map +1 -1
  129. package/_cjs/chains/definitions/palm.js +1 -1
  130. package/_cjs/chains/definitions/palm.js.map +1 -1
  131. package/_cjs/chains/definitions/palmTestnet.js +1 -1
  132. package/_cjs/chains/definitions/palmTestnet.js.map +1 -1
  133. package/_cjs/chains/definitions/pgnTestnet.js +1 -1
  134. package/_cjs/chains/definitions/pgnTestnet.js.map +1 -1
  135. package/_cjs/chains/definitions/plumeTestnet.js +30 -0
  136. package/_cjs/chains/definitions/plumeTestnet.js.map +1 -0
  137. package/_cjs/chains/definitions/polygonAmoy.js +1 -1
  138. package/_cjs/chains/definitions/polygonAmoy.js.map +1 -1
  139. package/_cjs/chains/definitions/polygonMumbai.js +1 -1
  140. package/_cjs/chains/definitions/polygonMumbai.js.map +1 -1
  141. package/_cjs/chains/definitions/scroll.js +1 -1
  142. package/_cjs/chains/definitions/scroll.js.map +1 -1
  143. package/_cjs/chains/definitions/scrollSepolia.js +1 -1
  144. package/_cjs/chains/definitions/scrollSepolia.js.map +1 -1
  145. package/_cjs/chains/definitions/scrollTestnet.js +1 -1
  146. package/_cjs/chains/definitions/scrollTestnet.js.map +1 -1
  147. package/_cjs/chains/definitions/sepolia.js +2 -2
  148. package/_cjs/chains/definitions/sepolia.js.map +1 -1
  149. package/_cjs/chains/definitions/skale/brawl.js +1 -1
  150. package/_cjs/chains/definitions/skale/brawl.js.map +1 -1
  151. package/_cjs/chains/definitions/skale/calypso.js +1 -1
  152. package/_cjs/chains/definitions/skale/calypso.js.map +1 -1
  153. package/_cjs/chains/definitions/skale/calypsoTestnet.js +2 -2
  154. package/_cjs/chains/definitions/skale/calypsoTestnet.js.map +1 -1
  155. package/_cjs/chains/definitions/skale/cryptoBlades.js +1 -1
  156. package/_cjs/chains/definitions/skale/cryptoBlades.js.map +1 -1
  157. package/_cjs/chains/definitions/skale/cryptoColosseum.js +1 -1
  158. package/_cjs/chains/definitions/skale/cryptoColosseum.js.map +1 -1
  159. package/_cjs/chains/definitions/skale/europa.js +1 -1
  160. package/_cjs/chains/definitions/skale/europa.js.map +1 -1
  161. package/_cjs/chains/definitions/skale/europaTestnet.js +2 -2
  162. package/_cjs/chains/definitions/skale/europaTestnet.js.map +1 -1
  163. package/_cjs/chains/definitions/skale/exorde.js +1 -1
  164. package/_cjs/chains/definitions/skale/exorde.js.map +1 -1
  165. package/_cjs/chains/definitions/skale/humanProtocol.js +1 -1
  166. package/_cjs/chains/definitions/skale/humanProtocol.js.map +1 -1
  167. package/_cjs/chains/definitions/skale/nebula.js +1 -1
  168. package/_cjs/chains/definitions/skale/nebula.js.map +1 -1
  169. package/_cjs/chains/definitions/skale/nebulaTestnet.js +2 -2
  170. package/_cjs/chains/definitions/skale/nebulaTestnet.js.map +1 -1
  171. package/_cjs/chains/definitions/skale/razor.js +1 -1
  172. package/_cjs/chains/definitions/skale/razor.js.map +1 -1
  173. package/_cjs/chains/definitions/skale/titan.js +1 -1
  174. package/_cjs/chains/definitions/skale/titan.js.map +1 -1
  175. package/_cjs/chains/definitions/skale/titanTestnet.js +2 -2
  176. package/_cjs/chains/definitions/skale/titanTestnet.js.map +1 -1
  177. package/_cjs/chains/definitions/spicy.js +1 -1
  178. package/_cjs/chains/definitions/spicy.js.map +1 -1
  179. package/_cjs/chains/definitions/zhejiang.js +1 -1
  180. package/_cjs/chains/definitions/zhejiang.js.map +1 -1
  181. package/_cjs/chains/definitions/zoraSepolia.js +1 -1
  182. package/_cjs/chains/definitions/zoraSepolia.js.map +1 -1
  183. package/_cjs/chains/index.js +5 -3
  184. package/_cjs/chains/index.js.map +1 -1
  185. package/_cjs/chains/opStack/actions/buildProveWithdrawal.js +22 -2
  186. package/_cjs/chains/opStack/actions/buildProveWithdrawal.js.map +1 -1
  187. package/_cjs/chains/opStack/actions/estimateL1Fee.js +2 -18
  188. package/_cjs/chains/opStack/actions/estimateL1Fee.js.map +1 -1
  189. package/_cjs/chains/opStack/actions/estimateL1Gas.js +2 -18
  190. package/_cjs/chains/opStack/actions/estimateL1Gas.js.map +1 -1
  191. package/_cjs/chains/opStack/actions/finalizeWithdrawal.js +1 -1
  192. package/_cjs/chains/opStack/actions/finalizeWithdrawal.js.map +1 -1
  193. package/_cjs/chains/opStack/actions/proveWithdrawal.js +1 -1
  194. package/_cjs/chains/opStack/actions/proveWithdrawal.js.map +1 -1
  195. package/_cjs/chains/opStack/serializers.js +3 -3
  196. package/_cjs/chains/opStack/serializers.js.map +1 -1
  197. package/_cjs/chains/zksync/actions/sendTransaction.js.map +1 -1
  198. package/_cjs/chains/zksync/actions/signEip712Transaction.js.map +1 -1
  199. package/_cjs/chains/zksync/serializers.js +6 -6
  200. package/_cjs/chains/zksync/serializers.js.map +1 -1
  201. package/_cjs/clients/createClient.js +1 -1
  202. package/_cjs/clients/createClient.js.map +1 -1
  203. package/_cjs/clients/decorators/public.js.map +1 -1
  204. package/_cjs/clients/decorators/wallet.js.map +1 -1
  205. package/_cjs/clients/transports/fallback.js +2 -2
  206. package/_cjs/clients/transports/fallback.js.map +1 -1
  207. package/_cjs/clients/transports/http.js +1 -1
  208. package/_cjs/clients/transports/http.js.map +1 -1
  209. package/_cjs/clients/transports/ipc.js +1 -1
  210. package/_cjs/clients/transports/ipc.js.map +1 -1
  211. package/_cjs/clients/transports/webSocket.js +1 -1
  212. package/_cjs/clients/transports/webSocket.js.map +1 -1
  213. package/_cjs/constants/blob.js +11 -0
  214. package/_cjs/constants/blob.js.map +1 -0
  215. package/_cjs/constants/kzg.js +7 -0
  216. package/_cjs/constants/kzg.js.map +1 -0
  217. package/_cjs/errors/blob.js +63 -0
  218. package/_cjs/errors/blob.js.map +1 -0
  219. package/_cjs/errors/transaction.js +1 -0
  220. package/_cjs/errors/transaction.js.map +1 -1
  221. package/_cjs/errors/version.js +1 -1
  222. package/_cjs/errors/version.js.map +1 -1
  223. package/_cjs/index.js +22 -2
  224. package/_cjs/index.js.map +1 -1
  225. package/_cjs/node/index.js +3 -1
  226. package/_cjs/node/index.js.map +1 -1
  227. package/_cjs/node/trustedSetups.js +7 -0
  228. package/_cjs/node/trustedSetups.js.map +1 -0
  229. package/_cjs/types/eip4844.js +3 -0
  230. package/_cjs/types/eip4844.js.map +1 -0
  231. package/_cjs/types/kzg.js +3 -0
  232. package/_cjs/types/kzg.js.map +1 -0
  233. package/_cjs/utils/abi/encodeAbiParameters.js +1 -1
  234. package/_cjs/utils/abi/encodeAbiParameters.js.map +1 -1
  235. package/_cjs/utils/blob/blobsToCommitments.js +20 -0
  236. package/_cjs/utils/blob/blobsToCommitments.js.map +1 -0
  237. package/_cjs/utils/blob/blobsToProofs.js +26 -0
  238. package/_cjs/utils/blob/blobsToProofs.js.map +1 -0
  239. package/_cjs/utils/blob/commitmentToVersionedHash.js +14 -0
  240. package/_cjs/utils/blob/commitmentToVersionedHash.js.map +1 -0
  241. package/_cjs/utils/blob/commitmentsToVersionedHashes.js +19 -0
  242. package/_cjs/utils/blob/commitmentsToVersionedHashes.js.map +1 -0
  243. package/_cjs/utils/blob/fromBlobs.js +36 -0
  244. package/_cjs/utils/blob/fromBlobs.js.map +1 -0
  245. package/_cjs/utils/blob/sidecarsToVersionedHashes.js +19 -0
  246. package/_cjs/utils/blob/sidecarsToVersionedHashes.js.map +1 -0
  247. package/_cjs/utils/blob/toBlobSidecars.js +22 -0
  248. package/_cjs/utils/blob/toBlobSidecars.js.map +1 -0
  249. package/_cjs/utils/blob/toBlobs.js +48 -0
  250. package/_cjs/utils/blob/toBlobs.js.map +1 -0
  251. package/_cjs/utils/cursor.js +1 -1
  252. package/_cjs/utils/cursor.js.map +1 -1
  253. package/_cjs/utils/encoding/toRlp.js.map +1 -1
  254. package/_cjs/utils/formatters/transaction.js.map +1 -1
  255. package/_cjs/utils/formatters/transactionRequest.js +22 -25
  256. package/_cjs/utils/formatters/transactionRequest.js.map +1 -1
  257. package/_cjs/utils/kzg/defineKzg.js +11 -0
  258. package/_cjs/utils/kzg/defineKzg.js.map +1 -0
  259. package/_cjs/utils/kzg/setupKzg.js +17 -0
  260. package/_cjs/utils/kzg/setupKzg.js.map +1 -0
  261. package/_cjs/utils/rpc/compat.js +1 -1
  262. package/_cjs/utils/rpc/compat.js.map +1 -1
  263. package/_cjs/utils/rpc/http.js +1 -1
  264. package/_cjs/utils/rpc/http.js.map +1 -1
  265. package/_cjs/utils/rpc/socket.js +1 -1
  266. package/_cjs/utils/rpc/socket.js.map +1 -1
  267. package/_cjs/utils/signature/compactSignatureToSignature.js +3 -3
  268. package/_cjs/utils/signature/compactSignatureToSignature.js.map +1 -1
  269. package/_cjs/utils/signature/hexToSignature.js +6 -1
  270. package/_cjs/utils/signature/hexToSignature.js.map +1 -1
  271. package/_cjs/utils/signature/signatureToCompactSignature.js +3 -3
  272. package/_cjs/utils/signature/signatureToCompactSignature.js.map +1 -1
  273. package/_cjs/utils/signature/signatureToHex.js +9 -3
  274. package/_cjs/utils/signature/signatureToHex.js.map +1 -1
  275. package/_cjs/utils/transaction/assertTransaction.js +26 -1
  276. package/_cjs/utils/transaction/assertTransaction.js.map +1 -1
  277. package/_cjs/utils/transaction/getSerializedTransactionType.js +2 -0
  278. package/_cjs/utils/transaction/getSerializedTransactionType.js.map +1 -1
  279. package/_cjs/utils/transaction/getTransactionType.js +7 -1
  280. package/_cjs/utils/transaction/getTransactionType.js.map +1 -1
  281. package/_cjs/utils/transaction/parseTransaction.js +73 -0
  282. package/_cjs/utils/transaction/parseTransaction.js.map +1 -1
  283. package/_cjs/utils/transaction/serializeAccessList.js.map +1 -1
  284. package/_cjs/utils/transaction/serializeTransaction.js +84 -21
  285. package/_cjs/utils/transaction/serializeTransaction.js.map +1 -1
  286. package/_esm/accounts/utils/sign.js +1 -0
  287. package/_esm/accounts/utils/sign.js.map +1 -1
  288. package/_esm/accounts/utils/signTransaction.js +13 -2
  289. package/_esm/accounts/utils/signTransaction.js.map +1 -1
  290. package/_esm/actions/index.js +1 -0
  291. package/_esm/actions/index.js.map +1 -1
  292. package/_esm/actions/public/call.js +3 -1
  293. package/_esm/actions/public/call.js.map +1 -1
  294. package/_esm/actions/public/estimateGas.js +3 -1
  295. package/_esm/actions/public/estimateGas.js.map +1 -1
  296. package/_esm/actions/public/getBlobBaseFee.js +27 -0
  297. package/_esm/actions/public/getBlobBaseFee.js.map +1 -0
  298. package/_esm/actions/public/multicall.js +1 -1
  299. package/_esm/actions/public/multicall.js.map +1 -1
  300. package/_esm/actions/wallet/prepareTransactionRequest.js +12 -2
  301. package/_esm/actions/wallet/prepareTransactionRequest.js.map +1 -1
  302. package/_esm/actions/wallet/sendRawTransaction.js.map +1 -1
  303. package/_esm/actions/wallet/sendTransaction.js +7 -8
  304. package/_esm/actions/wallet/sendTransaction.js.map +1 -1
  305. package/_esm/actions/wallet/signTransaction.js +6 -5
  306. package/_esm/actions/wallet/signTransaction.js.map +1 -1
  307. package/_esm/chains/celo/serializers.js +10 -17
  308. package/_esm/chains/celo/serializers.js.map +1 -1
  309. package/_esm/chains/definitions/ancient8Sepolia.js +1 -1
  310. package/_esm/chains/definitions/ancient8Sepolia.js.map +1 -1
  311. package/_esm/chains/definitions/anvil.js +1 -1
  312. package/_esm/chains/definitions/anvil.js.map +1 -1
  313. package/_esm/chains/definitions/arbitrum.js +1 -1
  314. package/_esm/chains/definitions/arbitrum.js.map +1 -1
  315. package/_esm/chains/definitions/arbitrumGoerli.js +1 -1
  316. package/_esm/chains/definitions/arbitrumGoerli.js.map +1 -1
  317. package/_esm/chains/definitions/arbitrumNova.js +1 -1
  318. package/_esm/chains/definitions/arbitrumNova.js.map +1 -1
  319. package/_esm/chains/definitions/arbitrumSepolia.js +1 -1
  320. package/_esm/chains/definitions/arbitrumSepolia.js.map +1 -1
  321. package/_esm/chains/definitions/astarZkEVM.js +1 -1
  322. package/_esm/chains/definitions/astarZkEVM.js.map +1 -1
  323. package/_esm/chains/definitions/astarZkatana.js +1 -1
  324. package/_esm/chains/definitions/astarZkatana.js.map +1 -1
  325. package/_esm/chains/definitions/astarZkyoto.js +1 -1
  326. package/_esm/chains/definitions/astarZkyoto.js.map +1 -1
  327. package/_esm/chains/definitions/avalanche.js +1 -1
  328. package/_esm/chains/definitions/avalanche.js.map +1 -1
  329. package/_esm/chains/definitions/avalancheFuji.js +1 -1
  330. package/_esm/chains/definitions/avalancheFuji.js.map +1 -1
  331. package/_esm/chains/definitions/baseSepolia.js +1 -1
  332. package/_esm/chains/definitions/baseSepolia.js.map +1 -1
  333. package/_esm/chains/definitions/blastSepolia.js +2 -2
  334. package/_esm/chains/definitions/blastSepolia.js.map +1 -1
  335. package/_esm/chains/definitions/canto.js +1 -1
  336. package/_esm/chains/definitions/canto.js.map +1 -1
  337. package/_esm/chains/definitions/celo.js +1 -1
  338. package/_esm/chains/definitions/celo.js.map +1 -1
  339. package/_esm/chains/definitions/celoAlfajores.js +1 -1
  340. package/_esm/chains/definitions/celoAlfajores.js.map +1 -1
  341. package/_esm/chains/definitions/chiliz.js +1 -1
  342. package/_esm/chains/definitions/chiliz.js.map +1 -1
  343. package/_esm/chains/definitions/confluxESpace.js +1 -1
  344. package/_esm/chains/definitions/confluxESpace.js.map +1 -1
  345. package/_esm/chains/definitions/coreDao.js +1 -1
  346. package/_esm/chains/definitions/coreDao.js.map +1 -1
  347. package/_esm/chains/definitions/crossbell.js +2 -2
  348. package/_esm/chains/definitions/crossbell.js.map +1 -1
  349. package/_esm/chains/definitions/dfk.js +1 -1
  350. package/_esm/chains/definitions/dfk.js.map +1 -1
  351. package/_esm/chains/definitions/dogechain.js +1 -1
  352. package/_esm/chains/definitions/dogechain.js.map +1 -1
  353. package/_esm/chains/definitions/eon.js +1 -1
  354. package/_esm/chains/definitions/eon.js.map +1 -1
  355. package/_esm/chains/definitions/evmos.js +1 -1
  356. package/_esm/chains/definitions/evmos.js.map +1 -1
  357. package/_esm/chains/definitions/evmosTestnet.js +1 -1
  358. package/_esm/chains/definitions/evmosTestnet.js.map +1 -1
  359. package/_esm/chains/definitions/fantomSonicTestnet.js +1 -1
  360. package/_esm/chains/definitions/fantomSonicTestnet.js.map +1 -1
  361. package/_esm/chains/definitions/fantomTestnet.js +1 -1
  362. package/_esm/chains/definitions/fantomTestnet.js.map +1 -1
  363. package/_esm/chains/definitions/filecoinCalibration.js +1 -1
  364. package/_esm/chains/definitions/filecoinCalibration.js.map +1 -1
  365. package/_esm/chains/definitions/filecoinHyperspace.js +1 -1
  366. package/_esm/chains/definitions/filecoinHyperspace.js.map +1 -1
  367. package/_esm/chains/definitions/foundry.js +1 -1
  368. package/_esm/chains/definitions/foundry.js.map +1 -1
  369. package/_esm/chains/definitions/gnosisChiado.js +1 -1
  370. package/_esm/chains/definitions/gnosisChiado.js.map +1 -1
  371. package/_esm/chains/definitions/gobi.js +1 -1
  372. package/_esm/chains/definitions/gobi.js.map +1 -1
  373. package/_esm/chains/definitions/goerli.js +1 -1
  374. package/_esm/chains/definitions/goerli.js.map +1 -1
  375. package/_esm/chains/definitions/hardhat.js +1 -1
  376. package/_esm/chains/definitions/hardhat.js.map +1 -1
  377. package/_esm/chains/definitions/harmonyOne.js +1 -1
  378. package/_esm/chains/definitions/harmonyOne.js.map +1 -1
  379. package/_esm/chains/definitions/iotex.js +1 -1
  380. package/_esm/chains/definitions/iotex.js.map +1 -1
  381. package/_esm/chains/definitions/iotexTestnet.js +1 -1
  382. package/_esm/chains/definitions/iotexTestnet.js.map +1 -1
  383. package/_esm/chains/definitions/klaytn.js +1 -1
  384. package/_esm/chains/definitions/klaytn.js.map +1 -1
  385. package/_esm/chains/definitions/klaytnBaobab.js +1 -1
  386. package/_esm/chains/definitions/klaytnBaobab.js.map +1 -1
  387. package/_esm/chains/definitions/lightlinkPegasus.js +1 -1
  388. package/_esm/chains/definitions/lightlinkPegasus.js.map +1 -1
  389. package/_esm/chains/definitions/lightlinkPhoenix.js +1 -1
  390. package/_esm/chains/definitions/lightlinkPhoenix.js.map +1 -1
  391. package/_esm/chains/definitions/linea.js +1 -1
  392. package/_esm/chains/definitions/linea.js.map +1 -1
  393. package/_esm/chains/definitions/lineaTestnet.js +1 -1
  394. package/_esm/chains/definitions/lineaTestnet.js.map +1 -1
  395. package/_esm/chains/definitions/liskSepolia.js +1 -1
  396. package/_esm/chains/definitions/liskSepolia.js.map +1 -1
  397. package/_esm/chains/definitions/localhost.js +1 -1
  398. package/_esm/chains/definitions/localhost.js.map +1 -1
  399. package/_esm/chains/definitions/mainnet.js +2 -2
  400. package/_esm/chains/definitions/mainnet.js.map +1 -1
  401. package/_esm/chains/definitions/mantaTestnet.js +1 -1
  402. package/_esm/chains/definitions/mantaTestnet.js.map +1 -1
  403. package/_esm/chains/definitions/metachainIstanbul.js +1 -1
  404. package/_esm/chains/definitions/metachainIstanbul.js.map +1 -1
  405. package/_esm/chains/definitions/metis.js +1 -1
  406. package/_esm/chains/definitions/metis.js.map +1 -1
  407. package/_esm/chains/definitions/neonDevnet.js +1 -1
  408. package/_esm/chains/definitions/neonDevnet.js.map +1 -1
  409. package/_esm/chains/definitions/neonMainnet.js +1 -1
  410. package/_esm/chains/definitions/neonMainnet.js.map +1 -1
  411. package/_esm/chains/definitions/optimismSepolia.js +1 -1
  412. package/_esm/chains/definitions/optimismSepolia.js.map +1 -1
  413. package/_esm/chains/definitions/palm.js +1 -1
  414. package/_esm/chains/definitions/palm.js.map +1 -1
  415. package/_esm/chains/definitions/palmTestnet.js +1 -1
  416. package/_esm/chains/definitions/palmTestnet.js.map +1 -1
  417. package/_esm/chains/definitions/pgnTestnet.js +1 -1
  418. package/_esm/chains/definitions/pgnTestnet.js.map +1 -1
  419. package/_esm/chains/definitions/plumeTestnet.js +27 -0
  420. package/_esm/chains/definitions/plumeTestnet.js.map +1 -0
  421. package/_esm/chains/definitions/polygonAmoy.js +1 -1
  422. package/_esm/chains/definitions/polygonAmoy.js.map +1 -1
  423. package/_esm/chains/definitions/polygonMumbai.js +1 -1
  424. package/_esm/chains/definitions/polygonMumbai.js.map +1 -1
  425. package/_esm/chains/definitions/scroll.js +1 -1
  426. package/_esm/chains/definitions/scroll.js.map +1 -1
  427. package/_esm/chains/definitions/scrollSepolia.js +1 -1
  428. package/_esm/chains/definitions/scrollSepolia.js.map +1 -1
  429. package/_esm/chains/definitions/scrollTestnet.js +1 -1
  430. package/_esm/chains/definitions/scrollTestnet.js.map +1 -1
  431. package/_esm/chains/definitions/sepolia.js +2 -2
  432. package/_esm/chains/definitions/sepolia.js.map +1 -1
  433. package/_esm/chains/definitions/skale/brawl.js +1 -1
  434. package/_esm/chains/definitions/skale/brawl.js.map +1 -1
  435. package/_esm/chains/definitions/skale/calypso.js +1 -1
  436. package/_esm/chains/definitions/skale/calypso.js.map +1 -1
  437. package/_esm/chains/definitions/skale/calypsoTestnet.js +2 -2
  438. package/_esm/chains/definitions/skale/calypsoTestnet.js.map +1 -1
  439. package/_esm/chains/definitions/skale/cryptoBlades.js +1 -1
  440. package/_esm/chains/definitions/skale/cryptoBlades.js.map +1 -1
  441. package/_esm/chains/definitions/skale/cryptoColosseum.js +1 -1
  442. package/_esm/chains/definitions/skale/cryptoColosseum.js.map +1 -1
  443. package/_esm/chains/definitions/skale/europa.js +1 -1
  444. package/_esm/chains/definitions/skale/europa.js.map +1 -1
  445. package/_esm/chains/definitions/skale/europaTestnet.js +2 -2
  446. package/_esm/chains/definitions/skale/europaTestnet.js.map +1 -1
  447. package/_esm/chains/definitions/skale/exorde.js +1 -1
  448. package/_esm/chains/definitions/skale/exorde.js.map +1 -1
  449. package/_esm/chains/definitions/skale/humanProtocol.js +1 -1
  450. package/_esm/chains/definitions/skale/humanProtocol.js.map +1 -1
  451. package/_esm/chains/definitions/skale/nebula.js +1 -1
  452. package/_esm/chains/definitions/skale/nebula.js.map +1 -1
  453. package/_esm/chains/definitions/skale/nebulaTestnet.js +2 -2
  454. package/_esm/chains/definitions/skale/nebulaTestnet.js.map +1 -1
  455. package/_esm/chains/definitions/skale/razor.js +1 -1
  456. package/_esm/chains/definitions/skale/razor.js.map +1 -1
  457. package/_esm/chains/definitions/skale/titan.js +1 -1
  458. package/_esm/chains/definitions/skale/titan.js.map +1 -1
  459. package/_esm/chains/definitions/skale/titanTestnet.js +2 -2
  460. package/_esm/chains/definitions/skale/titanTestnet.js.map +1 -1
  461. package/_esm/chains/definitions/spicy.js +1 -1
  462. package/_esm/chains/definitions/spicy.js.map +1 -1
  463. package/_esm/chains/definitions/zhejiang.js +1 -1
  464. package/_esm/chains/definitions/zhejiang.js.map +1 -1
  465. package/_esm/chains/definitions/zoraSepolia.js +1 -1
  466. package/_esm/chains/definitions/zoraSepolia.js.map +1 -1
  467. package/_esm/chains/index.js +1 -0
  468. package/_esm/chains/index.js.map +1 -1
  469. package/_esm/chains/opStack/actions/buildProveWithdrawal.js +29 -1
  470. package/_esm/chains/opStack/actions/buildProveWithdrawal.js.map +1 -1
  471. package/_esm/chains/opStack/actions/estimateL1Fee.js +2 -18
  472. package/_esm/chains/opStack/actions/estimateL1Fee.js.map +1 -1
  473. package/_esm/chains/opStack/actions/estimateL1Gas.js +2 -18
  474. package/_esm/chains/opStack/actions/estimateL1Gas.js.map +1 -1
  475. package/_esm/chains/opStack/actions/finalizeWithdrawal.js +1 -1
  476. package/_esm/chains/opStack/actions/finalizeWithdrawal.js.map +1 -1
  477. package/_esm/chains/opStack/actions/proveWithdrawal.js +1 -1
  478. package/_esm/chains/opStack/actions/proveWithdrawal.js.map +1 -1
  479. package/_esm/chains/opStack/serializers.js +2 -2
  480. package/_esm/chains/opStack/serializers.js.map +1 -1
  481. package/_esm/chains/zksync/actions/sendTransaction.js.map +1 -1
  482. package/_esm/chains/zksync/actions/signEip712Transaction.js.map +1 -1
  483. package/_esm/chains/zksync/serializers.js +6 -6
  484. package/_esm/chains/zksync/serializers.js.map +1 -1
  485. package/_esm/clients/createClient.js +1 -1
  486. package/_esm/clients/createClient.js.map +1 -1
  487. package/_esm/clients/decorators/public.js.map +1 -1
  488. package/_esm/clients/decorators/wallet.js.map +1 -1
  489. package/_esm/clients/transports/fallback.js +2 -2
  490. package/_esm/clients/transports/fallback.js.map +1 -1
  491. package/_esm/clients/transports/http.js +1 -1
  492. package/_esm/clients/transports/http.js.map +1 -1
  493. package/_esm/clients/transports/ipc.js +1 -1
  494. package/_esm/clients/transports/ipc.js.map +1 -1
  495. package/_esm/clients/transports/webSocket.js +1 -1
  496. package/_esm/clients/transports/webSocket.js.map +1 -1
  497. package/_esm/constants/blob.js +16 -0
  498. package/_esm/constants/blob.js.map +1 -0
  499. package/_esm/constants/kzg.js +7 -0
  500. package/_esm/constants/kzg.js.map +1 -0
  501. package/_esm/errors/blob.js +56 -0
  502. package/_esm/errors/blob.js.map +1 -0
  503. package/_esm/errors/transaction.js +1 -0
  504. package/_esm/errors/transaction.js.map +1 -1
  505. package/_esm/errors/version.js +1 -1
  506. package/_esm/errors/version.js.map +1 -1
  507. package/_esm/index.js +10 -0
  508. package/_esm/index.js.map +1 -1
  509. package/_esm/node/index.js +1 -0
  510. package/_esm/node/index.js.map +1 -1
  511. package/_esm/node/trustedSetups.js +4 -0
  512. package/_esm/node/trustedSetups.js.map +1 -0
  513. package/_esm/types/eip4844.js +2 -0
  514. package/_esm/types/eip4844.js.map +1 -0
  515. package/_esm/types/kzg.js +2 -0
  516. package/_esm/types/kzg.js.map +1 -0
  517. package/_esm/utils/abi/encodeAbiParameters.js +1 -1
  518. package/_esm/utils/abi/encodeAbiParameters.js.map +1 -1
  519. package/_esm/utils/blob/blobsToCommitments.js +28 -0
  520. package/_esm/utils/blob/blobsToCommitments.js.map +1 -0
  521. package/_esm/utils/blob/blobsToProofs.js +38 -0
  522. package/_esm/utils/blob/blobsToProofs.js.map +1 -0
  523. package/_esm/utils/blob/commitmentToVersionedHash.js +27 -0
  524. package/_esm/utils/blob/commitmentToVersionedHash.js.map +1 -0
  525. package/_esm/utils/blob/commitmentsToVersionedHashes.js +32 -0
  526. package/_esm/utils/blob/commitmentsToVersionedHashes.js.map +1 -0
  527. package/_esm/utils/blob/fromBlobs.js +33 -0
  528. package/_esm/utils/blob/fromBlobs.js.map +1 -0
  529. package/_esm/utils/blob/sidecarsToVersionedHashes.js +26 -0
  530. package/_esm/utils/blob/sidecarsToVersionedHashes.js.map +1 -0
  531. package/_esm/utils/blob/toBlobSidecars.js +45 -0
  532. package/_esm/utils/blob/toBlobSidecars.js.map +1 -0
  533. package/_esm/utils/blob/toBlobs.js +58 -0
  534. package/_esm/utils/blob/toBlobs.js.map +1 -0
  535. package/_esm/utils/cursor.js +1 -1
  536. package/_esm/utils/cursor.js.map +1 -1
  537. package/_esm/utils/encoding/toRlp.js.map +1 -1
  538. package/_esm/utils/formatters/transaction.js.map +1 -1
  539. package/_esm/utils/formatters/transactionRequest.js +23 -26
  540. package/_esm/utils/formatters/transactionRequest.js.map +1 -1
  541. package/_esm/utils/kzg/defineKzg.js +21 -0
  542. package/_esm/utils/kzg/defineKzg.js.map +1 -0
  543. package/_esm/utils/kzg/setupKzg.js +25 -0
  544. package/_esm/utils/kzg/setupKzg.js.map +1 -0
  545. package/_esm/utils/rpc/compat.js +1 -1
  546. package/_esm/utils/rpc/compat.js.map +1 -1
  547. package/_esm/utils/rpc/http.js +1 -1
  548. package/_esm/utils/rpc/http.js.map +1 -1
  549. package/_esm/utils/rpc/socket.js +1 -1
  550. package/_esm/utils/rpc/socket.js.map +1 -1
  551. package/_esm/utils/signature/compactSignatureToSignature.js +3 -3
  552. package/_esm/utils/signature/compactSignatureToSignature.js.map +1 -1
  553. package/_esm/utils/signature/hexToSignature.js +6 -1
  554. package/_esm/utils/signature/hexToSignature.js.map +1 -1
  555. package/_esm/utils/signature/signatureToCompactSignature.js +4 -4
  556. package/_esm/utils/signature/signatureToCompactSignature.js.map +1 -1
  557. package/_esm/utils/signature/signatureToHex.js +11 -4
  558. package/_esm/utils/signature/signatureToHex.js.map +1 -1
  559. package/_esm/utils/transaction/assertTransaction.js +24 -0
  560. package/_esm/utils/transaction/assertTransaction.js.map +1 -1
  561. package/_esm/utils/transaction/getSerializedTransactionType.js +2 -0
  562. package/_esm/utils/transaction/getSerializedTransactionType.js.map +1 -1
  563. package/_esm/utils/transaction/getTransactionType.js +7 -1
  564. package/_esm/utils/transaction/getTransactionType.js.map +1 -1
  565. package/_esm/utils/transaction/parseTransaction.js +74 -1
  566. package/_esm/utils/transaction/parseTransaction.js.map +1 -1
  567. package/_esm/utils/transaction/serializeAccessList.js.map +1 -1
  568. package/_esm/utils/transaction/serializeTransaction.js +85 -22
  569. package/_esm/utils/transaction/serializeTransaction.js.map +1 -1
  570. package/_types/accounts/types.d.ts +3 -3
  571. package/_types/accounts/types.d.ts.map +1 -1
  572. package/_types/accounts/utils/sign.d.ts.map +1 -1
  573. package/_types/accounts/utils/signTransaction.d.ts +5 -5
  574. package/_types/accounts/utils/signTransaction.d.ts.map +1 -1
  575. package/_types/actions/index.d.ts +1 -0
  576. package/_types/actions/index.d.ts.map +1 -1
  577. package/_types/actions/public/call.d.ts.map +1 -1
  578. package/_types/actions/public/estimateGas.d.ts.map +1 -1
  579. package/_types/actions/public/getBlobBaseFee.d.ts +30 -0
  580. package/_types/actions/public/getBlobBaseFee.d.ts.map +1 -0
  581. package/_types/actions/wallet/prepareTransactionRequest.d.ts +27 -8
  582. package/_types/actions/wallet/prepareTransactionRequest.d.ts.map +1 -1
  583. package/_types/actions/wallet/sendRawTransaction.d.ts +3 -5
  584. package/_types/actions/wallet/sendRawTransaction.d.ts.map +1 -1
  585. package/_types/actions/wallet/sendTransaction.d.ts +4 -2
  586. package/_types/actions/wallet/sendTransaction.d.ts.map +1 -1
  587. package/_types/actions/wallet/signTransaction.d.ts +5 -2
  588. package/_types/actions/wallet/signTransaction.d.ts.map +1 -1
  589. package/_types/chains/celo/chainConfig.d.ts +1282 -376
  590. package/_types/chains/celo/chainConfig.d.ts.map +1 -1
  591. package/_types/chains/celo/formatters.d.ts +1282 -376
  592. package/_types/chains/celo/formatters.d.ts.map +1 -1
  593. package/_types/chains/celo/serializers.d.ts +3 -4
  594. package/_types/chains/celo/serializers.d.ts.map +1 -1
  595. package/_types/chains/celo/types.d.ts +3 -8
  596. package/_types/chains/celo/types.d.ts.map +1 -1
  597. package/_types/chains/definitions/ancient8.d.ts +452 -188
  598. package/_types/chains/definitions/ancient8.d.ts.map +1 -1
  599. package/_types/chains/definitions/ancient8Sepolia.d.ts +452 -188
  600. package/_types/chains/definitions/ancient8Sepolia.d.ts.map +1 -1
  601. package/_types/chains/definitions/base.d.ts +452 -188
  602. package/_types/chains/definitions/base.d.ts.map +1 -1
  603. package/_types/chains/definitions/baseGoerli.d.ts +452 -188
  604. package/_types/chains/definitions/baseGoerli.d.ts.map +1 -1
  605. package/_types/chains/definitions/baseSepolia.d.ts +452 -188
  606. package/_types/chains/definitions/baseSepolia.d.ts.map +1 -1
  607. package/_types/chains/definitions/celo.d.ts +1282 -376
  608. package/_types/chains/definitions/celo.d.ts.map +1 -1
  609. package/_types/chains/definitions/celoAlfajores.d.ts +1282 -376
  610. package/_types/chains/definitions/celoAlfajores.d.ts.map +1 -1
  611. package/_types/chains/definitions/fraxtal.d.ts +452 -188
  612. package/_types/chains/definitions/fraxtal.d.ts.map +1 -1
  613. package/_types/chains/definitions/fraxtalTestnet.d.ts +452 -188
  614. package/_types/chains/definitions/fraxtalTestnet.d.ts.map +1 -1
  615. package/_types/chains/definitions/liskSepolia.d.ts +452 -188
  616. package/_types/chains/definitions/liskSepolia.d.ts.map +1 -1
  617. package/_types/chains/definitions/optimism.d.ts +452 -188
  618. package/_types/chains/definitions/optimism.d.ts.map +1 -1
  619. package/_types/chains/definitions/optimismGoerli.d.ts +452 -188
  620. package/_types/chains/definitions/optimismGoerli.d.ts.map +1 -1
  621. package/_types/chains/definitions/optimismSepolia.d.ts +452 -188
  622. package/_types/chains/definitions/optimismSepolia.d.ts.map +1 -1
  623. package/_types/chains/definitions/pgn.d.ts +451 -187
  624. package/_types/chains/definitions/pgn.d.ts.map +1 -1
  625. package/_types/chains/definitions/pgnTestnet.d.ts +451 -187
  626. package/_types/chains/definitions/pgnTestnet.d.ts.map +1 -1
  627. package/_types/chains/definitions/plumeTestnet.d.ts +37 -0
  628. package/_types/chains/definitions/plumeTestnet.d.ts.map +1 -0
  629. package/_types/chains/definitions/zkSync.d.ts +692 -32
  630. package/_types/chains/definitions/zkSync.d.ts.map +1 -1
  631. package/_types/chains/definitions/zkSyncSepoliaTestnet.d.ts +692 -32
  632. package/_types/chains/definitions/zkSyncSepoliaTestnet.d.ts.map +1 -1
  633. package/_types/chains/definitions/zkSyncTestnet.d.ts +692 -32
  634. package/_types/chains/definitions/zkSyncTestnet.d.ts.map +1 -1
  635. package/_types/chains/definitions/zora.d.ts +452 -188
  636. package/_types/chains/definitions/zora.d.ts.map +1 -1
  637. package/_types/chains/definitions/zoraSepolia.d.ts +452 -188
  638. package/_types/chains/definitions/zoraSepolia.d.ts.map +1 -1
  639. package/_types/chains/definitions/zoraTestnet.d.ts +452 -188
  640. package/_types/chains/definitions/zoraTestnet.d.ts.map +1 -1
  641. package/_types/chains/index.d.ts +2 -1
  642. package/_types/chains/index.d.ts.map +1 -1
  643. package/_types/chains/opStack/actions/buildProveWithdrawal.d.ts +2 -0
  644. package/_types/chains/opStack/actions/buildProveWithdrawal.d.ts.map +1 -1
  645. package/_types/chains/opStack/actions/estimateL1Fee.d.ts.map +1 -1
  646. package/_types/chains/opStack/actions/estimateL1Gas.d.ts.map +1 -1
  647. package/_types/chains/opStack/actions/finalizeWithdrawal.d.ts.map +1 -1
  648. package/_types/chains/opStack/actions/proveWithdrawal.d.ts.map +1 -1
  649. package/_types/chains/opStack/chainConfig.d.ts +452 -188
  650. package/_types/chains/opStack/chainConfig.d.ts.map +1 -1
  651. package/_types/chains/opStack/decorators/publicL1.d.ts.map +1 -1
  652. package/_types/chains/opStack/decorators/publicL2.d.ts.map +1 -1
  653. package/_types/chains/opStack/decorators/walletL1.d.ts.map +1 -1
  654. package/_types/chains/opStack/decorators/walletL2.d.ts.map +1 -1
  655. package/_types/chains/opStack/formatters.d.ts +451 -187
  656. package/_types/chains/opStack/formatters.d.ts.map +1 -1
  657. package/_types/chains/opStack/serializers.d.ts +4 -3
  658. package/_types/chains/opStack/serializers.d.ts.map +1 -1
  659. package/_types/chains/opStack/types/transaction.d.ts +4 -8
  660. package/_types/chains/opStack/types/transaction.d.ts.map +1 -1
  661. package/_types/chains/zksync/actions/sendTransaction.d.ts.map +1 -1
  662. package/_types/chains/zksync/chainConfig.d.ts +692 -32
  663. package/_types/chains/zksync/chainConfig.d.ts.map +1 -1
  664. package/_types/chains/zksync/decorators/eip712.d.ts.map +1 -1
  665. package/_types/chains/zksync/formatters.d.ts +692 -32
  666. package/_types/chains/zksync/formatters.d.ts.map +1 -1
  667. package/_types/chains/zksync/serializers.d.ts +3 -3
  668. package/_types/chains/zksync/serializers.d.ts.map +1 -1
  669. package/_types/chains/zksync/types/chain.d.ts +2 -2
  670. package/_types/chains/zksync/types/chain.d.ts.map +1 -1
  671. package/_types/chains/zksync/types/eip712.d.ts +2 -2
  672. package/_types/chains/zksync/types/eip712.d.ts.map +1 -1
  673. package/_types/clients/decorators/public.d.ts +2 -2
  674. package/_types/clients/decorators/public.d.ts.map +1 -1
  675. package/_types/clients/decorators/wallet.d.ts +4 -4
  676. package/_types/clients/decorators/wallet.d.ts.map +1 -1
  677. package/_types/constants/blob.d.ts +11 -0
  678. package/_types/constants/blob.d.ts.map +1 -0
  679. package/_types/constants/kzg.d.ts +6 -0
  680. package/_types/constants/kzg.d.ts.map +1 -0
  681. package/_types/errors/blob.d.ts +40 -0
  682. package/_types/errors/blob.d.ts.map +1 -0
  683. package/_types/errors/transaction.d.ts.map +1 -1
  684. package/_types/errors/version.d.ts +1 -1
  685. package/_types/errors/version.d.ts.map +1 -1
  686. package/_types/index.d.ts +11 -0
  687. package/_types/index.d.ts.map +1 -1
  688. package/_types/node/index.d.ts +1 -0
  689. package/_types/node/index.d.ts.map +1 -1
  690. package/_types/node/trustedSetups.d.ts +3 -0
  691. package/_types/node/trustedSetups.d.ts.map +1 -0
  692. package/_types/types/account.d.ts +3 -3
  693. package/_types/types/account.d.ts.map +1 -1
  694. package/_types/types/chain.d.ts +2 -2
  695. package/_types/types/chain.d.ts.map +1 -1
  696. package/_types/types/eip1193.d.ts +3 -3
  697. package/_types/types/eip1193.d.ts.map +1 -1
  698. package/_types/types/eip4844.d.ts +11 -0
  699. package/_types/types/eip4844.d.ts.map +1 -0
  700. package/_types/types/fee.d.ts +2 -2
  701. package/_types/types/fee.d.ts.map +1 -1
  702. package/_types/types/kzg.d.ts +24 -0
  703. package/_types/types/kzg.d.ts.map +1 -0
  704. package/_types/types/misc.d.ts +15 -1
  705. package/_types/types/misc.d.ts.map +1 -1
  706. package/_types/types/rpc.d.ts +4 -4
  707. package/_types/types/rpc.d.ts.map +1 -1
  708. package/_types/types/transaction.d.ts +44 -9
  709. package/_types/types/transaction.d.ts.map +1 -1
  710. package/_types/types/utils.d.ts +38 -2
  711. package/_types/types/utils.d.ts.map +1 -1
  712. package/_types/utils/blob/blobsToCommitments.d.ts +31 -0
  713. package/_types/utils/blob/blobsToCommitments.d.ts.map +1 -0
  714. package/_types/utils/blob/blobsToProofs.d.ts +37 -0
  715. package/_types/utils/blob/blobsToProofs.d.ts.map +1 -0
  716. package/_types/utils/blob/commitmentToVersionedHash.d.ts +35 -0
  717. package/_types/utils/blob/commitmentToVersionedHash.d.ts.map +1 -0
  718. package/_types/utils/blob/commitmentsToVersionedHashes.d.ts +34 -0
  719. package/_types/utils/blob/commitmentsToVersionedHashes.d.ts.map +1 -0
  720. package/_types/utils/blob/fromBlobs.d.ts +16 -0
  721. package/_types/utils/blob/fromBlobs.d.ts.map +1 -0
  722. package/_types/utils/blob/sidecarsToVersionedHashes.d.ts +29 -0
  723. package/_types/utils/blob/sidecarsToVersionedHashes.d.ts.map +1 -0
  724. package/_types/utils/blob/toBlobSidecars.d.ts +57 -0
  725. package/_types/utils/blob/toBlobSidecars.d.ts.map +1 -0
  726. package/_types/utils/blob/toBlobs.d.ts +28 -0
  727. package/_types/utils/blob/toBlobs.d.ts.map +1 -0
  728. package/_types/utils/encoding/toRlp.d.ts +1 -1
  729. package/_types/utils/encoding/toRlp.d.ts.map +1 -1
  730. package/_types/utils/formatters/formatter.d.ts.map +1 -1
  731. package/_types/utils/formatters/transaction.d.ts +25 -25
  732. package/_types/utils/formatters/transaction.d.ts.map +1 -1
  733. package/_types/utils/formatters/transactionRequest.d.ts +227 -3
  734. package/_types/utils/formatters/transactionRequest.d.ts.map +1 -1
  735. package/_types/utils/kzg/defineKzg.d.ts +21 -0
  736. package/_types/utils/kzg/defineKzg.d.ts.map +1 -0
  737. package/_types/utils/kzg/setupKzg.d.ts +21 -0
  738. package/_types/utils/kzg/setupKzg.d.ts.map +1 -0
  739. package/_types/utils/signature/hexToSignature.d.ts.map +1 -1
  740. package/_types/utils/signature/signatureToCompactSignature.d.ts +1 -1
  741. package/_types/utils/signature/signatureToHex.d.ts +2 -2
  742. package/_types/utils/signature/signatureToHex.d.ts.map +1 -1
  743. package/_types/utils/transaction/assertTransaction.d.ts +4 -1
  744. package/_types/utils/transaction/assertTransaction.d.ts.map +1 -1
  745. package/_types/utils/transaction/getSerializedTransactionType.d.ts +5 -3
  746. package/_types/utils/transaction/getSerializedTransactionType.d.ts.map +1 -1
  747. package/_types/utils/transaction/getTransactionType.d.ts +34 -3
  748. package/_types/utils/transaction/getTransactionType.d.ts.map +1 -1
  749. package/_types/utils/transaction/parseTransaction.d.ts +7 -5
  750. package/_types/utils/transaction/parseTransaction.d.ts.map +1 -1
  751. package/_types/utils/transaction/serializeTransaction.d.ts +13 -6
  752. package/_types/utils/transaction/serializeTransaction.d.ts.map +1 -1
  753. package/accounts/types.ts +9 -5
  754. package/accounts/utils/sign.ts +1 -0
  755. package/accounts/utils/signTransaction.ts +37 -22
  756. package/actions/index.ts +5 -0
  757. package/actions/public/call.ts +4 -0
  758. package/actions/public/estimateGas.ts +4 -0
  759. package/actions/public/getBlobBaseFee.ts +42 -0
  760. package/actions/wallet/prepareTransactionRequest.ts +134 -61
  761. package/actions/wallet/sendRawTransaction.ts +3 -5
  762. package/actions/wallet/sendTransaction.ts +32 -21
  763. package/actions/wallet/signTransaction.ts +34 -18
  764. package/chains/celo/serializers.ts +12 -25
  765. package/chains/celo/types.ts +5 -10
  766. package/chains/definitions/plumeTestnet.ts +28 -0
  767. package/chains/index.ts +1 -1
  768. package/chains/opStack/actions/buildProveWithdrawal.ts +31 -1
  769. package/chains/opStack/actions/estimateL1Fee.ts +15 -31
  770. package/chains/opStack/actions/estimateL1Gas.ts +15 -31
  771. package/chains/opStack/actions/finalizeWithdrawal.ts +3 -2
  772. package/chains/opStack/actions/proveWithdrawal.ts +3 -2
  773. package/chains/opStack/serializers.ts +5 -5
  774. package/chains/opStack/types/transaction.ts +9 -11
  775. package/chains/zksync/actions/sendTransaction.ts +2 -1
  776. package/chains/zksync/actions/signEip712Transaction.ts +2 -2
  777. package/chains/zksync/serializers.ts +14 -10
  778. package/chains/zksync/types/chain.ts +4 -7
  779. package/chains/zksync/types/eip712.ts +2 -2
  780. package/clients/decorators/public.ts +8 -4
  781. package/clients/decorators/wallet.ts +14 -6
  782. package/constants/blob.ts +21 -0
  783. package/constants/kzg.ts +9 -0
  784. package/errors/blob.ts +67 -0
  785. package/errors/transaction.ts +1 -0
  786. package/errors/version.ts +1 -1
  787. package/index.ts +64 -0
  788. package/node/index.ts +2 -0
  789. package/node/trustedSetups.ts +11 -0
  790. package/package.json +1 -1
  791. package/trusted-setups/mainnet.json +8265 -0
  792. package/trusted-setups/minimal.json +8265 -0
  793. package/types/account.ts +3 -3
  794. package/types/chain.ts +3 -1
  795. package/types/eip1193.ts +3 -3
  796. package/types/eip4844.ts +12 -0
  797. package/types/fee.ts +3 -2
  798. package/types/kzg.ts +32 -0
  799. package/types/misc.ts +20 -1
  800. package/types/rpc.ts +11 -6
  801. package/types/transaction.ts +75 -17
  802. package/types/utils.ts +49 -1
  803. package/utils/abi/encodeAbiParameters.ts +2 -2
  804. package/utils/blob/blobsToCommitments.ts +69 -0
  805. package/utils/blob/blobsToProofs.ts +93 -0
  806. package/utils/blob/commitmentToVersionedHash.ts +62 -0
  807. package/utils/blob/commitmentsToVersionedHashes.ts +71 -0
  808. package/utils/blob/fromBlobs.ts +73 -0
  809. package/utils/blob/sidecarsToVersionedHashes.ts +66 -0
  810. package/utils/blob/toBlobSidecars.ts +109 -0
  811. package/utils/blob/toBlobs.ts +113 -0
  812. package/utils/encoding/toRlp.ts +2 -2
  813. package/utils/formatters/transaction.ts +3 -2
  814. package/utils/formatters/transactionRequest.ts +28 -35
  815. package/utils/kzg/defineKzg.ts +30 -0
  816. package/utils/kzg/setupKzg.ts +38 -0
  817. package/utils/signature/compactSignatureToSignature.ts +3 -3
  818. package/utils/signature/hexToSignature.ts +6 -1
  819. package/utils/signature/signatureToCompactSignature.ts +4 -4
  820. package/utils/signature/signatureToHex.ts +9 -4
  821. package/utils/transaction/assertTransaction.ts +41 -0
  822. package/utils/transaction/getSerializedTransactionType.ts +34 -11
  823. package/utils/transaction/getTransactionType.ts +109 -26
  824. package/utils/transaction/parseTransaction.ts +128 -8
  825. package/utils/transaction/serializeAccessList.ts +1 -1
  826. package/utils/transaction/serializeTransaction.ts +172 -39
@@ -0,0 +1,21 @@
1
+ import type { ErrorType } from '../../errors/utils.js';
2
+ import { type DefineKzgErrorType, type DefineKzgParameters, type DefineKzgReturnType } from './defineKzg.js';
3
+ export type SetupKzgParameters = DefineKzgParameters & {
4
+ loadTrustedSetup(path: string): void;
5
+ };
6
+ export type SetupKzgReturnType = DefineKzgReturnType;
7
+ export type SetupKzgErrorType = DefineKzgErrorType | ErrorType;
8
+ /**
9
+ * Sets up and returns a KZG interface.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * import * as cKzg from 'c-kzg'
14
+ * import { setupKzg } from 'viem'
15
+ * import { mainnetTrustedSetupPath } from 'viem/node'
16
+ *
17
+ * const kzg = setupKzg(cKzg, mainnetTrustedSetupPath)
18
+ * ```
19
+ */
20
+ export declare function setupKzg(parameters: SetupKzgParameters, path: string): SetupKzgReturnType;
21
+ //# sourceMappingURL=setupKzg.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setupKzg.d.ts","sourceRoot":"","sources":["../../../utils/kzg/setupKzg.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EAEzB,MAAM,gBAAgB,CAAA;AAEvB,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG;IACrD,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CACrC,CAAA;AACD,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,CAAA;AACpD,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,GAAG,SAAS,CAAA;AAE9D;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CACtB,UAAU,EAAE,kBAAkB,EAC9B,IAAI,EAAE,MAAM,GACX,kBAAkB,CAQpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"hexToSignature.d.ts","sourceRoot":"","sources":["../../../utils/signature/hexToSignature.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,+BAA+B,CAAA;AAEtC,MAAM,MAAM,uBAAuB,GAAG,oBAAoB,GAAG,SAAS,CAAA;AAEtE;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,YAAY,EAAE,GAAG,GAAG,SAAS,CAI3D"}
1
+ {"version":3,"file":"hexToSignature.d.ts","sourceRoot":"","sources":["../../../utils/signature/hexToSignature.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,+BAA+B,CAAA;AAEtC,MAAM,MAAM,uBAAuB,GAAG,oBAAoB,GAAG,SAAS,CAAA;AAEtE;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,YAAY,EAAE,GAAG,GAAG,SAAS,CAS3D"}
@@ -12,7 +12,7 @@ export type SignatureToCompactSignatureErrorType = HexToBytesErrorType | BytesTo
12
12
  * signatureToCompactSignature({
13
13
  * r: '0x68a020a209d3d56c46f38cc50a33f704f4a9a10a59377f8dd762ac66910e9b90',
14
14
  * s: '0x7e865ad05c4035ab5792787d4a0297a43617ae897930a6fe4d822b8faea52064',
15
- * v: 27n
15
+ * yParity: 0
16
16
  * })
17
17
  * // {
18
18
  * // r: '0x68a020a209d3d56c46f38cc50a33f704f4a9a10a59377f8dd762ac66910e9b90',
@@ -13,9 +13,9 @@ export type SignatureToHexErrorType = HexToBigIntErrorType | ToHexErrorType | Er
13
13
  * signatureToHex({
14
14
  * r: '0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf',
15
15
  * s: '0x4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db8',
16
- * v: 28n
16
+ * yParity: 1
17
17
  * })
18
18
  * // "0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db81c"
19
19
  */
20
- export declare function signatureToHex({ r, s, v }: Signature): Hex;
20
+ export declare function signatureToHex({ r, s, v, yParity }: Signature): Hex;
21
21
  //# sourceMappingURL=signatureToHex.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"signatureToHex.d.ts","sourceRoot":"","sources":["../../../utils/signature/signatureToHex.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAE,KAAK,cAAc,EAAS,MAAM,+BAA+B,CAAA;AAE1E,MAAM,MAAM,uBAAuB,GAC/B,oBAAoB,GACpB,cAAc,GACd,SAAS,CAAA;AAEb;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,GAAG,GAAG,CAK1D"}
1
+ {"version":3,"file":"signatureToHex.d.ts","sourceRoot":"","sources":["../../../utils/signature/signatureToHex.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,MAAM,MAAM,uBAAuB,GAC/B,oBAAoB,GACpB,cAAc,GACd,SAAS,CAAA;AAEb;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,SAAS,GAAG,GAAG,CAUnE"}
@@ -1,10 +1,13 @@
1
1
  import { type InvalidAddressErrorType } from '../../errors/address.js';
2
2
  import { type BaseErrorType } from '../../errors/base.js';
3
+ import { type EmptyBlobErrorType, type InvalidVersionedHashSizeErrorType, type InvalidVersionedHashVersionErrorType } from '../../errors/blob.js';
3
4
  import { type InvalidChainIdErrorType } from '../../errors/chain.js';
4
5
  import { type FeeCapTooHighErrorType, type TipAboveFeeCapErrorType } from '../../errors/node.js';
5
6
  import type { ErrorType } from '../../errors/utils.js';
6
- import type { TransactionSerializableEIP1559, TransactionSerializableEIP2930, TransactionSerializableLegacy } from '../../types/transaction.js';
7
+ import type { TransactionSerializableEIP1559, TransactionSerializableEIP2930, TransactionSerializableEIP4844, TransactionSerializableLegacy } from '../../types/transaction.js';
7
8
  import { type IsAddressErrorType } from '../address/isAddress.js';
9
+ export type AssertTransactionEIP4844ErrorType = AssertTransactionEIP1559ErrorType | EmptyBlobErrorType | InvalidVersionedHashSizeErrorType | InvalidVersionedHashVersionErrorType | ErrorType;
10
+ export declare function assertTransactionEIP4844(transaction: TransactionSerializableEIP4844): void;
8
11
  export type AssertTransactionEIP1559ErrorType = BaseErrorType | IsAddressErrorType | InvalidAddressErrorType | InvalidChainIdErrorType | FeeCapTooHighErrorType | TipAboveFeeCapErrorType | ErrorType;
9
12
  export declare function assertTransactionEIP1559(transaction: TransactionSerializableEIP1559): void;
10
13
  export type AssertTransactionEIP2930ErrorType = BaseErrorType | IsAddressErrorType | InvalidAddressErrorType | InvalidChainIdErrorType | FeeCapTooHighErrorType | ErrorType;
@@ -1 +1 @@
1
- {"version":3,"file":"assertTransaction.d.ts","sourceRoot":"","sources":["../../../utils/transaction/assertTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAa,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpE,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAEL,KAAK,sBAAsB,EAE3B,KAAK,uBAAuB,EAC7B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EACV,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC9B,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,KAAK,kBAAkB,EAAa,MAAM,yBAAyB,CAAA;AAE5E,MAAM,MAAM,iCAAiC,GACzC,aAAa,GACb,kBAAkB,GAClB,uBAAuB,GACvB,uBAAuB,GACvB,sBAAsB,GACtB,uBAAuB,GACvB,SAAS,CAAA;AAEb,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,8BAA8B,QAkB5C;AAED,MAAM,MAAM,iCAAiC,GACzC,aAAa,GACb,kBAAkB,GAClB,uBAAuB,GACvB,uBAAuB,GACvB,sBAAsB,GACtB,SAAS,CAAA;AAEb,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,8BAA8B,QAY5C;AAED,MAAM,MAAM,gCAAgC,GACxC,aAAa,GACb,kBAAkB,GAClB,uBAAuB,GACvB,uBAAuB,GACvB,sBAAsB,GACtB,SAAS,CAAA;AAEb,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,6BAA6B,QAuB3C"}
1
+ {"version":3,"file":"assertTransaction.d.ts","sourceRoot":"","sources":["../../../utils/transaction/assertTransaction.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAa,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpE,OAAO,EAEL,KAAK,kBAAkB,EAEvB,KAAK,iCAAiC,EAEtC,KAAK,oCAAoC,EAC1C,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAEL,KAAK,sBAAsB,EAE3B,KAAK,uBAAuB,EAC7B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EACV,8BAA8B,EAC9B,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC9B,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,KAAK,kBAAkB,EAAa,MAAM,yBAAyB,CAAA;AAK5E,MAAM,MAAM,iCAAiC,GACzC,iCAAiC,GACjC,kBAAkB,GAClB,iCAAiC,GACjC,oCAAoC,GACpC,SAAS,CAAA;AAEb,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,8BAA8B,QAkB5C;AAED,MAAM,MAAM,iCAAiC,GACzC,aAAa,GACb,kBAAkB,GAClB,uBAAuB,GACvB,uBAAuB,GACvB,sBAAsB,GACtB,uBAAuB,GACvB,SAAS,CAAA;AAEb,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,8BAA8B,QAkB5C;AAED,MAAM,MAAM,iCAAiC,GACzC,aAAa,GACb,kBAAkB,GAClB,uBAAuB,GACvB,uBAAuB,GACvB,sBAAsB,GACtB,SAAS,CAAA;AAEb,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,8BAA8B,QAY5C;AAED,MAAM,MAAM,gCAAgC,GACxC,aAAa,GACb,kBAAkB,GAClB,uBAAuB,GACvB,uBAAuB,GACvB,sBAAsB,GACtB,SAAS,CAAA;AAEb,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,6BAA6B,QAuB3C"}
@@ -1,9 +1,11 @@
1
1
  import { type InvalidSerializedTransactionTypeErrorType } from '../../errors/transaction.js';
2
2
  import type { ErrorType } from '../../errors/utils.js';
3
- import type { TransactionSerialized, TransactionSerializedEIP1559, TransactionSerializedEIP2930 } from '../../types/transaction.js';
3
+ import type { Hex } from '../../index.js';
4
+ import type { TransactionSerialized, TransactionSerializedEIP1559, TransactionSerializedEIP2930, TransactionSerializedEIP4844, TransactionSerializedGeneric, TransactionSerializedLegacy, TransactionType } from '../../types/transaction.js';
5
+ import type { IsNarrowable, IsNever } from '../../types/utils.js';
4
6
  import { type SliceHexErrorType } from '../data/slice.js';
5
7
  import { type HexToNumberErrorType } from '../encoding/fromHex.js';
6
- export type GetSerializedTransactionType<TTransactionSerialized extends TransactionSerialized = TransactionSerialized> = TTransactionSerialized extends TransactionSerializedEIP1559 ? 'eip1559' : TTransactionSerialized extends TransactionSerializedEIP2930 ? 'eip2930' : 'legacy';
8
+ export type GetSerializedTransactionType<serializedTransaction extends TransactionSerializedGeneric = TransactionSerialized, result = (serializedTransaction extends TransactionSerializedEIP1559 ? 'eip1559' : never) | (serializedTransaction extends TransactionSerializedEIP2930 ? 'eip2930' : never) | (serializedTransaction extends TransactionSerializedEIP4844 ? 'eip4844' : never) | (serializedTransaction extends TransactionSerializedLegacy ? 'legacy' : never)> = IsNarrowable<serializedTransaction, Hex> extends true ? IsNever<result> extends false ? result : 'legacy' : TransactionType;
7
9
  export type GetSerializedTransactionTypeErrorType = HexToNumberErrorType | InvalidSerializedTransactionTypeErrorType | SliceHexErrorType | ErrorType;
8
- export declare function getSerializedTransactionType<TSerialized extends TransactionSerialized>(serializedTransaction: TSerialized): GetSerializedTransactionType<TSerialized>;
10
+ export declare function getSerializedTransactionType<const serializedTransaction extends TransactionSerializedGeneric>(serializedTransaction: serializedTransaction): GetSerializedTransactionType<serializedTransaction>;
9
11
  //# sourceMappingURL=getSerializedTransactionType.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getSerializedTransactionType.d.ts","sourceRoot":"","sources":["../../../utils/transaction/getSerializedTransactionType.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,yCAAyC,EAC/C,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EACV,qBAAqB,EACrB,4BAA4B,EAC5B,4BAA4B,EAC7B,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,KAAK,iBAAiB,EAAY,MAAM,kBAAkB,CAAA;AACnE,OAAO,EAAE,KAAK,oBAAoB,EAAe,MAAM,wBAAwB,CAAA;AAE/E,MAAM,MAAM,4BAA4B,CACtC,sBAAsB,SAAS,qBAAqB,GAAG,qBAAqB,IAC1E,sBAAsB,SAAS,4BAA4B,GAC3D,SAAS,GACT,sBAAsB,SAAS,4BAA4B,GACzD,SAAS,GACT,QAAQ,CAAA;AAEd,MAAM,MAAM,qCAAqC,GAC7C,oBAAoB,GACpB,yCAAyC,GACzC,iBAAiB,GACjB,SAAS,CAAA;AAEb,wBAAgB,4BAA4B,CAC1C,WAAW,SAAS,qBAAqB,EAEzC,qBAAqB,EAAE,WAAW,GACjC,4BAA4B,CAAC,WAAW,CAAC,CAa3C"}
1
+ {"version":3,"file":"getSerializedTransactionType.d.ts","sourceRoot":"","sources":["../../../utils/transaction/getSerializedTransactionType.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,yCAAyC,EAC/C,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,EACV,qBAAqB,EACrB,4BAA4B,EAC5B,4BAA4B,EAC5B,4BAA4B,EAC5B,4BAA4B,EAC5B,2BAA2B,EAC3B,eAAe,EAChB,MAAM,4BAA4B,CAAA;AACnC,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,EAAE,KAAK,iBAAiB,EAAY,MAAM,kBAAkB,CAAA;AACnE,OAAO,EAAE,KAAK,oBAAoB,EAAe,MAAM,wBAAwB,CAAA;AAE/E,MAAM,MAAM,4BAA4B,CACtC,qBAAqB,SACnB,4BAA4B,GAAG,qBAAqB,EACtD,MAAM,GACF,CAAC,qBAAqB,SAAS,4BAA4B,GACvD,SAAS,GACT,KAAK,CAAC,GACV,CAAC,qBAAqB,SAAS,4BAA4B,GACvD,SAAS,GACT,KAAK,CAAC,GACV,CAAC,qBAAqB,SAAS,4BAA4B,GACvD,SAAS,GACT,KAAK,CAAC,GACV,CAAC,qBAAqB,SAAS,2BAA2B,GACtD,QAAQ,GACR,KAAK,CAAC,IACZ,YAAY,CAAC,qBAAqB,EAAE,GAAG,CAAC,SAAS,IAAI,GACrD,OAAO,CAAC,MAAM,CAAC,SAAS,KAAK,GAC3B,MAAM,GACN,QAAQ,GACV,eAAe,CAAA;AAEnB,MAAM,MAAM,qCAAqC,GAC7C,oBAAoB,GACpB,yCAAyC,GACzC,iBAAiB,GACjB,SAAS,CAAA;AAEb,wBAAgB,4BAA4B,CAC1C,KAAK,CAAC,qBAAqB,SAAS,4BAA4B,EAEhE,qBAAqB,EAAE,qBAAqB,GAC3C,4BAA4B,CAAC,qBAAqB,CAAC,CAgBrD"}
@@ -1,7 +1,38 @@
1
1
  import { type InvalidSerializableTransactionErrorType } from '../../errors/transaction.js';
2
2
  import type { ErrorType } from '../../errors/utils.js';
3
- import type { TransactionSerializable, TransactionSerializableEIP1559, TransactionSerializableEIP2930, TransactionSerializableGeneric, TransactionSerializableLegacy } from '../../types/transaction.js';
4
- export type GetTransactionType<TTransactionSerializable extends TransactionSerializable = TransactionSerializable> = (TTransactionSerializable extends TransactionSerializableLegacy ? 'legacy' : never) | (TTransactionSerializable extends TransactionSerializableEIP1559 ? 'eip1559' : never) | (TTransactionSerializable extends TransactionSerializableEIP2930 ? 'eip2930' : never) | (TTransactionSerializable extends TransactionSerializableGeneric ? TTransactionSerializable['type'] : never);
3
+ import type { FeeValuesEIP1559, FeeValuesEIP4844, FeeValuesLegacy } from '../../index.js';
4
+ import type { TransactionRequest, TransactionRequestEIP1559, TransactionRequestEIP2930, TransactionRequestEIP4844, TransactionRequestLegacy, TransactionSerializableEIP1559, TransactionSerializableEIP2930, TransactionSerializableEIP4844, TransactionSerializableGeneric, TransactionSerializableLegacy } from '../../types/transaction.js';
5
+ import type { Assign, IsNever, OneOf, Opaque } from '../../types/utils.js';
6
+ type BaseProperties = {
7
+ accessList?: undefined;
8
+ blobs?: undefined;
9
+ blobVersionedHashes?: undefined;
10
+ gasPrice?: undefined;
11
+ maxFeePerBlobGas?: undefined;
12
+ maxFeePerGas?: undefined;
13
+ maxPriorityFeePerGas?: undefined;
14
+ sidecars?: undefined;
15
+ };
16
+ type LegacyProperties = Assign<BaseProperties, FeeValuesLegacy>;
17
+ type EIP1559Properties = Assign<BaseProperties, OneOf<{
18
+ maxFeePerGas: FeeValuesEIP1559['maxFeePerGas'];
19
+ } | {
20
+ maxPriorityFeePerGas: FeeValuesEIP1559['maxPriorityFeePerGas'];
21
+ }, FeeValuesEIP1559> & {
22
+ accessList?: TransactionSerializableEIP2930['accessList'];
23
+ }>;
24
+ type EIP2930Properties = Assign<BaseProperties, Partial<FeeValuesLegacy> & {
25
+ accessList: TransactionSerializableEIP2930['accessList'];
26
+ }>;
27
+ type EIP4844Properties = Assign<BaseProperties, Partial<FeeValuesEIP4844> & OneOf<{
28
+ blobs: TransactionSerializableEIP4844['blobs'];
29
+ } | {
30
+ blobVersionedHashes: TransactionSerializableEIP4844['blobVersionedHashes'];
31
+ } | {
32
+ sidecars: TransactionSerializableEIP4844['sidecars'];
33
+ }, TransactionSerializableEIP4844>>;
34
+ export type GetTransactionType<transaction extends OneOf<TransactionSerializableGeneric | TransactionRequest> = TransactionSerializableGeneric, result = (transaction extends Opaque<TransactionSerializableLegacy, transaction> | Opaque<TransactionRequestLegacy, transaction> | LegacyProperties ? 'legacy' : never) | (transaction extends Opaque<TransactionSerializableEIP1559, transaction> | Opaque<TransactionRequestEIP1559, transaction> | EIP1559Properties ? 'eip1559' : never) | (transaction extends Opaque<TransactionSerializableEIP2930, transaction> | Opaque<TransactionRequestEIP2930, transaction> | EIP2930Properties ? 'eip2930' : never) | (transaction extends Opaque<TransactionSerializableEIP4844, transaction> | Opaque<TransactionRequestEIP4844, transaction> | EIP4844Properties ? 'eip4844' : never) | (transaction['type'] extends string ? transaction['type'] : never)> = IsNever<result> extends false ? result : string;
5
35
  export type GetTransationTypeErrorType = InvalidSerializableTransactionErrorType | ErrorType;
6
- export declare function getTransactionType<TTransactionSerializable extends TransactionSerializable>(transaction: TTransactionSerializable): GetTransactionType<TTransactionSerializable>;
36
+ export declare function getTransactionType<const transaction extends OneOf<TransactionSerializableGeneric | TransactionRequest>>(transaction: transaction): GetTransactionType<transaction>;
37
+ export {};
7
38
  //# sourceMappingURL=getTransactionType.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getTransactionType.d.ts","sourceRoot":"","sources":["../../../utils/transaction/getTransactionType.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uCAAuC,EAC7C,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EACV,uBAAuB,EACvB,8BAA8B,EAC9B,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC9B,MAAM,4BAA4B,CAAA;AAEnC,MAAM,MAAM,kBAAkB,CAC5B,wBAAwB,SACtB,uBAAuB,GAAG,uBAAuB,IAEjD,CAAC,wBAAwB,SAAS,6BAA6B,GAC3D,QAAQ,GACR,KAAK,CAAC,GACV,CAAC,wBAAwB,SAAS,8BAA8B,GAC5D,SAAS,GACT,KAAK,CAAC,GACV,CAAC,wBAAwB,SAAS,8BAA8B,GAC5D,SAAS,GACT,KAAK,CAAC,GACV,CAAC,wBAAwB,SAAS,8BAA8B,GAC5D,wBAAwB,CAAC,MAAM,CAAC,GAChC,KAAK,CAAC,CAAA;AAEd,MAAM,MAAM,0BAA0B,GAClC,uCAAuC,GACvC,SAAS,CAAA;AAEb,wBAAgB,kBAAkB,CAChC,wBAAwB,SAAS,uBAAuB,EAExD,WAAW,EAAE,wBAAwB,GACpC,kBAAkB,CAAC,wBAAwB,CAAC,CAiB9C"}
1
+ {"version":3,"file":"getTransactionType.d.ts","sourceRoot":"","sources":["../../../utils/transaction/getTransactionType.ts"],"names":[],"mappings":"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"}
@@ -2,18 +2,20 @@ import { type InvalidAddressErrorType } from '../../errors/address.js';
2
2
  import { type InvalidLegacyVErrorType, type InvalidSerializedTransactionErrorType } from '../../errors/transaction.js';
3
3
  import type { ErrorType } from '../../errors/utils.js';
4
4
  import type { Hex } from '../../types/misc.js';
5
- import type { AccessList, TransactionSerializableEIP1559, TransactionSerializableEIP2930, TransactionSerializableLegacy, TransactionSerialized, TransactionType } from '../../types/transaction.js';
5
+ import type { AccessList, TransactionSerializable, TransactionSerializableEIP1559, TransactionSerializableEIP2930, TransactionSerializableEIP4844, TransactionSerializableLegacy, TransactionSerialized, TransactionSerializedGeneric, TransactionType } from '../../types/transaction.js';
6
+ import type { IsNarrowable } from '../../types/utils.js';
6
7
  import { type IsAddressErrorType } from '../address/isAddress.js';
7
8
  import { type IsHexErrorType } from '../data/isHex.js';
8
9
  import { type PadHexErrorType } from '../data/pad.js';
9
10
  import { type HexToBigIntErrorType, type HexToNumberErrorType } from '../encoding/fromHex.js';
10
11
  import { type FromRlpErrorType } from '../encoding/fromRlp.js';
11
12
  import type { RecursiveArray } from '../encoding/toRlp.js';
12
- import { type AssertTransactionEIP1559ErrorType, type AssertTransactionEIP2930ErrorType, type AssertTransactionLegacyErrorType } from './assertTransaction.js';
13
+ import { type AssertTransactionEIP1559ErrorType, type AssertTransactionEIP2930ErrorType, type AssertTransactionEIP4844ErrorType, type AssertTransactionLegacyErrorType } from './assertTransaction.js';
13
14
  import { type GetSerializedTransactionType, type GetSerializedTransactionTypeErrorType } from './getSerializedTransactionType.js';
14
- export type ParseTransactionReturnType<TSerialized extends TransactionSerialized = TransactionSerialized, TType extends TransactionType = GetSerializedTransactionType<TSerialized>> = (TType extends 'eip1559' ? TransactionSerializableEIP1559 : never) | (TType extends 'eip2930' ? TransactionSerializableEIP2930 : never) | (TType extends 'legacy' ? TransactionSerializableLegacy : never);
15
- export type ParseTransactionErrorType = GetSerializedTransactionTypeErrorType | ParseTransactionEIP1559ErrorType | ParseTransactionEIP2930ErrorType | ParseTransactionLegacyErrorType;
16
- export declare function parseTransaction<TSerialized extends TransactionSerialized>(serializedTransaction: TSerialized): ParseTransactionReturnType<TSerialized>;
15
+ export type ParseTransactionReturnType<TSerialized extends TransactionSerializedGeneric = TransactionSerialized, TType extends TransactionType = GetSerializedTransactionType<TSerialized>> = IsNarrowable<TSerialized, Hex> extends true ? (TType extends 'eip1559' ? TransactionSerializableEIP1559 : never) | (TType extends 'eip2930' ? TransactionSerializableEIP2930 : never) | (TType extends 'eip4844' ? TransactionSerializableEIP4844 : never) | (TType extends 'legacy' ? TransactionSerializableLegacy : never) : TransactionSerializable;
16
+ export type ParseTransactionErrorType = GetSerializedTransactionTypeErrorType | ParseTransactionEIP1559ErrorType | ParseTransactionEIP2930ErrorType | ParseTransactionEIP4844ErrorType | ParseTransactionLegacyErrorType;
17
+ export declare function parseTransaction<const TSerialized extends TransactionSerializedGeneric>(serializedTransaction: TSerialized): ParseTransactionReturnType<TSerialized>;
18
+ type ParseTransactionEIP4844ErrorType = AssertTransactionEIP4844ErrorType | ToTransactionArrayErrorType | HexToBigIntErrorType | HexToNumberErrorType | InvalidLegacyVErrorType | InvalidSerializedTransactionErrorType | IsHexErrorType | ParseEIP155SignatureErrorType | ErrorType;
17
19
  type ParseTransactionEIP1559ErrorType = AssertTransactionEIP1559ErrorType | ToTransactionArrayErrorType | HexToBigIntErrorType | HexToNumberErrorType | InvalidLegacyVErrorType | InvalidSerializedTransactionErrorType | IsHexErrorType | ParseEIP155SignatureErrorType | ErrorType;
18
20
  type ParseTransactionEIP2930ErrorType = AssertTransactionEIP2930ErrorType | ToTransactionArrayErrorType | HexToBigIntErrorType | HexToNumberErrorType | InvalidLegacyVErrorType | InvalidSerializedTransactionErrorType | IsHexErrorType | ParseEIP155SignatureErrorType | ErrorType;
19
21
  type ParseTransactionLegacyErrorType = AssertTransactionLegacyErrorType | FromRlpErrorType | HexToBigIntErrorType | HexToNumberErrorType | InvalidLegacyVErrorType | InvalidSerializedTransactionErrorType | IsHexErrorType | ErrorType;
@@ -1 +1 @@
1
- {"version":3,"file":"parseTransaction.d.ts","sourceRoot":"","sources":["../../../utils/transaction/parseTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAEL,KAAK,uBAAuB,EAE5B,KAAK,qCAAqC,EAC3C,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,GAAG,EAAa,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EACV,UAAU,EAGV,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,qBAAqB,EAGrB,eAAe,EAChB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,KAAK,kBAAkB,EAAa,MAAM,yBAAyB,CAAA;AAC5E,OAAO,EAAE,KAAK,cAAc,EAAS,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAE,KAAK,eAAe,EAAU,MAAM,gBAAgB,CAAA;AAE7D,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EAG1B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,KAAK,gBAAgB,EAAW,MAAM,wBAAwB,CAAA;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAG1D,OAAO,EACL,KAAK,iCAAiC,EACtC,KAAK,iCAAiC,EACtC,KAAK,gCAAgC,EAItC,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACL,KAAK,4BAA4B,EACjC,KAAK,qCAAqC,EAE3C,MAAM,mCAAmC,CAAA;AAE1C,MAAM,MAAM,0BAA0B,CACpC,WAAW,SAAS,qBAAqB,GAAG,qBAAqB,EACjE,KAAK,SAAS,eAAe,GAAG,4BAA4B,CAAC,WAAW,CAAC,IAEvE,CAAC,KAAK,SAAS,SAAS,GAAG,8BAA8B,GAAG,KAAK,CAAC,GAClE,CAAC,KAAK,SAAS,SAAS,GAAG,8BAA8B,GAAG,KAAK,CAAC,GAClE,CAAC,KAAK,SAAS,QAAQ,GAAG,6BAA6B,GAAG,KAAK,CAAC,CAAA;AAEpE,MAAM,MAAM,yBAAyB,GACjC,qCAAqC,GACrC,gCAAgC,GAChC,gCAAgC,GAChC,+BAA+B,CAAA;AAEnC,wBAAgB,gBAAgB,CAAC,WAAW,SAAS,qBAAqB,EACxE,qBAAqB,EAAE,WAAW,GACjC,0BAA0B,CAAC,WAAW,CAAC,CAgBzC;AAED,KAAK,gCAAgC,GACjC,iCAAiC,GACjC,2BAA2B,GAC3B,oBAAoB,GACpB,oBAAoB,GACpB,uBAAuB,GACvB,qCAAqC,GACrC,cAAc,GACd,6BAA6B,GAC7B,SAAS,CAAA;AAwEb,KAAK,gCAAgC,GACjC,iCAAiC,GACjC,2BAA2B,GAC3B,oBAAoB,GACpB,oBAAoB,GACpB,uBAAuB,GACvB,qCAAqC,GACrC,cAAc,GACd,6BAA6B,GAC7B,SAAS,CAAA;AA0Db,KAAK,+BAA+B,GAChC,gCAAgC,GAChC,gBAAgB,GAChB,oBAAoB,GACpB,oBAAoB,GACpB,uBAAuB,GACvB,qCAAqC,GACrC,cAAc,GACd,SAAS,CAAA;AAsEb,MAAM,MAAM,2BAA2B,GAAG,gBAAgB,GAAG,SAAS,CAAA;AAEtE,wBAAgB,kBAAkB,CAAC,qBAAqB,EAAE,MAAM,6DAE/D;AAED,MAAM,MAAM,wBAAwB,GAChC,uBAAuB,GACvB,kBAAkB,GAClB,SAAS,CAAA;AAEb,wBAAgB,eAAe,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,UAAU,CAc5E;AAED,KAAK,6BAA6B,GAC9B,oBAAoB,GACpB,eAAe,GACf,SAAS,CAAA"}
1
+ {"version":3,"file":"parseTransaction.d.ts","sourceRoot":"","sources":["../../../utils/transaction/parseTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAEL,KAAK,uBAAuB,EAE5B,KAAK,qCAAqC,EAC3C,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,GAAG,EAAa,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EACV,UAAU,EAGV,uBAAuB,EACvB,8BAA8B,EAC9B,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,qBAAqB,EAIrB,4BAA4B,EAC5B,eAAe,EAChB,MAAM,4BAA4B,CAAA;AACnC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,KAAK,kBAAkB,EAAa,MAAM,yBAAyB,CAAA;AAE5E,OAAO,EAAE,KAAK,cAAc,EAAS,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAE,KAAK,eAAe,EAAU,MAAM,gBAAgB,CAAA;AAE7D,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EAG1B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,KAAK,gBAAgB,EAAW,MAAM,wBAAwB,CAAA;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAG1D,OAAO,EACL,KAAK,iCAAiC,EACtC,KAAK,iCAAiC,EACtC,KAAK,iCAAiC,EACtC,KAAK,gCAAgC,EAKtC,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACL,KAAK,4BAA4B,EACjC,KAAK,qCAAqC,EAE3C,MAAM,mCAAmC,CAAA;AAE1C,MAAM,MAAM,0BAA0B,CACpC,WAAW,SAAS,4BAA4B,GAAG,qBAAqB,EACxE,KAAK,SAAS,eAAe,GAAG,4BAA4B,CAAC,WAAW,CAAC,IACvE,YAAY,CAAC,WAAW,EAAE,GAAG,CAAC,SAAS,IAAI,GAEvC,CAAC,KAAK,SAAS,SAAS,GAAG,8BAA8B,GAAG,KAAK,CAAC,GAClE,CAAC,KAAK,SAAS,SAAS,GAAG,8BAA8B,GAAG,KAAK,CAAC,GAClE,CAAC,KAAK,SAAS,SAAS,GAAG,8BAA8B,GAAG,KAAK,CAAC,GAClE,CAAC,KAAK,SAAS,QAAQ,GAAG,6BAA6B,GAAG,KAAK,CAAC,GACpE,uBAAuB,CAAA;AAE3B,MAAM,MAAM,yBAAyB,GACjC,qCAAqC,GACrC,gCAAgC,GAChC,gCAAgC,GAChC,gCAAgC,GAChC,+BAA+B,CAAA;AAEnC,wBAAgB,gBAAgB,CAC9B,KAAK,CAAC,WAAW,SAAS,4BAA4B,EACtD,qBAAqB,EAAE,WAAW,GAAG,0BAA0B,CAAC,WAAW,CAAC,CAqB7E;AAED,KAAK,gCAAgC,GACjC,iCAAiC,GACjC,2BAA2B,GAC3B,oBAAoB,GACpB,oBAAoB,GACpB,uBAAuB,GACvB,qCAAqC,GACrC,cAAc,GACd,6BAA6B,GAC7B,SAAS,CAAA;AA6Fb,KAAK,gCAAgC,GACjC,iCAAiC,GACjC,2BAA2B,GAC3B,oBAAoB,GACpB,oBAAoB,GACpB,uBAAuB,GACvB,qCAAqC,GACrC,cAAc,GACd,6BAA6B,GAC7B,SAAS,CAAA;AAwEb,KAAK,gCAAgC,GACjC,iCAAiC,GACjC,2BAA2B,GAC3B,oBAAoB,GACpB,oBAAoB,GACpB,uBAAuB,GACvB,qCAAqC,GACrC,cAAc,GACd,6BAA6B,GAC7B,SAAS,CAAA;AA0Db,KAAK,+BAA+B,GAChC,gCAAgC,GAChC,gBAAgB,GAChB,oBAAoB,GACpB,oBAAoB,GACpB,uBAAuB,GACvB,qCAAqC,GACrC,cAAc,GACd,SAAS,CAAA;AAuEb,MAAM,MAAM,2BAA2B,GAAG,gBAAgB,GAAG,SAAS,CAAA;AAEtE,wBAAgB,kBAAkB,CAAC,qBAAqB,EAAE,MAAM,6DAE/D;AAED,MAAM,MAAM,wBAAwB,GAChC,uBAAuB,GACvB,kBAAkB,GAClB,SAAS,CAAA;AAEb,wBAAgB,eAAe,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,UAAU,CAc5E;AAED,KAAK,6BAA6B,GAC9B,oBAAoB,GACpB,eAAe,GACf,SAAS,CAAA"}
@@ -1,19 +1,26 @@
1
1
  import { type InvalidLegacyVErrorType } from '../../errors/transaction.js';
2
2
  import type { ErrorType } from '../../errors/utils.js';
3
3
  import type { Signature } from '../../types/misc.js';
4
- import type { TransactionSerializable, TransactionSerialized, TransactionType } from '../../types/transaction.js';
4
+ import type { TransactionSerializable, TransactionSerializableGeneric, TransactionSerialized, TransactionType } from '../../types/transaction.js';
5
+ import type { OneOf } from '../../types/utils.js';
6
+ import { type BlobsToCommitmentsErrorType } from '../blob/blobsToCommitments.js';
7
+ import { type blobsToProofsErrorType } from '../blob/blobsToProofs.js';
8
+ import { type CommitmentsToVersionedHashesErrorType } from '../blob/commitmentsToVersionedHashes.js';
9
+ import { type ToBlobSidecarsErrorType } from '../blob/toBlobSidecars.js';
5
10
  import { type ConcatHexErrorType } from '../data/concat.js';
6
11
  import { type ToHexErrorType } from '../encoding/toHex.js';
7
12
  import { type ToRlpErrorType } from '../encoding/toRlp.js';
8
- import { type AssertTransactionEIP1559ErrorType, type AssertTransactionEIP2930ErrorType, type AssertTransactionLegacyErrorType } from './assertTransaction.js';
13
+ import { type AssertTransactionEIP1559ErrorType, type AssertTransactionEIP2930ErrorType, type AssertTransactionEIP4844ErrorType, type AssertTransactionLegacyErrorType } from './assertTransaction.js';
9
14
  import { type GetTransactionType, type GetTransationTypeErrorType } from './getTransactionType.js';
10
15
  import { type SerializeAccessListErrorType } from './serializeAccessList.js';
11
- export type SerializedTransactionReturnType<TTransactionSerializable extends TransactionSerializable = TransactionSerializable, TTransactionType extends TransactionType = GetTransactionType<TTransactionSerializable>> = TransactionSerialized<TTransactionType>;
12
- export type SerializeTransactionFn<TTransactionSerializable extends TransactionSerializable = TransactionSerializable> = typeof serializeTransaction<TTransactionSerializable>;
13
- export type SerializeTransactionErrorType = GetTransationTypeErrorType | SerializeTransactionEIP1559ErrorType | SerializeTransactionEIP2930ErrorType | SerializeTransactionLegacyErrorType | ErrorType;
14
- export declare function serializeTransaction<TTransactionSerializable extends TransactionSerializable>(transaction: TTransactionSerializable, signature?: Signature): SerializedTransactionReturnType<TTransactionSerializable>;
16
+ export type SerializedTransactionReturnType<transaction extends TransactionSerializable = TransactionSerializable, _transactionType extends TransactionType = GetTransactionType<transaction>> = TransactionSerialized<_transactionType>;
17
+ export type SerializeTransactionFn<transaction extends TransactionSerializableGeneric = TransactionSerializable, _transactionType extends TransactionType = never> = typeof serializeTransaction<OneOf<TransactionSerializable | transaction>, _transactionType>;
18
+ export type SerializeTransactionErrorType = GetTransationTypeErrorType | SerializeTransactionEIP1559ErrorType | SerializeTransactionEIP2930ErrorType | SerializeTransactionEIP4844ErrorType | SerializeTransactionLegacyErrorType | ErrorType;
19
+ export declare function serializeTransaction<const transaction extends TransactionSerializable, _transactionType extends TransactionType = GetTransactionType<transaction>>(transaction: transaction, signature?: Signature): SerializedTransactionReturnType<transaction, _transactionType>;
20
+ type SerializeTransactionEIP4844ErrorType = AssertTransactionEIP4844ErrorType | BlobsToCommitmentsErrorType | CommitmentsToVersionedHashesErrorType | blobsToProofsErrorType | ToBlobSidecarsErrorType | ConcatHexErrorType | InvalidLegacyVErrorType | ToHexErrorType | ToRlpErrorType | SerializeAccessListErrorType | ErrorType;
15
21
  type SerializeTransactionEIP1559ErrorType = AssertTransactionEIP1559ErrorType | ConcatHexErrorType | InvalidLegacyVErrorType | ToHexErrorType | ToRlpErrorType | SerializeAccessListErrorType | ErrorType;
16
22
  type SerializeTransactionEIP2930ErrorType = AssertTransactionEIP2930ErrorType | ConcatHexErrorType | InvalidLegacyVErrorType | ToHexErrorType | ToRlpErrorType | SerializeAccessListErrorType | ErrorType;
17
23
  type SerializeTransactionLegacyErrorType = AssertTransactionLegacyErrorType | InvalidLegacyVErrorType | ToHexErrorType | ToRlpErrorType | ErrorType;
24
+ export declare function toYParitySignatureArray(transaction: TransactionSerializableGeneric, signature?: Signature): `0x${string}`[];
18
25
  export {};
19
26
  //# sourceMappingURL=serializeTransaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"serializeTransaction.d.ts","sourceRoot":"","sources":["../../../utils/transaction/serializeTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EACV,uBAAuB,EAIvB,qBAAqB,EAIrB,eAAe,EAChB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,KAAK,kBAAkB,EAAa,MAAM,mBAAmB,CAAA;AAEtE,OAAO,EAAE,KAAK,cAAc,EAAS,MAAM,sBAAsB,CAAA;AACjE,OAAO,EAAE,KAAK,cAAc,EAAS,MAAM,sBAAsB,CAAA;AAEjE,OAAO,EACL,KAAK,iCAAiC,EACtC,KAAK,iCAAiC,EACtC,KAAK,gCAAgC,EAItC,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAEhC,MAAM,yBAAyB,CAAA;AAChC,OAAO,EACL,KAAK,4BAA4B,EAElC,MAAM,0BAA0B,CAAA;AAEjC,MAAM,MAAM,+BAA+B,CACzC,wBAAwB,SACtB,uBAAuB,GAAG,uBAAuB,EACnD,gBAAgB,SACd,eAAe,GAAG,kBAAkB,CAAC,wBAAwB,CAAC,IAC9D,qBAAqB,CAAC,gBAAgB,CAAC,CAAA;AAE3C,MAAM,MAAM,sBAAsB,CAChC,wBAAwB,SACtB,uBAAuB,GAAG,uBAAuB,IACjD,OAAO,oBAAoB,CAAC,wBAAwB,CAAC,CAAA;AAEzD,MAAM,MAAM,6BAA6B,GACrC,0BAA0B,GAC1B,oCAAoC,GACpC,oCAAoC,GACpC,mCAAmC,GACnC,SAAS,CAAA;AAEb,wBAAgB,oBAAoB,CAClC,wBAAwB,SAAS,uBAAuB,EAExD,WAAW,EAAE,wBAAwB,EACrC,SAAS,CAAC,EAAE,SAAS,GACpB,+BAA+B,CAAC,wBAAwB,CAAC,CAmB3D;AAED,KAAK,oCAAoC,GACrC,iCAAiC,GACjC,kBAAkB,GAClB,uBAAuB,GACvB,cAAc,GACd,cAAc,GACd,4BAA4B,GAC5B,SAAS,CAAA;AAkDb,KAAK,oCAAoC,GACrC,iCAAiC,GACjC,kBAAkB,GAClB,uBAAuB,GACvB,cAAc,GACd,cAAc,GACd,4BAA4B,GAC5B,SAAS,CAAA;AAwCb,KAAK,mCAAmC,GACpC,gCAAgC,GAChC,uBAAuB,GACvB,cAAc,GACd,cAAc,GACd,SAAS,CAAA"}
1
+ {"version":3,"file":"serializeTransaction.d.ts","sourceRoot":"","sources":["../../../utils/transaction/serializeTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAGV,SAAS,EAEV,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EACV,uBAAuB,EAIvB,8BAA8B,EAE9B,qBAAqB,EAKrB,eAAe,EAChB,MAAM,4BAA4B,CAAA;AACnC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EACL,KAAK,2BAA2B,EAEjC,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,0BAA0B,CAAA;AACjC,OAAO,EACL,KAAK,qCAAqC,EAE3C,MAAM,yCAAyC,CAAA;AAChD,OAAO,EACL,KAAK,uBAAuB,EAE7B,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,KAAK,kBAAkB,EAAa,MAAM,mBAAmB,CAAA;AAEtE,OAAO,EAAE,KAAK,cAAc,EAAqB,MAAM,sBAAsB,CAAA;AAC7E,OAAO,EAAE,KAAK,cAAc,EAAS,MAAM,sBAAsB,CAAA;AAEjE,OAAO,EACL,KAAK,iCAAiC,EACtC,KAAK,iCAAiC,EACtC,KAAK,iCAAiC,EACtC,KAAK,gCAAgC,EAKtC,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAEhC,MAAM,yBAAyB,CAAA;AAChC,OAAO,EACL,KAAK,4BAA4B,EAElC,MAAM,0BAA0B,CAAA;AAEjC,MAAM,MAAM,+BAA+B,CACzC,WAAW,SAAS,uBAAuB,GAAG,uBAAuB,EAErE,gBAAgB,SAAS,eAAe,GAAG,kBAAkB,CAAC,WAAW,CAAC,IACxE,qBAAqB,CAAC,gBAAgB,CAAC,CAAA;AAE3C,MAAM,MAAM,sBAAsB,CAChC,WAAW,SAAS,8BAA8B,GAAG,uBAAuB,EAE5E,gBAAgB,SAAS,eAAe,GAAG,KAAK,IAC9C,OAAO,oBAAoB,CAC7B,KAAK,CAAC,uBAAuB,GAAG,WAAW,CAAC,EAC5C,gBAAgB,CACjB,CAAA;AAED,MAAM,MAAM,6BAA6B,GACrC,0BAA0B,GAC1B,oCAAoC,GACpC,oCAAoC,GACpC,oCAAoC,GACpC,mCAAmC,GACnC,SAAS,CAAA;AAEb,wBAAgB,oBAAoB,CAClC,KAAK,CAAC,WAAW,SAAS,uBAAuB,EAEjD,gBAAgB,SAAS,eAAe,GAAG,kBAAkB,CAAC,WAAW,CAAC,EAE1E,WAAW,EAAE,WAAW,EACxB,SAAS,CAAC,EAAE,SAAS,GACpB,+BAA+B,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAyBhE;AAED,KAAK,oCAAoC,GACrC,iCAAiC,GACjC,2BAA2B,GAC3B,qCAAqC,GACrC,sBAAsB,GACtB,uBAAuB,GACvB,kBAAkB,GAClB,uBAAuB,GACvB,cAAc,GACd,cAAc,GACd,4BAA4B,GAC5B,SAAS,CAAA;AAkFb,KAAK,oCAAoC,GACrC,iCAAiC,GACjC,kBAAkB,GAClB,uBAAuB,GACvB,cAAc,GACd,cAAc,GACd,4BAA4B,GAC5B,SAAS,CAAA;AAyCb,KAAK,oCAAoC,GACrC,iCAAiC,GACjC,kBAAkB,GAClB,uBAAuB,GACvB,cAAc,GACd,cAAc,GACd,4BAA4B,GAC5B,SAAS,CAAA;AA+Bb,KAAK,mCAAmC,GACpC,gCAAgC,GAChC,uBAAuB,GACvB,cAAc,GACd,cAAc,GACd,SAAS,CAAA;AAwDb,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,8BAA8B,EAC3C,SAAS,CAAC,EAAE,SAAS,mBAetB"}
package/accounts/types.ts CHANGED
@@ -19,17 +19,21 @@ export type AccountSource = Address | CustomSource
19
19
  export type CustomSource = {
20
20
  address: Address
21
21
  signMessage: ({ message }: { message: SignableMessage }) => Promise<Hash>
22
- signTransaction: <TTransactionSerializable extends TransactionSerializable>(
23
- transaction: TTransactionSerializable,
22
+ signTransaction: <
23
+ serializer extends
24
+ SerializeTransactionFn<TransactionSerializable> = SerializeTransactionFn<TransactionSerializable>,
25
+ transaction extends Parameters<serializer>[0] = Parameters<serializer>[0],
26
+ >(
27
+ transaction: transaction,
24
28
  args?: {
25
- serializer?: SerializeTransactionFn<TTransactionSerializable>
29
+ serializer?: serializer
26
30
  },
27
31
  ) => Promise<
28
32
  IsNarrowable<
29
- TransactionSerialized<GetTransactionType<TTransactionSerializable>>,
33
+ TransactionSerialized<GetTransactionType<transaction>>,
30
34
  Hash
31
35
  > extends true
32
- ? TransactionSerialized<GetTransactionType<TTransactionSerializable>>
36
+ ? TransactionSerialized<GetTransactionType<transaction>>
33
37
  : Hash
34
38
  >
35
39
  signTypedData: <
@@ -32,5 +32,6 @@ export async function sign({
32
32
  r: toHex(r),
33
33
  s: toHex(s),
34
34
  v: recovery ? 28n : 27n,
35
+ yParity: recovery,
35
36
  }
36
37
  }
@@ -17,20 +17,20 @@ import {
17
17
  import { type SignErrorType, sign } from './sign.js'
18
18
 
19
19
  export type SignTransactionParameters<
20
- TTransactionSerializable extends
21
- TransactionSerializable = TransactionSerializable,
20
+ serializer extends
21
+ SerializeTransactionFn<TransactionSerializable> = SerializeTransactionFn<TransactionSerializable>,
22
+ transaction extends Parameters<serializer>[0] = Parameters<serializer>[0],
22
23
  > = {
23
24
  privateKey: Hex
24
- transaction: TTransactionSerializable
25
- serializer?: SerializeTransactionFn<
26
- TransactionSerializable & TTransactionSerializable
27
- >
25
+ transaction: transaction
26
+ serializer?: serializer
28
27
  }
29
28
 
30
29
  export type SignTransactionReturnType<
31
- TTransactionSerializable extends
32
- TransactionSerializable = TransactionSerializable,
33
- > = TransactionSerialized<GetTransactionType<TTransactionSerializable>>
30
+ serializer extends
31
+ SerializeTransactionFn<TransactionSerializable> = SerializeTransactionFn<TransactionSerializable>,
32
+ transaction extends Parameters<serializer>[0] = Parameters<serializer>[0],
33
+ > = TransactionSerialized<GetTransactionType<transaction>>
34
34
 
35
35
  export type SignTransactionErrorType =
36
36
  | Keccak256ErrorType
@@ -38,20 +38,35 @@ export type SignTransactionErrorType =
38
38
  | ErrorType
39
39
 
40
40
  export async function signTransaction<
41
- TTransactionSerializable extends TransactionSerializable,
42
- >({
43
- privateKey,
44
- transaction,
45
- serializer = serializeTransaction,
46
- }: SignTransactionParameters<TTransactionSerializable>): Promise<
47
- SignTransactionReturnType<TTransactionSerializable>
48
- > {
41
+ serializer extends
42
+ SerializeTransactionFn<TransactionSerializable> = SerializeTransactionFn<TransactionSerializable>,
43
+ transaction extends Parameters<serializer>[0] = Parameters<serializer>[0],
44
+ >(
45
+ parameters: SignTransactionParameters<serializer, transaction>,
46
+ ): Promise<SignTransactionReturnType<serializer, transaction>> {
47
+ const {
48
+ privateKey,
49
+ transaction,
50
+ serializer = serializeTransaction,
51
+ } = parameters
52
+
53
+ const signableTransaction = (() => {
54
+ // For EIP-4844 Transactions, we want to sign the transaction payload body (tx_payload_body) without the sidecars (ie. without the network wrapper).
55
+ // See: https://github.com/ethereum/EIPs/blob/e00f4daa66bd56e2dbd5f1d36d09fd613811a48b/EIPS/eip-4844.md#networking
56
+ if (transaction.type === 'eip4844')
57
+ return {
58
+ ...transaction,
59
+ sidecars: false,
60
+ }
61
+ return transaction
62
+ })()
63
+
49
64
  const signature = await sign({
50
- hash: keccak256(serializer(transaction)),
65
+ hash: keccak256(serializer(signableTransaction)),
51
66
  privateKey,
52
67
  })
53
- return serializer(
54
- transaction,
55
- signature,
56
- ) as SignTransactionReturnType<TTransactionSerializable>
68
+ return serializer(transaction, signature) as SignTransactionReturnType<
69
+ serializer,
70
+ transaction
71
+ >
57
72
  }
package/actions/index.ts CHANGED
@@ -102,6 +102,11 @@ export {
102
102
  type GetBalanceReturnType,
103
103
  getBalance,
104
104
  } from './public/getBalance.js'
105
+ export {
106
+ type GetBlobBaseFeeErrorType,
107
+ type GetBlobBaseFeeReturnType,
108
+ getBlobBaseFee,
109
+ } from './public/getBlobBaseFee.js'
105
110
  export {
106
111
  type GetBlockErrorType,
107
112
  type GetBlockParameters,
@@ -157,9 +157,11 @@ export async function call<TChain extends Chain | undefined>(
157
157
  blockNumber,
158
158
  blockTag = 'latest',
159
159
  accessList,
160
+ blobs,
160
161
  data,
161
162
  gas,
162
163
  gasPrice,
164
+ maxFeePerBlobGas,
163
165
  maxFeePerGas,
164
166
  maxPriorityFeePerGas,
165
167
  nonce,
@@ -186,9 +188,11 @@ export async function call<TChain extends Chain | undefined>(
186
188
  ...extract(rest, { format: chainFormat }),
187
189
  from: account?.address,
188
190
  accessList,
191
+ blobs,
189
192
  data,
190
193
  gas,
191
194
  gasPrice,
195
+ maxFeePerBlobGas,
192
196
  maxFeePerGas,
193
197
  maxPriorityFeePerGas,
194
198
  nonce,
@@ -106,11 +106,13 @@ export async function estimateGas<
106
106
  try {
107
107
  const {
108
108
  accessList,
109
+ blobs,
109
110
  blockNumber,
110
111
  blockTag,
111
112
  data,
112
113
  gas,
113
114
  gasPrice,
115
+ maxFeePerBlobGas,
114
116
  maxFeePerGas,
115
117
  maxPriorityFeePerGas,
116
118
  nonce,
@@ -138,9 +140,11 @@ export async function estimateGas<
138
140
  ...extract(rest, { format: chainFormat }),
139
141
  from: account?.address,
140
142
  accessList,
143
+ blobs,
141
144
  data,
142
145
  gas,
143
146
  gasPrice,
147
+ maxFeePerBlobGas,
144
148
  maxFeePerGas,
145
149
  maxPriorityFeePerGas,
146
150
  nonce,
@@ -0,0 +1,42 @@
1
+ import type { Account } from '../../accounts/types.js'
2
+ import type { Client } from '../../clients/createClient.js'
3
+ import type { Transport } from '../../clients/transports/createTransport.js'
4
+ import type { ErrorType } from '../../errors/utils.js'
5
+ import type { Chain } from '../../types/chain.js'
6
+ import type { RequestErrorType } from '../../utils/buildRequest.js'
7
+
8
+ export type GetBlobBaseFeeReturnType = bigint
9
+
10
+ export type GetBlobBaseFeeErrorType = RequestErrorType | ErrorType
11
+
12
+ /**
13
+ * Returns the base fee per blob gas in wei.
14
+ *
15
+ * - Docs: https://viem.sh/docs/actions/public/getBlobBaseFee
16
+ * - JSON-RPC Methods: [`eth_blobBaseFee`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_blobBaseFee)
17
+ *
18
+ * @param client - Client to use
19
+ * @returns The blob base fee (in wei). {@link GetBlobBaseFeeReturnType}
20
+ *
21
+ * @example
22
+ * import { createPublicClient, http } from 'viem'
23
+ * import { mainnet } from 'viem/chains'
24
+ * import { getBlobBaseFee } from 'viem/public'
25
+ *
26
+ * const client = createPublicClient({
27
+ * chain: mainnet,
28
+ * transport: http(),
29
+ * })
30
+ * const blobBaseFee = await getBlobBaseFee(client)
31
+ */
32
+ export async function getBlobBaseFee<
33
+ TChain extends Chain | undefined,
34
+ TAccount extends Account | undefined,
35
+ >(
36
+ client: Client<Transport, TChain, TAccount>,
37
+ ): Promise<GetBlobBaseFeeReturnType> {
38
+ const baseFee = await client.request({
39
+ method: 'eth_blobBaseFee',
40
+ })
41
+ return BigInt(baseFee)
42
+ }