@zerodev/sdk 4.7.3 → 5.0.0-alpha-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.
Files changed (766) hide show
  1. package/_cjs/accounts/addressToEmptyAccount.js +25 -0
  2. package/_cjs/accounts/addressToEmptyAccount.js.map +1 -0
  3. package/_cjs/accounts/index.js +14 -0
  4. package/_cjs/accounts/index.js.map +1 -0
  5. package/{dist/cjs/kernel-zerodev/abis → _cjs/accounts/kernel/abi}/KernelAccountAbi.js +274 -158
  6. package/_cjs/accounts/kernel/abi/KernelAccountAbi.js.map +1 -0
  7. package/{dist/cjs/kernel-zerodev/abis → _cjs/accounts/kernel/abi}/KernelFactoryAbi.js +87 -87
  8. package/_cjs/accounts/kernel/abi/KernelFactoryAbi.js.map +1 -0
  9. package/{dist/cjs/kernel-zerodev/abis → _cjs/accounts/kernel/abi}/TokenActionsAbi.js +18 -18
  10. package/_cjs/accounts/kernel/abi/TokenActionsAbi.js.map +1 -0
  11. package/_cjs/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js +738 -0
  12. package/_cjs/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js.map +1 -0
  13. package/_cjs/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.js +15 -0
  14. package/_cjs/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.js.map +1 -0
  15. package/_cjs/accounts/kernel/createKernelAccount.js +511 -0
  16. package/_cjs/accounts/kernel/createKernelAccount.js.map +1 -0
  17. package/_cjs/accounts/kernel/v1/createKernelV1Account.js +201 -0
  18. package/_cjs/accounts/kernel/v1/createKernelV1Account.js.map +1 -0
  19. package/_cjs/accounts/kernel/v1/multisend.js +31 -0
  20. package/_cjs/accounts/kernel/v1/multisend.js.map +1 -0
  21. package/_cjs/accounts/utils/6492.js +47 -0
  22. package/_cjs/accounts/utils/6492.js.map +1 -0
  23. package/_cjs/accounts/utils/index.js +15 -0
  24. package/_cjs/accounts/utils/index.js.map +1 -0
  25. package/_cjs/accounts/utils/toKernelPluginManager.js +270 -0
  26. package/_cjs/accounts/utils/toKernelPluginManager.js.map +1 -0
  27. package/_cjs/actions/account-client/signUserOperation.js +16 -0
  28. package/_cjs/actions/account-client/signUserOperation.js.map +1 -0
  29. package/_cjs/actions/index.js +10 -0
  30. package/_cjs/actions/index.js.map +1 -0
  31. package/_cjs/actions/paymaster/estimateGasInERC20.js +26 -0
  32. package/_cjs/actions/paymaster/estimateGasInERC20.js.map +1 -0
  33. package/_cjs/actions/paymaster/sponsorUserOperation.js +43 -0
  34. package/_cjs/actions/paymaster/sponsorUserOperation.js.map +1 -0
  35. package/_cjs/clients/decorators/index.js +6 -0
  36. package/_cjs/clients/decorators/index.js.map +1 -0
  37. package/_cjs/clients/decorators/kernel.js +24 -0
  38. package/_cjs/clients/decorators/kernel.js.map +1 -0
  39. package/_cjs/clients/index.js +8 -0
  40. package/_cjs/clients/index.js.map +1 -0
  41. package/_cjs/clients/kernelAccountClient.js +20 -0
  42. package/_cjs/clients/kernelAccountClient.js.map +1 -0
  43. package/_cjs/clients/paymasterClient.js +17 -0
  44. package/_cjs/clients/paymasterClient.js.map +1 -0
  45. package/_cjs/constants.js +40 -0
  46. package/_cjs/constants.js.map +1 -0
  47. package/_cjs/gasTokenAddresses.js +358 -0
  48. package/_cjs/gasTokenAddresses.js.map +1 -0
  49. package/_cjs/index.js +38 -0
  50. package/_cjs/index.js.map +1 -0
  51. package/_cjs/package.json +1 -0
  52. package/_cjs/providers/KernelEIP1193Provider.js +62 -0
  53. package/_cjs/providers/KernelEIP1193Provider.js.map +1 -0
  54. package/_cjs/providers/index.js +6 -0
  55. package/_cjs/providers/index.js.map +1 -0
  56. package/_cjs/types/index.js +6 -0
  57. package/_cjs/types/index.js.map +1 -0
  58. package/_cjs/types/kernel.js +10 -0
  59. package/_cjs/types/kernel.js.map +1 -0
  60. package/_cjs/utils.js +84 -0
  61. package/_cjs/utils.js.map +1 -0
  62. package/_esm/accounts/addressToEmptyAccount.js +21 -0
  63. package/_esm/accounts/addressToEmptyAccount.js.map +1 -0
  64. package/_esm/accounts/index.js +5 -0
  65. package/_esm/accounts/index.js.map +1 -0
  66. package/_esm/accounts/kernel/abi/KernelAccountAbi.js +814 -0
  67. package/_esm/accounts/kernel/abi/KernelAccountAbi.js.map +1 -0
  68. package/{dist/esm/kernel-zerodev/abis → _esm/accounts/kernel/abi}/KernelFactoryAbi.js +87 -87
  69. package/_esm/accounts/kernel/abi/KernelFactoryAbi.js.map +1 -0
  70. package/{dist/esm/kernel-zerodev/abis → _esm/accounts/kernel/abi}/TokenActionsAbi.js +18 -18
  71. package/_esm/accounts/kernel/abi/TokenActionsAbi.js.map +1 -0
  72. package/_esm/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js +735 -0
  73. package/_esm/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js.map +1 -0
  74. package/_esm/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.js +12 -0
  75. package/_esm/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.js.map +1 -0
  76. package/_esm/accounts/kernel/createKernelAccount.js +559 -0
  77. package/_esm/accounts/kernel/createKernelAccount.js.map +1 -0
  78. package/_esm/accounts/kernel/v1/createKernelV1Account.js +208 -0
  79. package/_esm/accounts/kernel/v1/createKernelV1Account.js.map +1 -0
  80. package/_esm/accounts/kernel/v1/multisend.js +28 -0
  81. package/_esm/accounts/kernel/v1/multisend.js.map +1 -0
  82. package/_esm/accounts/utils/6492.js +50 -0
  83. package/_esm/accounts/utils/6492.js.map +1 -0
  84. package/_esm/accounts/utils/index.js +8 -0
  85. package/_esm/accounts/utils/index.js.map +1 -0
  86. package/_esm/accounts/utils/toKernelPluginManager.js +267 -0
  87. package/_esm/accounts/utils/toKernelPluginManager.js.map +1 -0
  88. package/_esm/actions/account-client/signUserOperation.js +12 -0
  89. package/_esm/actions/account-client/signUserOperation.js.map +1 -0
  90. package/_esm/actions/index.js +4 -0
  91. package/_esm/actions/index.js.map +1 -0
  92. package/_esm/actions/paymaster/estimateGasInERC20.js +25 -0
  93. package/_esm/actions/paymaster/estimateGasInERC20.js.map +1 -0
  94. package/_esm/actions/paymaster/sponsorUserOperation.js +61 -0
  95. package/_esm/actions/paymaster/sponsorUserOperation.js.map +1 -0
  96. package/_esm/clients/decorators/index.js +2 -0
  97. package/_esm/clients/decorators/index.js.map +1 -0
  98. package/_esm/clients/decorators/kernel.js +20 -0
  99. package/_esm/clients/decorators/kernel.js.map +1 -0
  100. package/_esm/clients/index.js +3 -0
  101. package/_esm/clients/index.js.map +1 -0
  102. package/_esm/clients/kernelAccountClient.js +17 -0
  103. package/_esm/clients/kernelAccountClient.js.map +1 -0
  104. package/_esm/clients/paymasterClient.js +30 -0
  105. package/_esm/clients/paymasterClient.js.map +1 -0
  106. package/_esm/constants.js +38 -0
  107. package/_esm/constants.js.map +1 -0
  108. package/_esm/gasTokenAddresses.js +355 -0
  109. package/_esm/gasTokenAddresses.js.map +1 -0
  110. package/_esm/index.js +17 -0
  111. package/_esm/index.js.map +1 -0
  112. package/_esm/package.json +1 -0
  113. package/_esm/providers/KernelEIP1193Provider.js +60 -0
  114. package/_esm/providers/KernelEIP1193Provider.js.map +1 -0
  115. package/_esm/providers/index.js +2 -0
  116. package/_esm/providers/index.js.map +1 -0
  117. package/_esm/types/index.js +2 -0
  118. package/_esm/types/index.js.map +1 -0
  119. package/_esm/types/kernel.js +9 -0
  120. package/_esm/types/kernel.js.map +1 -0
  121. package/_esm/utils.js +76 -0
  122. package/_esm/utils.js.map +1 -0
  123. package/_types/accounts/addressToEmptyAccount.d.ts +4 -0
  124. package/_types/accounts/addressToEmptyAccount.d.ts.map +1 -0
  125. package/_types/accounts/index.d.ts +5 -0
  126. package/_types/accounts/index.d.ts.map +1 -0
  127. package/{dist/cjs/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelAccountAbi.d.ts +96 -0
  128. package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelAccountAbi.d.ts.map +1 -1
  129. package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelFactoryAbi.d.ts.map +1 -1
  130. package/_types/accounts/kernel/abi/TokenActionsAbi.d.ts.map +1 -0
  131. package/_types/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.d.ts +843 -0
  132. package/_types/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.d.ts.map +1 -0
  133. package/_types/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.d.ts +16 -0
  134. package/_types/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.d.ts.map +1 -0
  135. package/_types/accounts/kernel/createKernelAccount.d.ts +92 -0
  136. package/_types/accounts/kernel/createKernelAccount.d.ts.map +1 -0
  137. package/_types/accounts/kernel/v1/createKernelV1Account.d.ts +11 -0
  138. package/_types/accounts/kernel/v1/createKernelV1Account.d.ts.map +1 -0
  139. package/_types/accounts/kernel/v1/multisend.d.ts +13 -0
  140. package/_types/accounts/kernel/v1/multisend.d.ts.map +1 -0
  141. package/_types/accounts/utils/6492.d.ts +18 -0
  142. package/_types/accounts/utils/6492.d.ts.map +1 -0
  143. package/_types/accounts/utils/index.d.ts +5 -0
  144. package/_types/accounts/utils/index.d.ts.map +1 -0
  145. package/_types/accounts/utils/toKernelPluginManager.d.ts +6 -0
  146. package/_types/accounts/utils/toKernelPluginManager.d.ts.map +1 -0
  147. package/_types/actions/account-client/signUserOperation.d.ts +10 -0
  148. package/_types/actions/account-client/signUserOperation.d.ts.map +1 -0
  149. package/_types/actions/index.d.ts +4 -0
  150. package/_types/actions/index.d.ts.map +1 -0
  151. package/_types/actions/paymaster/estimateGasInERC20.d.ts +21 -0
  152. package/_types/actions/paymaster/estimateGasInERC20.d.ts.map +1 -0
  153. package/_types/actions/paymaster/sponsorUserOperation.d.ts +18 -0
  154. package/_types/actions/paymaster/sponsorUserOperation.d.ts.map +1 -0
  155. package/_types/clients/decorators/index.d.ts +2 -0
  156. package/_types/clients/decorators/index.d.ts.map +1 -0
  157. package/_types/clients/decorators/kernel.d.ts +28 -0
  158. package/_types/clients/decorators/kernel.d.ts.map +1 -0
  159. package/_types/clients/index.d.ts +3 -0
  160. package/_types/clients/index.d.ts.map +1 -0
  161. package/_types/clients/kernelAccountClient.d.ts +359 -0
  162. package/_types/clients/kernelAccountClient.d.ts.map +1 -0
  163. package/_types/clients/paymasterClient.d.ts +39 -0
  164. package/_types/clients/paymasterClient.d.ts.map +1 -0
  165. package/_types/constants.d.ts +30 -0
  166. package/_types/constants.d.ts.map +1 -0
  167. package/_types/gasTokenAddresses.d.ts +27 -0
  168. package/_types/gasTokenAddresses.d.ts.map +1 -0
  169. package/_types/index.d.ts +16 -0
  170. package/_types/index.d.ts.map +1 -0
  171. package/_types/providers/KernelEIP1193Provider.d.ts +15 -0
  172. package/_types/providers/KernelEIP1193Provider.d.ts.map +1 -0
  173. package/_types/providers/index.d.ts +2 -0
  174. package/_types/providers/index.d.ts.map +1 -0
  175. package/_types/types/index.d.ts +3 -0
  176. package/_types/types/index.d.ts.map +1 -0
  177. package/_types/types/kernel.d.ts +136 -0
  178. package/_types/types/kernel.d.ts.map +1 -0
  179. package/_types/utils.d.ts +22 -0
  180. package/_types/utils.d.ts.map +1 -0
  181. package/accounts/addressToEmptyAccount.ts +24 -0
  182. package/accounts/index.ts +9 -0
  183. package/{dist/esm/kernel-zerodev/abis/KernelAccountAbi.js → accounts/kernel/abi/KernelAccountAbi.ts} +282 -159
  184. package/accounts/kernel/abi/KernelFactoryAbi.ts +380 -0
  185. package/accounts/kernel/abi/TokenActionsAbi.ts +81 -0
  186. package/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.ts +736 -0
  187. package/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.ts +11 -0
  188. package/accounts/kernel/createKernelAccount.ts +842 -0
  189. package/accounts/kernel/v1/createKernelV1Account.ts +315 -0
  190. package/accounts/kernel/v1/multisend.ts +43 -0
  191. package/accounts/utils/6492.ts +96 -0
  192. package/accounts/utils/index.ts +12 -0
  193. package/accounts/utils/toKernelPluginManager.ts +369 -0
  194. package/actions/account-client/signUserOperation.ts +71 -0
  195. package/actions/index.ts +17 -0
  196. package/actions/paymaster/estimateGasInERC20.ts +58 -0
  197. package/actions/paymaster/sponsorUserOperation.ts +143 -0
  198. package/clients/decorators/index.ts +4 -0
  199. package/clients/decorators/kernel.ts +97 -0
  200. package/clients/index.ts +9 -0
  201. package/clients/kernelAccountClient.ts +87 -0
  202. package/clients/paymasterClient.ts +57 -0
  203. package/constants.ts +38 -0
  204. package/gasTokenAddresses.ts +670 -0
  205. package/index.ts +45 -0
  206. package/package.json +95 -71
  207. package/providers/KernelEIP1193Provider.ts +79 -0
  208. package/providers/index.ts +1 -0
  209. package/types/index.ts +12 -0
  210. package/types/kernel.ts +186 -0
  211. package/utils.ts +114 -0
  212. package/README.md +0 -5
  213. package/dist/cjs/index.d.ts +0 -22
  214. package/dist/cjs/index.js +0 -61
  215. package/dist/cjs/index.js.map +0 -1
  216. package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +0 -162
  217. package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js +0 -215
  218. package/dist/cjs/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js.map +0 -1
  219. package/dist/cjs/kernel-zerodev/abis/ERC20Abi.d.ts +0 -231
  220. package/dist/cjs/kernel-zerodev/abis/ERC20Abi.js +0 -157
  221. package/dist/cjs/kernel-zerodev/abis/ERC20Abi.js.map +0 -1
  222. package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +0 -158
  223. package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.js +0 -210
  224. package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.js.map +0 -1
  225. package/dist/cjs/kernel-zerodev/abis/KernelAccountAbi.js.map +0 -1
  226. package/dist/cjs/kernel-zerodev/abis/KernelFactoryAbi.d.ts +0 -293
  227. package/dist/cjs/kernel-zerodev/abis/KernelFactoryAbi.js.map +0 -1
  228. package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +0 -150
  229. package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.js +0 -200
  230. package/dist/cjs/kernel-zerodev/abis/KillSwitchValidatorAbi.js.map +0 -1
  231. package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.d.ts +0 -15
  232. package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.js +0 -24
  233. package/dist/cjs/kernel-zerodev/abis/MultiSendAbi.js.map +0 -1
  234. package/dist/cjs/kernel-zerodev/abis/RecoveryActionAbi.d.ts +0 -15
  235. package/dist/cjs/kernel-zerodev/abis/RecoveryActionAbi.js +0 -24
  236. package/dist/cjs/kernel-zerodev/abis/RecoveryActionAbi.js.map +0 -1
  237. package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +0 -212
  238. package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.js +0 -281
  239. package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.js.map +0 -1
  240. package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.d.ts +0 -237
  241. package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.js +0 -161
  242. package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.js.map +0 -1
  243. package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.d.ts +0 -287
  244. package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.js +0 -377
  245. package/dist/cjs/kernel-zerodev/abis/Test_ERC721Abi.js.map +0 -1
  246. package/dist/cjs/kernel-zerodev/abis/TokenActionsAbi.d.ts +0 -63
  247. package/dist/cjs/kernel-zerodev/abis/TokenActionsAbi.js.map +0 -1
  248. package/dist/cjs/kernel-zerodev/abis/WeightedValidatorAbi.d.ts +0 -375
  249. package/dist/cjs/kernel-zerodev/abis/WeightedValidatorAbi.js +0 -272
  250. package/dist/cjs/kernel-zerodev/abis/WeightedValidatorAbi.js.map +0 -1
  251. package/dist/cjs/kernel-zerodev/abis/index.d.ts +0 -8
  252. package/dist/cjs/kernel-zerodev/abis/index.js +0 -18
  253. package/dist/cjs/kernel-zerodev/abis/index.js.map +0 -1
  254. package/dist/cjs/kernel-zerodev/account.d.ts +0 -51
  255. package/dist/cjs/kernel-zerodev/account.js +0 -323
  256. package/dist/cjs/kernel-zerodev/account.js.map +0 -1
  257. package/dist/cjs/kernel-zerodev/api/index.d.ts +0 -5
  258. package/dist/cjs/kernel-zerodev/api/index.js +0 -68
  259. package/dist/cjs/kernel-zerodev/api/index.js.map +0 -1
  260. package/dist/cjs/kernel-zerodev/client/create-client.d.ts +0 -12
  261. package/dist/cjs/kernel-zerodev/client/create-client.js +0 -54
  262. package/dist/cjs/kernel-zerodev/client/create-client.js.map +0 -1
  263. package/dist/cjs/kernel-zerodev/constants.d.ts +0 -31
  264. package/dist/cjs/kernel-zerodev/constants.js +0 -79
  265. package/dist/cjs/kernel-zerodev/constants.js.map +0 -1
  266. package/dist/cjs/kernel-zerodev/errors.d.ts +0 -5
  267. package/dist/cjs/kernel-zerodev/errors.js +0 -12
  268. package/dist/cjs/kernel-zerodev/errors.js.map +0 -1
  269. package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.d.ts +0 -31
  270. package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.js +0 -147
  271. package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.js.map +0 -1
  272. package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.d.ts +0 -22
  273. package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.js +0 -116
  274. package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.js.map +0 -1
  275. package/dist/cjs/kernel-zerodev/middleware/gas-estimator.d.ts +0 -24
  276. package/dist/cjs/kernel-zerodev/middleware/gas-estimator.js +0 -160
  277. package/dist/cjs/kernel-zerodev/middleware/gas-estimator.js.map +0 -1
  278. package/dist/cjs/kernel-zerodev/middleware/paymaster.d.ts +0 -5
  279. package/dist/cjs/kernel-zerodev/middleware/paymaster.js +0 -63
  280. package/dist/cjs/kernel-zerodev/middleware/paymaster.js.map +0 -1
  281. package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.d.ts +0 -11
  282. package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.js +0 -80
  283. package/dist/cjs/kernel-zerodev/owner/getCustodialOwner.js.map +0 -1
  284. package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.d.ts +0 -2
  285. package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.js +0 -18
  286. package/dist/cjs/kernel-zerodev/owner/getRPCProviderOwner.js.map +0 -1
  287. package/dist/cjs/kernel-zerodev/owner/index.d.ts +0 -2
  288. package/dist/cjs/kernel-zerodev/owner/index.js +0 -8
  289. package/dist/cjs/kernel-zerodev/owner/index.js.map +0 -1
  290. package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +0 -8
  291. package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.js +0 -74
  292. package/dist/cjs/kernel-zerodev/owner/passkey/createPasskeyOwner.js.map +0 -1
  293. package/dist/cjs/kernel-zerodev/owner/passkey/exceptions.d.ts +0 -3
  294. package/dist/cjs/kernel-zerodev/owner/passkey/exceptions.js +0 -16
  295. package/dist/cjs/kernel-zerodev/owner/passkey/exceptions.js.map +0 -1
  296. package/dist/cjs/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts +0 -6
  297. package/dist/cjs/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js +0 -48
  298. package/dist/cjs/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js.map +0 -1
  299. package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +0 -7
  300. package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.js +0 -44
  301. package/dist/cjs/kernel-zerodev/owner/passkey/getPasskeyOwner.js.map +0 -1
  302. package/dist/cjs/kernel-zerodev/owner/passkey/index.d.ts +0 -4
  303. package/dist/cjs/kernel-zerodev/owner/passkey/index.js +0 -12
  304. package/dist/cjs/kernel-zerodev/owner/passkey/index.js.map +0 -1
  305. package/dist/cjs/kernel-zerodev/owner/passkey/types.d.ts +0 -12
  306. package/dist/cjs/kernel-zerodev/owner/passkey/types.js +0 -3
  307. package/dist/cjs/kernel-zerodev/owner/passkey/types.js.map +0 -1
  308. package/dist/cjs/kernel-zerodev/owner/passkey/utils.d.ts +0 -14
  309. package/dist/cjs/kernel-zerodev/owner/passkey/utils.js +0 -114
  310. package/dist/cjs/kernel-zerodev/owner/passkey/utils.js.map +0 -1
  311. package/dist/cjs/kernel-zerodev/paymaster/base.d.ts +0 -18
  312. package/dist/cjs/kernel-zerodev/paymaster/base.js +0 -63
  313. package/dist/cjs/kernel-zerodev/paymaster/base.js.map +0 -1
  314. package/dist/cjs/kernel-zerodev/paymaster/index.d.ts +0 -3
  315. package/dist/cjs/kernel-zerodev/paymaster/index.js +0 -10
  316. package/dist/cjs/kernel-zerodev/paymaster/index.js.map +0 -1
  317. package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.d.ts +0 -15
  318. package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.js +0 -188
  319. package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.js.map +0 -1
  320. package/dist/cjs/kernel-zerodev/paymaster/types.d.ts +0 -29
  321. package/dist/cjs/kernel-zerodev/paymaster/types.js +0 -3
  322. package/dist/cjs/kernel-zerodev/paymaster/types.js.map +0 -1
  323. package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.d.ts +0 -8
  324. package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.js +0 -22
  325. package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.js.map +0 -1
  326. package/dist/cjs/kernel-zerodev/provider.d.ts +0 -57
  327. package/dist/cjs/kernel-zerodev/provider.js +0 -387
  328. package/dist/cjs/kernel-zerodev/provider.js.map +0 -1
  329. package/dist/cjs/kernel-zerodev/signer/empty-account.d.ts +0 -10
  330. package/dist/cjs/kernel-zerodev/signer/empty-account.js +0 -43
  331. package/dist/cjs/kernel-zerodev/signer/empty-account.js.map +0 -1
  332. package/dist/cjs/kernel-zerodev/types.d.ts +0 -7
  333. package/dist/cjs/kernel-zerodev/types.js +0 -3
  334. package/dist/cjs/kernel-zerodev/types.js.map +0 -1
  335. package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.d.ts +0 -5
  336. package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.js +0 -106
  337. package/dist/cjs/kernel-zerodev/utils/ERC4337-utils.js.map +0 -1
  338. package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +0 -15
  339. package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.js +0 -33
  340. package/dist/cjs/kernel-zerodev/utils/calc-pre-verification-gas.js.map +0 -1
  341. package/dist/cjs/kernel-zerodev/utils/custom-chains.d.ts +0 -92
  342. package/dist/cjs/kernel-zerodev/utils/custom-chains.js +0 -84
  343. package/dist/cjs/kernel-zerodev/utils/custom-chains.js.map +0 -1
  344. package/dist/cjs/kernel-zerodev/utils.d.ts +0 -20
  345. package/dist/cjs/kernel-zerodev/utils.js +0 -119
  346. package/dist/cjs/kernel-zerodev/utils.js.map +0 -1
  347. package/dist/cjs/kernel-zerodev/validator/base.d.ts +0 -56
  348. package/dist/cjs/kernel-zerodev/validator/base.js +0 -276
  349. package/dist/cjs/kernel-zerodev/validator/base.js.map +0 -1
  350. package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.d.ts +0 -20
  351. package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.js +0 -97
  352. package/dist/cjs/kernel-zerodev/validator/ecdsa-validator.js.map +0 -1
  353. package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.d.ts +0 -29
  354. package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.js +0 -118
  355. package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.js.map +0 -1
  356. package/dist/cjs/kernel-zerodev/validator/index.d.ts +0 -8
  357. package/dist/cjs/kernel-zerodev/validator/index.js +0 -21
  358. package/dist/cjs/kernel-zerodev/validator/index.js.map +0 -1
  359. package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.d.ts +0 -22
  360. package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.js +0 -122
  361. package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.js.map +0 -1
  362. package/dist/cjs/kernel-zerodev/validator/recovery-validator.d.ts +0 -58
  363. package/dist/cjs/kernel-zerodev/validator/recovery-validator.js +0 -365
  364. package/dist/cjs/kernel-zerodev/validator/recovery-validator.js.map +0 -1
  365. package/dist/cjs/kernel-zerodev/validator/session-key-validator.d.ts +0 -84
  366. package/dist/cjs/kernel-zerodev/validator/session-key-validator.js +0 -501
  367. package/dist/cjs/kernel-zerodev/validator/session-key-validator.js.map +0 -1
  368. package/dist/cjs/kernel-zerodev/validator/types.d.ts +0 -56
  369. package/dist/cjs/kernel-zerodev/validator/types.js +0 -3
  370. package/dist/cjs/kernel-zerodev/validator/types.js.map +0 -1
  371. package/dist/cjs/kernel-zerodev/validator-provider/base.d.ts +0 -29
  372. package/dist/cjs/kernel-zerodev/validator-provider/base.js +0 -129
  373. package/dist/cjs/kernel-zerodev/validator-provider/base.js.map +0 -1
  374. package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +0 -8
  375. package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.js +0 -61
  376. package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.js.map +0 -1
  377. package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +0 -8
  378. package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.js +0 -65
  379. package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.js.map +0 -1
  380. package/dist/cjs/kernel-zerodev/validator-provider/index.d.ts +0 -8
  381. package/dist/cjs/kernel-zerodev/validator-provider/index.js +0 -21
  382. package/dist/cjs/kernel-zerodev/validator-provider/index.js.map +0 -1
  383. package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +0 -8
  384. package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.js +0 -65
  385. package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.js.map +0 -1
  386. package/dist/cjs/kernel-zerodev/validator-provider/recovery-provider.d.ts +0 -28
  387. package/dist/cjs/kernel-zerodev/validator-provider/recovery-provider.js +0 -298
  388. package/dist/cjs/kernel-zerodev/validator-provider/recovery-provider.js.map +0 -1
  389. package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.d.ts +0 -18
  390. package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.js +0 -115
  391. package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.js.map +0 -1
  392. package/dist/cjs/kernel-zerodev/validator-provider/types.d.ts +0 -29
  393. package/dist/cjs/kernel-zerodev/validator-provider/types.js +0 -3
  394. package/dist/cjs/kernel-zerodev/validator-provider/types.js.map +0 -1
  395. package/dist/cjs/package.json +0 -1
  396. package/dist/esm/index.d.ts +0 -22
  397. package/dist/esm/index.js +0 -17
  398. package/dist/esm/index.js.map +0 -1
  399. package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +0 -162
  400. package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js +0 -212
  401. package/dist/esm/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.js.map +0 -1
  402. package/dist/esm/kernel-zerodev/abis/ERC20Abi.d.ts +0 -231
  403. package/dist/esm/kernel-zerodev/abis/ERC20Abi.js +0 -154
  404. package/dist/esm/kernel-zerodev/abis/ERC20Abi.js.map +0 -1
  405. package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +0 -158
  406. package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.js +0 -207
  407. package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.js.map +0 -1
  408. package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.d.ts +0 -534
  409. package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.js.map +0 -1
  410. package/dist/esm/kernel-zerodev/abis/KernelFactoryAbi.d.ts +0 -293
  411. package/dist/esm/kernel-zerodev/abis/KernelFactoryAbi.js.map +0 -1
  412. package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +0 -150
  413. package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.js +0 -197
  414. package/dist/esm/kernel-zerodev/abis/KillSwitchValidatorAbi.js.map +0 -1
  415. package/dist/esm/kernel-zerodev/abis/MultiSendAbi.d.ts +0 -15
  416. package/dist/esm/kernel-zerodev/abis/MultiSendAbi.js +0 -21
  417. package/dist/esm/kernel-zerodev/abis/MultiSendAbi.js.map +0 -1
  418. package/dist/esm/kernel-zerodev/abis/RecoveryActionAbi.d.ts +0 -15
  419. package/dist/esm/kernel-zerodev/abis/RecoveryActionAbi.js +0 -21
  420. package/dist/esm/kernel-zerodev/abis/RecoveryActionAbi.js.map +0 -1
  421. package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +0 -212
  422. package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.js +0 -278
  423. package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.js.map +0 -1
  424. package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.d.ts +0 -237
  425. package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.js +0 -158
  426. package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.js.map +0 -1
  427. package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.d.ts +0 -287
  428. package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.js +0 -374
  429. package/dist/esm/kernel-zerodev/abis/Test_ERC721Abi.js.map +0 -1
  430. package/dist/esm/kernel-zerodev/abis/TokenActionsAbi.d.ts +0 -63
  431. package/dist/esm/kernel-zerodev/abis/TokenActionsAbi.js.map +0 -1
  432. package/dist/esm/kernel-zerodev/abis/WeightedValidatorAbi.d.ts +0 -375
  433. package/dist/esm/kernel-zerodev/abis/WeightedValidatorAbi.js +0 -269
  434. package/dist/esm/kernel-zerodev/abis/WeightedValidatorAbi.js.map +0 -1
  435. package/dist/esm/kernel-zerodev/abis/index.d.ts +0 -8
  436. package/dist/esm/kernel-zerodev/abis/index.js +0 -9
  437. package/dist/esm/kernel-zerodev/abis/index.js.map +0 -1
  438. package/dist/esm/kernel-zerodev/account.d.ts +0 -51
  439. package/dist/esm/kernel-zerodev/account.js +0 -319
  440. package/dist/esm/kernel-zerodev/account.js.map +0 -1
  441. package/dist/esm/kernel-zerodev/api/index.d.ts +0 -5
  442. package/dist/esm/kernel-zerodev/api/index.js +0 -58
  443. package/dist/esm/kernel-zerodev/api/index.js.map +0 -1
  444. package/dist/esm/kernel-zerodev/client/create-client.d.ts +0 -12
  445. package/dist/esm/kernel-zerodev/client/create-client.js +0 -50
  446. package/dist/esm/kernel-zerodev/client/create-client.js.map +0 -1
  447. package/dist/esm/kernel-zerodev/constants.d.ts +0 -31
  448. package/dist/esm/kernel-zerodev/constants.js +0 -76
  449. package/dist/esm/kernel-zerodev/constants.js.map +0 -1
  450. package/dist/esm/kernel-zerodev/errors.d.ts +0 -5
  451. package/dist/esm/kernel-zerodev/errors.js +0 -6
  452. package/dist/esm/kernel-zerodev/errors.js.map +0 -1
  453. package/dist/esm/kernel-zerodev/ethers-provider/account-signer.d.ts +0 -31
  454. package/dist/esm/kernel-zerodev/ethers-provider/account-signer.js +0 -145
  455. package/dist/esm/kernel-zerodev/ethers-provider/account-signer.js.map +0 -1
  456. package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.d.ts +0 -22
  457. package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.js +0 -112
  458. package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.js.map +0 -1
  459. package/dist/esm/kernel-zerodev/middleware/gas-estimator.d.ts +0 -24
  460. package/dist/esm/kernel-zerodev/middleware/gas-estimator.js +0 -152
  461. package/dist/esm/kernel-zerodev/middleware/gas-estimator.js.map +0 -1
  462. package/dist/esm/kernel-zerodev/middleware/paymaster.d.ts +0 -5
  463. package/dist/esm/kernel-zerodev/middleware/paymaster.js +0 -59
  464. package/dist/esm/kernel-zerodev/middleware/paymaster.js.map +0 -1
  465. package/dist/esm/kernel-zerodev/owner/getCustodialOwner.d.ts +0 -11
  466. package/dist/esm/kernel-zerodev/owner/getCustodialOwner.js +0 -73
  467. package/dist/esm/kernel-zerodev/owner/getCustodialOwner.js.map +0 -1
  468. package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.d.ts +0 -2
  469. package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.js +0 -15
  470. package/dist/esm/kernel-zerodev/owner/getRPCProviderOwner.js.map +0 -1
  471. package/dist/esm/kernel-zerodev/owner/index.d.ts +0 -2
  472. package/dist/esm/kernel-zerodev/owner/index.js +0 -3
  473. package/dist/esm/kernel-zerodev/owner/index.js.map +0 -1
  474. package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +0 -8
  475. package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.js +0 -67
  476. package/dist/esm/kernel-zerodev/owner/passkey/createPasskeyOwner.js.map +0 -1
  477. package/dist/esm/kernel-zerodev/owner/passkey/exceptions.d.ts +0 -3
  478. package/dist/esm/kernel-zerodev/owner/passkey/exceptions.js +0 -12
  479. package/dist/esm/kernel-zerodev/owner/passkey/exceptions.js.map +0 -1
  480. package/dist/esm/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts +0 -6
  481. package/dist/esm/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js +0 -41
  482. package/dist/esm/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.js.map +0 -1
  483. package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +0 -7
  484. package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.js +0 -37
  485. package/dist/esm/kernel-zerodev/owner/passkey/getPasskeyOwner.js.map +0 -1
  486. package/dist/esm/kernel-zerodev/owner/passkey/index.d.ts +0 -4
  487. package/dist/esm/kernel-zerodev/owner/passkey/index.js +0 -5
  488. package/dist/esm/kernel-zerodev/owner/passkey/index.js.map +0 -1
  489. package/dist/esm/kernel-zerodev/owner/passkey/types.d.ts +0 -12
  490. package/dist/esm/kernel-zerodev/owner/passkey/types.js +0 -2
  491. package/dist/esm/kernel-zerodev/owner/passkey/types.js.map +0 -1
  492. package/dist/esm/kernel-zerodev/owner/passkey/utils.d.ts +0 -14
  493. package/dist/esm/kernel-zerodev/owner/passkey/utils.js +0 -100
  494. package/dist/esm/kernel-zerodev/owner/passkey/utils.js.map +0 -1
  495. package/dist/esm/kernel-zerodev/paymaster/base.d.ts +0 -18
  496. package/dist/esm/kernel-zerodev/paymaster/base.js +0 -56
  497. package/dist/esm/kernel-zerodev/paymaster/base.js.map +0 -1
  498. package/dist/esm/kernel-zerodev/paymaster/index.d.ts +0 -3
  499. package/dist/esm/kernel-zerodev/paymaster/index.js +0 -7
  500. package/dist/esm/kernel-zerodev/paymaster/index.js.map +0 -1
  501. package/dist/esm/kernel-zerodev/paymaster/token-paymaster.d.ts +0 -15
  502. package/dist/esm/kernel-zerodev/paymaster/token-paymaster.js +0 -182
  503. package/dist/esm/kernel-zerodev/paymaster/token-paymaster.js.map +0 -1
  504. package/dist/esm/kernel-zerodev/paymaster/types.d.ts +0 -29
  505. package/dist/esm/kernel-zerodev/paymaster/types.js +0 -2
  506. package/dist/esm/kernel-zerodev/paymaster/types.js.map +0 -1
  507. package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.d.ts +0 -8
  508. package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.js +0 -18
  509. package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.js.map +0 -1
  510. package/dist/esm/kernel-zerodev/provider.d.ts +0 -57
  511. package/dist/esm/kernel-zerodev/provider.js +0 -383
  512. package/dist/esm/kernel-zerodev/provider.js.map +0 -1
  513. package/dist/esm/kernel-zerodev/signer/empty-account.d.ts +0 -10
  514. package/dist/esm/kernel-zerodev/signer/empty-account.js +0 -40
  515. package/dist/esm/kernel-zerodev/signer/empty-account.js.map +0 -1
  516. package/dist/esm/kernel-zerodev/types.d.ts +0 -7
  517. package/dist/esm/kernel-zerodev/types.js +0 -2
  518. package/dist/esm/kernel-zerodev/types.js.map +0 -1
  519. package/dist/esm/kernel-zerodev/utils/ERC4337-utils.d.ts +0 -5
  520. package/dist/esm/kernel-zerodev/utils/ERC4337-utils.js +0 -100
  521. package/dist/esm/kernel-zerodev/utils/ERC4337-utils.js.map +0 -1
  522. package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +0 -15
  523. package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.js +0 -29
  524. package/dist/esm/kernel-zerodev/utils/calc-pre-verification-gas.js.map +0 -1
  525. package/dist/esm/kernel-zerodev/utils/custom-chains.d.ts +0 -92
  526. package/dist/esm/kernel-zerodev/utils/custom-chains.js +0 -81
  527. package/dist/esm/kernel-zerodev/utils/custom-chains.js.map +0 -1
  528. package/dist/esm/kernel-zerodev/utils.d.ts +0 -20
  529. package/dist/esm/kernel-zerodev/utils.js +0 -85
  530. package/dist/esm/kernel-zerodev/utils.js.map +0 -1
  531. package/dist/esm/kernel-zerodev/validator/base.d.ts +0 -56
  532. package/dist/esm/kernel-zerodev/validator/base.js +0 -273
  533. package/dist/esm/kernel-zerodev/validator/base.js.map +0 -1
  534. package/dist/esm/kernel-zerodev/validator/ecdsa-validator.d.ts +0 -20
  535. package/dist/esm/kernel-zerodev/validator/ecdsa-validator.js +0 -93
  536. package/dist/esm/kernel-zerodev/validator/ecdsa-validator.js.map +0 -1
  537. package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.d.ts +0 -29
  538. package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.js +0 -114
  539. package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.js.map +0 -1
  540. package/dist/esm/kernel-zerodev/validator/index.d.ts +0 -8
  541. package/dist/esm/kernel-zerodev/validator/index.js +0 -14
  542. package/dist/esm/kernel-zerodev/validator/index.js.map +0 -1
  543. package/dist/esm/kernel-zerodev/validator/kill-switch-validator.d.ts +0 -22
  544. package/dist/esm/kernel-zerodev/validator/kill-switch-validator.js +0 -118
  545. package/dist/esm/kernel-zerodev/validator/kill-switch-validator.js.map +0 -1
  546. package/dist/esm/kernel-zerodev/validator/recovery-validator.d.ts +0 -58
  547. package/dist/esm/kernel-zerodev/validator/recovery-validator.js +0 -359
  548. package/dist/esm/kernel-zerodev/validator/recovery-validator.js.map +0 -1
  549. package/dist/esm/kernel-zerodev/validator/session-key-validator.d.ts +0 -84
  550. package/dist/esm/kernel-zerodev/validator/session-key-validator.js +0 -496
  551. package/dist/esm/kernel-zerodev/validator/session-key-validator.js.map +0 -1
  552. package/dist/esm/kernel-zerodev/validator/types.d.ts +0 -56
  553. package/dist/esm/kernel-zerodev/validator/types.js +0 -3
  554. package/dist/esm/kernel-zerodev/validator/types.js.map +0 -1
  555. package/dist/esm/kernel-zerodev/validator-provider/base.d.ts +0 -29
  556. package/dist/esm/kernel-zerodev/validator-provider/base.js +0 -126
  557. package/dist/esm/kernel-zerodev/validator-provider/base.js.map +0 -1
  558. package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +0 -8
  559. package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.js +0 -57
  560. package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.js.map +0 -1
  561. package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +0 -8
  562. package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.js +0 -61
  563. package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.js.map +0 -1
  564. package/dist/esm/kernel-zerodev/validator-provider/index.d.ts +0 -8
  565. package/dist/esm/kernel-zerodev/validator-provider/index.js +0 -14
  566. package/dist/esm/kernel-zerodev/validator-provider/index.js.map +0 -1
  567. package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +0 -8
  568. package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.js +0 -61
  569. package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.js.map +0 -1
  570. package/dist/esm/kernel-zerodev/validator-provider/recovery-provider.d.ts +0 -28
  571. package/dist/esm/kernel-zerodev/validator-provider/recovery-provider.js +0 -295
  572. package/dist/esm/kernel-zerodev/validator-provider/recovery-provider.js.map +0 -1
  573. package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.d.ts +0 -18
  574. package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.js +0 -111
  575. package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.js.map +0 -1
  576. package/dist/esm/kernel-zerodev/validator-provider/types.d.ts +0 -29
  577. package/dist/esm/kernel-zerodev/validator-provider/types.js +0 -2
  578. package/dist/esm/kernel-zerodev/validator-provider/types.js.map +0 -1
  579. package/dist/esm/package.json +0 -1
  580. package/dist/types/index.d.ts +0 -23
  581. package/dist/types/index.d.ts.map +0 -1
  582. package/dist/types/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts +0 -163
  583. package/dist/types/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.d.ts.map +0 -1
  584. package/dist/types/kernel-zerodev/abis/ERC20Abi.d.ts +0 -232
  585. package/dist/types/kernel-zerodev/abis/ERC20Abi.d.ts.map +0 -1
  586. package/dist/types/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +0 -159
  587. package/dist/types/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts.map +0 -1
  588. package/dist/types/kernel-zerodev/abis/KernelAccountAbi.d.ts +0 -535
  589. package/dist/types/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts +0 -151
  590. package/dist/types/kernel-zerodev/abis/KillSwitchValidatorAbi.d.ts.map +0 -1
  591. package/dist/types/kernel-zerodev/abis/MultiSendAbi.d.ts +0 -16
  592. package/dist/types/kernel-zerodev/abis/MultiSendAbi.d.ts.map +0 -1
  593. package/dist/types/kernel-zerodev/abis/RecoveryActionAbi.d.ts +0 -16
  594. package/dist/types/kernel-zerodev/abis/RecoveryActionAbi.d.ts.map +0 -1
  595. package/dist/types/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +0 -213
  596. package/dist/types/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts.map +0 -1
  597. package/dist/types/kernel-zerodev/abis/Test_ERC20Abi.d.ts +0 -238
  598. package/dist/types/kernel-zerodev/abis/Test_ERC20Abi.d.ts.map +0 -1
  599. package/dist/types/kernel-zerodev/abis/Test_ERC721Abi.d.ts +0 -288
  600. package/dist/types/kernel-zerodev/abis/Test_ERC721Abi.d.ts.map +0 -1
  601. package/dist/types/kernel-zerodev/abis/TokenActionsAbi.d.ts.map +0 -1
  602. package/dist/types/kernel-zerodev/abis/WeightedValidatorAbi.d.ts +0 -376
  603. package/dist/types/kernel-zerodev/abis/WeightedValidatorAbi.d.ts.map +0 -1
  604. package/dist/types/kernel-zerodev/abis/index.d.ts +0 -9
  605. package/dist/types/kernel-zerodev/abis/index.d.ts.map +0 -1
  606. package/dist/types/kernel-zerodev/account.d.ts +0 -52
  607. package/dist/types/kernel-zerodev/account.d.ts.map +0 -1
  608. package/dist/types/kernel-zerodev/api/index.d.ts +0 -6
  609. package/dist/types/kernel-zerodev/api/index.d.ts.map +0 -1
  610. package/dist/types/kernel-zerodev/client/create-client.d.ts +0 -13
  611. package/dist/types/kernel-zerodev/client/create-client.d.ts.map +0 -1
  612. package/dist/types/kernel-zerodev/constants.d.ts +0 -32
  613. package/dist/types/kernel-zerodev/constants.d.ts.map +0 -1
  614. package/dist/types/kernel-zerodev/errors.d.ts +0 -6
  615. package/dist/types/kernel-zerodev/errors.d.ts.map +0 -1
  616. package/dist/types/kernel-zerodev/ethers-provider/account-signer.d.ts +0 -32
  617. package/dist/types/kernel-zerodev/ethers-provider/account-signer.d.ts.map +0 -1
  618. package/dist/types/kernel-zerodev/ethers-provider/ethers-provider.d.ts +0 -23
  619. package/dist/types/kernel-zerodev/ethers-provider/ethers-provider.d.ts.map +0 -1
  620. package/dist/types/kernel-zerodev/middleware/gas-estimator.d.ts +0 -25
  621. package/dist/types/kernel-zerodev/middleware/gas-estimator.d.ts.map +0 -1
  622. package/dist/types/kernel-zerodev/middleware/paymaster.d.ts +0 -6
  623. package/dist/types/kernel-zerodev/middleware/paymaster.d.ts.map +0 -1
  624. package/dist/types/kernel-zerodev/owner/getCustodialOwner.d.ts +0 -12
  625. package/dist/types/kernel-zerodev/owner/getCustodialOwner.d.ts.map +0 -1
  626. package/dist/types/kernel-zerodev/owner/getRPCProviderOwner.d.ts +0 -3
  627. package/dist/types/kernel-zerodev/owner/getRPCProviderOwner.d.ts.map +0 -1
  628. package/dist/types/kernel-zerodev/owner/index.d.ts +0 -3
  629. package/dist/types/kernel-zerodev/owner/index.d.ts.map +0 -1
  630. package/dist/types/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts +0 -9
  631. package/dist/types/kernel-zerodev/owner/passkey/createPasskeyOwner.d.ts.map +0 -1
  632. package/dist/types/kernel-zerodev/owner/passkey/exceptions.d.ts +0 -4
  633. package/dist/types/kernel-zerodev/owner/passkey/exceptions.d.ts.map +0 -1
  634. package/dist/types/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts +0 -7
  635. package/dist/types/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.d.ts.map +0 -1
  636. package/dist/types/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts +0 -8
  637. package/dist/types/kernel-zerodev/owner/passkey/getPasskeyOwner.d.ts.map +0 -1
  638. package/dist/types/kernel-zerodev/owner/passkey/index.d.ts +0 -5
  639. package/dist/types/kernel-zerodev/owner/passkey/index.d.ts.map +0 -1
  640. package/dist/types/kernel-zerodev/owner/passkey/types.d.ts +0 -13
  641. package/dist/types/kernel-zerodev/owner/passkey/types.d.ts.map +0 -1
  642. package/dist/types/kernel-zerodev/owner/passkey/utils.d.ts +0 -15
  643. package/dist/types/kernel-zerodev/owner/passkey/utils.d.ts.map +0 -1
  644. package/dist/types/kernel-zerodev/paymaster/base.d.ts +0 -19
  645. package/dist/types/kernel-zerodev/paymaster/base.d.ts.map +0 -1
  646. package/dist/types/kernel-zerodev/paymaster/index.d.ts +0 -4
  647. package/dist/types/kernel-zerodev/paymaster/index.d.ts.map +0 -1
  648. package/dist/types/kernel-zerodev/paymaster/token-paymaster.d.ts +0 -16
  649. package/dist/types/kernel-zerodev/paymaster/token-paymaster.d.ts.map +0 -1
  650. package/dist/types/kernel-zerodev/paymaster/types.d.ts +0 -30
  651. package/dist/types/kernel-zerodev/paymaster/types.d.ts.map +0 -1
  652. package/dist/types/kernel-zerodev/paymaster/verifying-paymaster.d.ts +0 -9
  653. package/dist/types/kernel-zerodev/paymaster/verifying-paymaster.d.ts.map +0 -1
  654. package/dist/types/kernel-zerodev/provider.d.ts +0 -58
  655. package/dist/types/kernel-zerodev/provider.d.ts.map +0 -1
  656. package/dist/types/kernel-zerodev/signer/empty-account.d.ts +0 -11
  657. package/dist/types/kernel-zerodev/signer/empty-account.d.ts.map +0 -1
  658. package/dist/types/kernel-zerodev/types.d.ts +0 -8
  659. package/dist/types/kernel-zerodev/types.d.ts.map +0 -1
  660. package/dist/types/kernel-zerodev/utils/ERC4337-utils.d.ts +0 -6
  661. package/dist/types/kernel-zerodev/utils/ERC4337-utils.d.ts.map +0 -1
  662. package/dist/types/kernel-zerodev/utils/calc-pre-verification-gas.d.ts +0 -16
  663. package/dist/types/kernel-zerodev/utils/calc-pre-verification-gas.d.ts.map +0 -1
  664. package/dist/types/kernel-zerodev/utils/custom-chains.d.ts +0 -93
  665. package/dist/types/kernel-zerodev/utils/custom-chains.d.ts.map +0 -1
  666. package/dist/types/kernel-zerodev/utils.d.ts +0 -21
  667. package/dist/types/kernel-zerodev/utils.d.ts.map +0 -1
  668. package/dist/types/kernel-zerodev/validator/base.d.ts +0 -57
  669. package/dist/types/kernel-zerodev/validator/base.d.ts.map +0 -1
  670. package/dist/types/kernel-zerodev/validator/ecdsa-validator.d.ts +0 -21
  671. package/dist/types/kernel-zerodev/validator/ecdsa-validator.d.ts.map +0 -1
  672. package/dist/types/kernel-zerodev/validator/erc165-session-key-validator.d.ts +0 -30
  673. package/dist/types/kernel-zerodev/validator/erc165-session-key-validator.d.ts.map +0 -1
  674. package/dist/types/kernel-zerodev/validator/index.d.ts +0 -9
  675. package/dist/types/kernel-zerodev/validator/index.d.ts.map +0 -1
  676. package/dist/types/kernel-zerodev/validator/kill-switch-validator.d.ts +0 -23
  677. package/dist/types/kernel-zerodev/validator/kill-switch-validator.d.ts.map +0 -1
  678. package/dist/types/kernel-zerodev/validator/recovery-validator.d.ts +0 -59
  679. package/dist/types/kernel-zerodev/validator/recovery-validator.d.ts.map +0 -1
  680. package/dist/types/kernel-zerodev/validator/session-key-validator.d.ts +0 -85
  681. package/dist/types/kernel-zerodev/validator/session-key-validator.d.ts.map +0 -1
  682. package/dist/types/kernel-zerodev/validator/types.d.ts +0 -57
  683. package/dist/types/kernel-zerodev/validator/types.d.ts.map +0 -1
  684. package/dist/types/kernel-zerodev/validator-provider/base.d.ts +0 -30
  685. package/dist/types/kernel-zerodev/validator-provider/base.d.ts.map +0 -1
  686. package/dist/types/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +0 -9
  687. package/dist/types/kernel-zerodev/validator-provider/ecdsa-provider.d.ts.map +0 -1
  688. package/dist/types/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +0 -9
  689. package/dist/types/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts.map +0 -1
  690. package/dist/types/kernel-zerodev/validator-provider/index.d.ts +0 -9
  691. package/dist/types/kernel-zerodev/validator-provider/index.d.ts.map +0 -1
  692. package/dist/types/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +0 -9
  693. package/dist/types/kernel-zerodev/validator-provider/kill-switch-provider.d.ts.map +0 -1
  694. package/dist/types/kernel-zerodev/validator-provider/recovery-provider.d.ts +0 -29
  695. package/dist/types/kernel-zerodev/validator-provider/recovery-provider.d.ts.map +0 -1
  696. package/dist/types/kernel-zerodev/validator-provider/session-key-provider.d.ts +0 -19
  697. package/dist/types/kernel-zerodev/validator-provider/session-key-provider.d.ts.map +0 -1
  698. package/dist/types/kernel-zerodev/validator-provider/types.d.ts +0 -30
  699. package/dist/types/kernel-zerodev/validator-provider/types.d.ts.map +0 -1
  700. package/passkey/package.json +0 -5
  701. package/src/index.ts +0 -50
  702. package/src/kernel-zerodev/__tests__/config/index.ts +0 -19
  703. package/src/kernel-zerodev/__tests__/mocks/mock-signer.ts +0 -24
  704. package/src/kernel-zerodev/abis/ERC165SessionKeyValidatorAbi.ts +0 -211
  705. package/src/kernel-zerodev/abis/ERC20Abi.ts +0 -153
  706. package/src/kernel-zerodev/abis/ESCDAValidatorAbi.ts +0 -206
  707. package/src/kernel-zerodev/abis/KernelAccountAbi.ts +0 -691
  708. package/src/kernel-zerodev/abis/KernelFactoryAbi.ts +0 -380
  709. package/src/kernel-zerodev/abis/KillSwitchValidatorAbi.ts +0 -196
  710. package/src/kernel-zerodev/abis/MultiSendAbi.ts +0 -20
  711. package/src/kernel-zerodev/abis/RecoveryActionAbi.ts +0 -20
  712. package/src/kernel-zerodev/abis/SessionKeyValidatorAbi.ts +0 -277
  713. package/src/kernel-zerodev/abis/Test_ERC20Abi.ts +0 -157
  714. package/src/kernel-zerodev/abis/Test_ERC721Abi.ts +0 -373
  715. package/src/kernel-zerodev/abis/TokenActionsAbi.ts +0 -81
  716. package/src/kernel-zerodev/abis/WeightedValidatorAbi.ts +0 -268
  717. package/src/kernel-zerodev/abis/index.ts +0 -17
  718. package/src/kernel-zerodev/account.ts +0 -394
  719. package/src/kernel-zerodev/api/index.ts +0 -84
  720. package/src/kernel-zerodev/client/create-client.ts +0 -81
  721. package/src/kernel-zerodev/constants.ts +0 -115
  722. package/src/kernel-zerodev/errors.ts +0 -13
  723. package/src/kernel-zerodev/ethers-provider/account-signer.ts +0 -185
  724. package/src/kernel-zerodev/ethers-provider/ethers-provider.ts +0 -149
  725. package/src/kernel-zerodev/middleware/gas-estimator.ts +0 -219
  726. package/src/kernel-zerodev/middleware/paymaster.ts +0 -86
  727. package/src/kernel-zerodev/owner/getCustodialOwner.ts +0 -131
  728. package/src/kernel-zerodev/owner/getRPCProviderOwner.ts +0 -26
  729. package/src/kernel-zerodev/owner/index.ts +0 -2
  730. package/src/kernel-zerodev/owner/passkey/createPasskeyOwner.ts +0 -107
  731. package/src/kernel-zerodev/owner/passkey/exceptions.ts +0 -3
  732. package/src/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.ts +0 -81
  733. package/src/kernel-zerodev/owner/passkey/getPasskeyOwner.ts +0 -75
  734. package/src/kernel-zerodev/owner/passkey/index.ts +0 -4
  735. package/src/kernel-zerodev/owner/passkey/types.ts +0 -18
  736. package/src/kernel-zerodev/owner/passkey/utils.ts +0 -174
  737. package/src/kernel-zerodev/paymaster/base.ts +0 -90
  738. package/src/kernel-zerodev/paymaster/index.ts +0 -9
  739. package/src/kernel-zerodev/paymaster/token-paymaster.ts +0 -251
  740. package/src/kernel-zerodev/paymaster/types.ts +0 -40
  741. package/src/kernel-zerodev/paymaster/verifying-paymaster.ts +0 -32
  742. package/src/kernel-zerodev/provider.ts +0 -485
  743. package/src/kernel-zerodev/signer/empty-account.ts +0 -27
  744. package/src/kernel-zerodev/types.ts +0 -8
  745. package/src/kernel-zerodev/utils/ERC4337-utils.ts +0 -161
  746. package/src/kernel-zerodev/utils/calc-pre-verification-gas.ts +0 -88
  747. package/src/kernel-zerodev/utils/custom-chains.ts +0 -83
  748. package/src/kernel-zerodev/utils.ts +0 -159
  749. package/src/kernel-zerodev/validator/base.ts +0 -321
  750. package/src/kernel-zerodev/validator/ecdsa-validator.ts +0 -122
  751. package/src/kernel-zerodev/validator/erc165-session-key-validator.ts +0 -151
  752. package/src/kernel-zerodev/validator/index.ts +0 -22
  753. package/src/kernel-zerodev/validator/kill-switch-validator.ts +0 -160
  754. package/src/kernel-zerodev/validator/recovery-validator.ts +0 -447
  755. package/src/kernel-zerodev/validator/session-key-validator.ts +0 -696
  756. package/src/kernel-zerodev/validator/types.ts +0 -129
  757. package/src/kernel-zerodev/validator-provider/base.ts +0 -178
  758. package/src/kernel-zerodev/validator-provider/ecdsa-provider.ts +0 -65
  759. package/src/kernel-zerodev/validator-provider/erc165-session-key-provider.ts +0 -72
  760. package/src/kernel-zerodev/validator-provider/index.ts +0 -22
  761. package/src/kernel-zerodev/validator-provider/kill-switch-provider.ts +0 -72
  762. package/src/kernel-zerodev/validator-provider/recovery-provider.ts +0 -400
  763. package/src/kernel-zerodev/validator-provider/session-key-provider.ts +0 -151
  764. package/src/kernel-zerodev/validator-provider/types.ts +0 -42
  765. /package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/KernelFactoryAbi.d.ts +0 -0
  766. /package/{dist/types/kernel-zerodev/abis → _types/accounts/kernel/abi}/TokenActionsAbi.d.ts +0 -0
@@ -1,696 +0,0 @@
1
- import {
2
- getUserOperationHash,
3
- type Address,
4
- type Hex,
5
- type SmartAccountSigner,
6
- type UserOperationRequest,
7
- type SignTypedDataParams,
8
- type Abi,
9
- } from "@alchemy/aa-core";
10
- import {
11
- KernelBaseValidator,
12
- ValidatorMode,
13
- type KernelBaseValidatorParams,
14
- type ValidatorPluginData,
15
- } from "./base.js";
16
- import {
17
- encodeFunctionData,
18
- toBytes,
19
- concat,
20
- pad,
21
- toHex,
22
- encodeAbiParameters,
23
- concatHex,
24
- zeroAddress,
25
- decodeFunctionData,
26
- isHex,
27
- getFunctionSelector,
28
- type GetAbiItemParameters,
29
- keccak256,
30
- } from "viem";
31
- import { formatAbiItem } from "viem/utils";
32
- import { SessionKeyValidatorAbi } from "../abis/SessionKeyValidatorAbi.js";
33
- import { DUMMY_ECDSA_SIG } from "../constants.js";
34
- import { KernelAccountAbi } from "../abis/KernelAccountAbi.js";
35
- import { MerkleTree } from "merkletreejs";
36
- import { getChainId } from "../api/index.js";
37
- import { fixSignedData, getChain } from "../utils.js";
38
- import type { GetAbiItemReturnType } from "viem/dist/types/utils/abi/getAbiItem.js";
39
- import { type AbiFunction } from "abitype";
40
- import type {
41
- CombinedArgs,
42
- GeneratePermissionFromArgsParameters,
43
- } from "./types.js";
44
- import { Operation } from "../provider.js";
45
-
46
- // We need to be able to serialize bigint to transmit session key over
47
- // the network.
48
- // Using this trick: https://github.com/GoogleChromeLabs/jsbi/issues/30#issuecomment-1006086291
49
- (BigInt.prototype as any).toJSON = function () {
50
- return this.toString();
51
- };
52
-
53
- export interface SessionKeyValidatorParams extends KernelBaseValidatorParams {
54
- sessionKey: SmartAccountSigner;
55
- sessionKeyData: SessionKeyData;
56
- }
57
-
58
- export type SessionKeyParams = Pick<
59
- SessionKeyValidatorParams,
60
- "sessionKeyData" | "enableSignature"
61
- > &
62
- ValidatorPluginData & {
63
- sessionPrivateKey?: Hex;
64
- initCode?: Hex;
65
- accountAddress?: Address;
66
- };
67
-
68
- export enum ParamOperator {
69
- EQUAL = 0,
70
- GREATER_THAN = 1,
71
- LESS_THAN = 2,
72
- GREATER_THAN_OR_EQUAL = 3,
73
- LESS_THAN_OR_EQUAL = 4,
74
- NOT_EQUAL = 5,
75
- }
76
-
77
- export type SessionNonces = {
78
- lastNonce: bigint;
79
- invalidNonce: bigint;
80
- };
81
-
82
- export type ExecutionRule = {
83
- validAfter: number; // 48 bits
84
- interval: number; // 48 bits
85
- runs: number; // 48 bits
86
- };
87
- export interface ParamRules {
88
- offset: number;
89
- condition: ParamOperator;
90
- param: Hex;
91
- }
92
-
93
- export type Permission = {
94
- target: Address;
95
- index?: number;
96
- rules?: ParamRules[];
97
- sig?: Hex;
98
- valueLimit?: bigint;
99
- executionRule?: ExecutionRule;
100
- operation?: Operation;
101
- };
102
-
103
- export interface SessionKeyData {
104
- validUntil: number;
105
- validAfter: number;
106
- paymaster?: Address;
107
- permissions?: Permission[];
108
- }
109
-
110
- export function getAbiItem<
111
- TAbi extends Abi | readonly unknown[],
112
- TItemName extends string
113
- >({
114
- abi,
115
- args = [],
116
- name,
117
- }: GetAbiItemParameters<TAbi, TItemName>): GetAbiItemReturnType<
118
- TAbi,
119
- TItemName
120
- > {
121
- const abiItems = (abi as Abi).filter((x) => "name" in x && x.name === name);
122
- if (abiItems.length === 0) return undefined as any;
123
- if (abiItems.length === 1) return abiItems[0] as any;
124
- const abiItemsParamFiltered = [];
125
- for (const abiItem of abiItems) {
126
- if (!("inputs" in abiItem)) continue;
127
- if (!args || args.length === 0) {
128
- if (!abiItem.inputs || abiItem.inputs.length === 0) return abiItem as any;
129
- continue;
130
- }
131
- if (!abiItem.inputs) continue;
132
- if (abiItem.inputs.length === 0) continue;
133
- if (abiItem.inputs.length !== args.length) continue;
134
- abiItemsParamFiltered.push(abiItem);
135
- }
136
- if (abiItemsParamFiltered.length === 0) return abiItems[0] as any;
137
- else if (abiItemsParamFiltered.length === 1)
138
- return abiItemsParamFiltered[0] as any;
139
- else
140
- throw Error(
141
- `Couldn't parse funtion signature using params, set appropriate one from below:\n${abiItemsParamFiltered
142
- .map((item) => formatAbiItem(item))
143
- .reduce((a, c) => `${a}\n${c}`)}`
144
- );
145
- }
146
-
147
- export function getPermissionFromABI<
148
- TAbi extends Abi | readonly unknown[],
149
- TFunctionName extends string | undefined = string
150
- >({
151
- abi,
152
- target,
153
- args,
154
- functionName,
155
- valueLimit,
156
- operation,
157
- }: GeneratePermissionFromArgsParameters<TAbi, TFunctionName>): Permission {
158
- const abiItem = getAbiItem({
159
- abi,
160
- args,
161
- name: functionName,
162
- } as GetAbiItemParameters);
163
- if (abiItem.type !== "function") {
164
- throw Error(`${functionName} not found in abi`);
165
- }
166
- const functionSelector = getFunctionSelector(abiItem);
167
- let paramRules: ParamRules[] = [];
168
- if (args && Array.isArray(args)) {
169
- paramRules = (args as CombinedArgs<AbiFunction["inputs"]>)
170
- .map(
171
- (arg, i) =>
172
- arg && {
173
- param: pad(
174
- isHex(arg.value)
175
- ? arg.value
176
- : toHex(arg.value as Parameters<typeof toHex>[0]),
177
- { size: 32 }
178
- ),
179
- offset: i * 32,
180
- condition: arg.operator,
181
- }
182
- )
183
- .filter((rule) => rule) as ParamRules[];
184
- }
185
- return {
186
- sig: functionSelector,
187
- rules: paramRules,
188
- target,
189
- valueLimit: valueLimit ?? 0n,
190
- operation: operation ?? Operation.Call,
191
- };
192
- }
193
-
194
- export class SessionKeyValidator extends KernelBaseValidator {
195
- protected sessionKey: SmartAccountSigner;
196
- sessionKeyData: SessionKeyData;
197
- merkleTree: MerkleTree;
198
-
199
- constructor(params: SessionKeyValidatorParams) {
200
- super(params);
201
- this.sessionKey = params.sessionKey;
202
- this.sessionKeyData = {
203
- ...params.sessionKeyData,
204
- validAfter: params.sessionKeyData.validAfter ?? 0,
205
- validUntil: params.sessionKeyData.validUntil ?? 0,
206
- paymaster: params.sessionKeyData.paymaster ?? zeroAddress,
207
- };
208
- this.sessionKeyData.permissions = this.sessionKeyData.permissions?.map(
209
- (perm, index) => ({
210
- ...perm,
211
- valueLimit: perm.valueLimit ?? 0n,
212
- sig: perm.sig ?? pad("0x", { size: 4 }),
213
- rules: perm.rules ?? [],
214
- index,
215
- executionRule: perm.executionRule ?? {
216
- validAfter: 0,
217
- interval: 0,
218
- runs: 0,
219
- },
220
- operation: perm.operation ?? Operation.Call,
221
- })
222
- );
223
- this.merkleTree = this.getMerkleTree();
224
- this.selector =
225
- params.selector ??
226
- getFunctionSelector("execute(address, uint256, bytes, uint8)");
227
- this.executor = params.executor ?? zeroAddress;
228
- this.mode = params.mode ?? ValidatorMode.plugin;
229
- }
230
-
231
- public static async init(
232
- params: SessionKeyValidatorParams
233
- ): Promise<SessionKeyValidator> {
234
- const chainId = await getChainId(params.projectId);
235
- if (!chainId) {
236
- throw new Error("ChainId not found");
237
- }
238
- const chain = getChain(chainId);
239
- const instance = new SessionKeyValidator({ ...params, chain });
240
- return instance;
241
- }
242
-
243
- shouldDelegateViaFallback(): boolean {
244
- return this.merkleTree.getHexRoot() === pad("0x00", { size: 32 });
245
- }
246
-
247
- findMatchingPermissions(
248
- callData: Hex
249
- ): Permission | Permission[] | undefined {
250
- try {
251
- const { functionName, args } = decodeFunctionData({
252
- abi: KernelAccountAbi,
253
- data: callData,
254
- });
255
-
256
- if (functionName !== "execute" && functionName !== "executeBatch")
257
- return undefined;
258
- if (functionName === "execute") {
259
- const [to, value, data] = args;
260
- return this.filterPermissions([to], [data], [value])?.[0];
261
- } else if (functionName === "executeBatch") {
262
- let targets: Hex[] = [],
263
- values: bigint[] = [],
264
- dataArray: Hex[] = [];
265
- args[0].forEach((arg) => {
266
- targets.push(arg.to);
267
- values.push(arg.value);
268
- dataArray.push(arg.data);
269
- });
270
- return this.filterPermissions(targets, dataArray, values);
271
- } else {
272
- throw Error("Invalid function");
273
- }
274
- } catch (error) {
275
- return undefined;
276
- }
277
- }
278
-
279
- private filterPermissions(
280
- targets: Address[],
281
- dataArray: Hex[],
282
- values: bigint[]
283
- ): Permission[] | undefined {
284
- if (
285
- targets.length !== dataArray.length ||
286
- targets.length !== values.length
287
- ) {
288
- throw Error("Invalid arguments");
289
- }
290
- const filteredPermissions = targets.map((target, index) => {
291
- const permissionsList = this.sessionKeyData.permissions;
292
- if (!permissionsList || !permissionsList.length) return undefined;
293
-
294
- const targetToMatch = target.toLowerCase();
295
-
296
- // Filter permissions by target
297
- let targetPermissions = permissionsList.filter(
298
- (permission) =>
299
- permission.target.toLowerCase() === targetToMatch ||
300
- permission.target.toLowerCase() === zeroAddress.toLowerCase()
301
- );
302
-
303
- if (!targetPermissions.length) return undefined;
304
-
305
- const operationPermissions = this.filterByOperation(
306
- targetPermissions,
307
- // [TODO]: Check if we need to pass operation from userOp after Kernel v2.3 in
308
- Operation.Call
309
- );
310
-
311
- if (!operationPermissions.length) return undefined;
312
-
313
- const signaturePermissions = this.filterBySignature(
314
- targetPermissions,
315
- dataArray[index].slice(0, 10).toLowerCase()
316
- );
317
-
318
- const valueLimitPermissions = signaturePermissions.filter(
319
- (permission) => (permission.valueLimit ?? 0n) >= values[index]
320
- );
321
-
322
- if (!valueLimitPermissions.length) return undefined;
323
-
324
- const sortedPermissions = valueLimitPermissions.sort((a, b) => {
325
- if ((b.valueLimit ?? 0n) > (a.valueLimit ?? 0n)) {
326
- return 1;
327
- } else if ((b.valueLimit ?? 0n) < (a.valueLimit ?? 0n)) {
328
- return -1;
329
- } else {
330
- return 0;
331
- }
332
- });
333
-
334
- return this.findPermissionByRule(sortedPermissions, dataArray[index]);
335
- });
336
- return filteredPermissions.every((permission) => permission !== undefined)
337
- ? (filteredPermissions as Permission[])
338
- : undefined;
339
- }
340
-
341
- private filterByOperation(
342
- permissions: Permission[],
343
- operation: Operation
344
- ): Permission[] {
345
- return permissions.filter(
346
- (permission) =>
347
- permission.operation === operation || Operation.Call === operation
348
- );
349
- }
350
-
351
- private filterBySignature(
352
- permissions: Permission[],
353
- signature: string
354
- ): Permission[] {
355
- return permissions.filter(
356
- (permission) =>
357
- (permission.sig ?? pad("0x", { size: 4 })).toLowerCase() === signature
358
- );
359
- }
360
-
361
- private findPermissionByRule(
362
- permissions: Permission[],
363
- data: string
364
- ): Permission | undefined {
365
- return permissions.find((permission) => {
366
- for (const rule of permission.rules ?? []) {
367
- const dataParam: Hex = this.getFormattedHex(
368
- "0x" + data.slice(10 + rule.offset * 2, 10 + rule.offset * 2 + 64)
369
- );
370
- const ruleParam: Hex = this.getFormattedHex(rule.param);
371
-
372
- if (!this.evaluateRuleCondition(dataParam, ruleParam, rule.condition)) {
373
- return false;
374
- }
375
- }
376
- return true;
377
- });
378
- }
379
-
380
- private getFormattedHex(value: string): Hex {
381
- return pad(isHex(value) ? value : toHex(value), {
382
- size: 32,
383
- }).toLowerCase() as Hex;
384
- }
385
-
386
- private evaluateRuleCondition(
387
- dataParam: Hex,
388
- ruleParam: Hex,
389
- condition: ParamOperator
390
- ): boolean {
391
- switch (condition) {
392
- case ParamOperator.EQUAL:
393
- return dataParam === ruleParam;
394
- case ParamOperator.GREATER_THAN:
395
- return dataParam > ruleParam;
396
- case ParamOperator.LESS_THAN:
397
- return dataParam < ruleParam;
398
- case ParamOperator.GREATER_THAN_OR_EQUAL:
399
- return dataParam >= ruleParam;
400
- case ParamOperator.LESS_THAN_OR_EQUAL:
401
- return dataParam <= ruleParam;
402
- case ParamOperator.NOT_EQUAL:
403
- return dataParam !== ruleParam;
404
- default:
405
- return false;
406
- }
407
- }
408
-
409
- getMerkleTree(): MerkleTree {
410
- const permissionPacked = this.sessionKeyData.permissions?.map(
411
- (permission) => this.encodePermissionData(permission)
412
- );
413
-
414
- // Having one leaf returns empty array in getProof(). To hack it we push the leaf twice
415
- // issue - https://github.com/merkletreejs/merkletreejs/issues/58
416
- if (permissionPacked && permissionPacked.length === 1)
417
- permissionPacked.push(permissionPacked[0]);
418
-
419
- return permissionPacked && permissionPacked.length !== 0
420
- ? new MerkleTree(permissionPacked, keccak256, {
421
- hashLeaves: true,
422
- sortPairs: true,
423
- })
424
- : new MerkleTree([pad("0x00", { size: 32 })], keccak256, {
425
- hashLeaves: false,
426
- complete: true,
427
- });
428
- }
429
-
430
- encodePermissionData(
431
- permission: Permission | Permission[],
432
- merkleProof?: string[] | string[][]
433
- ): Hex {
434
- let permissionParam = {
435
- components: [
436
- {
437
- name: "index",
438
- type: "uint32",
439
- },
440
- {
441
- name: "target",
442
- type: "address",
443
- },
444
- {
445
- name: "sig",
446
- type: "bytes4",
447
- },
448
- {
449
- name: "valueLimit",
450
- type: "uint256",
451
- },
452
- {
453
- components: [
454
- {
455
- name: "offset",
456
- type: "uint256",
457
- },
458
- {
459
- internalType: "enum ParamCondition",
460
- name: "condition",
461
- type: "uint8",
462
- },
463
- {
464
- name: "param",
465
- type: "bytes32",
466
- },
467
- ],
468
- name: "rules",
469
- type: "tuple[]",
470
- },
471
- {
472
- components: [
473
- {
474
- name: "interval",
475
- type: "uint48",
476
- },
477
- {
478
- name: "runs",
479
- type: "uint48",
480
- },
481
- {
482
- internalType: "ValidAfter",
483
- name: "validAfter",
484
- type: "uint48",
485
- },
486
- ],
487
- name: "executionRule",
488
- type: "tuple",
489
- },
490
- {
491
- internalType: "enum Operation",
492
- name: "operation",
493
- type: "uint8",
494
- },
495
- ],
496
- name: "permission",
497
- type: Array.isArray(permission) ? "tuple[]" : "tuple",
498
- };
499
- let params;
500
- let values;
501
- if (merkleProof) {
502
- params = [
503
- permissionParam,
504
- {
505
- name: "merkleProof",
506
- type: Array.isArray(merkleProof[0]) ? "bytes32[][]" : "bytes32[]",
507
- },
508
- ];
509
- values = [permission, merkleProof];
510
- } else {
511
- params = [permissionParam];
512
- values = [permission];
513
- }
514
- return encodeAbiParameters(params, values);
515
- }
516
-
517
- getSessionData(): SessionKeyParams {
518
- if (!this.selector || !this.executor) {
519
- throw Error("Plugin Validator data params uninitialised");
520
- }
521
- return {
522
- selector: this.selector,
523
- executor: this.executor,
524
- validUntil: this.validUntil,
525
- validAfter: this.validAfter,
526
- sessionKeyData: this.sessionKeyData,
527
- enableSignature: this.enableSignature,
528
- };
529
- }
530
-
531
- async signer(): Promise<SmartAccountSigner> {
532
- return await Promise.resolve(this.sessionKey);
533
- }
534
-
535
- async getSessionNonces(
536
- kernelAccountAddress: Address
537
- ): Promise<SessionNonces> {
538
- if (!this.publicClient) {
539
- throw new Error("Validator uninitialized: PublicClient missing");
540
- }
541
- const nonce = await this.publicClient.readContract({
542
- abi: SessionKeyValidatorAbi,
543
- address: this.validatorAddress,
544
- functionName: "nonces",
545
- args: [kernelAccountAddress],
546
- });
547
- return { lastNonce: nonce[0], invalidNonce: nonce[1] };
548
- }
549
-
550
- async getEnableData(
551
- kernelAccountAddress?: Address,
552
- enabledLastNonce?: bigint
553
- ): Promise<Hex> {
554
- if (!this.merkleTree) {
555
- throw Error("SessionKeyValidator: MerkleTree not generated");
556
- }
557
- if (!kernelAccountAddress) {
558
- throw Error("SessionKeyValidator: Kernel account address not provided");
559
- }
560
- const lastNonce =
561
- enabledLastNonce ??
562
- (await this.getSessionNonces(kernelAccountAddress)).lastNonce + 1n;
563
- return concat([
564
- await this.sessionKey.getAddress(),
565
- pad(this.merkleTree.getHexRoot() as Hex, { size: 32 }),
566
- pad(toHex(this.sessionKeyData.validAfter), { size: 6 }),
567
- pad(toHex(this.sessionKeyData.validUntil), { size: 6 }),
568
- this.sessionKeyData.paymaster!,
569
- pad(toHex(lastNonce), { size: 32 }),
570
- ]);
571
- }
572
-
573
- async isPluginEnabled(
574
- kernelAccountAddress: Address,
575
- selector: Hex
576
- ): Promise<boolean> {
577
- if (!this.publicClient) {
578
- throw new Error("Validator uninitialized: PublicClient missing");
579
- }
580
- const execDetail = await this.publicClient.readContract({
581
- abi: KernelAccountAbi,
582
- address: kernelAccountAddress,
583
- functionName: "getExecution",
584
- args: [selector],
585
- });
586
- const enableData = await this.publicClient.readContract({
587
- abi: SessionKeyValidatorAbi,
588
- address: this.validatorAddress,
589
- functionName: "sessionData",
590
- args: [await this.sessionKey.getAddress(), kernelAccountAddress],
591
- });
592
- const enableDataHex = concatHex([
593
- await this.sessionKey.getAddress(),
594
- pad(enableData[0], { size: 32 }),
595
- pad(toHex(enableData[1]), { size: 6 }),
596
- pad(toHex(enableData[2]), { size: 6 }),
597
- enableData[3],
598
- pad(toHex(enableData[4]), { size: 32 }),
599
- ]);
600
- return (
601
- execDetail.validator.toLowerCase() ===
602
- this.validatorAddress.toLowerCase() &&
603
- enableDataHex.toLowerCase() ===
604
- (
605
- await this.getEnableData(kernelAccountAddress, enableData[4])
606
- ).toLowerCase()
607
- );
608
- }
609
-
610
- async getDummyUserOpSignature(callData: Hex): Promise<Hex> {
611
- return concatHex([
612
- await this.sessionKey.getAddress(),
613
- DUMMY_ECDSA_SIG,
614
- this.getEncodedPermissionProofData(callData),
615
- ]);
616
- }
617
-
618
- private getEncodedPermissionProofData(callData: Hex): Hex {
619
- const matchingPermission = this.findMatchingPermissions(callData);
620
- if (!matchingPermission && !this.shouldDelegateViaFallback()) {
621
- throw Error(
622
- "SessionKeyValidator: No matching permission found for the userOp"
623
- );
624
- }
625
- const encodedPermissionData =
626
- this.sessionKeyData.permissions &&
627
- this.sessionKeyData.permissions.length !== 0 &&
628
- matchingPermission
629
- ? this.encodePermissionData(matchingPermission)
630
- : "0x";
631
- let merkleProof: string[] | string[][] = [];
632
- if (Array.isArray(matchingPermission)) {
633
- let encodedPerms = matchingPermission.map((permission) =>
634
- keccak256(this.encodePermissionData(permission))
635
- );
636
- merkleProof = encodedPerms.map((perm) =>
637
- this.merkleTree.getHexProof(perm)
638
- );
639
- } else if (matchingPermission) {
640
- merkleProof = this.merkleTree.getHexProof(
641
- keccak256(encodedPermissionData)
642
- );
643
- }
644
- return this.sessionKeyData.permissions &&
645
- this.sessionKeyData.permissions.length !== 0 &&
646
- matchingPermission
647
- ? this.encodePermissionData(matchingPermission, merkleProof)
648
- : "0x";
649
- }
650
-
651
- encodeEnable(sessionKeyEnableData: Hex): Hex {
652
- return encodeFunctionData({
653
- abi: SessionKeyValidatorAbi,
654
- functionName: "enable",
655
- args: [sessionKeyEnableData],
656
- });
657
- }
658
-
659
- encodeDisable(sessionKey: Hex): Hex {
660
- return encodeFunctionData({
661
- abi: SessionKeyValidatorAbi,
662
- functionName: "disable",
663
- args: [sessionKey],
664
- });
665
- }
666
-
667
- async signMessage(message: string | Uint8Array): Promise<Hex> {
668
- return await this.sessionKey.signMessage(message);
669
- }
670
-
671
- async signTypedData(params: SignTypedDataParams): Promise<Hex> {
672
- return fixSignedData(await this.sessionKey.signTypedData(params));
673
- }
674
-
675
- async signUserOp(userOp: UserOperationRequest): Promise<Hex> {
676
- if (!this.chain) {
677
- throw new Error("Validator uninitialized");
678
- }
679
- const hash = getUserOperationHash(
680
- {
681
- ...userOp,
682
- signature: "0x",
683
- },
684
- this.entryPointAddress,
685
- BigInt(this.chain.id)
686
- );
687
- const formattedMessage = typeof hash === "string" ? toBytes(hash) : hash;
688
-
689
- const signature = concat([
690
- await this.sessionKey.getAddress(),
691
- await this.sessionKey.signMessage(formattedMessage),
692
- this.getEncodedPermissionProofData(userOp.callData),
693
- ]);
694
- return signature;
695
- }
696
- }