@zerodev/sdk 4.6.0 → 5.0.0-beta.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/_cjs/accounts/addressToEmptyAccount.js +25 -0
- package/_cjs/accounts/addressToEmptyAccount.js.map +1 -0
- package/_cjs/accounts/index.js +12 -0
- package/_cjs/accounts/index.js.map +1 -0
- package/{dist/cjs/kernel-zerodev/abis → _cjs/accounts/kernel/abi}/KernelAccountAbi.js +256 -158
- package/_cjs/accounts/kernel/abi/KernelAccountAbi.js.map +1 -0
- package/{dist/cjs/kernel-zerodev/abis → _cjs/accounts/kernel/abi}/KernelFactoryAbi.js +87 -87
- package/_cjs/accounts/kernel/abi/KernelFactoryAbi.js.map +1 -0
- package/{dist/cjs/kernel-zerodev/abis → _cjs/accounts/kernel/abi}/TokenActionsAbi.js +18 -18
- package/_cjs/accounts/kernel/abi/TokenActionsAbi.js.map +1 -0
- package/_cjs/accounts/kernel/createKernelAccount.js +299 -0
- package/_cjs/accounts/kernel/createKernelAccount.js.map +1 -0
- package/_cjs/accounts/utils/index.js +6 -0
- package/_cjs/accounts/utils/index.js.map +1 -0
- package/_cjs/accounts/utils/toKernelPluginManager.js +124 -0
- package/_cjs/accounts/utils/toKernelPluginManager.js.map +1 -0
- package/_cjs/actions/account-client/signUserOperation.js +16 -0
- package/_cjs/actions/account-client/signUserOperation.js.map +1 -0
- package/_cjs/actions/index.js +8 -0
- package/_cjs/actions/index.js.map +1 -0
- package/_cjs/actions/paymaster/sponsorUserOperation.js +42 -0
- package/_cjs/actions/paymaster/sponsorUserOperation.js.map +1 -0
- package/_cjs/clients/decorators/index.js +6 -0
- package/_cjs/clients/decorators/index.js.map +1 -0
- package/_cjs/clients/decorators/kernel.js +19 -0
- package/_cjs/clients/decorators/kernel.js.map +1 -0
- package/_cjs/clients/index.js +8 -0
- package/_cjs/clients/index.js.map +1 -0
- package/_cjs/clients/kernelAccountClient.js +20 -0
- package/_cjs/clients/kernelAccountClient.js.map +1 -0
- package/_cjs/clients/paymasterClient.js +17 -0
- package/_cjs/clients/paymasterClient.js.map +1 -0
- package/_cjs/constants.js +12 -0
- package/_cjs/constants.js.map +1 -0
- package/_cjs/index.js +27 -0
- package/_cjs/index.js.map +1 -0
- package/_cjs/package.json +1 -0
- package/_cjs/types/index.js +6 -0
- package/_cjs/types/index.js.map +1 -0
- package/_cjs/types/kernel.js +10 -0
- package/_cjs/types/kernel.js.map +1 -0
- package/_cjs/utils.js +30 -0
- package/_cjs/utils.js.map +1 -0
- package/_esm/accounts/addressToEmptyAccount.js +21 -0
- package/_esm/accounts/addressToEmptyAccount.js.map +1 -0
- package/_esm/accounts/index.js +4 -0
- package/_esm/accounts/index.js.map +1 -0
- package/_esm/accounts/kernel/abi/KernelAccountAbi.js +796 -0
- package/_esm/accounts/kernel/abi/KernelAccountAbi.js.map +1 -0
- package/{dist/esm/kernel-zerodev/abis → _esm/accounts/kernel/abi}/KernelFactoryAbi.js +87 -87
- package/_esm/accounts/kernel/abi/KernelFactoryAbi.js.map +1 -0
- package/{dist/esm/kernel-zerodev/abis → _esm/accounts/kernel/abi}/TokenActionsAbi.js +18 -18
- package/_esm/accounts/kernel/abi/TokenActionsAbi.js.map +1 -0
- package/_esm/accounts/kernel/createKernelAccount.js +344 -0
- package/_esm/accounts/kernel/createKernelAccount.js.map +1 -0
- package/_esm/accounts/utils/index.js +3 -0
- package/_esm/accounts/utils/index.js.map +1 -0
- package/_esm/accounts/utils/toKernelPluginManager.js +124 -0
- package/_esm/accounts/utils/toKernelPluginManager.js.map +1 -0
- package/_esm/actions/account-client/signUserOperation.js +12 -0
- package/_esm/actions/account-client/signUserOperation.js.map +1 -0
- package/_esm/actions/index.js +3 -0
- package/_esm/actions/index.js.map +1 -0
- package/_esm/actions/paymaster/sponsorUserOperation.js +41 -0
- package/_esm/actions/paymaster/sponsorUserOperation.js.map +1 -0
- package/_esm/clients/decorators/index.js +2 -0
- package/_esm/clients/decorators/index.js.map +1 -0
- package/_esm/clients/decorators/kernel.js +14 -0
- package/_esm/clients/decorators/kernel.js.map +1 -0
- package/_esm/clients/index.js +3 -0
- package/_esm/clients/index.js.map +1 -0
- package/_esm/clients/kernelAccountClient.js +17 -0
- package/_esm/clients/kernelAccountClient.js.map +1 -0
- package/_esm/clients/paymasterClient.js +30 -0
- package/_esm/clients/paymasterClient.js.map +1 -0
- package/_esm/constants.js +10 -0
- package/_esm/constants.js.map +1 -0
- package/_esm/index.js +13 -0
- package/_esm/index.js.map +1 -0
- package/_esm/package.json +1 -0
- package/_esm/types/index.js +2 -0
- package/_esm/types/index.js.map +1 -0
- package/_esm/types/kernel.js +8 -0
- package/_esm/types/kernel.js.map +1 -0
- package/_esm/utils.js +25 -0
- package/_esm/utils.js.map +1 -0
- package/_types/accounts/addressToEmptyAccount.d.ts +4 -0
- package/_types/accounts/addressToEmptyAccount.d.ts.map +1 -0
- package/_types/accounts/index.d.ts +4 -0
- package/_types/accounts/index.d.ts.map +1 -0
- package/{dist/cjs/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelAccountAbi.d.ts +82 -0
- package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelAccountAbi.d.ts.map +1 -1
- package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelFactoryAbi.d.ts.map +1 -1
- package/_types/accounts/kernel/abi/TokenActionsAbi.d.ts.map +1 -0
- package/_types/accounts/kernel/createKernelAccount.d.ts +89 -0
- package/_types/accounts/kernel/createKernelAccount.d.ts.map +1 -0
- package/_types/accounts/utils/index.d.ts +3 -0
- package/_types/accounts/utils/index.d.ts.map +1 -0
- package/_types/accounts/utils/toKernelPluginManager.d.ts +5 -0
- package/_types/accounts/utils/toKernelPluginManager.d.ts.map +1 -0
- package/_types/actions/account-client/signUserOperation.d.ts +10 -0
- package/_types/actions/account-client/signUserOperation.d.ts.map +1 -0
- package/_types/actions/index.d.ts +3 -0
- package/_types/actions/index.d.ts.map +1 -0
- package/_types/actions/paymaster/sponsorUserOperation.d.ts +21 -0
- package/_types/actions/paymaster/sponsorUserOperation.d.ts.map +1 -0
- package/_types/clients/decorators/index.d.ts +2 -0
- package/_types/clients/decorators/index.d.ts.map +1 -0
- package/_types/clients/decorators/kernel.d.ts +25 -0
- package/_types/clients/decorators/kernel.d.ts.map +1 -0
- package/_types/clients/index.d.ts +3 -0
- package/_types/clients/index.d.ts.map +1 -0
- package/_types/clients/kernelAccountClient.d.ts +280 -0
- package/_types/clients/kernelAccountClient.d.ts.map +1 -0
- package/_types/clients/paymasterClient.d.ts +36 -0
- package/_types/clients/paymasterClient.d.ts.map +1 -0
- package/_types/constants.d.ts +8 -0
- package/_types/constants.d.ts.map +1 -0
- package/_types/index.d.ts +12 -0
- package/_types/index.d.ts.map +1 -0
- package/_types/types/index.d.ts +3 -0
- package/_types/types/index.d.ts.map +1 -0
- package/_types/types/kernel.d.ts +81 -0
- package/_types/types/kernel.d.ts.map +1 -0
- package/_types/utils.d.ts +12 -0
- package/_types/utils.d.ts.map +1 -0
- package/accounts/addressToEmptyAccount.ts +24 -0
- package/accounts/index.ts +8 -0
- package/{dist/esm/kernel-zerodev/abis/KernelAccountAbi.js → accounts/kernel/abi/KernelAccountAbi.ts} +264 -159
- package/accounts/kernel/abi/KernelFactoryAbi.ts +380 -0
- package/accounts/kernel/abi/TokenActionsAbi.ts +81 -0
- package/accounts/kernel/createKernelAccount.ts +465 -0
- package/accounts/utils/index.ts +2 -0
- package/accounts/utils/toKernelPluginManager.ts +173 -0
- package/actions/account-client/signUserOperation.ts +59 -0
- package/actions/index.ts +11 -0
- package/actions/paymaster/sponsorUserOperation.ts +85 -0
- package/clients/decorators/index.ts +4 -0
- package/clients/decorators/kernel.ts +78 -0
- package/clients/index.ts +9 -0
- package/clients/kernelAccountClient.ts +78 -0
- package/clients/paymasterClient.ts +53 -0
- package/constants.ts +12 -0
- package/index.ts +36 -0
- package/package.json +76 -60
- package/types/index.ts +12 -0
- package/types/kernel.ts +116 -0
- package/utils.ts +41 -0
- package/README.md +0 -5
- package/dist/cjs/index.d.ts +0 -22
- package/dist/cjs/index.js +0 -61
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +0 -162
- package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js +0 -215
- package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js.map +0 -1
- package/dist/cjs/kernel-zerodev/abis/ERC20Abi.d.ts +0 -231
- package/dist/cjs/kernel-zerodev/abis/ERC20Abi.js +0 -157
- package/dist/cjs/kernel-zerodev/abis/ERC20Abi.js.map +0 -1
- package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +0 -158
- package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.js +0 -210
- package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.js.map +0 -1
- package/dist/cjs/kernel-zerodev/abis/KernelAccountAbi.js.map +0 -1
- package/dist/cjs/kernel-zerodev/abis/KernelFactoryAbi.d.ts +0 -293
- package/dist/cjs/kernel-zerodev/abis/KernelFactoryAbi.js.map +0 -1
- package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +0 -150
- package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.js +0 -200
- package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.js.map +0 -1
- package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.d.ts +0 -15
- package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.js +0 -24
- package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.js.map +0 -1
- package/dist/cjs/kernel-zerodev/abis/RecoveryActionAbi.d.ts +0 -15
- package/dist/cjs/kernel-zerodev/abis/RecoveryActionAbi.js +0 -24
- package/dist/cjs/kernel-zerodev/abis/RecoveryActionAbi.js.map +0 -1
- package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +0 -212
- package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.js +0 -281
- package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.js.map +0 -1
- package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.d.ts +0 -237
- package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.js +0 -161
- package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.js.map +0 -1
- package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.d.ts +0 -287
- package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.js +0 -377
- package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.js.map +0 -1
- package/dist/cjs/kernel-zerodev/abis/TokenActionsAbi.d.ts +0 -63
- package/dist/cjs/kernel-zerodev/abis/TokenActionsAbi.js.map +0 -1
- package/dist/cjs/kernel-zerodev/abis/WeightedValidatorAbi.d.ts +0 -340
- package/dist/cjs/kernel-zerodev/abis/WeightedValidatorAbi.js +0 -446
- package/dist/cjs/kernel-zerodev/abis/WeightedValidatorAbi.js.map +0 -1
- package/dist/cjs/kernel-zerodev/abis/index.d.ts +0 -8
- package/dist/cjs/kernel-zerodev/abis/index.js +0 -18
- package/dist/cjs/kernel-zerodev/abis/index.js.map +0 -1
- package/dist/cjs/kernel-zerodev/account.d.ts +0 -51
- package/dist/cjs/kernel-zerodev/account.js +0 -321
- package/dist/cjs/kernel-zerodev/account.js.map +0 -1
- package/dist/cjs/kernel-zerodev/api/index.d.ts +0 -5
- package/dist/cjs/kernel-zerodev/api/index.js +0 -68
- package/dist/cjs/kernel-zerodev/api/index.js.map +0 -1
- package/dist/cjs/kernel-zerodev/client/create-client.d.ts +0 -12
- package/dist/cjs/kernel-zerodev/client/create-client.js +0 -54
- package/dist/cjs/kernel-zerodev/client/create-client.js.map +0 -1
- package/dist/cjs/kernel-zerodev/constants.d.ts +0 -31
- package/dist/cjs/kernel-zerodev/constants.js +0 -78
- package/dist/cjs/kernel-zerodev/constants.js.map +0 -1
- package/dist/cjs/kernel-zerodev/errors.d.ts +0 -5
- package/dist/cjs/kernel-zerodev/errors.js +0 -12
- package/dist/cjs/kernel-zerodev/errors.js.map +0 -1
- package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.d.ts +0 -31
- package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.js +0 -147
- package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.js.map +0 -1
- package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.d.ts +0 -22
- package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.js +0 -116
- package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.js.map +0 -1
- package/dist/cjs/kernel-zerodev/middleware/gas-estimator.d.ts +0 -19
- package/dist/cjs/kernel-zerodev/middleware/gas-estimator.js +0 -153
- package/dist/cjs/kernel-zerodev/middleware/gas-estimator.js.map +0 -1
- package/dist/cjs/kernel-zerodev/middleware/paymaster.d.ts +0 -5
- package/dist/cjs/kernel-zerodev/middleware/paymaster.js +0 -63
- package/dist/cjs/kernel-zerodev/middleware/paymaster.js.map +0 -1
- package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.d.ts +0 -11
- package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.js +0 -80
- package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.js.map +0 -1
- package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.d.ts +0 -2
- package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.js +0 -18
- package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.js.map +0 -1
- package/dist/cjs/kernel-zerodev/owner/index.d.ts +0 -2
- package/dist/cjs/kernel-zerodev/owner/index.js +0 -8
- package/dist/cjs/kernel-zerodev/owner/index.js.map +0 -1
- package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +0 -8
- package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.js +0 -74
- package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.js.map +0 -1
- package/dist/cjs/kernel-zerodev/owner/passkey/exceptions.d.ts +0 -3
- package/dist/cjs/kernel-zerodev/owner/passkey/exceptions.js +0 -16
- package/dist/cjs/kernel-zerodev/owner/passkey/exceptions.js.map +0 -1
- package/dist/cjs/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts +0 -6
- package/dist/cjs/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js +0 -48
- package/dist/cjs/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js.map +0 -1
- package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +0 -7
- package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.js +0 -44
- package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.js.map +0 -1
- package/dist/cjs/kernel-zerodev/owner/passkey/index.d.ts +0 -4
- package/dist/cjs/kernel-zerodev/owner/passkey/index.js +0 -12
- package/dist/cjs/kernel-zerodev/owner/passkey/index.js.map +0 -1
- package/dist/cjs/kernel-zerodev/owner/passkey/types.d.ts +0 -12
- package/dist/cjs/kernel-zerodev/owner/passkey/types.js +0 -3
- package/dist/cjs/kernel-zerodev/owner/passkey/types.js.map +0 -1
- package/dist/cjs/kernel-zerodev/owner/passkey/utils.d.ts +0 -14
- package/dist/cjs/kernel-zerodev/owner/passkey/utils.js +0 -114
- package/dist/cjs/kernel-zerodev/owner/passkey/utils.js.map +0 -1
- package/dist/cjs/kernel-zerodev/paymaster/base.d.ts +0 -18
- package/dist/cjs/kernel-zerodev/paymaster/base.js +0 -63
- package/dist/cjs/kernel-zerodev/paymaster/base.js.map +0 -1
- package/dist/cjs/kernel-zerodev/paymaster/index.d.ts +0 -3
- package/dist/cjs/kernel-zerodev/paymaster/index.js +0 -10
- package/dist/cjs/kernel-zerodev/paymaster/index.js.map +0 -1
- package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.d.ts +0 -15
- package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.js +0 -188
- package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.js.map +0 -1
- package/dist/cjs/kernel-zerodev/paymaster/types.d.ts +0 -29
- package/dist/cjs/kernel-zerodev/paymaster/types.js +0 -3
- package/dist/cjs/kernel-zerodev/paymaster/types.js.map +0 -1
- package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.d.ts +0 -8
- package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.js +0 -22
- package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.js.map +0 -1
- package/dist/cjs/kernel-zerodev/provider.d.ts +0 -57
- package/dist/cjs/kernel-zerodev/provider.js +0 -387
- package/dist/cjs/kernel-zerodev/provider.js.map +0 -1
- package/dist/cjs/kernel-zerodev/signer/empty-account.d.ts +0 -10
- package/dist/cjs/kernel-zerodev/signer/empty-account.js +0 -43
- package/dist/cjs/kernel-zerodev/signer/empty-account.js.map +0 -1
- package/dist/cjs/kernel-zerodev/types.d.ts +0 -7
- package/dist/cjs/kernel-zerodev/types.js +0 -3
- package/dist/cjs/kernel-zerodev/types.js.map +0 -1
- package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.d.ts +0 -5
- package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.js +0 -106
- package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.js.map +0 -1
- package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +0 -15
- package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.js +0 -33
- package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.js.map +0 -1
- package/dist/cjs/kernel-zerodev/utils/custom-chains.d.ts +0 -58
- package/dist/cjs/kernel-zerodev/utils/custom-chains.js +0 -57
- package/dist/cjs/kernel-zerodev/utils/custom-chains.js.map +0 -1
- package/dist/cjs/kernel-zerodev/utils.d.ts +0 -20
- package/dist/cjs/kernel-zerodev/utils.js +0 -119
- package/dist/cjs/kernel-zerodev/utils.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator/base.d.ts +0 -57
- package/dist/cjs/kernel-zerodev/validator/base.js +0 -285
- package/dist/cjs/kernel-zerodev/validator/base.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.d.ts +0 -20
- package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.js +0 -97
- package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.d.ts +0 -29
- package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.js +0 -118
- package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator/index.d.ts +0 -8
- package/dist/cjs/kernel-zerodev/validator/index.js +0 -21
- package/dist/cjs/kernel-zerodev/validator/index.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.d.ts +0 -22
- package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.js +0 -122
- package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator/recovery-validator.d.ts +0 -56
- package/dist/cjs/kernel-zerodev/validator/recovery-validator.js +0 -349
- package/dist/cjs/kernel-zerodev/validator/recovery-validator.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator/session-key-validator.d.ts +0 -84
- package/dist/cjs/kernel-zerodev/validator/session-key-validator.js +0 -501
- package/dist/cjs/kernel-zerodev/validator/session-key-validator.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator/types.d.ts +0 -56
- package/dist/cjs/kernel-zerodev/validator/types.js +0 -3
- package/dist/cjs/kernel-zerodev/validator/types.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator-provider/base.d.ts +0 -29
- package/dist/cjs/kernel-zerodev/validator-provider/base.js +0 -129
- package/dist/cjs/kernel-zerodev/validator-provider/base.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +0 -8
- package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.js +0 -60
- package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +0 -8
- package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.js +0 -64
- package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator-provider/index.d.ts +0 -8
- package/dist/cjs/kernel-zerodev/validator-provider/index.js +0 -21
- package/dist/cjs/kernel-zerodev/validator-provider/index.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +0 -8
- package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.js +0 -64
- package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator-provider/recovery-provider.d.ts +0 -27
- package/dist/cjs/kernel-zerodev/validator-provider/recovery-provider.js +0 -278
- package/dist/cjs/kernel-zerodev/validator-provider/recovery-provider.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.d.ts +0 -18
- package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.js +0 -114
- package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.js.map +0 -1
- package/dist/cjs/kernel-zerodev/validator-provider/types.d.ts +0 -29
- package/dist/cjs/kernel-zerodev/validator-provider/types.js +0 -3
- package/dist/cjs/kernel-zerodev/validator-provider/types.js.map +0 -1
- package/dist/cjs/package.json +0 -1
- package/dist/esm/index.d.ts +0 -22
- package/dist/esm/index.js +0 -17
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +0 -162
- package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js +0 -212
- package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js.map +0 -1
- package/dist/esm/kernel-zerodev/abis/ERC20Abi.d.ts +0 -231
- package/dist/esm/kernel-zerodev/abis/ERC20Abi.js +0 -154
- package/dist/esm/kernel-zerodev/abis/ERC20Abi.js.map +0 -1
- package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +0 -158
- package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.js +0 -207
- package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.js.map +0 -1
- package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.d.ts +0 -534
- package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.js.map +0 -1
- package/dist/esm/kernel-zerodev/abis/KernelFactoryAbi.d.ts +0 -293
- package/dist/esm/kernel-zerodev/abis/KernelFactoryAbi.js.map +0 -1
- package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +0 -150
- package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.js +0 -197
- package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.js.map +0 -1
- package/dist/esm/kernel-zerodev/abis/MultiSendAbi.d.ts +0 -15
- package/dist/esm/kernel-zerodev/abis/MultiSendAbi.js +0 -21
- package/dist/esm/kernel-zerodev/abis/MultiSendAbi.js.map +0 -1
- package/dist/esm/kernel-zerodev/abis/RecoveryActionAbi.d.ts +0 -15
- package/dist/esm/kernel-zerodev/abis/RecoveryActionAbi.js +0 -21
- package/dist/esm/kernel-zerodev/abis/RecoveryActionAbi.js.map +0 -1
- package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +0 -212
- package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.js +0 -278
- package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.js.map +0 -1
- package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.d.ts +0 -237
- package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.js +0 -158
- package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.js.map +0 -1
- package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.d.ts +0 -287
- package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.js +0 -374
- package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.js.map +0 -1
- package/dist/esm/kernel-zerodev/abis/TokenActionsAbi.d.ts +0 -63
- package/dist/esm/kernel-zerodev/abis/TokenActionsAbi.js.map +0 -1
- package/dist/esm/kernel-zerodev/abis/WeightedValidatorAbi.d.ts +0 -340
- package/dist/esm/kernel-zerodev/abis/WeightedValidatorAbi.js +0 -443
- package/dist/esm/kernel-zerodev/abis/WeightedValidatorAbi.js.map +0 -1
- package/dist/esm/kernel-zerodev/abis/index.d.ts +0 -8
- package/dist/esm/kernel-zerodev/abis/index.js +0 -9
- package/dist/esm/kernel-zerodev/abis/index.js.map +0 -1
- package/dist/esm/kernel-zerodev/account.d.ts +0 -51
- package/dist/esm/kernel-zerodev/account.js +0 -317
- package/dist/esm/kernel-zerodev/account.js.map +0 -1
- package/dist/esm/kernel-zerodev/api/index.d.ts +0 -5
- package/dist/esm/kernel-zerodev/api/index.js +0 -58
- package/dist/esm/kernel-zerodev/api/index.js.map +0 -1
- package/dist/esm/kernel-zerodev/client/create-client.d.ts +0 -12
- package/dist/esm/kernel-zerodev/client/create-client.js +0 -50
- package/dist/esm/kernel-zerodev/client/create-client.js.map +0 -1
- package/dist/esm/kernel-zerodev/constants.d.ts +0 -31
- package/dist/esm/kernel-zerodev/constants.js +0 -75
- package/dist/esm/kernel-zerodev/constants.js.map +0 -1
- package/dist/esm/kernel-zerodev/errors.d.ts +0 -5
- package/dist/esm/kernel-zerodev/errors.js +0 -6
- package/dist/esm/kernel-zerodev/errors.js.map +0 -1
- package/dist/esm/kernel-zerodev/ethers-provider/account-signer.d.ts +0 -31
- package/dist/esm/kernel-zerodev/ethers-provider/account-signer.js +0 -145
- package/dist/esm/kernel-zerodev/ethers-provider/account-signer.js.map +0 -1
- package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.d.ts +0 -22
- package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.js +0 -112
- package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.js.map +0 -1
- package/dist/esm/kernel-zerodev/middleware/gas-estimator.d.ts +0 -19
- package/dist/esm/kernel-zerodev/middleware/gas-estimator.js +0 -146
- package/dist/esm/kernel-zerodev/middleware/gas-estimator.js.map +0 -1
- package/dist/esm/kernel-zerodev/middleware/paymaster.d.ts +0 -5
- package/dist/esm/kernel-zerodev/middleware/paymaster.js +0 -59
- package/dist/esm/kernel-zerodev/middleware/paymaster.js.map +0 -1
- package/dist/esm/kernel-zerodev/owner/getCustodialOwner.d.ts +0 -11
- package/dist/esm/kernel-zerodev/owner/getCustodialOwner.js +0 -73
- package/dist/esm/kernel-zerodev/owner/getCustodialOwner.js.map +0 -1
- package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.d.ts +0 -2
- package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.js +0 -15
- package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.js.map +0 -1
- package/dist/esm/kernel-zerodev/owner/index.d.ts +0 -2
- package/dist/esm/kernel-zerodev/owner/index.js +0 -3
- package/dist/esm/kernel-zerodev/owner/index.js.map +0 -1
- package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +0 -8
- package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.js +0 -67
- package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.js.map +0 -1
- package/dist/esm/kernel-zerodev/owner/passkey/exceptions.d.ts +0 -3
- package/dist/esm/kernel-zerodev/owner/passkey/exceptions.js +0 -12
- package/dist/esm/kernel-zerodev/owner/passkey/exceptions.js.map +0 -1
- package/dist/esm/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts +0 -6
- package/dist/esm/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js +0 -41
- package/dist/esm/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js.map +0 -1
- package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +0 -7
- package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.js +0 -37
- package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.js.map +0 -1
- package/dist/esm/kernel-zerodev/owner/passkey/index.d.ts +0 -4
- package/dist/esm/kernel-zerodev/owner/passkey/index.js +0 -5
- package/dist/esm/kernel-zerodev/owner/passkey/index.js.map +0 -1
- package/dist/esm/kernel-zerodev/owner/passkey/types.d.ts +0 -12
- package/dist/esm/kernel-zerodev/owner/passkey/types.js +0 -2
- package/dist/esm/kernel-zerodev/owner/passkey/types.js.map +0 -1
- package/dist/esm/kernel-zerodev/owner/passkey/utils.d.ts +0 -14
- package/dist/esm/kernel-zerodev/owner/passkey/utils.js +0 -100
- package/dist/esm/kernel-zerodev/owner/passkey/utils.js.map +0 -1
- package/dist/esm/kernel-zerodev/paymaster/base.d.ts +0 -18
- package/dist/esm/kernel-zerodev/paymaster/base.js +0 -56
- package/dist/esm/kernel-zerodev/paymaster/base.js.map +0 -1
- package/dist/esm/kernel-zerodev/paymaster/index.d.ts +0 -3
- package/dist/esm/kernel-zerodev/paymaster/index.js +0 -7
- package/dist/esm/kernel-zerodev/paymaster/index.js.map +0 -1
- package/dist/esm/kernel-zerodev/paymaster/token-paymaster.d.ts +0 -15
- package/dist/esm/kernel-zerodev/paymaster/token-paymaster.js +0 -182
- package/dist/esm/kernel-zerodev/paymaster/token-paymaster.js.map +0 -1
- package/dist/esm/kernel-zerodev/paymaster/types.d.ts +0 -29
- package/dist/esm/kernel-zerodev/paymaster/types.js +0 -2
- package/dist/esm/kernel-zerodev/paymaster/types.js.map +0 -1
- package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.d.ts +0 -8
- package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.js +0 -18
- package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.js.map +0 -1
- package/dist/esm/kernel-zerodev/provider.d.ts +0 -57
- package/dist/esm/kernel-zerodev/provider.js +0 -383
- package/dist/esm/kernel-zerodev/provider.js.map +0 -1
- package/dist/esm/kernel-zerodev/signer/empty-account.d.ts +0 -10
- package/dist/esm/kernel-zerodev/signer/empty-account.js +0 -40
- package/dist/esm/kernel-zerodev/signer/empty-account.js.map +0 -1
- package/dist/esm/kernel-zerodev/types.d.ts +0 -7
- package/dist/esm/kernel-zerodev/types.js +0 -2
- package/dist/esm/kernel-zerodev/types.js.map +0 -1
- package/dist/esm/kernel-zerodev/utils/ERC4337-utils.d.ts +0 -5
- package/dist/esm/kernel-zerodev/utils/ERC4337-utils.js +0 -100
- package/dist/esm/kernel-zerodev/utils/ERC4337-utils.js.map +0 -1
- package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +0 -15
- package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.js +0 -29
- package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.js.map +0 -1
- package/dist/esm/kernel-zerodev/utils/custom-chains.d.ts +0 -58
- package/dist/esm/kernel-zerodev/utils/custom-chains.js +0 -54
- package/dist/esm/kernel-zerodev/utils/custom-chains.js.map +0 -1
- package/dist/esm/kernel-zerodev/utils.d.ts +0 -20
- package/dist/esm/kernel-zerodev/utils.js +0 -85
- package/dist/esm/kernel-zerodev/utils.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator/base.d.ts +0 -57
- package/dist/esm/kernel-zerodev/validator/base.js +0 -282
- package/dist/esm/kernel-zerodev/validator/base.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator/ecdsa-validator.d.ts +0 -20
- package/dist/esm/kernel-zerodev/validator/ecdsa-validator.js +0 -93
- package/dist/esm/kernel-zerodev/validator/ecdsa-validator.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.d.ts +0 -29
- package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.js +0 -114
- package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator/index.d.ts +0 -8
- package/dist/esm/kernel-zerodev/validator/index.js +0 -14
- package/dist/esm/kernel-zerodev/validator/index.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator/kill-switch-validator.d.ts +0 -22
- package/dist/esm/kernel-zerodev/validator/kill-switch-validator.js +0 -118
- package/dist/esm/kernel-zerodev/validator/kill-switch-validator.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator/recovery-validator.d.ts +0 -56
- package/dist/esm/kernel-zerodev/validator/recovery-validator.js +0 -344
- package/dist/esm/kernel-zerodev/validator/recovery-validator.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator/session-key-validator.d.ts +0 -84
- package/dist/esm/kernel-zerodev/validator/session-key-validator.js +0 -496
- package/dist/esm/kernel-zerodev/validator/session-key-validator.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator/types.d.ts +0 -56
- package/dist/esm/kernel-zerodev/validator/types.js +0 -3
- package/dist/esm/kernel-zerodev/validator/types.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator-provider/base.d.ts +0 -29
- package/dist/esm/kernel-zerodev/validator-provider/base.js +0 -126
- package/dist/esm/kernel-zerodev/validator-provider/base.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +0 -8
- package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.js +0 -56
- package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +0 -8
- package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.js +0 -60
- package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator-provider/index.d.ts +0 -8
- package/dist/esm/kernel-zerodev/validator-provider/index.js +0 -14
- package/dist/esm/kernel-zerodev/validator-provider/index.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +0 -8
- package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.js +0 -60
- package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator-provider/recovery-provider.d.ts +0 -27
- package/dist/esm/kernel-zerodev/validator-provider/recovery-provider.js +0 -275
- package/dist/esm/kernel-zerodev/validator-provider/recovery-provider.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.d.ts +0 -18
- package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.js +0 -110
- package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.js.map +0 -1
- package/dist/esm/kernel-zerodev/validator-provider/types.d.ts +0 -29
- package/dist/esm/kernel-zerodev/validator-provider/types.js +0 -2
- package/dist/esm/kernel-zerodev/validator-provider/types.js.map +0 -1
- package/dist/esm/package.json +0 -1
- package/dist/types/index.d.ts +0 -23
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +0 -163
- package/dist/types/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/abis/ERC20Abi.d.ts +0 -232
- package/dist/types/kernel-zerodev/abis/ERC20Abi.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +0 -159
- package/dist/types/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/abis/KernelAccountAbi.d.ts +0 -535
- package/dist/types/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +0 -151
- package/dist/types/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/abis/MultiSendAbi.d.ts +0 -16
- package/dist/types/kernel-zerodev/abis/MultiSendAbi.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/abis/RecoveryActionAbi.d.ts +0 -16
- package/dist/types/kernel-zerodev/abis/RecoveryActionAbi.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +0 -213
- package/dist/types/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/abis/Test_ERC20Abi.d.ts +0 -238
- package/dist/types/kernel-zerodev/abis/Test_ERC20Abi.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/abis/Test_ERC721Abi.d.ts +0 -288
- package/dist/types/kernel-zerodev/abis/Test_ERC721Abi.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/abis/TokenActionsAbi.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/abis/WeightedValidatorAbi.d.ts +0 -341
- package/dist/types/kernel-zerodev/abis/WeightedValidatorAbi.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/abis/index.d.ts +0 -9
- package/dist/types/kernel-zerodev/abis/index.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/account.d.ts +0 -52
- package/dist/types/kernel-zerodev/account.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/api/index.d.ts +0 -6
- package/dist/types/kernel-zerodev/api/index.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/client/create-client.d.ts +0 -13
- package/dist/types/kernel-zerodev/client/create-client.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/constants.d.ts +0 -32
- package/dist/types/kernel-zerodev/constants.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/errors.d.ts +0 -6
- package/dist/types/kernel-zerodev/errors.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/ethers-provider/account-signer.d.ts +0 -32
- package/dist/types/kernel-zerodev/ethers-provider/account-signer.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/ethers-provider/ethers-provider.d.ts +0 -23
- package/dist/types/kernel-zerodev/ethers-provider/ethers-provider.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/middleware/gas-estimator.d.ts +0 -20
- package/dist/types/kernel-zerodev/middleware/gas-estimator.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/middleware/paymaster.d.ts +0 -6
- package/dist/types/kernel-zerodev/middleware/paymaster.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/owner/getCustodialOwner.d.ts +0 -12
- package/dist/types/kernel-zerodev/owner/getCustodialOwner.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/owner/getRPCProviderOwner.d.ts +0 -3
- package/dist/types/kernel-zerodev/owner/getRPCProviderOwner.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/owner/index.d.ts +0 -3
- package/dist/types/kernel-zerodev/owner/index.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +0 -9
- package/dist/types/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/owner/passkey/exceptions.d.ts +0 -4
- package/dist/types/kernel-zerodev/owner/passkey/exceptions.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts +0 -7
- package/dist/types/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +0 -8
- package/dist/types/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/owner/passkey/index.d.ts +0 -5
- package/dist/types/kernel-zerodev/owner/passkey/index.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/owner/passkey/types.d.ts +0 -13
- package/dist/types/kernel-zerodev/owner/passkey/types.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/owner/passkey/utils.d.ts +0 -15
- package/dist/types/kernel-zerodev/owner/passkey/utils.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/paymaster/base.d.ts +0 -19
- package/dist/types/kernel-zerodev/paymaster/base.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/paymaster/index.d.ts +0 -4
- package/dist/types/kernel-zerodev/paymaster/index.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/paymaster/token-paymaster.d.ts +0 -16
- package/dist/types/kernel-zerodev/paymaster/token-paymaster.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/paymaster/types.d.ts +0 -30
- package/dist/types/kernel-zerodev/paymaster/types.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/paymaster/verifying-paymaster.d.ts +0 -9
- package/dist/types/kernel-zerodev/paymaster/verifying-paymaster.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/provider.d.ts +0 -58
- package/dist/types/kernel-zerodev/provider.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/signer/empty-account.d.ts +0 -11
- package/dist/types/kernel-zerodev/signer/empty-account.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/types.d.ts +0 -8
- package/dist/types/kernel-zerodev/types.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/utils/ERC4337-utils.d.ts +0 -6
- package/dist/types/kernel-zerodev/utils/ERC4337-utils.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +0 -16
- package/dist/types/kernel-zerodev/utils/calc-pre-verification-gas.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/utils/custom-chains.d.ts +0 -59
- package/dist/types/kernel-zerodev/utils/custom-chains.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/utils.d.ts +0 -21
- package/dist/types/kernel-zerodev/utils.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator/base.d.ts +0 -58
- package/dist/types/kernel-zerodev/validator/base.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator/ecdsa-validator.d.ts +0 -21
- package/dist/types/kernel-zerodev/validator/ecdsa-validator.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator/erc165-session-key-validator.d.ts +0 -30
- package/dist/types/kernel-zerodev/validator/erc165-session-key-validator.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator/index.d.ts +0 -9
- package/dist/types/kernel-zerodev/validator/index.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator/kill-switch-validator.d.ts +0 -23
- package/dist/types/kernel-zerodev/validator/kill-switch-validator.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator/recovery-validator.d.ts +0 -57
- package/dist/types/kernel-zerodev/validator/recovery-validator.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator/session-key-validator.d.ts +0 -85
- package/dist/types/kernel-zerodev/validator/session-key-validator.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator/types.d.ts +0 -57
- package/dist/types/kernel-zerodev/validator/types.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator-provider/base.d.ts +0 -30
- package/dist/types/kernel-zerodev/validator-provider/base.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +0 -9
- package/dist/types/kernel-zerodev/validator-provider/ecdsa-provider.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +0 -9
- package/dist/types/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator-provider/index.d.ts +0 -9
- package/dist/types/kernel-zerodev/validator-provider/index.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +0 -9
- package/dist/types/kernel-zerodev/validator-provider/kill-switch-provider.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator-provider/recovery-provider.d.ts +0 -28
- package/dist/types/kernel-zerodev/validator-provider/recovery-provider.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator-provider/session-key-provider.d.ts +0 -19
- package/dist/types/kernel-zerodev/validator-provider/session-key-provider.d.ts.map +0 -1
- package/dist/types/kernel-zerodev/validator-provider/types.d.ts +0 -30
- package/dist/types/kernel-zerodev/validator-provider/types.d.ts.map +0 -1
- package/passkey/package.json +0 -5
- package/src/index.ts +0 -50
- package/src/kernel-zerodev/__tests__/config/index.ts +0 -19
- package/src/kernel-zerodev/__tests__/mocks/mock-signer.ts +0 -24
- package/src/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.ts +0 -211
- package/src/kernel-zerodev/abis/ERC20Abi.ts +0 -153
- package/src/kernel-zerodev/abis/ESCDAValidatorAbi.ts +0 -206
- package/src/kernel-zerodev/abis/KernelAccountAbi.ts +0 -691
- package/src/kernel-zerodev/abis/KernelFactoryAbi.ts +0 -380
- package/src/kernel-zerodev/abis/KillSwitchValidatorAbi.ts +0 -196
- package/src/kernel-zerodev/abis/MultiSendAbi.ts +0 -20
- package/src/kernel-zerodev/abis/RecoveryActionAbi.ts +0 -20
- package/src/kernel-zerodev/abis/SessionKeyValidatorAbi.ts +0 -277
- package/src/kernel-zerodev/abis/Test_ERC20Abi.ts +0 -157
- package/src/kernel-zerodev/abis/Test_ERC721Abi.ts +0 -373
- package/src/kernel-zerodev/abis/TokenActionsAbi.ts +0 -81
- package/src/kernel-zerodev/abis/WeightedValidatorAbi.ts +0 -442
- package/src/kernel-zerodev/abis/index.ts +0 -17
- package/src/kernel-zerodev/account.ts +0 -392
- package/src/kernel-zerodev/api/index.ts +0 -84
- package/src/kernel-zerodev/client/create-client.ts +0 -80
- package/src/kernel-zerodev/constants.ts +0 -114
- package/src/kernel-zerodev/errors.ts +0 -13
- package/src/kernel-zerodev/ethers-provider/account-signer.ts +0 -185
- package/src/kernel-zerodev/ethers-provider/ethers-provider.ts +0 -149
- package/src/kernel-zerodev/middleware/gas-estimator.ts +0 -213
- package/src/kernel-zerodev/middleware/paymaster.ts +0 -86
- package/src/kernel-zerodev/owner/getCustodialOwner.ts +0 -131
- package/src/kernel-zerodev/owner/getRPCProviderOwner.ts +0 -26
- package/src/kernel-zerodev/owner/index.ts +0 -2
- package/src/kernel-zerodev/owner/passkey/createPasskeyOwner.ts +0 -107
- package/src/kernel-zerodev/owner/passkey/exceptions.ts +0 -3
- package/src/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.ts +0 -81
- package/src/kernel-zerodev/owner/passkey/getPasskeyOwner.ts +0 -75
- package/src/kernel-zerodev/owner/passkey/index.ts +0 -4
- package/src/kernel-zerodev/owner/passkey/types.ts +0 -18
- package/src/kernel-zerodev/owner/passkey/utils.ts +0 -174
- package/src/kernel-zerodev/paymaster/base.ts +0 -90
- package/src/kernel-zerodev/paymaster/index.ts +0 -9
- package/src/kernel-zerodev/paymaster/token-paymaster.ts +0 -251
- package/src/kernel-zerodev/paymaster/types.ts +0 -40
- package/src/kernel-zerodev/paymaster/verifying-paymaster.ts +0 -32
- package/src/kernel-zerodev/provider.ts +0 -485
- package/src/kernel-zerodev/signer/empty-account.ts +0 -27
- package/src/kernel-zerodev/types.ts +0 -8
- package/src/kernel-zerodev/utils/ERC4337-utils.ts +0 -161
- package/src/kernel-zerodev/utils/calc-pre-verification-gas.ts +0 -88
- package/src/kernel-zerodev/utils/custom-chains.ts +0 -55
- package/src/kernel-zerodev/utils.ts +0 -155
- package/src/kernel-zerodev/validator/base.ts +0 -320
- package/src/kernel-zerodev/validator/ecdsa-validator.ts +0 -122
- package/src/kernel-zerodev/validator/erc165-session-key-validator.ts +0 -151
- package/src/kernel-zerodev/validator/index.ts +0 -22
- package/src/kernel-zerodev/validator/kill-switch-validator.ts +0 -160
- package/src/kernel-zerodev/validator/recovery-validator.ts +0 -429
- package/src/kernel-zerodev/validator/session-key-validator.ts +0 -696
- package/src/kernel-zerodev/validator/types.ts +0 -129
- package/src/kernel-zerodev/validator-provider/base.ts +0 -178
- package/src/kernel-zerodev/validator-provider/ecdsa-provider.ts +0 -64
- package/src/kernel-zerodev/validator-provider/erc165-session-key-provider.ts +0 -71
- package/src/kernel-zerodev/validator-provider/index.ts +0 -22
- package/src/kernel-zerodev/validator-provider/kill-switch-provider.ts +0 -71
- package/src/kernel-zerodev/validator-provider/recovery-provider.ts +0 -373
- package/src/kernel-zerodev/validator-provider/session-key-provider.ts +0 -150
- package/src/kernel-zerodev/validator-provider/types.ts +0 -42
- /package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelFactoryAbi.d.ts +0 -0
- /package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/TokenActionsAbi.d.ts +0 -0
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import type { UserOperationStruct } from "@alchemy/aa-core";
|
|
2
|
-
import { toBytes, toHex } from "viem";
|
|
3
|
-
import { packUserOp } from "./ERC4337-utils.js";
|
|
4
|
-
|
|
5
|
-
export interface GasOverheads {
|
|
6
|
-
/**
|
|
7
|
-
* fixed overhead for entire handleOp bundle.
|
|
8
|
-
*/
|
|
9
|
-
fixed: number;
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* per userOp overhead, added on top of the above fixed per-bundle.
|
|
13
|
-
*/
|
|
14
|
-
perUserOp: number;
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* overhead for userOp word (32 bytes) block
|
|
18
|
-
*/
|
|
19
|
-
perUserOpWord: number;
|
|
20
|
-
|
|
21
|
-
// perCallDataWord: number
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* zero byte cost, for calldata gas cost calculations
|
|
25
|
-
*/
|
|
26
|
-
zeroByte: number;
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* non-zero byte cost, for calldata gas cost calculations
|
|
30
|
-
*/
|
|
31
|
-
nonZeroByte: number;
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* expected bundle size, to split per-bundle overhead between all ops.
|
|
35
|
-
*/
|
|
36
|
-
bundleSize: number;
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* expected length of the userOp signature.
|
|
40
|
-
*/
|
|
41
|
-
sigSize: number;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export const DefaultGasOverheads: GasOverheads = {
|
|
45
|
-
fixed: 21000,
|
|
46
|
-
perUserOp: 18300,
|
|
47
|
-
perUserOpWord: 4,
|
|
48
|
-
zeroByte: 4,
|
|
49
|
-
nonZeroByte: 16,
|
|
50
|
-
bundleSize: 1,
|
|
51
|
-
sigSize: 65,
|
|
52
|
-
};
|
|
53
|
-
|
|
54
|
-
export type NotPromise<T> = {
|
|
55
|
-
[P in keyof T]: Exclude<T[P], Promise<any>>;
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* calculate the preVerificationGas of the given UserOperation
|
|
60
|
-
* preVerificationGas (by definition) is the cost overhead that can't be calculated on-chain.
|
|
61
|
-
* it is based on parameters that are defined by the Ethereum protocol for external transactions.
|
|
62
|
-
* @param userOp filled userOp to calculate. The only possible missing fields can be the signature and preVerificationGas itself
|
|
63
|
-
* @param overheads gas overheads to use, to override the default values
|
|
64
|
-
*/
|
|
65
|
-
export function calcPreVerificationGas(
|
|
66
|
-
userOp: Partial<NotPromise<UserOperationStruct>>,
|
|
67
|
-
overheads?: Partial<GasOverheads>
|
|
68
|
-
): number {
|
|
69
|
-
const ov = { ...DefaultGasOverheads, ...(overheads ?? {}) };
|
|
70
|
-
const p: NotPromise<UserOperationStruct> = {
|
|
71
|
-
// dummy values, in case the UserOp is incomplete.
|
|
72
|
-
preVerificationGas: 21000, // dummy value, just for calldata cost
|
|
73
|
-
signature: toHex(Buffer.alloc(ov.sigSize, 1)), // dummy signature
|
|
74
|
-
...userOp,
|
|
75
|
-
} as any;
|
|
76
|
-
|
|
77
|
-
const packed = toBytes(packUserOp(p, false));
|
|
78
|
-
const callDataCost = packed
|
|
79
|
-
.map((x) => (x === 0 ? ov.zeroByte : ov.nonZeroByte))
|
|
80
|
-
.reduce((sum, x) => sum + x);
|
|
81
|
-
const ret = Math.round(
|
|
82
|
-
callDataCost +
|
|
83
|
-
ov.fixed / ov.bundleSize +
|
|
84
|
-
ov.perUserOp +
|
|
85
|
-
ov.perUserOpWord * packed.length
|
|
86
|
-
);
|
|
87
|
-
return ret;
|
|
88
|
-
}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { defineChain } from "viem";
|
|
2
|
-
|
|
3
|
-
export const gelatoOPTestnet = defineChain({
|
|
4
|
-
id: 42069,
|
|
5
|
-
name: "Gelato OPTestnet",
|
|
6
|
-
network: "gelatoOPTestnet",
|
|
7
|
-
nativeCurrency: {
|
|
8
|
-
decimals: 18,
|
|
9
|
-
name: "Ether",
|
|
10
|
-
symbol: "ETH",
|
|
11
|
-
},
|
|
12
|
-
rpcUrls: {
|
|
13
|
-
default: {
|
|
14
|
-
http: ["https://rpc.op-testnet.gelato.digital"],
|
|
15
|
-
webSocket: [],
|
|
16
|
-
},
|
|
17
|
-
public: {
|
|
18
|
-
http: ["https://rpc.op-testnet.gelato.digital"],
|
|
19
|
-
webSocket: [],
|
|
20
|
-
},
|
|
21
|
-
},
|
|
22
|
-
blockExplorers: {
|
|
23
|
-
default: {
|
|
24
|
-
name: "Explorer",
|
|
25
|
-
url: "https://blockscout.op-testnet.gelato.digital",
|
|
26
|
-
},
|
|
27
|
-
},
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
export const astarZKatana = defineChain({
|
|
31
|
-
id: 1261120,
|
|
32
|
-
name: "Astar zKatana",
|
|
33
|
-
network: "astarZKatana",
|
|
34
|
-
nativeCurrency: {
|
|
35
|
-
decimals: 18,
|
|
36
|
-
name: "Ether",
|
|
37
|
-
symbol: "ETH",
|
|
38
|
-
},
|
|
39
|
-
rpcUrls: {
|
|
40
|
-
default: {
|
|
41
|
-
http: ["https://rpc.zkatana.gelato.digital"],
|
|
42
|
-
webSocket: ["https://ws.zkatana.gelato.digital"],
|
|
43
|
-
},
|
|
44
|
-
public: {
|
|
45
|
-
http: ["https://rpc.zkatana.gelato.digital"],
|
|
46
|
-
webSocket: ["https://ws.zkatana.gelato.digital"],
|
|
47
|
-
},
|
|
48
|
-
},
|
|
49
|
-
blockExplorers: {
|
|
50
|
-
default: {
|
|
51
|
-
name: "Explorer",
|
|
52
|
-
url: "https://zkatana.blockscout.com",
|
|
53
|
-
},
|
|
54
|
-
},
|
|
55
|
-
});
|
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
encodePacked,
|
|
3
|
-
fromBytes,
|
|
4
|
-
toBytes,
|
|
5
|
-
type Hex,
|
|
6
|
-
type WalletClient,
|
|
7
|
-
toHex,
|
|
8
|
-
isHex,
|
|
9
|
-
hexToSignature,
|
|
10
|
-
signatureToHex,
|
|
11
|
-
} from "viem";
|
|
12
|
-
import * as chains from "viem/chains";
|
|
13
|
-
import * as customChains from "./utils/custom-chains.js";
|
|
14
|
-
import type {
|
|
15
|
-
SignTypedDataParams,
|
|
16
|
-
SmartAccountSigner,
|
|
17
|
-
UserOperationCallData,
|
|
18
|
-
} from "@alchemy/aa-core";
|
|
19
|
-
import { Signer, type TypedDataField } from "@ethersproject/abstract-signer";
|
|
20
|
-
import { Wallet } from "@ethersproject/wallet";
|
|
21
|
-
import type { SupportedGasToken } from "./paymaster/types.js";
|
|
22
|
-
import { gasTokenChainAddresses } from "./constants.js";
|
|
23
|
-
|
|
24
|
-
export type UserOperationCallDataWithDelegate = UserOperationCallData & {
|
|
25
|
-
delegateCall?: boolean;
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
export type BatchUserOperationCallDataWithDelegate =
|
|
29
|
-
UserOperationCallDataWithDelegate[];
|
|
30
|
-
|
|
31
|
-
const encodeCall = (_tx: UserOperationCallDataWithDelegate): string => {
|
|
32
|
-
const data = toBytes(_tx.data);
|
|
33
|
-
const encoded = encodePacked(
|
|
34
|
-
["uint8", "address", "uint256", "uint256", "bytes"],
|
|
35
|
-
[
|
|
36
|
-
_tx.delegateCall ? 1 : 0,
|
|
37
|
-
_tx.target,
|
|
38
|
-
_tx.value || BigInt(0),
|
|
39
|
-
BigInt(data.length),
|
|
40
|
-
fromBytes(data, "hex"),
|
|
41
|
-
]
|
|
42
|
-
);
|
|
43
|
-
return encoded.slice(2);
|
|
44
|
-
};
|
|
45
|
-
export const encodeMultiSend = (
|
|
46
|
-
_txs: BatchUserOperationCallDataWithDelegate
|
|
47
|
-
): Hex => {
|
|
48
|
-
return ("0x" + _txs.map((tx) => encodeCall(tx)).join("")) as Hex;
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
export function base64ToBytes(base64: string) {
|
|
52
|
-
const binString = atob(base64);
|
|
53
|
-
return Uint8Array.from(binString, (m) => m.codePointAt(0) as number);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
export function bytesToBase64(bytes: Uint8Array) {
|
|
57
|
-
const binString = Array.from(bytes, (x) => String.fromCodePoint(x)).join("");
|
|
58
|
-
return btoa(binString);
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
export function getGasTokenAddress(
|
|
62
|
-
gasToken: SupportedGasToken,
|
|
63
|
-
chainId: number
|
|
64
|
-
): Hex | undefined {
|
|
65
|
-
if (gasToken === "TEST_ERC20") {
|
|
66
|
-
return "0x3870419Ba2BBf0127060bCB37f69A1b1C090992B";
|
|
67
|
-
}
|
|
68
|
-
return gasTokenChainAddresses[gasToken][chainId] || undefined;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
export const convertWalletClientToAccountSigner = (
|
|
72
|
-
client: WalletClient
|
|
73
|
-
): SmartAccountSigner => {
|
|
74
|
-
return {
|
|
75
|
-
getAddress: async () =>
|
|
76
|
-
Promise.resolve((await client.getAddresses())[0] as `0x${string}`),
|
|
77
|
-
signMessage: async (message: Uint8Array | string) =>
|
|
78
|
-
(await client.signMessage({
|
|
79
|
-
account: client.account!,
|
|
80
|
-
message:
|
|
81
|
-
typeof message === "string"
|
|
82
|
-
? message
|
|
83
|
-
: {
|
|
84
|
-
raw: message,
|
|
85
|
-
},
|
|
86
|
-
})) as `0x${string}`,
|
|
87
|
-
signTypedData: async (params: SignTypedDataParams) =>
|
|
88
|
-
await client.signTypedData({ ...params, account: client.account! }),
|
|
89
|
-
};
|
|
90
|
-
};
|
|
91
|
-
|
|
92
|
-
export const isWallet = (signer: any): signer is Wallet =>
|
|
93
|
-
signer && signer._signTypedData !== undefined;
|
|
94
|
-
|
|
95
|
-
export const convertEthersSignerToAccountSigner = (
|
|
96
|
-
signer: Signer | Wallet
|
|
97
|
-
): SmartAccountSigner => {
|
|
98
|
-
return {
|
|
99
|
-
getAddress: async () =>
|
|
100
|
-
Promise.resolve((await signer.getAddress()) as `0x${string}`),
|
|
101
|
-
signMessage: async (msg: Uint8Array | string) =>
|
|
102
|
-
(await signer.signMessage(msg)) as `0x${string}`,
|
|
103
|
-
signTypedData: async (params: SignTypedDataParams) => {
|
|
104
|
-
if (!isWallet(signer)) {
|
|
105
|
-
throw Error("signTypedData method not implemented in signer");
|
|
106
|
-
}
|
|
107
|
-
return (await signer._signTypedData(
|
|
108
|
-
params.domain!,
|
|
109
|
-
params.types as unknown as Record<string, TypedDataField[]>,
|
|
110
|
-
params.message
|
|
111
|
-
)) as Hex;
|
|
112
|
-
},
|
|
113
|
-
};
|
|
114
|
-
};
|
|
115
|
-
|
|
116
|
-
export const randomHexString = (length: number): Hex =>
|
|
117
|
-
toHex(
|
|
118
|
-
Array.from({ length }, () =>
|
|
119
|
-
Math.floor(Math.random() * 16).toString(16)
|
|
120
|
-
).join("")
|
|
121
|
-
);
|
|
122
|
-
|
|
123
|
-
export const fixSignedData = (sig: Hex): Hex => {
|
|
124
|
-
let signature = sig;
|
|
125
|
-
if (!isHex(signature)) {
|
|
126
|
-
signature = `0x${signature}`;
|
|
127
|
-
if (!isHex(signature)) {
|
|
128
|
-
throw new Error("Invalid signed data " + sig);
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
let { r, s, v } = hexToSignature(signature);
|
|
133
|
-
if (v === 0n || v === 1n) v += 27n;
|
|
134
|
-
const joined = signatureToHex({ r, s, v });
|
|
135
|
-
return joined;
|
|
136
|
-
};
|
|
137
|
-
|
|
138
|
-
// Modified from @alchemy/aa-core
|
|
139
|
-
/**
|
|
140
|
-
* Utility method for converting a chainId to a {@link chains.Chain} object
|
|
141
|
-
*
|
|
142
|
-
* @param chainId
|
|
143
|
-
* @returns a {@link chains.Chain} object for the given chainId
|
|
144
|
-
* @throws if the chainId is not found
|
|
145
|
-
*/
|
|
146
|
-
export const getChain = (chainId: number): chains.Chain => {
|
|
147
|
-
for (const chain of Object.values(chains).concat(
|
|
148
|
-
Object.values(customChains)
|
|
149
|
-
)) {
|
|
150
|
-
if (chain.id === chainId) {
|
|
151
|
-
return chain;
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
throw new Error("could not find chain");
|
|
155
|
-
};
|
|
@@ -1,320 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
type SignTypedDataParams,
|
|
3
|
-
type SmartAccountSigner,
|
|
4
|
-
type UserOperationRequest,
|
|
5
|
-
} from "@alchemy/aa-core";
|
|
6
|
-
import {
|
|
7
|
-
concat,
|
|
8
|
-
type Chain,
|
|
9
|
-
type Hex,
|
|
10
|
-
pad,
|
|
11
|
-
toHex,
|
|
12
|
-
type Address,
|
|
13
|
-
concatHex,
|
|
14
|
-
hexToBigInt,
|
|
15
|
-
type PublicClient,
|
|
16
|
-
type Transport,
|
|
17
|
-
createPublicClient,
|
|
18
|
-
http,
|
|
19
|
-
zeroAddress,
|
|
20
|
-
} from "viem";
|
|
21
|
-
import { KernelAccountAbi } from "../abis/KernelAccountAbi.js";
|
|
22
|
-
import {
|
|
23
|
-
BUNDLER_URL,
|
|
24
|
-
CHAIN_ID_TO_NODE,
|
|
25
|
-
ECDSA_VALIDATOR_ADDRESS,
|
|
26
|
-
ENTRYPOINT_ADDRESS,
|
|
27
|
-
KERNEL_IMPL_ADDRESS,
|
|
28
|
-
} from "../constants.js";
|
|
29
|
-
import { polygonMumbai } from "viem/chains";
|
|
30
|
-
|
|
31
|
-
export enum ValidatorMode {
|
|
32
|
-
sudo = "0x00000000",
|
|
33
|
-
plugin = "0x00000001",
|
|
34
|
-
enable = "0x00000002",
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export interface KernelBaseValidatorParams {
|
|
38
|
-
projectId: string;
|
|
39
|
-
validatorAddress?: Hex;
|
|
40
|
-
mode?: ValidatorMode;
|
|
41
|
-
chain?: Chain;
|
|
42
|
-
entryPointAddress?: Address;
|
|
43
|
-
enableSignature?: Hex;
|
|
44
|
-
validUntil?: number;
|
|
45
|
-
validAfter?: number;
|
|
46
|
-
executor?: Address;
|
|
47
|
-
selector?: Hex;
|
|
48
|
-
rpcUrl?: string;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
export type ValidatorPluginData = Required<
|
|
52
|
-
Pick<
|
|
53
|
-
KernelBaseValidatorParams,
|
|
54
|
-
"executor" | "selector" | "validAfter" | "validUntil"
|
|
55
|
-
>
|
|
56
|
-
>;
|
|
57
|
-
|
|
58
|
-
//Kernel wallet implementation separates out validation and execution phase. It allows you to have
|
|
59
|
-
// custom wrapper logic for the validation phase in addition to signature of choice.
|
|
60
|
-
export abstract class KernelBaseValidator {
|
|
61
|
-
readonly validatorAddress: Hex;
|
|
62
|
-
mode: ValidatorMode;
|
|
63
|
-
resolvedMode?: ValidatorMode;
|
|
64
|
-
protected projectId: string;
|
|
65
|
-
protected chain?: Chain;
|
|
66
|
-
protected entryPointAddress: Address;
|
|
67
|
-
protected enableSignature?: Hex;
|
|
68
|
-
protected validUntil: number;
|
|
69
|
-
protected validAfter: number;
|
|
70
|
-
protected executor?: Address;
|
|
71
|
-
protected selector?: Hex;
|
|
72
|
-
protected rpcUrl?: string;
|
|
73
|
-
publicClient?: PublicClient<Transport, Chain>;
|
|
74
|
-
|
|
75
|
-
constructor(params: KernelBaseValidatorParams) {
|
|
76
|
-
this.projectId = params.projectId;
|
|
77
|
-
this.validatorAddress = params.validatorAddress ?? ECDSA_VALIDATOR_ADDRESS;
|
|
78
|
-
this.mode = params.mode ?? ValidatorMode.sudo;
|
|
79
|
-
this.entryPointAddress = params.entryPointAddress ?? ENTRYPOINT_ADDRESS;
|
|
80
|
-
this.enableSignature = params.enableSignature;
|
|
81
|
-
this.validUntil = params.validUntil ?? 0;
|
|
82
|
-
this.validAfter = params.validAfter ?? 0;
|
|
83
|
-
this.executor = params.executor;
|
|
84
|
-
this.selector = params.selector;
|
|
85
|
-
this.chain = params.chain;
|
|
86
|
-
this.rpcUrl = params.rpcUrl ?? BUNDLER_URL;
|
|
87
|
-
this.publicClient = createPublicClient({
|
|
88
|
-
transport: http(CHAIN_ID_TO_NODE[this.chain?.id ?? polygonMumbai.id]),
|
|
89
|
-
chain: this.chain ?? polygonMumbai,
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
abstract encodeEnable(enableData: Hex): Hex;
|
|
94
|
-
|
|
95
|
-
abstract encodeDisable(enableData: Hex): Hex;
|
|
96
|
-
|
|
97
|
-
abstract getEnableData(kernelAccountAddress?: Address): Promise<Hex>;
|
|
98
|
-
|
|
99
|
-
abstract signMessage(message: Uint8Array | string | Hex): Promise<Hex>;
|
|
100
|
-
|
|
101
|
-
abstract signTypedData(params: SignTypedDataParams): Promise<Hex>;
|
|
102
|
-
|
|
103
|
-
abstract signUserOp(userOp: UserOperationRequest): Promise<Hex>;
|
|
104
|
-
|
|
105
|
-
abstract signer(): Promise<SmartAccountSigner>;
|
|
106
|
-
|
|
107
|
-
abstract getDummyUserOpSignature(callData?: Hex): Promise<Hex>;
|
|
108
|
-
|
|
109
|
-
abstract isPluginEnabled(
|
|
110
|
-
kernelAccountAddress: Address,
|
|
111
|
-
selector: Hex
|
|
112
|
-
): Promise<boolean>;
|
|
113
|
-
|
|
114
|
-
shouldDelegateViaFallback(): boolean {
|
|
115
|
-
return true;
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
getPluginValidatorData(): ValidatorPluginData {
|
|
119
|
-
if (!this.selector || !this.executor) {
|
|
120
|
-
throw Error("Plugin Validator data params uninitialised");
|
|
121
|
-
}
|
|
122
|
-
return {
|
|
123
|
-
selector: this.selector,
|
|
124
|
-
executor: this.executor,
|
|
125
|
-
validAfter: this.validAfter,
|
|
126
|
-
validUntil: this.validUntil,
|
|
127
|
-
};
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
getNonceKey(): bigint {
|
|
131
|
-
return 0n;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
async getDynamicDummySignature(
|
|
135
|
-
kernelAccountAddress: Address,
|
|
136
|
-
calldata: Hex
|
|
137
|
-
): Promise<Hex> {
|
|
138
|
-
const dummyECDSASig =
|
|
139
|
-
"0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c";
|
|
140
|
-
const validatorMode =
|
|
141
|
-
this.resolvedMode ??
|
|
142
|
-
(await this.resolveValidatorMode(kernelAccountAddress, calldata));
|
|
143
|
-
if (validatorMode === ValidatorMode.enable) {
|
|
144
|
-
const enableData = await this.getEnableData(kernelAccountAddress);
|
|
145
|
-
const enableDataLength = enableData.length / 2 - 1;
|
|
146
|
-
const enableSigLength = 65;
|
|
147
|
-
const staticDummySig = concatHex([
|
|
148
|
-
"0x000000000000000000000000",
|
|
149
|
-
this.getAddress(),
|
|
150
|
-
this.executor!,
|
|
151
|
-
]);
|
|
152
|
-
|
|
153
|
-
return concatHex([
|
|
154
|
-
ValidatorMode.enable,
|
|
155
|
-
staticDummySig,
|
|
156
|
-
pad(toHex(enableDataLength), { size: 32 }),
|
|
157
|
-
enableData,
|
|
158
|
-
pad(toHex(enableSigLength), { size: 32 }),
|
|
159
|
-
dummyECDSASig,
|
|
160
|
-
await this.getDummyUserOpSignature(calldata),
|
|
161
|
-
]);
|
|
162
|
-
}
|
|
163
|
-
return concatHex([
|
|
164
|
-
validatorMode,
|
|
165
|
-
await this.getDummyUserOpSignature(calldata),
|
|
166
|
-
]);
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
setEnableSignature(enableSignature: Hex) {
|
|
170
|
-
this.enableSignature = enableSignature;
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
getEnableSignature(): Hex | undefined {
|
|
174
|
-
return this.enableSignature;
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
getAddress(): Hex {
|
|
178
|
-
return this.validatorAddress;
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
getPublicClient(): PublicClient<Transport, Chain> {
|
|
182
|
-
if (!this.publicClient) {
|
|
183
|
-
throw new Error("Validator uninitialized: PublicClient missing");
|
|
184
|
-
}
|
|
185
|
-
return this.publicClient;
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
async approveExecutor(
|
|
189
|
-
kernel: Address,
|
|
190
|
-
selector: Hex,
|
|
191
|
-
executor: Address,
|
|
192
|
-
validUntil: number,
|
|
193
|
-
validAfter: number,
|
|
194
|
-
validator: KernelBaseValidator
|
|
195
|
-
): Promise<Hex> {
|
|
196
|
-
if (!this.chain) {
|
|
197
|
-
throw new Error("Validator uninitialized");
|
|
198
|
-
}
|
|
199
|
-
let kernelImplAddr;
|
|
200
|
-
try {
|
|
201
|
-
const strgAddr = await this.getPublicClient().getStorageAt({
|
|
202
|
-
address: kernel,
|
|
203
|
-
slot: "0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc",
|
|
204
|
-
});
|
|
205
|
-
kernelImplAddr = strgAddr
|
|
206
|
-
? (("0x" + strgAddr.slice(26)) as Hex)
|
|
207
|
-
: strgAddr;
|
|
208
|
-
} catch (error) {}
|
|
209
|
-
const sender = kernel;
|
|
210
|
-
const signer = await this.signer();
|
|
211
|
-
const ownerSig = await signer.signTypedData({
|
|
212
|
-
domain: {
|
|
213
|
-
name: "Kernel",
|
|
214
|
-
version:
|
|
215
|
-
kernelImplAddr?.toLowerCase() === KERNEL_IMPL_ADDRESS.toLowerCase() ||
|
|
216
|
-
kernelImplAddr?.toLowerCase() ===
|
|
217
|
-
"0x8dD4DBB54d8A8Cf0DE6F9CCC4609470A30EfF18C".toLowerCase() ||
|
|
218
|
-
kernelImplAddr === undefined ||
|
|
219
|
-
kernelImplAddr === zeroAddress
|
|
220
|
-
? "0.2.2"
|
|
221
|
-
: "0.2.1",
|
|
222
|
-
chainId: this.chain.id,
|
|
223
|
-
verifyingContract: sender,
|
|
224
|
-
},
|
|
225
|
-
types: {
|
|
226
|
-
ValidatorApproved: [
|
|
227
|
-
{ name: "sig", type: "bytes4" },
|
|
228
|
-
{ name: "validatorData", type: "uint256" },
|
|
229
|
-
{ name: "executor", type: "address" },
|
|
230
|
-
{ name: "enableData", type: "bytes" },
|
|
231
|
-
],
|
|
232
|
-
},
|
|
233
|
-
message: {
|
|
234
|
-
sig: selector as Hex,
|
|
235
|
-
validatorData: hexToBigInt(
|
|
236
|
-
concatHex([
|
|
237
|
-
pad(toHex(validUntil), { size: 6 }),
|
|
238
|
-
pad(toHex(validAfter), { size: 6 }),
|
|
239
|
-
validator.getAddress(),
|
|
240
|
-
]),
|
|
241
|
-
{ size: 32 }
|
|
242
|
-
),
|
|
243
|
-
executor: executor as Address,
|
|
244
|
-
enableData: await validator.getEnableData(kernel),
|
|
245
|
-
},
|
|
246
|
-
primaryType: "ValidatorApproved",
|
|
247
|
-
});
|
|
248
|
-
return ownerSig;
|
|
249
|
-
}
|
|
250
|
-
|
|
251
|
-
async resolveValidatorMode(
|
|
252
|
-
kernelAccountAddress: Address,
|
|
253
|
-
callData: Hex
|
|
254
|
-
): Promise<ValidatorMode> {
|
|
255
|
-
if (!this.chain || !this.publicClient) {
|
|
256
|
-
throw new Error("Validator uninitialized");
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
let mode: ValidatorMode;
|
|
260
|
-
try {
|
|
261
|
-
const defaultValidatorAddress = await this.publicClient.readContract({
|
|
262
|
-
abi: KernelAccountAbi,
|
|
263
|
-
address: kernelAccountAddress,
|
|
264
|
-
functionName: "getDefaultValidator",
|
|
265
|
-
});
|
|
266
|
-
if (
|
|
267
|
-
defaultValidatorAddress?.toLowerCase() ===
|
|
268
|
-
this.validatorAddress.toLowerCase() ||
|
|
269
|
-
this.mode === ValidatorMode.sudo
|
|
270
|
-
) {
|
|
271
|
-
mode = ValidatorMode.sudo;
|
|
272
|
-
} else if (
|
|
273
|
-
await this.isPluginEnabled(
|
|
274
|
-
kernelAccountAddress,
|
|
275
|
-
callData.toString().slice(0, 10) as Hex
|
|
276
|
-
)
|
|
277
|
-
) {
|
|
278
|
-
mode = ValidatorMode.plugin;
|
|
279
|
-
} else {
|
|
280
|
-
mode = ValidatorMode.enable;
|
|
281
|
-
}
|
|
282
|
-
} catch (error) {
|
|
283
|
-
if (this.mode === ValidatorMode.plugin) {
|
|
284
|
-
mode = ValidatorMode.enable;
|
|
285
|
-
} else {
|
|
286
|
-
mode = this.mode;
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
this.resolvedMode = mode;
|
|
290
|
-
return mode;
|
|
291
|
-
}
|
|
292
|
-
|
|
293
|
-
async getSignature(userOp: UserOperationRequest): Promise<Hex> {
|
|
294
|
-
const mode =
|
|
295
|
-
this.resolvedMode ??
|
|
296
|
-
(await this.resolveValidatorMode(userOp.sender, userOp.callData));
|
|
297
|
-
if (mode === ValidatorMode.sudo || mode === ValidatorMode.plugin) {
|
|
298
|
-
return concatHex([this.mode, await this.signUserOp(userOp)]);
|
|
299
|
-
} else {
|
|
300
|
-
const enableData = await this.getEnableData(userOp.sender);
|
|
301
|
-
const enableDataLength = enableData.length / 2 - 1;
|
|
302
|
-
const enableSignature = this.getEnableSignature();
|
|
303
|
-
if (!enableSignature) {
|
|
304
|
-
throw new Error("Enable signature not set");
|
|
305
|
-
}
|
|
306
|
-
return concat([
|
|
307
|
-
mode, // 4 bytes 0 - 4
|
|
308
|
-
pad(toHex(this.validUntil), { size: 6 }), // 6 bytes 4 - 10
|
|
309
|
-
pad(toHex(this.validAfter), { size: 6 }), // 6 bytes 10 - 16
|
|
310
|
-
pad(this.validatorAddress, { size: 20 }), // 20 bytes 16 - 36
|
|
311
|
-
pad(this.executor!, { size: 20 }), // 20 bytes 36 - 56
|
|
312
|
-
pad(toHex(enableDataLength), { size: 32 }), // 32 bytes 56 - 88
|
|
313
|
-
enableData, // 88 - 88 + enableData.length
|
|
314
|
-
pad(toHex(enableSignature.length / 2 - 1), { size: 32 }), // 32 bytes 88 + enableData.length - 120 + enableData.length
|
|
315
|
-
enableSignature, // 120 + enableData.length - 120 + enableData.length + enableSignature.length
|
|
316
|
-
await this.signUserOp(userOp), // 120 + enableData.length + enableSignature.length - 120 + enableData.length + enableSignature.length + userOperation.length
|
|
317
|
-
]);
|
|
318
|
-
}
|
|
319
|
-
}
|
|
320
|
-
}
|