viem 2.0.0-beta.9 → 2.0.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (627) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/README.md +9 -3
  3. package/_cjs/actions/ens/getEnsName.js +4 -2
  4. package/_cjs/actions/ens/getEnsName.js.map +1 -1
  5. package/_cjs/actions/index.js +16 -2
  6. package/_cjs/actions/index.js.map +1 -1
  7. package/_cjs/actions/public/getFilterChanges.js +3 -2
  8. package/_cjs/actions/public/getFilterChanges.js.map +1 -1
  9. package/_cjs/actions/public/getFilterLogs.js +3 -2
  10. package/_cjs/actions/public/getFilterLogs.js.map +1 -1
  11. package/_cjs/actions/public/getLogs.js +3 -2
  12. package/_cjs/actions/public/getLogs.js.map +1 -1
  13. package/_cjs/actions/public/verifyTypedData.js +2 -1
  14. package/_cjs/actions/public/verifyTypedData.js.map +1 -1
  15. package/_cjs/actions/wallet/prepareTransactionRequest.js.map +1 -1
  16. package/_cjs/chains/celo/formatters.js +0 -10
  17. package/_cjs/chains/celo/formatters.js.map +1 -1
  18. package/_cjs/chains/definitions/arbitrumSepolia.js +4 -0
  19. package/_cjs/chains/definitions/arbitrumSepolia.js.map +1 -1
  20. package/_cjs/chains/definitions/astar.js +0 -1
  21. package/_cjs/chains/definitions/astar.js.map +1 -1
  22. package/_cjs/chains/definitions/astarZkatana.js +0 -6
  23. package/_cjs/chains/definitions/astarZkatana.js.map +1 -1
  24. package/_cjs/chains/definitions/base.js +5 -0
  25. package/_cjs/chains/definitions/base.js.map +1 -1
  26. package/_cjs/chains/definitions/baseGoerli.js +5 -0
  27. package/_cjs/chains/definitions/baseGoerli.js.map +1 -1
  28. package/_cjs/chains/definitions/baseSepolia.js +5 -3
  29. package/_cjs/chains/definitions/baseSepolia.js.map +1 -1
  30. package/_cjs/chains/definitions/bscTestnet.js +0 -1
  31. package/_cjs/chains/definitions/bscTestnet.js.map +1 -1
  32. package/_cjs/chains/definitions/confluxESpaceTestnet.js +0 -4
  33. package/_cjs/chains/definitions/confluxESpaceTestnet.js.map +1 -1
  34. package/_cjs/chains/definitions/fantomSonicTestnet.js +25 -0
  35. package/_cjs/chains/definitions/fantomSonicTestnet.js.map +1 -0
  36. package/_cjs/chains/definitions/kava.js +0 -1
  37. package/_cjs/chains/definitions/kava.js.map +1 -1
  38. package/_cjs/chains/definitions/kavaTestnet.js +0 -1
  39. package/_cjs/chains/definitions/kavaTestnet.js.map +1 -1
  40. package/_cjs/chains/definitions/klaytnBaobab.js +0 -1
  41. package/_cjs/chains/definitions/klaytnBaobab.js.map +1 -1
  42. package/_cjs/chains/definitions/lukso.js +0 -4
  43. package/_cjs/chains/definitions/lukso.js.map +1 -1
  44. package/_cjs/chains/definitions/manta.js +0 -1
  45. package/_cjs/chains/definitions/manta.js.map +1 -1
  46. package/_cjs/chains/definitions/mantaTestnet.js +0 -1
  47. package/_cjs/chains/definitions/mantaTestnet.js.map +1 -1
  48. package/_cjs/chains/definitions/neonMainnet.js +0 -3
  49. package/_cjs/chains/definitions/neonMainnet.js.map +1 -1
  50. package/_cjs/chains/definitions/optimism.js +5 -0
  51. package/_cjs/chains/definitions/optimism.js.map +1 -1
  52. package/_cjs/chains/definitions/optimismGoerli.js +5 -0
  53. package/_cjs/chains/definitions/optimismGoerli.js.map +1 -1
  54. package/_cjs/chains/definitions/optimismSepolia.js +5 -0
  55. package/_cjs/chains/definitions/optimismSepolia.js.map +1 -1
  56. package/_cjs/chains/definitions/pgn.js +12 -3
  57. package/_cjs/chains/definitions/pgn.js.map +1 -1
  58. package/_cjs/chains/definitions/pgnTestnet.js +7 -3
  59. package/_cjs/chains/definitions/pgnTestnet.js.map +1 -1
  60. package/_cjs/chains/definitions/rootstock.js +0 -1
  61. package/_cjs/chains/definitions/rootstock.js.map +1 -1
  62. package/_cjs/chains/definitions/sapphire.js +0 -4
  63. package/_cjs/chains/definitions/sapphire.js.map +1 -1
  64. package/_cjs/chains/definitions/sapphireTestnet.js +0 -4
  65. package/_cjs/chains/definitions/sapphireTestnet.js.map +1 -1
  66. package/_cjs/chains/definitions/shibarium.js +0 -3
  67. package/_cjs/chains/definitions/shibarium.js.map +1 -1
  68. package/_cjs/chains/definitions/shimmer.js +0 -3
  69. package/_cjs/chains/definitions/shimmer.js.map +1 -1
  70. package/_cjs/chains/definitions/shimmerTestnet.js +0 -3
  71. package/_cjs/chains/definitions/shimmerTestnet.js.map +1 -1
  72. package/_cjs/chains/definitions/taikoJolnir.js +2 -2
  73. package/_cjs/chains/definitions/taikoJolnir.js.map +1 -1
  74. package/_cjs/chains/definitions/tenet.js +0 -1
  75. package/_cjs/chains/definitions/tenet.js.map +1 -1
  76. package/_cjs/chains/definitions/zilliqa.js +23 -0
  77. package/_cjs/chains/definitions/zilliqa.js.map +1 -0
  78. package/_cjs/chains/definitions/zilliqaTestnet.js +23 -0
  79. package/_cjs/chains/definitions/zilliqaTestnet.js.map +1 -0
  80. package/_cjs/chains/definitions/zkSyncSepoliaTestnet.js +31 -0
  81. package/_cjs/chains/definitions/zkSyncSepoliaTestnet.js.map +1 -0
  82. package/_cjs/chains/definitions/zkSyncTestnet.js.map +1 -1
  83. package/_cjs/chains/definitions/zora.js +5 -0
  84. package/_cjs/chains/definitions/zora.js.map +1 -1
  85. package/_cjs/chains/definitions/zoraSepolia.js +5 -4
  86. package/_cjs/chains/definitions/zoraSepolia.js.map +1 -1
  87. package/_cjs/chains/index.js +12 -4
  88. package/_cjs/chains/index.js.map +1 -1
  89. package/_cjs/chains/opStack/abis.js +366 -1
  90. package/_cjs/chains/opStack/abis.js.map +1 -1
  91. package/_cjs/chains/opStack/actions/buildDepositTransaction.js +1 -1
  92. package/_cjs/chains/opStack/actions/buildDepositTransaction.js.map +1 -1
  93. package/_cjs/chains/opStack/actions/buildInitiateWithdrawal.js +29 -0
  94. package/_cjs/chains/opStack/actions/buildInitiateWithdrawal.js.map +1 -0
  95. package/_cjs/chains/opStack/actions/buildProveWithdrawal.js +39 -0
  96. package/_cjs/chains/opStack/actions/buildProveWithdrawal.js.map +1 -0
  97. package/_cjs/chains/opStack/actions/depositTransaction.js +11 -6
  98. package/_cjs/chains/opStack/actions/depositTransaction.js.map +1 -1
  99. package/_cjs/chains/opStack/actions/estimateDepositTransactionGas.js +37 -0
  100. package/_cjs/chains/opStack/actions/estimateDepositTransactionGas.js.map +1 -0
  101. package/_cjs/chains/opStack/actions/estimateFinalizeWithdrawalGas.js +29 -0
  102. package/_cjs/chains/opStack/actions/estimateFinalizeWithdrawalGas.js.map +1 -0
  103. package/_cjs/chains/opStack/actions/estimateInitiateWithdrawalGas.js +24 -0
  104. package/_cjs/chains/opStack/actions/estimateInitiateWithdrawalGas.js.map +1 -0
  105. package/_cjs/chains/opStack/actions/estimateProveWithdrawalGas.js +29 -0
  106. package/_cjs/chains/opStack/actions/estimateProveWithdrawalGas.js.map +1 -0
  107. package/_cjs/chains/opStack/actions/finalizeWithdrawal.js +33 -0
  108. package/_cjs/chains/opStack/actions/finalizeWithdrawal.js.map +1 -0
  109. package/_cjs/chains/opStack/actions/getL2Output.js +30 -0
  110. package/_cjs/chains/opStack/actions/getL2Output.js.map +1 -0
  111. package/_cjs/chains/opStack/actions/getTimeToFinalize.js +46 -0
  112. package/_cjs/chains/opStack/actions/getTimeToFinalize.js.map +1 -0
  113. package/_cjs/chains/opStack/actions/getTimeToNextL2Output.js +63 -0
  114. package/_cjs/chains/opStack/actions/getTimeToNextL2Output.js.map +1 -0
  115. package/_cjs/chains/opStack/actions/getTimeToProve.js +13 -0
  116. package/_cjs/chains/opStack/actions/getTimeToProve.js.map +1 -0
  117. package/_cjs/chains/opStack/actions/getWithdrawalStatus.js +71 -0
  118. package/_cjs/chains/opStack/actions/getWithdrawalStatus.js.map +1 -0
  119. package/_cjs/chains/opStack/actions/initiateWithdrawal.js +28 -0
  120. package/_cjs/chains/opStack/actions/initiateWithdrawal.js.map +1 -0
  121. package/_cjs/chains/opStack/actions/proveWithdrawal.js +33 -0
  122. package/_cjs/chains/opStack/actions/proveWithdrawal.js.map +1 -0
  123. package/_cjs/chains/opStack/actions/waitForNextL2Output.js +32 -0
  124. package/_cjs/chains/opStack/actions/waitForNextL2Output.js.map +1 -0
  125. package/_cjs/chains/opStack/actions/waitToFinalize.js +11 -0
  126. package/_cjs/chains/opStack/actions/waitToFinalize.js.map +1 -0
  127. package/_cjs/chains/opStack/actions/waitToProve.js +21 -0
  128. package/_cjs/chains/opStack/actions/waitToProve.js.map +1 -0
  129. package/_cjs/chains/opStack/chains.js +5 -1
  130. package/_cjs/chains/opStack/chains.js.map +1 -1
  131. package/_cjs/chains/opStack/decorators/publicL1.js +35 -0
  132. package/_cjs/chains/opStack/decorators/publicL1.js.map +1 -0
  133. package/_cjs/chains/opStack/decorators/publicL2.js +5 -1
  134. package/_cjs/chains/opStack/decorators/publicL2.js.map +1 -1
  135. package/_cjs/chains/opStack/decorators/walletL1.js +4 -0
  136. package/_cjs/chains/opStack/decorators/walletL1.js.map +1 -1
  137. package/_cjs/chains/opStack/decorators/walletL2.js +13 -0
  138. package/_cjs/chains/opStack/decorators/walletL2.js.map +1 -0
  139. package/_cjs/chains/opStack/errors/withdrawal.js +17 -0
  140. package/_cjs/chains/opStack/errors/withdrawal.js.map +1 -0
  141. package/_cjs/chains/opStack/index.js +43 -15
  142. package/_cjs/chains/opStack/index.js.map +1 -1
  143. package/_cjs/chains/opStack/types/deposit.js +3 -0
  144. package/_cjs/chains/opStack/types/deposit.js.map +1 -0
  145. package/_cjs/chains/opStack/types/withdrawal.js +3 -0
  146. package/_cjs/chains/opStack/types/withdrawal.js.map +1 -0
  147. package/_cjs/chains/opStack/utils/extractWithdrawalMessageLogs.js +14 -0
  148. package/_cjs/chains/opStack/utils/extractWithdrawalMessageLogs.js.map +1 -0
  149. package/_cjs/chains/opStack/utils/getL2TransactionHash.js +2 -2
  150. package/_cjs/chains/opStack/utils/getL2TransactionHash.js.map +1 -1
  151. package/_cjs/chains/opStack/utils/getWithdrawalHashStorageSlot.js +11 -0
  152. package/_cjs/chains/opStack/utils/getWithdrawalHashStorageSlot.js.map +1 -0
  153. package/_cjs/chains/opStack/utils/getWithdrawals.js +10 -0
  154. package/_cjs/chains/opStack/utils/getWithdrawals.js.map +1 -0
  155. package/_cjs/chains/opStack/utils/{fromOpaqueData.js → opaqueDataToDepositData.js} +4 -4
  156. package/_cjs/chains/opStack/utils/opaqueDataToDepositData.js.map +1 -0
  157. package/_cjs/errors/abi.js +21 -1
  158. package/_cjs/errors/abi.js.map +1 -1
  159. package/_cjs/errors/version.js +1 -1
  160. package/_cjs/errors/version.js.map +1 -1
  161. package/_cjs/index.js +10 -2
  162. package/_cjs/index.js.map +1 -1
  163. package/_cjs/utils/abi/getAbiItem.js +46 -3
  164. package/_cjs/utils/abi/getAbiItem.js.map +1 -1
  165. package/_cjs/utils/hash/ripemd160.js +16 -0
  166. package/_cjs/utils/hash/ripemd160.js.map +1 -0
  167. package/_cjs/utils/hash/sha256.js +16 -0
  168. package/_cjs/utils/hash/sha256.js.map +1 -0
  169. package/_cjs/utils/index.js +5 -1
  170. package/_cjs/utils/index.js.map +1 -1
  171. package/_esm/actions/ens/getEnsName.js +4 -2
  172. package/_esm/actions/ens/getEnsName.js.map +1 -1
  173. package/_esm/actions/index.js +7 -0
  174. package/_esm/actions/index.js.map +1 -1
  175. package/_esm/actions/public/getFilterChanges.js +3 -2
  176. package/_esm/actions/public/getFilterChanges.js.map +1 -1
  177. package/_esm/actions/public/getFilterLogs.js +3 -2
  178. package/_esm/actions/public/getFilterLogs.js.map +1 -1
  179. package/_esm/actions/public/getLogs.js +3 -2
  180. package/_esm/actions/public/getLogs.js.map +1 -1
  181. package/_esm/actions/public/verifyTypedData.js +2 -1
  182. package/_esm/actions/public/verifyTypedData.js.map +1 -1
  183. package/_esm/actions/wallet/prepareTransactionRequest.js.map +1 -1
  184. package/_esm/chains/celo/formatters.js +0 -10
  185. package/_esm/chains/celo/formatters.js.map +1 -1
  186. package/_esm/chains/definitions/arbitrumSepolia.js +4 -0
  187. package/_esm/chains/definitions/arbitrumSepolia.js.map +1 -1
  188. package/_esm/chains/definitions/astar.js +0 -1
  189. package/_esm/chains/definitions/astar.js.map +1 -1
  190. package/_esm/chains/definitions/astarZkatana.js +0 -6
  191. package/_esm/chains/definitions/astarZkatana.js.map +1 -1
  192. package/_esm/chains/definitions/base.js +5 -0
  193. package/_esm/chains/definitions/base.js.map +1 -1
  194. package/_esm/chains/definitions/baseGoerli.js +5 -0
  195. package/_esm/chains/definitions/baseGoerli.js.map +1 -1
  196. package/_esm/chains/definitions/baseSepolia.js +5 -3
  197. package/_esm/chains/definitions/baseSepolia.js.map +1 -1
  198. package/_esm/chains/definitions/bscTestnet.js +0 -1
  199. package/_esm/chains/definitions/bscTestnet.js.map +1 -1
  200. package/_esm/chains/definitions/confluxESpaceTestnet.js +0 -4
  201. package/_esm/chains/definitions/confluxESpaceTestnet.js.map +1 -1
  202. package/_esm/chains/definitions/fantomSonicTestnet.js +22 -0
  203. package/_esm/chains/definitions/fantomSonicTestnet.js.map +1 -0
  204. package/_esm/chains/definitions/kava.js +0 -1
  205. package/_esm/chains/definitions/kava.js.map +1 -1
  206. package/_esm/chains/definitions/kavaTestnet.js +0 -1
  207. package/_esm/chains/definitions/kavaTestnet.js.map +1 -1
  208. package/_esm/chains/definitions/klaytnBaobab.js +0 -1
  209. package/_esm/chains/definitions/klaytnBaobab.js.map +1 -1
  210. package/_esm/chains/definitions/lukso.js +0 -4
  211. package/_esm/chains/definitions/lukso.js.map +1 -1
  212. package/_esm/chains/definitions/manta.js +0 -1
  213. package/_esm/chains/definitions/manta.js.map +1 -1
  214. package/_esm/chains/definitions/mantaTestnet.js +0 -1
  215. package/_esm/chains/definitions/mantaTestnet.js.map +1 -1
  216. package/_esm/chains/definitions/neonMainnet.js +0 -3
  217. package/_esm/chains/definitions/neonMainnet.js.map +1 -1
  218. package/_esm/chains/definitions/optimism.js +5 -0
  219. package/_esm/chains/definitions/optimism.js.map +1 -1
  220. package/_esm/chains/definitions/optimismGoerli.js +5 -0
  221. package/_esm/chains/definitions/optimismGoerli.js.map +1 -1
  222. package/_esm/chains/definitions/optimismSepolia.js +5 -0
  223. package/_esm/chains/definitions/optimismSepolia.js.map +1 -1
  224. package/_esm/chains/definitions/pgn.js +12 -3
  225. package/_esm/chains/definitions/pgn.js.map +1 -1
  226. package/_esm/chains/definitions/pgnTestnet.js +7 -3
  227. package/_esm/chains/definitions/pgnTestnet.js.map +1 -1
  228. package/_esm/chains/definitions/rootstock.js +0 -1
  229. package/_esm/chains/definitions/rootstock.js.map +1 -1
  230. package/_esm/chains/definitions/sapphire.js +0 -4
  231. package/_esm/chains/definitions/sapphire.js.map +1 -1
  232. package/_esm/chains/definitions/sapphireTestnet.js +0 -4
  233. package/_esm/chains/definitions/sapphireTestnet.js.map +1 -1
  234. package/_esm/chains/definitions/shibarium.js +0 -3
  235. package/_esm/chains/definitions/shibarium.js.map +1 -1
  236. package/_esm/chains/definitions/shimmer.js +0 -3
  237. package/_esm/chains/definitions/shimmer.js.map +1 -1
  238. package/_esm/chains/definitions/shimmerTestnet.js +0 -3
  239. package/_esm/chains/definitions/shimmerTestnet.js.map +1 -1
  240. package/_esm/chains/definitions/taikoJolnir.js +2 -2
  241. package/_esm/chains/definitions/taikoJolnir.js.map +1 -1
  242. package/_esm/chains/definitions/tenet.js +0 -1
  243. package/_esm/chains/definitions/tenet.js.map +1 -1
  244. package/_esm/chains/definitions/zilliqa.js +20 -0
  245. package/_esm/chains/definitions/zilliqa.js.map +1 -0
  246. package/_esm/chains/definitions/zilliqaTestnet.js +20 -0
  247. package/_esm/chains/definitions/zilliqaTestnet.js.map +1 -0
  248. package/_esm/chains/definitions/zkSyncSepoliaTestnet.js +28 -0
  249. package/_esm/chains/definitions/zkSyncSepoliaTestnet.js.map +1 -0
  250. package/_esm/chains/definitions/zkSyncTestnet.js +1 -0
  251. package/_esm/chains/definitions/zkSyncTestnet.js.map +1 -1
  252. package/_esm/chains/definitions/zora.js +5 -0
  253. package/_esm/chains/definitions/zora.js.map +1 -1
  254. package/_esm/chains/definitions/zoraSepolia.js +5 -4
  255. package/_esm/chains/definitions/zoraSepolia.js.map +1 -1
  256. package/_esm/chains/index.js +4 -0
  257. package/_esm/chains/index.js.map +1 -1
  258. package/_esm/chains/opStack/abis.js +365 -0
  259. package/_esm/chains/opStack/abis.js.map +1 -1
  260. package/_esm/chains/opStack/actions/buildDepositTransaction.js +2 -2
  261. package/_esm/chains/opStack/actions/buildDepositTransaction.js.map +1 -1
  262. package/_esm/chains/opStack/actions/buildInitiateWithdrawal.js +50 -0
  263. package/_esm/chains/opStack/actions/buildInitiateWithdrawal.js.map +1 -0
  264. package/_esm/chains/opStack/actions/buildProveWithdrawal.js +59 -0
  265. package/_esm/chains/opStack/actions/buildProveWithdrawal.js.map +1 -0
  266. package/_esm/chains/opStack/actions/depositTransaction.js +17 -14
  267. package/_esm/chains/opStack/actions/depositTransaction.js.map +1 -1
  268. package/_esm/chains/opStack/actions/estimateDepositTransactionGas.js +62 -0
  269. package/_esm/chains/opStack/actions/estimateDepositTransactionGas.js.map +1 -0
  270. package/_esm/chains/opStack/actions/estimateFinalizeWithdrawalGas.js +50 -0
  271. package/_esm/chains/opStack/actions/estimateFinalizeWithdrawalGas.js.map +1 -0
  272. package/_esm/chains/opStack/actions/estimateInitiateWithdrawalGas.js +48 -0
  273. package/_esm/chains/opStack/actions/estimateInitiateWithdrawalGas.js.map +1 -0
  274. package/_esm/chains/opStack/actions/estimateProveWithdrawalGas.js +53 -0
  275. package/_esm/chains/opStack/actions/estimateProveWithdrawalGas.js.map +1 -0
  276. package/_esm/chains/opStack/actions/finalizeWithdrawal.js +53 -0
  277. package/_esm/chains/opStack/actions/finalizeWithdrawal.js.map +1 -0
  278. package/_esm/chains/opStack/actions/getL2Output.js +50 -0
  279. package/_esm/chains/opStack/actions/getL2Output.js.map +1 -0
  280. package/_esm/chains/opStack/actions/getTimeToFinalize.js +77 -0
  281. package/_esm/chains/opStack/actions/getTimeToFinalize.js.map +1 -0
  282. package/_esm/chains/opStack/actions/getTimeToNextL2Output.js +91 -0
  283. package/_esm/chains/opStack/actions/getTimeToNextL2Output.js.map +1 -0
  284. package/_esm/chains/opStack/actions/getTimeToProve.js +39 -0
  285. package/_esm/chains/opStack/actions/getTimeToProve.js.map +1 -0
  286. package/_esm/chains/opStack/actions/getWithdrawalStatus.js +99 -0
  287. package/_esm/chains/opStack/actions/getWithdrawalStatus.js.map +1 -0
  288. package/_esm/chains/opStack/actions/initiateWithdrawal.js +76 -0
  289. package/_esm/chains/opStack/actions/initiateWithdrawal.js.map +1 -0
  290. package/_esm/chains/opStack/actions/proveWithdrawal.js +57 -0
  291. package/_esm/chains/opStack/actions/proveWithdrawal.js.map +1 -0
  292. package/_esm/chains/opStack/actions/waitForNextL2Output.js +58 -0
  293. package/_esm/chains/opStack/actions/waitForNextL2Output.js.map +1 -0
  294. package/_esm/chains/opStack/actions/waitToFinalize.js +41 -0
  295. package/_esm/chains/opStack/actions/waitToFinalize.js.map +1 -0
  296. package/_esm/chains/opStack/actions/waitToProve.js +47 -0
  297. package/_esm/chains/opStack/actions/waitToProve.js.map +1 -0
  298. package/_esm/chains/opStack/chains.js +2 -0
  299. package/_esm/chains/opStack/chains.js.map +1 -1
  300. package/_esm/chains/opStack/decorators/publicL1.js +31 -0
  301. package/_esm/chains/opStack/decorators/publicL1.js.map +1 -0
  302. package/_esm/chains/opStack/decorators/publicL2.js +5 -1
  303. package/_esm/chains/opStack/decorators/publicL2.js.map +1 -1
  304. package/_esm/chains/opStack/decorators/walletL1.js +4 -0
  305. package/_esm/chains/opStack/decorators/walletL1.js.map +1 -1
  306. package/_esm/chains/opStack/decorators/walletL2.js +9 -0
  307. package/_esm/chains/opStack/decorators/walletL2.js.map +1 -0
  308. package/_esm/chains/opStack/errors/withdrawal.js +13 -0
  309. package/_esm/chains/opStack/errors/withdrawal.js.map +1 -0
  310. package/_esm/chains/opStack/index.js +21 -3
  311. package/_esm/chains/opStack/index.js.map +1 -1
  312. package/_esm/chains/opStack/types/deposit.js +2 -0
  313. package/_esm/chains/opStack/types/deposit.js.map +1 -0
  314. package/_esm/chains/opStack/types/withdrawal.js +2 -0
  315. package/_esm/chains/opStack/types/withdrawal.js.map +1 -0
  316. package/_esm/chains/opStack/utils/extractWithdrawalMessageLogs.js +10 -0
  317. package/_esm/chains/opStack/utils/extractWithdrawalMessageLogs.js.map +1 -0
  318. package/_esm/chains/opStack/utils/getL2TransactionHash.js +2 -2
  319. package/_esm/chains/opStack/utils/getL2TransactionHash.js.map +1 -1
  320. package/_esm/chains/opStack/utils/getWithdrawalHashStorageSlot.js +7 -0
  321. package/_esm/chains/opStack/utils/getWithdrawalHashStorageSlot.js.map +1 -0
  322. package/_esm/chains/opStack/utils/getWithdrawals.js +6 -0
  323. package/_esm/chains/opStack/utils/getWithdrawals.js.map +1 -0
  324. package/_esm/chains/opStack/utils/{fromOpaqueData.js → opaqueDataToDepositData.js} +2 -2
  325. package/_esm/chains/opStack/utils/opaqueDataToDepositData.js.map +1 -0
  326. package/_esm/errors/abi.js +19 -0
  327. package/_esm/errors/abi.js.map +1 -1
  328. package/_esm/errors/version.js +1 -1
  329. package/_esm/errors/version.js.map +1 -1
  330. package/_esm/index.js +4 -0
  331. package/_esm/index.js.map +1 -1
  332. package/_esm/utils/abi/getAbiItem.js +46 -2
  333. package/_esm/utils/abi/getAbiItem.js.map +1 -1
  334. package/_esm/utils/hash/ripemd160.js +12 -0
  335. package/_esm/utils/hash/ripemd160.js.map +1 -0
  336. package/_esm/utils/hash/sha256.js +12 -0
  337. package/_esm/utils/hash/sha256.js.map +1 -0
  338. package/_esm/utils/index.js +2 -0
  339. package/_esm/utils/index.js.map +1 -1
  340. package/_types/actions/ens/getEnsName.d.ts.map +1 -1
  341. package/_types/actions/index.d.ts +7 -0
  342. package/_types/actions/index.d.ts.map +1 -1
  343. package/_types/actions/public/getFilterChanges.d.ts.map +1 -1
  344. package/_types/actions/public/verifyTypedData.d.ts +2 -4
  345. package/_types/actions/public/verifyTypedData.d.ts.map +1 -1
  346. package/_types/actions/wallet/prepareTransactionRequest.d.ts +5 -5
  347. package/_types/actions/wallet/prepareTransactionRequest.d.ts.map +1 -1
  348. package/_types/chains/celo/chainConfig.d.ts +97 -120
  349. package/_types/chains/celo/chainConfig.d.ts.map +1 -1
  350. package/_types/chains/celo/formatters.d.ts +98 -121
  351. package/_types/chains/celo/formatters.d.ts.map +1 -1
  352. package/_types/chains/celo/index.d.ts +1 -1
  353. package/_types/chains/celo/index.d.ts.map +1 -1
  354. package/_types/chains/celo/types.d.ts +2 -14
  355. package/_types/chains/celo/types.d.ts.map +1 -1
  356. package/_types/chains/definitions/arbitrumSepolia.d.ts +4 -0
  357. package/_types/chains/definitions/arbitrumSepolia.d.ts.map +1 -1
  358. package/_types/chains/definitions/astar.d.ts +0 -3
  359. package/_types/chains/definitions/astar.d.ts.map +1 -1
  360. package/_types/chains/definitions/astarZkatana.d.ts +0 -3
  361. package/_types/chains/definitions/astarZkatana.d.ts.map +1 -1
  362. package/_types/chains/definitions/base.d.ts +80 -75
  363. package/_types/chains/definitions/base.d.ts.map +1 -1
  364. package/_types/chains/definitions/baseGoerli.d.ts +80 -75
  365. package/_types/chains/definitions/baseGoerli.d.ts.map +1 -1
  366. package/_types/chains/definitions/baseSepolia.d.ts +80 -78
  367. package/_types/chains/definitions/baseSepolia.d.ts.map +1 -1
  368. package/_types/chains/definitions/bscTestnet.d.ts +0 -3
  369. package/_types/chains/definitions/bscTestnet.d.ts.map +1 -1
  370. package/_types/chains/definitions/celo.d.ts +97 -120
  371. package/_types/chains/definitions/celo.d.ts.map +1 -1
  372. package/_types/chains/definitions/celoAlfajores.d.ts +97 -120
  373. package/_types/chains/definitions/celoAlfajores.d.ts.map +1 -1
  374. package/_types/chains/definitions/celoCannoli.d.ts +97 -120
  375. package/_types/chains/definitions/celoCannoli.d.ts.map +1 -1
  376. package/_types/chains/definitions/confluxESpaceTestnet.d.ts +0 -4
  377. package/_types/chains/definitions/confluxESpaceTestnet.d.ts.map +1 -1
  378. package/_types/chains/definitions/fantomSonicTestnet.d.ts +35 -0
  379. package/_types/chains/definitions/fantomSonicTestnet.d.ts.map +1 -0
  380. package/_types/chains/definitions/kava.d.ts +0 -3
  381. package/_types/chains/definitions/kava.d.ts.map +1 -1
  382. package/_types/chains/definitions/kavaTestnet.d.ts +0 -3
  383. package/_types/chains/definitions/kavaTestnet.d.ts.map +1 -1
  384. package/_types/chains/definitions/klaytnBaobab.d.ts +0 -3
  385. package/_types/chains/definitions/klaytnBaobab.d.ts.map +1 -1
  386. package/_types/chains/definitions/lukso.d.ts +0 -4
  387. package/_types/chains/definitions/lukso.d.ts.map +1 -1
  388. package/_types/chains/definitions/manta.d.ts +0 -3
  389. package/_types/chains/definitions/manta.d.ts.map +1 -1
  390. package/_types/chains/definitions/mantaTestnet.d.ts +0 -3
  391. package/_types/chains/definitions/mantaTestnet.d.ts.map +1 -1
  392. package/_types/chains/definitions/neonMainnet.d.ts +0 -3
  393. package/_types/chains/definitions/neonMainnet.d.ts.map +1 -1
  394. package/_types/chains/definitions/optimism.d.ts +80 -75
  395. package/_types/chains/definitions/optimism.d.ts.map +1 -1
  396. package/_types/chains/definitions/optimismGoerli.d.ts +80 -75
  397. package/_types/chains/definitions/optimismGoerli.d.ts.map +1 -1
  398. package/_types/chains/definitions/optimismSepolia.d.ts +80 -75
  399. package/_types/chains/definitions/optimismSepolia.d.ts.map +1 -1
  400. package/_types/chains/definitions/pgn.d.ts +85 -78
  401. package/_types/chains/definitions/pgn.d.ts.map +1 -1
  402. package/_types/chains/definitions/pgnTestnet.d.ts +80 -78
  403. package/_types/chains/definitions/pgnTestnet.d.ts.map +1 -1
  404. package/_types/chains/definitions/rootstock.d.ts +0 -3
  405. package/_types/chains/definitions/rootstock.d.ts.map +1 -1
  406. package/_types/chains/definitions/sapphire.d.ts +0 -4
  407. package/_types/chains/definitions/sapphire.d.ts.map +1 -1
  408. package/_types/chains/definitions/sapphireTestnet.d.ts +0 -4
  409. package/_types/chains/definitions/sapphireTestnet.d.ts.map +1 -1
  410. package/_types/chains/definitions/shibarium.d.ts +0 -3
  411. package/_types/chains/definitions/shibarium.d.ts.map +1 -1
  412. package/_types/chains/definitions/shimmer.d.ts +0 -3
  413. package/_types/chains/definitions/shimmer.d.ts.map +1 -1
  414. package/_types/chains/definitions/shimmerTestnet.d.ts +0 -3
  415. package/_types/chains/definitions/shimmerTestnet.d.ts.map +1 -1
  416. package/_types/chains/definitions/taikoJolnir.d.ts +2 -2
  417. package/_types/chains/definitions/tenet.d.ts +0 -3
  418. package/_types/chains/definitions/tenet.d.ts.map +1 -1
  419. package/_types/chains/definitions/zilliqa.d.ts +35 -0
  420. package/_types/chains/definitions/zilliqa.d.ts.map +1 -0
  421. package/_types/chains/definitions/zilliqaTestnet.d.ts +35 -0
  422. package/_types/chains/definitions/zilliqaTestnet.d.ts.map +1 -0
  423. package/_types/chains/definitions/zkSync.d.ts +9 -9
  424. package/_types/chains/definitions/zkSyncSepoliaTestnet.d.ts +529 -0
  425. package/_types/chains/definitions/zkSyncSepoliaTestnet.d.ts.map +1 -0
  426. package/_types/chains/definitions/zkSyncTestnet.d.ts +10 -9
  427. package/_types/chains/definitions/zkSyncTestnet.d.ts.map +1 -1
  428. package/_types/chains/definitions/zora.d.ts +80 -75
  429. package/_types/chains/definitions/zora.d.ts.map +1 -1
  430. package/_types/chains/definitions/zoraSepolia.d.ts +80 -79
  431. package/_types/chains/definitions/zoraSepolia.d.ts.map +1 -1
  432. package/_types/chains/definitions/zoraTestnet.d.ts +75 -75
  433. package/_types/chains/index.d.ts +5 -1
  434. package/_types/chains/index.d.ts.map +1 -1
  435. package/_types/chains/opStack/abis.d.ts +457 -0
  436. package/_types/chains/opStack/abis.d.ts.map +1 -1
  437. package/_types/chains/opStack/actions/buildDepositTransaction.d.ts +5 -3
  438. package/_types/chains/opStack/actions/buildDepositTransaction.d.ts.map +1 -1
  439. package/_types/chains/opStack/actions/buildInitiateWithdrawal.d.ts +50 -0
  440. package/_types/chains/opStack/actions/buildInitiateWithdrawal.d.ts.map +1 -0
  441. package/_types/chains/opStack/actions/buildProveWithdrawal.d.ts +48 -0
  442. package/_types/chains/opStack/actions/buildProveWithdrawal.d.ts.map +1 -0
  443. package/_types/chains/opStack/actions/depositTransaction.d.ts +18 -34
  444. package/_types/chains/opStack/actions/depositTransaction.d.ts.map +1 -1
  445. package/_types/chains/opStack/actions/estimateDepositTransactionGas.d.ts +50 -0
  446. package/_types/chains/opStack/actions/estimateDepositTransactionGas.d.ts.map +1 -0
  447. package/_types/chains/opStack/actions/estimateFinalizeWithdrawalGas.d.ts +45 -0
  448. package/_types/chains/opStack/actions/estimateFinalizeWithdrawalGas.d.ts.map +1 -0
  449. package/_types/chains/opStack/actions/estimateInitiateWithdrawalGas.d.ts +51 -0
  450. package/_types/chains/opStack/actions/estimateInitiateWithdrawalGas.d.ts.map +1 -0
  451. package/_types/chains/opStack/actions/estimateProveWithdrawalGas.d.ts +63 -0
  452. package/_types/chains/opStack/actions/estimateProveWithdrawalGas.d.ts.map +1 -0
  453. package/_types/chains/opStack/actions/finalizeWithdrawal.d.ts +49 -0
  454. package/_types/chains/opStack/actions/finalizeWithdrawal.d.ts.map +1 -0
  455. package/_types/chains/opStack/actions/getL2Output.d.ts +44 -0
  456. package/_types/chains/opStack/actions/getL2Output.d.ts.map +1 -0
  457. package/_types/chains/opStack/actions/getTimeToFinalize.d.ts +57 -0
  458. package/_types/chains/opStack/actions/getTimeToFinalize.d.ts.map +1 -0
  459. package/_types/chains/opStack/actions/getTimeToNextL2Output.d.ts +61 -0
  460. package/_types/chains/opStack/actions/getTimeToNextL2Output.d.ts.map +1 -0
  461. package/_types/chains/opStack/actions/getTimeToProve.d.ts +50 -0
  462. package/_types/chains/opStack/actions/getTimeToProve.d.ts.map +1 -0
  463. package/_types/chains/opStack/actions/getWithdrawalStatus.d.ts +48 -0
  464. package/_types/chains/opStack/actions/getWithdrawalStatus.d.ts.map +1 -0
  465. package/_types/chains/opStack/actions/initiateWithdrawal.d.ts +77 -0
  466. package/_types/chains/opStack/actions/initiateWithdrawal.d.ts.map +1 -0
  467. package/_types/chains/opStack/actions/proveWithdrawal.d.ts +67 -0
  468. package/_types/chains/opStack/actions/proveWithdrawal.d.ts.map +1 -0
  469. package/_types/chains/opStack/actions/waitForNextL2Output.d.ts +55 -0
  470. package/_types/chains/opStack/actions/waitForNextL2Output.d.ts.map +1 -0
  471. package/_types/chains/opStack/actions/waitToFinalize.d.ts +45 -0
  472. package/_types/chains/opStack/actions/waitToFinalize.d.ts.map +1 -0
  473. package/_types/chains/opStack/actions/waitToProve.d.ts +55 -0
  474. package/_types/chains/opStack/actions/waitToProve.d.ts.map +1 -0
  475. package/_types/chains/opStack/chainConfig.d.ts +74 -74
  476. package/_types/chains/opStack/chains.d.ts +2 -0
  477. package/_types/chains/opStack/chains.d.ts.map +1 -1
  478. package/_types/chains/opStack/decorators/publicL1.d.ts +386 -0
  479. package/_types/chains/opStack/decorators/publicL1.d.ts.map +1 -0
  480. package/_types/chains/opStack/decorators/publicL2.d.ts +82 -26
  481. package/_types/chains/opStack/decorators/publicL2.d.ts.map +1 -1
  482. package/_types/chains/opStack/decorators/walletL1.d.ts +57 -2
  483. package/_types/chains/opStack/decorators/walletL1.d.ts.map +1 -1
  484. package/_types/chains/opStack/decorators/walletL2.d.ts +62 -0
  485. package/_types/chains/opStack/decorators/walletL2.d.ts.map +1 -0
  486. package/_types/chains/opStack/errors/withdrawal.d.ts +12 -0
  487. package/_types/chains/opStack/errors/withdrawal.d.ts.map +1 -0
  488. package/_types/chains/opStack/formatters.d.ts +74 -74
  489. package/_types/chains/opStack/index.d.ts +21 -3
  490. package/_types/chains/opStack/index.d.ts.map +1 -1
  491. package/_types/chains/opStack/types/deposit.d.ts +25 -0
  492. package/_types/chains/opStack/types/deposit.d.ts.map +1 -0
  493. package/_types/chains/opStack/types/withdrawal.d.ts +22 -0
  494. package/_types/chains/opStack/types/withdrawal.d.ts.map +1 -0
  495. package/_types/chains/opStack/utils/extractWithdrawalMessageLogs.d.ts +137 -0
  496. package/_types/chains/opStack/utils/extractWithdrawalMessageLogs.d.ts.map +1 -0
  497. package/_types/chains/opStack/utils/getWithdrawalHashStorageSlot.d.ts +11 -0
  498. package/_types/chains/opStack/utils/getWithdrawalHashStorageSlot.d.ts.map +1 -0
  499. package/_types/chains/opStack/utils/getWithdrawals.d.ts +12 -0
  500. package/_types/chains/opStack/utils/getWithdrawals.d.ts.map +1 -0
  501. package/_types/chains/opStack/utils/opaqueDataToDepositData.d.ts +15 -0
  502. package/_types/chains/opStack/utils/opaqueDataToDepositData.d.ts.map +1 -0
  503. package/_types/chains/zksync/chainConfig.d.ts +9 -9
  504. package/_types/chains/zksync/formatters.d.ts +9 -9
  505. package/_types/clients/decorators/public.d.ts +2 -2
  506. package/_types/clients/decorators/public.d.ts.map +1 -1
  507. package/_types/clients/decorators/wallet.d.ts +2 -2
  508. package/_types/clients/decorators/wallet.d.ts.map +1 -1
  509. package/_types/errors/abi.d.ts +14 -1
  510. package/_types/errors/abi.d.ts.map +1 -1
  511. package/_types/errors/version.d.ts +1 -1
  512. package/_types/errors/version.d.ts.map +1 -1
  513. package/_types/index.d.ts +15 -1
  514. package/_types/index.d.ts.map +1 -1
  515. package/_types/types/account.d.ts +1 -1
  516. package/_types/types/account.d.ts.map +1 -1
  517. package/_types/types/eip1193.d.ts +12 -0
  518. package/_types/types/eip1193.d.ts.map +1 -1
  519. package/_types/utils/abi/getAbiItem.d.ts +2 -1
  520. package/_types/utils/abi/getAbiItem.d.ts.map +1 -1
  521. package/_types/utils/formatters/transaction.d.ts +1 -1
  522. package/_types/utils/formatters/transactionRequest.d.ts +1 -1
  523. package/_types/utils/hash/ripemd160.d.ts +11 -0
  524. package/_types/utils/hash/ripemd160.d.ts.map +1 -0
  525. package/_types/utils/hash/sha256.d.ts +11 -0
  526. package/_types/utils/hash/sha256.d.ts.map +1 -0
  527. package/_types/utils/index.d.ts +2 -0
  528. package/_types/utils/index.d.ts.map +1 -1
  529. package/actions/ens/getEnsName.ts +3 -2
  530. package/actions/index.ts +31 -0
  531. package/actions/public/getFilterChanges.ts +3 -5
  532. package/actions/public/getFilterLogs.ts +3 -3
  533. package/actions/public/getLogs.ts +3 -3
  534. package/actions/public/verifyTypedData.ts +13 -8
  535. package/actions/wallet/prepareTransactionRequest.ts +16 -9
  536. package/chains/celo/formatters.ts +0 -14
  537. package/chains/celo/index.ts +0 -4
  538. package/chains/celo/types.ts +0 -18
  539. package/chains/definitions/arbitrumSepolia.ts +4 -0
  540. package/chains/definitions/astar.ts +0 -1
  541. package/chains/definitions/astarZkatana.ts +0 -6
  542. package/chains/definitions/base.ts +5 -0
  543. package/chains/definitions/baseGoerli.ts +5 -0
  544. package/chains/definitions/baseSepolia.ts +5 -3
  545. package/chains/definitions/bscTestnet.ts +0 -1
  546. package/chains/definitions/confluxESpaceTestnet.ts +0 -4
  547. package/chains/definitions/fantomSonicTestnet.ts +22 -0
  548. package/chains/definitions/kava.ts +0 -1
  549. package/chains/definitions/kavaTestnet.ts +0 -1
  550. package/chains/definitions/klaytnBaobab.ts +0 -1
  551. package/chains/definitions/lukso.ts +0 -4
  552. package/chains/definitions/manta.ts +0 -1
  553. package/chains/definitions/mantaTestnet.ts +0 -1
  554. package/chains/definitions/neonMainnet.ts +0 -3
  555. package/chains/definitions/optimism.ts +5 -0
  556. package/chains/definitions/optimismGoerli.ts +5 -0
  557. package/chains/definitions/optimismSepolia.ts +5 -0
  558. package/chains/definitions/pgn.ts +13 -3
  559. package/chains/definitions/pgnTestnet.ts +8 -3
  560. package/chains/definitions/rootstock.ts +0 -1
  561. package/chains/definitions/sapphire.ts +0 -4
  562. package/chains/definitions/sapphireTestnet.ts +0 -4
  563. package/chains/definitions/shibarium.ts +0 -3
  564. package/chains/definitions/shimmer.ts +0 -3
  565. package/chains/definitions/shimmerTestnet.ts +0 -3
  566. package/chains/definitions/taikoJolnir.ts +2 -2
  567. package/chains/definitions/tenet.ts +0 -1
  568. package/chains/definitions/zilliqa.ts +20 -0
  569. package/chains/definitions/zilliqaTestnet.ts +20 -0
  570. package/chains/definitions/zkSyncSepoliaTestnet.ts +28 -0
  571. package/chains/definitions/zkSyncTestnet.ts +1 -0
  572. package/chains/definitions/zora.ts +5 -0
  573. package/chains/definitions/zoraSepolia.ts +5 -4
  574. package/chains/index.ts +9 -0
  575. package/chains/opStack/abis.ts +367 -0
  576. package/chains/opStack/actions/buildDepositTransaction.ts +11 -6
  577. package/chains/opStack/actions/buildInitiateWithdrawal.ts +118 -0
  578. package/chains/opStack/actions/buildProveWithdrawal.ts +149 -0
  579. package/chains/opStack/actions/depositTransaction.ts +50 -44
  580. package/chains/opStack/actions/estimateDepositTransactionGas.ts +138 -0
  581. package/chains/opStack/actions/estimateFinalizeWithdrawalGas.ts +118 -0
  582. package/chains/opStack/actions/estimateInitiateWithdrawalGas.ts +118 -0
  583. package/chains/opStack/actions/estimateProveWithdrawalGas.ts +139 -0
  584. package/chains/opStack/actions/finalizeWithdrawal.ts +130 -0
  585. package/chains/opStack/actions/getL2Output.ts +89 -0
  586. package/chains/opStack/actions/getTimeToFinalize.ts +122 -0
  587. package/chains/opStack/actions/getTimeToNextL2Output.ts +162 -0
  588. package/chains/opStack/actions/getTimeToProve.ts +79 -0
  589. package/chains/opStack/actions/getWithdrawalStatus.ts +152 -0
  590. package/chains/opStack/actions/initiateWithdrawal.ts +153 -0
  591. package/chains/opStack/actions/proveWithdrawal.ts +151 -0
  592. package/chains/opStack/actions/waitForNextL2Output.ts +111 -0
  593. package/chains/opStack/actions/waitToFinalize.ts +64 -0
  594. package/chains/opStack/actions/waitToProve.ts +99 -0
  595. package/chains/opStack/chains.ts +2 -0
  596. package/chains/opStack/decorators/publicL1.ts +514 -0
  597. package/chains/opStack/decorators/publicL2.ts +129 -37
  598. package/chains/opStack/decorators/walletL1.ts +71 -2
  599. package/chains/opStack/decorators/walletL2.ts +84 -0
  600. package/chains/opStack/errors/withdrawal.ts +15 -0
  601. package/chains/opStack/index.ts +112 -21
  602. package/chains/opStack/types/deposit.ts +28 -0
  603. package/chains/opStack/types/withdrawal.ts +23 -0
  604. package/chains/opStack/utils/extractWithdrawalMessageLogs.ts +36 -0
  605. package/chains/opStack/utils/getL2TransactionHash.ts +2 -2
  606. package/chains/opStack/utils/getWithdrawalHashStorageSlot.ts +29 -0
  607. package/chains/opStack/utils/getWithdrawals.ts +25 -0
  608. package/chains/opStack/utils/{fromOpaqueData.ts → opaqueDataToDepositData.ts} +9 -4
  609. package/clients/decorators/public.ts +2 -2
  610. package/clients/decorators/wallet.ts +2 -2
  611. package/errors/abi.ts +22 -1
  612. package/errors/version.ts +1 -1
  613. package/index.ts +40 -0
  614. package/package.json +1 -1
  615. package/types/account.ts +1 -1
  616. package/types/eip1193.ts +12 -0
  617. package/utils/abi/getAbiItem.ts +71 -2
  618. package/utils/hash/ripemd160.ts +31 -0
  619. package/utils/hash/sha256.ts +31 -0
  620. package/utils/index.ts +2 -0
  621. package/_cjs/chains/opStack/utils/fromOpaqueData.js.map +0 -1
  622. package/_esm/chains/opStack/utils/fromOpaqueData.js.map +0 -1
  623. package/_types/chains/opStack/utils/fromOpaqueData.d.ts +0 -15
  624. package/_types/chains/opStack/utils/fromOpaqueData.d.ts.map +0 -1
  625. package/chains/celo/package.json +0 -6
  626. package/chains/opStack/package.json +0 -6
  627. package/chains/zksync/package.json +0 -6
@@ -5,37 +5,23 @@ import type { Transport } from '../../../clients/transports/createTransport.js';
5
5
  import type { ErrorType } from '../../../errors/utils.js';
6
6
  import type { Account, GetAccountParameter } from '../../../types/account.js';
7
7
  import type { Chain, DeriveChain, GetChainParameter } from '../../../types/chain.js';
8
- import type { Hash, Hex } from '../../../types/misc.js';
8
+ import type { Hash } from '../../../types/misc.js';
9
9
  import type { UnionEvaluate, UnionOmit } from '../../../types/utils.js';
10
10
  import type { FormattedTransactionRequest } from '../../../utils/formatters/transactionRequest.js';
11
11
  import type { GetContractAddressParameter } from '../types/contract.js';
12
+ import type { DepositRequest } from '../types/deposit.js';
13
+ import { type EstimateDepositTransactionGasErrorType } from './estimateDepositTransactionGas.js';
12
14
  export type DepositTransactionParameters<chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined, chainOverride extends Chain | undefined = Chain | undefined, _derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>> = UnionEvaluate<UnionOmit<FormattedTransactionRequest<_derivedChain>, 'accessList' | 'data' | 'from' | 'gas' | 'gasPrice' | 'to' | 'type' | 'value'>> & GetAccountParameter<account, Account | Address> & GetChainParameter<chain, chainOverride> & GetContractAddressParameter<_derivedChain, 'portal'> & {
13
- /** Arguments supplied to the L2 transaction. */
14
- args: {
15
- /** Gas limit for transaction execution on the L2. */
16
- gas: bigint;
17
- /** Value in wei to mint (deposit) on the L2. Debited from the caller's L1 balance. */
18
- mint?: bigint;
19
- /** Value in wei sent with this transaction on the L2. Debited from the caller's L2 balance. */
20
- value?: bigint;
21
- } & ({
22
- /** Encoded contract method & arguments. */
23
- data?: Hex;
24
- /** Whether or not this is a contract deployment transaction. */
25
- isCreation?: false;
26
- /** L2 Transaction recipient. */
27
- to?: Address;
28
- } | {
29
- /** Contract deployment bytecode. Required for contract deployment transactions. */
30
- data: Hex;
31
- /** Whether or not this is a contract deployment transaction. */
32
- isCreation: true;
33
- /** L2 Transaction recipient. Cannot exist for contract deployment transactions. */
34
- to?: never;
35
- });
15
+ /** L2 transaction request. */
16
+ request: DepositRequest;
17
+ /**
18
+ * Gas limit for transaction execution on the L1.
19
+ * `null` to skip gas estimation & defer calculation to signer.
20
+ */
21
+ gas?: bigint | null;
36
22
  };
37
23
  export type DepositTransactionReturnType = Hash;
38
- export type DepositTransactionErrorType = WriteContractErrorType | ErrorType;
24
+ export type DepositTransactionErrorType = EstimateDepositTransactionGasErrorType | WriteContractErrorType | ErrorType;
39
25
  /**
40
26
  * Initiates a [deposit transaction](https://github.com/ethereum-optimism/optimism/blob/develop/specs/deposits.md) on an L1, which executes a transaction on L2.
41
27
  *
@@ -51,17 +37,16 @@ export type DepositTransactionErrorType = WriteContractErrorType | ErrorType;
51
37
  * @example
52
38
  * import { createWalletClient, custom, parseEther } from 'viem'
53
39
  * import { base, mainnet } from 'viem/chains'
54
- * import { walletActionsL1 } from 'viem/op-stack'
55
- * import { depositTransaction } from 'viem/wallet'
40
+ * import { depositTransaction } from 'viem/op-stack'
56
41
  *
57
42
  * const client = createWalletClient({
58
43
  * chain: mainnet,
59
44
  * transport: custom(window.ethereum),
60
- * }).extend(walletActionsL1())
45
+ * })
61
46
  *
62
47
  * const hash = await depositTransaction(client, {
63
48
  * account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',
64
- * args: {
49
+ * request: {
65
50
  * gas: 21_000n,
66
51
  * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',
67
52
  * value: parseEther('1'),
@@ -74,17 +59,16 @@ export type DepositTransactionErrorType = WriteContractErrorType | ErrorType;
74
59
  * import { createWalletClient, http } from 'viem'
75
60
  * import { privateKeyToAccount } from 'viem/accounts'
76
61
  * import { base, mainnet } from 'viem/chains'
77
- * import { walletActionsL1 } from 'viem/op-stack'
78
- * import { depositTransaction } from 'viem/wallet'
62
+ * import { depositTransaction } from 'viem/op-stack'
79
63
  *
80
64
  * const client = createWalletClient({
81
65
  * account: privateKeyToAccount('0x…'),
82
66
  * chain: mainnet,
83
67
  * transport: http(),
84
- * }).extend(walletActionsL1())
68
+ * })
85
69
  *
86
70
  * const hash = await depositTransaction(client, {
87
- * args: {
71
+ * request: {
88
72
  * gas: 21_000n,
89
73
  * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',
90
74
  * value: parseEther('1'),
@@ -92,5 +76,5 @@ export type DepositTransactionErrorType = WriteContractErrorType | ErrorType;
92
76
  * targetChain: base,
93
77
  * })
94
78
  */
95
- export declare function depositTransaction<chain extends Chain | undefined, account extends Account | undefined, chainOverride extends Chain | undefined = undefined>(client: Client<Transport, chain, account>, args: DepositTransactionParameters<chain, account, chainOverride>): Promise<`0x${string}`>;
79
+ export declare function depositTransaction<chain extends Chain | undefined, account extends Account | undefined, chainOverride extends Chain | undefined = undefined>(client: Client<Transport, chain, account>, parameters: DepositTransactionParameters<chain, account, chainOverride>): Promise<`0x${string}`>;
96
80
  //# sourceMappingURL=depositTransaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"depositTransaction.d.ts","sourceRoot":"","sources":["../../../../chains/opStack/actions/depositTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EACL,KAAK,sBAAsB,EAE5B,MAAM,0CAA0C,CAAA;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAE/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC7E,OAAO,KAAK,EACV,KAAK,EACL,WAAW,EACX,iBAAiB,EAClB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACvE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iDAAiD,CAAA;AAElG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AAEvE,MAAM,MAAM,4BAA4B,CACtC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EACzD,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAC3D,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,IACzE,aAAa,CACf,SAAS,CACP,2BAA2B,CAAC,aAAa,CAAC,EACxC,YAAY,GACZ,MAAM,GACN,MAAM,GACN,KAAK,GACL,UAAU,GACV,IAAI,GACJ,MAAM,GACN,OAAO,CACV,CACF,GACC,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GAC/C,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,GACvC,2BAA2B,CAAC,aAAa,EAAE,QAAQ,CAAC,GAAG;IACrD,gDAAgD;IAChD,IAAI,EAAE;QACJ,qDAAqD;QACrD,GAAG,EAAE,MAAM,CAAA;QACX,sFAAsF;QACtF,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,+FAA+F;QAC/F,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,GAAG,CACA;QACE,2CAA2C;QAC3C,IAAI,CAAC,EAAE,GAAG,CAAA;QACV,gEAAgE;QAChE,UAAU,CAAC,EAAE,KAAK,CAAA;QAClB,gCAAgC;QAChC,EAAE,CAAC,EAAE,OAAO,CAAA;KACb,GACD;QACE,mFAAmF;QACnF,IAAI,EAAE,GAAG,CAAA;QACT,gEAAgE;QAChE,UAAU,EAAE,IAAI,CAAA;QAChB,mFAAmF;QACnF,EAAE,CAAC,EAAE,KAAK,CAAA;KACX,CACJ,CAAA;CACF,CAAA;AACH,MAAM,MAAM,4BAA4B,GAAG,IAAI,CAAA;AAC/C,MAAM,MAAM,2BAA2B,GAAG,sBAAsB,GAAG,SAAS,CAAA;AAE5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAEnD,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EACzC,IAAI,EAAE,4BAA4B,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,0BAoClE"}
1
+ {"version":3,"file":"depositTransaction.d.ts","sourceRoot":"","sources":["../../../../chains/opStack/actions/depositTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EACL,KAAK,sBAAsB,EAG5B,MAAM,0CAA0C,CAAA;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAE/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC7E,OAAO,KAAK,EACV,KAAK,EACL,WAAW,EACX,iBAAiB,EAClB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACvE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iDAAiD,CAAA;AAElG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EACL,KAAK,sCAAsC,EAG5C,MAAM,oCAAoC,CAAA;AAE3C,MAAM,MAAM,4BAA4B,CACtC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EACzD,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAC3D,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,IACzE,aAAa,CACf,SAAS,CACP,2BAA2B,CAAC,aAAa,CAAC,EACxC,YAAY,GACZ,MAAM,GACN,MAAM,GACN,KAAK,GACL,UAAU,GACV,IAAI,GACJ,MAAM,GACN,OAAO,CACV,CACF,GACC,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GAC/C,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,GACvC,2BAA2B,CAAC,aAAa,EAAE,QAAQ,CAAC,GAAG;IACrD,8BAA8B;IAC9B,OAAO,EAAE,cAAc,CAAA;IACvB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACpB,CAAA;AACH,MAAM,MAAM,4BAA4B,GAAG,IAAI,CAAA;AAC/C,MAAM,MAAM,2BAA2B,GACnC,sCAAsC,GACtC,sBAAsB,GACtB,SAAS,CAAA;AAEb;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAEnD,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EACzC,UAAU,EAAE,4BAA4B,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,0BAqDxE"}
@@ -0,0 +1,50 @@
1
+ import type { Address } from 'abitype';
2
+ import { type EstimateContractGasErrorType } from '../../../actions/public/estimateContractGas.js';
3
+ import type { Client } from '../../../clients/createClient.js';
4
+ import type { Transport } from '../../../clients/transports/createTransport.js';
5
+ import type { ErrorType } from '../../../errors/utils.js';
6
+ import type { Account, GetAccountParameter } from '../../../types/account.js';
7
+ import type { Chain, DeriveChain, GetChainParameter } from '../../../types/chain.js';
8
+ import type { UnionEvaluate, UnionOmit } from '../../../types/utils.js';
9
+ import type { FormattedTransactionRequest } from '../../../utils/formatters/transactionRequest.js';
10
+ import type { GetContractAddressParameter } from '../types/contract.js';
11
+ import type { DepositRequest } from '../types/deposit.js';
12
+ export type EstimateDepositTransactionGasParameters<chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined, chainOverride extends Chain | undefined = Chain | undefined, _derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>> = UnionEvaluate<UnionOmit<FormattedTransactionRequest<_derivedChain>, 'accessList' | 'data' | 'from' | 'gas' | 'gasPrice' | 'to' | 'type' | 'value'>> & GetAccountParameter<account, Account | Address> & GetChainParameter<chain, chainOverride> & GetContractAddressParameter<_derivedChain, 'portal'> & {
13
+ /** L2 transaction request. */
14
+ request: DepositRequest;
15
+ /** Gas limit for transaction execution on the L1. */
16
+ gas?: bigint | null;
17
+ };
18
+ export type EstimateDepositTransactionGasReturnType = bigint;
19
+ export type EstimateDepositTransactionGasErrorType = EstimateContractGasErrorType | ErrorType;
20
+ /**
21
+ * Estimates gas required to initiate a [deposit transaction](https://github.com/ethereum-optimism/optimism/blob/develop/specs/deposits.md) on an L1, which executes a transaction on L2.
22
+ *
23
+ * - Docs: https://viem.sh/op-stack/actions/estimateDepositTransactionGas.html
24
+ *
25
+ * @param client - Client to use
26
+ * @param parameters - {@link EstimateDepositTransactionGasParameters}
27
+ * @returns The L1 transaction hash. {@link EstimateDepositTransactionGasReturnType}
28
+ *
29
+ * @example
30
+ * import { createPublicClient, custom, parseEther } from 'viem'
31
+ * import { base, mainnet } from 'viem/chains'
32
+ * import { estimateDepositTransactionGas } from 'viem/op-stack'
33
+ *
34
+ * const client = createPublicClient({
35
+ * chain: mainnet,
36
+ * transport: custom(window.ethereum),
37
+ * })
38
+ *
39
+ * const gas = await estimateDepositTransactionGas(client, {
40
+ * account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',
41
+ * args: {
42
+ * gas: 21_000n,
43
+ * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',
44
+ * value: parseEther('1'),
45
+ * },
46
+ * targetChain: base,
47
+ * })
48
+ */
49
+ export declare function estimateDepositTransactionGas<chain extends Chain | undefined, account extends Account | undefined, chainOverride extends Chain | undefined = undefined>(client: Client<Transport, chain, account>, parameters: EstimateDepositTransactionGasParameters<chain, account, chainOverride>): Promise<bigint>;
50
+ //# sourceMappingURL=estimateDepositTransactionGas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"estimateDepositTransactionGas.d.ts","sourceRoot":"","sources":["../../../../chains/opStack/actions/estimateDepositTransactionGas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EACL,KAAK,4BAA4B,EAGlC,MAAM,gDAAgD,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAE/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC7E,OAAO,KAAK,EACV,KAAK,EACL,WAAW,EACX,iBAAiB,EAClB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACvE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iDAAiD,CAAA;AAElG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,MAAM,MAAM,uCAAuC,CACjD,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EACzD,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAC3D,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,IACzE,aAAa,CACf,SAAS,CACP,2BAA2B,CAAC,aAAa,CAAC,EACxC,YAAY,GACZ,MAAM,GACN,MAAM,GACN,KAAK,GACL,UAAU,GACV,IAAI,GACJ,MAAM,GACN,OAAO,CACV,CACF,GACC,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GAC/C,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,GACvC,2BAA2B,CAAC,aAAa,EAAE,QAAQ,CAAC,GAAG;IACrD,8BAA8B;IAC9B,OAAO,EAAE,cAAc,CAAA;IACvB,qDAAqD;IACrD,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACpB,CAAA;AACH,MAAM,MAAM,uCAAuC,GAAG,MAAM,CAAA;AAC5D,MAAM,MAAM,sCAAsC,GAC9C,4BAA4B,GAC5B,SAAS,CAAA;AAEb;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,6BAA6B,CACjD,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAEnD,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EACzC,UAAU,EAAE,uCAAuC,CACjD,KAAK,EACL,OAAO,EACP,aAAa,CACd,mBA6CF"}
@@ -0,0 +1,45 @@
1
+ import type { Address } from 'abitype';
2
+ import { type EstimateContractGasErrorType } from '../../../actions/public/estimateContractGas.js';
3
+ import type { Client } from '../../../clients/createClient.js';
4
+ import type { Transport } from '../../../clients/transports/createTransport.js';
5
+ import type { ErrorType } from '../../../errors/utils.js';
6
+ import type { Account, GetAccountParameter } from '../../../types/account.js';
7
+ import type { Chain, DeriveChain, GetChainParameter } from '../../../types/chain.js';
8
+ import type { UnionEvaluate, UnionOmit } from '../../../types/utils.js';
9
+ import type { FormattedTransactionRequest } from '../../../utils/formatters/transactionRequest.js';
10
+ import type { GetContractAddressParameter } from '../types/contract.js';
11
+ import type { Withdrawal } from '../types/withdrawal.js';
12
+ export type EstimateFinalizeWithdrawalGasParameters<chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined, chainOverride extends Chain | undefined = Chain | undefined, _derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>> = UnionEvaluate<UnionOmit<FormattedTransactionRequest<_derivedChain>, 'accessList' | 'data' | 'from' | 'gas' | 'gasPrice' | 'to' | 'type' | 'value'>> & GetAccountParameter<account, Account | Address> & GetChainParameter<chain, chainOverride> & GetContractAddressParameter<_derivedChain, 'portal'> & {
13
+ /** Gas limit for transaction execution on the L2. */
14
+ gas?: bigint | null;
15
+ withdrawal: Withdrawal;
16
+ };
17
+ export type EstimateFinalizeWithdrawalGasReturnType = bigint;
18
+ export type EstimateFinalizeWithdrawalGasErrorType = EstimateContractGasErrorType | ErrorType;
19
+ /**
20
+ * Estimates gas required to finalize a withdrawal that occurred on an L2.
21
+ *
22
+ * - Docs: https://viem.sh/op-stack/actions/estimateFinalizeWithdrawalGas.html
23
+ *
24
+ * @param client - Client to use
25
+ * @param parameters - {@link EstimateFinalizeWithdrawalGasParameters}
26
+ * @returns Estimated gas. {@link EstimateFinalizeWithdrawalGasReturnType}
27
+ *
28
+ * @example
29
+ * import { createPublicClient, http, parseEther } from 'viem'
30
+ * import { base, mainnet } from 'viem/chains'
31
+ * import { estimateFinalizeWithdrawalGas } from 'viem/op-stack'
32
+ *
33
+ * const client = createPublicClient({
34
+ * chain: mainnet,
35
+ * transport: http(),
36
+ * })
37
+ *
38
+ * const gas = await estimateFinalizeWithdrawalGas(client, {
39
+ * account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',
40
+ * targetChain: optimism,
41
+ * withdrawal: { ... },
42
+ * })
43
+ */
44
+ export declare function estimateFinalizeWithdrawalGas<chain extends Chain | undefined, account extends Account | undefined, chainOverride extends Chain | undefined = undefined>(client: Client<Transport, chain, account>, parameters: EstimateFinalizeWithdrawalGasParameters<chain, account, chainOverride>): Promise<bigint>;
45
+ //# sourceMappingURL=estimateFinalizeWithdrawalGas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"estimateFinalizeWithdrawalGas.d.ts","sourceRoot":"","sources":["../../../../chains/opStack/actions/estimateFinalizeWithdrawalGas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EACL,KAAK,4BAA4B,EAGlC,MAAM,gDAAgD,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAC/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC7E,OAAO,KAAK,EACV,KAAK,EACL,WAAW,EACX,iBAAiB,EAClB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACvE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iDAAiD,CAAA;AAElG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAExD,MAAM,MAAM,uCAAuC,CACjD,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EACzD,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAC3D,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,IACzE,aAAa,CACf,SAAS,CACP,2BAA2B,CAAC,aAAa,CAAC,EACxC,YAAY,GACZ,MAAM,GACN,MAAM,GACN,KAAK,GACL,UAAU,GACV,IAAI,GACJ,MAAM,GACN,OAAO,CACV,CACF,GACC,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GAC/C,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,GACvC,2BAA2B,CAAC,aAAa,EAAE,QAAQ,CAAC,GAAG;IACrD,qDAAqD;IACrD,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AACH,MAAM,MAAM,uCAAuC,GAAG,MAAM,CAAA;AAC5D,MAAM,MAAM,sCAAsC,GAC9C,4BAA4B,GAC5B,SAAS,CAAA;AAEb;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,6BAA6B,CACjD,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAEnD,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EACzC,UAAU,EAAE,uCAAuC,CACjD,KAAK,EACL,OAAO,EACP,aAAa,CACd,mBA+BF"}
@@ -0,0 +1,51 @@
1
+ import type { Address } from 'abitype';
2
+ import { type EstimateContractGasErrorType } from '../../../actions/public/estimateContractGas.js';
3
+ import type { Client } from '../../../clients/createClient.js';
4
+ import type { Transport } from '../../../clients/transports/createTransport.js';
5
+ import type { ErrorType } from '../../../errors/utils.js';
6
+ import type { Account, GetAccountParameter } from '../../../types/account.js';
7
+ import type { Chain, DeriveChain, GetChainParameter } from '../../../types/chain.js';
8
+ import type { UnionEvaluate, UnionOmit } from '../../../types/utils.js';
9
+ import type { FormattedTransactionRequest } from '../../../utils/formatters/transactionRequest.js';
10
+ import type { WithdrawalRequest } from '../types/withdrawal.js';
11
+ export type EstimateInitiateWithdrawalGasParameters<chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined, chainOverride extends Chain | undefined = Chain | undefined, _derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>> = UnionEvaluate<UnionOmit<FormattedTransactionRequest<_derivedChain>, 'accessList' | 'data' | 'from' | 'gas' | 'gasPrice' | 'to' | 'type' | 'value'>> & GetAccountParameter<account, Account | Address> & GetChainParameter<chain, chainOverride> & {
12
+ /** Gas limit for transaction execution on the L2. */
13
+ gas?: bigint | null;
14
+ /**
15
+ * Withdrawal request.
16
+ * Supplied to the L2ToL1MessagePasser `initiateWithdrawal` method.
17
+ */
18
+ request: WithdrawalRequest;
19
+ };
20
+ export type EstimateInitiateWithdrawalGasReturnType = bigint;
21
+ export type EstimateInitiateWithdrawalGasErrorType = EstimateContractGasErrorType | ErrorType;
22
+ /**
23
+ * Estimates gas required to initiate a [withdrawal](https://community.optimism.io/docs/protocol/withdrawal-flow/#withdrawal-initiating-transaction) on an L2 to the L1.
24
+ *
25
+ * - Docs: https://viem.sh/op-stack/actions/estimateInitiateWithdrawalGas.html
26
+ *
27
+ * @param client - Client to use
28
+ * @param parameters - {@link EstimateInitiateWithdrawalGasParameters}
29
+ * @returns Estimated gas. {@link EstimateInitiateWithdrawalGasReturnType}
30
+ *
31
+ * @example
32
+ * import { createPublicClient, http, parseEther } from 'viem'
33
+ * import { base, mainnet } from 'viem/chains'
34
+ * import { estimateInitiateWithdrawalGas } from 'viem/op-stack'
35
+ *
36
+ * const client = createPublicClient({
37
+ * chain: mainnet,
38
+ * transport: http(),
39
+ * })
40
+ *
41
+ * const gas = await estimateInitiateWithdrawalGas(client, {
42
+ * account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',
43
+ * request: {
44
+ * gas: 21_000n,
45
+ * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',
46
+ * value: parseEther('1'),
47
+ * },
48
+ * })
49
+ */
50
+ export declare function estimateInitiateWithdrawalGas<chain extends Chain | undefined, account extends Account | undefined, chainOverride extends Chain | undefined = undefined>(client: Client<Transport, chain, account>, parameters: EstimateInitiateWithdrawalGasParameters<chain, account, chainOverride>): Promise<bigint>;
51
+ //# sourceMappingURL=estimateInitiateWithdrawalGas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"estimateInitiateWithdrawalGas.d.ts","sourceRoot":"","sources":["../../../../chains/opStack/actions/estimateInitiateWithdrawalGas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EACL,KAAK,4BAA4B,EAGlC,MAAM,gDAAgD,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAC/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC7E,OAAO,KAAK,EACV,KAAK,EACL,WAAW,EACX,iBAAiB,EAClB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACvE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iDAAiD,CAAA;AAGlG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAE/D,MAAM,MAAM,uCAAuC,CACjD,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EACzD,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAC3D,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,IACzE,aAAa,CACf,SAAS,CACP,2BAA2B,CAAC,aAAa,CAAC,EACxC,YAAY,GACZ,MAAM,GACN,MAAM,GACN,KAAK,GACL,UAAU,GACV,IAAI,GACJ,MAAM,GACN,OAAO,CACV,CACF,GACC,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GAC/C,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,GAAG;IACxC,qDAAqD;IACrD,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB;;;OAGG;IACH,OAAO,EAAE,iBAAiB,CAAA;CAC3B,CAAA;AACH,MAAM,MAAM,uCAAuC,GAAG,MAAM,CAAA;AAC5D,MAAM,MAAM,sCAAsC,GAC9C,4BAA4B,GAC5B,SAAS,CAAA;AAEb;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,6BAA6B,CACjD,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAEnD,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EACzC,UAAU,EAAE,uCAAuC,CACjD,KAAK,EACL,OAAO,EACP,aAAa,CACd,mBAyBF"}
@@ -0,0 +1,63 @@
1
+ import type { Address } from 'abitype';
2
+ import { type EstimateContractGasErrorType } from '../../../actions/public/estimateContractGas.js';
3
+ import type { Client } from '../../../clients/createClient.js';
4
+ import type { Transport } from '../../../clients/transports/createTransport.js';
5
+ import type { ErrorType } from '../../../errors/utils.js';
6
+ import type { Account, GetAccountParameter } from '../../../types/account.js';
7
+ import type { Chain, DeriveChain, GetChainParameter } from '../../../types/chain.js';
8
+ import type { Hex } from '../../../types/misc.js';
9
+ import type { UnionEvaluate, UnionOmit } from '../../../types/utils.js';
10
+ import type { FormattedTransactionRequest } from '../../../utils/formatters/transactionRequest.js';
11
+ import type { GetContractAddressParameter } from '../types/contract.js';
12
+ export type EstimateProveWithdrawalGasParameters<chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined, chainOverride extends Chain | undefined = Chain | undefined, _derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>> = UnionEvaluate<UnionOmit<FormattedTransactionRequest<_derivedChain>, 'accessList' | 'data' | 'from' | 'gas' | 'gasPrice' | 'to' | 'type' | 'value'>> & GetAccountParameter<account, Account | Address> & GetChainParameter<chain, chainOverride> & GetContractAddressParameter<_derivedChain, 'portal'> & {
13
+ /** Gas limit for transaction execution on the L2. */
14
+ gas?: bigint | null;
15
+ l2OutputIndex: bigint;
16
+ outputRootProof: {
17
+ version: Hex;
18
+ stateRoot: Hex;
19
+ messagePasserStorageRoot: Hex;
20
+ latestBlockhash: Hex;
21
+ };
22
+ withdrawalProof: readonly Hex[];
23
+ withdrawal: {
24
+ data: Hex;
25
+ gasLimit: bigint;
26
+ nonce: bigint;
27
+ sender: Address;
28
+ target: Address;
29
+ value: bigint;
30
+ };
31
+ };
32
+ export type EstimateProveWithdrawalGasReturnType = bigint;
33
+ export type EstimateProveWithdrawalGasErrorType = EstimateContractGasErrorType | ErrorType;
34
+ /**
35
+ * Estimates gas required to prove a withdrawal that occurred on an L2.
36
+ *
37
+ * - Docs: https://viem.sh/op-stack/actions/estimateProveWithdrawalGas.html
38
+ *
39
+ * @param client - Client to use
40
+ * @param parameters - {@link EstimateProveWithdrawalGasParameters}
41
+ * @returns Estimated gas. {@link EstimateProveWithdrawalGasReturnType}
42
+ *
43
+ * @example
44
+ * import { createPublicClient, http, parseEther } from 'viem'
45
+ * import { base, mainnet } from 'viem/chains'
46
+ * import { estimateProveWithdrawalGas } from 'viem/op-stack'
47
+ *
48
+ * const client = createPublicClient({
49
+ * chain: mainnet,
50
+ * transport: http(),
51
+ * })
52
+ *
53
+ * const gas = await estimateProveWithdrawalGas(client, {
54
+ * account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',
55
+ * l2OutputIndex: 4529n,
56
+ * outputRootProof: { ... },
57
+ * targetChain: optimism,
58
+ * withdrawalProof: [ ... ],
59
+ * withdrawal: { ... },
60
+ * })
61
+ */
62
+ export declare function estimateProveWithdrawalGas<chain extends Chain | undefined, account extends Account | undefined, chainOverride extends Chain | undefined = undefined>(client: Client<Transport, chain, account>, parameters: EstimateProveWithdrawalGasParameters<chain, account, chainOverride>): Promise<bigint>;
63
+ //# sourceMappingURL=estimateProveWithdrawalGas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"estimateProveWithdrawalGas.d.ts","sourceRoot":"","sources":["../../../../chains/opStack/actions/estimateProveWithdrawalGas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EACL,KAAK,4BAA4B,EAGlC,MAAM,gDAAgD,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAC/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC7E,OAAO,KAAK,EACV,KAAK,EACL,WAAW,EACX,iBAAiB,EAClB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACvE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iDAAiD,CAAA;AAElG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AAEvE,MAAM,MAAM,oCAAoC,CAC9C,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EACzD,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAC3D,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,IACzE,aAAa,CACf,SAAS,CACP,2BAA2B,CAAC,aAAa,CAAC,EACxC,YAAY,GACZ,MAAM,GACN,MAAM,GACN,KAAK,GACL,UAAU,GACV,IAAI,GACJ,MAAM,GACN,OAAO,CACV,CACF,GACC,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GAC/C,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,GACvC,2BAA2B,CAAC,aAAa,EAAE,QAAQ,CAAC,GAAG;IACrD,qDAAqD;IACrD,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,eAAe,EAAE;QACf,OAAO,EAAE,GAAG,CAAA;QACZ,SAAS,EAAE,GAAG,CAAA;QACd,wBAAwB,EAAE,GAAG,CAAA;QAC7B,eAAe,EAAE,GAAG,CAAA;KACrB,CAAA;IACD,eAAe,EAAE,SAAS,GAAG,EAAE,CAAA;IAC/B,UAAU,EAAE;QACV,IAAI,EAAE,GAAG,CAAA;QACT,QAAQ,EAAE,MAAM,CAAA;QAChB,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,EAAE,OAAO,CAAA;QACf,MAAM,EAAE,OAAO,CAAA;QACf,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;CACF,CAAA;AACH,MAAM,MAAM,oCAAoC,GAAG,MAAM,CAAA;AACzD,MAAM,MAAM,mCAAmC,GAC3C,4BAA4B,GAC5B,SAAS,CAAA;AAEb;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,0BAA0B,CAC9C,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAEnD,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EACzC,UAAU,EAAE,oCAAoC,CAC9C,KAAK,EACL,OAAO,EACP,aAAa,CACd,mBAkCF"}
@@ -0,0 +1,49 @@
1
+ import type { Address } from 'abitype';
2
+ import { type WriteContractErrorType } from '../../../actions/wallet/writeContract.js';
3
+ import type { Client } from '../../../clients/createClient.js';
4
+ import type { Transport } from '../../../clients/transports/createTransport.js';
5
+ import type { ErrorType } from '../../../errors/utils.js';
6
+ import type { Account, GetAccountParameter } from '../../../types/account.js';
7
+ import type { Chain, DeriveChain, GetChainParameter } from '../../../types/chain.js';
8
+ import type { Hash } from '../../../types/misc.js';
9
+ import type { UnionEvaluate, UnionOmit } from '../../../types/utils.js';
10
+ import type { FormattedTransactionRequest } from '../../../utils/formatters/transactionRequest.js';
11
+ import type { GetContractAddressParameter } from '../types/contract.js';
12
+ import type { Withdrawal } from '../types/withdrawal.js';
13
+ import { type EstimateFinalizeWithdrawalGasErrorType } from './estimateFinalizeWithdrawalGas.js';
14
+ export type FinalizeWithdrawalParameters<chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined, chainOverride extends Chain | undefined = Chain | undefined, _derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>> = UnionEvaluate<UnionOmit<FormattedTransactionRequest<_derivedChain>, 'accessList' | 'data' | 'from' | 'gas' | 'gasPrice' | 'to' | 'type' | 'value'>> & GetAccountParameter<account, Account | Address> & GetChainParameter<chain, chainOverride> & GetContractAddressParameter<_derivedChain, 'portal'> & {
15
+ /**
16
+ * Gas limit for transaction execution on the L1.
17
+ * `null` to skip gas estimation & defer calculation to signer.
18
+ */
19
+ gas?: bigint | null;
20
+ withdrawal: Withdrawal;
21
+ };
22
+ export type FinalizeWithdrawalReturnType = Hash;
23
+ export type FinalizeWithdrawalErrorType = EstimateFinalizeWithdrawalGasErrorType | WriteContractErrorType | ErrorType;
24
+ /**
25
+ * Finalizes a withdrawal that occurred on an L2. Used in the Withdrawal flow.
26
+ *
27
+ * - Docs: https://viem.sh/op-stack/actions/finalizeWithdrawal.html
28
+ *
29
+ * @param client - Client to use
30
+ * @param parameters - {@link FinalizeWithdrawalParameters}
31
+ * @returns The finalize transaction hash. {@link FinalizeWithdrawalReturnType}
32
+ *
33
+ * @example
34
+ * import { createWalletClient, http } from 'viem'
35
+ * import { mainnet, optimism } from 'viem/chains'
36
+ * import { finalizeWithdrawal } from 'viem/op-stack'
37
+ *
38
+ * const walletClientL1 = createWalletClient({
39
+ * chain: mainnet,
40
+ * transport: http(),
41
+ * })
42
+ *
43
+ * const request = await finalizeWithdrawal(walletClientL1, {
44
+ * targetChain: optimism,
45
+ * withdrawal: { ... },
46
+ * })
47
+ */
48
+ export declare function finalizeWithdrawal<chain extends Chain | undefined, account extends Account | undefined, chainOverride extends Chain | undefined = undefined>(client: Client<Transport, chain, account>, parameters: FinalizeWithdrawalParameters<chain, account, chainOverride>): Promise<FinalizeWithdrawalReturnType>;
49
+ //# sourceMappingURL=finalizeWithdrawal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finalizeWithdrawal.d.ts","sourceRoot":"","sources":["../../../../chains/opStack/actions/finalizeWithdrawal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EACL,KAAK,sBAAsB,EAE5B,MAAM,0CAA0C,CAAA;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAC/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC7E,OAAO,KAAK,EACV,KAAK,EACL,WAAW,EACX,iBAAiB,EAClB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACvE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iDAAiD,CAAA;AAElG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EACL,KAAK,sCAAsC,EAG5C,MAAM,oCAAoC,CAAA;AAE3C,MAAM,MAAM,4BAA4B,CACtC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EACzD,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAC3D,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,IACzE,aAAa,CACf,SAAS,CACP,2BAA2B,CAAC,aAAa,CAAC,EACxC,YAAY,GACZ,MAAM,GACN,MAAM,GACN,KAAK,GACL,UAAU,GACV,IAAI,GACJ,MAAM,GACN,OAAO,CACV,CACF,GACC,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GAC/C,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,GACvC,2BAA2B,CAAC,aAAa,EAAE,QAAQ,CAAC,GAAG;IACrD;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AACH,MAAM,MAAM,4BAA4B,GAAG,IAAI,CAAA;AAC/C,MAAM,MAAM,2BAA2B,GACnC,sCAAsC,GACtC,sBAAsB,GACtB,SAAS,CAAA;AAEb;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAEnD,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EACzC,UAAU,EAAE,4BAA4B,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,GACtE,OAAO,CAAC,4BAA4B,CAAC,CAsCvC"}
@@ -0,0 +1,44 @@
1
+ import { type ReadContractErrorType } from '../../../actions/public/readContract.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 { Account } from '../../../types/account.js';
6
+ import type { Chain, DeriveChain, GetChainParameter } from '../../../types/chain.js';
7
+ import type { Hex } from '../../../types/misc.js';
8
+ import type { GetContractAddressParameter } from '../types/contract.js';
9
+ export type GetL2OutputParameters<chain extends Chain | undefined = Chain | undefined, chainOverride extends Chain | undefined = Chain | undefined, _derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>> = GetChainParameter<chain, chainOverride> & GetContractAddressParameter<_derivedChain, 'l2OutputOracle'> & {
10
+ l2BlockNumber: bigint;
11
+ };
12
+ export type GetL2OutputReturnType = {
13
+ outputIndex: bigint;
14
+ outputRoot: Hex;
15
+ timestamp: bigint;
16
+ l2BlockNumber: bigint;
17
+ };
18
+ export type GetL2OutputErrorType = ReadContractErrorType | ErrorType;
19
+ /**
20
+ * Retrieves the first L2 output proposal that occurred after a provided block number.
21
+ *
22
+ * - Docs: https://viem.sh/op-stack/actions/getL2Output.html
23
+ *
24
+ * @param client - Client to use
25
+ * @param parameters - {@link GetL2OutputParameters}
26
+ * @returns The L2 output. {@link GetL2OutputReturnType}
27
+ *
28
+ * @example
29
+ * import { createPublicClient, http } from 'viem'
30
+ * import { mainnet, optimism } from 'viem/chains'
31
+ * import { getL2Output } from 'viem/op-stack'
32
+ *
33
+ * const publicClientL1 = createPublicClient({
34
+ * chain: mainnet,
35
+ * transport: http(),
36
+ * })
37
+ *
38
+ * const output = await getL2Output(publicClientL1, {
39
+ * l2BlockNumber: 69420n,
40
+ * targetChain: optimism
41
+ * })
42
+ */
43
+ export declare function getL2Output<chain extends Chain | undefined, account extends Account | undefined, chainOverride extends Chain | undefined = undefined>(client: Client<Transport, chain, account>, parameters: GetL2OutputParameters<chain, chainOverride>): Promise<GetL2OutputReturnType>;
44
+ //# sourceMappingURL=getL2Output.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getL2Output.d.ts","sourceRoot":"","sources":["../../../../chains/opStack/actions/getL2Output.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,qBAAqB,EAE3B,MAAM,yCAAyC,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAC/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,KAAK,EACV,KAAK,EACL,WAAW,EACX,iBAAiB,EAClB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AAEjD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AAEvE,MAAM,MAAM,qBAAqB,CAC/B,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAC3D,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,IACzE,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,GACzC,2BAA2B,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG;IAC7D,aAAa,EAAE,MAAM,CAAA;CACtB,CAAA;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,GAAG,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;CACtB,CAAA;AACD,MAAM,MAAM,oBAAoB,GAAG,qBAAqB,GAAG,SAAS,CAAA;AAEpE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,WAAW,CAC/B,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAEnD,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EACzC,UAAU,EAAE,qBAAqB,CAAC,KAAK,EAAE,aAAa,CAAC,GACtD,OAAO,CAAC,qBAAqB,CAAC,CAwBhC"}
@@ -0,0 +1,57 @@
1
+ import { type MulticallErrorType } from '../../../actions/public/multicall.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 { Account } from '../../../types/account.js';
6
+ import type { Chain, DeriveChain, GetChainParameter } from '../../../types/chain.js';
7
+ import type { Hash } from '../../../types/misc.js';
8
+ import type { GetContractAddressParameter } from '../types/contract.js';
9
+ export type GetTimeToFinalizeParameters<chain extends Chain | undefined = Chain | undefined, chainOverride extends Chain | undefined = Chain | undefined, _derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>> = GetChainParameter<chain, chainOverride> & GetContractAddressParameter<_derivedChain, 'l2OutputOracle' | 'portal'> & {
10
+ withdrawalHash: Hash;
11
+ };
12
+ export type GetTimeToFinalizeReturnType = {
13
+ /** The finalization period (in seconds). */
14
+ period: number;
15
+ /** Seconds until the withdrawal can be finalized. */
16
+ seconds: number;
17
+ /** Timestamp of when the withdrawal can be finalized. */
18
+ timestamp: number;
19
+ };
20
+ export type GetTimeToFinalizeErrorType = MulticallErrorType | ErrorType;
21
+ /**
22
+ * Returns the time until the withdrawal transaction can be finalized. Used for the [Withdrawal](/op-stack/guides/withdrawals.html) flow.
23
+ *
24
+ * - Docs: https://viem.sh/op-stack/actions/getTimeToFinalize.html
25
+ *
26
+ * @param client - Client to use
27
+ * @param parameters - {@link GetTimeToFinalizeParameters}
28
+ * @returns Time until finalize. {@link GetTimeToFinalizeReturnType}
29
+ *
30
+ * @example
31
+ * import { createPublicClient, http } from 'viem'
32
+ * import { getBlockNumber } from 'viem/actions'
33
+ * import { mainnet, optimism } from 'viem/chains'
34
+ * import { getTimeToFinalize } from 'viem/op-stack'
35
+ *
36
+ * const publicClientL1 = createPublicClient({
37
+ * chain: mainnet,
38
+ * transport: http(),
39
+ * })
40
+ * const publicClientL2 = createPublicClient({
41
+ * chain: optimism,
42
+ * transport: http(),
43
+ * })
44
+ *
45
+ * const receipt = await getTransactionReceipt(publicClientL2, {
46
+ * hash: '0x9a2f4283636ddeb9ac32382961b22c177c9e86dd3b283735c154f897b1a7ff4a',
47
+ * })
48
+ *
49
+ * const [withdrawal] = getWithdrawals(receipt)
50
+ *
51
+ * const { seconds } = await getTimeToFinalize(publicClientL1, {
52
+ * withdrawalHash: withdrawal.withdrawalHash,
53
+ * targetChain: optimism
54
+ * })
55
+ */
56
+ export declare function getTimeToFinalize<chain extends Chain | undefined, account extends Account | undefined, chainOverride extends Chain | undefined = undefined>(client: Client<Transport, chain, account>, parameters: GetTimeToFinalizeParameters<chain, chainOverride>): Promise<GetTimeToFinalizeReturnType>;
57
+ //# sourceMappingURL=getTimeToFinalize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTimeToFinalize.d.ts","sourceRoot":"","sources":["../../../../chains/opStack/actions/getTimeToFinalize.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,sCAAsC,CAAA;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAC/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,KAAK,EACV,KAAK,EACL,WAAW,EACX,iBAAiB,EAClB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAElD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AAEvE,MAAM,MAAM,2BAA2B,CACrC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAC3D,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,IACzE,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,GACzC,2BAA2B,CAAC,aAAa,EAAE,gBAAgB,GAAG,QAAQ,CAAC,GAAG;IACxE,cAAc,EAAE,IAAI,CAAA;CACrB,CAAA;AACH,MAAM,MAAM,2BAA2B,GAAG;IACxC,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAA;IACd,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAA;IACf,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AACD,MAAM,MAAM,0BAA0B,GAAG,kBAAkB,GAAG,SAAS,CAAA;AAIvE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAEnD,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EACzC,UAAU,EAAE,2BAA2B,CAAC,KAAK,EAAE,aAAa,CAAC,GAC5D,OAAO,CAAC,2BAA2B,CAAC,CA0CtC"}
@@ -0,0 +1,61 @@
1
+ import { type MulticallErrorType } from '../../../actions/public/multicall.js';
2
+ import { type ReadContractErrorType } from '../../../actions/public/readContract.js';
3
+ import type { Client } from '../../../clients/createClient.js';
4
+ import type { Transport } from '../../../clients/transports/createTransport.js';
5
+ import type { ErrorType } from '../../../errors/utils.js';
6
+ import type { Account } from '../../../types/account.js';
7
+ import type { Chain, DeriveChain, GetChainParameter } from '../../../types/chain.js';
8
+ import type { GetContractAddressParameter } from '../types/contract.js';
9
+ export type GetTimeToNextL2OutputParameters<chain extends Chain | undefined = Chain | undefined, chainOverride extends Chain | undefined = Chain | undefined, _derivedChain extends Chain | undefined = DeriveChain<chain, chainOverride>> = GetChainParameter<chain, chainOverride> & GetContractAddressParameter<_derivedChain, 'l2OutputOracle'> & {
10
+ /**
11
+ * The buffer to account for discrepencies between non-deterministic time intervals.
12
+ * @default 1.1
13
+ */
14
+ intervalBuffer?: number;
15
+ l2BlockNumber: bigint;
16
+ };
17
+ export type GetTimeToNextL2OutputReturnType = {
18
+ /** The interval (in seconds) between L2 outputs. */
19
+ interval: number;
20
+ /**
21
+ * Seconds until the next L2 output.
22
+ * `0` if the next L2 output has already been submitted.
23
+ */
24
+ seconds: number;
25
+ /**
26
+ * Estimated timestamp of the next L2 output.
27
+ * `undefined` if the next L2 output has already been submitted.
28
+ */
29
+ timestamp?: number;
30
+ };
31
+ export type GetTimeToNextL2OutputErrorType = MulticallErrorType | ReadContractErrorType | ErrorType;
32
+ /**
33
+ * Returns the time until the next L2 output (after the provided block number) is submitted. Used for the [Withdrawal](/op-stack/guides/withdrawals.html) flow.
34
+ *
35
+ * - Docs: https://viem.sh/op-stack/actions/getTimeToNextL2Output.html
36
+ *
37
+ * @param client - Client to use
38
+ * @param parameters - {@link GetTimeToNextL2OutputParameters}
39
+ * @returns The L2 transaction hash. {@link GetTimeToNextL2OutputReturnType}
40
+ *
41
+ * @example
42
+ * import { createPublicClient, http } from 'viem'
43
+ * import { getBlockNumber } from 'viem/actions'
44
+ * import { mainnet, optimism } from 'viem/chains'
45
+ * import { getTimeToNextL2Output } from 'viem/op-stack'
46
+ *
47
+ * const publicClientL1 = createPublicClient({
48
+ * chain: mainnet,
49
+ * transport: http(),
50
+ * })
51
+ * const publicClientL2 = createPublicClient({
52
+ * chain: optimism,
53
+ * transport: http(),
54
+ * })
55
+ *
56
+ * const { seconds } = await getTimeToNextL2Output(publicClientL1, {
57
+ * targetChain: optimism
58
+ * })
59
+ */
60
+ export declare function getTimeToNextL2Output<chain extends Chain | undefined, account extends Account | undefined, chainOverride extends Chain | undefined = undefined>(client: Client<Transport, chain, account>, parameters: GetTimeToNextL2OutputParameters<chain, chainOverride>): Promise<GetTimeToNextL2OutputReturnType>;
61
+ //# sourceMappingURL=getTimeToNextL2Output.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTimeToNextL2Output.d.ts","sourceRoot":"","sources":["../../../../chains/opStack/actions/getTimeToNextL2Output.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EACL,KAAK,qBAAqB,EAE3B,MAAM,yCAAyC,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAC/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,KAAK,EACV,KAAK,EACL,WAAW,EACX,iBAAiB,EAClB,MAAM,yBAAyB,CAAA;AAEhC,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AAEvE,MAAM,MAAM,+BAA+B,CACzC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAC3D,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,IACzE,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,GACzC,2BAA2B,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG;IAC7D;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;CACtB,CAAA;AACH,MAAM,MAAM,+BAA+B,GAAG;IAC5C,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAA;IAChB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAA;IACf;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AACD,MAAM,MAAM,8BAA8B,GACtC,kBAAkB,GAClB,qBAAqB,GACrB,SAAS,CAAA;AAEb;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAEnD,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EACzC,UAAU,EAAE,+BAA+B,CAAC,KAAK,EAAE,aAAa,CAAC,GAChE,OAAO,CAAC,+BAA+B,CAAC,CA0E1C"}