@zerodev/sdk 5.1.13 → 5.2.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 (123) hide show
  1. package/_cjs/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js +738 -0
  2. package/_cjs/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js.map +1 -0
  3. package/_cjs/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.js +15 -0
  4. package/_cjs/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.js.map +1 -0
  5. package/_cjs/accounts/kernel/createKernelAccount.js +231 -75
  6. package/_cjs/accounts/kernel/createKernelAccount.js.map +1 -1
  7. package/_cjs/accounts/kernel/v1/createKernelV1Account.js +29 -18
  8. package/_cjs/accounts/kernel/v1/createKernelV1Account.js.map +1 -1
  9. package/_cjs/accounts/utils/6492.js +19 -3
  10. package/_cjs/accounts/utils/6492.js.map +1 -1
  11. package/_cjs/accounts/utils/index.js +4 -3
  12. package/_cjs/accounts/utils/index.js.map +1 -1
  13. package/_cjs/accounts/utils/toKernelPluginManager.js +194 -62
  14. package/_cjs/accounts/utils/toKernelPluginManager.js.map +1 -1
  15. package/_cjs/actions/account-client/signUserOperation.js +1 -1
  16. package/_cjs/actions/account-client/signUserOperation.js.map +1 -1
  17. package/_cjs/actions/paymaster/estimateGasInERC20.js.map +1 -1
  18. package/_cjs/actions/paymaster/sponsorUserOperation.js +17 -14
  19. package/_cjs/actions/paymaster/sponsorUserOperation.js.map +1 -1
  20. package/_cjs/clients/decorators/kernel.js +8 -5
  21. package/_cjs/clients/decorators/kernel.js.map +1 -1
  22. package/_cjs/clients/kernelAccountClient.js +3 -3
  23. package/_cjs/clients/kernelAccountClient.js.map +1 -1
  24. package/_cjs/clients/paymasterClient.js +1 -1
  25. package/_cjs/clients/paymasterClient.js.map +1 -1
  26. package/_cjs/constants.js +28 -3
  27. package/_cjs/constants.js.map +1 -1
  28. package/_cjs/index.js +5 -1
  29. package/_cjs/index.js.map +1 -1
  30. package/_cjs/providers/KernelEIP1193Provider.js.map +1 -1
  31. package/_cjs/types/kernel.js.map +1 -1
  32. package/_cjs/utils.js +34 -3
  33. package/_cjs/utils.js.map +1 -1
  34. package/_esm/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js +735 -0
  35. package/_esm/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js.map +1 -0
  36. package/_esm/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.js +12 -0
  37. package/_esm/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.js.map +1 -0
  38. package/_esm/accounts/kernel/createKernelAccount.js +240 -81
  39. package/_esm/accounts/kernel/createKernelAccount.js.map +1 -1
  40. package/_esm/accounts/kernel/v1/createKernelV1Account.js +37 -20
  41. package/_esm/accounts/kernel/v1/createKernelV1Account.js.map +1 -1
  42. package/_esm/accounts/utils/6492.js +16 -1
  43. package/_esm/accounts/utils/6492.js.map +1 -1
  44. package/_esm/accounts/utils/index.js +2 -4
  45. package/_esm/accounts/utils/index.js.map +1 -1
  46. package/_esm/accounts/utils/toKernelPluginManager.js +198 -66
  47. package/_esm/accounts/utils/toKernelPluginManager.js.map +1 -1
  48. package/_esm/actions/account-client/signUserOperation.js +1 -1
  49. package/_esm/actions/account-client/signUserOperation.js.map +1 -1
  50. package/_esm/actions/paymaster/estimateGasInERC20.js.map +1 -1
  51. package/_esm/actions/paymaster/sponsorUserOperation.js +37 -15
  52. package/_esm/actions/paymaster/sponsorUserOperation.js.map +1 -1
  53. package/_esm/clients/decorators/kernel.js +9 -5
  54. package/_esm/clients/decorators/kernel.js.map +1 -1
  55. package/_esm/clients/kernelAccountClient.js +3 -3
  56. package/_esm/clients/kernelAccountClient.js.map +1 -1
  57. package/_esm/clients/paymasterClient.js +1 -1
  58. package/_esm/clients/paymasterClient.js.map +1 -1
  59. package/_esm/constants.js +27 -2
  60. package/_esm/constants.js.map +1 -1
  61. package/_esm/index.js +1 -0
  62. package/_esm/index.js.map +1 -1
  63. package/_esm/providers/KernelEIP1193Provider.js.map +1 -1
  64. package/_esm/types/kernel.js +1 -0
  65. package/_esm/types/kernel.js.map +1 -1
  66. package/_esm/utils.js +33 -4
  67. package/_esm/utils.js.map +1 -1
  68. package/_types/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.d.ts +843 -0
  69. package/_types/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.d.ts.map +1 -0
  70. package/_types/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.d.ts +16 -0
  71. package/_types/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.d.ts.map +1 -0
  72. package/_types/accounts/kernel/createKernelAccount.d.ts +14 -11
  73. package/_types/accounts/kernel/createKernelAccount.d.ts.map +1 -1
  74. package/_types/accounts/kernel/v1/createKernelV1Account.d.ts +5 -4
  75. package/_types/accounts/kernel/v1/createKernelV1Account.d.ts.map +1 -1
  76. package/_types/accounts/utils/6492.d.ts +3 -1
  77. package/_types/accounts/utils/6492.d.ts.map +1 -1
  78. package/_types/accounts/utils/index.d.ts +2 -4
  79. package/_types/accounts/utils/index.d.ts.map +1 -1
  80. package/_types/accounts/utils/toKernelPluginManager.d.ts +3 -2
  81. package/_types/accounts/utils/toKernelPluginManager.d.ts.map +1 -1
  82. package/_types/actions/account-client/signUserOperation.d.ts +7 -7
  83. package/_types/actions/account-client/signUserOperation.d.ts.map +1 -1
  84. package/_types/actions/paymaster/estimateGasInERC20.d.ts +3 -2
  85. package/_types/actions/paymaster/estimateGasInERC20.d.ts.map +1 -1
  86. package/_types/actions/paymaster/sponsorUserOperation.d.ts +7 -6
  87. package/_types/actions/paymaster/sponsorUserOperation.d.ts.map +1 -1
  88. package/_types/clients/decorators/kernel.d.ts +8 -7
  89. package/_types/clients/decorators/kernel.d.ts.map +1 -1
  90. package/_types/clients/kernelAccountClient.d.ts +101 -22
  91. package/_types/clients/kernelAccountClient.d.ts.map +1 -1
  92. package/_types/clients/paymasterClient.d.ts +6 -3
  93. package/_types/clients/paymasterClient.d.ts.map +1 -1
  94. package/_types/constants.d.ts +22 -1
  95. package/_types/constants.d.ts.map +1 -1
  96. package/_types/index.d.ts +1 -0
  97. package/_types/index.d.ts.map +1 -1
  98. package/_types/providers/KernelEIP1193Provider.d.ts +3 -2
  99. package/_types/providers/KernelEIP1193Provider.d.ts.map +1 -1
  100. package/_types/types/kernel.d.ts +44 -12
  101. package/_types/types/kernel.d.ts.map +1 -1
  102. package/_types/utils.d.ts +11 -2
  103. package/_types/utils.d.ts.map +1 -1
  104. package/accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.ts +736 -0
  105. package/accounts/kernel/abi/kernel_v_3_0_0/KernelModuleAbi.ts +11 -0
  106. package/accounts/kernel/createKernelAccount.ts +407 -104
  107. package/accounts/kernel/v1/createKernelV1Account.ts +67 -28
  108. package/accounts/utils/6492.ts +27 -1
  109. package/accounts/utils/index.ts +2 -4
  110. package/accounts/utils/toKernelPluginManager.ts +261 -80
  111. package/actions/account-client/signUserOperation.ts +25 -13
  112. package/actions/paymaster/estimateGasInERC20.ts +5 -4
  113. package/actions/paymaster/sponsorUserOperation.ts +104 -32
  114. package/clients/decorators/kernel.ts +44 -35
  115. package/clients/kernelAccountClient.ts +34 -25
  116. package/clients/paymasterClient.ts +10 -6
  117. package/constants.ts +25 -2
  118. package/index.ts +5 -0
  119. package/package.json +93 -92
  120. package/providers/KernelEIP1193Provider.ts +6 -3
  121. package/types/kernel.ts +96 -40
  122. package/utils.ts +52 -4
  123. package/README.md +0 -3
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,eAAO,MAAM,eAAe,yIAC8G,CAAA;AAE1I,eAAO,MAAM,sBAAsB,EAAE;IAAE,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAAA;CAM5D,CAAA;AACD,eAAO,MAAM,YAAY,+CAA+C,CAAA;AACxE,eAAO,MAAM,WAAW,WAAW,CAAA;AACnC,eAAO,MAAM,qBAAqB,UAAU,CAAA"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AACxE,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,eAAO,MAAM,eAAe,yIAC8G,CAAA;AAE1I,eAAO,MAAM,sBAAsB,EAAE;IAAE,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAAA;CAO5D,CAAA;AACD,eAAO,MAAM,YAAY,+CAA+C,CAAA;AACxE,eAAO,MAAM,WAAW,WAAW,CAAA;AACnC,eAAO,MAAM,qBAAqB,EAAE;KAAG,GAAG,IAAI,iBAAiB,GAAG,MAAM;CAGvE,CAAA;AACD,eAAO,MAAM,cAAc;;;;CAIjB,CAAA;AACV,oBAAY,cAAc;IACtB,OAAO,SAAS;IAChB,MAAM,SAAS;CAClB;AACD,oBAAY,SAAS;IACjB,MAAM,SAAS;IACf,KAAK,SAAS;IACd,aAAa,SAAS;CACzB;AACD,oBAAY,SAAS;IACjB,OAAO,SAAS;IAChB,QAAQ,SAAS;CACpB"}
package/_types/index.d.ts CHANGED
@@ -6,6 +6,7 @@ export { createKernelAccountClient, type KernelAccountClient } from "./clients/k
6
6
  export { type KernelValidator, type ZeroDevPaymasterRpcSchema, type KernelPluginManager } from "./types/kernel.js";
7
7
  export { KernelAccountAbi } from "./accounts/kernel/abi/KernelAccountAbi.js";
8
8
  export { KernelFactoryAbi } from "./accounts/kernel/abi/KernelFactoryAbi.js";
9
+ export { KernelV3AccountAbi, KernelV3ExecuteAbi, KernelV3InitAbi } from "./accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js";
9
10
  export { TokenActionsAbi } from "./accounts/kernel/abi/TokenActionsAbi.js";
10
11
  export * as constants from "./constants.js";
11
12
  export * from "./utils.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,mBAAmB,EACnB,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,gBAAgB,EAChB,qBAAqB,EACrB,UAAU,EACb,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACH,oBAAoB,EACpB,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACtC,MAAM,6CAA6C,CAAA;AACpD,OAAO,EACH,uBAAuB,EACvB,KAAK,6BAA6B,EAClC,0BAA0B,EAC1B,KAAK,0BAA0B,EAClC,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACH,4BAA4B,EAC5B,KAAK,sBAAsB,EAC9B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACH,yBAAyB,EACzB,KAAK,mBAAmB,EAC3B,MAAM,kCAAkC,CAAA;AACzC,OAAO,EACH,KAAK,eAAe,EACpB,KAAK,yBAAyB,EAC9B,KAAK,mBAAmB,EAC3B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA;AAC1E,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,mBAAmB,EACnB,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,gBAAgB,EAChB,qBAAqB,EACrB,UAAU,EACb,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACH,oBAAoB,EACpB,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACtC,MAAM,6CAA6C,CAAA;AACpD,OAAO,EACH,uBAAuB,EACvB,KAAK,6BAA6B,EAClC,0BAA0B,EAC1B,KAAK,0BAA0B,EAClC,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACH,4BAA4B,EAC5B,KAAK,sBAAsB,EAC9B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACH,yBAAyB,EACzB,KAAK,mBAAmB,EAC3B,MAAM,kCAAkC,CAAA;AACzC,OAAO,EACH,KAAK,eAAe,EACpB,KAAK,yBAAyB,EAC9B,KAAK,mBAAmB,EAC3B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EACH,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EAClB,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA;AAC1E,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA"}
@@ -1,10 +1,11 @@
1
1
  /// <reference types="node" />
2
2
  import { EventEmitter } from "events";
3
3
  import { type KernelAccountClient } from "@zerodev/sdk";
4
+ import type { EntryPoint } from "permissionless/types";
4
5
  import { type EIP1193Parameters, type EIP1193RequestFn } from "viem";
5
- export declare class KernelEIP1193Provider extends EventEmitter {
6
+ export declare class KernelEIP1193Provider<entryPoint extends EntryPoint> extends EventEmitter {
6
7
  private kernelClient;
7
- constructor(kernelClient: KernelAccountClient);
8
+ constructor(kernelClient: KernelAccountClient<entryPoint>);
8
9
  request({ method, params }: EIP1193Parameters): ReturnType<EIP1193RequestFn>;
9
10
  private handleEthRequestAccounts;
10
11
  private handleEthAccounts;
@@ -1 +1 @@
1
- {"version":3,"file":"KernelEIP1193Provider.d.ts","sourceRoot":"","sources":["../../providers/KernelEIP1193Provider.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AACrC,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,EACH,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAGxB,MAAM,MAAM,CAAA;AAEb,qBAAa,qBAAsB,SAAQ,YAAY;IACnD,OAAO,CAAC,YAAY,CAAqB;gBAE7B,YAAY,EAAE,mBAAmB;IAKvC,OAAO,CAAC,EACV,MAAM,EACN,MAAW,EACd,EAAE,iBAAiB,GAAG,UAAU,CAAC,gBAAgB,CAAC;YAerC,wBAAwB;YAOxB,iBAAiB;YAOjB,wBAAwB;YAKxB,kBAAkB;CAqBnC"}
1
+ {"version":3,"file":"KernelEIP1193Provider.d.ts","sourceRoot":"","sources":["../../providers/KernelEIP1193Provider.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AACrC,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EACH,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAGxB,MAAM,MAAM,CAAA;AAEb,qBAAa,qBAAqB,CAC9B,UAAU,SAAS,UAAU,CAC/B,SAAQ,YAAY;IAClB,OAAO,CAAC,YAAY,CAAiC;gBAEzC,YAAY,EAAE,mBAAmB,CAAC,UAAU,CAAC;IAKnD,OAAO,CAAC,EACV,MAAM,EACN,MAAW,EACd,EAAE,iBAAiB,GAAG,UAAU,CAAC,gBAAgB,CAAC;YAerC,wBAAwB;YAOxB,iBAAiB;YAOjB,wBAAwB;YAKxB,kBAAkB;CAqBnC"}
@@ -1,13 +1,16 @@
1
+ import type { EntryPoint } from "permissionless/types";
2
+ import type { GetEntryPointVersion } from "permissionless/types/entrypoint";
1
3
  import type { UserOperation, UserOperationWithBigIntAsHex } from "permissionless/types/userOperation";
2
4
  import { type Address, type Hex, type LocalAccount } from "viem";
3
5
  import type { PartialBy } from "viem/types/utils";
4
- export type ZeroDevPaymasterRpcSchema = [
6
+ import { VALIDATOR_TYPE } from "../constants.js";
7
+ export type ZeroDevPaymasterRpcSchema<entryPoint extends EntryPoint> = [
5
8
  {
6
9
  Method: "zd_sponsorUserOperation";
7
10
  Parameters: [
8
11
  {
9
12
  chainId: number;
10
- userOp: PartialBy<UserOperationWithBigIntAsHex, "callGasLimit" | "preVerificationGas" | "verificationGasLimit" | "paymasterAndData">;
13
+ userOp: GetEntryPointVersion<entryPoint> extends "v0.6" ? PartialBy<UserOperationWithBigIntAsHex<"v0.6">, "callGasLimit" | "preVerificationGas" | "verificationGasLimit"> : PartialBy<UserOperationWithBigIntAsHex<"v0.7">, "callGasLimit" | "preVerificationGas" | "verificationGasLimit" | "paymasterVerificationGasLimit" | "paymasterPostOpGasLimit">;
11
14
  entryPointAddress: Address;
12
15
  gasTokenData?: {
13
16
  tokenAddress: Hex;
@@ -17,13 +20,26 @@ export type ZeroDevPaymasterRpcSchema = [
17
20
  shouldConsume?: boolean;
18
21
  }
19
22
  ];
20
- ReturnType: {
23
+ ReturnType: GetEntryPointVersion<entryPoint> extends "v0.6" ? {
21
24
  paymasterAndData: Hex;
22
25
  preVerificationGas: Hex;
23
26
  verificationGasLimit: Hex;
24
27
  callGasLimit: Hex;
25
28
  maxFeePerGas: Hex;
26
29
  maxPriorityFeePerGas: Hex;
30
+ paymaster?: never;
31
+ paymasterVerificationGasLimit?: never;
32
+ paymasterPostOpGasLimit?: never;
33
+ paymasterData?: never;
34
+ } : {
35
+ preVerificationGas: Hex;
36
+ verificationGasLimit: Hex;
37
+ callGasLimit: Hex;
38
+ paymaster: Address;
39
+ paymasterVerificationGasLimit: Hex;
40
+ paymasterPostOpGasLimit: Hex;
41
+ paymasterData: Hex;
42
+ paymasterAndData?: never;
27
43
  };
28
44
  },
29
45
  {
@@ -41,7 +57,7 @@ export type ZeroDevPaymasterRpcSchema = [
41
57
  Parameters: [
42
58
  {
43
59
  chainId: number;
44
- userOp: UserOperationWithBigIntAsHex;
60
+ userOp: UserOperationWithBigIntAsHex<"v0.6">;
45
61
  entryPointAddress: Address;
46
62
  tokenAddress: Address;
47
63
  }
@@ -52,29 +68,40 @@ export type ZeroDevPaymasterRpcSchema = [
52
68
  };
53
69
  }
54
70
  ];
55
- export type KernelValidator<Name extends string = string> = LocalAccount<Name> & {
56
- getNonceKey: () => Promise<bigint>;
57
- getDummySignature(userOperation: UserOperation, pluginEnableSignature?: Hex): Promise<Hex>;
58
- signUserOperation: (userOperation: UserOperation, pluginEnableSignature?: Hex) => Promise<Hex>;
71
+ export type ValidatorType = keyof typeof VALIDATOR_TYPE;
72
+ export type KernelValidator<entryPoint extends EntryPoint, Name extends string = string, type extends ValidatorType = "SUDO"> = type extends "PERMISSION" ? LocalAccount<Name> & {
73
+ getNonceKey: (accountAddress?: Address) => Promise<bigint>;
74
+ getDummySignature(userOperation: UserOperation<GetEntryPointVersion<entryPoint>>, pluginEnableSignature?: Hex): Promise<Hex>;
75
+ signUserOperation: (userOperation: UserOperation<GetEntryPointVersion<entryPoint>>, pluginEnableSignature?: Hex) => Promise<Hex>;
59
76
  getEnableData(accountAddress?: Address): Promise<Hex>;
60
77
  isEnabled(accountAddress: Address, selector: Hex): Promise<boolean>;
78
+ isPermissionValidator: boolean;
79
+ getPermissionId: () => Hex;
80
+ } : LocalAccount<Name> & {
81
+ getNonceKey: (accountAddress?: Address) => Promise<bigint>;
82
+ getDummySignature(userOperation: UserOperation<GetEntryPointVersion<entryPoint>>, pluginEnableSignature?: Hex): Promise<Hex>;
83
+ signUserOperation: (userOperation: UserOperation<GetEntryPointVersion<entryPoint>>, pluginEnableSignature?: Hex) => Promise<Hex>;
84
+ getEnableData(accountAddress?: Address): Promise<Hex>;
85
+ isEnabled(accountAddress: Address, selector: Hex): Promise<boolean>;
86
+ isPermissionValidator: boolean;
61
87
  };
62
88
  export type ValidatorInitData = {
63
89
  validatorAddress: Address;
64
90
  enableData: Hex;
65
91
  };
66
- export type KernelPluginManager = KernelValidator & {
92
+ export type KernelPluginManager<entryPoint extends EntryPoint> = KernelValidator<entryPoint> & {
67
93
  getPluginEnableSignature(accountAddress: Address): Promise<Hex>;
68
94
  getValidatorInitData(): Promise<ValidatorInitData>;
69
95
  getExecutorData(): ExecutorData;
70
96
  getValidityData(): PluginValidityData;
71
97
  };
72
- export type KernelPluginManagerParams = {
73
- sudo?: KernelValidator;
74
- regular?: KernelValidator;
98
+ export type KernelPluginManagerParams<entryPoint extends EntryPoint> = {
99
+ sudo?: KernelValidator<entryPoint>;
100
+ regular?: KernelValidator<entryPoint>;
75
101
  pluginEnableSignature?: Hex;
76
102
  validatorInitData?: ValidatorInitData;
77
103
  executorData?: ExecutorData;
104
+ entryPoint: entryPoint;
78
105
  } & Partial<PluginValidityData>;
79
106
  export type ExecutorData = {
80
107
  executor: Address;
@@ -101,4 +128,9 @@ export type KernelEncodeCallDataArgs = {
101
128
  data: Hex;
102
129
  callType: CallType | undefined;
103
130
  }[];
131
+ export type Execution = {
132
+ target: Address;
133
+ value: bigint;
134
+ callData: Hex;
135
+ };
104
136
  //# sourceMappingURL=kernel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../../types/kernel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../../types/kernel.ts"],"names":[],"mappings":"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"}
package/_types/utils.d.ts CHANGED
@@ -1,7 +1,15 @@
1
+ import type { EntryPoint } from "permissionless/types/entrypoint";
1
2
  import { type Address, type Hex } from "viem";
2
3
  import type { ZeroDevPaymasterClient } from "./clients/paymasterClient.js";
3
- export declare const getKernelVersion: (kernelImpl?: Address) => string;
4
- export declare const getERC20PaymasterApproveCall: (client: ZeroDevPaymasterClient, { gasToken, approveAmount }: {
4
+ import { CALL_TYPE, EXEC_TYPE } from "./constants.js";
5
+ export declare const getKernelVersion: <entryPoint extends EntryPoint>(entryPointAddress: entryPoint, kernelImpl?: Address) => string;
6
+ export declare enum KERNEL_FEATURES {
7
+ ERC1271_SIG_WRAPPER = "ERC1271_SIG_WRAPPER",
8
+ ERC1271_WITH_VALIDATOR = "ERC1271_WITH_VALIDATOR",
9
+ ERC1271_SIG_WRAPPER_WITH_WRAPPED_HASH = "ERC1271_SIG_WRAPPER_WITH_WRAPPED_HASH"
10
+ }
11
+ export declare const hasKernelFeature: (feature: KERNEL_FEATURES, version: string) => boolean;
12
+ export declare const getERC20PaymasterApproveCall: (client: ZeroDevPaymasterClient<EntryPoint>, { gasToken, approveAmount }: {
5
13
  gasToken: Address;
6
14
  approveAmount: bigint;
7
15
  }) => Promise<{
@@ -10,4 +18,5 @@ export declare const getERC20PaymasterApproveCall: (client: ZeroDevPaymasterClie
10
18
  data: Hex;
11
19
  }>;
12
20
  export declare const fixSignedData: (sig: Hex) => Hex;
21
+ export declare const getExecMode: (callType: CALL_TYPE, execType: EXEC_TYPE) => Hex;
13
22
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,OAAO,EACZ,KAAK,GAAG,EAOX,MAAM,MAAM,CAAA;AAEb,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AAG1E,eAAO,MAAM,gBAAgB,gBAAiB,OAAO,KAAG,MAMvD,CAAA;AAED,eAAO,MAAM,4BAA4B,WAC7B,sBAAsB;cAKhB,OAAO;mBACF,MAAM;MAE1B,QAAQ;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,GAAG,CAAA;CAAE,CAmBnD,CAAA;AAED,eAAO,MAAM,aAAa,QAAS,GAAG,KAAG,GAaxC,CAAA"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAEjE,OAAO,EACH,KAAK,OAAO,EACZ,KAAK,GAAG,EASX,MAAM,MAAM,CAAA;AAEb,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AAC1E,OAAO,EACH,SAAS,EACT,SAAS,EAGZ,MAAM,gBAAgB,CAAA;AAEvB,eAAO,MAAM,gBAAgB,8EAEZ,OAAO,KACrB,MAQF,CAAA;AAED,oBAAY,eAAe;IACvB,mBAAmB,wBAAwB;IAC3C,sBAAsB,2BAA2B;IACjD,qCAAqC,0CAA0C;CAClF;AAQD,eAAO,MAAM,gBAAgB,YAChB,eAAe,WACf,MAAM,KAChB,OAMF,CAAA;AAED,eAAO,MAAM,4BAA4B,WAC7B,uBAAuB,UAAU,CAAC;cAK5B,OAAO;mBACF,MAAM;MAE1B,QAAQ;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,GAAG,CAAA;CAAE,CAmBnD,CAAA;AAED,eAAO,MAAM,aAAa,QAAS,GAAG,KAAG,GAaxC,CAAA;AAED,eAAO,MAAM,WAAW,aAAc,SAAS,YAAY,SAAS,KAAG,GAQtE,CAAA"}