@zerodev/sdk 4.0.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/README.md +450 -0
- package/dist/cjs/index.d.ts +21 -0
- package/dist/cjs/index.js +49 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +162 -0
- package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js +215 -0
- package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js.map +1 -0
- package/dist/cjs/kernel-zerodev/abis/ERC20Abi.d.ts +39 -0
- package/dist/cjs/kernel-zerodev/abis/ERC20Abi.js +157 -0
- package/dist/cjs/kernel-zerodev/abis/ERC20Abi.js.map +1 -0
- package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +158 -0
- package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.js +210 -0
- package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.js.map +1 -0
- package/dist/cjs/kernel-zerodev/abis/KernelAccountAbi.d.ts +496 -0
- package/dist/cjs/kernel-zerodev/abis/KernelAccountAbi.js +646 -0
- package/dist/cjs/kernel-zerodev/abis/KernelAccountAbi.js.map +1 -0
- package/dist/cjs/kernel-zerodev/abis/KernelFactoryAbi.d.ts +293 -0
- package/dist/cjs/kernel-zerodev/abis/KernelFactoryAbi.js +384 -0
- package/dist/cjs/kernel-zerodev/abis/KernelFactoryAbi.js.map +1 -0
- package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +150 -0
- package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.js +200 -0
- package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.js.map +1 -0
- package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.d.ts +15 -0
- package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.js +24 -0
- package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.js.map +1 -0
- package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.d.ts +39 -0
- package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.js +161 -0
- package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.js.map +1 -0
- package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.d.ts +287 -0
- package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.js +377 -0
- package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.js.map +1 -0
- package/dist/cjs/kernel-zerodev/abis/TokenActionsAbi.d.ts +63 -0
- package/dist/cjs/kernel-zerodev/abis/TokenActionsAbi.js +85 -0
- package/dist/cjs/kernel-zerodev/abis/TokenActionsAbi.js.map +1 -0
- package/dist/cjs/kernel-zerodev/abis/index.d.ts +8 -0
- package/dist/cjs/kernel-zerodev/abis/index.js +18 -0
- package/dist/cjs/kernel-zerodev/abis/index.js.map +1 -0
- package/dist/cjs/kernel-zerodev/account.d.ts +35 -0
- package/dist/cjs/kernel-zerodev/account.js +209 -0
- package/dist/cjs/kernel-zerodev/account.js.map +1 -0
- package/dist/cjs/kernel-zerodev/api/index.d.ts +1 -0
- package/dist/cjs/kernel-zerodev/api/index.js +24 -0
- package/dist/cjs/kernel-zerodev/api/index.js.map +1 -0
- package/dist/cjs/kernel-zerodev/client/create-client.d.ts +11 -0
- package/dist/cjs/kernel-zerodev/client/create-client.js +21 -0
- package/dist/cjs/kernel-zerodev/client/create-client.js.map +1 -0
- package/dist/cjs/kernel-zerodev/constants.d.ts +27 -0
- package/dist/cjs/kernel-zerodev/constants.js +66 -0
- package/dist/cjs/kernel-zerodev/constants.js.map +1 -0
- package/dist/cjs/kernel-zerodev/errors.d.ts +5 -0
- package/dist/cjs/kernel-zerodev/errors.js +12 -0
- package/dist/cjs/kernel-zerodev/errors.js.map +1 -0
- package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.d.ts +21 -0
- package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.js +94 -0
- package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.js.map +1 -0
- package/dist/cjs/kernel-zerodev/middleware/gas-estimator.d.ts +15 -0
- package/dist/cjs/kernel-zerodev/middleware/gas-estimator.js +132 -0
- package/dist/cjs/kernel-zerodev/middleware/gas-estimator.js.map +1 -0
- package/dist/cjs/kernel-zerodev/middleware/paymaster.d.ts +5 -0
- package/dist/cjs/kernel-zerodev/middleware/paymaster.js +43 -0
- package/dist/cjs/kernel-zerodev/middleware/paymaster.js.map +1 -0
- package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.d.ts +8 -0
- package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.js +53 -0
- package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.js.map +1 -0
- package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.d.ts +2 -0
- package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.js +15 -0
- package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.js.map +1 -0
- package/dist/cjs/kernel-zerodev/owner/index.d.ts +2 -0
- package/dist/cjs/kernel-zerodev/owner/index.js +8 -0
- package/dist/cjs/kernel-zerodev/owner/index.js.map +1 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +7 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.js +65 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.js.map +1 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/getOrCreatePasskeyOwner.d.ts +6 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/getOrCreatePasskeyOwner.js +16 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/getOrCreatePasskeyOwner.js.map +1 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +5 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.js +41 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.js.map +1 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/index.d.ts +3 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/index.js +10 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/index.js.map +1 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/types.d.ts +12 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/types.js +3 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/types.js.map +1 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/utils.d.ts +11 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/utils.js +105 -0
- package/dist/cjs/kernel-zerodev/owner/passkey/utils.js.map +1 -0
- package/dist/cjs/kernel-zerodev/paymaster/base.d.ts +16 -0
- package/dist/cjs/kernel-zerodev/paymaster/base.js +58 -0
- package/dist/cjs/kernel-zerodev/paymaster/base.js.map +1 -0
- package/dist/cjs/kernel-zerodev/paymaster/index.d.ts +3 -0
- package/dist/cjs/kernel-zerodev/paymaster/index.js +10 -0
- package/dist/cjs/kernel-zerodev/paymaster/index.js.map +1 -0
- package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.d.ts +14 -0
- package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.js +173 -0
- package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.js.map +1 -0
- package/dist/cjs/kernel-zerodev/paymaster/types.d.ts +29 -0
- package/dist/cjs/kernel-zerodev/paymaster/types.js +3 -0
- package/dist/cjs/kernel-zerodev/paymaster/types.js.map +1 -0
- package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.d.ts +8 -0
- package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.js +31 -0
- package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.js.map +1 -0
- package/dist/cjs/kernel-zerodev/provider.d.ts +42 -0
- package/dist/cjs/kernel-zerodev/provider.js +249 -0
- package/dist/cjs/kernel-zerodev/provider.js.map +1 -0
- package/dist/cjs/kernel-zerodev/types.d.ts +7 -0
- package/dist/cjs/kernel-zerodev/types.js +3 -0
- package/dist/cjs/kernel-zerodev/types.js.map +1 -0
- package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.d.ts +5 -0
- package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.js +106 -0
- package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.js.map +1 -0
- package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +15 -0
- package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.js +33 -0
- package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.js.map +1 -0
- package/dist/cjs/kernel-zerodev/utils.d.ts +15 -0
- package/dist/cjs/kernel-zerodev/utils.js +60 -0
- package/dist/cjs/kernel-zerodev/utils.js.map +1 -0
- package/dist/cjs/kernel-zerodev/validator/base.d.ts +53 -0
- package/dist/cjs/kernel-zerodev/validator/base.js +240 -0
- package/dist/cjs/kernel-zerodev/validator/base.js.map +1 -0
- package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.d.ts +19 -0
- package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.js +93 -0
- package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.js.map +1 -0
- package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.d.ts +27 -0
- package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.js +103 -0
- package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.js.map +1 -0
- package/dist/cjs/kernel-zerodev/validator/index.d.ts +6 -0
- package/dist/cjs/kernel-zerodev/validator/index.js +15 -0
- package/dist/cjs/kernel-zerodev/validator/index.js.map +1 -0
- package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.d.ts +21 -0
- package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.js +110 -0
- package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.js.map +1 -0
- package/dist/cjs/kernel-zerodev/validator/types.d.ts +17 -0
- package/dist/cjs/kernel-zerodev/validator/types.js +3 -0
- package/dist/cjs/kernel-zerodev/validator/types.js.map +1 -0
- package/dist/cjs/kernel-zerodev/validator-provider/base.d.ts +28 -0
- package/dist/cjs/kernel-zerodev/validator-provider/base.js +94 -0
- package/dist/cjs/kernel-zerodev/validator-provider/base.js.map +1 -0
- package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +8 -0
- package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.js +60 -0
- package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.js.map +1 -0
- package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +8 -0
- package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.js +64 -0
- package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.js.map +1 -0
- package/dist/cjs/kernel-zerodev/validator-provider/index.d.ts +6 -0
- package/dist/cjs/kernel-zerodev/validator-provider/index.js +15 -0
- package/dist/cjs/kernel-zerodev/validator-provider/index.js.map +1 -0
- package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +8 -0
- package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.js +64 -0
- package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.js.map +1 -0
- package/dist/cjs/kernel-zerodev/validator-provider/types.d.ts +21 -0
- package/dist/cjs/kernel-zerodev/validator-provider/types.js +3 -0
- package/dist/cjs/kernel-zerodev/validator-provider/types.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/esm/index.d.ts +21 -0
- package/dist/esm/index.js +13 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +162 -0
- package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js +212 -0
- package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js.map +1 -0
- package/dist/esm/kernel-zerodev/abis/ERC20Abi.d.ts +39 -0
- package/dist/esm/kernel-zerodev/abis/ERC20Abi.js +154 -0
- package/dist/esm/kernel-zerodev/abis/ERC20Abi.js.map +1 -0
- package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +158 -0
- package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.js +207 -0
- package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.js.map +1 -0
- package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.d.ts +496 -0
- package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.js +643 -0
- package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.js.map +1 -0
- package/dist/esm/kernel-zerodev/abis/KernelFactoryAbi.d.ts +293 -0
- package/dist/esm/kernel-zerodev/abis/KernelFactoryAbi.js +381 -0
- package/dist/esm/kernel-zerodev/abis/KernelFactoryAbi.js.map +1 -0
- package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +150 -0
- package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.js +197 -0
- package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.js.map +1 -0
- package/dist/esm/kernel-zerodev/abis/MultiSendAbi.d.ts +15 -0
- package/dist/esm/kernel-zerodev/abis/MultiSendAbi.js +21 -0
- package/dist/esm/kernel-zerodev/abis/MultiSendAbi.js.map +1 -0
- package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.d.ts +39 -0
- package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.js +158 -0
- package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.js.map +1 -0
- package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.d.ts +287 -0
- package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.js +374 -0
- package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.js.map +1 -0
- package/dist/esm/kernel-zerodev/abis/TokenActionsAbi.d.ts +63 -0
- package/dist/esm/kernel-zerodev/abis/TokenActionsAbi.js +82 -0
- package/dist/esm/kernel-zerodev/abis/TokenActionsAbi.js.map +1 -0
- package/dist/esm/kernel-zerodev/abis/index.d.ts +8 -0
- package/dist/esm/kernel-zerodev/abis/index.js +9 -0
- package/dist/esm/kernel-zerodev/abis/index.js.map +1 -0
- package/dist/esm/kernel-zerodev/account.d.ts +35 -0
- package/dist/esm/kernel-zerodev/account.js +204 -0
- package/dist/esm/kernel-zerodev/account.js.map +1 -0
- package/dist/esm/kernel-zerodev/api/index.d.ts +1 -0
- package/dist/esm/kernel-zerodev/api/index.js +17 -0
- package/dist/esm/kernel-zerodev/api/index.js.map +1 -0
- package/dist/esm/kernel-zerodev/client/create-client.d.ts +11 -0
- package/dist/esm/kernel-zerodev/client/create-client.js +17 -0
- package/dist/esm/kernel-zerodev/client/create-client.js.map +1 -0
- package/dist/esm/kernel-zerodev/constants.d.ts +27 -0
- package/dist/esm/kernel-zerodev/constants.js +63 -0
- package/dist/esm/kernel-zerodev/constants.js.map +1 -0
- package/dist/esm/kernel-zerodev/errors.d.ts +5 -0
- package/dist/esm/kernel-zerodev/errors.js +6 -0
- package/dist/esm/kernel-zerodev/errors.js.map +1 -0
- package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.d.ts +21 -0
- package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.js +90 -0
- package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.js.map +1 -0
- package/dist/esm/kernel-zerodev/middleware/gas-estimator.d.ts +15 -0
- package/dist/esm/kernel-zerodev/middleware/gas-estimator.js +124 -0
- package/dist/esm/kernel-zerodev/middleware/gas-estimator.js.map +1 -0
- package/dist/esm/kernel-zerodev/middleware/paymaster.d.ts +5 -0
- package/dist/esm/kernel-zerodev/middleware/paymaster.js +39 -0
- package/dist/esm/kernel-zerodev/middleware/paymaster.js.map +1 -0
- package/dist/esm/kernel-zerodev/owner/getCustodialOwner.d.ts +8 -0
- package/dist/esm/kernel-zerodev/owner/getCustodialOwner.js +46 -0
- package/dist/esm/kernel-zerodev/owner/getCustodialOwner.js.map +1 -0
- package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.d.ts +2 -0
- package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.js +12 -0
- package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.js.map +1 -0
- package/dist/esm/kernel-zerodev/owner/index.d.ts +2 -0
- package/dist/esm/kernel-zerodev/owner/index.js +3 -0
- package/dist/esm/kernel-zerodev/owner/index.js.map +1 -0
- package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +7 -0
- package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.js +58 -0
- package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.js.map +1 -0
- package/dist/esm/kernel-zerodev/owner/passkey/getOrCreatePasskeyOwner.d.ts +6 -0
- package/dist/esm/kernel-zerodev/owner/passkey/getOrCreatePasskeyOwner.js +12 -0
- package/dist/esm/kernel-zerodev/owner/passkey/getOrCreatePasskeyOwner.js.map +1 -0
- package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +5 -0
- package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.js +34 -0
- package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.js.map +1 -0
- package/dist/esm/kernel-zerodev/owner/passkey/index.d.ts +3 -0
- package/dist/esm/kernel-zerodev/owner/passkey/index.js +4 -0
- package/dist/esm/kernel-zerodev/owner/passkey/index.js.map +1 -0
- package/dist/esm/kernel-zerodev/owner/passkey/types.d.ts +12 -0
- package/dist/esm/kernel-zerodev/owner/passkey/types.js +2 -0
- package/dist/esm/kernel-zerodev/owner/passkey/types.js.map +1 -0
- package/dist/esm/kernel-zerodev/owner/passkey/utils.d.ts +11 -0
- package/dist/esm/kernel-zerodev/owner/passkey/utils.js +92 -0
- package/dist/esm/kernel-zerodev/owner/passkey/utils.js.map +1 -0
- package/dist/esm/kernel-zerodev/paymaster/base.d.ts +16 -0
- package/dist/esm/kernel-zerodev/paymaster/base.js +51 -0
- package/dist/esm/kernel-zerodev/paymaster/base.js.map +1 -0
- package/dist/esm/kernel-zerodev/paymaster/index.d.ts +3 -0
- package/dist/esm/kernel-zerodev/paymaster/index.js +7 -0
- package/dist/esm/kernel-zerodev/paymaster/index.js.map +1 -0
- package/dist/esm/kernel-zerodev/paymaster/token-paymaster.d.ts +14 -0
- package/dist/esm/kernel-zerodev/paymaster/token-paymaster.js +168 -0
- package/dist/esm/kernel-zerodev/paymaster/token-paymaster.js.map +1 -0
- package/dist/esm/kernel-zerodev/paymaster/types.d.ts +29 -0
- package/dist/esm/kernel-zerodev/paymaster/types.js +2 -0
- package/dist/esm/kernel-zerodev/paymaster/types.js.map +1 -0
- package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.d.ts +8 -0
- package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.js +27 -0
- package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.js.map +1 -0
- package/dist/esm/kernel-zerodev/provider.d.ts +42 -0
- package/dist/esm/kernel-zerodev/provider.js +245 -0
- package/dist/esm/kernel-zerodev/provider.js.map +1 -0
- package/dist/esm/kernel-zerodev/types.d.ts +7 -0
- package/dist/esm/kernel-zerodev/types.js +2 -0
- package/dist/esm/kernel-zerodev/types.js.map +1 -0
- package/dist/esm/kernel-zerodev/utils/ERC4337-utils.d.ts +5 -0
- package/dist/esm/kernel-zerodev/utils/ERC4337-utils.js +100 -0
- package/dist/esm/kernel-zerodev/utils/ERC4337-utils.js.map +1 -0
- package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +15 -0
- package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.js +29 -0
- package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.js.map +1 -0
- package/dist/esm/kernel-zerodev/utils.d.ts +15 -0
- package/dist/esm/kernel-zerodev/utils.js +53 -0
- package/dist/esm/kernel-zerodev/utils.js.map +1 -0
- package/dist/esm/kernel-zerodev/validator/base.d.ts +53 -0
- package/dist/esm/kernel-zerodev/validator/base.js +237 -0
- package/dist/esm/kernel-zerodev/validator/base.js.map +1 -0
- package/dist/esm/kernel-zerodev/validator/ecdsa-validator.d.ts +19 -0
- package/dist/esm/kernel-zerodev/validator/ecdsa-validator.js +89 -0
- package/dist/esm/kernel-zerodev/validator/ecdsa-validator.js.map +1 -0
- package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.d.ts +27 -0
- package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.js +99 -0
- package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.js.map +1 -0
- package/dist/esm/kernel-zerodev/validator/index.d.ts +6 -0
- package/dist/esm/kernel-zerodev/validator/index.js +10 -0
- package/dist/esm/kernel-zerodev/validator/index.js.map +1 -0
- package/dist/esm/kernel-zerodev/validator/kill-switch-validator.d.ts +21 -0
- package/dist/esm/kernel-zerodev/validator/kill-switch-validator.js +106 -0
- package/dist/esm/kernel-zerodev/validator/kill-switch-validator.js.map +1 -0
- package/dist/esm/kernel-zerodev/validator/types.d.ts +17 -0
- package/dist/esm/kernel-zerodev/validator/types.js +2 -0
- package/dist/esm/kernel-zerodev/validator/types.js.map +1 -0
- package/dist/esm/kernel-zerodev/validator-provider/base.d.ts +28 -0
- package/dist/esm/kernel-zerodev/validator-provider/base.js +91 -0
- package/dist/esm/kernel-zerodev/validator-provider/base.js.map +1 -0
- package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +8 -0
- package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.js +56 -0
- package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.js.map +1 -0
- package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +8 -0
- package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.js +60 -0
- package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.js.map +1 -0
- package/dist/esm/kernel-zerodev/validator-provider/index.d.ts +6 -0
- package/dist/esm/kernel-zerodev/validator-provider/index.js +10 -0
- package/dist/esm/kernel-zerodev/validator-provider/index.js.map +1 -0
- package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +8 -0
- package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.js +60 -0
- package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.js.map +1 -0
- package/dist/esm/kernel-zerodev/validator-provider/types.d.ts +21 -0
- package/dist/esm/kernel-zerodev/validator-provider/types.js +2 -0
- package/dist/esm/kernel-zerodev/validator-provider/types.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/types/index.d.ts +22 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +163 -0
- package/dist/types/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/abis/ERC20Abi.d.ts +40 -0
- package/dist/types/kernel-zerodev/abis/ERC20Abi.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +159 -0
- package/dist/types/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/abis/KernelAccountAbi.d.ts +497 -0
- package/dist/types/kernel-zerodev/abis/KernelAccountAbi.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/abis/KernelFactoryAbi.d.ts +294 -0
- package/dist/types/kernel-zerodev/abis/KernelFactoryAbi.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +151 -0
- package/dist/types/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/abis/MultiSendAbi.d.ts +16 -0
- package/dist/types/kernel-zerodev/abis/MultiSendAbi.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/abis/Test_ERC20Abi.d.ts +40 -0
- package/dist/types/kernel-zerodev/abis/Test_ERC20Abi.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/abis/Test_ERC721Abi.d.ts +288 -0
- package/dist/types/kernel-zerodev/abis/Test_ERC721Abi.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/abis/TokenActionsAbi.d.ts +64 -0
- package/dist/types/kernel-zerodev/abis/TokenActionsAbi.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/abis/index.d.ts +9 -0
- package/dist/types/kernel-zerodev/abis/index.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/account.d.ts +36 -0
- package/dist/types/kernel-zerodev/account.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/api/index.d.ts +2 -0
- package/dist/types/kernel-zerodev/api/index.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/client/create-client.d.ts +12 -0
- package/dist/types/kernel-zerodev/client/create-client.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/constants.d.ts +28 -0
- package/dist/types/kernel-zerodev/constants.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/errors.d.ts +6 -0
- package/dist/types/kernel-zerodev/errors.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/ethers-provider/ethers-provider.d.ts +39 -0
- package/dist/types/kernel-zerodev/ethers-provider/ethers-provider.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/middleware/gas-estimator.d.ts +20 -0
- package/dist/types/kernel-zerodev/middleware/gas-estimator.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/middleware/paymaster.d.ts +6 -0
- package/dist/types/kernel-zerodev/middleware/paymaster.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/owner/getCustodialOwner.d.ts +9 -0
- package/dist/types/kernel-zerodev/owner/getCustodialOwner.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/owner/getRPCProviderOwner.d.ts +3 -0
- package/dist/types/kernel-zerodev/owner/getRPCProviderOwner.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/owner/index.d.ts +3 -0
- package/dist/types/kernel-zerodev/owner/index.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +8 -0
- package/dist/types/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/owner/passkey/getOrCreatePasskeyOwner.d.ts +7 -0
- package/dist/types/kernel-zerodev/owner/passkey/getOrCreatePasskeyOwner.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +6 -0
- package/dist/types/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/owner/passkey/index.d.ts +4 -0
- package/dist/types/kernel-zerodev/owner/passkey/index.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/owner/passkey/types.d.ts +14 -0
- package/dist/types/kernel-zerodev/owner/passkey/types.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/owner/passkey/utils.d.ts +12 -0
- package/dist/types/kernel-zerodev/owner/passkey/utils.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/paymaster/base.d.ts +17 -0
- package/dist/types/kernel-zerodev/paymaster/base.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/paymaster/index.d.ts +4 -0
- package/dist/types/kernel-zerodev/paymaster/index.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/paymaster/token-paymaster.d.ts +15 -0
- package/dist/types/kernel-zerodev/paymaster/token-paymaster.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/paymaster/types.d.ts +30 -0
- package/dist/types/kernel-zerodev/paymaster/types.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/paymaster/verifying-paymaster.d.ts +9 -0
- package/dist/types/kernel-zerodev/paymaster/verifying-paymaster.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/provider.d.ts +43 -0
- package/dist/types/kernel-zerodev/provider.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/types.d.ts +8 -0
- package/dist/types/kernel-zerodev/types.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/utils/ERC4337-utils.d.ts +18 -0
- package/dist/types/kernel-zerodev/utils/ERC4337-utils.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +44 -0
- package/dist/types/kernel-zerodev/utils/calc-pre-verification-gas.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/utils.d.ts +16 -0
- package/dist/types/kernel-zerodev/utils.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/validator/base.d.ts +54 -0
- package/dist/types/kernel-zerodev/validator/base.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/validator/ecdsa-validator.d.ts +20 -0
- package/dist/types/kernel-zerodev/validator/ecdsa-validator.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/validator/erc165-session-key-validator.d.ts +28 -0
- package/dist/types/kernel-zerodev/validator/erc165-session-key-validator.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/validator/index.d.ts +7 -0
- package/dist/types/kernel-zerodev/validator/index.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/validator/kill-switch-validator.d.ts +22 -0
- package/dist/types/kernel-zerodev/validator/kill-switch-validator.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/validator/types.d.ts +18 -0
- package/dist/types/kernel-zerodev/validator/types.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/validator-provider/base.d.ts +29 -0
- package/dist/types/kernel-zerodev/validator-provider/base.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +9 -0
- package/dist/types/kernel-zerodev/validator-provider/ecdsa-provider.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +9 -0
- package/dist/types/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/validator-provider/index.d.ts +7 -0
- package/dist/types/kernel-zerodev/validator-provider/index.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +9 -0
- package/dist/types/kernel-zerodev/validator-provider/kill-switch-provider.d.ts.map +1 -0
- package/dist/types/kernel-zerodev/validator-provider/types.d.ts +22 -0
- package/dist/types/kernel-zerodev/validator-provider/types.d.ts.map +1 -0
- package/package.json +76 -0
- package/passkey/package.json +5 -0
- package/src/index.ts +43 -0
- package/src/kernel-zerodev/__tests__/mocks/mock-signer.ts +24 -0
- package/src/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.ts +211 -0
- package/src/kernel-zerodev/abis/ERC20Abi.ts +153 -0
- package/src/kernel-zerodev/abis/ESCDAValidatorAbi.ts +206 -0
- package/src/kernel-zerodev/abis/KernelAccountAbi.ts +642 -0
- package/src/kernel-zerodev/abis/KernelFactoryAbi.ts +380 -0
- package/src/kernel-zerodev/abis/KillSwitchValidatorAbi.ts +196 -0
- package/src/kernel-zerodev/abis/MultiSendAbi.ts +20 -0
- package/src/kernel-zerodev/abis/Test_ERC20Abi.ts +157 -0
- package/src/kernel-zerodev/abis/Test_ERC721Abi.ts +373 -0
- package/src/kernel-zerodev/abis/TokenActionsAbi.ts +81 -0
- package/src/kernel-zerodev/abis/index.ts +17 -0
- package/src/kernel-zerodev/account.ts +275 -0
- package/src/kernel-zerodev/api/index.ts +25 -0
- package/src/kernel-zerodev/client/create-client.ts +37 -0
- package/src/kernel-zerodev/constants.ts +95 -0
- package/src/kernel-zerodev/errors.ts +13 -0
- package/src/kernel-zerodev/ethers-provider/ethers-provider.ts +118 -0
- package/src/kernel-zerodev/middleware/gas-estimator.ts +183 -0
- package/src/kernel-zerodev/middleware/paymaster.ts +66 -0
- package/src/kernel-zerodev/owner/getCustodialOwner.ts +74 -0
- package/src/kernel-zerodev/owner/getRPCProviderOwner.ts +22 -0
- package/src/kernel-zerodev/owner/index.ts +2 -0
- package/src/kernel-zerodev/owner/passkey/createPasskeyOwner.ts +98 -0
- package/src/kernel-zerodev/owner/passkey/getOrCreatePasskeyOwner.ts +22 -0
- package/src/kernel-zerodev/owner/passkey/getPasskeyOwner.ts +69 -0
- package/src/kernel-zerodev/owner/passkey/index.ts +3 -0
- package/src/kernel-zerodev/owner/passkey/types.ts +18 -0
- package/src/kernel-zerodev/owner/passkey/utils.ts +157 -0
- package/src/kernel-zerodev/paymaster/base.ts +76 -0
- package/src/kernel-zerodev/paymaster/index.ts +9 -0
- package/src/kernel-zerodev/paymaster/token-paymaster.ts +209 -0
- package/src/kernel-zerodev/paymaster/types.ts +36 -0
- package/src/kernel-zerodev/paymaster/verifying-paymaster.ts +38 -0
- package/src/kernel-zerodev/provider.ts +341 -0
- package/src/kernel-zerodev/types.ts +8 -0
- package/src/kernel-zerodev/utils/ERC4337-utils.ts +161 -0
- package/src/kernel-zerodev/utils/calc-pre-verification-gas.ts +88 -0
- package/src/kernel-zerodev/utils.ts +106 -0
- package/src/kernel-zerodev/validator/base.ts +265 -0
- package/src/kernel-zerodev/validator/ecdsa-validator.ts +117 -0
- package/src/kernel-zerodev/validator/erc165-session-key-validator.ts +127 -0
- package/src/kernel-zerodev/validator/index.ts +12 -0
- package/src/kernel-zerodev/validator/kill-switch-validator.ts +142 -0
- package/src/kernel-zerodev/validator/types.ts +36 -0
- package/src/kernel-zerodev/validator-provider/base.ts +140 -0
- package/src/kernel-zerodev/validator-provider/ecdsa-provider.ts +61 -0
- package/src/kernel-zerodev/validator-provider/erc165-session-key-provider.ts +68 -0
- package/src/kernel-zerodev/validator-provider/index.ts +12 -0
- package/src/kernel-zerodev/validator-provider/kill-switch-provider.ts +68 -0
- package/src/kernel-zerodev/validator-provider/types.ts +26 -0
package/README.md
ADDED
|
@@ -0,0 +1,450 @@
|
|
|
1
|
+
# ZeroDev SDK
|
|
2
|
+
|
|
3
|
+
SDK for [ZeroDev](https://docs.zerodev.app/), based on [Kernel](https://github.com/zerodevapp/kernel).
|
|
4
|
+
|
|
5
|
+
## Getting started
|
|
6
|
+
|
|
7
|
+
Follow the instructions below to install the packages.
|
|
8
|
+
|
|
9
|
+
via `yarn`
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
yarn add @alchemy/aa-core @alchemy/aa-ethers @zerodevapp/sdk@alpha
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
via `npm`
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npm i -s @alchemy/aa-core @alchemy/aa-ethers @zerodev/sdk@alpha
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Example Usage to Interact with [Kernel Accounts](https://github.com/zerodevapp/kernel/blob/main/src/Kernel.sol)
|
|
22
|
+
|
|
23
|
+
### Basic Usage
|
|
24
|
+
|
|
25
|
+
```ts
|
|
26
|
+
import { ECDSAValidator } from "@zerodev/sdk@alpha";
|
|
27
|
+
import { PrivateKeySigner } from "@alchemy/aa-core";
|
|
28
|
+
|
|
29
|
+
// 1. define the EOA owner of the Smart Account
|
|
30
|
+
// This is just one exapmle of how to interact with EOAs, feel free to use any other interface
|
|
31
|
+
const owner = PrivateKeySigner.privateKeyToAccountSigner(PRIVATE_KEY);
|
|
32
|
+
|
|
33
|
+
// 2. Create a ZeroDev Provider
|
|
34
|
+
let ecdsaProvider = await ECDSAProvider.init({
|
|
35
|
+
projectId, // zeroDev projectId
|
|
36
|
+
owner,
|
|
37
|
+
// Optional: pass the paymasterConfig to use the verifying paymaster
|
|
38
|
+
// opts: {
|
|
39
|
+
// paymasterConfig: {
|
|
40
|
+
// policy: "VERIFYING_PAYMASTER"
|
|
41
|
+
// }
|
|
42
|
+
// }
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
// 3. send a UserOperation
|
|
46
|
+
const { hash } = await ecdsaProvider.sendUserOperation({
|
|
47
|
+
target: "0xTargetAddress",
|
|
48
|
+
data: "0xcallData",
|
|
49
|
+
value: 0n, // value: bigint or undefined
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
// 4. Wait for UserOp
|
|
53
|
+
const tx = await ecdsaProvider.waitForUserOperationTransaction(
|
|
54
|
+
result.hash as Hex
|
|
55
|
+
);
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Batch Transactions
|
|
59
|
+
|
|
60
|
+
```ts
|
|
61
|
+
const { hash } = await ecdsaProvider.sendUserOperation([
|
|
62
|
+
{
|
|
63
|
+
target: "0xTargetAddress1",
|
|
64
|
+
data: "0xcallData1",
|
|
65
|
+
value: 0n, // value: bigint or undefined
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
target: "0xTargetAddress2",
|
|
69
|
+
data: "0xcallData2",
|
|
70
|
+
value: 0n, // value: bigint or undefined
|
|
71
|
+
},
|
|
72
|
+
]);
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Optional params for ValidatorProvider:
|
|
76
|
+
|
|
77
|
+
| Option | Usage | Type | Default |
|
|
78
|
+
| ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ | ---------------------------------------- | -------------------------------------------------------------------------------- |
|
|
79
|
+
| bundlerProvider | Bundler Provider | "ALCHEMY", "STACKUP", "PIMLICO" | "STACKUP" |
|
|
80
|
+
| usePaymaster | Use paymaster to send userOps | boolean | true |
|
|
81
|
+
| opts:paymasterConfig:paymasterProvider | Paymaster Provider | "ALCHEMY", "STACKUP", "PIMLICO" | "STACKUP" |
|
|
82
|
+
| opts:paymasterConfig:onlySendSponsoredTransaction | Only send sponsored transaction and revert if somehow paymaster fails | boolean | false |
|
|
83
|
+
| opts:paymasterConfig:policy | Paymaster policy | "TOKEN_PAYMASTER", "VERIFYING_PAYMASTER" | "VERIFYING_PAYMASTER" |
|
|
84
|
+
| opts:paymasterConfig:gasToken | ERC20 token to use for gas fees in case of "TOKEN_PAYMASTER" | "USDC", "PEPE", "TEST_ERC20" | (Required) |
|
|
85
|
+
| opts:providerConfig:rpcUrl | Custom RPC URL for the bundler provider | string | "https://v0-6-meta-bundler.onrender.com" |
|
|
86
|
+
| opts:providerConfig:opts:txMaxRetries | The maximum number of times to try fetching a transaction receipt before giving up | number | 5 |
|
|
87
|
+
| opts:providerConfig:opts:txRetryIntervalMs | The interval in milliseconds to wait between retries while waiting for tx receipts | number | 2000 |
|
|
88
|
+
| opts:providerConfig:opts:minPriorityFeePerBid | used when computing the fees for a user operation | bigint | 100_000_000n, [Chain-wise defaults](/packages/core/src/provider/base.ts#L61-L64) |
|
|
89
|
+
| opts:providerConfig:opts:sendTxMaxRetries | The maximum number of times to try sending a transaction before giving up | number | 3 |
|
|
90
|
+
| opts:providerConfig:opts:sendTxRetryIntervalMs | The interval in milliseconds to wait between retries while sending a transaction | number | 180000 |
|
|
91
|
+
| opts:accountConfig:index | Index variable to be used alongwith with owner address and validator data while calculating counterfactual address | number | 1000 |
|
|
92
|
+
| [TODO] include other options | | | |
|
|
93
|
+
|
|
94
|
+
### Pay gas in ERC20
|
|
95
|
+
|
|
96
|
+
ZeroDev currently supports:
|
|
97
|
+
|
|
98
|
+
- `USDC`
|
|
99
|
+
- `PEPE` (mainnet only)
|
|
100
|
+
- `DAI` (upcoming)
|
|
101
|
+
|
|
102
|
+
Just pass the `paymasterConfig` to `createZeroDevProvider` function while creating the provider.
|
|
103
|
+
|
|
104
|
+
```ts
|
|
105
|
+
let ecdsaProvider = await ECDSAProvider.init({
|
|
106
|
+
projectId, // zeroDev projectId
|
|
107
|
+
owner,
|
|
108
|
+
opts: {
|
|
109
|
+
paymasterConfig: {
|
|
110
|
+
policy: "TOKEN_PAYMASTER",
|
|
111
|
+
gasToken: "TEST_ERC20",
|
|
112
|
+
},
|
|
113
|
+
},
|
|
114
|
+
});
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
### Change Kernel Account Owner in ECDSAValidator
|
|
118
|
+
|
|
119
|
+
```ts
|
|
120
|
+
// 1. Create a ECDSAValidatorProvider
|
|
121
|
+
const ecdsaProvider = await ECDSAProvider.init({
|
|
122
|
+
projectId: "c73037ef-8c0b-48be-a581-1f3d161151d3",
|
|
123
|
+
owner,
|
|
124
|
+
});
|
|
125
|
+
|
|
126
|
+
// 2. Change the owner of the Kernel Account
|
|
127
|
+
const { hash } = await ecdsaProvider.changeOwner(<NEW_OWNER_ADDRESS>);
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
### Via `ethers` Signer
|
|
131
|
+
|
|
132
|
+
```ts
|
|
133
|
+
import { Wallet } from "@ethersproject/wallet";
|
|
134
|
+
import {
|
|
135
|
+
ZeroDevEthersProvider,
|
|
136
|
+
convertEthersSignerToAccountSigner,
|
|
137
|
+
} from "@zerodev/sdk@alpha";
|
|
138
|
+
|
|
139
|
+
// 1. Create an ethers Wallet
|
|
140
|
+
const owner = Wallet.fromMnemonic(OWNER_MNEMONIC);
|
|
141
|
+
|
|
142
|
+
// 2. Create a ZeroDev ZeroDevEthersProvider passing the ethers Wallet as the signer
|
|
143
|
+
const provider = await ZeroDevEthersProvider.init("ECDSA", {
|
|
144
|
+
projectId, // zeroDev projectId
|
|
145
|
+
owner: convertEthersSignerToAccountSigner(owner),
|
|
146
|
+
opts: {
|
|
147
|
+
paymasterConfig: {
|
|
148
|
+
policy: "VERIFYING_PAYMASTER",
|
|
149
|
+
},
|
|
150
|
+
},
|
|
151
|
+
});
|
|
152
|
+
|
|
153
|
+
// 3. Get the AccountSigner adapter of ethers signer
|
|
154
|
+
const signer = provider.getAccountSigner();
|
|
155
|
+
|
|
156
|
+
// 4. send a UserOperation
|
|
157
|
+
const { hash } = await signer.sendUserOperation({
|
|
158
|
+
target: "0xTargetAddress",
|
|
159
|
+
data: "0xcallData",
|
|
160
|
+
value: 0n, // value: bigint or undefined
|
|
161
|
+
});
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
### Via `viem` using `custom` transport which supports EIP-1193 providers
|
|
165
|
+
|
|
166
|
+
```ts
|
|
167
|
+
import { createWalletClient, custom } from "viem";
|
|
168
|
+
import { polygonMumbai } from "viem/chains";
|
|
169
|
+
import {
|
|
170
|
+
ECDSAProvider,
|
|
171
|
+
convertWalletClientToAccountSigner,
|
|
172
|
+
} from "@zerodev/sdk@alpha";
|
|
173
|
+
|
|
174
|
+
// 1. Create a Viem Wallet Client using the custom transport
|
|
175
|
+
const client = createWalletClient({
|
|
176
|
+
chain: polygonMumbai,
|
|
177
|
+
transport: custom(window.ethereum),
|
|
178
|
+
});
|
|
179
|
+
|
|
180
|
+
// 2. Create a ZeroDev ECDSAProvider passing the Viem Wallet Client as the signer
|
|
181
|
+
let ecdsaProvider = await ECDSAProvider.init({
|
|
182
|
+
projectId, // zeroDev projectId
|
|
183
|
+
owner: convertWalletClientToAccountSigner(client),
|
|
184
|
+
});
|
|
185
|
+
|
|
186
|
+
// 3. send a UserOperation
|
|
187
|
+
const { hash } = await ecdsaProvider.sendUserOperation({
|
|
188
|
+
target: "0xTargetAddress",
|
|
189
|
+
data: "0xcallData",
|
|
190
|
+
value: 0n, // value: bigint or undefined
|
|
191
|
+
});
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
### Using [Magic](https://magic.link/)
|
|
195
|
+
|
|
196
|
+
```ts
|
|
197
|
+
import { ECDSAProvider, getRPCProviderOwner } from "@zerodev/sdk@alpha";
|
|
198
|
+
import { Magic } from "magic-sdk";
|
|
199
|
+
|
|
200
|
+
const magic = new Magic("MAGIC_API_KEY", {
|
|
201
|
+
// magic config...
|
|
202
|
+
});
|
|
203
|
+
|
|
204
|
+
let ecdsaProvider = await ECDSAProvider.init({
|
|
205
|
+
projectId, // zeroDev projectId
|
|
206
|
+
owner: getRPCProviderOwner(magic.rpcProvider),
|
|
207
|
+
});
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
### Using [Web3Auth](https://web3auth.io/)
|
|
211
|
+
|
|
212
|
+
```ts
|
|
213
|
+
import { ECDSAProvider, getRPCProviderOwner } from "@zerodev/sdk@alpha";
|
|
214
|
+
import { Web3Auth } from "@web3auth/modal";
|
|
215
|
+
|
|
216
|
+
const web3auth = new Web3Auth({
|
|
217
|
+
// web3auth config...
|
|
218
|
+
});
|
|
219
|
+
|
|
220
|
+
await web3auth.initModal();
|
|
221
|
+
|
|
222
|
+
web3auth.connect();
|
|
223
|
+
|
|
224
|
+
let ecdsaProvider = await ECDSAProvider.init({
|
|
225
|
+
projectId, // zeroDev projectId
|
|
226
|
+
owner: getRPCProviderOwner(web3auth.provider),
|
|
227
|
+
});
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
## Using validator plugins
|
|
231
|
+
|
|
232
|
+
### Kill Switch Validator
|
|
233
|
+
|
|
234
|
+
A designated guardian can "turn off" the account and set a new owner.
|
|
235
|
+
|
|
236
|
+
```ts
|
|
237
|
+
import { constants } from "@zerodev/sdk@alpha";
|
|
238
|
+
// 1. Get the default ecdsa validator provider
|
|
239
|
+
const ecdsaProvider = await ECDSAProvider.init({
|
|
240
|
+
projectId, // zeroDev projectId
|
|
241
|
+
owner,
|
|
242
|
+
});
|
|
243
|
+
|
|
244
|
+
// 2. Deploy the Kernel account if not already by sending an empty transaction
|
|
245
|
+
let result = await ecdsaProvider.sendUserOperation({
|
|
246
|
+
target: "0xADDRESS",
|
|
247
|
+
data: "0x",
|
|
248
|
+
});
|
|
249
|
+
await ecdsaProvider.waitForUserOperationTransaction(result.hash as Hex);
|
|
250
|
+
|
|
251
|
+
// 3. Initialize required variables
|
|
252
|
+
const accountAddress = await ecdsaProvider.getAccount().getAddress();
|
|
253
|
+
const selector = getFunctionSelector("toggleKillSwitch()");
|
|
254
|
+
|
|
255
|
+
// 4. Initialize KillSwitch Validator Provider
|
|
256
|
+
const blockerKillSwitchProvider = await KillSwitchProvider.init({
|
|
257
|
+
projectId, // zeroDev projectId
|
|
258
|
+
owner,
|
|
259
|
+
guardian, // Guardian signer
|
|
260
|
+
delaySeconds: 1000, // Delay in seconds
|
|
261
|
+
opts: {
|
|
262
|
+
accountConfig: {
|
|
263
|
+
accountAddress,
|
|
264
|
+
},
|
|
265
|
+
validatorConfig: {
|
|
266
|
+
mode: ValidatorMode.plugin,
|
|
267
|
+
executor: constants.KILL_SWITCH_ACTION, // Address of the executor contract
|
|
268
|
+
selector, // Function selector in the executor contract to toggleKillSwitch()
|
|
269
|
+
},
|
|
270
|
+
},
|
|
271
|
+
});
|
|
272
|
+
|
|
273
|
+
// 5. Get enable signature from default ECDSA validator provider and set it in KillSwitch Validator Provider
|
|
274
|
+
const enableSig = await ecdsaProvider
|
|
275
|
+
.getValidator()
|
|
276
|
+
.approveExecutor(
|
|
277
|
+
accountAddress,
|
|
278
|
+
selector,
|
|
279
|
+
constants.KILL_SWITCH_ACTION,
|
|
280
|
+
0,
|
|
281
|
+
0,
|
|
282
|
+
blockerKillSwitchProvider.getValidator()
|
|
283
|
+
);
|
|
284
|
+
|
|
285
|
+
blockerKillSwitchProvider.getValidator().setEnableSignature(enableSig);
|
|
286
|
+
|
|
287
|
+
// 6. Send the transaction to turn on the KillSwitch
|
|
288
|
+
result = await blockerKillSwitchProvider.sendUserOperation({
|
|
289
|
+
target: accountAddress,
|
|
290
|
+
data: selector,
|
|
291
|
+
});
|
|
292
|
+
|
|
293
|
+
await blockerKillSwitchProvider.waitForUserOperationTransaction(
|
|
294
|
+
result.hash as Hex
|
|
295
|
+
);
|
|
296
|
+
|
|
297
|
+
// 7. Get KillSwitch validator provider instance with SUDO mode
|
|
298
|
+
const sudoModeKillSwitchProvider = await KillSwitchProvider.init({
|
|
299
|
+
projectId, // zeroDev projectId
|
|
300
|
+
owner,
|
|
301
|
+
guardian,
|
|
302
|
+
delaySeconds: 0,
|
|
303
|
+
opts: {
|
|
304
|
+
accountConfig: {
|
|
305
|
+
accountAddress,
|
|
306
|
+
},
|
|
307
|
+
validatorConfig: {
|
|
308
|
+
mode: ValidatorMode.sudo,
|
|
309
|
+
executor: KILL_SWITCH_ACTION,
|
|
310
|
+
selector,
|
|
311
|
+
},
|
|
312
|
+
},
|
|
313
|
+
});
|
|
314
|
+
|
|
315
|
+
// 8. Send transaction to change the owner address
|
|
316
|
+
const changeOwnerdata = await ecdsaProvider.getEncodedEnableData(
|
|
317
|
+
"0xNEW_OWNER_ADDRESS"
|
|
318
|
+
);
|
|
319
|
+
let result = await sudoModeKillSwitchProvider.sendUserOperation({
|
|
320
|
+
target: accountAddress,
|
|
321
|
+
data: changeOwnerdata,
|
|
322
|
+
});
|
|
323
|
+
|
|
324
|
+
await sudoModeKillSwitchProvider.waitForUserOperationTransaction(
|
|
325
|
+
result.hash as Hex
|
|
326
|
+
);
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
### ERC165 Session Key Validator
|
|
330
|
+
|
|
331
|
+
```ts
|
|
332
|
+
// 1. Get the default ecdsa validator provider
|
|
333
|
+
const ecdsaProvider = await ECDSAProvider.init({
|
|
334
|
+
projectId, // zeroDev projectId
|
|
335
|
+
owner,
|
|
336
|
+
});
|
|
337
|
+
|
|
338
|
+
// 2. Deploy the Kernel account if not already by sending an empty transaction
|
|
339
|
+
let result = await ecdsaProvider.sendUserOperation({
|
|
340
|
+
target: "0xADDRESS",
|
|
341
|
+
data: "0x",
|
|
342
|
+
});
|
|
343
|
+
await ecdsaProvider.waitForUserOperationTransaction(result.hash as Hex);
|
|
344
|
+
|
|
345
|
+
// 3. Initialize required variables
|
|
346
|
+
const accountAddress = await ecdsaProvider.getAccount().getAddress();
|
|
347
|
+
const selector = getFunctionSelector(
|
|
348
|
+
"transferERC721Action(address, uint256, address)"
|
|
349
|
+
);
|
|
350
|
+
|
|
351
|
+
// 4. Initialize ERC165SessionKey Validator Provider
|
|
352
|
+
const erc165SessionKeyProvider = await ERC165SessionKeyProvider.init({
|
|
353
|
+
projectId, // ZeroDev projectId
|
|
354
|
+
owner,
|
|
355
|
+
sessionKey, // Session Key signer
|
|
356
|
+
sessionKeyData: {
|
|
357
|
+
selector, // Function selector in the executor contract to execute
|
|
358
|
+
erc165InterfaceId: "0x80ac58cd", // Supported interfaceId of the contract the executor calls
|
|
359
|
+
validAfter: 0,
|
|
360
|
+
validUntil: 0,
|
|
361
|
+
addressOffset: 16, // Address offest of the contract called by the executor in the calldata
|
|
362
|
+
},
|
|
363
|
+
opts: {
|
|
364
|
+
accountConfig: {
|
|
365
|
+
accountAddress,
|
|
366
|
+
},
|
|
367
|
+
validatorConfig: {
|
|
368
|
+
mode: ValidatorMode.plugin,
|
|
369
|
+
executor: constants.TOKEN_ACTION, // Address of the executor contract
|
|
370
|
+
selector, // Function selector in the executor contract to execute
|
|
371
|
+
},
|
|
372
|
+
},
|
|
373
|
+
});
|
|
374
|
+
|
|
375
|
+
// 5. Get enable signature from default ECDSA validator provider and set it in ERC165SessionKey Validator Provider
|
|
376
|
+
const enableSig = await ecdsaProvider
|
|
377
|
+
.getValidator()
|
|
378
|
+
.approveExecutor(
|
|
379
|
+
accountAddress,
|
|
380
|
+
selector,
|
|
381
|
+
constants.TOKEN_ACTION,
|
|
382
|
+
0,
|
|
383
|
+
0,
|
|
384
|
+
erc165SessionKeyProvider.getValidator()
|
|
385
|
+
);
|
|
386
|
+
|
|
387
|
+
erc165SessionKeyProvider.getValidator().setEnableSignature(enableSig);
|
|
388
|
+
|
|
389
|
+
// 6. Send the transaction
|
|
390
|
+
const { hash } = await erc165SessionKeyProvider.sendUserOperation({
|
|
391
|
+
target: accountAddress,
|
|
392
|
+
data: encodeFunctionData({
|
|
393
|
+
abi: TokenActionsAbi,
|
|
394
|
+
functionName: "transferERC721Action",
|
|
395
|
+
args: ["TOKEN_ADDRESS", "TOKEN_ID", "RECIPIENT_ADDRESS"],
|
|
396
|
+
}),
|
|
397
|
+
});
|
|
398
|
+
```
|
|
399
|
+
|
|
400
|
+
## Components
|
|
401
|
+
|
|
402
|
+
### Core Components
|
|
403
|
+
|
|
404
|
+
The primary interfaces are the `ZeroDevProvider`, `KernelSmartContractAccount` and `KernelBaseValidator`
|
|
405
|
+
|
|
406
|
+
The `ZeroDevProvider` is an ERC-1193 compliant Provider built on top of Alchemy's `SmartAccountProvider`
|
|
407
|
+
|
|
408
|
+
1. `sendUserOperation` -- this takes in `target`, `callData`, and an optional `value` which then constructs a UserOperation (UO), sends it, and returns the `hash` of the UO. It handles estimating gas, fetching fee data, (optionally) requesting paymasterAndData, and lastly signing. This is done via a middleware stack that runs in a specific order. The middleware order is `getDummyPaymasterData` => `estimateGas` => `getFeeData` => `getPaymasterAndData`. The paymaster fields are set to `0x` by default. They can be changed using `provider.withPaymasterMiddleware`.
|
|
409
|
+
2. `sendTransaction` -- this takes in a traditional Transaction Request object which then gets converted into a UO. Currently, the only data being used from the Transaction Request object is `from`, `to`, `data` and `value`. Support for other fields is coming soon.
|
|
410
|
+
|
|
411
|
+
`KernelSmartContractAccount` is Kernel's implementation of `BaseSmartContractAccount`. 6 main methods are implemented
|
|
412
|
+
|
|
413
|
+
1. `getDummySignature` -- this method should return a signature that will not `revert` during validation. It does not have to pass validation, just not cause the contract to revert. This is required for gas estimation so that the gas estimate are accurate.
|
|
414
|
+
2. `encodeExecute` -- this method should return the abi encoded function data for a call to your contract's `execute` method
|
|
415
|
+
3. `encodeExecuteDelegate` -- this method should return the abi encoded function data for a `delegate` call to your contract's `execute` method
|
|
416
|
+
4. `signMessage` -- this is used to sign UO Hashes
|
|
417
|
+
5. `signWithEip6492` -- this should return an ERC-191 and EIP-6492 compliant message used to personal_sign
|
|
418
|
+
6. `getAccountInitCode` -- this should return the init code that will be used to create an account if one does not exist. Usually this is the concatenation of the account's factory address and the abi encoded function data of the account factory's `createAccount` method.
|
|
419
|
+
|
|
420
|
+
The `KernelBaseValidator` is a plugin that modify how transactions are validated. It allows for extension and implementation of arbitrary validation logic. It implements 3 main methods:
|
|
421
|
+
|
|
422
|
+
1. `getAddress` -- this returns the address of the validator
|
|
423
|
+
2. `getOwner` -- this returns the eligible signer's address for the active smart wallet
|
|
424
|
+
3. `getSignature` -- this method signs the userop hash using signer object and then concats additional params based on validator mode.
|
|
425
|
+
|
|
426
|
+
## Contributing
|
|
427
|
+
|
|
428
|
+
1. clone the repo
|
|
429
|
+
2. run `yarn`
|
|
430
|
+
3. Make changes to packages
|
|
431
|
+
|
|
432
|
+
### Adding new custom validator plugin
|
|
433
|
+
|
|
434
|
+
1. Create a new validator class that extends `KernelBaseValidator` similar to [`ECDSAValidator`](`packages/accounts/src/kernel-zerodev/validator/ecdsa-validator.ts`).
|
|
435
|
+
|
|
436
|
+
2. Make sure to pass the `validatorAddress` of your validator to the `KernelBaseValidator` base class.
|
|
437
|
+
|
|
438
|
+
3. Create a new validator provider that extends `ValidatorProvider` similar to [`ECDSAValidatorProvider`](`packages/accounts/src/kernel-zerodev/validator-provider/ecdsa-provider.ts`).
|
|
439
|
+
|
|
440
|
+
4. Use the newly created validator provider as per above examples.
|
|
441
|
+
|
|
442
|
+
#### `KernelBaseValidator` methods to be implemented in your validator class
|
|
443
|
+
|
|
444
|
+
- `signer()` -- this method should return the signer as per your validator's implementation. For example, for Multi-Signature validator, this method should return one of the owner signer which is connected to the multisig wallet contract and currently using the DAPP.
|
|
445
|
+
- `getOwner()` -- this method should return the address of the signer. For example, for Multi-Signature validator, this method should return the address of the signer which is connected to the multisig wallet contract and currently using the DAPP.
|
|
446
|
+
- `getEnableData()` -- this method should return the bytes data for the `enable` method of your validator contract. For example, in ECDSA validator, this method returns `owner` address as bytes data. This method is used to enable the validator for the first time while creating the account wallet.
|
|
447
|
+
- `encodeEnable(enableData: Hex)` -- this method should return the abi encoded function data for the `enable` method of your validator contract. For example, in ECDSA validator, this method returns the abi encoded function data for the `enable` method with owner address as bytes param.
|
|
448
|
+
- `encodeDisable(disableData: Hex)` -- this method should return the abi encoded function data for the `disable` method of your validator contract. For example, in ECDSA validator, this method returns the abi encoded function data for the `disable` method with empty bytes param since ECDSA Validator doesn't require any param.
|
|
449
|
+
- `signMessage(message: Uint8Array | string | Hex)` -- this method should return the signature of the message using the connected signer.
|
|
450
|
+
- `signUserOp(userOp: UserOperationRequest)` -- this method should return the signature of the userOp hash using the connected signer.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export * from "./kernel-zerodev/abis/index.js";
|
|
2
|
+
export { ValidatorMode, KernelBaseValidator, } from "./kernel-zerodev/validator/base.js";
|
|
3
|
+
export * from "./kernel-zerodev/validator/index.js";
|
|
4
|
+
export type * from "./kernel-zerodev/validator/types.js";
|
|
5
|
+
export type { ECDSAValidatorParams } from "./kernel-zerodev/validator/ecdsa-validator.js";
|
|
6
|
+
export type { KillSwitchValidatorParams } from "./kernel-zerodev/validator/kill-switch-validator.js";
|
|
7
|
+
export type { ERC165SessionKeyValidatorParams } from "./kernel-zerodev/validator/erc165-session-key-validator.js";
|
|
8
|
+
export type { KernelBaseValidatorParams } from "./kernel-zerodev/validator/base.js";
|
|
9
|
+
export { ValidatorProvider } from "./kernel-zerodev/validator-provider/base.js";
|
|
10
|
+
export type { ValidatorProviderParams, ValidatorProviderParamsOpts, ExtendedValidatorProviderParams, } from "./kernel-zerodev/validator-provider/base.js";
|
|
11
|
+
export type * from "./kernel-zerodev/validator-provider/types.js";
|
|
12
|
+
export * from "./kernel-zerodev/validator-provider/index.js";
|
|
13
|
+
export type * from "./kernel-zerodev/paymaster/types.js";
|
|
14
|
+
export { KernelSmartContractAccount } from "./kernel-zerodev/account.js";
|
|
15
|
+
export type { KernelSmartAccountParams } from "./kernel-zerodev/account.js";
|
|
16
|
+
export { ZeroDevProvider } from "./kernel-zerodev/provider.js";
|
|
17
|
+
export * from "./kernel-zerodev/utils.js";
|
|
18
|
+
export { getChainId } from "./kernel-zerodev/api/index.js";
|
|
19
|
+
export { ZeroDevEthersProvider } from "./kernel-zerodev/ethers-provider/ethers-provider.js";
|
|
20
|
+
export * as constants from "./kernel-zerodev/constants.js";
|
|
21
|
+
export * from "./kernel-zerodev/owner/index.js";
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
19
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
20
|
+
};
|
|
21
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
22
|
+
if (mod && mod.__esModule) return mod;
|
|
23
|
+
var result = {};
|
|
24
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
25
|
+
__setModuleDefault(result, mod);
|
|
26
|
+
return result;
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.constants = exports.ZeroDevEthersProvider = exports.getChainId = exports.ZeroDevProvider = exports.KernelSmartContractAccount = exports.ValidatorProvider = exports.KernelBaseValidator = exports.ValidatorMode = void 0;
|
|
30
|
+
__exportStar(require("./kernel-zerodev/abis/index.js"), exports);
|
|
31
|
+
var base_js_1 = require("./kernel-zerodev/validator/base.js");
|
|
32
|
+
Object.defineProperty(exports, "ValidatorMode", { enumerable: true, get: function () { return base_js_1.ValidatorMode; } });
|
|
33
|
+
Object.defineProperty(exports, "KernelBaseValidator", { enumerable: true, get: function () { return base_js_1.KernelBaseValidator; } });
|
|
34
|
+
__exportStar(require("./kernel-zerodev/validator/index.js"), exports);
|
|
35
|
+
var base_js_2 = require("./kernel-zerodev/validator-provider/base.js");
|
|
36
|
+
Object.defineProperty(exports, "ValidatorProvider", { enumerable: true, get: function () { return base_js_2.ValidatorProvider; } });
|
|
37
|
+
__exportStar(require("./kernel-zerodev/validator-provider/index.js"), exports);
|
|
38
|
+
var account_js_1 = require("./kernel-zerodev/account.js");
|
|
39
|
+
Object.defineProperty(exports, "KernelSmartContractAccount", { enumerable: true, get: function () { return account_js_1.KernelSmartContractAccount; } });
|
|
40
|
+
var provider_js_1 = require("./kernel-zerodev/provider.js");
|
|
41
|
+
Object.defineProperty(exports, "ZeroDevProvider", { enumerable: true, get: function () { return provider_js_1.ZeroDevProvider; } });
|
|
42
|
+
__exportStar(require("./kernel-zerodev/utils.js"), exports);
|
|
43
|
+
var index_js_1 = require("./kernel-zerodev/api/index.js");
|
|
44
|
+
Object.defineProperty(exports, "getChainId", { enumerable: true, get: function () { return index_js_1.getChainId; } });
|
|
45
|
+
var ethers_provider_js_1 = require("./kernel-zerodev/ethers-provider/ethers-provider.js");
|
|
46
|
+
Object.defineProperty(exports, "ZeroDevEthersProvider", { enumerable: true, get: function () { return ethers_provider_js_1.ZeroDevEthersProvider; } });
|
|
47
|
+
exports.constants = __importStar(require("./kernel-zerodev/constants.js"));
|
|
48
|
+
__exportStar(require("./kernel-zerodev/owner/index.js"), exports);
|
|
49
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,iEAA+C;AAG/C,8DAG4C;AAF1C,wGAAA,aAAa,OAAA;AACb,8GAAA,mBAAmB,OAAA;AAErB,sEAAoD;AAQpD,uEAAgF;AAAvE,4GAAA,iBAAiB,OAAA;AAO1B,+EAA6D;AAI7D,0DAAyE;AAAhE,wHAAA,0BAA0B,OAAA;AAEnC,4DAA+D;AAAtD,8GAAA,eAAe,OAAA;AAGxB,4DAA0C;AAC1C,0DAA2D;AAAlD,sGAAA,UAAU,OAAA;AACnB,0FAA4F;AAAnF,2HAAA,qBAAqB,OAAA;AAE9B,2EAA2D;AAG3D,kEAAgD","sourcesContent":["// Add you exports here, make sure to export types separately from impls and use the `type` keyword when exporting them\n// Don't use wildcard exports, instead use named exports\n\n//kernel exports\nexport * from \"./kernel-zerodev/abis/index.js\";\n\n// Validator exports\nexport {\n ValidatorMode,\n KernelBaseValidator,\n} from \"./kernel-zerodev/validator/base.js\";\nexport * from \"./kernel-zerodev/validator/index.js\";\nexport type * from \"./kernel-zerodev/validator/types.js\";\nexport type { ECDSAValidatorParams } from \"./kernel-zerodev/validator/ecdsa-validator.js\";\nexport type { KillSwitchValidatorParams } from \"./kernel-zerodev/validator/kill-switch-validator.js\";\nexport type { ERC165SessionKeyValidatorParams } from \"./kernel-zerodev/validator/erc165-session-key-validator.js\";\nexport type { KernelBaseValidatorParams } from \"./kernel-zerodev/validator/base.js\";\n\n// Validator Provider exports\nexport { ValidatorProvider } from \"./kernel-zerodev/validator-provider/base.js\";\nexport type {\n ValidatorProviderParams,\n ValidatorProviderParamsOpts,\n ExtendedValidatorProviderParams,\n} from \"./kernel-zerodev/validator-provider/base.js\";\nexport type * from \"./kernel-zerodev/validator-provider/types.js\";\nexport * from \"./kernel-zerodev/validator-provider/index.js\";\n\n// Core exports\nexport type * from \"./kernel-zerodev/paymaster/types.js\";\nexport { KernelSmartContractAccount } from \"./kernel-zerodev/account.js\";\nexport type { KernelSmartAccountParams } from \"./kernel-zerodev/account.js\";\nexport { ZeroDevProvider } from \"./kernel-zerodev/provider.js\";\n\n// Utils exports\nexport * from \"./kernel-zerodev/utils.js\";\nexport { getChainId } from \"./kernel-zerodev/api/index.js\";\nexport { ZeroDevEthersProvider } from \"./kernel-zerodev/ethers-provider/ethers-provider.js\";\n\nexport * as constants from \"./kernel-zerodev/constants.js\";\n\n// Owner exports\nexport * from \"./kernel-zerodev/owner/index.js\";\n"]}
|