@zerodev/sdk 4.0.9 → 4.0.10

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 (207) hide show
  1. package/README.md +125 -3
  2. package/dist/cjs/index.d.ts +3 -4
  3. package/dist/cjs/index.js +6 -1
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +2 -2
  6. package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.js +2 -2
  7. package/dist/cjs/kernel-zerodev/abis/ESCDAValidatorAbi.js.map +1 -1
  8. package/dist/cjs/kernel-zerodev/abis/KernelAccountAbi.d.ts +3 -3
  9. package/dist/cjs/kernel-zerodev/abis/KernelAccountAbi.js +3 -3
  10. package/dist/cjs/kernel-zerodev/abis/KernelAccountAbi.js.map +1 -1
  11. package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +158 -0
  12. package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.js +210 -0
  13. package/dist/cjs/kernel-zerodev/abis/SessionKeyValidatorAbi.js.map +1 -0
  14. package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.d.ts +237 -39
  15. package/dist/cjs/kernel-zerodev/abis/Test_ERC20Abi.js.map +1 -1
  16. package/dist/cjs/kernel-zerodev/account.d.ts +13 -4
  17. package/dist/cjs/kernel-zerodev/account.js +50 -38
  18. package/dist/cjs/kernel-zerodev/account.js.map +1 -1
  19. package/dist/cjs/kernel-zerodev/constants.d.ts +2 -0
  20. package/dist/cjs/kernel-zerodev/constants.js +3 -1
  21. package/dist/cjs/kernel-zerodev/constants.js.map +1 -1
  22. package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.d.ts +1 -1
  23. package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.js +1 -1
  24. package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.js.map +1 -1
  25. package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.d.ts +4 -3
  26. package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.js +12 -1
  27. package/dist/cjs/kernel-zerodev/ethers-provider/ethers-provider.js.map +1 -1
  28. package/dist/cjs/kernel-zerodev/provider.js +1 -0
  29. package/dist/cjs/kernel-zerodev/provider.js.map +1 -1
  30. package/dist/cjs/kernel-zerodev/signer/empty-account.d.ts +10 -0
  31. package/dist/cjs/kernel-zerodev/signer/empty-account.js +43 -0
  32. package/dist/cjs/kernel-zerodev/signer/empty-account.js.map +1 -0
  33. package/dist/cjs/kernel-zerodev/utils.d.ts +2 -0
  34. package/dist/cjs/kernel-zerodev/utils.js +11 -1
  35. package/dist/cjs/kernel-zerodev/utils.js.map +1 -1
  36. package/dist/cjs/kernel-zerodev/validator/base.d.ts +6 -3
  37. package/dist/cjs/kernel-zerodev/validator/base.js +20 -3
  38. package/dist/cjs/kernel-zerodev/validator/base.js.map +1 -1
  39. package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.d.ts +1 -0
  40. package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.js +11 -0
  41. package/dist/cjs/kernel-zerodev/validator/erc165-session-key-validator.js.map +1 -1
  42. package/dist/cjs/kernel-zerodev/validator/index.d.ts +2 -1
  43. package/dist/cjs/kernel-zerodev/validator/index.js +4 -1
  44. package/dist/cjs/kernel-zerodev/validator/index.js.map +1 -1
  45. package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.js +1 -0
  46. package/dist/cjs/kernel-zerodev/validator/kill-switch-validator.js.map +1 -1
  47. package/dist/cjs/kernel-zerodev/validator/session-key-validator.d.ts +65 -0
  48. package/dist/cjs/kernel-zerodev/validator/session-key-validator.js +345 -0
  49. package/dist/cjs/kernel-zerodev/validator/session-key-validator.js.map +1 -0
  50. package/dist/cjs/kernel-zerodev/validator/types.d.ts +5 -1
  51. package/dist/cjs/kernel-zerodev/validator/types.js.map +1 -1
  52. package/dist/cjs/kernel-zerodev/validator-provider/base.d.ts +5 -4
  53. package/dist/cjs/kernel-zerodev/validator-provider/base.js +17 -2
  54. package/dist/cjs/kernel-zerodev/validator-provider/base.js.map +1 -1
  55. package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +2 -2
  56. package/dist/cjs/kernel-zerodev/validator-provider/ecdsa-provider.js.map +1 -1
  57. package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +2 -2
  58. package/dist/cjs/kernel-zerodev/validator-provider/erc165-session-key-provider.js.map +1 -1
  59. package/dist/cjs/kernel-zerodev/validator-provider/index.d.ts +2 -1
  60. package/dist/cjs/kernel-zerodev/validator-provider/index.js +4 -1
  61. package/dist/cjs/kernel-zerodev/validator-provider/index.js.map +1 -1
  62. package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +2 -2
  63. package/dist/cjs/kernel-zerodev/validator-provider/kill-switch-provider.js.map +1 -1
  64. package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.d.ts +18 -0
  65. package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.js +114 -0
  66. package/dist/cjs/kernel-zerodev/validator-provider/session-key-provider.js.map +1 -0
  67. package/dist/cjs/kernel-zerodev/validator-provider/types.d.ts +5 -0
  68. package/dist/cjs/kernel-zerodev/validator-provider/types.js.map +1 -1
  69. package/dist/esm/index.d.ts +3 -4
  70. package/dist/esm/index.js +3 -1
  71. package/dist/esm/index.js.map +1 -1
  72. package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +2 -2
  73. package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.js +2 -2
  74. package/dist/esm/kernel-zerodev/abis/ESCDAValidatorAbi.js.map +1 -1
  75. package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.d.ts +3 -3
  76. package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.js +3 -3
  77. package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.js.map +1 -1
  78. package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +158 -0
  79. package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.js +207 -0
  80. package/dist/esm/kernel-zerodev/abis/SessionKeyValidatorAbi.js.map +1 -0
  81. package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.d.ts +237 -39
  82. package/dist/esm/kernel-zerodev/abis/Test_ERC20Abi.js.map +1 -1
  83. package/dist/esm/kernel-zerodev/account.d.ts +13 -4
  84. package/dist/esm/kernel-zerodev/account.js +51 -38
  85. package/dist/esm/kernel-zerodev/account.js.map +1 -1
  86. package/dist/esm/kernel-zerodev/constants.d.ts +2 -0
  87. package/dist/esm/kernel-zerodev/constants.js +2 -0
  88. package/dist/esm/kernel-zerodev/constants.js.map +1 -1
  89. package/dist/esm/kernel-zerodev/ethers-provider/account-signer.d.ts +1 -1
  90. package/dist/esm/kernel-zerodev/ethers-provider/account-signer.js +2 -2
  91. package/dist/esm/kernel-zerodev/ethers-provider/account-signer.js.map +1 -1
  92. package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.d.ts +4 -3
  93. package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.js +13 -2
  94. package/dist/esm/kernel-zerodev/ethers-provider/ethers-provider.js.map +1 -1
  95. package/dist/esm/kernel-zerodev/provider.js +1 -0
  96. package/dist/esm/kernel-zerodev/provider.js.map +1 -1
  97. package/dist/esm/kernel-zerodev/signer/empty-account.d.ts +10 -0
  98. package/dist/esm/kernel-zerodev/signer/empty-account.js +40 -0
  99. package/dist/esm/kernel-zerodev/signer/empty-account.js.map +1 -0
  100. package/dist/esm/kernel-zerodev/utils.d.ts +2 -0
  101. package/dist/esm/kernel-zerodev/utils.js +8 -0
  102. package/dist/esm/kernel-zerodev/utils.js.map +1 -1
  103. package/dist/esm/kernel-zerodev/validator/base.d.ts +6 -3
  104. package/dist/esm/kernel-zerodev/validator/base.js +20 -3
  105. package/dist/esm/kernel-zerodev/validator/base.js.map +1 -1
  106. package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.d.ts +1 -0
  107. package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.js +13 -2
  108. package/dist/esm/kernel-zerodev/validator/erc165-session-key-validator.js.map +1 -1
  109. package/dist/esm/kernel-zerodev/validator/index.d.ts +2 -1
  110. package/dist/esm/kernel-zerodev/validator/index.js +3 -1
  111. package/dist/esm/kernel-zerodev/validator/index.js.map +1 -1
  112. package/dist/esm/kernel-zerodev/validator/kill-switch-validator.js +2 -1
  113. package/dist/esm/kernel-zerodev/validator/kill-switch-validator.js.map +1 -1
  114. package/dist/esm/kernel-zerodev/validator/session-key-validator.d.ts +65 -0
  115. package/dist/esm/kernel-zerodev/validator/session-key-validator.js +341 -0
  116. package/dist/esm/kernel-zerodev/validator/session-key-validator.js.map +1 -0
  117. package/dist/esm/kernel-zerodev/validator/types.d.ts +5 -1
  118. package/dist/esm/kernel-zerodev/validator/types.js.map +1 -1
  119. package/dist/esm/kernel-zerodev/validator-provider/base.d.ts +5 -4
  120. package/dist/esm/kernel-zerodev/validator-provider/base.js +17 -2
  121. package/dist/esm/kernel-zerodev/validator-provider/base.js.map +1 -1
  122. package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +2 -2
  123. package/dist/esm/kernel-zerodev/validator-provider/ecdsa-provider.js.map +1 -1
  124. package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +2 -2
  125. package/dist/esm/kernel-zerodev/validator-provider/erc165-session-key-provider.js.map +1 -1
  126. package/dist/esm/kernel-zerodev/validator-provider/index.d.ts +2 -1
  127. package/dist/esm/kernel-zerodev/validator-provider/index.js +3 -1
  128. package/dist/esm/kernel-zerodev/validator-provider/index.js.map +1 -1
  129. package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +2 -2
  130. package/dist/esm/kernel-zerodev/validator-provider/kill-switch-provider.js.map +1 -1
  131. package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.d.ts +18 -0
  132. package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.js +110 -0
  133. package/dist/esm/kernel-zerodev/validator-provider/session-key-provider.js.map +1 -0
  134. package/dist/esm/kernel-zerodev/validator-provider/types.d.ts +5 -0
  135. package/dist/esm/kernel-zerodev/validator-provider/types.js.map +1 -1
  136. package/dist/types/index.d.ts +3 -4
  137. package/dist/types/index.d.ts.map +1 -1
  138. package/dist/types/kernel-zerodev/abis/ESCDAValidatorAbi.d.ts +2 -2
  139. package/dist/types/kernel-zerodev/abis/KernelAccountAbi.d.ts +3 -3
  140. package/dist/types/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts +159 -0
  141. package/dist/types/kernel-zerodev/abis/SessionKeyValidatorAbi.d.ts.map +1 -0
  142. package/dist/types/kernel-zerodev/abis/Test_ERC20Abi.d.ts +237 -39
  143. package/dist/types/kernel-zerodev/abis/Test_ERC20Abi.d.ts.map +1 -1
  144. package/dist/types/kernel-zerodev/account.d.ts +13 -4
  145. package/dist/types/kernel-zerodev/account.d.ts.map +1 -1
  146. package/dist/types/kernel-zerodev/constants.d.ts +2 -0
  147. package/dist/types/kernel-zerodev/constants.d.ts.map +1 -1
  148. package/dist/types/kernel-zerodev/ethers-provider/account-signer.d.ts +1 -1
  149. package/dist/types/kernel-zerodev/ethers-provider/account-signer.d.ts.map +1 -1
  150. package/dist/types/kernel-zerodev/ethers-provider/ethers-provider.d.ts +4 -3
  151. package/dist/types/kernel-zerodev/ethers-provider/ethers-provider.d.ts.map +1 -1
  152. package/dist/types/kernel-zerodev/provider.d.ts.map +1 -1
  153. package/dist/types/kernel-zerodev/signer/empty-account.d.ts +11 -0
  154. package/dist/types/kernel-zerodev/signer/empty-account.d.ts.map +1 -0
  155. package/dist/types/kernel-zerodev/utils.d.ts +2 -0
  156. package/dist/types/kernel-zerodev/utils.d.ts.map +1 -1
  157. package/dist/types/kernel-zerodev/validator/base.d.ts +6 -3
  158. package/dist/types/kernel-zerodev/validator/base.d.ts.map +1 -1
  159. package/dist/types/kernel-zerodev/validator/erc165-session-key-validator.d.ts +1 -0
  160. package/dist/types/kernel-zerodev/validator/erc165-session-key-validator.d.ts.map +1 -1
  161. package/dist/types/kernel-zerodev/validator/index.d.ts +2 -1
  162. package/dist/types/kernel-zerodev/validator/index.d.ts.map +1 -1
  163. package/dist/types/kernel-zerodev/validator/kill-switch-validator.d.ts.map +1 -1
  164. package/dist/types/kernel-zerodev/validator/session-key-validator.d.ts +66 -0
  165. package/dist/types/kernel-zerodev/validator/session-key-validator.d.ts.map +1 -0
  166. package/dist/types/kernel-zerodev/validator/types.d.ts +5 -1
  167. package/dist/types/kernel-zerodev/validator/types.d.ts.map +1 -1
  168. package/dist/types/kernel-zerodev/validator-provider/base.d.ts +5 -4
  169. package/dist/types/kernel-zerodev/validator-provider/base.d.ts.map +1 -1
  170. package/dist/types/kernel-zerodev/validator-provider/ecdsa-provider.d.ts +2 -2
  171. package/dist/types/kernel-zerodev/validator-provider/ecdsa-provider.d.ts.map +1 -1
  172. package/dist/types/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts +2 -2
  173. package/dist/types/kernel-zerodev/validator-provider/erc165-session-key-provider.d.ts.map +1 -1
  174. package/dist/types/kernel-zerodev/validator-provider/index.d.ts +2 -1
  175. package/dist/types/kernel-zerodev/validator-provider/index.d.ts.map +1 -1
  176. package/dist/types/kernel-zerodev/validator-provider/kill-switch-provider.d.ts +2 -2
  177. package/dist/types/kernel-zerodev/validator-provider/kill-switch-provider.d.ts.map +1 -1
  178. package/dist/types/kernel-zerodev/validator-provider/session-key-provider.d.ts +19 -0
  179. package/dist/types/kernel-zerodev/validator-provider/session-key-provider.d.ts.map +1 -0
  180. package/dist/types/kernel-zerodev/validator-provider/types.d.ts +5 -0
  181. package/dist/types/kernel-zerodev/validator-provider/types.d.ts.map +1 -1
  182. package/package.json +2 -1
  183. package/src/index.ts +3 -4
  184. package/src/kernel-zerodev/abis/ESCDAValidatorAbi.ts +2 -2
  185. package/src/kernel-zerodev/abis/KernelAccountAbi.ts +3 -3
  186. package/src/kernel-zerodev/abis/SessionKeyValidatorAbi.ts +206 -0
  187. package/src/kernel-zerodev/abis/Test_ERC20Abi.ts +1 -1
  188. package/src/kernel-zerodev/account.ts +58 -50
  189. package/src/kernel-zerodev/constants.ts +3 -0
  190. package/src/kernel-zerodev/ethers-provider/account-signer.ts +3 -3
  191. package/src/kernel-zerodev/ethers-provider/ethers-provider.ts +25 -7
  192. package/src/kernel-zerodev/provider.ts +4 -2
  193. package/src/kernel-zerodev/signer/empty-account.ts +27 -0
  194. package/src/kernel-zerodev/utils.ts +10 -0
  195. package/src/kernel-zerodev/validator/base.ts +32 -6
  196. package/src/kernel-zerodev/validator/erc165-session-key-validator.ts +20 -1
  197. package/src/kernel-zerodev/validator/index.ts +8 -1
  198. package/src/kernel-zerodev/validator/kill-switch-validator.ts +6 -1
  199. package/src/kernel-zerodev/validator/session-key-validator.ts +483 -0
  200. package/src/kernel-zerodev/validator/types.ts +14 -1
  201. package/src/kernel-zerodev/validator-provider/base.ts +24 -13
  202. package/src/kernel-zerodev/validator-provider/ecdsa-provider.ts +4 -1
  203. package/src/kernel-zerodev/validator-provider/erc165-session-key-provider.ts +4 -1
  204. package/src/kernel-zerodev/validator-provider/index.ts +8 -1
  205. package/src/kernel-zerodev/validator-provider/kill-switch-provider.ts +4 -1
  206. package/src/kernel-zerodev/validator-provider/session-key-provider.ts +151 -0
  207. package/src/kernel-zerodev/validator-provider/types.ts +10 -0
package/README.md CHANGED
@@ -255,7 +255,6 @@ const selector = getFunctionSelector("toggleKillSwitch()");
255
255
  // 4. Initialize KillSwitch Validator Provider
256
256
  const blockerKillSwitchProvider = await KillSwitchProvider.init({
257
257
  projectId, // zeroDev projectId
258
- owner,
259
258
  guardian, // Guardian signer
260
259
  delaySeconds: 1000, // Delay in seconds
261
260
  opts: {
@@ -297,7 +296,6 @@ await blockerKillSwitchProvider.waitForUserOperationTransaction(
297
296
  // 7. Get KillSwitch validator provider instance with SUDO mode
298
297
  const sudoModeKillSwitchProvider = await KillSwitchProvider.init({
299
298
  projectId, // zeroDev projectId
300
- owner,
301
299
  guardian,
302
300
  delaySeconds: 0,
303
301
  opts: {
@@ -351,7 +349,6 @@ const selector = getFunctionSelector(
351
349
  // 4. Initialize ERC165SessionKey Validator Provider
352
350
  const erc165SessionKeyProvider = await ERC165SessionKeyProvider.init({
353
351
  projectId, // ZeroDev projectId
354
- owner,
355
352
  sessionKey, // Session Key signer
356
353
  sessionKeyData: {
357
354
  selector, // Function selector in the executor contract to execute
@@ -397,6 +394,131 @@ const { hash } = await erc165SessionKeyProvider.sendUserOperation({
397
394
  });
398
395
  ```
399
396
 
397
+ ### Session Key Validator
398
+
399
+ ```ts
400
+ // 1. Get the default ecdsa validator provider
401
+ const ecdsaProvider = await ECDSAProvider.init({
402
+ projectId, // zeroDev projectId
403
+ owner,
404
+ });
405
+
406
+ // 2. Initialize SessionKey Validator Provider
407
+ const sessionKey = LocalAccountSigner.privateKeyToAccountSigner(<SESSION_PRIVATE_KEY>);
408
+ const accountAddress = await ecdsaProvider.getAccount().getAddress();
409
+ const sig = getFunctionSelector(
410
+ "transfer(address, uint256)"
411
+ )
412
+ const permissions = [
413
+ {
414
+ target: <ERC20Address>, // address of the target contract
415
+ valueLimit: 0, // max value the session key can use in tx
416
+ sig, // The function selector of the function that can be called on the target contract
417
+ operation: Operation.Call, // The kind of call session key can make CALL/DELEGATECALL
418
+ rules: [ // Parameter rules
419
+ {
420
+ condition: ParamCondition.LESS_THAN_OR_EQUAL, // The condition to check
421
+ offset: 32, // The offset where the param is in the calldata
422
+ param: pad(toHex(10000), { size: 32 }), // The value to check in condition
423
+ },
424
+ {
425
+ condition: ParamCondition.EQUAL,
426
+ offset: 0,
427
+ param: pad(<SPECIFIC_ADDRESS>, { size: 32 }),
428
+ },
429
+ ],
430
+ }
431
+ ]
432
+
433
+ const sessionKeyProvider = await SessionKeyProvider.init({
434
+ projectId, //ZeroDevProject
435
+ defaultProvider: ecdsaProvider, // Pass the ECDSAProvider as default provider
436
+ sessionKey, // Session Key Signer
437
+ sessionKeyData: {
438
+ validAfter: 0,
439
+ validUntil: 0,
440
+ permissions,
441
+ paymaster, // Paymaster Address : zeroAddress means accept userOp without paymaster, oneAddress means reject userOp without paymaster, other address means accept userOp with paymaster with the address
442
+ }
443
+ });
444
+
445
+ // 3. Send the transaction
446
+ const { hash } = await sessionKeyProvider.sendUserOperation({
447
+ target: ERC20Address,
448
+ data: encodeFunctionData({
449
+ abi: TEST_ERC20Abi,
450
+ functionName: "transfer",
451
+ args: ["RECIPIENT_ADDRESS", "AMOUNT_TO_TRANSFER"],
452
+ }),
453
+ });
454
+ ```
455
+
456
+ #### Creating Session Key on the server and using it on the client side
457
+
458
+ ```ts
459
+ // 1. Initilize the session key provider
460
+ const sessionKeyProvider = await SessionKeyProvider.init({
461
+ projectId, //ZeroDevProject
462
+ defaultProvider: ecdsaProvider,
463
+ sessionKey, // Session Key Signer
464
+ sessionKeyData: {
465
+ validAfter: 0,
466
+ validUntil: 0,
467
+ permissions,
468
+ paymaster, // Paymaster Address : zeroAddress means accept userOp without paymaster, oneAddress means reject userOp without paymaster, other address means accept userOp with paymaster with the address
469
+ }
470
+ });
471
+
472
+ // 2. Serialize the session key params with the private key and send it to the client
473
+ const serializedSessionKeyParams = await sessionKeyProvider.serializeSessionKeyParams(<SESSION_PRIVATE_KEY>);
474
+
475
+ // On client side
476
+ // 3. Deserialize the session key params
477
+ const sessionKeyParams = SessionKeyProvider.deserializeSessionKeyParams(serializedSessionKeyParams);
478
+
479
+ // 4 Initialize the SessionKey Provider from the session key params
480
+ const sessionKeyProvider = await SessionKeyProvider.fromSessionKeyParams({
481
+ projectId, //ZeroDevProject
482
+ sessionKeyParams
483
+ });
484
+ ```
485
+
486
+ #### Creating Session Key on the client and approving on the server
487
+
488
+ ```ts
489
+ // On the server
490
+ // 1. Create an EmptyAccountSigner from the session key address sent from the client and pass to the provider
491
+ const sessionKey = new EmptyAccountSigner(<SESSION_KEY_ADDRESS>);
492
+
493
+ const sessionKeyProvider = await SessionKeyProvider.init({
494
+ projectId, //ZeroDevProject
495
+ defaultProvider: ecdsaProvider,
496
+ sessionKey,
497
+ sessionKeyData: {
498
+ validAfter: 0,
499
+ validUntil: 0,
500
+ permissions,
501
+ paymaster, // Paymaster Address : zeroAddress means accept userOp without paymaster, oneAddress means reject userOp without paymaster, other address means accept userOp with paymaster with the address
502
+ }
503
+ });
504
+
505
+ // 2. Serialize the session key params and send it to the client
506
+ const serializedSessionKeyParams = await sessionKeyProvider.serializeSessionKeyParams();
507
+
508
+ // On client side
509
+ // 3. Deserialize the session key params and pass the session private key to the object
510
+ const sessionKeyParams = {
511
+ ...SessionKeyProvider.deserializeSessionKeyParams(serializedSessionKeyParams)
512
+ sessionPrivateKey
513
+ }
514
+
515
+ // 4. Initialize the SessionKey Provider from the session key params
516
+ const sessionKeyProvider = await SessionKeyProvider.fromSessionKeyParams({
517
+ projectId, //ZeroDevProject
518
+ sessionKeyParams
519
+ });
520
+ ```
521
+
400
522
  ## Components
401
523
 
402
524
  ### Core Components
@@ -2,10 +2,8 @@ export * from "./kernel-zerodev/abis/index.js";
2
2
  export { ValidatorMode, KernelBaseValidator, } from "./kernel-zerodev/validator/base.js";
3
3
  export * from "./kernel-zerodev/validator/index.js";
4
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
5
  export type { KernelBaseValidatorParams } from "./kernel-zerodev/validator/base.js";
6
+ export { ParamCondition } from "./kernel-zerodev/validator/session-key-validator.js";
9
7
  export { ValidatorProvider } from "./kernel-zerodev/validator-provider/base.js";
10
8
  export type { ValidatorProviderParams, ValidatorProviderParamsOpts, ExtendedValidatorProviderParams, } from "./kernel-zerodev/validator-provider/base.js";
11
9
  export type * from "./kernel-zerodev/validator-provider/types.js";
@@ -13,10 +11,11 @@ export * from "./kernel-zerodev/validator-provider/index.js";
13
11
  export type * from "./kernel-zerodev/paymaster/types.js";
14
12
  export { KernelSmartContractAccount } from "./kernel-zerodev/account.js";
15
13
  export type { KernelSmartAccountParams } from "./kernel-zerodev/account.js";
16
- export { ZeroDevProvider } from "./kernel-zerodev/provider.js";
14
+ export { ZeroDevProvider, Operation } from "./kernel-zerodev/provider.js";
17
15
  export * from "./kernel-zerodev/utils.js";
18
16
  export { getChainId } from "./kernel-zerodev/api/index.js";
19
17
  export { ZeroDevEthersProvider } from "./kernel-zerodev/ethers-provider/ethers-provider.js";
20
18
  export { ZeroDevAccountSigner } from "./kernel-zerodev/ethers-provider/account-signer.js";
19
+ export { EmptyAccountSigner } from "./kernel-zerodev/signer/empty-account.js";
21
20
  export * as constants from "./kernel-zerodev/constants.js";
22
21
  export * from "./kernel-zerodev/owner/index.js";
package/dist/cjs/index.js CHANGED
@@ -26,12 +26,14 @@ var __importStar = (this && this.__importStar) || function (mod) {
26
26
  return result;
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.constants = exports.ZeroDevAccountSigner = exports.ZeroDevEthersProvider = exports.getChainId = exports.ZeroDevProvider = exports.KernelSmartContractAccount = exports.ValidatorProvider = exports.KernelBaseValidator = exports.ValidatorMode = void 0;
29
+ exports.constants = exports.EmptyAccountSigner = exports.ZeroDevAccountSigner = exports.ZeroDevEthersProvider = exports.getChainId = exports.Operation = exports.ZeroDevProvider = exports.KernelSmartContractAccount = exports.ValidatorProvider = exports.ParamCondition = exports.KernelBaseValidator = exports.ValidatorMode = void 0;
30
30
  __exportStar(require("./kernel-zerodev/abis/index.js"), exports);
31
31
  var base_js_1 = require("./kernel-zerodev/validator/base.js");
32
32
  Object.defineProperty(exports, "ValidatorMode", { enumerable: true, get: function () { return base_js_1.ValidatorMode; } });
33
33
  Object.defineProperty(exports, "KernelBaseValidator", { enumerable: true, get: function () { return base_js_1.KernelBaseValidator; } });
34
34
  __exportStar(require("./kernel-zerodev/validator/index.js"), exports);
35
+ var session_key_validator_js_1 = require("./kernel-zerodev/validator/session-key-validator.js");
36
+ Object.defineProperty(exports, "ParamCondition", { enumerable: true, get: function () { return session_key_validator_js_1.ParamCondition; } });
35
37
  var base_js_2 = require("./kernel-zerodev/validator-provider/base.js");
36
38
  Object.defineProperty(exports, "ValidatorProvider", { enumerable: true, get: function () { return base_js_2.ValidatorProvider; } });
37
39
  __exportStar(require("./kernel-zerodev/validator-provider/index.js"), exports);
@@ -39,6 +41,7 @@ var account_js_1 = require("./kernel-zerodev/account.js");
39
41
  Object.defineProperty(exports, "KernelSmartContractAccount", { enumerable: true, get: function () { return account_js_1.KernelSmartContractAccount; } });
40
42
  var provider_js_1 = require("./kernel-zerodev/provider.js");
41
43
  Object.defineProperty(exports, "ZeroDevProvider", { enumerable: true, get: function () { return provider_js_1.ZeroDevProvider; } });
44
+ Object.defineProperty(exports, "Operation", { enumerable: true, get: function () { return provider_js_1.Operation; } });
42
45
  __exportStar(require("./kernel-zerodev/utils.js"), exports);
43
46
  var index_js_1 = require("./kernel-zerodev/api/index.js");
44
47
  Object.defineProperty(exports, "getChainId", { enumerable: true, get: function () { return index_js_1.getChainId; } });
@@ -46,6 +49,8 @@ var ethers_provider_js_1 = require("./kernel-zerodev/ethers-provider/ethers-prov
46
49
  Object.defineProperty(exports, "ZeroDevEthersProvider", { enumerable: true, get: function () { return ethers_provider_js_1.ZeroDevEthersProvider; } });
47
50
  var account_signer_js_1 = require("./kernel-zerodev/ethers-provider/account-signer.js");
48
51
  Object.defineProperty(exports, "ZeroDevAccountSigner", { enumerable: true, get: function () { return account_signer_js_1.ZeroDevAccountSigner; } });
52
+ var empty_account_js_1 = require("./kernel-zerodev/signer/empty-account.js");
53
+ Object.defineProperty(exports, "EmptyAccountSigner", { enumerable: true, get: function () { return empty_account_js_1.EmptyAccountSigner; } });
49
54
  exports.constants = __importStar(require("./kernel-zerodev/constants.js"));
50
55
  __exportStar(require("./kernel-zerodev/owner/index.js"), exports);
51
56
  //# sourceMappingURL=index.js.map
@@ -1 +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;AAC9B,wFAA0F;AAAjF,yHAAA,oBAAoB,OAAA;AAE7B,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\";\nexport { ZeroDevAccountSigner } from \"./kernel-zerodev/ethers-provider/account-signer.js\";\n\nexport * as constants from \"./kernel-zerodev/constants.js\";\n\n// Owner exports\nexport * from \"./kernel-zerodev/owner/index.js\";\n"]}
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;AAGpD,gGAAqF;AAA5E,0HAAA,cAAc,OAAA;AAGvB,uEAAgF;AAAvE,4GAAA,iBAAiB,OAAA;AAO1B,+EAA6D;AAI7D,0DAAyE;AAAhE,wHAAA,0BAA0B,OAAA;AAEnC,4DAA0E;AAAjE,8GAAA,eAAe,OAAA;AAAE,wGAAA,SAAS,OAAA;AAGnC,4DAA0C;AAC1C,0DAA2D;AAAlD,sGAAA,UAAU,OAAA;AACnB,0FAA4F;AAAnF,2HAAA,qBAAqB,OAAA;AAC9B,wFAA0F;AAAjF,yHAAA,oBAAoB,OAAA;AAC7B,6EAA8E;AAArE,sHAAA,kBAAkB,OAAA;AAE3B,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 { KernelBaseValidatorParams } from \"./kernel-zerodev/validator/base.js\";\nexport { ParamCondition } from \"./kernel-zerodev/validator/session-key-validator.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, Operation } 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\";\nexport { ZeroDevAccountSigner } from \"./kernel-zerodev/ethers-provider/account-signer.js\";\nexport { EmptyAccountSigner } from \"./kernel-zerodev/signer/empty-account.js\";\n\nexport * as constants from \"./kernel-zerodev/constants.js\";\n\n// Owner exports\nexport * from \"./kernel-zerodev/owner/index.js\";\n"]}
@@ -82,7 +82,7 @@ export declare const ECDSAValidatorAbi: readonly [{
82
82
  }];
83
83
  readonly name: "validateSignature";
84
84
  readonly outputs: readonly [{
85
- readonly internalType: "uint256";
85
+ readonly internalType: "ValidationData";
86
86
  readonly name: "";
87
87
  readonly type: "uint256";
88
88
  }];
@@ -149,7 +149,7 @@ export declare const ECDSAValidatorAbi: readonly [{
149
149
  }];
150
150
  readonly name: "validateUserOp";
151
151
  readonly outputs: readonly [{
152
- readonly internalType: "uint256";
152
+ readonly internalType: "ValidationData";
153
153
  readonly name: "validationData";
154
154
  readonly type: "uint256";
155
155
  }];
@@ -112,7 +112,7 @@ exports.ECDSAValidatorAbi = [
112
112
  name: "validateSignature",
113
113
  outputs: [
114
114
  {
115
- internalType: "uint256",
115
+ internalType: "ValidationData",
116
116
  name: "",
117
117
  type: "uint256",
118
118
  },
@@ -198,7 +198,7 @@ exports.ECDSAValidatorAbi = [
198
198
  name: "validateUserOp",
199
199
  outputs: [
200
200
  {
201
- internalType: "uint256",
201
+ internalType: "ValidationData",
202
202
  name: "validationData",
203
203
  type: "uint256",
204
204
  },
@@ -1 +1 @@
1
- {"version":3,"file":"ESCDAValidatorAbi.js","sourceRoot":"","sources":["../../../../src/kernel-zerodev/abis/ESCDAValidatorAbi.ts"],"names":[],"mappings":"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","sourcesContent":["export const ECDSAValidatorAbi = [\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"kernel\",\n type: \"address\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"oldOwner\",\n type: \"address\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"newOwner\",\n type: \"address\",\n },\n ],\n name: \"OwnerChanged\",\n type: \"event\",\n },\n {\n inputs: [\n {\n internalType: \"bytes\",\n name: \"\",\n type: \"bytes\",\n },\n ],\n name: \"disable\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n name: \"ecdsaValidatorStorage\",\n outputs: [\n {\n internalType: \"address\",\n name: \"owner\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes\",\n name: \"_data\",\n type: \"bytes\",\n },\n ],\n name: \"enable\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"_caller\",\n type: \"address\",\n },\n {\n internalType: \"bytes\",\n name: \"\",\n type: \"bytes\",\n },\n ],\n name: \"validCaller\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"hash\",\n type: \"bytes32\",\n },\n {\n internalType: \"bytes\",\n name: \"signature\",\n type: \"bytes\",\n },\n ],\n name: \"validateSignature\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"sender\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"nonce\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"initCode\",\n type: \"bytes\",\n },\n {\n internalType: \"bytes\",\n name: \"callData\",\n type: \"bytes\",\n },\n {\n internalType: \"uint256\",\n name: \"callGasLimit\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"verificationGasLimit\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"preVerificationGas\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"maxFeePerGas\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"maxPriorityFeePerGas\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"paymasterAndData\",\n type: \"bytes\",\n },\n {\n internalType: \"bytes\",\n name: \"signature\",\n type: \"bytes\",\n },\n ],\n internalType: \"struct UserOperation\",\n name: \"_userOp\",\n type: \"tuple\",\n },\n {\n internalType: \"bytes32\",\n name: \"_userOpHash\",\n type: \"bytes32\",\n },\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n name: \"validateUserOp\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"validationData\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"payable\",\n type: \"function\",\n },\n] as const;\n"]}
1
+ {"version":3,"file":"ESCDAValidatorAbi.js","sourceRoot":"","sources":["../../../../src/kernel-zerodev/abis/ESCDAValidatorAbi.ts"],"names":[],"mappings":";;;AAAa,QAAA,iBAAiB,GAAG;IAC/B;QACE,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACN;gBACE,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,OAAO;aACd;SACF;QACD,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,SAAS;QAC1B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,uBAAuB;QAC7B,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;aACd;SACF;QACD,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,SAAS;QAC1B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,OAAO;aACd;SACF;QACD,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;aACb;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,OAAO;aACd;SACF;QACD,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,gBAAgB;gBAC9B,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,UAAU,EAAE;oBACV;wBACE,YAAY,EAAE,SAAS;wBACvB,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,YAAY,EAAE,SAAS;wBACvB,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,YAAY,EAAE,OAAO;wBACrB,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,OAAO;qBACd;oBACD;wBACE,YAAY,EAAE,OAAO;wBACrB,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,OAAO;qBACd;oBACD;wBACE,YAAY,EAAE,SAAS;wBACvB,IAAI,EAAE,cAAc;wBACpB,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,YAAY,EAAE,SAAS;wBACvB,IAAI,EAAE,sBAAsB;wBAC5B,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,YAAY,EAAE,SAAS;wBACvB,IAAI,EAAE,oBAAoB;wBAC1B,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,YAAY,EAAE,SAAS;wBACvB,IAAI,EAAE,cAAc;wBACpB,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,YAAY,EAAE,SAAS;wBACvB,IAAI,EAAE,sBAAsB;wBAC5B,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,YAAY,EAAE,OAAO;wBACrB,IAAI,EAAE,kBAAkB;wBACxB,IAAI,EAAE,OAAO;qBACd;oBACD;wBACE,YAAY,EAAE,OAAO;wBACrB,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,OAAO;qBACd;iBACF;gBACD,YAAY,EAAE,sBAAsB;gBACpC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,OAAO;aACd;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,gBAAgB;gBAC9B,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,SAAS;QAC1B,IAAI,EAAE,UAAU;KACjB;CACO,CAAC","sourcesContent":["export const ECDSAValidatorAbi = [\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"kernel\",\n type: \"address\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"oldOwner\",\n type: \"address\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"newOwner\",\n type: \"address\",\n },\n ],\n name: \"OwnerChanged\",\n type: \"event\",\n },\n {\n inputs: [\n {\n internalType: \"bytes\",\n name: \"\",\n type: \"bytes\",\n },\n ],\n name: \"disable\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n name: \"ecdsaValidatorStorage\",\n outputs: [\n {\n internalType: \"address\",\n name: \"owner\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes\",\n name: \"_data\",\n type: \"bytes\",\n },\n ],\n name: \"enable\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"_caller\",\n type: \"address\",\n },\n {\n internalType: \"bytes\",\n name: \"\",\n type: \"bytes\",\n },\n ],\n name: \"validCaller\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"hash\",\n type: \"bytes32\",\n },\n {\n internalType: \"bytes\",\n name: \"signature\",\n type: \"bytes\",\n },\n ],\n name: \"validateSignature\",\n outputs: [\n {\n internalType: \"ValidationData\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"sender\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"nonce\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"initCode\",\n type: \"bytes\",\n },\n {\n internalType: \"bytes\",\n name: \"callData\",\n type: \"bytes\",\n },\n {\n internalType: \"uint256\",\n name: \"callGasLimit\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"verificationGasLimit\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"preVerificationGas\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"maxFeePerGas\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"maxPriorityFeePerGas\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"paymasterAndData\",\n type: \"bytes\",\n },\n {\n internalType: \"bytes\",\n name: \"signature\",\n type: \"bytes\",\n },\n ],\n internalType: \"struct UserOperation\",\n name: \"_userOp\",\n type: \"tuple\",\n },\n {\n internalType: \"bytes32\",\n name: \"_userOpHash\",\n type: \"bytes32\",\n },\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n name: \"validateUserOp\",\n outputs: [\n {\n internalType: \"ValidationData\",\n name: \"validationData\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"payable\",\n type: \"function\",\n },\n] as const;\n"]}
@@ -175,11 +175,11 @@ export declare const KernelAccountAbi: readonly [{
175
175
  readonly name: "getExecution";
176
176
  readonly outputs: readonly [{
177
177
  readonly components: readonly [{
178
- readonly internalType: "uint48";
178
+ readonly internalType: "ValidAfter";
179
179
  readonly name: "validAfter";
180
180
  readonly type: "uint48";
181
181
  }, {
182
- readonly internalType: "uint48";
182
+ readonly internalType: "ValidUntil";
183
183
  readonly name: "validUntil";
184
184
  readonly type: "uint48";
185
185
  }, {
@@ -474,7 +474,7 @@ export declare const KernelAccountAbi: readonly [{
474
474
  }];
475
475
  readonly name: "validateUserOp";
476
476
  readonly outputs: readonly [{
477
- readonly internalType: "uint256";
477
+ readonly internalType: "ValidationData";
478
478
  readonly name: "validationData";
479
479
  readonly type: "uint256";
480
480
  }];
@@ -230,12 +230,12 @@ exports.KernelAccountAbi = [
230
230
  {
231
231
  components: [
232
232
  {
233
- internalType: "uint48",
233
+ internalType: "ValidAfter",
234
234
  name: "validAfter",
235
235
  type: "uint48",
236
236
  },
237
237
  {
238
- internalType: "uint48",
238
+ internalType: "ValidUntil",
239
239
  name: "validUntil",
240
240
  type: "uint48",
241
241
  },
@@ -617,7 +617,7 @@ exports.KernelAccountAbi = [
617
617
  name: "validateUserOp",
618
618
  outputs: [
619
619
  {
620
- internalType: "uint256",
620
+ internalType: "ValidationData",
621
621
  name: "validationData",
622
622
  type: "uint256",
623
623
  },
@@ -1 +1 @@
1
- {"version":3,"file":"KernelAccountAbi.js","sourceRoot":"","sources":["../../../../src/kernel-zerodev/abis/KernelAccountAbi.ts"],"names":[],"mappings":"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","sourcesContent":["export const KernelAccountAbi = [\n {\n inputs: [\n {\n internalType: \"contract IEntryPoint\",\n name: \"_entryPoint\",\n type: \"address\",\n },\n ],\n stateMutability: \"nonpayable\",\n type: \"constructor\",\n },\n {\n inputs: [],\n name: \"AlreadyInitialized\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"DisabledMode\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"NotAuthorizedCaller\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"NotEntryPoint\",\n type: \"error\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"oldValidator\",\n type: \"address\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"newValidator\",\n type: \"address\",\n },\n ],\n name: \"DefaultValidatorChanged\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"bytes4\",\n name: \"selector\",\n type: \"bytes4\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"executor\",\n type: \"address\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"validator\",\n type: \"address\",\n },\n ],\n name: \"ExecutionChanged\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"newImplementation\",\n type: \"address\",\n },\n ],\n name: \"Upgraded\",\n type: \"event\",\n },\n {\n stateMutability: \"payable\",\n type: \"fallback\",\n },\n {\n inputs: [\n {\n internalType: \"bytes4\",\n name: \"_disableFlag\",\n type: \"bytes4\",\n },\n ],\n name: \"disableMode\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"eip712Domain\",\n outputs: [\n {\n internalType: \"bytes1\",\n name: \"fields\",\n type: \"bytes1\",\n },\n {\n internalType: \"string\",\n name: \"name\",\n type: \"string\",\n },\n {\n internalType: \"string\",\n name: \"version\",\n type: \"string\",\n },\n {\n internalType: \"uint256\",\n name: \"chainId\",\n type: \"uint256\",\n },\n {\n internalType: \"address\",\n name: \"verifyingContract\",\n type: \"address\",\n },\n {\n internalType: \"bytes32\",\n name: \"salt\",\n type: \"bytes32\",\n },\n {\n internalType: \"uint256[]\",\n name: \"extensions\",\n type: \"uint256[]\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"entryPoint\",\n outputs: [\n {\n internalType: \"contract IEntryPoint\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"to\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"value\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"data\",\n type: \"bytes\",\n },\n {\n internalType: \"enum Operation\",\n name: \"operation\",\n type: \"uint8\",\n },\n ],\n name: \"execute\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getDefaultValidator\",\n outputs: [\n {\n internalType: \"contract IKernelValidator\",\n name: \"validator\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getDisabledMode\",\n outputs: [\n {\n internalType: \"bytes4\",\n name: \"disabled\",\n type: \"bytes4\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes4\",\n name: \"_selector\",\n type: \"bytes4\",\n },\n ],\n name: \"getExecution\",\n outputs: [\n {\n components: [\n {\n internalType: \"uint48\",\n name: \"validAfter\",\n type: \"uint48\",\n },\n {\n internalType: \"uint48\",\n name: \"validUntil\",\n type: \"uint48\",\n },\n {\n internalType: \"address\",\n name: \"executor\",\n type: \"address\",\n },\n {\n internalType: \"contract IKernelValidator\",\n name: \"validator\",\n type: \"address\",\n },\n ],\n internalType: \"struct ExecutionDetail\",\n name: \"\",\n type: \"tuple\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getLastDisabledTime\",\n outputs: [\n {\n internalType: \"uint48\",\n name: \"\",\n type: \"uint48\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint192\",\n name: \"key\",\n type: \"uint192\",\n },\n ],\n name: \"getNonce\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getNonce\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"contract IKernelValidator\",\n name: \"_defaultValidator\",\n type: \"address\",\n },\n {\n internalType: \"bytes\",\n name: \"_data\",\n type: \"bytes\",\n },\n ],\n name: \"initialize\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"hash\",\n type: \"bytes32\",\n },\n {\n internalType: \"bytes\",\n name: \"signature\",\n type: \"bytes\",\n },\n ],\n name: \"isValidSignature\",\n outputs: [\n {\n internalType: \"bytes4\",\n name: \"\",\n type: \"bytes4\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"name\",\n outputs: [\n {\n internalType: \"string\",\n name: \"\",\n type: \"string\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"uint256[]\",\n name: \"\",\n type: \"uint256[]\",\n },\n {\n internalType: \"uint256[]\",\n name: \"\",\n type: \"uint256[]\",\n },\n {\n internalType: \"bytes\",\n name: \"\",\n type: \"bytes\",\n },\n ],\n name: \"onERC1155BatchReceived\",\n outputs: [\n {\n internalType: \"bytes4\",\n name: \"\",\n type: \"bytes4\",\n },\n ],\n stateMutability: \"pure\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"\",\n type: \"bytes\",\n },\n ],\n name: \"onERC1155Received\",\n outputs: [\n {\n internalType: \"bytes4\",\n name: \"\",\n type: \"bytes4\",\n },\n ],\n stateMutability: \"pure\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"\",\n type: \"bytes\",\n },\n ],\n name: \"onERC721Received\",\n outputs: [\n {\n internalType: \"bytes4\",\n name: \"\",\n type: \"bytes4\",\n },\n ],\n stateMutability: \"pure\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"contract IKernelValidator\",\n name: \"_defaultValidator\",\n type: \"address\",\n },\n {\n internalType: \"bytes\",\n name: \"_data\",\n type: \"bytes\",\n },\n ],\n name: \"setDefaultValidator\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes4\",\n name: \"_selector\",\n type: \"bytes4\",\n },\n {\n internalType: \"address\",\n name: \"_executor\",\n type: \"address\",\n },\n {\n internalType: \"contract IKernelValidator\",\n name: \"_validator\",\n type: \"address\",\n },\n {\n internalType: \"uint48\",\n name: \"_validUntil\",\n type: \"uint48\",\n },\n {\n internalType: \"uint48\",\n name: \"_validAfter\",\n type: \"uint48\",\n },\n {\n internalType: \"bytes\",\n name: \"_enableData\",\n type: \"bytes\",\n },\n ],\n name: \"setExecution\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"_newImplementation\",\n type: \"address\",\n },\n ],\n name: \"upgradeTo\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"sender\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"nonce\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"initCode\",\n type: \"bytes\",\n },\n {\n internalType: \"bytes\",\n name: \"callData\",\n type: \"bytes\",\n },\n {\n internalType: \"uint256\",\n name: \"callGasLimit\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"verificationGasLimit\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"preVerificationGas\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"maxFeePerGas\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"maxPriorityFeePerGas\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"paymasterAndData\",\n type: \"bytes\",\n },\n {\n internalType: \"bytes\",\n name: \"signature\",\n type: \"bytes\",\n },\n ],\n internalType: \"struct UserOperation\",\n name: \"userOp\",\n type: \"tuple\",\n },\n {\n internalType: \"bytes32\",\n name: \"userOpHash\",\n type: \"bytes32\",\n },\n {\n internalType: \"uint256\",\n name: \"missingAccountFunds\",\n type: \"uint256\",\n },\n ],\n name: \"validateUserOp\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"validationData\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"version\",\n outputs: [\n {\n internalType: \"string\",\n name: \"\",\n type: \"string\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n stateMutability: \"payable\",\n type: \"receive\",\n },\n] as const;\n"]}
1
+ {"version":3,"file":"KernelAccountAbi.js","sourceRoot":"","sources":["../../../../src/kernel-zerodev/abis/KernelAccountAbi.ts"],"names":[],"mappings":"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","sourcesContent":["export const KernelAccountAbi = [\n {\n inputs: [\n {\n internalType: \"contract IEntryPoint\",\n name: \"_entryPoint\",\n type: \"address\",\n },\n ],\n stateMutability: \"nonpayable\",\n type: \"constructor\",\n },\n {\n inputs: [],\n name: \"AlreadyInitialized\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"DisabledMode\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"NotAuthorizedCaller\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"NotEntryPoint\",\n type: \"error\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"oldValidator\",\n type: \"address\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"newValidator\",\n type: \"address\",\n },\n ],\n name: \"DefaultValidatorChanged\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"bytes4\",\n name: \"selector\",\n type: \"bytes4\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"executor\",\n type: \"address\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"validator\",\n type: \"address\",\n },\n ],\n name: \"ExecutionChanged\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"newImplementation\",\n type: \"address\",\n },\n ],\n name: \"Upgraded\",\n type: \"event\",\n },\n {\n stateMutability: \"payable\",\n type: \"fallback\",\n },\n {\n inputs: [\n {\n internalType: \"bytes4\",\n name: \"_disableFlag\",\n type: \"bytes4\",\n },\n ],\n name: \"disableMode\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"eip712Domain\",\n outputs: [\n {\n internalType: \"bytes1\",\n name: \"fields\",\n type: \"bytes1\",\n },\n {\n internalType: \"string\",\n name: \"name\",\n type: \"string\",\n },\n {\n internalType: \"string\",\n name: \"version\",\n type: \"string\",\n },\n {\n internalType: \"uint256\",\n name: \"chainId\",\n type: \"uint256\",\n },\n {\n internalType: \"address\",\n name: \"verifyingContract\",\n type: \"address\",\n },\n {\n internalType: \"bytes32\",\n name: \"salt\",\n type: \"bytes32\",\n },\n {\n internalType: \"uint256[]\",\n name: \"extensions\",\n type: \"uint256[]\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"entryPoint\",\n outputs: [\n {\n internalType: \"contract IEntryPoint\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"to\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"value\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"data\",\n type: \"bytes\",\n },\n {\n internalType: \"enum Operation\",\n name: \"operation\",\n type: \"uint8\",\n },\n ],\n name: \"execute\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getDefaultValidator\",\n outputs: [\n {\n internalType: \"contract IKernelValidator\",\n name: \"validator\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getDisabledMode\",\n outputs: [\n {\n internalType: \"bytes4\",\n name: \"disabled\",\n type: \"bytes4\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes4\",\n name: \"_selector\",\n type: \"bytes4\",\n },\n ],\n name: \"getExecution\",\n outputs: [\n {\n components: [\n {\n internalType: \"ValidAfter\",\n name: \"validAfter\",\n type: \"uint48\",\n },\n {\n internalType: \"ValidUntil\",\n name: \"validUntil\",\n type: \"uint48\",\n },\n {\n internalType: \"address\",\n name: \"executor\",\n type: \"address\",\n },\n {\n internalType: \"contract IKernelValidator\",\n name: \"validator\",\n type: \"address\",\n },\n ],\n internalType: \"struct ExecutionDetail\",\n name: \"\",\n type: \"tuple\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getLastDisabledTime\",\n outputs: [\n {\n internalType: \"uint48\",\n name: \"\",\n type: \"uint48\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint192\",\n name: \"key\",\n type: \"uint192\",\n },\n ],\n name: \"getNonce\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getNonce\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"contract IKernelValidator\",\n name: \"_defaultValidator\",\n type: \"address\",\n },\n {\n internalType: \"bytes\",\n name: \"_data\",\n type: \"bytes\",\n },\n ],\n name: \"initialize\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"hash\",\n type: \"bytes32\",\n },\n {\n internalType: \"bytes\",\n name: \"signature\",\n type: \"bytes\",\n },\n ],\n name: \"isValidSignature\",\n outputs: [\n {\n internalType: \"bytes4\",\n name: \"\",\n type: \"bytes4\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"name\",\n outputs: [\n {\n internalType: \"string\",\n name: \"\",\n type: \"string\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"uint256[]\",\n name: \"\",\n type: \"uint256[]\",\n },\n {\n internalType: \"uint256[]\",\n name: \"\",\n type: \"uint256[]\",\n },\n {\n internalType: \"bytes\",\n name: \"\",\n type: \"bytes\",\n },\n ],\n name: \"onERC1155BatchReceived\",\n outputs: [\n {\n internalType: \"bytes4\",\n name: \"\",\n type: \"bytes4\",\n },\n ],\n stateMutability: \"pure\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"\",\n type: \"bytes\",\n },\n ],\n name: \"onERC1155Received\",\n outputs: [\n {\n internalType: \"bytes4\",\n name: \"\",\n type: \"bytes4\",\n },\n ],\n stateMutability: \"pure\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"\",\n type: \"bytes\",\n },\n ],\n name: \"onERC721Received\",\n outputs: [\n {\n internalType: \"bytes4\",\n name: \"\",\n type: \"bytes4\",\n },\n ],\n stateMutability: \"pure\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"contract IKernelValidator\",\n name: \"_defaultValidator\",\n type: \"address\",\n },\n {\n internalType: \"bytes\",\n name: \"_data\",\n type: \"bytes\",\n },\n ],\n name: \"setDefaultValidator\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes4\",\n name: \"_selector\",\n type: \"bytes4\",\n },\n {\n internalType: \"address\",\n name: \"_executor\",\n type: \"address\",\n },\n {\n internalType: \"contract IKernelValidator\",\n name: \"_validator\",\n type: \"address\",\n },\n {\n internalType: \"uint48\",\n name: \"_validUntil\",\n type: \"uint48\",\n },\n {\n internalType: \"uint48\",\n name: \"_validAfter\",\n type: \"uint48\",\n },\n {\n internalType: \"bytes\",\n name: \"_enableData\",\n type: \"bytes\",\n },\n ],\n name: \"setExecution\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"_newImplementation\",\n type: \"address\",\n },\n ],\n name: \"upgradeTo\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"sender\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"nonce\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"initCode\",\n type: \"bytes\",\n },\n {\n internalType: \"bytes\",\n name: \"callData\",\n type: \"bytes\",\n },\n {\n internalType: \"uint256\",\n name: \"callGasLimit\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"verificationGasLimit\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"preVerificationGas\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"maxFeePerGas\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"maxPriorityFeePerGas\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"paymasterAndData\",\n type: \"bytes\",\n },\n {\n internalType: \"bytes\",\n name: \"signature\",\n type: \"bytes\",\n },\n ],\n internalType: \"struct UserOperation\",\n name: \"userOp\",\n type: \"tuple\",\n },\n {\n internalType: \"bytes32\",\n name: \"userOpHash\",\n type: \"bytes32\",\n },\n {\n internalType: \"uint256\",\n name: \"missingAccountFunds\",\n type: \"uint256\",\n },\n ],\n name: \"validateUserOp\",\n outputs: [\n {\n internalType: \"ValidationData\",\n name: \"validationData\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"version\",\n outputs: [\n {\n internalType: \"string\",\n name: \"\",\n type: \"string\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n stateMutability: \"payable\",\n type: \"receive\",\n },\n] as const;\n"]}
@@ -0,0 +1,158 @@
1
+ export declare const SessionKeyValidatorAbi: readonly [{
2
+ readonly inputs: readonly [{
3
+ readonly internalType: "bytes";
4
+ readonly name: "_data";
5
+ readonly type: "bytes";
6
+ }];
7
+ readonly name: "disable";
8
+ readonly outputs: readonly [];
9
+ readonly stateMutability: "payable";
10
+ readonly type: "function";
11
+ }, {
12
+ readonly inputs: readonly [{
13
+ readonly internalType: "bytes";
14
+ readonly name: "_data";
15
+ readonly type: "bytes";
16
+ }];
17
+ readonly name: "enable";
18
+ readonly outputs: readonly [];
19
+ readonly stateMutability: "payable";
20
+ readonly type: "function";
21
+ }, {
22
+ readonly inputs: readonly [{
23
+ readonly internalType: "address";
24
+ readonly name: "sessionKey";
25
+ readonly type: "address";
26
+ }, {
27
+ readonly internalType: "address";
28
+ readonly name: "kernel";
29
+ readonly type: "address";
30
+ }];
31
+ readonly name: "sessionData";
32
+ readonly outputs: readonly [{
33
+ readonly internalType: "bytes32";
34
+ readonly name: "merkleRoot";
35
+ readonly type: "bytes32";
36
+ }, {
37
+ readonly internalType: "ValidAfter";
38
+ readonly name: "validAfter";
39
+ readonly type: "uint48";
40
+ }, {
41
+ readonly internalType: "ValidUntil";
42
+ readonly name: "validUntil";
43
+ readonly type: "uint48";
44
+ }, {
45
+ readonly internalType: "address";
46
+ readonly name: "paymaster";
47
+ readonly type: "address";
48
+ }, {
49
+ readonly internalType: "bool";
50
+ readonly name: "enabled";
51
+ readonly type: "bool";
52
+ }];
53
+ readonly stateMutability: "view";
54
+ readonly type: "function";
55
+ }, {
56
+ readonly inputs: readonly [{
57
+ readonly internalType: "address";
58
+ readonly name: "";
59
+ readonly type: "address";
60
+ }, {
61
+ readonly internalType: "bytes";
62
+ readonly name: "";
63
+ readonly type: "bytes";
64
+ }];
65
+ readonly name: "validCaller";
66
+ readonly outputs: readonly [{
67
+ readonly internalType: "bool";
68
+ readonly name: "";
69
+ readonly type: "bool";
70
+ }];
71
+ readonly stateMutability: "pure";
72
+ readonly type: "function";
73
+ }, {
74
+ readonly inputs: readonly [{
75
+ readonly internalType: "bytes32";
76
+ readonly name: "";
77
+ readonly type: "bytes32";
78
+ }, {
79
+ readonly internalType: "bytes";
80
+ readonly name: "";
81
+ readonly type: "bytes";
82
+ }];
83
+ readonly name: "validateSignature";
84
+ readonly outputs: readonly [{
85
+ readonly internalType: "ValidationData";
86
+ readonly name: "";
87
+ readonly type: "uint256";
88
+ }];
89
+ readonly stateMutability: "pure";
90
+ readonly type: "function";
91
+ }, {
92
+ readonly inputs: readonly [{
93
+ readonly components: readonly [{
94
+ readonly internalType: "address";
95
+ readonly name: "sender";
96
+ readonly type: "address";
97
+ }, {
98
+ readonly internalType: "uint256";
99
+ readonly name: "nonce";
100
+ readonly type: "uint256";
101
+ }, {
102
+ readonly internalType: "bytes";
103
+ readonly name: "initCode";
104
+ readonly type: "bytes";
105
+ }, {
106
+ readonly internalType: "bytes";
107
+ readonly name: "callData";
108
+ readonly type: "bytes";
109
+ }, {
110
+ readonly internalType: "uint256";
111
+ readonly name: "callGasLimit";
112
+ readonly type: "uint256";
113
+ }, {
114
+ readonly internalType: "uint256";
115
+ readonly name: "verificationGasLimit";
116
+ readonly type: "uint256";
117
+ }, {
118
+ readonly internalType: "uint256";
119
+ readonly name: "preVerificationGas";
120
+ readonly type: "uint256";
121
+ }, {
122
+ readonly internalType: "uint256";
123
+ readonly name: "maxFeePerGas";
124
+ readonly type: "uint256";
125
+ }, {
126
+ readonly internalType: "uint256";
127
+ readonly name: "maxPriorityFeePerGas";
128
+ readonly type: "uint256";
129
+ }, {
130
+ readonly internalType: "bytes";
131
+ readonly name: "paymasterAndData";
132
+ readonly type: "bytes";
133
+ }, {
134
+ readonly internalType: "bytes";
135
+ readonly name: "signature";
136
+ readonly type: "bytes";
137
+ }];
138
+ readonly internalType: "struct UserOperation";
139
+ readonly name: "userOp";
140
+ readonly type: "tuple";
141
+ }, {
142
+ readonly internalType: "bytes32";
143
+ readonly name: "userOpHash";
144
+ readonly type: "bytes32";
145
+ }, {
146
+ readonly internalType: "uint256";
147
+ readonly name: "";
148
+ readonly type: "uint256";
149
+ }];
150
+ readonly name: "validateUserOp";
151
+ readonly outputs: readonly [{
152
+ readonly internalType: "ValidationData";
153
+ readonly name: "";
154
+ readonly type: "uint256";
155
+ }];
156
+ readonly stateMutability: "payable";
157
+ readonly type: "function";
158
+ }];