viem 2.0.0-beta.8 → 2.0.0-rc.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.
- package/CHANGELOG.md +44 -0
- package/README.md +9 -3
- package/_cjs/actions/ens/getEnsName.js +4 -2
- package/_cjs/actions/ens/getEnsName.js.map +1 -1
- package/_cjs/actions/index.js +16 -2
- package/_cjs/actions/index.js.map +1 -1
- package/_cjs/actions/wallet/prepareTransactionRequest.js.map +1 -1
- package/_cjs/chains/definitions/arbitrumSepolia.js +4 -0
- package/_cjs/chains/definitions/arbitrumSepolia.js.map +1 -1
- package/_cjs/chains/definitions/base.js +5 -0
- package/_cjs/chains/definitions/base.js.map +1 -1
- package/_cjs/chains/definitions/baseGoerli.js +5 -0
- package/_cjs/chains/definitions/baseGoerli.js.map +1 -1
- package/_cjs/chains/definitions/baseSepolia.js +5 -0
- package/_cjs/chains/definitions/baseSepolia.js.map +1 -1
- package/_cjs/chains/definitions/fantomSonicTestnet.js +26 -0
- package/_cjs/chains/definitions/fantomSonicTestnet.js.map +1 -0
- package/_cjs/chains/definitions/optimism.js +5 -0
- package/_cjs/chains/definitions/optimism.js.map +1 -1
- package/_cjs/chains/definitions/optimismGoerli.js +5 -0
- package/_cjs/chains/definitions/optimismGoerli.js.map +1 -1
- package/_cjs/chains/definitions/optimismSepolia.js +5 -0
- package/_cjs/chains/definitions/optimismSepolia.js.map +1 -1
- package/_cjs/chains/definitions/pgn.js +12 -0
- package/_cjs/chains/definitions/pgn.js.map +1 -1
- package/_cjs/chains/definitions/pgnTestnet.js +7 -0
- package/_cjs/chains/definitions/pgnTestnet.js.map +1 -1
- package/_cjs/chains/definitions/zilliqa.js +26 -0
- package/_cjs/chains/definitions/zilliqa.js.map +1 -0
- package/_cjs/chains/definitions/zilliqaTestnet.js +26 -0
- package/_cjs/chains/definitions/zilliqaTestnet.js.map +1 -0
- package/_cjs/chains/definitions/zkSyncSepoliaTestnet.js +35 -0
- package/_cjs/chains/definitions/zkSyncSepoliaTestnet.js.map +1 -0
- package/_cjs/chains/definitions/zkSyncTestnet.js +4 -0
- package/_cjs/chains/definitions/zkSyncTestnet.js.map +1 -1
- package/_cjs/chains/definitions/zora.js +5 -0
- package/_cjs/chains/definitions/zora.js.map +1 -1
- package/_cjs/chains/definitions/zoraSepolia.js +5 -0
- package/_cjs/chains/definitions/zoraSepolia.js.map +1 -1
- package/_cjs/chains/index.js +12 -4
- package/_cjs/chains/index.js.map +1 -1
- package/_cjs/chains/opStack/abis.js +366 -1
- package/_cjs/chains/opStack/abis.js.map +1 -1
- package/_cjs/chains/opStack/actions/buildDepositTransaction.js +1 -1
- package/_cjs/chains/opStack/actions/buildDepositTransaction.js.map +1 -1
- package/_cjs/chains/opStack/actions/buildInitiateWithdrawal.js +29 -0
- package/_cjs/chains/opStack/actions/buildInitiateWithdrawal.js.map +1 -0
- package/_cjs/chains/opStack/actions/buildProveWithdrawal.js +39 -0
- package/_cjs/chains/opStack/actions/buildProveWithdrawal.js.map +1 -0
- package/_cjs/chains/opStack/actions/depositTransaction.js +11 -6
- package/_cjs/chains/opStack/actions/depositTransaction.js.map +1 -1
- package/_cjs/chains/opStack/actions/estimateDepositTransactionGas.js +37 -0
- package/_cjs/chains/opStack/actions/estimateDepositTransactionGas.js.map +1 -0
- package/_cjs/chains/opStack/actions/estimateFinalizeWithdrawalGas.js +29 -0
- package/_cjs/chains/opStack/actions/estimateFinalizeWithdrawalGas.js.map +1 -0
- package/_cjs/chains/opStack/actions/estimateInitiateWithdrawalGas.js +24 -0
- package/_cjs/chains/opStack/actions/estimateInitiateWithdrawalGas.js.map +1 -0
- package/_cjs/chains/opStack/actions/estimateProveWithdrawalGas.js +29 -0
- package/_cjs/chains/opStack/actions/estimateProveWithdrawalGas.js.map +1 -0
- package/_cjs/chains/opStack/actions/finalizeWithdrawal.js +33 -0
- package/_cjs/chains/opStack/actions/finalizeWithdrawal.js.map +1 -0
- package/_cjs/chains/opStack/actions/getL2Output.js +30 -0
- package/_cjs/chains/opStack/actions/getL2Output.js.map +1 -0
- package/_cjs/chains/opStack/actions/getTimeToFinalize.js +46 -0
- package/_cjs/chains/opStack/actions/getTimeToFinalize.js.map +1 -0
- package/_cjs/chains/opStack/actions/getTimeToNextL2Output.js +63 -0
- package/_cjs/chains/opStack/actions/getTimeToNextL2Output.js.map +1 -0
- package/_cjs/chains/opStack/actions/getTimeToProve.js +13 -0
- package/_cjs/chains/opStack/actions/getTimeToProve.js.map +1 -0
- package/_cjs/chains/opStack/actions/getWithdrawalStatus.js +71 -0
- package/_cjs/chains/opStack/actions/getWithdrawalStatus.js.map +1 -0
- package/_cjs/chains/opStack/actions/initiateWithdrawal.js +28 -0
- package/_cjs/chains/opStack/actions/initiateWithdrawal.js.map +1 -0
- package/_cjs/chains/opStack/actions/proveWithdrawal.js +33 -0
- package/_cjs/chains/opStack/actions/proveWithdrawal.js.map +1 -0
- package/_cjs/chains/opStack/actions/waitForNextL2Output.js +32 -0
- package/_cjs/chains/opStack/actions/waitForNextL2Output.js.map +1 -0
- package/_cjs/chains/opStack/actions/waitToFinalize.js +11 -0
- package/_cjs/chains/opStack/actions/waitToFinalize.js.map +1 -0
- package/_cjs/chains/opStack/actions/waitToProve.js +21 -0
- package/_cjs/chains/opStack/actions/waitToProve.js.map +1 -0
- package/_cjs/chains/opStack/chains.js +5 -1
- package/_cjs/chains/opStack/chains.js.map +1 -1
- package/_cjs/chains/opStack/decorators/publicL1.js +35 -0
- package/_cjs/chains/opStack/decorators/publicL1.js.map +1 -0
- package/_cjs/chains/opStack/decorators/publicL2.js +5 -1
- package/_cjs/chains/opStack/decorators/publicL2.js.map +1 -1
- package/_cjs/chains/opStack/decorators/walletL1.js +4 -0
- package/_cjs/chains/opStack/decorators/walletL1.js.map +1 -1
- package/_cjs/chains/opStack/decorators/walletL2.js +13 -0
- package/_cjs/chains/opStack/decorators/walletL2.js.map +1 -0
- package/_cjs/chains/opStack/errors/withdrawal.js +17 -0
- package/_cjs/chains/opStack/errors/withdrawal.js.map +1 -0
- package/_cjs/chains/opStack/index.js +43 -15
- package/_cjs/chains/opStack/index.js.map +1 -1
- package/_cjs/chains/opStack/types/deposit.js +3 -0
- package/_cjs/chains/opStack/types/deposit.js.map +1 -0
- package/_cjs/chains/opStack/types/withdrawal.js +3 -0
- package/_cjs/chains/opStack/types/withdrawal.js.map +1 -0
- package/_cjs/chains/opStack/utils/extractWithdrawalMessageLogs.js +14 -0
- package/_cjs/chains/opStack/utils/extractWithdrawalMessageLogs.js.map +1 -0
- package/_cjs/chains/opStack/utils/getL2TransactionHash.js +2 -2
- package/_cjs/chains/opStack/utils/getL2TransactionHash.js.map +1 -1
- package/_cjs/chains/opStack/utils/getWithdrawalHashStorageSlot.js +11 -0
- package/_cjs/chains/opStack/utils/getWithdrawalHashStorageSlot.js.map +1 -0
- package/_cjs/chains/opStack/utils/getWithdrawals.js +10 -0
- package/_cjs/chains/opStack/utils/getWithdrawals.js.map +1 -0
- package/_cjs/chains/opStack/utils/{fromOpaqueData.js → opaqueDataToDepositData.js} +4 -4
- package/_cjs/chains/opStack/utils/opaqueDataToDepositData.js.map +1 -0
- package/_cjs/errors/abi.js +21 -1
- package/_cjs/errors/abi.js.map +1 -1
- package/_cjs/errors/version.js +1 -1
- package/_cjs/errors/version.js.map +1 -1
- package/_cjs/index.js +10 -2
- package/_cjs/index.js.map +1 -1
- package/_cjs/utils/abi/getAbiItem.js +46 -3
- package/_cjs/utils/abi/getAbiItem.js.map +1 -1
- package/_cjs/utils/hash/ripemd160.js +16 -0
- package/_cjs/utils/hash/ripemd160.js.map +1 -0
- package/_cjs/utils/hash/sha256.js +16 -0
- package/_cjs/utils/hash/sha256.js.map +1 -0
- package/_cjs/utils/index.js +5 -1
- package/_cjs/utils/index.js.map +1 -1
- package/_esm/actions/ens/getEnsName.js +4 -2
- package/_esm/actions/ens/getEnsName.js.map +1 -1
- package/_esm/actions/index.js +7 -0
- package/_esm/actions/index.js.map +1 -1
- package/_esm/actions/wallet/prepareTransactionRequest.js.map +1 -1
- package/_esm/chains/definitions/arbitrumSepolia.js +4 -0
- package/_esm/chains/definitions/arbitrumSepolia.js.map +1 -1
- package/_esm/chains/definitions/base.js +5 -0
- package/_esm/chains/definitions/base.js.map +1 -1
- package/_esm/chains/definitions/baseGoerli.js +5 -0
- package/_esm/chains/definitions/baseGoerli.js.map +1 -1
- package/_esm/chains/definitions/baseSepolia.js +5 -0
- package/_esm/chains/definitions/baseSepolia.js.map +1 -1
- package/_esm/chains/definitions/fantomSonicTestnet.js +23 -0
- package/_esm/chains/definitions/fantomSonicTestnet.js.map +1 -0
- package/_esm/chains/definitions/optimism.js +5 -0
- package/_esm/chains/definitions/optimism.js.map +1 -1
- package/_esm/chains/definitions/optimismGoerli.js +5 -0
- package/_esm/chains/definitions/optimismGoerli.js.map +1 -1
- package/_esm/chains/definitions/optimismSepolia.js +5 -0
- package/_esm/chains/definitions/optimismSepolia.js.map +1 -1
- package/_esm/chains/definitions/pgn.js +12 -0
- package/_esm/chains/definitions/pgn.js.map +1 -1
- package/_esm/chains/definitions/pgnTestnet.js +7 -0
- package/_esm/chains/definitions/pgnTestnet.js.map +1 -1
- package/_esm/chains/definitions/zilliqa.js +23 -0
- package/_esm/chains/definitions/zilliqa.js.map +1 -0
- package/_esm/chains/definitions/zilliqaTestnet.js +23 -0
- package/_esm/chains/definitions/zilliqaTestnet.js.map +1 -0
- package/_esm/chains/definitions/zkSyncSepoliaTestnet.js +32 -0
- package/_esm/chains/definitions/zkSyncSepoliaTestnet.js.map +1 -0
- package/_esm/chains/definitions/zkSyncTestnet.js +5 -0
- package/_esm/chains/definitions/zkSyncTestnet.js.map +1 -1
- package/_esm/chains/definitions/zora.js +5 -0
- package/_esm/chains/definitions/zora.js.map +1 -1
- package/_esm/chains/definitions/zoraSepolia.js +5 -0
- package/_esm/chains/definitions/zoraSepolia.js.map +1 -1
- package/_esm/chains/index.js +4 -0
- package/_esm/chains/index.js.map +1 -1
- package/_esm/chains/opStack/abis.js +365 -0
- package/_esm/chains/opStack/abis.js.map +1 -1
- package/_esm/chains/opStack/actions/buildDepositTransaction.js +2 -2
- package/_esm/chains/opStack/actions/buildDepositTransaction.js.map +1 -1
- package/_esm/chains/opStack/actions/buildInitiateWithdrawal.js +50 -0
- package/_esm/chains/opStack/actions/buildInitiateWithdrawal.js.map +1 -0
- package/_esm/chains/opStack/actions/buildProveWithdrawal.js +59 -0
- package/_esm/chains/opStack/actions/buildProveWithdrawal.js.map +1 -0
- package/_esm/chains/opStack/actions/depositTransaction.js +17 -14
- package/_esm/chains/opStack/actions/depositTransaction.js.map +1 -1
- package/_esm/chains/opStack/actions/estimateDepositTransactionGas.js +62 -0
- package/_esm/chains/opStack/actions/estimateDepositTransactionGas.js.map +1 -0
- package/_esm/chains/opStack/actions/estimateFinalizeWithdrawalGas.js +50 -0
- package/_esm/chains/opStack/actions/estimateFinalizeWithdrawalGas.js.map +1 -0
- package/_esm/chains/opStack/actions/estimateInitiateWithdrawalGas.js +48 -0
- package/_esm/chains/opStack/actions/estimateInitiateWithdrawalGas.js.map +1 -0
- package/_esm/chains/opStack/actions/estimateProveWithdrawalGas.js +53 -0
- package/_esm/chains/opStack/actions/estimateProveWithdrawalGas.js.map +1 -0
- package/_esm/chains/opStack/actions/finalizeWithdrawal.js +53 -0
- package/_esm/chains/opStack/actions/finalizeWithdrawal.js.map +1 -0
- package/_esm/chains/opStack/actions/getL2Output.js +50 -0
- package/_esm/chains/opStack/actions/getL2Output.js.map +1 -0
- package/_esm/chains/opStack/actions/getTimeToFinalize.js +77 -0
- package/_esm/chains/opStack/actions/getTimeToFinalize.js.map +1 -0
- package/_esm/chains/opStack/actions/getTimeToNextL2Output.js +91 -0
- package/_esm/chains/opStack/actions/getTimeToNextL2Output.js.map +1 -0
- package/_esm/chains/opStack/actions/getTimeToProve.js +39 -0
- package/_esm/chains/opStack/actions/getTimeToProve.js.map +1 -0
- package/_esm/chains/opStack/actions/getWithdrawalStatus.js +99 -0
- package/_esm/chains/opStack/actions/getWithdrawalStatus.js.map +1 -0
- package/_esm/chains/opStack/actions/initiateWithdrawal.js +76 -0
- package/_esm/chains/opStack/actions/initiateWithdrawal.js.map +1 -0
- package/_esm/chains/opStack/actions/proveWithdrawal.js +57 -0
- package/_esm/chains/opStack/actions/proveWithdrawal.js.map +1 -0
- package/_esm/chains/opStack/actions/waitForNextL2Output.js +58 -0
- package/_esm/chains/opStack/actions/waitForNextL2Output.js.map +1 -0
- package/_esm/chains/opStack/actions/waitToFinalize.js +41 -0
- package/_esm/chains/opStack/actions/waitToFinalize.js.map +1 -0
- package/_esm/chains/opStack/actions/waitToProve.js +47 -0
- package/_esm/chains/opStack/actions/waitToProve.js.map +1 -0
- package/_esm/chains/opStack/chains.js +2 -0
- package/_esm/chains/opStack/chains.js.map +1 -1
- package/_esm/chains/opStack/decorators/publicL1.js +31 -0
- package/_esm/chains/opStack/decorators/publicL1.js.map +1 -0
- package/_esm/chains/opStack/decorators/publicL2.js +5 -1
- package/_esm/chains/opStack/decorators/publicL2.js.map +1 -1
- package/_esm/chains/opStack/decorators/walletL1.js +4 -0
- package/_esm/chains/opStack/decorators/walletL1.js.map +1 -1
- package/_esm/chains/opStack/decorators/walletL2.js +9 -0
- package/_esm/chains/opStack/decorators/walletL2.js.map +1 -0
- package/_esm/chains/opStack/errors/withdrawal.js +13 -0
- package/_esm/chains/opStack/errors/withdrawal.js.map +1 -0
- package/_esm/chains/opStack/index.js +21 -3
- package/_esm/chains/opStack/index.js.map +1 -1
- package/_esm/chains/opStack/types/deposit.js +2 -0
- package/_esm/chains/opStack/types/deposit.js.map +1 -0
- package/_esm/chains/opStack/types/withdrawal.js +2 -0
- package/_esm/chains/opStack/types/withdrawal.js.map +1 -0
- package/_esm/chains/opStack/utils/extractWithdrawalMessageLogs.js +10 -0
- package/_esm/chains/opStack/utils/extractWithdrawalMessageLogs.js.map +1 -0
- package/_esm/chains/opStack/utils/getL2TransactionHash.js +2 -2
- package/_esm/chains/opStack/utils/getL2TransactionHash.js.map +1 -1
- package/_esm/chains/opStack/utils/getWithdrawalHashStorageSlot.js +7 -0
- package/_esm/chains/opStack/utils/getWithdrawalHashStorageSlot.js.map +1 -0
- package/_esm/chains/opStack/utils/getWithdrawals.js +6 -0
- package/_esm/chains/opStack/utils/getWithdrawals.js.map +1 -0
- package/_esm/chains/opStack/utils/{fromOpaqueData.js → opaqueDataToDepositData.js} +2 -2
- package/_esm/chains/opStack/utils/opaqueDataToDepositData.js.map +1 -0
- package/_esm/errors/abi.js +19 -0
- package/_esm/errors/abi.js.map +1 -1
- package/_esm/errors/version.js +1 -1
- package/_esm/errors/version.js.map +1 -1
- package/_esm/index.js +4 -0
- package/_esm/index.js.map +1 -1
- package/_esm/utils/abi/getAbiItem.js +46 -2
- package/_esm/utils/abi/getAbiItem.js.map +1 -1
- package/_esm/utils/hash/ripemd160.js +12 -0
- package/_esm/utils/hash/ripemd160.js.map +1 -0
- package/_esm/utils/hash/sha256.js +12 -0
- package/_esm/utils/hash/sha256.js.map +1 -0
- package/_esm/utils/index.js +2 -0
- package/_esm/utils/index.js.map +1 -1
- package/_types/actions/ens/getEnsName.d.ts.map +1 -1
- package/_types/actions/index.d.ts +7 -0
- package/_types/actions/index.d.ts.map +1 -1
- package/_types/actions/public/getBlock.d.ts +1 -1
- package/_types/actions/public/getBlock.d.ts.map +1 -1
- package/_types/actions/public/getTransaction.d.ts +1 -1
- package/_types/actions/public/getTransaction.d.ts.map +1 -1
- package/_types/actions/public/getTransactionReceipt.d.ts +1 -1
- package/_types/actions/public/getTransactionReceipt.d.ts.map +1 -1
- package/_types/actions/wallet/prepareTransactionRequest.d.ts +5 -5
- package/_types/actions/wallet/prepareTransactionRequest.d.ts.map +1 -1
- package/_types/chains/celo/chainConfig.d.ts +180 -180
- package/_types/chains/celo/formatters.d.ts +180 -180
- package/_types/chains/definitions/arbitrumSepolia.d.ts +4 -0
- package/_types/chains/definitions/arbitrumSepolia.d.ts.map +1 -1
- package/_types/chains/definitions/base.d.ts +142 -137
- package/_types/chains/definitions/base.d.ts.map +1 -1
- package/_types/chains/definitions/baseGoerli.d.ts +142 -137
- package/_types/chains/definitions/baseGoerli.d.ts.map +1 -1
- package/_types/chains/definitions/baseSepolia.d.ts +142 -137
- package/_types/chains/definitions/baseSepolia.d.ts.map +1 -1
- package/_types/chains/definitions/celo.d.ts +180 -180
- package/_types/chains/definitions/celoAlfajores.d.ts +180 -180
- package/_types/chains/definitions/celoCannoli.d.ts +180 -180
- package/_types/chains/definitions/fantomSonicTestnet.d.ts +38 -0
- package/_types/chains/definitions/fantomSonicTestnet.d.ts.map +1 -0
- package/_types/chains/definitions/optimism.d.ts +142 -137
- package/_types/chains/definitions/optimism.d.ts.map +1 -1
- package/_types/chains/definitions/optimismGoerli.d.ts +142 -137
- package/_types/chains/definitions/optimismGoerli.d.ts.map +1 -1
- package/_types/chains/definitions/optimismSepolia.d.ts +142 -137
- package/_types/chains/definitions/optimismSepolia.d.ts.map +1 -1
- package/_types/chains/definitions/pgn.d.ts +147 -137
- package/_types/chains/definitions/pgn.d.ts.map +1 -1
- package/_types/chains/definitions/pgnTestnet.d.ts +142 -137
- package/_types/chains/definitions/pgnTestnet.d.ts.map +1 -1
- package/_types/chains/definitions/zilliqa.d.ts +38 -0
- package/_types/chains/definitions/zilliqa.d.ts.map +1 -0
- package/_types/chains/definitions/zilliqaTestnet.d.ts +38 -0
- package/_types/chains/definitions/zilliqaTestnet.d.ts.map +1 -0
- package/_types/chains/definitions/zkSync.d.ts +24 -24
- package/_types/chains/definitions/zkSyncSepoliaTestnet.d.ts +533 -0
- package/_types/chains/definitions/zkSyncSepoliaTestnet.d.ts.map +1 -0
- package/_types/chains/definitions/zkSyncTestnet.d.ts +29 -24
- package/_types/chains/definitions/zkSyncTestnet.d.ts.map +1 -1
- package/_types/chains/definitions/zora.d.ts +142 -137
- package/_types/chains/definitions/zora.d.ts.map +1 -1
- package/_types/chains/definitions/zoraSepolia.d.ts +142 -137
- package/_types/chains/definitions/zoraSepolia.d.ts.map +1 -1
- package/_types/chains/definitions/zoraTestnet.d.ts +137 -137
- package/_types/chains/index.d.ts +5 -1
- package/_types/chains/index.d.ts.map +1 -1
- package/_types/chains/opStack/abis.d.ts +457 -0
- package/_types/chains/opStack/abis.d.ts.map +1 -1
- package/_types/chains/opStack/actions/buildDepositTransaction.d.ts +5 -3
- package/_types/chains/opStack/actions/buildDepositTransaction.d.ts.map +1 -1
- package/_types/chains/opStack/actions/buildInitiateWithdrawal.d.ts +50 -0
- package/_types/chains/opStack/actions/buildInitiateWithdrawal.d.ts.map +1 -0
- package/_types/chains/opStack/actions/buildProveWithdrawal.d.ts +48 -0
- package/_types/chains/opStack/actions/buildProveWithdrawal.d.ts.map +1 -0
- package/_types/chains/opStack/actions/depositTransaction.d.ts +18 -34
- package/_types/chains/opStack/actions/depositTransaction.d.ts.map +1 -1
- package/_types/chains/opStack/actions/estimateDepositTransactionGas.d.ts +50 -0
- package/_types/chains/opStack/actions/estimateDepositTransactionGas.d.ts.map +1 -0
- package/_types/chains/opStack/actions/estimateFinalizeWithdrawalGas.d.ts +45 -0
- package/_types/chains/opStack/actions/estimateFinalizeWithdrawalGas.d.ts.map +1 -0
- package/_types/chains/opStack/actions/estimateInitiateWithdrawalGas.d.ts +51 -0
- package/_types/chains/opStack/actions/estimateInitiateWithdrawalGas.d.ts.map +1 -0
- package/_types/chains/opStack/actions/estimateProveWithdrawalGas.d.ts +63 -0
- package/_types/chains/opStack/actions/estimateProveWithdrawalGas.d.ts.map +1 -0
- package/_types/chains/opStack/actions/finalizeWithdrawal.d.ts +49 -0
- package/_types/chains/opStack/actions/finalizeWithdrawal.d.ts.map +1 -0
- package/_types/chains/opStack/actions/getL2Output.d.ts +44 -0
- package/_types/chains/opStack/actions/getL2Output.d.ts.map +1 -0
- package/_types/chains/opStack/actions/getTimeToFinalize.d.ts +57 -0
- package/_types/chains/opStack/actions/getTimeToFinalize.d.ts.map +1 -0
- package/_types/chains/opStack/actions/getTimeToNextL2Output.d.ts +61 -0
- package/_types/chains/opStack/actions/getTimeToNextL2Output.d.ts.map +1 -0
- package/_types/chains/opStack/actions/getTimeToProve.d.ts +50 -0
- package/_types/chains/opStack/actions/getTimeToProve.d.ts.map +1 -0
- package/_types/chains/opStack/actions/getWithdrawalStatus.d.ts +48 -0
- package/_types/chains/opStack/actions/getWithdrawalStatus.d.ts.map +1 -0
- package/_types/chains/opStack/actions/initiateWithdrawal.d.ts +77 -0
- package/_types/chains/opStack/actions/initiateWithdrawal.d.ts.map +1 -0
- package/_types/chains/opStack/actions/proveWithdrawal.d.ts +67 -0
- package/_types/chains/opStack/actions/proveWithdrawal.d.ts.map +1 -0
- package/_types/chains/opStack/actions/waitForNextL2Output.d.ts +55 -0
- package/_types/chains/opStack/actions/waitForNextL2Output.d.ts.map +1 -0
- package/_types/chains/opStack/actions/waitToFinalize.d.ts +45 -0
- package/_types/chains/opStack/actions/waitToFinalize.d.ts.map +1 -0
- package/_types/chains/opStack/actions/waitToProve.d.ts +55 -0
- package/_types/chains/opStack/actions/waitToProve.d.ts.map +1 -0
- package/_types/chains/opStack/chainConfig.d.ts +136 -136
- package/_types/chains/opStack/chains.d.ts +2 -0
- package/_types/chains/opStack/chains.d.ts.map +1 -1
- package/_types/chains/opStack/decorators/publicL1.d.ts +386 -0
- package/_types/chains/opStack/decorators/publicL1.d.ts.map +1 -0
- package/_types/chains/opStack/decorators/publicL2.d.ts +82 -26
- package/_types/chains/opStack/decorators/publicL2.d.ts.map +1 -1
- package/_types/chains/opStack/decorators/walletL1.d.ts +57 -2
- package/_types/chains/opStack/decorators/walletL1.d.ts.map +1 -1
- package/_types/chains/opStack/decorators/walletL2.d.ts +62 -0
- package/_types/chains/opStack/decorators/walletL2.d.ts.map +1 -0
- package/_types/chains/opStack/errors/withdrawal.d.ts +12 -0
- package/_types/chains/opStack/errors/withdrawal.d.ts.map +1 -0
- package/_types/chains/opStack/formatters.d.ts +136 -136
- package/_types/chains/opStack/index.d.ts +21 -3
- package/_types/chains/opStack/index.d.ts.map +1 -1
- package/_types/chains/opStack/types/deposit.d.ts +25 -0
- package/_types/chains/opStack/types/deposit.d.ts.map +1 -0
- package/_types/chains/opStack/types/withdrawal.d.ts +22 -0
- package/_types/chains/opStack/types/withdrawal.d.ts.map +1 -0
- package/_types/chains/opStack/utils/extractWithdrawalMessageLogs.d.ts +137 -0
- package/_types/chains/opStack/utils/extractWithdrawalMessageLogs.d.ts.map +1 -0
- package/_types/chains/opStack/utils/getWithdrawalHashStorageSlot.d.ts +11 -0
- package/_types/chains/opStack/utils/getWithdrawalHashStorageSlot.d.ts.map +1 -0
- package/_types/chains/opStack/utils/getWithdrawals.d.ts +12 -0
- package/_types/chains/opStack/utils/getWithdrawals.d.ts.map +1 -0
- package/_types/chains/opStack/utils/opaqueDataToDepositData.d.ts +15 -0
- package/_types/chains/opStack/utils/opaqueDataToDepositData.d.ts.map +1 -0
- package/_types/chains/zksync/chainConfig.d.ts +24 -24
- package/_types/chains/zksync/formatters.d.ts +24 -24
- package/_types/clients/decorators/public.d.ts +2 -2
- package/_types/clients/decorators/public.d.ts.map +1 -1
- package/_types/clients/decorators/wallet.d.ts +2 -2
- package/_types/clients/decorators/wallet.d.ts.map +1 -1
- package/_types/errors/abi.d.ts +14 -1
- package/_types/errors/abi.d.ts.map +1 -1
- package/_types/errors/version.d.ts +1 -1
- package/_types/errors/version.d.ts.map +1 -1
- package/_types/index.d.ts +15 -1
- package/_types/index.d.ts.map +1 -1
- package/_types/types/account.d.ts +1 -1
- package/_types/types/account.d.ts.map +1 -1
- package/_types/types/eip1193.d.ts +12 -0
- package/_types/types/eip1193.d.ts.map +1 -1
- package/_types/utils/abi/getAbiItem.d.ts +2 -1
- package/_types/utils/abi/getAbiItem.d.ts.map +1 -1
- package/_types/utils/formatters/block.d.ts +1 -1
- package/_types/utils/formatters/block.d.ts.map +1 -1
- package/_types/utils/formatters/transaction.d.ts +2 -2
- package/_types/utils/formatters/transaction.d.ts.map +1 -1
- package/_types/utils/formatters/transactionReceipt.d.ts +1 -1
- package/_types/utils/formatters/transactionReceipt.d.ts.map +1 -1
- package/_types/utils/formatters/transactionRequest.d.ts +1 -1
- package/_types/utils/hash/ripemd160.d.ts +11 -0
- package/_types/utils/hash/ripemd160.d.ts.map +1 -0
- package/_types/utils/hash/sha256.d.ts +11 -0
- package/_types/utils/hash/sha256.d.ts.map +1 -0
- package/_types/utils/index.d.ts +2 -0
- package/_types/utils/index.d.ts.map +1 -1
- package/actions/ens/getEnsName.ts +3 -2
- package/actions/index.ts +31 -0
- package/actions/public/getBlock.ts +1 -1
- package/actions/public/getTransaction.ts +1 -1
- package/actions/public/getTransactionReceipt.ts +1 -1
- package/actions/wallet/prepareTransactionRequest.ts +16 -9
- package/chains/definitions/arbitrumSepolia.ts +4 -0
- package/chains/definitions/base.ts +5 -0
- package/chains/definitions/baseGoerli.ts +5 -0
- package/chains/definitions/baseSepolia.ts +5 -0
- package/chains/definitions/fantomSonicTestnet.ts +23 -0
- package/chains/definitions/optimism.ts +5 -0
- package/chains/definitions/optimismGoerli.ts +5 -0
- package/chains/definitions/optimismSepolia.ts +5 -0
- package/chains/definitions/pgn.ts +13 -0
- package/chains/definitions/pgnTestnet.ts +8 -0
- package/chains/definitions/zilliqa.ts +23 -0
- package/chains/definitions/zilliqaTestnet.ts +23 -0
- package/chains/definitions/zkSyncSepoliaTestnet.ts +32 -0
- package/chains/definitions/zkSyncTestnet.ts +5 -0
- package/chains/definitions/zora.ts +5 -0
- package/chains/definitions/zoraSepolia.ts +5 -0
- package/chains/index.ts +9 -0
- package/chains/opStack/abis.ts +367 -0
- package/chains/opStack/actions/buildDepositTransaction.ts +11 -6
- package/chains/opStack/actions/buildInitiateWithdrawal.ts +118 -0
- package/chains/opStack/actions/buildProveWithdrawal.ts +149 -0
- package/chains/opStack/actions/depositTransaction.ts +50 -44
- package/chains/opStack/actions/estimateDepositTransactionGas.ts +138 -0
- package/chains/opStack/actions/estimateFinalizeWithdrawalGas.ts +118 -0
- package/chains/opStack/actions/estimateInitiateWithdrawalGas.ts +118 -0
- package/chains/opStack/actions/estimateProveWithdrawalGas.ts +139 -0
- package/chains/opStack/actions/finalizeWithdrawal.ts +130 -0
- package/chains/opStack/actions/getL2Output.ts +89 -0
- package/chains/opStack/actions/getTimeToFinalize.ts +122 -0
- package/chains/opStack/actions/getTimeToNextL2Output.ts +162 -0
- package/chains/opStack/actions/getTimeToProve.ts +79 -0
- package/chains/opStack/actions/getWithdrawalStatus.ts +152 -0
- package/chains/opStack/actions/initiateWithdrawal.ts +153 -0
- package/chains/opStack/actions/proveWithdrawal.ts +151 -0
- package/chains/opStack/actions/waitForNextL2Output.ts +111 -0
- package/chains/opStack/actions/waitToFinalize.ts +64 -0
- package/chains/opStack/actions/waitToProve.ts +99 -0
- package/chains/opStack/chains.ts +2 -0
- package/chains/opStack/decorators/publicL1.ts +514 -0
- package/chains/opStack/decorators/publicL2.ts +129 -37
- package/chains/opStack/decorators/walletL1.ts +71 -2
- package/chains/opStack/decorators/walletL2.ts +84 -0
- package/chains/opStack/errors/withdrawal.ts +15 -0
- package/chains/opStack/index.ts +112 -21
- package/chains/opStack/types/deposit.ts +28 -0
- package/chains/opStack/types/withdrawal.ts +23 -0
- package/chains/opStack/utils/extractWithdrawalMessageLogs.ts +36 -0
- package/chains/opStack/utils/getL2TransactionHash.ts +2 -2
- package/chains/opStack/utils/getWithdrawalHashStorageSlot.ts +29 -0
- package/chains/opStack/utils/getWithdrawals.ts +25 -0
- package/chains/opStack/utils/{fromOpaqueData.ts → opaqueDataToDepositData.ts} +9 -4
- package/clients/decorators/public.ts +2 -2
- package/clients/decorators/wallet.ts +2 -2
- package/errors/abi.ts +22 -1
- package/errors/version.ts +1 -1
- package/index.ts +40 -0
- package/package.json +1 -1
- package/types/account.ts +1 -1
- package/types/eip1193.ts +12 -0
- package/utils/abi/getAbiItem.ts +71 -2
- package/utils/formatters/block.ts +1 -1
- package/utils/formatters/transaction.ts +1 -1
- package/utils/formatters/transactionReceipt.ts +1 -1
- package/utils/hash/ripemd160.ts +31 -0
- package/utils/hash/sha256.ts +31 -0
- package/utils/index.ts +2 -0
- package/_cjs/chains/opStack/utils/fromOpaqueData.js.map +0 -1
- package/_esm/chains/opStack/utils/fromOpaqueData.js.map +0 -1
- package/_types/chains/opStack/utils/fromOpaqueData.d.ts +0 -15
- package/_types/chains/opStack/utils/fromOpaqueData.d.ts.map +0 -1
- package/chains/celo/package.json +0 -6
- package/chains/opStack/package.json +0 -6
- 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
|
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
|
-
/**
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
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 {
|
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
|
-
* })
|
45
|
+
* })
|
61
46
|
*
|
62
47
|
* const hash = await depositTransaction(client, {
|
63
48
|
* account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',
|
64
|
-
*
|
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 {
|
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
|
-
* })
|
68
|
+
* })
|
85
69
|
*
|
86
70
|
* const hash = await depositTransaction(client, {
|
87
|
-
*
|
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>,
|
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,
|
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"}
|