@zerodev/sdk 4.0.34 → 4.1.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 (68) hide show
  1. package/dist/cjs/kernel-zerodev/abis/KernelAccountAbi.d.ts +42 -4
  2. package/dist/cjs/kernel-zerodev/abis/KernelAccountAbi.js +53 -4
  3. package/dist/cjs/kernel-zerodev/abis/KernelAccountAbi.js.map +1 -1
  4. package/dist/cjs/kernel-zerodev/account.d.ts +3 -0
  5. package/dist/cjs/kernel-zerodev/account.js +47 -6
  6. package/dist/cjs/kernel-zerodev/account.js.map +1 -1
  7. package/dist/cjs/kernel-zerodev/constants.d.ts +2 -2
  8. package/dist/cjs/kernel-zerodev/constants.js +2 -2
  9. package/dist/cjs/kernel-zerodev/constants.js.map +1 -1
  10. package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.d.ts +1 -1
  11. package/dist/cjs/kernel-zerodev/ethers-provider/account-signer.js.map +1 -1
  12. package/dist/cjs/kernel-zerodev/middleware/paymaster.js +19 -6
  13. package/dist/cjs/kernel-zerodev/middleware/paymaster.js.map +1 -1
  14. package/dist/cjs/kernel-zerodev/paymaster/base.js +36 -33
  15. package/dist/cjs/kernel-zerodev/paymaster/base.js.map +1 -1
  16. package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.d.ts +4 -3
  17. package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.js +48 -39
  18. package/dist/cjs/kernel-zerodev/paymaster/token-paymaster.js.map +1 -1
  19. package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.js +7 -15
  20. package/dist/cjs/kernel-zerodev/paymaster/verifying-paymaster.js.map +1 -1
  21. package/dist/cjs/kernel-zerodev/provider.js +1 -2
  22. package/dist/cjs/kernel-zerodev/provider.js.map +1 -1
  23. package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.d.ts +42 -4
  24. package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.js +53 -4
  25. package/dist/esm/kernel-zerodev/abis/KernelAccountAbi.js.map +1 -1
  26. package/dist/esm/kernel-zerodev/account.d.ts +3 -0
  27. package/dist/esm/kernel-zerodev/account.js +47 -6
  28. package/dist/esm/kernel-zerodev/account.js.map +1 -1
  29. package/dist/esm/kernel-zerodev/constants.d.ts +2 -2
  30. package/dist/esm/kernel-zerodev/constants.js +2 -2
  31. package/dist/esm/kernel-zerodev/constants.js.map +1 -1
  32. package/dist/esm/kernel-zerodev/ethers-provider/account-signer.d.ts +1 -1
  33. package/dist/esm/kernel-zerodev/ethers-provider/account-signer.js.map +1 -1
  34. package/dist/esm/kernel-zerodev/middleware/paymaster.js +19 -6
  35. package/dist/esm/kernel-zerodev/middleware/paymaster.js.map +1 -1
  36. package/dist/esm/kernel-zerodev/paymaster/base.js +36 -33
  37. package/dist/esm/kernel-zerodev/paymaster/base.js.map +1 -1
  38. package/dist/esm/kernel-zerodev/paymaster/token-paymaster.d.ts +4 -3
  39. package/dist/esm/kernel-zerodev/paymaster/token-paymaster.js +47 -39
  40. package/dist/esm/kernel-zerodev/paymaster/token-paymaster.js.map +1 -1
  41. package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.js +7 -15
  42. package/dist/esm/kernel-zerodev/paymaster/verifying-paymaster.js.map +1 -1
  43. package/dist/esm/kernel-zerodev/provider.js +1 -2
  44. package/dist/esm/kernel-zerodev/provider.js.map +1 -1
  45. package/dist/types/kernel-zerodev/abis/KernelAccountAbi.d.ts +42 -4
  46. package/dist/types/kernel-zerodev/abis/KernelAccountAbi.d.ts.map +1 -1
  47. package/dist/types/kernel-zerodev/account.d.ts +3 -0
  48. package/dist/types/kernel-zerodev/account.d.ts.map +1 -1
  49. package/dist/types/kernel-zerodev/constants.d.ts +2 -2
  50. package/dist/types/kernel-zerodev/constants.d.ts.map +1 -1
  51. package/dist/types/kernel-zerodev/ethers-provider/account-signer.d.ts +1 -1
  52. package/dist/types/kernel-zerodev/ethers-provider/account-signer.d.ts.map +1 -1
  53. package/dist/types/kernel-zerodev/middleware/paymaster.d.ts.map +1 -1
  54. package/dist/types/kernel-zerodev/paymaster/base.d.ts.map +1 -1
  55. package/dist/types/kernel-zerodev/paymaster/token-paymaster.d.ts +4 -3
  56. package/dist/types/kernel-zerodev/paymaster/token-paymaster.d.ts.map +1 -1
  57. package/dist/types/kernel-zerodev/paymaster/verifying-paymaster.d.ts.map +1 -1
  58. package/dist/types/kernel-zerodev/provider.d.ts.map +1 -1
  59. package/package.json +1 -1
  60. package/src/kernel-zerodev/abis/KernelAccountAbi.ts +53 -4
  61. package/src/kernel-zerodev/account.ts +57 -10
  62. package/src/kernel-zerodev/constants.ts +3 -2
  63. package/src/kernel-zerodev/ethers-provider/account-signer.ts +1 -1
  64. package/src/kernel-zerodev/middleware/paymaster.ts +20 -9
  65. package/src/kernel-zerodev/paymaster/base.ts +44 -38
  66. package/src/kernel-zerodev/paymaster/token-paymaster.ts +74 -53
  67. package/src/kernel-zerodev/paymaster/verifying-paymaster.ts +7 -14
  68. package/src/kernel-zerodev/provider.ts +1 -2
@@ -57,6 +57,21 @@ export declare const KernelAccountAbi: readonly [{
57
57
  }];
58
58
  readonly name: "ExecutionChanged";
59
59
  readonly type: "event";
60
+ }, {
61
+ readonly anonymous: false;
62
+ readonly inputs: readonly [{
63
+ readonly indexed: false;
64
+ readonly internalType: "address";
65
+ readonly name: "sender";
66
+ readonly type: "address";
67
+ }, {
68
+ readonly indexed: false;
69
+ readonly internalType: "uint256";
70
+ readonly name: "amount";
71
+ readonly type: "uint256";
72
+ }];
73
+ readonly name: "Received";
74
+ readonly type: "event";
60
75
  }, {
61
76
  readonly anonymous: false;
62
77
  readonly inputs: readonly [{
@@ -139,13 +154,36 @@ export declare const KernelAccountAbi: readonly [{
139
154
  readonly type: "bytes";
140
155
  }, {
141
156
  readonly internalType: "enum Operation";
142
- readonly name: "operation";
157
+ readonly name: "";
143
158
  readonly type: "uint8";
144
159
  }];
145
160
  readonly name: "execute";
146
161
  readonly outputs: readonly [];
147
162
  readonly stateMutability: "payable";
148
163
  readonly type: "function";
164
+ }, {
165
+ readonly inputs: readonly [{
166
+ readonly components: readonly [{
167
+ readonly internalType: "address";
168
+ readonly name: "to";
169
+ readonly type: "address";
170
+ }, {
171
+ readonly internalType: "uint256";
172
+ readonly name: "value";
173
+ readonly type: "uint256";
174
+ }, {
175
+ readonly internalType: "bytes";
176
+ readonly name: "data";
177
+ readonly type: "bytes";
178
+ }];
179
+ readonly internalType: "struct Call[]";
180
+ readonly name: "calls";
181
+ readonly type: "tuple[]";
182
+ }];
183
+ readonly name: "executeBatch";
184
+ readonly outputs: readonly [];
185
+ readonly stateMutability: "payable";
186
+ readonly type: "function";
149
187
  }, {
150
188
  readonly inputs: readonly [];
151
189
  readonly name: "getDefaultValidator";
@@ -387,11 +425,11 @@ export declare const KernelAccountAbi: readonly [{
387
425
  readonly name: "_validator";
388
426
  readonly type: "address";
389
427
  }, {
390
- readonly internalType: "uint48";
428
+ readonly internalType: "ValidUntil";
391
429
  readonly name: "_validUntil";
392
430
  readonly type: "uint48";
393
431
  }, {
394
- readonly internalType: "uint48";
432
+ readonly internalType: "ValidAfter";
395
433
  readonly name: "_validAfter";
396
434
  readonly type: "uint48";
397
435
  }, {
@@ -461,7 +499,7 @@ export declare const KernelAccountAbi: readonly [{
461
499
  readonly type: "bytes";
462
500
  }];
463
501
  readonly internalType: "struct UserOperation";
464
- readonly name: "userOp";
502
+ readonly name: "_userOp";
465
503
  readonly type: "tuple";
466
504
  }, {
467
505
  readonly internalType: "bytes32";
@@ -1 +1 @@
1
- {"version":3,"file":"KernelAccountAbi.d.ts","sourceRoot":"","sources":["../../../../src/kernel-zerodev/abis/KernelAccountAbi.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAioBnB,CAAC"}
1
+ {"version":3,"file":"KernelAccountAbi.d.ts","sourceRoot":"","sources":["../../../../src/kernel-zerodev/abis/KernelAccountAbi.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkrBnB,CAAC"}
@@ -36,12 +36,15 @@ export declare class KernelSmartContractAccount<TTransport extends Transport | F
36
36
  encodeBatchExecute(_txs: BatchUserOperationCallData): Promise<`0x${string}`>;
37
37
  encodeExecuteDelegate(target: Hex, value: bigint, data: Hex): Promise<Hex>;
38
38
  encodeSetExection(): Promise<`0x${string}`>;
39
+ encodeUgradeTo(): Promise<`0x${string}`>;
40
+ getKernelImplementationAddess(): Promise<Hex | undefined>;
39
41
  signMessageWith6492(msg: string | Uint8Array): Promise<Hex>;
40
42
  signTypedDataWith6492(params: SignTypedDataParams): Promise<Hex>;
41
43
  signMessage(msg: Uint8Array | string): Promise<Hex>;
42
44
  signTypedData(params: SignTypedDataParams): Promise<Hex>;
43
45
  signUserOp(userOp: UserOperationRequest): Promise<Hex>;
44
46
  protected encodeExecuteAction(target: Hex, value: bigint, data: Hex, code: number): Hex;
47
+ protected encodeExecuteBatchAction(_txs: BatchUserOperationCallData): Hex;
45
48
  protected getAccountInitCode(): Promise<Hex>;
46
49
  getNonce(): Promise<bigint>;
47
50
  protected getFactoryInitCode(): Promise<Hex>;
@@ -1 +1 @@
1
- {"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../../../src/kernel-zerodev/account.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../../../src/kernel-zerodev/account.ts"],"names":[],"mappings":"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"}
@@ -3,14 +3,14 @@ import type { IGasTokenAddresses } from "./paymaster/types.js";
3
3
  export declare const DEFAULT_SEND_TX_MAX_RETRIES = 3;
4
4
  export declare const DEFAULT_SEND_TX_RETRY_INTERVAL_MS = 60000;
5
5
  export declare const BUNDLER_URL = "https://v0-6-meta-bundler.onrender.com";
6
- export declare const PAYMASTER_URL = "https://v0-6-paymaster.onrender.com";
6
+ export declare const PAYMASTER_URL = "https://meta-aa-provider.onrender.com/api/v1/paymaster";
7
7
  export declare const ENTRYPOINT_ADDRESS: Hex;
8
8
  export declare const MULTISEND_ADDR: Hex;
9
9
  export declare const BACKEND_URL = "https://backend-vikp.onrender.com";
10
10
  export declare const API_URL = "https://prod-api.zerodev.app";
11
11
  export declare const ECDSA_VALIDATOR_ADDRESS = "0xd9AB5096a832b9ce79914329DAEE236f8Eea0390";
12
12
  export declare const KERNEL_FACTORY_ADDRESS = "0x5de4839a76cf55d0c90e2061ef4386d962E15ae3";
13
- export declare const KERNEL_IMPL_ADDRESS = "0xf048AD83CB2dfd6037A43902a2A5Be04e53cd2Eb";
13
+ export declare const KERNEL_IMPL_ADDRESS = "0x0DA6a956B9488eD4dd761E59f52FDc6c8068E6B5";
14
14
  export declare const KILL_SWITCH_VALIDATOR_ADDRESS = "0x7393A7dA58CCfFb78f52adb09705BE6E20F704BC";
15
15
  export declare const KILL_SWITCH_ACTION = "0x3f38e479304c7F18F988269a1bDa7d646bd48243";
16
16
  export declare const DUMMY_ECDSA_SIG = "0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c";
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/kernel-zerodev/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG/D,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAC7C,eAAO,MAAM,iCAAiC,QAAQ,CAAC;AACvD,eAAO,MAAM,WAAW,2CAA2C,CAAC;AACpE,eAAO,MAAM,aAAa,wCAAwC,CAAC;AACnE,eAAO,MAAM,kBAAkB,EAAE,GACa,CAAC;AAC/C,eAAO,MAAM,cAAc,EAAE,GAAkD,CAAC;AAChF,eAAO,MAAM,WAAW,sCAAsC,CAAC;AAC/D,eAAO,MAAM,OAAO,iCAAiC,CAAC;AACtD,eAAO,MAAM,uBAAuB,+CACU,CAAC;AAC/C,eAAO,MAAM,sBAAsB,+CACW,CAAC;AAC/C,eAAO,MAAM,mBAAmB,+CAA+C,CAAC;AAChF,eAAO,MAAM,6BAA6B,+CACI,CAAC;AAC/C,eAAO,MAAM,kBAAkB,+CAA+C,CAAC;AAC/E,eAAO,MAAM,eAAe,yIAC4G,CAAC;AACzI,eAAO,MAAM,oCAAoC,+CACH,CAAC;AAC/C,eAAO,MAAM,YAAY,+CAA+C,CAAC;AACzE,eAAO,MAAM,6BAA6B,+CACI,CAAC;AAC/C,eAAO,MAAM,0BAA0B,+CACO,CAAC;AAC/C,eAAO,MAAM,eAAe,+CAA+C,CAAC;AAC5E,eAAO,MAAM,UAAU,+CAA+C,CAAC;AAEvE,eAAO,MAAM,sBAAsB,EAAE,kBAiBpC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAoB1D,CAAC;AAEF,eAAO,MAAM,4BAA4B,qBAEvC,CAAC;AAEH,eAAO,MAAM,cAAc,qCAAqC,CAAC;AACjE,eAAO,MAAM,gBAAgB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAsBrD,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/kernel-zerodev/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG/D,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAC7C,eAAO,MAAM,iCAAiC,QAAQ,CAAC;AACvD,eAAO,MAAM,WAAW,2CAA2C,CAAC;AACpE,eAAO,MAAM,aAAa,2DACgC,CAAC;AAC3D,eAAO,MAAM,kBAAkB,EAAE,GACa,CAAC;AAC/C,eAAO,MAAM,cAAc,EAAE,GAAkD,CAAC;AAChF,eAAO,MAAM,WAAW,sCAAsC,CAAC;AAC/D,eAAO,MAAM,OAAO,iCAAiC,CAAC;AACtD,eAAO,MAAM,uBAAuB,+CACU,CAAC;AAC/C,eAAO,MAAM,sBAAsB,+CACW,CAAC;AAC/C,eAAO,MAAM,mBAAmB,+CAA+C,CAAC;AAChF,eAAO,MAAM,6BAA6B,+CACI,CAAC;AAC/C,eAAO,MAAM,kBAAkB,+CAA+C,CAAC;AAC/E,eAAO,MAAM,eAAe,yIAC4G,CAAC;AACzI,eAAO,MAAM,oCAAoC,+CACH,CAAC;AAC/C,eAAO,MAAM,YAAY,+CAA+C,CAAC;AACzE,eAAO,MAAM,6BAA6B,+CACI,CAAC;AAC/C,eAAO,MAAM,0BAA0B,+CACO,CAAC;AAC/C,eAAO,MAAM,eAAe,+CAA+C,CAAC;AAC5E,eAAO,MAAM,UAAU,+CAA+C,CAAC;AAEvE,eAAO,MAAM,sBAAsB,EAAE,kBAiBpC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAoB1D,CAAC;AAEF,eAAO,MAAM,4BAA4B,qBAEvC,CAAC;AAEH,eAAO,MAAM,cAAc,qCAAqC,CAAC;AACjE,eAAO,MAAM,gBAAgB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAsBrD,CAAC"}
@@ -11,7 +11,7 @@ export declare class ZeroDevAccountSigner<V extends SupportedValidators> extends
11
11
  sendUserOperation: (<T extends import("@alchemy/aa-core").UserOperationCallData | import("@alchemy/aa-core").BatchUserOperationCallData>(data: T, overrides?: import("@alchemy/aa-core").UserOperationOverrides | undefined, operation?: T extends import("@alchemy/aa-core").UserOperationCallData ? import("../provider.js").Operation : T extends import("@alchemy/aa-core").BatchUserOperationCallData ? import("../provider.js").Operation.Call : never) => Promise<import("@alchemy/aa-core").SendUserOperationResult>) | (<T_1 extends import("@alchemy/aa-core").UserOperationCallData | import("@alchemy/aa-core").BatchUserOperationCallData>(data: T_1, overrides?: import("@alchemy/aa-core").UserOperationOverrides | undefined, operation?: T_1 extends import("@alchemy/aa-core").UserOperationCallData ? import("../provider.js").Operation : T_1 extends import("@alchemy/aa-core").BatchUserOperationCallData ? import("../provider.js").Operation.Call : never) => Promise<import("@alchemy/aa-core").SendUserOperationResult>) | (<T_2 extends import("@alchemy/aa-core").UserOperationCallData | import("@alchemy/aa-core").BatchUserOperationCallData>(data: T_2, overrides?: import("@alchemy/aa-core").UserOperationOverrides | undefined, operation?: T_2 extends import("@alchemy/aa-core").UserOperationCallData ? import("../provider.js").Operation : T_2 extends import("@alchemy/aa-core").BatchUserOperationCallData ? import("../provider.js").Operation.Call : never) => Promise<import("@alchemy/aa-core").SendUserOperationResult>) | (<T_3 extends import("@alchemy/aa-core").UserOperationCallData | import("@alchemy/aa-core").BatchUserOperationCallData>(data: T_3, overrides?: import("@alchemy/aa-core").UserOperationOverrides | undefined, operation?: T_3 extends import("@alchemy/aa-core").UserOperationCallData ? import("../provider.js").Operation : T_3 extends import("@alchemy/aa-core").BatchUserOperationCallData ? import("../provider.js").Operation.Call : never) => Promise<import("@alchemy/aa-core").SendUserOperationResult>) | (<T_4 extends import("@alchemy/aa-core").UserOperationCallData | import("@alchemy/aa-core").BatchUserOperationCallData>(data: T_4, overrides?: import("@alchemy/aa-core").UserOperationOverrides | undefined, operation?: T_4 extends import("@alchemy/aa-core").UserOperationCallData ? import("../provider.js").Operation : T_4 extends import("@alchemy/aa-core").BatchUserOperationCallData ? import("../provider.js").Operation.Call : never) => Promise<import("@alchemy/aa-core").SendUserOperationResult>);
12
12
  waitForUserOperationTransaction: (hash: `0x${string}`) => Promise<`0x${string}`>;
13
13
  constructor(provider: ZeroDevEthersProvider<V>);
14
- getAddress(): Promise<string>;
14
+ getAddress(): Promise<Hex>;
15
15
  signMessage(message: string | Uint8Array): Promise<string>;
16
16
  signTypedData(params: SignTypedDataParams): Promise<string>;
17
17
  _signTypedData(domain: TypedDataDomain, types: Record<string, Array<TypedDataField>>, value: Record<string, any>): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"account-signer.d.ts","sourceRoot":"","sources":["../../../../src/kernel-zerodev/ethers-provider/account-signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,EAC/B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,MAAM,EACN,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,gCAAgC,CAAC;AAGxC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAUhC,qBAAa,oBAAoB,CAAC,CAAC,SAAS,mBAAmB,CAC7D,SAAQ,MACR,YAAW,eAAe;IAOd,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC,CAAC;IALvD,OAAO,CAAC,OAAO,CAAC,CAA6B;IAE7C,iBAAiB,i8EAAC;IAClB,+BAA+B,kDAAC;gBAEX,QAAQ,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAcvD,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAU7B,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAU1D,aAAa,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;IAa3D,cAAc,CACZ,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,EAC5C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACzB,OAAO,CAAC,MAAM,CAAC;IAkBZ,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;IAS5D,qBAAqB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC;IAStE,uBAAuB,cAAe;QACpC,4BAA4B,CAAC,EAAE,0BAA0B,CAAC;QAC1D,uBAAuB,CAAC,EAAE,0BAA0B,CAAC;KACtD,KAAG,IAAI,CAGN;IAEF,gBAAgB,aAAc,sBAAsB,KAAG,IAAI,CAGzD;IAEF,iBAAiB,aAAc,iBAAiB,KAAG,IAAI,CAGrD;IAEF,oBAAoB,aAAc,mBAAmB,KAAG,IAAI,CAG1D;IAEI,eAAe,CACnB,WAAW,EAAE,UAAU,CAAC,kBAAkB,CAAC,GAC1C,OAAO,CAAC,mBAAmB,CAAC;IAY/B,eAAe,CACb,YAAY,EAAE,UAAU,CAAC,kBAAkB,CAAC,GAC3C,OAAO,CAAC,MAAM,CAAC;IAMlB,sBAAsB,IAAI,mBAAmB;IAI7C,OAAO,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,oBAAoB,CAAC,CAAC,CAAC;CAGrE"}
1
+ {"version":3,"file":"account-signer.d.ts","sourceRoot":"","sources":["../../../../src/kernel-zerodev/ethers-provider/account-signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,EAC/B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,MAAM,EACN,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,gCAAgC,CAAC;AAGxC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAUhC,qBAAa,oBAAoB,CAAC,CAAC,SAAS,mBAAmB,CAC7D,SAAQ,MACR,YAAW,eAAe;IAOd,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC,CAAC;IALvD,OAAO,CAAC,OAAO,CAAC,CAA6B;IAE7C,iBAAiB,i8EAAC;IAClB,+BAA+B,kDAAC;gBAEX,QAAQ,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAcvD,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC;IAU1B,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAU1D,aAAa,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;IAa3D,cAAc,CACZ,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,EAC5C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACzB,OAAO,CAAC,MAAM,CAAC;IAkBZ,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;IAS5D,qBAAqB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC;IAStE,uBAAuB,cAAe;QACpC,4BAA4B,CAAC,EAAE,0BAA0B,CAAC;QAC1D,uBAAuB,CAAC,EAAE,0BAA0B,CAAC;KACtD,KAAG,IAAI,CAGN;IAEF,gBAAgB,aAAc,sBAAsB,KAAG,IAAI,CAGzD;IAEF,iBAAiB,aAAc,iBAAiB,KAAG,IAAI,CAGrD;IAEF,oBAAoB,aAAc,mBAAmB,KAAG,IAAI,CAG1D;IAEI,eAAe,CACnB,WAAW,EAAE,UAAU,CAAC,kBAAkB,CAAC,GAC1C,OAAO,CAAC,mBAAmB,CAAC;IAY/B,eAAe,CACb,YAAY,EAAE,UAAU,CAAC,kBAAkB,CAAC,GAC3C,OAAO,CAAC,MAAM,CAAC;IAMlB,sBAAsB,IAAI,mBAAmB;IAI7C,OAAO,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,oBAAoB,CAAC,CAAC,CAAC;CAGrE"}
@@ -1 +1 @@
1
- {"version":3,"file":"paymaster.d.ts","sourceRoot":"","sources":["../../../../src/kernel-zerodev/middleware/paymaster.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE9E,eAAO,MAAM,2BAA2B,0EAErB,gBAAgB,eAAe,CAAC,aAOlD,CAAC;AAEF,eAAO,MAAM,iCAAiC,4HAM3C,WACD,6BAA6B,CAAC,yBAAyB,CAAC,CACzD,CAAC,GAAG,CAgDJ,CAAC"}
1
+ {"version":3,"file":"paymaster.d.ts","sourceRoot":"","sources":["../../../../src/kernel-zerodev/middleware/paymaster.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG9E,eAAO,MAAM,2BAA2B,0EAErB,gBAAgB,eAAe,CAAC,aAOlD,CAAC;AAEF,eAAO,MAAM,iCAAiC,4HAM3C,WACD,6BAA6B,CAAC,yBAAyB,CAAC,CACzD,CAAC,GAAG,CA0DJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/kernel-zerodev/paymaster/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,mBAAmB,EAEzB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAG/D,8BAAsB,SAAS;IACjB,SAAS,CAAC,QAAQ,EAAE,eAAe;gBAAzB,QAAQ,EAAE,eAAe;IAC/C,QAAQ,CAAC,oBAAoB,CAC3B,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,CAAC,EAAE,4BAA4B,EAChD,iBAAiB,CAAC,EAAE,OAAO,GAC1B,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;cAC3B,UAAU,CAAC,EACzB,MAAM,EACN,QAAQ,EACR,eAAe,EACf,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,iBAAyB,GAC1B,EAAE;QACD,MAAM,EAAE,mBAAmB,CAAC;QAC5B,QAAQ,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;QACrC,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,WAAW,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;QAC3C,aAAa,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;QAC1C,iBAAiB,CAAC,EAAE,4BAA4B,CAAC;QACjD,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,GAAG,OAAO,CAAC,GAAG,CAAC;CA0CjB"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/kernel-zerodev/paymaster/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,mBAAmB,EAEzB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAG/D,8BAAsB,SAAS;IACjB,SAAS,CAAC,QAAQ,EAAE,eAAe;gBAAzB,QAAQ,EAAE,eAAe;IAC/C,QAAQ,CAAC,oBAAoB,CAC3B,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,CAAC,EAAE,4BAA4B,EAChD,iBAAiB,CAAC,EAAE,OAAO,GAC1B,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;cAC3B,UAAU,CAAC,EACzB,MAAM,EACN,QAAQ,EACR,eAAe,EACf,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,iBAAyB,GAC1B,EAAE;QACD,MAAM,EAAE,mBAAmB,CAAC;QAC5B,QAAQ,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;QACrC,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,WAAW,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;QAC3C,aAAa,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;QAC1C,iBAAiB,CAAC,EAAE,4BAA4B,CAAC;QACjD,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,GAAG,OAAO,CAAC,GAAG,CAAC;CAgDjB"}
@@ -1,15 +1,16 @@
1
- import { type PromiseOrValue, type BytesLike, type UserOperationStruct } from "@alchemy/aa-core";
1
+ import { type PromiseOrValue, type BytesLike, type UserOperationCallData, type UserOperationStruct, type BatchUserOperationCallData } from "@alchemy/aa-core";
2
2
  import { type Hex } from "viem";
3
3
  import type { ZeroDevProvider } from "../provider.js";
4
4
  import { type UserOperationCallDataWithDelegate } from "../utils.js";
5
5
  import { Paymaster } from "./base.js";
6
6
  import { type PaymasterAndBundlerProviders, type PaymasterConfig } from "./types.js";
7
+ export declare function isBatchUserOperationCallData(data: any): data is BatchUserOperationCallData;
7
8
  export declare class TokenPaymaster extends Paymaster {
8
9
  protected paymasterConfig: PaymasterConfig<"TOKEN_PAYMASTER">;
9
10
  constructor(provider: ZeroDevProvider, paymasterConfig: PaymasterConfig<"TOKEN_PAYMASTER">);
10
11
  getPaymasterAddress(paymasterProvider?: PaymasterAndBundlerProviders): Promise<Hex | undefined>;
11
- decodeMainCallFromCallData(kernelAddress: PromiseOrValue<string>, callData: PromiseOrValue<BytesLike>): Promise<UserOperationCallDataWithDelegate | undefined>;
12
- getERC20UserOp(struct: UserOperationStruct, mainCall: UserOperationCallDataWithDelegate, gasTokenAddress: Hex, paymasterAddress: Hex): Promise<UserOperationStruct | undefined>;
12
+ decodeMainCallFromCallData(kernelAddress: PromiseOrValue<string>, callData: PromiseOrValue<BytesLike>): Promise<UserOperationCallData | BatchUserOperationCallData | UserOperationCallDataWithDelegate | undefined>;
13
+ getERC20UserOp<T extends UserOperationCallData | BatchUserOperationCallData>(struct: UserOperationStruct, mainCall: T, gasTokenAddress: Hex, paymasterAddress: Hex): Promise<UserOperationStruct | undefined>;
13
14
  getPaymasterResponse(struct: UserOperationStruct, paymasterProvider?: PaymasterAndBundlerProviders, shouldOverrideFee?: boolean): Promise<UserOperationStruct | undefined>;
14
15
  }
15
16
  //# sourceMappingURL=token-paymaster.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"token-paymaster.d.ts","sourceRoot":"","sources":["../../../../src/kernel-zerodev/paymaster/token-paymaster.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,SAAS,EAEd,KAAK,mBAAmB,EACzB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,KAAK,GAAG,EAKT,MAAM,MAAM,CAAC;AAcd,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAEL,KAAK,iCAAiC,EACvC,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EACL,KAAK,4BAA4B,EACjC,KAAK,eAAe,EACrB,MAAM,YAAY,CAAC;AAGpB,qBAAa,cAAe,SAAQ,SAAS;IAGzC,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC,iBAAiB,CAAC;gBAD7D,QAAQ,EAAE,eAAe,EACf,eAAe,EAAE,eAAe,CAAC,iBAAiB,CAAC;IAIzD,mBAAmB,CACvB,iBAAiB,CAAC,EAAE,4BAA4B,GAC/C,OAAO,CAAC,GAAG,GAAG,SAAS,CAAC;IAmBrB,0BAA0B,CAC9B,aAAa,EAAE,cAAc,CAAC,MAAM,CAAC,EACrC,QAAQ,EAAE,cAAc,CAAC,SAAS,CAAC,GAClC,OAAO,CAAC,iCAAiC,GAAG,SAAS,CAAC;IA2DnD,cAAc,CAClB,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,EAAE,iCAAiC,EAC3C,eAAe,EAAE,GAAG,EACpB,gBAAgB,EAAE,GAAG,GACpB,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;IAuCrC,oBAAoB,CACxB,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,CAAC,EAAE,4BAA4B,EAChD,iBAAiB,CAAC,EAAE,OAAO,GAC1B,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;CAkD5C"}
1
+ {"version":3,"file":"token-paymaster.d.ts","sourceRoot":"","sources":["../../../../src/kernel-zerodev/paymaster/token-paymaster.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAChC,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,KAAK,GAAG,EAKT,MAAM,MAAM,CAAC;AAad,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAEL,KAAK,iCAAiC,EACvC,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EACL,KAAK,4BAA4B,EACjC,KAAK,eAAe,EACrB,MAAM,YAAY,CAAC;AAIpB,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,GAAG,GACR,IAAI,IAAI,0BAA0B,CAEpC;AACD,qBAAa,cAAe,SAAQ,SAAS;IAGzC,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC,iBAAiB,CAAC;gBAD7D,QAAQ,EAAE,eAAe,EACf,eAAe,EAAE,eAAe,CAAC,iBAAiB,CAAC;IAIzD,mBAAmB,CACvB,iBAAiB,CAAC,EAAE,4BAA4B,GAC/C,OAAO,CAAC,GAAG,GAAG,SAAS,CAAC;IAmBrB,0BAA0B,CAC9B,aAAa,EAAE,cAAc,CAAC,MAAM,CAAC,EACrC,QAAQ,EAAE,cAAc,CAAC,SAAS,CAAC,GAClC,OAAO,CACN,qBAAqB,GACrB,0BAA0B,GAC1B,iCAAiC,GACjC,SAAS,CACZ;IAkEK,cAAc,CAClB,CAAC,SAAS,qBAAqB,GAAG,0BAA0B,EAE5D,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,EAAE,CAAC,EACX,eAAe,EAAE,GAAG,EACpB,gBAAgB,EAAE,GAAG,GACpB,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;IA8CrC,oBAAoB,CACxB,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,CAAC,EAAE,4BAA4B,EAChD,iBAAiB,CAAC,EAAE,OAAO,GAC1B,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;CA4C5C"}
@@ -1 +1 @@
1
- {"version":3,"file":"verifying-paymaster.d.ts","sourceRoot":"","sources":["../../../../src/kernel-zerodev/paymaster/verifying-paymaster.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EAGzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEhF,qBAAa,kBAAmB,SAAQ,SAAS;gBAE7C,QAAQ,EAAE,eAAe,EACzB,CAAC,EAAE,eAAe,CAAC,qBAAqB,CAAC;IAIrC,oBAAoB,CACxB,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,CAAC,EAAE,4BAA4B,EAChD,iBAAiB,CAAC,EAAE,OAAO,GAC1B,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;CAgB5C"}
1
+ {"version":3,"file":"verifying-paymaster.d.ts","sourceRoot":"","sources":["../../../../src/kernel-zerodev/paymaster/verifying-paymaster.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EAGzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEhF,qBAAa,kBAAmB,SAAQ,SAAS;gBAE7C,QAAQ,EAAE,eAAe,EACzB,CAAC,EAAE,eAAe,CAAC,qBAAqB,CAAC;IAIrC,oBAAoB,CACxB,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,CAAC,EAAE,4BAA4B,EAChD,iBAAiB,CAAC,EAAE,OAAO,GAC1B,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;CAS5C"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/kernel-zerodev/provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,IAAI,EAET,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC3B,MAAM,MAAM,CAAC;AACd,OAAO,EAGL,KAAK,wBAAwB,EAE7B,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,EAK5B,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC5B,MAAM,kBAAkB,CAAC;AAQ1B,OAAO,EAAE,0BAA0B,EAAmB,MAAM,cAAc,CAAC;AAM3E,OAAO,KAAK,EACV,4BAA4B,EAC5B,eAAe,EACf,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,MAAM,qBAAqB,GAAG;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,0BAA0B,CAAC;IACrC,eAAe,CAAC,EAAE,4BAA4B,CAAC;IAC/C,IAAI,CAAC,EAAE,wBAAwB,GAAG;QAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAC;KAChC,CAAC;CACH,CAAC;AAEF,oBAAY,SAAS;IACnB,IAAI,IAAI;IACR,YAAY,IAAI;CACjB;AAED,KAAK,wBAAwB,CAAC,CAAC,IAAI,CAAC,SAAS,qBAAqB,GAC9D,SAAS,CAAC,IAAI,GAAG,SAAS,CAAC,YAAY,GACvC,CAAC,SAAS,0BAA0B,GACpC,SAAS,CAAC,IAAI,GACd,KAAK,CAAC;AAEV,qBAAa,eAAgB,SAAQ,oBAAoB,CAAC,aAAa,CAAC;IACtE,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC;IACnC,SAAS,CAAC,qBAAqB,EAAE,MAAM,CAAC;gBAE5B,EACV,SAAS,EACT,KAAK,EACL,iBAAsC,EACtC,MAAoB,EACpB,OAAO,EACP,eAAe,EACf,IAAI,GACL,EAAE,qBAAqB;IA2BxB,YAAY,QAAO,MAAM,CAAmB;IAE5C,eAAe,YACJ,qBAAqB,cACnB,yBAAyB,qBAAqB,CAAC,KACzD,QAAQ,IAAI,CAAC,CAwBd;IAEF,iBAAiB,sFAIH,sBAAsB,8CAEjC,QAAQ,uBAAuB,CAAC,CA2GjC;IAEF,oBAAoB,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO;IAc3C,WAAW,CAAC,OAAO,EAAE,GAAG,GAAG,KAAK;IAsBhC,UAAU,EAAE,MAAM,0BAA0B,CAK1C;IAEF,4BAA4B,EAAE,mBAAmB,CAM/C;IAEF,2BAA2B,CAAC,MAAM,EAAE,eAAe,CAAC,eAAe,CAAC;;;IAUpE,OAAO,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAA;KAAE,KAAK,OAAO,CAAC,GAAG,CAAC,CA6BjE;CACH"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/kernel-zerodev/provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,IAAI,EAET,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC3B,MAAM,MAAM,CAAC;AACd,OAAO,EAGL,KAAK,wBAAwB,EAE7B,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,EAK5B,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC5B,MAAM,kBAAkB,CAAC;AAQ1B,OAAO,EAAE,0BAA0B,EAAmB,MAAM,cAAc,CAAC;AAM3E,OAAO,KAAK,EACV,4BAA4B,EAC5B,eAAe,EACf,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,MAAM,qBAAqB,GAAG;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,0BAA0B,CAAC;IACrC,eAAe,CAAC,EAAE,4BAA4B,CAAC;IAC/C,IAAI,CAAC,EAAE,wBAAwB,GAAG;QAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAC;KAChC,CAAC;CACH,CAAC;AAEF,oBAAY,SAAS;IACnB,IAAI,IAAI;IACR,YAAY,IAAI;CACjB;AAED,KAAK,wBAAwB,CAAC,CAAC,IAAI,CAAC,SAAS,qBAAqB,GAC9D,SAAS,CAAC,IAAI,GAAG,SAAS,CAAC,YAAY,GACvC,CAAC,SAAS,0BAA0B,GACpC,SAAS,CAAC,IAAI,GACd,KAAK,CAAC;AAEV,qBAAa,eAAgB,SAAQ,oBAAoB,CAAC,aAAa,CAAC;IACtE,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC;IACnC,SAAS,CAAC,qBAAqB,EAAE,MAAM,CAAC;gBAE5B,EACV,SAAS,EACT,KAAK,EACL,iBAAsC,EACtC,MAAoB,EACpB,OAAO,EACP,eAAe,EACf,IAAI,GACL,EAAE,qBAAqB;IA2BxB,YAAY,QAAO,MAAM,CAAmB;IAE5C,eAAe,YACJ,qBAAqB,cACnB,yBAAyB,qBAAqB,CAAC,KACzD,QAAQ,IAAI,CAAC,CAwBd;IAEF,iBAAiB,sFAIH,sBAAsB,8CAEjC,QAAQ,uBAAuB,CAAC,CA2GjC;IAEF,oBAAoB,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO;IAc3C,WAAW,CAAC,OAAO,EAAE,GAAG,GAAG,KAAK;IAsBhC,UAAU,EAAE,MAAM,0BAA0B,CAK1C;IAEF,4BAA4B,EAAE,mBAAmB,CAK/C;IAEF,2BAA2B,CAAC,MAAM,EAAE,eAAe,CAAC,eAAe,CAAC;;;IAUpE,OAAO,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAA;KAAE,KAAK,OAAO,CAAC,GAAG,CAAC,CA6BjE;CACH"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zerodev/sdk",
3
- "version": "4.0.34",
3
+ "version": "4.1.0",
4
4
  "description": "A collection of ERC-4337 compliant smart contract account interfaces",
5
5
  "author": "ZeroDev",
6
6
  "license": "MIT",
@@ -74,6 +74,25 @@ export const KernelAccountAbi = [
74
74
  name: "ExecutionChanged",
75
75
  type: "event",
76
76
  },
77
+ {
78
+ anonymous: false,
79
+ inputs: [
80
+ {
81
+ indexed: false,
82
+ internalType: "address",
83
+ name: "sender",
84
+ type: "address",
85
+ },
86
+ {
87
+ indexed: false,
88
+ internalType: "uint256",
89
+ name: "amount",
90
+ type: "uint256",
91
+ },
92
+ ],
93
+ name: "Received",
94
+ type: "event",
95
+ },
77
96
  {
78
97
  anonymous: false,
79
98
  inputs: [
@@ -179,7 +198,7 @@ export const KernelAccountAbi = [
179
198
  },
180
199
  {
181
200
  internalType: "enum Operation",
182
- name: "operation",
201
+ name: "",
183
202
  type: "uint8",
184
203
  },
185
204
  ],
@@ -188,6 +207,36 @@ export const KernelAccountAbi = [
188
207
  stateMutability: "payable",
189
208
  type: "function",
190
209
  },
210
+ {
211
+ inputs: [
212
+ {
213
+ components: [
214
+ {
215
+ internalType: "address",
216
+ name: "to",
217
+ type: "address",
218
+ },
219
+ {
220
+ internalType: "uint256",
221
+ name: "value",
222
+ type: "uint256",
223
+ },
224
+ {
225
+ internalType: "bytes",
226
+ name: "data",
227
+ type: "bytes",
228
+ },
229
+ ],
230
+ internalType: "struct Call[]",
231
+ name: "calls",
232
+ type: "tuple[]",
233
+ },
234
+ ],
235
+ name: "executeBatch",
236
+ outputs: [],
237
+ stateMutability: "payable",
238
+ type: "function",
239
+ },
191
240
  {
192
241
  inputs: [],
193
242
  name: "getDefaultValidator",
@@ -503,12 +552,12 @@ export const KernelAccountAbi = [
503
552
  type: "address",
504
553
  },
505
554
  {
506
- internalType: "uint48",
555
+ internalType: "ValidUntil",
507
556
  name: "_validUntil",
508
557
  type: "uint48",
509
558
  },
510
559
  {
511
- internalType: "uint48",
560
+ internalType: "ValidAfter",
512
561
  name: "_validAfter",
513
562
  type: "uint48",
514
563
  },
@@ -597,7 +646,7 @@ export const KernelAccountAbi = [
597
646
  },
598
647
  ],
599
648
  internalType: "struct UserOperation",
600
- name: "userOp",
649
+ name: "_userOp",
601
650
  type: "tuple",
602
651
  },
603
652
  {
@@ -180,16 +180,28 @@ export class KernelSmartContractAccount<
180
180
  async encodeBatchExecute(
181
181
  _txs: BatchUserOperationCallData
182
182
  ): Promise<`0x${string}`> {
183
- const multiSendCalldata = encodeFunctionData({
184
- abi: MultiSendAbi,
185
- functionName: "multiSend",
186
- args: [encodeMultiSend(_txs)],
187
- });
188
- return await this.encodeExecuteDelegate(
189
- MULTISEND_ADDR,
190
- BigInt(0),
191
- multiSendCalldata
192
- );
183
+ const kernelImplAddr = await this.getKernelImplementationAddess();
184
+ const initCode = await this.getInitCode();
185
+ // [TODO] - Remove this check once the kernel implementation is updated
186
+ // Also, remove the check for the hardcoded kernel implementation address
187
+ const shouldUseMultiSend =
188
+ kernelImplAddr?.toLowerCase() !== KERNEL_IMPL_ADDRESS.toLowerCase() &&
189
+ kernelImplAddr?.toLowerCase() !==
190
+ "0x8dD4DBB54d8A8Cf0DE6F9CCC4609470A30EfF18C".toLowerCase() &&
191
+ initCode === "0x";
192
+ if (shouldUseMultiSend) {
193
+ const multiSendCalldata = encodeFunctionData({
194
+ abi: MultiSendAbi,
195
+ functionName: "multiSend",
196
+ args: [encodeMultiSend(_txs)],
197
+ });
198
+ return await this.encodeExecuteDelegate(
199
+ MULTISEND_ADDR,
200
+ BigInt(0),
201
+ multiSendCalldata
202
+ );
203
+ }
204
+ return await this.encodeExecuteBatchAction(_txs);
193
205
  }
194
206
 
195
207
  async encodeExecuteDelegate(
@@ -221,6 +233,26 @@ export class KernelSmartContractAccount<
221
233
  });
222
234
  }
223
235
 
236
+ async encodeUgradeTo() {
237
+ return encodeFunctionData({
238
+ abi: KernelAccountAbi,
239
+ functionName: "upgradeTo",
240
+ args: [KERNEL_IMPL_ADDRESS],
241
+ });
242
+ }
243
+
244
+ async getKernelImplementationAddess(): Promise<Hex | undefined> {
245
+ try {
246
+ const strgAddr = await this.rpcProvider.getStorageAt({
247
+ address: await this.getAddress(),
248
+ slot: "0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc",
249
+ });
250
+ return strgAddr ? (("0x" + strgAddr.slice(26)) as Hex) : strgAddr;
251
+ } catch (error) {
252
+ return;
253
+ }
254
+ }
255
+
224
256
  async signMessageWith6492(msg: string | Uint8Array): Promise<Hex> {
225
257
  try {
226
258
  if (!this.validator) {
@@ -302,6 +334,21 @@ export class KernelSmartContractAccount<
302
334
  args: [target, value, data, code],
303
335
  });
304
336
  }
337
+
338
+ protected encodeExecuteBatchAction(_txs: BatchUserOperationCallData): Hex {
339
+ return encodeFunctionData({
340
+ abi: KernelAccountAbi,
341
+ functionName: "executeBatch",
342
+ args: [
343
+ _txs.map((tx) => ({
344
+ to: tx.target,
345
+ value: tx.value ?? 0n,
346
+ data: tx.data,
347
+ })),
348
+ ],
349
+ });
350
+ }
351
+
305
352
  protected async getAccountInitCode(): Promise<Hex> {
306
353
  return concatHex([this.factoryAddress, await this.getFactoryInitCode()]);
307
354
  }
@@ -5,7 +5,8 @@ import { polygon } from "viem/chains";
5
5
  export const DEFAULT_SEND_TX_MAX_RETRIES = 3;
6
6
  export const DEFAULT_SEND_TX_RETRY_INTERVAL_MS = 60000; // 1 minutes
7
7
  export const BUNDLER_URL = "https://v0-6-meta-bundler.onrender.com";
8
- export const PAYMASTER_URL = "https://v0-6-paymaster.onrender.com";
8
+ export const PAYMASTER_URL =
9
+ "https://meta-aa-provider.onrender.com/api/v1/paymaster";
9
10
  export const ENTRYPOINT_ADDRESS: Hex =
10
11
  "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789";
11
12
  export const MULTISEND_ADDR: Hex = "0x8ae01fcf7c655655ff2c6ef907b8b4718ab4e17c";
@@ -15,7 +16,7 @@ export const ECDSA_VALIDATOR_ADDRESS =
15
16
  "0xd9AB5096a832b9ce79914329DAEE236f8Eea0390";
16
17
  export const KERNEL_FACTORY_ADDRESS =
17
18
  "0x5de4839a76cf55d0c90e2061ef4386d962E15ae3";
18
- export const KERNEL_IMPL_ADDRESS = "0xf048AD83CB2dfd6037A43902a2A5Be04e53cd2Eb";
19
+ export const KERNEL_IMPL_ADDRESS = "0x0DA6a956B9488eD4dd761E59f52FDc6c8068E6B5";
19
20
  export const KILL_SWITCH_VALIDATOR_ADDRESS =
20
21
  "0x7393A7dA58CCfFb78f52adb09705BE6E20F704BC";
21
22
  export const KILL_SWITCH_ACTION = "0x3f38e479304c7F18F988269a1bDa7d646bd48243";
@@ -56,7 +56,7 @@ export class ZeroDevAccountSigner<V extends SupportedValidators>
56
56
  );
57
57
  }
58
58
 
59
- getAddress(): Promise<string> {
59
+ getAddress(): Promise<Hex> {
60
60
  if (!this.account) {
61
61
  throw new Error(
62
62
  "connect the signer to a provider that has a connected account"
@@ -2,6 +2,7 @@ import { type ConnectedSmartAccountProvider } from "@alchemy/aa-core";
2
2
  import type { ZeroDevProvider } from "../provider.js";
3
3
  import { Paymasters } from "../paymaster/index.js";
4
4
  import type { PaymasterConfig, PaymasterPolicy } from "../paymaster/types.js";
5
+ import { AxiosError } from "axios";
5
6
 
6
7
  export const withZeroDevPaymasterAndData = <Provider extends ZeroDevProvider>(
7
8
  provider: Provider,
@@ -37,15 +38,25 @@ export const zeroDevPaymasterAndDataMiddleware = <
37
38
  provider,
38
39
  paymasterConfig
39
40
  );
40
- const paymasterResp = await paymaster.getPaymasterResponse(
41
- {
42
- ...struct,
43
- preVerificationGas,
44
- verificationGasLimit,
45
- callGasLimit,
46
- },
47
- paymasterConfig.paymasterProvider
48
- );
41
+ let paymasterResp;
42
+ try {
43
+ paymasterResp = await paymaster.getPaymasterResponse(
44
+ {
45
+ ...struct,
46
+ preVerificationGas,
47
+ verificationGasLimit,
48
+ callGasLimit,
49
+ },
50
+ paymasterConfig.paymasterProvider
51
+ );
52
+ } catch (error: any) {
53
+ console.error(error);
54
+ if (paymasterConfig.onlySendSponsoredTransaction) {
55
+ if (error instanceof AxiosError)
56
+ throw Error(error.response?.data.message);
57
+ else throw error;
58
+ }
59
+ }
49
60
  if (
50
61
  paymasterConfig.onlySendSponsoredTransaction &&
51
62
  (!paymasterResp ||
@@ -36,45 +36,51 @@ export abstract class Paymaster {
36
36
  paymasterProvider?: PaymasterAndBundlerProviders;
37
37
  shouldOverrideFee?: boolean;
38
38
  }): Promise<any> {
39
- try {
40
- const hexifiedUserOp = deepHexlify(await resolveProperties(userOp));
41
- let resolvedERC20UserOp;
42
- let hexifiedERC20UserOp: any;
43
- if (erc20UserOp) {
44
- resolvedERC20UserOp = await resolveProperties(erc20UserOp);
39
+ const hexifiedUserOp = deepHexlify(await resolveProperties(userOp));
40
+ let resolvedERC20UserOp;
41
+ let hexifiedERC20UserOp: any;
42
+ if (erc20UserOp) {
43
+ resolvedERC20UserOp = await resolveProperties(erc20UserOp);
45
44
 
46
- hexifiedERC20UserOp = hexifyUserOp(resolvedERC20UserOp);
47
- }
48
- const chainId = await getChainId(this.provider.getProjectId());
49
- if (!chainId) throw new Error("ChainId not found");
50
- let requestBodyParams = Object.fromEntries(
51
- Object.entries({
52
- projectId: this.provider.getProjectId(),
53
- chainId,
54
- userOp: hexifiedUserOp,
55
- entryPointAddress: ENTRYPOINT_ADDRESS,
56
- callData: callData instanceof Promise ? await callData : callData,
57
- tokenAddress: gasTokenAddress,
58
- erc20UserOp: hexifiedERC20UserOp,
59
- erc20CallData:
60
- erc20CallData instanceof Promise
61
- ? await erc20CallData
62
- : erc20CallData,
63
- paymasterProvider,
64
- shouldOverrideFee,
65
- }).filter(([_, value]) => value !== undefined)
66
- );
67
- const { data: paymasterResp } = await axios.post(
68
- `${PAYMASTER_URL}/sign`,
69
- {
70
- ...requestBodyParams,
71
- },
72
- { headers: { "Content-Type": "application/json" } }
73
- );
74
- return paymasterResp;
75
- } catch (error) {
76
- console.log(error);
77
- return undefined;
45
+ hexifiedERC20UserOp = hexifyUserOp(resolvedERC20UserOp);
78
46
  }
47
+ const chainId = await getChainId(this.provider.getProjectId());
48
+ if (!chainId) throw new Error("ChainId not found");
49
+ let requestBodyParams = Object.fromEntries(
50
+ Object.entries({
51
+ projectId: this.provider.getProjectId(),
52
+ chainId,
53
+ userOp: hexifiedUserOp,
54
+ entryPointAddress: ENTRYPOINT_ADDRESS,
55
+ callData: callData instanceof Promise ? await callData : callData,
56
+ gasTokenData:
57
+ gasTokenAddress && hexifiedERC20UserOp && erc20CallData
58
+ ? {
59
+ tokenAddress: gasTokenAddress,
60
+ erc20UserOp: hexifiedERC20UserOp,
61
+ erc20CallData:
62
+ erc20CallData instanceof Promise
63
+ ? await erc20CallData
64
+ : erc20CallData,
65
+ }
66
+ : undefined,
67
+ tokenAddress: gasTokenAddress,
68
+ erc20UserOp: hexifiedERC20UserOp,
69
+ erc20CallData:
70
+ erc20CallData instanceof Promise
71
+ ? await erc20CallData
72
+ : erc20CallData,
73
+ paymasterProvider,
74
+ shouldOverrideFee,
75
+ }).filter(([_, value]) => value !== undefined)
76
+ );
77
+ const { data: paymasterResp } = await axios.post(
78
+ `${PAYMASTER_URL}/getPaymasterAndData`,
79
+ {
80
+ ...requestBodyParams,
81
+ },
82
+ { headers: { "Content-Type": "application/json" } }
83
+ );
84
+ return paymasterResp;
79
85
  }
80
86
  }