viem 2.17.11 → 2.18.1
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +20 -2
- package/_cjs/account-abstraction/accounts/createWebAuthnCredential.js +6 -0
- package/_cjs/account-abstraction/accounts/createWebAuthnCredential.js.map +1 -0
- package/_cjs/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.js +688 -0
- package/_cjs/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.js.map +1 -0
- package/_cjs/account-abstraction/accounts/implementations/toSoladySmartAccount.js +704 -0
- package/_cjs/account-abstraction/accounts/implementations/toSoladySmartAccount.js.map +1 -0
- package/_cjs/account-abstraction/accounts/toSmartAccount.js +93 -0
- package/_cjs/account-abstraction/accounts/toSmartAccount.js.map +1 -0
- package/_cjs/account-abstraction/accounts/toWebAuthnAccount.js +24 -0
- package/_cjs/account-abstraction/accounts/toWebAuthnAccount.js.map +1 -0
- package/_cjs/account-abstraction/accounts/types.js +3 -0
- package/_cjs/account-abstraction/accounts/types.js.map +1 -0
- package/_cjs/account-abstraction/actions/bundler/estimateUserOperationGas.js +37 -0
- package/_cjs/account-abstraction/actions/bundler/estimateUserOperationGas.js.map +1 -0
- package/_cjs/account-abstraction/actions/bundler/getSupportedEntryPoints.js +7 -0
- package/_cjs/account-abstraction/actions/bundler/getSupportedEntryPoints.js.map +1 -0
- package/_cjs/account-abstraction/actions/bundler/getUserOperation.js +22 -0
- package/_cjs/account-abstraction/actions/bundler/getUserOperation.js.map +1 -0
- package/_cjs/account-abstraction/actions/bundler/getUserOperationReceipt.js +15 -0
- package/_cjs/account-abstraction/actions/bundler/getUserOperationReceipt.js.map +1 -0
- package/_cjs/account-abstraction/actions/bundler/prepareUserOperation.js +239 -0
- package/_cjs/account-abstraction/actions/bundler/prepareUserOperation.js.map +1 -0
- package/_cjs/account-abstraction/actions/bundler/sendUserOperation.js +36 -0
- package/_cjs/account-abstraction/actions/bundler/sendUserOperation.js.map +1 -0
- package/_cjs/account-abstraction/actions/bundler/waitForUserOperationReceipt.js +48 -0
- package/_cjs/account-abstraction/actions/bundler/waitForUserOperationReceipt.js.map +1 -0
- package/_cjs/account-abstraction/actions/paymaster/getPaymasterData.js +34 -0
- package/_cjs/account-abstraction/actions/paymaster/getPaymasterData.js.map +1 -0
- package/_cjs/account-abstraction/actions/paymaster/getPaymasterStubData.js +34 -0
- package/_cjs/account-abstraction/actions/paymaster/getPaymasterStubData.js.map +1 -0
- package/_cjs/account-abstraction/clients/createBundlerClient.js +18 -0
- package/_cjs/account-abstraction/clients/createBundlerClient.js.map +1 -0
- package/_cjs/account-abstraction/clients/createPaymasterClient.js +17 -0
- package/_cjs/account-abstraction/clients/createPaymasterClient.js.map +1 -0
- package/_cjs/account-abstraction/clients/decorators/bundler.js +24 -0
- package/_cjs/account-abstraction/clients/decorators/bundler.js.map +1 -0
- package/_cjs/account-abstraction/clients/decorators/paymaster.js +12 -0
- package/_cjs/account-abstraction/clients/decorators/paymaster.js.map +1 -0
- package/_cjs/account-abstraction/constants/abis.js +1318 -0
- package/_cjs/account-abstraction/constants/abis.js.map +1 -0
- package/_cjs/account-abstraction/constants/address.js +6 -0
- package/_cjs/account-abstraction/constants/address.js.map +1 -0
- package/_cjs/account-abstraction/errors/bundler.js +813 -0
- package/_cjs/account-abstraction/errors/bundler.js.map +1 -0
- package/_cjs/account-abstraction/errors/userOperation.js +91 -0
- package/_cjs/account-abstraction/errors/userOperation.js.map +1 -0
- package/_cjs/account-abstraction/index.js +90 -0
- package/_cjs/account-abstraction/index.js.map +1 -0
- package/_cjs/account-abstraction/types/account.js +3 -0
- package/_cjs/account-abstraction/types/account.js.map +1 -0
- package/_cjs/account-abstraction/types/entryPointVersion.js +3 -0
- package/_cjs/account-abstraction/types/entryPointVersion.js.map +1 -0
- package/_cjs/account-abstraction/types/rpc.js +3 -0
- package/_cjs/account-abstraction/types/rpc.js.map +1 -0
- package/_cjs/account-abstraction/types/userOperation.js +3 -0
- package/_cjs/account-abstraction/types/userOperation.js.map +1 -0
- package/_cjs/account-abstraction/utils/errors/getBundlerError.js +186 -0
- package/_cjs/account-abstraction/utils/errors/getBundlerError.js.map +1 -0
- package/_cjs/account-abstraction/utils/errors/getUserOperationError.js +87 -0
- package/_cjs/account-abstraction/utils/errors/getUserOperationError.js.map +1 -0
- package/_cjs/account-abstraction/utils/formatters/userOperation.js +24 -0
- package/_cjs/account-abstraction/utils/formatters/userOperation.js.map +1 -0
- package/_cjs/account-abstraction/utils/formatters/userOperationGas.js +18 -0
- package/_cjs/account-abstraction/utils/formatters/userOperationGas.js.map +1 -0
- package/_cjs/account-abstraction/utils/formatters/userOperationReceipt.js +18 -0
- package/_cjs/account-abstraction/utils/formatters/userOperationReceipt.js.map +1 -0
- package/_cjs/account-abstraction/utils/formatters/userOperationRequest.js +43 -0
- package/_cjs/account-abstraction/utils/formatters/userOperationRequest.js.map +1 -0
- package/_cjs/account-abstraction/utils/userOperation/getUserOperationHash.js +88 -0
- package/_cjs/account-abstraction/utils/userOperation/getUserOperationHash.js.map +1 -0
- package/_cjs/account-abstraction/utils/userOperation/toPackedUserOperation.js +44 -0
- package/_cjs/account-abstraction/utils/userOperation/toPackedUserOperation.js.map +1 -0
- package/_cjs/accounts/index.js.map +1 -1
- package/_cjs/accounts/privateKeyToAccount.js +4 -0
- package/_cjs/accounts/privateKeyToAccount.js.map +1 -1
- package/_cjs/accounts/toAccount.js +1 -0
- package/_cjs/accounts/toAccount.js.map +1 -1
- package/_cjs/accounts/utils/parseAccount.js.map +1 -1
- package/_cjs/accounts/utils/sign.js +8 -2
- package/_cjs/accounts/utils/sign.js.map +1 -1
- package/_cjs/accounts/utils/signMessage.js +1 -3
- package/_cjs/accounts/utils/signMessage.js.map +1 -1
- package/_cjs/accounts/utils/signTypedData.js +2 -3
- package/_cjs/accounts/utils/signTypedData.js.map +1 -1
- package/_cjs/actions/public/getLogs.js +2 -1
- package/_cjs/actions/public/getLogs.js.map +1 -1
- package/_cjs/actions/wallet/sendTransaction.js +35 -22
- package/_cjs/actions/wallet/sendTransaction.js.map +1 -1
- package/_cjs/actions/wallet/signMessage.js +1 -1
- package/_cjs/actions/wallet/signMessage.js.map +1 -1
- package/_cjs/actions/wallet/signTransaction.js +1 -2
- package/_cjs/actions/wallet/signTransaction.js.map +1 -1
- package/_cjs/actions/wallet/signTypedData.js +1 -1
- package/_cjs/actions/wallet/signTypedData.js.map +1 -1
- package/_cjs/chains/definitions/bobaSepolia.js +1 -0
- package/_cjs/chains/definitions/bobaSepolia.js.map +1 -1
- package/_cjs/chains/definitions/cronoszkEVMTestnet.js +24 -0
- package/_cjs/chains/definitions/cronoszkEVMTestnet.js.map +1 -0
- package/_cjs/chains/index.js +8 -6
- package/_cjs/chains/index.js.map +1 -1
- package/_cjs/constants/abis.js +0 -3
- package/_cjs/constants/abis.js.map +1 -1
- package/_cjs/constants/address.js +3 -1
- package/_cjs/constants/address.js.map +1 -1
- package/_cjs/errors/account.js +17 -2
- package/_cjs/errors/account.js.map +1 -1
- package/_cjs/errors/contract.js +1 -1
- package/_cjs/errors/contract.js.map +1 -1
- package/_cjs/errors/rpc.js +6 -6
- package/_cjs/errors/rpc.js.map +1 -1
- package/_cjs/errors/version.js +1 -1
- package/_cjs/errors/version.js.map +1 -1
- package/_cjs/index.js +5 -3
- package/_cjs/index.js.map +1 -1
- package/_cjs/types/eip1193.js.map +1 -1
- package/_cjs/utils/abi/parseEventLogs.js +70 -2
- package/_cjs/utils/abi/parseEventLogs.js.map +1 -1
- package/_cjs/utils/buildRequest.js +4 -2
- package/_cjs/utils/buildRequest.js.map +1 -1
- package/_cjs/utils/errors/getNodeError.js +1 -2
- package/_cjs/utils/errors/getNodeError.js.map +1 -1
- package/_cjs/utils/index.js +3 -1
- package/_cjs/utils/index.js.map +1 -1
- package/_cjs/utils/signature/serializeErc6492Signature.js +6 -2
- package/_cjs/utils/signature/serializeErc6492Signature.js.map +1 -1
- package/_cjs/utils/signature/serializeSignature.js +6 -2
- package/_cjs/utils/signature/serializeSignature.js.map +1 -1
- package/_cjs/utils/signature/verifyHash.js +10 -0
- package/_cjs/utils/signature/verifyHash.js.map +1 -0
- package/_esm/account-abstraction/accounts/createWebAuthnCredential.js +3 -0
- package/_esm/account-abstraction/accounts/createWebAuthnCredential.js.map +1 -0
- package/_esm/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.js +709 -0
- package/_esm/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.js.map +1 -0
- package/_esm/account-abstraction/accounts/implementations/toSoladySmartAccount.js +718 -0
- package/_esm/account-abstraction/accounts/implementations/toSoladySmartAccount.js.map +1 -0
- package/_esm/account-abstraction/accounts/toSmartAccount.js +96 -0
- package/_esm/account-abstraction/accounts/toSmartAccount.js.map +1 -0
- package/_esm/account-abstraction/accounts/toWebAuthnAccount.js +26 -0
- package/_esm/account-abstraction/accounts/toWebAuthnAccount.js.map +1 -0
- package/_esm/account-abstraction/accounts/types.js +2 -0
- package/_esm/account-abstraction/accounts/types.js.map +1 -0
- package/_esm/account-abstraction/actions/bundler/estimateUserOperationGas.js +61 -0
- package/_esm/account-abstraction/actions/bundler/estimateUserOperationGas.js.map +1 -0
- package/_esm/account-abstraction/actions/bundler/getSupportedEntryPoints.js +25 -0
- package/_esm/account-abstraction/actions/bundler/getSupportedEntryPoints.js.map +1 -0
- package/_esm/account-abstraction/actions/bundler/getUserOperation.js +42 -0
- package/_esm/account-abstraction/actions/bundler/getUserOperation.js.map +1 -0
- package/_esm/account-abstraction/actions/bundler/getUserOperationReceipt.js +35 -0
- package/_esm/account-abstraction/actions/bundler/getUserOperationReceipt.js.map +1 -0
- package/_esm/account-abstraction/actions/bundler/prepareUserOperation.js +323 -0
- package/_esm/account-abstraction/actions/bundler/prepareUserOperation.js.map +1 -0
- package/_esm/account-abstraction/actions/bundler/sendUserOperation.js +60 -0
- package/_esm/account-abstraction/actions/bundler/sendUserOperation.js.map +1 -0
- package/_esm/account-abstraction/actions/bundler/waitForUserOperationReceipt.js +68 -0
- package/_esm/account-abstraction/actions/bundler/waitForUserOperationReceipt.js.map +1 -0
- package/_esm/account-abstraction/actions/paymaster/getPaymasterData.js +56 -0
- package/_esm/account-abstraction/actions/paymaster/getPaymasterData.js.map +1 -0
- package/_esm/account-abstraction/actions/paymaster/getPaymasterStubData.js +56 -0
- package/_esm/account-abstraction/actions/paymaster/getPaymasterStubData.js.map +1 -0
- package/_esm/account-abstraction/clients/createBundlerClient.js +15 -0
- package/_esm/account-abstraction/clients/createBundlerClient.js.map +1 -0
- package/_esm/account-abstraction/clients/createPaymasterClient.js +14 -0
- package/_esm/account-abstraction/clients/createPaymasterClient.js.map +1 -0
- package/_esm/account-abstraction/clients/decorators/bundler.js +21 -0
- package/_esm/account-abstraction/clients/decorators/bundler.js.map +1 -0
- package/_esm/account-abstraction/clients/decorators/paymaster.js +9 -0
- package/_esm/account-abstraction/clients/decorators/paymaster.js.map +1 -0
- package/_esm/account-abstraction/constants/abis.js +1315 -0
- package/_esm/account-abstraction/constants/abis.js.map +1 -0
- package/_esm/account-abstraction/constants/address.js +3 -0
- package/_esm/account-abstraction/constants/address.js.map +1 -0
- package/_esm/account-abstraction/errors/bundler.js +774 -0
- package/_esm/account-abstraction/errors/bundler.js.map +1 -0
- package/_esm/account-abstraction/errors/userOperation.js +84 -0
- package/_esm/account-abstraction/errors/userOperation.js.map +1 -0
- package/_esm/account-abstraction/index.js +31 -0
- package/_esm/account-abstraction/index.js.map +1 -0
- package/_esm/account-abstraction/types/account.js +2 -0
- package/_esm/account-abstraction/types/account.js.map +1 -0
- package/_esm/account-abstraction/types/entryPointVersion.js +2 -0
- package/_esm/account-abstraction/types/entryPointVersion.js.map +1 -0
- package/_esm/account-abstraction/types/rpc.js +2 -0
- package/_esm/account-abstraction/types/rpc.js.map +1 -0
- package/_esm/account-abstraction/types/userOperation.js +2 -0
- package/_esm/account-abstraction/types/userOperation.js.map +1 -0
- package/_esm/account-abstraction/utils/errors/getBundlerError.js +183 -0
- package/_esm/account-abstraction/utils/errors/getBundlerError.js.map +1 -0
- package/_esm/account-abstraction/utils/errors/getUserOperationError.js +85 -0
- package/_esm/account-abstraction/utils/errors/getUserOperationError.js.map +1 -0
- package/_esm/account-abstraction/utils/formatters/userOperation.js +21 -0
- package/_esm/account-abstraction/utils/formatters/userOperation.js.map +1 -0
- package/_esm/account-abstraction/utils/formatters/userOperationGas.js +15 -0
- package/_esm/account-abstraction/utils/formatters/userOperationGas.js.map +1 -0
- package/_esm/account-abstraction/utils/formatters/userOperationReceipt.js +15 -0
- package/_esm/account-abstraction/utils/formatters/userOperationReceipt.js.map +1 -0
- package/_esm/account-abstraction/utils/formatters/userOperationRequest.js +40 -0
- package/_esm/account-abstraction/utils/formatters/userOperationRequest.js.map +1 -0
- package/_esm/account-abstraction/utils/userOperation/getUserOperationHash.js +85 -0
- package/_esm/account-abstraction/utils/userOperation/getUserOperationHash.js.map +1 -0
- package/_esm/account-abstraction/utils/userOperation/toPackedUserOperation.js +41 -0
- package/_esm/account-abstraction/utils/userOperation/toPackedUserOperation.js.map +1 -0
- package/_esm/accounts/index.js.map +1 -1
- package/_esm/accounts/privateKeyToAccount.js +4 -0
- package/_esm/accounts/privateKeyToAccount.js.map +1 -1
- package/_esm/accounts/toAccount.js +2 -0
- package/_esm/accounts/toAccount.js.map +1 -1
- package/_esm/accounts/utils/parseAccount.js.map +1 -1
- package/_esm/accounts/utils/sign.js +9 -3
- package/_esm/accounts/utils/sign.js.map +1 -1
- package/_esm/accounts/utils/signMessage.js +1 -3
- package/_esm/accounts/utils/signMessage.js.map +1 -1
- package/_esm/accounts/utils/signTypedData.js +2 -3
- package/_esm/accounts/utils/signTypedData.js.map +1 -1
- package/_esm/actions/public/getLogs.js +2 -1
- package/_esm/actions/public/getLogs.js.map +1 -1
- package/_esm/actions/wallet/sendTransaction.js +37 -24
- package/_esm/actions/wallet/sendTransaction.js.map +1 -1
- package/_esm/actions/wallet/signMessage.js +1 -1
- package/_esm/actions/wallet/signMessage.js.map +1 -1
- package/_esm/actions/wallet/signTransaction.js +1 -2
- package/_esm/actions/wallet/signTransaction.js.map +1 -1
- package/_esm/actions/wallet/signTypedData.js +1 -1
- package/_esm/actions/wallet/signTypedData.js.map +1 -1
- package/_esm/chains/definitions/bobaSepolia.js +1 -0
- package/_esm/chains/definitions/bobaSepolia.js.map +1 -1
- package/_esm/chains/definitions/cronoszkEVMTestnet.js +21 -0
- package/_esm/chains/definitions/cronoszkEVMTestnet.js.map +1 -0
- package/_esm/chains/index.js +1 -0
- package/_esm/chains/index.js.map +1 -1
- package/_esm/constants/abis.js +0 -3
- package/_esm/constants/abis.js.map +1 -1
- package/_esm/constants/address.js +2 -0
- package/_esm/constants/address.js.map +1 -1
- package/_esm/errors/account.js +15 -1
- package/_esm/errors/account.js.map +1 -1
- package/_esm/errors/contract.js +1 -1
- package/_esm/errors/contract.js.map +1 -1
- package/_esm/errors/rpc.js +6 -6
- package/_esm/errors/rpc.js.map +1 -1
- package/_esm/errors/version.js +1 -1
- package/_esm/errors/version.js.map +1 -1
- package/_esm/index.js +1 -0
- package/_esm/index.js.map +1 -1
- package/_esm/types/eip1193.js.map +1 -1
- package/_esm/utils/abi/parseEventLogs.js +72 -2
- package/_esm/utils/abi/parseEventLogs.js.map +1 -1
- package/_esm/utils/buildRequest.js +4 -2
- package/_esm/utils/buildRequest.js.map +1 -1
- package/_esm/utils/errors/getNodeError.js +1 -2
- package/_esm/utils/errors/getNodeError.js.map +1 -1
- package/_esm/utils/index.js +1 -0
- package/_esm/utils/index.js.map +1 -1
- package/_esm/utils/signature/serializeErc6492Signature.js +6 -2
- package/_esm/utils/signature/serializeErc6492Signature.js.map +1 -1
- package/_esm/utils/signature/serializeSignature.js +6 -2
- package/_esm/utils/signature/serializeSignature.js.map +1 -1
- package/_esm/utils/signature/verifyHash.js +19 -0
- package/_esm/utils/signature/verifyHash.js.map +1 -0
- package/_types/account-abstraction/accounts/createWebAuthnCredential.d.ts +2 -0
- package/_types/account-abstraction/accounts/createWebAuthnCredential.d.ts.map +1 -0
- package/_types/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.d.ts +648 -0
- package/_types/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.d.ts.map +1 -0
- package/_types/account-abstraction/accounts/implementations/toSoladySmartAccount.d.ts +464 -0
- package/_types/account-abstraction/accounts/implementations/toSoladySmartAccount.d.ts.map +1 -0
- package/_types/account-abstraction/accounts/toSmartAccount.d.ts +14 -0
- package/_types/account-abstraction/accounts/toSmartAccount.d.ts.map +1 -0
- package/_types/account-abstraction/accounts/toWebAuthnAccount.d.ts +32 -0
- package/_types/account-abstraction/accounts/toWebAuthnAccount.d.ts.map +1 -0
- package/_types/account-abstraction/accounts/types.d.ts +174 -0
- package/_types/account-abstraction/accounts/types.d.ts.map +1 -0
- package/_types/account-abstraction/actions/bundler/estimateUserOperationGas.d.ts +62 -0
- package/_types/account-abstraction/actions/bundler/estimateUserOperationGas.d.ts.map +1 -0
- package/_types/account-abstraction/actions/bundler/getSupportedEntryPoints.d.ts +30 -0
- package/_types/account-abstraction/actions/bundler/getSupportedEntryPoints.d.ts.map +1 -0
- package/_types/account-abstraction/actions/bundler/getUserOperation.d.ts +57 -0
- package/_types/account-abstraction/actions/bundler/getUserOperation.d.ts.map +1 -0
- package/_types/account-abstraction/actions/bundler/getUserOperationReceipt.d.ts +39 -0
- package/_types/account-abstraction/actions/bundler/getUserOperationReceipt.d.ts.map +1 -0
- package/_types/account-abstraction/actions/bundler/prepareUserOperation.d.ts +106 -0
- package/_types/account-abstraction/actions/bundler/prepareUserOperation.d.ts.map +1 -0
- package/_types/account-abstraction/actions/bundler/sendUserOperation.d.ts +60 -0
- package/_types/account-abstraction/actions/bundler/sendUserOperation.d.ts.map +1 -0
- package/_types/account-abstraction/actions/bundler/waitForUserOperationReceipt.d.ts +52 -0
- package/_types/account-abstraction/actions/bundler/waitForUserOperationReceipt.d.ts.map +1 -0
- package/_types/account-abstraction/actions/paymaster/getPaymasterData.d.ts +49 -0
- package/_types/account-abstraction/actions/paymaster/getPaymasterData.d.ts.map +1 -0
- package/_types/account-abstraction/actions/paymaster/getPaymasterStubData.d.ts +55 -0
- package/_types/account-abstraction/actions/paymaster/getPaymasterStubData.d.ts.map +1 -0
- package/_types/account-abstraction/clients/createBundlerClient.d.ts +66 -0
- package/_types/account-abstraction/clients/createBundlerClient.d.ts.map +1 -0
- package/_types/account-abstraction/clients/createPaymasterClient.d.ts +27 -0
- package/_types/account-abstraction/clients/createPaymasterClient.d.ts.map +1 -0
- package/_types/account-abstraction/clients/decorators/bundler.d.ts +206 -0
- package/_types/account-abstraction/clients/decorators/bundler.d.ts.map +1 -0
- package/_types/account-abstraction/clients/decorators/paymaster.d.ts +60 -0
- package/_types/account-abstraction/clients/decorators/paymaster.d.ts.map +1 -0
- package/_types/account-abstraction/constants/abis.d.ts +1468 -0
- package/_types/account-abstraction/constants/abis.d.ts.map +1 -0
- package/_types/account-abstraction/constants/address.d.ts +3 -0
- package/_types/account-abstraction/constants/address.d.ts.map +1 -0
- package/_types/account-abstraction/errors/bundler.d.ts +391 -0
- package/_types/account-abstraction/errors/bundler.d.ts.map +1 -0
- package/_types/account-abstraction/errors/userOperation.d.ts +41 -0
- package/_types/account-abstraction/errors/userOperation.d.ts.map +1 -0
- package/_types/account-abstraction/index.d.ts +34 -0
- package/_types/account-abstraction/index.d.ts.map +1 -0
- package/_types/account-abstraction/types/account.d.ts +11 -0
- package/_types/account-abstraction/types/account.d.ts.map +1 -0
- package/_types/account-abstraction/types/entryPointVersion.d.ts +9 -0
- package/_types/account-abstraction/types/entryPointVersion.d.ts.map +1 -0
- package/_types/account-abstraction/types/rpc.d.ts +9 -0
- package/_types/account-abstraction/types/rpc.d.ts.map +1 -0
- package/_types/account-abstraction/types/userOperation.d.ts +157 -0
- package/_types/account-abstraction/types/userOperation.d.ts.map +1 -0
- package/_types/account-abstraction/utils/errors/getBundlerError.d.ts +8 -0
- package/_types/account-abstraction/utils/errors/getBundlerError.d.ts.map +1 -0
- package/_types/account-abstraction/utils/errors/getUserOperationError.d.ts +15 -0
- package/_types/account-abstraction/utils/errors/getUserOperationError.d.ts.map +1 -0
- package/_types/account-abstraction/utils/formatters/userOperation.d.ts +6 -0
- package/_types/account-abstraction/utils/formatters/userOperation.d.ts.map +1 -0
- package/_types/account-abstraction/utils/formatters/userOperationGas.d.ts +6 -0
- package/_types/account-abstraction/utils/formatters/userOperationGas.d.ts.map +1 -0
- package/_types/account-abstraction/utils/formatters/userOperationReceipt.d.ts +6 -0
- package/_types/account-abstraction/utils/formatters/userOperationReceipt.d.ts.map +1 -0
- package/_types/account-abstraction/utils/formatters/userOperationRequest.d.ts +7 -0
- package/_types/account-abstraction/utils/formatters/userOperationRequest.d.ts.map +1 -0
- package/_types/account-abstraction/utils/userOperation/getUserOperationHash.d.ts +13 -0
- package/_types/account-abstraction/utils/userOperation/getUserOperationHash.d.ts.map +1 -0
- package/_types/account-abstraction/utils/userOperation/toPackedUserOperation.d.ts +3 -0
- package/_types/account-abstraction/utils/userOperation/toPackedUserOperation.d.ts.map +1 -0
- package/_types/accounts/index.d.ts.map +1 -1
- package/_types/accounts/privateKeyToAccount.d.ts +2 -1
- package/_types/accounts/privateKeyToAccount.d.ts.map +1 -1
- package/_types/accounts/toAccount.d.ts.map +1 -1
- package/_types/accounts/types.d.ts +14 -7
- package/_types/accounts/types.d.ts.map +1 -1
- package/_types/accounts/utils/parseAccount.d.ts +1 -1
- package/_types/accounts/utils/parseAccount.d.ts.map +1 -1
- package/_types/accounts/utils/sign.d.ts +9 -6
- package/_types/accounts/utils/sign.d.ts.map +1 -1
- package/_types/accounts/utils/signMessage.d.ts +1 -2
- package/_types/accounts/utils/signMessage.d.ts.map +1 -1
- package/_types/accounts/utils/signTypedData.d.ts +1 -2
- package/_types/accounts/utils/signTypedData.d.ts.map +1 -1
- package/_types/actions/public/getLogs.d.ts.map +1 -1
- package/_types/actions/wallet/sendTransaction.d.ts +2 -1
- package/_types/actions/wallet/sendTransaction.d.ts.map +1 -1
- package/_types/actions/wallet/signMessage.d.ts.map +1 -1
- package/_types/actions/wallet/signTransaction.d.ts.map +1 -1
- package/_types/chains/definitions/bobaSepolia.d.ts +1 -1
- package/_types/chains/definitions/bobaSepolia.d.ts.map +1 -1
- package/_types/chains/definitions/cronoszkEVMTestnet.d.ts +35 -0
- package/_types/chains/definitions/cronoszkEVMTestnet.d.ts.map +1 -0
- package/_types/chains/definitions/lisk.d.ts +2 -2
- package/_types/chains/definitions/playfiAlbireo.d.ts +2 -2
- package/_types/chains/definitions/zkSync.d.ts +2 -2
- package/_types/chains/definitions/zkSyncInMemoryNode.d.ts +2 -2
- package/_types/chains/definitions/zkSyncLocalNode.d.ts +2 -2
- package/_types/chains/definitions/zkSyncSepoliaTestnet.d.ts +2 -2
- package/_types/chains/definitions/zkSyncTestnet.d.ts +2 -2
- package/_types/chains/index.d.ts +1 -0
- package/_types/chains/index.d.ts.map +1 -1
- package/_types/clients/decorators/public.d.ts +1 -1
- package/_types/clients/decorators/public.d.ts.map +1 -1
- package/_types/constants/abis.d.ts +0 -3
- package/_types/constants/abis.d.ts.map +1 -1
- package/_types/constants/address.d.ts +2 -0
- package/_types/constants/address.d.ts.map +1 -1
- package/_types/errors/account.d.ts +11 -0
- package/_types/errors/account.d.ts.map +1 -1
- package/_types/errors/rpc.d.ts +9 -3
- package/_types/errors/rpc.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 +5 -3
- package/_types/index.d.ts.map +1 -1
- package/_types/types/eip1193.d.ts +239 -2
- package/_types/types/eip1193.d.ts.map +1 -1
- package/_types/types/multicall.d.ts +1 -1
- package/_types/types/multicall.d.ts.map +1 -1
- package/_types/utils/abi/parseEventLogs.d.ts +9 -3
- package/_types/utils/abi/parseEventLogs.d.ts.map +1 -1
- package/_types/utils/buildRequest.d.ts.map +1 -1
- package/_types/utils/errors/getNodeError.d.ts.map +1 -1
- package/_types/utils/formatters/transaction.d.ts +1 -1
- package/_types/utils/index.d.ts +1 -0
- package/_types/utils/index.d.ts.map +1 -1
- package/_types/utils/signature/hashTypedData.d.ts +2 -2
- package/_types/utils/signature/hashTypedData.d.ts.map +1 -1
- package/_types/utils/signature/serializeErc6492Signature.d.ts +7 -4
- package/_types/utils/signature/serializeErc6492Signature.d.ts.map +1 -1
- package/_types/utils/signature/serializeSignature.d.ts +8 -2
- package/_types/utils/signature/serializeSignature.d.ts.map +1 -1
- package/_types/utils/signature/verifyHash.d.ts +30 -0
- package/_types/utils/signature/verifyHash.d.ts.map +1 -0
- package/_types/zksync/chainConfig.d.ts +2 -2
- package/_types/zksync/formatters.d.ts +2 -2
- package/account-abstraction/accounts/createWebAuthnCredential.ts +7 -0
- package/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.ts +817 -0
- package/account-abstraction/accounts/implementations/toSoladySmartAccount.ts +794 -0
- package/account-abstraction/accounts/toSmartAccount.ts +126 -0
- package/account-abstraction/accounts/toWebAuthnAccount.ts +56 -0
- package/account-abstraction/accounts/types.ts +208 -0
- package/account-abstraction/actions/bundler/estimateUserOperationGas.ts +170 -0
- package/account-abstraction/actions/bundler/getSupportedEntryPoints.ts +33 -0
- package/account-abstraction/actions/bundler/getUserOperation.ts +85 -0
- package/account-abstraction/actions/bundler/getUserOperationReceipt.ts +64 -0
- package/account-abstraction/actions/bundler/prepareUserOperation.ts +637 -0
- package/account-abstraction/actions/bundler/sendUserOperation.ts +149 -0
- package/account-abstraction/actions/bundler/waitForUserOperationReceipt.ts +139 -0
- package/account-abstraction/actions/paymaster/getPaymasterData.ts +135 -0
- package/account-abstraction/actions/paymaster/getPaymasterStubData.ts +138 -0
- package/account-abstraction/clients/createBundlerClient.ts +155 -0
- package/account-abstraction/clients/createPaymasterClient.ts +78 -0
- package/account-abstraction/clients/decorators/bundler.ts +296 -0
- package/account-abstraction/clients/decorators/paymaster.ts +81 -0
- package/account-abstraction/constants/abis.ts +1404 -0
- package/account-abstraction/constants/address.ts +4 -0
- package/account-abstraction/errors/bundler.ts +781 -0
- package/account-abstraction/errors/userOperation.ts +111 -0
- package/account-abstraction/index.ts +228 -0
- package/account-abstraction/package.json +6 -0
- package/account-abstraction/types/account.ts +21 -0
- package/account-abstraction/types/entryPointVersion.ts +24 -0
- package/account-abstraction/types/rpc.ts +29 -0
- package/account-abstraction/types/userOperation.ts +262 -0
- package/account-abstraction/utils/errors/getBundlerError.ts +309 -0
- package/account-abstraction/utils/errors/getUserOperationError.ts +153 -0
- package/account-abstraction/utils/formatters/userOperation.ts +31 -0
- package/account-abstraction/utils/formatters/userOperationGas.ts +26 -0
- package/account-abstraction/utils/formatters/userOperationReceipt.ts +24 -0
- package/account-abstraction/utils/formatters/userOperationRequest.ts +53 -0
- package/account-abstraction/utils/userOperation/getUserOperationHash.ts +138 -0
- package/account-abstraction/utils/userOperation/toPackedUserOperation.ts +64 -0
- package/accounts/index.ts +1 -0
- package/accounts/privateKeyToAccount.ts +5 -0
- package/accounts/toAccount.ts +3 -0
- package/accounts/types.ts +34 -12
- package/accounts/utils/parseAccount.ts +6 -3
- package/accounts/utils/sign.ts +24 -8
- package/accounts/utils/signMessage.ts +1 -7
- package/accounts/utils/signTypedData.ts +2 -7
- package/actions/public/getLogs.ts +2 -1
- package/actions/wallet/sendTransaction.ts +48 -27
- package/actions/wallet/signMessage.ts +2 -1
- package/actions/wallet/signTransaction.ts +1 -2
- package/actions/wallet/signTypedData.ts +1 -1
- package/chains/definitions/bobaSepolia.ts +1 -0
- package/chains/definitions/cronoszkEVMTestnet.ts +21 -0
- package/chains/index.ts +1 -0
- package/clients/decorators/public.ts +1 -1
- package/constants/abis.ts +0 -3
- package/constants/address.ts +4 -0
- package/errors/account.ts +22 -1
- package/errors/contract.ts +1 -1
- package/errors/rpc.ts +6 -6
- package/errors/version.ts +1 -1
- package/index.ts +20 -3
- package/package.json +7 -1
- package/types/eip1193.ts +314 -2
- package/types/multicall.ts +1 -1
- package/utils/abi/parseEventLogs.ts +103 -14
- package/utils/buildRequest.ts +4 -2
- package/utils/errors/getNodeError.ts +1 -2
- package/utils/index.ts +6 -0
- package/utils/signature/hashTypedData.ts +6 -6
- package/utils/signature/serializeErc6492Signature.ts +17 -8
- package/utils/signature/serializeSignature.ts +24 -4
- package/utils/signature/verifyHash.ts +54 -0
@@ -0,0 +1,174 @@
|
|
1
|
+
import type { Abi, Address, TypedData } from 'abitype';
|
2
|
+
import type { SignReturnType as WebAuthnSignReturnType } from 'webauthn-p256';
|
3
|
+
import type { Client } from '../../clients/createClient.js';
|
4
|
+
import type { Hash, Hex, SignableMessage } from '../../types/misc.js';
|
5
|
+
import type { TypedDataDefinition } from '../../types/typedData.js';
|
6
|
+
import type { Assign, ExactPartial, UnionPartialBy } from '../../types/utils.js';
|
7
|
+
import type { EntryPointVersion } from '../types/entryPointVersion.js';
|
8
|
+
import type { EstimateUserOperationGasReturnType, UserOperation, UserOperationRequest } from '../types/userOperation.js';
|
9
|
+
type Call = {
|
10
|
+
to: Hex;
|
11
|
+
data?: Hex | undefined;
|
12
|
+
value?: bigint | undefined;
|
13
|
+
};
|
14
|
+
export type SmartAccountImplementation<entryPointAbi extends Abi | readonly unknown[] = Abi, entryPointVersion extends EntryPointVersion = EntryPointVersion, extend extends object = object> = {
|
15
|
+
/** Client used to retrieve Smart Account data, and perform signing (if owner is a JSON-RPC Account). */
|
16
|
+
client: Client;
|
17
|
+
/** Compatible EntryPoint of the Smart Account. */
|
18
|
+
entryPoint: {
|
19
|
+
/** Compatible EntryPoint ABI. */
|
20
|
+
abi: entryPointAbi;
|
21
|
+
/** Compatible EntryPoint address. */
|
22
|
+
address: Address;
|
23
|
+
/** Compatible EntryPoint version. */
|
24
|
+
version: entryPointVersion;
|
25
|
+
};
|
26
|
+
/** Extend the Smart Account with custom properties. */
|
27
|
+
extend?: extend | undefined;
|
28
|
+
/**
|
29
|
+
* Retrieves the Smart Account's address.
|
30
|
+
*
|
31
|
+
* @example
|
32
|
+
* ```ts
|
33
|
+
* const address = await account.getAddress()
|
34
|
+
* // '0x...'
|
35
|
+
* ```
|
36
|
+
*/
|
37
|
+
getAddress: () => Promise<Address>;
|
38
|
+
/**
|
39
|
+
* Encodes the calls into calldata for executing a User Operation.
|
40
|
+
*
|
41
|
+
* @example
|
42
|
+
* ```ts
|
43
|
+
* const callData = await account.encodeCalls([
|
44
|
+
* { to: '0x...', data: '0x...' },
|
45
|
+
* { to: '0x...', data: '0x...', value: 100n },
|
46
|
+
* ])
|
47
|
+
* // '0x...'
|
48
|
+
* ```
|
49
|
+
*/
|
50
|
+
encodeCalls: (calls: readonly Call[]) => Promise<Hex>;
|
51
|
+
/**
|
52
|
+
* Retrieves the calldata for factory call to deploy a Smart Account.
|
53
|
+
* If the Smart Account has already been deployed, this will return undefined values.
|
54
|
+
*
|
55
|
+
* @example Counterfactual account
|
56
|
+
* ```ts
|
57
|
+
* const { factory, factoryData } = await account.getFactoryArgs()
|
58
|
+
* // { factory: '0x...', factoryData: '0x...' }
|
59
|
+
* ```
|
60
|
+
*
|
61
|
+
* @example Deployed account
|
62
|
+
* ```ts
|
63
|
+
* const { factory, factoryData } = await account.getFactoryArgs()
|
64
|
+
* // { factory: undefined, factoryData: undefined }
|
65
|
+
* ```
|
66
|
+
*/
|
67
|
+
getFactoryArgs: () => Promise<{
|
68
|
+
factory?: Address | undefined;
|
69
|
+
factoryData?: Hex | undefined;
|
70
|
+
}>;
|
71
|
+
/**
|
72
|
+
* Retrieves the nonce of the Account.
|
73
|
+
*
|
74
|
+
* @example
|
75
|
+
* ```ts
|
76
|
+
* const nonce = await account.getNonce()
|
77
|
+
* // 1n
|
78
|
+
* ```
|
79
|
+
*/
|
80
|
+
getNonce: (parameters?: {
|
81
|
+
key?: bigint | undefined;
|
82
|
+
} | undefined) => Promise<bigint>;
|
83
|
+
/**
|
84
|
+
* Retrieves the User Operation "stub" signature for gas estimation.
|
85
|
+
*
|
86
|
+
* ```ts
|
87
|
+
* const signature = await account.getStubSignature()
|
88
|
+
* // '0x...'
|
89
|
+
* ```
|
90
|
+
*/
|
91
|
+
getStubSignature: () => Promise<Hex>;
|
92
|
+
/**
|
93
|
+
* Signs a hash via the Smart Account's owner.
|
94
|
+
*
|
95
|
+
* @example
|
96
|
+
* ```ts
|
97
|
+
* const signature = await account.sign({
|
98
|
+
* hash: '0x...'
|
99
|
+
* })
|
100
|
+
* // '0x...'
|
101
|
+
* ```
|
102
|
+
*/
|
103
|
+
sign?: ((parameters: {
|
104
|
+
hash: Hash;
|
105
|
+
}) => Promise<Hex>) | undefined;
|
106
|
+
/**
|
107
|
+
* Signs a [EIP-191 Personal Sign message](https://eips.ethereum.org/EIPS/eip-191).
|
108
|
+
*
|
109
|
+
* @example
|
110
|
+
* ```ts
|
111
|
+
* const signature = await account.signMessage({
|
112
|
+
* message: 'Hello, World!'
|
113
|
+
* })
|
114
|
+
* // '0x...'
|
115
|
+
* ```
|
116
|
+
*/
|
117
|
+
signMessage: (parameters: {
|
118
|
+
message: SignableMessage;
|
119
|
+
}) => Promise<Hex>;
|
120
|
+
/**
|
121
|
+
* Signs [EIP-712 Typed Data](https://eips.ethereum.org/EIPS/eip-712).
|
122
|
+
*
|
123
|
+
* @example
|
124
|
+
* ```ts
|
125
|
+
* const signature = await account.signTypedData({
|
126
|
+
* domain,
|
127
|
+
* types,
|
128
|
+
* primaryType: 'Mail',
|
129
|
+
* message,
|
130
|
+
* })
|
131
|
+
* ```
|
132
|
+
*/
|
133
|
+
signTypedData: <const typedData extends TypedData | Record<string, unknown>, primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData>(parameters: TypedDataDefinition<typedData, primaryType>) => Promise<Hex>;
|
134
|
+
/**
|
135
|
+
* Signs the User Operation.
|
136
|
+
*
|
137
|
+
* @example
|
138
|
+
* ```ts
|
139
|
+
* const signature = await account.signUserOperation({
|
140
|
+
* chainId: 1,
|
141
|
+
* userOperation,
|
142
|
+
* })
|
143
|
+
* ```
|
144
|
+
*/
|
145
|
+
signUserOperation: (parameters: UnionPartialBy<UserOperation, 'sender'> & {
|
146
|
+
chainId?: number | undefined;
|
147
|
+
}) => Promise<Hex>;
|
148
|
+
/** User Operation configuration properties. */
|
149
|
+
userOperation?: {
|
150
|
+
/** Prepares gas properties for the User Operation request. */
|
151
|
+
estimateGas?: ((userOperation: UserOperationRequest) => Promise<ExactPartial<EstimateUserOperationGasReturnType> | undefined>) | undefined;
|
152
|
+
} | undefined;
|
153
|
+
};
|
154
|
+
export type SmartAccount<implementation extends SmartAccountImplementation = SmartAccountImplementation> = Assign<implementation['extend'], Assign<implementation, {
|
155
|
+
/** Address of the Smart Account. */
|
156
|
+
address: Address;
|
157
|
+
/** Whether or not the Smart Account has been deployed. */
|
158
|
+
isDeployed: () => Promise<boolean>;
|
159
|
+
/** Type of account. */
|
160
|
+
type: 'smart';
|
161
|
+
}>>;
|
162
|
+
export type WebAuthnAccount = {
|
163
|
+
publicKey: Hex;
|
164
|
+
sign: ({ hash }: {
|
165
|
+
hash: Hash;
|
166
|
+
}) => Promise<WebAuthnSignReturnType>;
|
167
|
+
signMessage: ({ message, }: {
|
168
|
+
message: SignableMessage;
|
169
|
+
}) => Promise<WebAuthnSignReturnType>;
|
170
|
+
signTypedData: <const typedData extends TypedDataDefinition | Record<string, unknown>, primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData>(typedDataDefinition: TypedDataDefinition<typedData, primaryType>) => Promise<WebAuthnSignReturnType>;
|
171
|
+
type: 'webAuthn';
|
172
|
+
};
|
173
|
+
export {};
|
174
|
+
//# sourceMappingURL=types.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../account-abstraction/accounts/types.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,62 @@
|
|
1
|
+
import type { Address, Narrow } from 'abitype';
|
2
|
+
import { type ParseAccountErrorType } from '../../../accounts/utils/parseAccount.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 { Chain } from '../../../types/chain.js';
|
7
|
+
import type { Hex } from '../../../types/misc.js';
|
8
|
+
import type { Assign, OneOf, Prettify } from '../../../types/utils.js';
|
9
|
+
import type { RequestErrorType } from '../../../utils/buildRequest.js';
|
10
|
+
import type { SmartAccount } from '../../accounts/types.js';
|
11
|
+
import type { PaymasterActions } from '../../clients/decorators/paymaster.js';
|
12
|
+
import type { DeriveSmartAccount, GetSmartAccountParameter } from '../../types/account.js';
|
13
|
+
import type { DeriveEntryPointVersion, EntryPointVersion } from '../../types/entryPointVersion.js';
|
14
|
+
import type { EstimateUserOperationGasReturnType as EstimateUserOperationGasReturnType_, UserOperationCalls, UserOperationRequest } from '../../types/userOperation.js';
|
15
|
+
import { type FormatUserOperationGasErrorType } from '../../utils/formatters/userOperationGas.js';
|
16
|
+
import { type FormatUserOperationRequestErrorType } from '../../utils/formatters/userOperationRequest.js';
|
17
|
+
import { type PrepareUserOperationErrorType } from './prepareUserOperation.js';
|
18
|
+
export type EstimateUserOperationGasParameters<account extends SmartAccount | undefined = SmartAccount | undefined, accountOverride extends SmartAccount | undefined = SmartAccount | undefined, calls extends readonly unknown[] = readonly unknown[], _derivedAccount extends SmartAccount | undefined = DeriveSmartAccount<account, accountOverride>, _derivedVersion extends EntryPointVersion = DeriveEntryPointVersion<_derivedAccount>> = Assign<UserOperationRequest<_derivedVersion>, OneOf<{
|
19
|
+
calls: UserOperationCalls<Narrow<calls>>;
|
20
|
+
} | {
|
21
|
+
callData: Hex;
|
22
|
+
}> & {
|
23
|
+
paymaster?: Address | true | {
|
24
|
+
/** Retrieves paymaster-related User Operation properties to be used for sending the User Operation. */
|
25
|
+
getPaymasterData?: PaymasterActions['getPaymasterData'] | undefined;
|
26
|
+
/** Retrieves paymaster-related User Operation properties to be used for gas estimation. */
|
27
|
+
getPaymasterStubData?: PaymasterActions['getPaymasterStubData'] | undefined;
|
28
|
+
} | undefined;
|
29
|
+
/** Paymaster context to pass to `getPaymasterData` and `getPaymasterStubData` calls. */
|
30
|
+
paymasterContext?: unknown | undefined;
|
31
|
+
}> & GetSmartAccountParameter<account, accountOverride>;
|
32
|
+
export type EstimateUserOperationGasReturnType<account extends SmartAccount | undefined = SmartAccount | undefined, accountOverride extends SmartAccount | undefined = SmartAccount | undefined, _derivedAccount extends SmartAccount | undefined = DeriveSmartAccount<account, accountOverride>, _derivedVersion extends EntryPointVersion = DeriveEntryPointVersion<_derivedAccount>> = Prettify<EstimateUserOperationGasReturnType_<_derivedVersion>>;
|
33
|
+
export type EstimateUserOperationGasErrorType = ParseAccountErrorType | PrepareUserOperationErrorType | FormatUserOperationRequestErrorType | FormatUserOperationGasErrorType | RequestErrorType | ErrorType;
|
34
|
+
/**
|
35
|
+
* Returns an estimate of gas values necessary to execute the User Operation.
|
36
|
+
*
|
37
|
+
* - Docs: https://viem.sh/actions/bundler/estimateUserOperationGas
|
38
|
+
*
|
39
|
+
* @param client - Client to use
|
40
|
+
* @param parameters - {@link EstimateUserOperationGasParameters}
|
41
|
+
* @returns The gas estimate (in wei). {@link EstimateUserOperationGasReturnType}
|
42
|
+
*
|
43
|
+
* @example
|
44
|
+
* import { createBundlerClient, http, parseEther } from 'viem'
|
45
|
+
* import { toSmartAccount } from 'viem/accounts'
|
46
|
+
* import { mainnet } from 'viem/chains'
|
47
|
+
* import { estimateUserOperationGas } from 'viem/actions'
|
48
|
+
*
|
49
|
+
* const account = await toSmartAccount({ ... })
|
50
|
+
*
|
51
|
+
* const bundlerClient = createBundlerClient({
|
52
|
+
* chain: mainnet,
|
53
|
+
* transport: http(),
|
54
|
+
* })
|
55
|
+
*
|
56
|
+
* const values = await estimateUserOperationGas(bundlerClient, {
|
57
|
+
* account,
|
58
|
+
* calls: [{ to: '0x...', value: parseEther('1') }],
|
59
|
+
* })
|
60
|
+
*/
|
61
|
+
export declare function estimateUserOperationGas<const calls extends readonly unknown[], account extends SmartAccount | undefined, accountOverride extends SmartAccount | undefined = undefined>(client: Client<Transport, Chain | undefined, account>, parameters: EstimateUserOperationGasParameters<account, accountOverride, calls>): Promise<EstimateUserOperationGasReturnType<account, accountOverride>>;
|
62
|
+
//# sourceMappingURL=estimateUserOperationGas.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"estimateUserOperationGas.d.ts","sourceRoot":"","sources":["../../../../account-abstraction/actions/bundler/estimateUserOperationGas.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import type { Address } from 'abitype';
|
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 { RequestErrorType } from '../../../utils/buildRequest.js';
|
6
|
+
export type GetSupportedEntryPointsReturnType = readonly Address[];
|
7
|
+
export type GetSupportedEntryPointsErrorType = RequestErrorType | ErrorType;
|
8
|
+
/**
|
9
|
+
* Returns the EntryPoints that the bundler supports.
|
10
|
+
*
|
11
|
+
* - Docs: https://viem.sh/actions/bundler/getSupportedEntryPoints
|
12
|
+
*
|
13
|
+
* @param client - Client to use
|
14
|
+
* @param parameters - {@link GetSupportedEntryPointsParameters}
|
15
|
+
* @returns Supported Entry Points. {@link GetSupportedEntryPointsReturnType}
|
16
|
+
*
|
17
|
+
* @example
|
18
|
+
* import { createBundlerClient, http, parseEther } from 'viem'
|
19
|
+
* import { mainnet } from 'viem/chains'
|
20
|
+
* import { getSupportedEntryPoints } from 'viem/actions'
|
21
|
+
*
|
22
|
+
* const bundlerClient = createBundlerClient({
|
23
|
+
* chain: mainnet,
|
24
|
+
* transport: http(),
|
25
|
+
* })
|
26
|
+
*
|
27
|
+
* const addresses = await getSupportedEntryPoints(bundlerClient)
|
28
|
+
*/
|
29
|
+
export declare function getSupportedEntryPoints(client: Client<Transport>): Promise<readonly `0x${string}`[]>;
|
30
|
+
//# sourceMappingURL=getSupportedEntryPoints.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"getSupportedEntryPoints.d.ts","sourceRoot":"","sources":["../../../../account-abstraction/actions/bundler/getSupportedEntryPoints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,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,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAEtE,MAAM,MAAM,iCAAiC,GAAG,SAAS,OAAO,EAAE,CAAA;AAClE,MAAM,MAAM,gCAAgC,GAAG,gBAAgB,GAAG,SAAS,CAAA;AAE3E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,qCAEhE"}
|
@@ -0,0 +1,57 @@
|
|
1
|
+
import type { Address } from 'abitype';
|
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 { Hash } from '../../../types/misc.js';
|
6
|
+
import type { Prettify } from '../../../types/utils.js';
|
7
|
+
import type { RequestErrorType } from '../../../utils/buildRequest.js';
|
8
|
+
import { type UserOperationNotFoundErrorType } from '../../errors/userOperation.js';
|
9
|
+
import type { UserOperation } from '../../types/userOperation.js';
|
10
|
+
export type GetUserOperationParameters = {
|
11
|
+
/** The hash of the User Operation. */
|
12
|
+
hash: Hash;
|
13
|
+
};
|
14
|
+
export type GetUserOperationReturnType = Prettify<{
|
15
|
+
/** The block hash the User Operation was included on. */
|
16
|
+
blockHash: Hash;
|
17
|
+
/** The block number the User Operation was included on. */
|
18
|
+
blockNumber: bigint;
|
19
|
+
/** The EntryPoint which handled the User Operation. */
|
20
|
+
entryPoint: Address;
|
21
|
+
/** The hash of the transaction which included the User Operation. */
|
22
|
+
transactionHash: Hash;
|
23
|
+
/** The User Operation. */
|
24
|
+
userOperation: UserOperation;
|
25
|
+
}>;
|
26
|
+
export type GetUserOperationErrorType = RequestErrorType | UserOperationNotFoundErrorType | ErrorType;
|
27
|
+
/**
|
28
|
+
* Retrieves information about a User Operation given a hash.
|
29
|
+
*
|
30
|
+
* - Docs: https://viem.sh/docs/actions/bundler/getUserOperation
|
31
|
+
*
|
32
|
+
* @param client - Client to use
|
33
|
+
* @param parameters - {@link GetUserOperationParameters}
|
34
|
+
* @returns The receipt. {@link GetUserOperationReturnType}
|
35
|
+
*
|
36
|
+
* @example
|
37
|
+
* import { createBundlerClient, http } from 'viem'
|
38
|
+
* import { mainnet } from 'viem/chains'
|
39
|
+
* import { getUserOperation } from 'viem/actions
|
40
|
+
*
|
41
|
+
* const client = createBundlerClient({
|
42
|
+
* chain: mainnet,
|
43
|
+
* transport: http(),
|
44
|
+
* })
|
45
|
+
*
|
46
|
+
* const receipt = await getUserOperation(client, {
|
47
|
+
* hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',
|
48
|
+
* })
|
49
|
+
*/
|
50
|
+
export declare function getUserOperation(client: Client<Transport>, { hash }: GetUserOperationParameters): Promise<{
|
51
|
+
blockHash: `0x${string}`;
|
52
|
+
blockNumber: bigint;
|
53
|
+
entryPoint: `0x${string}`;
|
54
|
+
transactionHash: `0x${string}`;
|
55
|
+
userOperation: UserOperation;
|
56
|
+
}>;
|
57
|
+
//# sourceMappingURL=getUserOperation.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"getUserOperation.d.ts","sourceRoot":"","sources":["../../../../account-abstraction/actions/bundler/getUserOperation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,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,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,+BAA+B,CAAA;AACtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAGjE,MAAM,MAAM,0BAA0B,GAAG;IACvC,sCAAsC;IACtC,IAAI,EAAE,IAAI,CAAA;CACX,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG,QAAQ,CAAC;IAChD,yDAAyD;IACzD,SAAS,EAAE,IAAI,CAAA;IACf,2DAA2D;IAC3D,WAAW,EAAE,MAAM,CAAA;IACnB,uDAAuD;IACvD,UAAU,EAAE,OAAO,CAAA;IACnB,qEAAqE;IACrE,eAAe,EAAE,IAAI,CAAA;IACrB,0BAA0B;IAC1B,aAAa,EAAE,aAAa,CAAA;CAC7B,CAAC,CAAA;AAEF,MAAM,MAAM,yBAAyB,GACjC,gBAAgB,GAChB,8BAA8B,GAC9B,SAAS,CAAA;AAEb;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,EACzB,EAAE,IAAI,EAAE,EAAE,0BAA0B;;;;;;GAsBrC"}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
import type { Client } from '../../../clients/createClient.js';
|
2
|
+
import type { Transport } from '../../../clients/transports/createTransport.js';
|
3
|
+
import type { ErrorType } from '../../../errors/utils.js';
|
4
|
+
import type { Hash } from '../../../types/misc.js';
|
5
|
+
import type { Prettify } from '../../../types/utils.js';
|
6
|
+
import type { RequestErrorType } from '../../../utils/buildRequest.js';
|
7
|
+
import { type UserOperationReceiptNotFoundErrorType } from '../../errors/userOperation.js';
|
8
|
+
import type { UserOperationReceipt } from '../../types/userOperation.js';
|
9
|
+
export type GetUserOperationReceiptParameters = {
|
10
|
+
/** The hash of the User Operation. */
|
11
|
+
hash: Hash;
|
12
|
+
};
|
13
|
+
export type GetUserOperationReceiptReturnType = Prettify<UserOperationReceipt>;
|
14
|
+
export type GetUserOperationReceiptErrorType = RequestErrorType | UserOperationReceiptNotFoundErrorType | ErrorType;
|
15
|
+
/**
|
16
|
+
* Returns the User Operation Receipt given a User Operation hash.
|
17
|
+
*
|
18
|
+
* - Docs: https://viem.sh/docs/actions/bundler/getUserOperationReceipt
|
19
|
+
*
|
20
|
+
* @param client - Client to use
|
21
|
+
* @param parameters - {@link GetUserOperationReceiptParameters}
|
22
|
+
* @returns The receipt. {@link GetUserOperationReceiptReturnType}
|
23
|
+
*
|
24
|
+
* @example
|
25
|
+
* import { createBundlerClient, http } from 'viem'
|
26
|
+
* import { mainnet } from 'viem/chains'
|
27
|
+
* import { getUserOperationReceipt } from 'viem/actions
|
28
|
+
*
|
29
|
+
* const client = createBundlerClient({
|
30
|
+
* chain: mainnet,
|
31
|
+
* transport: http(),
|
32
|
+
* })
|
33
|
+
*
|
34
|
+
* const receipt = await getUserOperationReceipt(client, {
|
35
|
+
* hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',
|
36
|
+
* })
|
37
|
+
*/
|
38
|
+
export declare function getUserOperationReceipt(client: Client<Transport>, { hash }: GetUserOperationReceiptParameters): Promise<UserOperationReceipt>;
|
39
|
+
//# sourceMappingURL=getUserOperationReceipt.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"getUserOperationReceipt.d.ts","sourceRoot":"","sources":["../../../../account-abstraction/actions/bundler/getUserOperationReceipt.ts"],"names":[],"mappings":"AAAA,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,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,EAEL,KAAK,qCAAqC,EAC3C,MAAM,+BAA+B,CAAA;AACtC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAGxE,MAAM,MAAM,iCAAiC,GAAG;IAC9C,sCAAsC;IACtC,IAAI,EAAE,IAAI,CAAA;CACX,CAAA;AAED,MAAM,MAAM,iCAAiC,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAAA;AAE9E,MAAM,MAAM,gCAAgC,GACxC,gBAAgB,GAChB,qCAAqC,GACrC,SAAS,CAAA;AAEb;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,EACzB,EAAE,IAAI,EAAE,EAAE,iCAAiC,iCAa5C"}
|
@@ -0,0 +1,106 @@
|
|
1
|
+
import type { Address, Narrow } from 'abitype';
|
2
|
+
import { type ParseAccountErrorType } from '../../../accounts/utils/parseAccount.js';
|
3
|
+
import { type EstimateFeesPerGasErrorType } from '../../../actions/public/estimateFeesPerGas.js';
|
4
|
+
import type { Client } from '../../../clients/createClient.js';
|
5
|
+
import type { Transport } from '../../../clients/transports/createTransport.js';
|
6
|
+
import type { ErrorType } from '../../../errors/utils.js';
|
7
|
+
import type { Chain } from '../../../types/chain.js';
|
8
|
+
import type { Hex } from '../../../types/misc.js';
|
9
|
+
import type { Assign, OneOf, Prettify, UnionOmit } from '../../../types/utils.js';
|
10
|
+
import { type EncodeFunctionDataErrorType } from '../../../utils/abi/encodeFunctionData.js';
|
11
|
+
import { type ConcatErrorType } from '../../../utils/data/concat.js';
|
12
|
+
import type { SmartAccount } from '../../accounts/types.js';
|
13
|
+
import type { PaymasterActions } from '../../clients/decorators/paymaster.js';
|
14
|
+
import type { DeriveSmartAccount, GetSmartAccountParameter } from '../../types/account.js';
|
15
|
+
import type { DeriveEntryPointVersion, EntryPointVersion } from '../../types/entryPointVersion.js';
|
16
|
+
import type { UserOperation, UserOperationCalls, UserOperationRequest } from '../../types/userOperation.js';
|
17
|
+
import { type GetPaymasterDataErrorType } from '../paymaster/getPaymasterData.js';
|
18
|
+
import { type GetPaymasterStubDataErrorType } from '../paymaster/getPaymasterStubData.js';
|
19
|
+
declare const defaultParameters: readonly ["factory", "fees", "gas", "paymaster", "nonce", "signature"];
|
20
|
+
export type PrepareUserOperationParameterType = 'factory' | 'fees' | 'gas' | 'paymaster' | 'nonce' | 'signature';
|
21
|
+
type FactoryProperties<entryPointVersion extends EntryPointVersion = EntryPointVersion> = (entryPointVersion extends '0.7' ? {
|
22
|
+
factory: UserOperation['factory'];
|
23
|
+
factoryData: UserOperation['factoryData'];
|
24
|
+
} : never) | (entryPointVersion extends '0.6' ? {
|
25
|
+
initCode: UserOperation['initCode'];
|
26
|
+
} : never);
|
27
|
+
type GasProperties<entryPointVersion extends EntryPointVersion = EntryPointVersion> = (entryPointVersion extends '0.7' ? {
|
28
|
+
callGasLimit: UserOperation['callGasLimit'];
|
29
|
+
preVerificationGas: UserOperation['preVerificationGas'];
|
30
|
+
verificationGasLimit: UserOperation['verificationGasLimit'];
|
31
|
+
paymasterPostOpGasLimit: UserOperation['paymasterPostOpGasLimit'];
|
32
|
+
paymasterVerificationGasLimit: UserOperation['paymasterVerificationGasLimit'];
|
33
|
+
} : never) | (entryPointVersion extends '0.6' ? {
|
34
|
+
callGasLimit: UserOperation['callGasLimit'];
|
35
|
+
preVerificationGas: UserOperation['preVerificationGas'];
|
36
|
+
verificationGasLimit: UserOperation['verificationGasLimit'];
|
37
|
+
} : never);
|
38
|
+
type FeeProperties = {
|
39
|
+
maxFeePerGas: UserOperation['maxFeePerGas'];
|
40
|
+
maxPriorityFeePerGas: UserOperation['maxPriorityFeePerGas'];
|
41
|
+
};
|
42
|
+
type NonceProperties = {
|
43
|
+
nonce: UserOperation['nonce'];
|
44
|
+
};
|
45
|
+
type PaymasterProperties<entryPointVersion extends EntryPointVersion = EntryPointVersion> = (entryPointVersion extends '0.7' ? {
|
46
|
+
paymaster: UserOperation['paymaster'];
|
47
|
+
paymasterData: UserOperation['paymasterData'];
|
48
|
+
paymasterPostOpGasLimit: UserOperation['paymasterPostOpGasLimit'];
|
49
|
+
paymasterVerificationGasLimit: UserOperation['paymasterVerificationGasLimit'];
|
50
|
+
} : never) | (entryPointVersion extends '0.6' ? {
|
51
|
+
paymasterAndData: UserOperation['paymasterAndData'];
|
52
|
+
} : never);
|
53
|
+
type SignatureProperties = {
|
54
|
+
signature: UserOperation['signature'];
|
55
|
+
};
|
56
|
+
export type PrepareUserOperationRequest<account extends SmartAccount | undefined = SmartAccount | undefined, accountOverride extends SmartAccount | undefined = SmartAccount | undefined, calls extends readonly unknown[] = readonly unknown[], _derivedAccount extends SmartAccount | undefined = DeriveSmartAccount<account, accountOverride>, _derivedVersion extends EntryPointVersion = DeriveEntryPointVersion<_derivedAccount>> = Assign<UserOperationRequest<_derivedVersion>, OneOf<{
|
57
|
+
calls: UserOperationCalls<Narrow<calls>>;
|
58
|
+
} | {
|
59
|
+
callData: Hex;
|
60
|
+
}> & {
|
61
|
+
parameters?: readonly PrepareUserOperationParameterType[] | undefined;
|
62
|
+
paymaster?: Address | true | {
|
63
|
+
/** Retrieves paymaster-related User Operation properties to be used for sending the User Operation. */
|
64
|
+
getPaymasterData?: PaymasterActions['getPaymasterData'] | undefined;
|
65
|
+
/** Retrieves paymaster-related User Operation properties to be used for gas estimation. */
|
66
|
+
getPaymasterStubData?: PaymasterActions['getPaymasterStubData'] | undefined;
|
67
|
+
} | undefined;
|
68
|
+
/** Paymaster context to pass to `getPaymasterData` and `getPaymasterStubData` calls. */
|
69
|
+
paymasterContext?: unknown | undefined;
|
70
|
+
}>;
|
71
|
+
export type PrepareUserOperationParameters<account extends SmartAccount | undefined = SmartAccount | undefined, accountOverride extends SmartAccount | undefined = SmartAccount | undefined, calls extends readonly unknown[] = readonly unknown[], request extends PrepareUserOperationRequest<account, accountOverride, calls> = PrepareUserOperationRequest<account, accountOverride, calls>> = request & GetSmartAccountParameter<account, accountOverride>;
|
72
|
+
export type PrepareUserOperationReturnType<account extends SmartAccount | undefined = SmartAccount | undefined, accountOverride extends SmartAccount | undefined = SmartAccount | undefined, calls extends readonly unknown[] = readonly unknown[], request extends PrepareUserOperationRequest<account, accountOverride, calls> = PrepareUserOperationRequest<account, accountOverride, calls>, _parameters extends PrepareUserOperationParameterType = request['parameters'] extends readonly PrepareUserOperationParameterType[] ? request['parameters'][number] : (typeof defaultParameters)[number], _derivedAccount extends SmartAccount | undefined = DeriveSmartAccount<account, accountOverride>, _derivedVersion extends EntryPointVersion = DeriveEntryPointVersion<_derivedAccount>> = Prettify<UnionOmit<request, 'calls' | 'parameters'> & {
|
73
|
+
callData: Hex;
|
74
|
+
paymasterAndData: _derivedVersion extends '0.6' ? Hex : undefined;
|
75
|
+
sender: UserOperation['sender'];
|
76
|
+
} & (Extract<_parameters, 'factory'> extends never ? {} : FactoryProperties<_derivedVersion>) & (Extract<_parameters, 'nonce'> extends never ? {} : NonceProperties) & (Extract<_parameters, 'fees'> extends never ? {} : FeeProperties) & (Extract<_parameters, 'gas'> extends never ? {} : GasProperties<_derivedVersion>) & (Extract<_parameters, 'paymaster'> extends never ? {} : PaymasterProperties<_derivedVersion>) & (Extract<_parameters, 'signature'> extends never ? {} : SignatureProperties)>;
|
77
|
+
export type PrepareUserOperationErrorType = ParseAccountErrorType | GetPaymasterStubDataErrorType | GetPaymasterDataErrorType | EncodeFunctionDataErrorType | ConcatErrorType | EstimateFeesPerGasErrorType | ErrorType;
|
78
|
+
/**
|
79
|
+
* Prepares a User Operation and fills in missing properties.
|
80
|
+
*
|
81
|
+
* - Docs: https://viem.sh/actions/bundler/prepareUserOperation
|
82
|
+
*
|
83
|
+
* @param args - {@link PrepareUserOperationParameters}
|
84
|
+
* @returns The User Operation. {@link PrepareUserOperationReturnType}
|
85
|
+
*
|
86
|
+
* @example
|
87
|
+
* import { createBundlerClient, http } from 'viem'
|
88
|
+
* import { toSmartAccount } from 'viem/accounts'
|
89
|
+
* import { mainnet } from 'viem/chains'
|
90
|
+
* import { prepareUserOperation } from 'viem/actions'
|
91
|
+
*
|
92
|
+
* const account = await toSmartAccount({ ... })
|
93
|
+
*
|
94
|
+
* const client = createBundlerClient({
|
95
|
+
* chain: mainnet,
|
96
|
+
* transport: http(),
|
97
|
+
* })
|
98
|
+
*
|
99
|
+
* const request = await prepareUserOperation(client, {
|
100
|
+
* account,
|
101
|
+
* calls: [{ to: '0x...', value: parseEther('1') }],
|
102
|
+
* })
|
103
|
+
*/
|
104
|
+
export declare function prepareUserOperation<account extends SmartAccount | undefined, const calls extends readonly unknown[], const request extends PrepareUserOperationRequest<account, accountOverride, calls>, accountOverride extends SmartAccount | undefined = undefined>(client: Client<Transport, Chain | undefined, account>, parameters_: PrepareUserOperationParameters<account, accountOverride, calls, request>): Promise<PrepareUserOperationReturnType<account, accountOverride, calls, request>>;
|
105
|
+
export {};
|
106
|
+
//# sourceMappingURL=prepareUserOperation.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"prepareUserOperation.d.ts","sourceRoot":"","sources":["../../../../account-abstraction/actions/bundler/prepareUserOperation.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,60 @@
|
|
1
|
+
import type { Address, Narrow } from 'abitype';
|
2
|
+
import type { Client } from '../../../clients/createClient.js';
|
3
|
+
import type { Transport } from '../../../clients/transports/createTransport.js';
|
4
|
+
import type { ErrorType } from '../../../errors/utils.js';
|
5
|
+
import type { Chain } from '../../../types/chain.js';
|
6
|
+
import type { Hex } from '../../../types/misc.js';
|
7
|
+
import type { Assign, OneOf } from '../../../types/utils.js';
|
8
|
+
import type { RequestErrorType } from '../../../utils/buildRequest.js';
|
9
|
+
import type { SmartAccount } from '../../accounts/types.js';
|
10
|
+
import type { PaymasterActions } from '../../clients/decorators/paymaster.js';
|
11
|
+
import type { DeriveSmartAccount, GetSmartAccountParameter } from '../../types/account.js';
|
12
|
+
import type { DeriveEntryPointVersion, EntryPointVersion } from '../../types/entryPointVersion.js';
|
13
|
+
import type { UserOperationCalls, UserOperationRequest } from '../../types/userOperation.js';
|
14
|
+
import { type FormatUserOperationRequestErrorType } from '../../utils/formatters/userOperationRequest.js';
|
15
|
+
import { type PrepareUserOperationErrorType } from './prepareUserOperation.js';
|
16
|
+
export type SendUserOperationParameters<account extends SmartAccount | undefined = SmartAccount | undefined, accountOverride extends SmartAccount | undefined = SmartAccount | undefined, calls extends readonly unknown[] = readonly unknown[], _derivedAccount extends SmartAccount | undefined = DeriveSmartAccount<account, accountOverride>, _derivedVersion extends EntryPointVersion = DeriveEntryPointVersion<_derivedAccount>> = Assign<UserOperationRequest<_derivedVersion>, OneOf<{
|
17
|
+
calls: UserOperationCalls<Narrow<calls>>;
|
18
|
+
} | {
|
19
|
+
callData: Hex;
|
20
|
+
}> & {
|
21
|
+
paymaster?: Address | true | {
|
22
|
+
/** Retrieves paymaster-related User Operation properties to be used for sending the User Operation. */
|
23
|
+
getPaymasterData?: PaymasterActions['getPaymasterData'] | undefined;
|
24
|
+
/** Retrieves paymaster-related User Operation properties to be used for gas estimation. */
|
25
|
+
getPaymasterStubData?: PaymasterActions['getPaymasterStubData'] | undefined;
|
26
|
+
} | undefined;
|
27
|
+
/** Paymaster context to pass to `getPaymasterData` and `getPaymasterStubData` calls. */
|
28
|
+
paymasterContext?: unknown;
|
29
|
+
}> & GetSmartAccountParameter<account, accountOverride>;
|
30
|
+
export type SendUserOperationReturnType = Hex;
|
31
|
+
export type SendUserOperationErrorType = FormatUserOperationRequestErrorType | PrepareUserOperationErrorType | RequestErrorType | ErrorType;
|
32
|
+
/**
|
33
|
+
* Broadcasts a User Operation to the Bundler.
|
34
|
+
*
|
35
|
+
* - Docs: https://viem.sh/actions/bundler/sendUserOperation
|
36
|
+
*
|
37
|
+
* @param client - Client to use
|
38
|
+
* @param parameters - {@link SendUserOperationParameters}
|
39
|
+
* @returns The User Operation hash. {@link SendUserOperationReturnType}
|
40
|
+
*
|
41
|
+
* @example
|
42
|
+
* import { createBundlerClient, http, parseEther } from 'viem'
|
43
|
+
* import { mainnet } from 'viem/chains'
|
44
|
+
* import { toSmartAccount } from 'viem/accounts'
|
45
|
+
* import { sendUserOperation } from 'viem/actions'
|
46
|
+
*
|
47
|
+
* const account = await toSmartAccount({ ... })
|
48
|
+
*
|
49
|
+
* const bundlerClient = createBundlerClient({
|
50
|
+
* chain: mainnet,
|
51
|
+
* transport: http(),
|
52
|
+
* })
|
53
|
+
*
|
54
|
+
* const values = await sendUserOperation(bundlerClient, {
|
55
|
+
* account,
|
56
|
+
* calls: [{ to: '0x...', value: parseEther('1') }],
|
57
|
+
* })
|
58
|
+
*/
|
59
|
+
export declare function sendUserOperation<const calls extends readonly unknown[], account extends SmartAccount | undefined, accountOverride extends SmartAccount | undefined = undefined>(client: Client<Transport, Chain | undefined, account>, parameters: SendUserOperationParameters<account, accountOverride, calls>): Promise<`0x${string}`>;
|
60
|
+
//# sourceMappingURL=sendUserOperation.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"sendUserOperation.d.ts","sourceRoot":"","sources":["../../../../account-abstraction/actions/bundler/sendUserOperation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAG/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAEtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAA;AAC7E,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EACV,uBAAuB,EACvB,iBAAiB,EAClB,MAAM,kCAAkC,CAAA;AACzC,OAAO,KAAK,EAEV,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,8BAA8B,CAAA;AAErC,OAAO,EACL,KAAK,mCAAmC,EAEzC,MAAM,gDAAgD,CAAA;AACvD,OAAO,EACL,KAAK,6BAA6B,EAGnC,MAAM,2BAA2B,CAAA;AAElC,MAAM,MAAM,2BAA2B,CACrC,OAAO,SAAS,YAAY,GAAG,SAAS,GAAG,YAAY,GAAG,SAAS,EACnE,eAAe,SAAS,YAAY,GAAG,SAAS,GAAG,YAAY,GAAG,SAAS,EAC3E,KAAK,SAAS,SAAS,OAAO,EAAE,GAAG,SAAS,OAAO,EAAE,EAErD,eAAe,SAAS,YAAY,GAAG,SAAS,GAAG,kBAAkB,CACnE,OAAO,EACP,eAAe,CAChB,EACD,eAAe,SACb,iBAAiB,GAAG,uBAAuB,CAAC,eAAe,CAAC,IAC5D,MAAM,CACR,oBAAoB,CAAC,eAAe,CAAC,EACrC,KAAK,CAAC;IAAE,KAAK,EAAE,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,GAAG,CAAA;CAAE,CAAC,GAAG;IACxE,SAAS,CAAC,EACN,OAAO,GACP,IAAI,GACJ;QACE,uGAAuG;QACvG,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,GAAG,SAAS,CAAA;QACnE,2FAA2F;QAC3F,oBAAoB,CAAC,EACjB,gBAAgB,CAAC,sBAAsB,CAAC,GACxC,SAAS,CAAA;KACd,GACD,SAAS,CAAA;IACb,wFAAwF;IACxF,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CACF,GACC,wBAAwB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAA;AAEpD,MAAM,MAAM,2BAA2B,GAAG,GAAG,CAAA;AAE7C,MAAM,MAAM,0BAA0B,GAClC,mCAAmC,GACnC,6BAA6B,GAC7B,gBAAgB,GAChB,SAAS,CAAA;AAEb;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,CAAC,KAAK,SAAS,SAAS,OAAO,EAAE,EACtC,OAAO,SAAS,YAAY,GAAG,SAAS,EACxC,eAAe,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EAE5D,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,GAAG,SAAS,EAAE,OAAO,CAAC,EACrD,UAAU,EAAE,2BAA2B,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,CAAC,0BAqCzE"}
|
@@ -0,0 +1,52 @@
|
|
1
|
+
import type { Client } from '../../../clients/createClient.js';
|
2
|
+
import type { Transport } from '../../../clients/transports/createTransport.js';
|
3
|
+
import type { ErrorType } from '../../../errors/utils.js';
|
4
|
+
import type { Hash } from '../../../types/misc.js';
|
5
|
+
import type { Prettify } from '../../../types/utils.js';
|
6
|
+
import { type ObserveErrorType } from '../../../utils/observe.js';
|
7
|
+
import { type PollErrorType } from '../../../utils/poll.js';
|
8
|
+
import { type WaitForUserOperationReceiptTimeoutErrorType } from '../../errors/userOperation.js';
|
9
|
+
import type { UserOperationReceipt } from '../../types/userOperation.js';
|
10
|
+
export type WaitForUserOperationReceiptParameters = {
|
11
|
+
/** The hash of the User Operation. */
|
12
|
+
hash: Hash;
|
13
|
+
/**
|
14
|
+
* Polling frequency (in ms). Defaults to the client's pollingInterval config.
|
15
|
+
* @default client.pollingInterval
|
16
|
+
*/
|
17
|
+
pollingInterval?: number | undefined;
|
18
|
+
/**
|
19
|
+
* The number of times to retry.
|
20
|
+
* @default 6
|
21
|
+
*/
|
22
|
+
retryCount?: number | undefined;
|
23
|
+
/** Optional timeout (in ms) to wait before stopping polling. */
|
24
|
+
timeout?: number | undefined;
|
25
|
+
};
|
26
|
+
export type WaitForUserOperationReceiptReturnType = Prettify<UserOperationReceipt>;
|
27
|
+
export type WaitForUserOperationReceiptErrorType = WaitForUserOperationReceiptTimeoutErrorType | PollErrorType | ObserveErrorType | ErrorType;
|
28
|
+
/**
|
29
|
+
* Waits for the User Operation to be included on a [Block](https://viem.sh/docs/glossary/terms#block) (one confirmation), and then returns the User Operation receipt.
|
30
|
+
*
|
31
|
+
* - Docs: https://viem.sh/docs/actions/bundler/waitForUserOperationReceipt
|
32
|
+
*
|
33
|
+
* @param client - Client to use
|
34
|
+
* @param parameters - {@link WaitForUserOperationReceiptParameters}
|
35
|
+
* @returns The receipt. {@link WaitForUserOperationReceiptReturnType}
|
36
|
+
*
|
37
|
+
* @example
|
38
|
+
* import { createBundlerClient, http } from 'viem'
|
39
|
+
* import { mainnet } from 'viem/chains'
|
40
|
+
* import { waitForUserOperationReceipt } from 'viem/actions'
|
41
|
+
*
|
42
|
+
* const client = createBundlerClient({
|
43
|
+
* chain: mainnet,
|
44
|
+
* transport: http(),
|
45
|
+
* })
|
46
|
+
*
|
47
|
+
* const receipt = await waitForUserOperationReceipt(client, {
|
48
|
+
* hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',
|
49
|
+
* })
|
50
|
+
*/
|
51
|
+
export declare function waitForUserOperationReceipt(client: Client<Transport>, parameters: WaitForUserOperationReceiptParameters): Promise<WaitForUserOperationReceiptReturnType>;
|
52
|
+
//# sourceMappingURL=waitForUserOperationReceipt.d.ts.map
|