@deserialize/multi-vm-wallet 1.3.2 → 1.3.3

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 (84) hide show
  1. package/.claude/settings.local.json +2 -1
  2. package/dist/constant.js +60 -16
  3. package/dist/constant.js.map +1 -1
  4. package/dist/evm/aa-service/index.d.ts +1 -1
  5. package/dist/evm/aa-service/index.js +1 -2
  6. package/dist/evm/aa-service/index.js.map +1 -1
  7. package/dist/evm/aa-service/lib/kernel-account.d.ts +1 -1
  8. package/dist/evm/aa-service/lib/kernel-account.js +22 -6
  9. package/dist/evm/aa-service/lib/kernel-account.js.map +1 -1
  10. package/dist/evm/aa-service/lib/session-keys.d.ts +14 -17
  11. package/dist/evm/aa-service/lib/session-keys.js +40 -58
  12. package/dist/evm/aa-service/lib/session-keys.js.map +1 -1
  13. package/dist/evm/aa-service/lib/type.d.ts +2 -1
  14. package/dist/evm/aa-service/lib/type.js.map +1 -1
  15. package/dist/evm/aa-service/services/account-abstraction.d.ts +3 -29
  16. package/dist/evm/aa-service/services/account-abstraction.js +3 -67
  17. package/dist/evm/aa-service/services/account-abstraction.js.map +1 -1
  18. package/dist/evm/aa-service/services/bundler.js +2 -1
  19. package/dist/evm/aa-service/services/bundler.js.map +1 -1
  20. package/dist/evm/evm.d.ts +161 -1
  21. package/dist/evm/evm.js +247 -0
  22. package/dist/evm/evm.js.map +1 -1
  23. package/dist/evm/smartWallet.d.ts +11 -43
  24. package/dist/evm/smartWallet.js +136 -116
  25. package/dist/evm/smartWallet.js.map +1 -1
  26. package/dist/evm/utils.js +0 -1
  27. package/dist/evm/utils.js.map +1 -1
  28. package/dist/privacy/artifact-manager.d.ts +117 -0
  29. package/dist/privacy/artifact-manager.js +251 -0
  30. package/dist/privacy/artifact-manager.js.map +1 -0
  31. package/dist/privacy/broadcaster-client.d.ts +166 -0
  32. package/dist/privacy/broadcaster-client.js +261 -0
  33. package/dist/privacy/broadcaster-client.js.map +1 -0
  34. package/dist/privacy/index.d.ts +34 -0
  35. package/dist/privacy/index.js +56 -0
  36. package/dist/privacy/index.js.map +1 -0
  37. package/dist/privacy/network-config.d.ts +57 -0
  38. package/dist/privacy/network-config.js +118 -0
  39. package/dist/privacy/network-config.js.map +1 -0
  40. package/dist/privacy/poi-helper.d.ts +161 -0
  41. package/dist/privacy/poi-helper.js +249 -0
  42. package/dist/privacy/poi-helper.js.map +1 -0
  43. package/dist/privacy/railgun-engine.d.ts +135 -0
  44. package/dist/privacy/railgun-engine.js +205 -0
  45. package/dist/privacy/railgun-engine.js.map +1 -0
  46. package/dist/privacy/railgun-privacy-wallet.d.ts +288 -0
  47. package/dist/privacy/railgun-privacy-wallet.js +539 -0
  48. package/dist/privacy/railgun-privacy-wallet.js.map +1 -0
  49. package/dist/privacy/types.d.ts +229 -0
  50. package/dist/privacy/types.js +26 -0
  51. package/dist/privacy/types.js.map +1 -0
  52. package/dist/savings/savings-manager.d.ts +126 -0
  53. package/dist/savings/savings-manager.js +234 -0
  54. package/dist/savings/savings-manager.js.map +1 -0
  55. package/dist/savings/smart-savings.d.ts +74 -0
  56. package/dist/savings/smart-savings.js +152 -0
  57. package/dist/savings/smart-savings.js.map +1 -0
  58. package/dist/savings/types.d.ts +125 -0
  59. package/dist/savings/types.js +9 -0
  60. package/dist/savings/types.js.map +1 -0
  61. package/dist/svm/svm.d.ts +16 -0
  62. package/dist/svm/svm.js +23 -0
  63. package/dist/svm/svm.js.map +1 -1
  64. package/dist/test.js +53 -15
  65. package/dist/test.js.map +1 -1
  66. package/dist/vm.d.ts +14 -0
  67. package/dist/vm.js.map +1 -1
  68. package/package.json +2 -1
  69. package/utils/constant.ts +63 -16
  70. package/utils/evm/aa-service/index.ts +0 -1
  71. package/utils/evm/aa-service/lib/kernel-account.ts +23 -8
  72. package/utils/evm/aa-service/lib/session-keys.ts +58 -60
  73. package/utils/evm/aa-service/lib/type.ts +2 -1
  74. package/utils/evm/aa-service/services/account-abstraction.ts +10 -76
  75. package/utils/evm/aa-service/services/bundler.ts +2 -1
  76. package/utils/evm/evm.ts +300 -0
  77. package/utils/evm/smartWallet.ts +118 -128
  78. package/utils/evm/utils.ts +1 -1
  79. package/utils/savings/savings-manager.ts +271 -0
  80. package/utils/savings/smart-savings.ts +184 -0
  81. package/utils/savings/types.ts +135 -0
  82. package/utils/svm/svm.ts +27 -0
  83. package/utils/test.ts +82 -18
  84. package/utils/vm.ts +10 -0
@@ -11,7 +11,8 @@
11
11
  "Bash(npm run build:test:*)",
12
12
  "Bash(wait)",
13
13
  "WebSearch",
14
- "WebFetch(domain:docs.pimlico.io)"
14
+ "WebFetch(domain:docs.pimlico.io)",
15
+ "WebFetch(domain:docs.railgun.org)"
15
16
  ],
16
17
  "deny": [],
17
18
  "ask": []
package/dist/constant.js CHANGED
@@ -31,7 +31,7 @@ exports.DefaultChains = [{
31
31
  }, {
32
32
  chainId: 123456789,
33
33
  name: "Solana",
34
- rpcUrl: "https://solana-mainnet.g.alchemy.com/v2/lhoyb3hc9ccT9NA_y2cfA",
34
+ rpcUrl: "https://solana-mainnet.g.alchemy.com/v2/TFdA4BilCnKIwaqtypk0d",
35
35
  explorerUrl: "https://explorer.solana.com",
36
36
  nativeToken: {
37
37
  name: "Solana",
@@ -45,7 +45,7 @@ exports.DefaultChains = [{
45
45
  {
46
46
  chainId: 1,
47
47
  name: "Ethereum",
48
- rpcUrl: "https://eth-mainnet.g.alchemy.com/v2/BJ3c0bm5npmsKZ6oAdHPU",
48
+ rpcUrl: "https://eth-mainnet.g.alchemy.com/v2/TFdA4BilCnKIwaqtypk0d",
49
49
  explorerUrl: "https://etherscan.io",
50
50
  nativeToken: {
51
51
  name: "Ether",
@@ -68,24 +68,25 @@ exports.DefaultChains = [{
68
68
  testnet: false,
69
69
  logoUrl: "https://bscscan.com/assets/bsc/images/svg/logos/token-light.svg?v=25.10.5.0",
70
70
  vmType: "EVM"
71
- }, {
72
- chainId: 123456791,
73
- name: "Eclipse",
74
- rpcUrl: "https://mainnetbeta-rpc.eclipse.xyz",
75
- explorerUrl: "https://explorer.eclipse.xyz/",
76
- nativeToken: {
77
- name: "Eclipse",
78
- symbol: "ETH",
79
- decimals: 9,
80
- },
81
- testnet: false,
82
- logoUrl: "https://raw.githubusercontent.com/hyperlane-xyz/hyperlane-registry/a86c3b432b6f9ad7272ae09859f20eb3ade3bd6e/deployments/warp_routes/ES/logo.svg",
83
- vmType: "SVM"
84
71
  },
72
+ // {
73
+ // chainId: 123456791,
74
+ // name: "Eclipse",
75
+ // rpcUrl: "https://mainnetbeta-rpc.eclipse.xyz",
76
+ // explorerUrl: "https://explorer.eclipse.xyz/",
77
+ // nativeToken: {
78
+ // name: "Eclipse",
79
+ // symbol: "ETH",
80
+ // decimals: 9,
81
+ // },
82
+ // testnet: false,
83
+ // logoUrl: "https://raw.githubusercontent.com/hyperlane-xyz/hyperlane-registry/a86c3b432b6f9ad7272ae09859f20eb3ade3bd6e/deployments/warp_routes/ES/logo.svg",
84
+ // vmType: "SVM"
85
+ // },
85
86
  {
86
87
  chainId: chains_1.base.id,
87
88
  name: chains_1.base.name,
88
- rpcUrl: chains_1.base.rpcUrls.default.http[0],
89
+ rpcUrl: "https://base-mainnet.g.alchemy.com/v2/TFdA4BilCnKIwaqtypk0d",
89
90
  explorerUrl: chains_1.base.blockExplorers?.default.url || "",
90
91
  nativeToken: {
91
92
  name: chains_1.base.nativeCurrency.name,
@@ -95,6 +96,49 @@ exports.DefaultChains = [{
95
96
  testnet: chains_1.base.testnet,
96
97
  logoUrl: "https://avatars.githubusercontent.com/u/108554348?s=200&v=4",
97
98
  vmType: "EVM"
99
+ },
100
+ {
101
+ chainId: 42161,
102
+ name: "Arbitrum One",
103
+ rpcUrl: "https://arbitrum-mainnet.g.alchemy.com/v2/TFdA4BilCnKIwaqtypk0d",
104
+ explorerUrl: "https://arbiscan.io",
105
+ nativeToken: {
106
+ name: "Ether",
107
+ symbol: "ETH",
108
+ decimals: 18,
109
+ },
110
+ testnet: false,
111
+ logoUrl: "https://arbiscan.io/images/svg/brands/arbitrum-light.svg?v=0.0.36",
112
+ vmType: "EVM"
113
+ },
114
+ {
115
+ chainId: 10,
116
+ name: "Optimism",
117
+ rpcUrl: "https://optimism-mainnet.g.alchemy.com/v2/TFdA4BilCnKIwaqtypk0d",
118
+ explorerUrl: "https://optimistic.etherscan.io",
119
+ nativeToken: {
120
+ name: "Ether",
121
+ symbol: "ETH",
122
+ decimals: 18,
123
+ },
124
+ testnet: false,
125
+ logoUrl: "https://optimism.io/images/optimism-logo-light.svg",
126
+ vmType: "EVM"
127
+ },
128
+ //add for polygon
129
+ {
130
+ chainId: 137,
131
+ name: "Polygon",
132
+ rpcUrl: "https://polygon-mainnet.g.alchemy.com/v2/TFdA4BilCnKIwaqtypk0d",
133
+ explorerUrl: "https://polygonscan.com",
134
+ nativeToken: {
135
+ name: "MATIC",
136
+ symbol: "MATIC",
137
+ decimals: 18,
138
+ },
139
+ testnet: false,
140
+ logoUrl: "https://polygonscan.com/images/svg/brands/polygon-light.svg?v=0.0.36",
141
+ vmType: "EVM"
98
142
  }
99
143
  ];
100
144
  exports.TRANSACTION_TYPE = {
@@ -1 +1 @@
1
- {"version":3,"file":"constant.js","sourceRoot":"","sources":["../utils/constant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constant.js","sourceRoot":"","sources":["../utils/constant.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,6 @@ export type { BundlerConfig, BundlerService } from './services/bundler';
11
11
  export { createKernel7702Account, createKernelAuthorization, sendKernelTransaction, sendBatchTransaction, waitForKernelReceipt } from './lib/kernel-account';
12
12
  export { prepareInstallModule, prepareUninstallModule, prepareInstallSessionKey, prepareRevokeSessionKey, prepareInstallMultiSigValidator, installModule, uninstallModule, isModuleInstalled, createSessionKey, revokeSessionKey, installMultiSigValidator, MODULE_TYPE_IDS } from './lib/kernel-modules';
13
13
  export type { ModuleType, InstallModuleConfig, UninstallModuleConfig, ModuleStatus, SessionKeyPermission, CreateSessionKeyConfig } from './lib/kernel-modules';
14
- export { generateSessionKey, recreateSessionKey, createSessionKeyApproval, deserializeSessionKey, createSessionKeyClient, createUSDCTransferPermission, createETHTransferPermission } from './lib/session-keys';
14
+ export { generateSessionKey, createSessionKeyApproval, deserializeSessionKey, createSessionKeyClient, createUSDCTransferPermission, createETHTransferPermission } from './lib/session-keys';
15
15
  export type { SessionKeyInfo, SessionKeyPermissionRule, CreateSessionKeyApprovalOptions, DeserializedSessionKey } from './lib/session-keys';
16
16
  export { adaptZeroDevAccount, adaptSessionKeyAccount } from './lib/account-adapter';
@@ -19,7 +19,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
19
19
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
20
20
  };
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.adaptSessionKeyAccount = exports.adaptZeroDevAccount = exports.createETHTransferPermission = exports.createUSDCTransferPermission = exports.createSessionKeyClient = exports.deserializeSessionKey = exports.createSessionKeyApproval = exports.recreateSessionKey = exports.generateSessionKey = exports.MODULE_TYPE_IDS = exports.installMultiSigValidator = exports.revokeSessionKey = exports.createSessionKey = exports.isModuleInstalled = exports.uninstallModule = exports.installModule = exports.prepareInstallMultiSigValidator = exports.prepareRevokeSessionKey = exports.prepareInstallSessionKey = exports.prepareUninstallModule = exports.prepareInstallModule = exports.waitForKernelReceipt = exports.sendBatchTransaction = exports.sendKernelTransaction = exports.createKernelAuthorization = exports.createKernel7702Account = exports.createBundlerService = exports.createBundlerManager = exports.BundlerManager = exports.AccountAbstractionService = void 0;
22
+ exports.adaptSessionKeyAccount = exports.adaptZeroDevAccount = exports.createETHTransferPermission = exports.createUSDCTransferPermission = exports.createSessionKeyClient = exports.deserializeSessionKey = exports.createSessionKeyApproval = exports.generateSessionKey = exports.MODULE_TYPE_IDS = exports.installMultiSigValidator = exports.revokeSessionKey = exports.createSessionKey = exports.isModuleInstalled = exports.uninstallModule = exports.installModule = exports.prepareInstallMultiSigValidator = exports.prepareRevokeSessionKey = exports.prepareInstallSessionKey = exports.prepareUninstallModule = exports.prepareInstallModule = exports.waitForKernelReceipt = exports.sendBatchTransaction = exports.sendKernelTransaction = exports.createKernelAuthorization = exports.createKernel7702Account = exports.createBundlerService = exports.createBundlerManager = exports.BundlerManager = exports.AccountAbstractionService = void 0;
23
23
  // Singleton Service (Primary Interface)
24
24
  var account_abstraction_1 = require("./services/account-abstraction");
25
25
  Object.defineProperty(exports, "AccountAbstractionService", { enumerable: true, get: function () { return account_abstraction_1.AccountAbstractionService; } });
@@ -55,7 +55,6 @@ Object.defineProperty(exports, "MODULE_TYPE_IDS", { enumerable: true, get: funct
55
55
  // EIP-7702 Session Keys (NEW Pattern)
56
56
  var session_keys_1 = require("./lib/session-keys");
57
57
  Object.defineProperty(exports, "generateSessionKey", { enumerable: true, get: function () { return session_keys_1.generateSessionKey; } });
58
- Object.defineProperty(exports, "recreateSessionKey", { enumerable: true, get: function () { return session_keys_1.recreateSessionKey; } });
59
58
  Object.defineProperty(exports, "createSessionKeyApproval", { enumerable: true, get: function () { return session_keys_1.createSessionKeyApproval; } });
60
59
  Object.defineProperty(exports, "deserializeSessionKey", { enumerable: true, get: function () { return session_keys_1.deserializeSessionKey; } });
61
60
  Object.defineProperty(exports, "createSessionKeyClient", { enumerable: true, get: function () { return session_keys_1.createSessionKeyClient; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../utils/evm/aa-service/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;AAEH,wCAAwC;AACxC,sEAA2E;AAAlE,gIAAA,yBAAyB,OAAA;AASlC,6CAA0B;AAE1B,oCAAoC;AACpC,8CAI4B;AAHxB,yGAAA,cAAc,OAAA;AACd,+GAAA,oBAAoB,OAAA;AACpB,+GAAA,oBAAoB,OAAA;AAIxB,4CAA4C;AAC5C,uDAM8B;AAL1B,yHAAA,uBAAuB,OAAA;AACvB,2HAAA,yBAAyB,OAAA;AACzB,uHAAA,qBAAqB,OAAA;AACrB,sHAAA,oBAAoB,OAAA;AACpB,sHAAA,oBAAoB,OAAA;AAIxB,+BAA+B;AAC/B,uDAe8B;AAd1B,mCAAmC;AACnC,sHAAA,oBAAoB,OAAA;AACpB,wHAAA,sBAAsB,OAAA;AACtB,0HAAA,wBAAwB,OAAA;AACxB,yHAAA,uBAAuB,OAAA;AACvB,iIAAA,+BAA+B,OAAA;AAC/B,0CAA0C;AAC1C,+GAAA,aAAa,OAAA;AACb,iHAAA,eAAe,OAAA;AACf,mHAAA,iBAAiB,OAAA;AACjB,kHAAA,gBAAgB,OAAA;AAChB,kHAAA,gBAAgB,OAAA;AAChB,0HAAA,wBAAwB,OAAA;AACxB,iHAAA,eAAe,OAAA;AAWnB,sCAAsC;AACtC,mDAQ4B;AAPxB,kHAAA,kBAAkB,OAAA;AAClB,kHAAA,kBAAkB,OAAA;AAClB,wHAAA,wBAAwB,OAAA;AACxB,qHAAA,qBAAqB,OAAA;AACrB,sHAAA,sBAAsB,OAAA;AACtB,4HAAA,4BAA4B,OAAA;AAC5B,2HAAA,2BAA2B,OAAA;AAS/B,yCAAyC;AACzC,yDAG+B;AAF3B,sHAAA,mBAAmB,OAAA;AACnB,yHAAA,sBAAsB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../utils/evm/aa-service/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;AAEH,wCAAwC;AACxC,sEAA2E;AAAlE,gIAAA,yBAAyB,OAAA;AASlC,6CAA0B;AAE1B,oCAAoC;AACpC,8CAI4B;AAHxB,yGAAA,cAAc,OAAA;AACd,+GAAA,oBAAoB,OAAA;AACpB,+GAAA,oBAAoB,OAAA;AAIxB,4CAA4C;AAC5C,uDAM8B;AAL1B,yHAAA,uBAAuB,OAAA;AACvB,2HAAA,yBAAyB,OAAA;AACzB,uHAAA,qBAAqB,OAAA;AACrB,sHAAA,oBAAoB,OAAA;AACpB,sHAAA,oBAAoB,OAAA;AAIxB,+BAA+B;AAC/B,uDAe8B;AAd1B,mCAAmC;AACnC,sHAAA,oBAAoB,OAAA;AACpB,wHAAA,sBAAsB,OAAA;AACtB,0HAAA,wBAAwB,OAAA;AACxB,yHAAA,uBAAuB,OAAA;AACvB,iIAAA,+BAA+B,OAAA;AAC/B,0CAA0C;AAC1C,+GAAA,aAAa,OAAA;AACb,iHAAA,eAAe,OAAA;AACf,mHAAA,iBAAiB,OAAA;AACjB,kHAAA,gBAAgB,OAAA;AAChB,kHAAA,gBAAgB,OAAA;AAChB,0HAAA,wBAAwB,OAAA;AACxB,iHAAA,eAAe,OAAA;AAWnB,sCAAsC;AACtC,mDAO4B;AANxB,kHAAA,kBAAkB,OAAA;AAClB,wHAAA,wBAAwB,OAAA;AACxB,qHAAA,qBAAqB,OAAA;AACrB,sHAAA,sBAAsB,OAAA;AACtB,4HAAA,4BAA4B,OAAA;AAC5B,2HAAA,2BAA2B,OAAA;AAS/B,yCAAyC;AACzC,yDAG+B;AAF3B,sHAAA,mBAAmB,OAAA;AACnB,yHAAA,sBAAsB,OAAA"}
@@ -13,8 +13,8 @@ export declare function createKernel7702Account(config: KernelAccountConfig): Pr
13
13
  export declare function createKernelAuthorization(config: {
14
14
  owner: PrivateKeyAccount;
15
15
  chain: Chain;
16
- bundlerManager: BundlerManager;
17
16
  kernelVersion?: KernelVersion;
17
+ aaConfig?: import('./type').AA_SupportConfig;
18
18
  }): Promise<SignAuthorizationReturnType | undefined>;
19
19
  /**
20
20
  * Send batch transaction (RECOMMENDED for smart accounts)
@@ -26,7 +26,7 @@ const ENTRYPOINT_MAP = {
26
26
  // Kernel Account Factory
27
27
  // ============================================
28
28
  async function createKernel7702Account(config) {
29
- const { chain, owner, bundlerManager, entryPointVersion = '0.7', kernelVersion = '0.3.3', aaConfig } = config;
29
+ const { chain, owner, entryPointVersion = '0.7', kernelVersion = '0.3.3', aaConfig } = config;
30
30
  // Create public client for standard RPC calls
31
31
  // (Bundler clients don't support standard eth_* methods)
32
32
  const publicClient = (0, viem_1.createPublicClient)({
@@ -79,15 +79,31 @@ async function createKernel7702Account(config) {
79
79
  // EIP-7702 Authorization Helper
80
80
  // ============================================
81
81
  async function createKernelAuthorization(config) {
82
- const { owner, chain, bundlerManager, kernelVersion = '0.3.3' } = config;
83
- const bundlerClient = bundlerManager.getClient(chain);
82
+ const { owner, chain, kernelVersion = '0.3.3', aaConfig } = config;
84
83
  // Create public client for eth_getCode (bundler clients don't support it)
85
84
  const publicClient = (0, viem_1.createPublicClient)({
86
85
  chain,
87
- transport: (0, viem_1.http)()
86
+ transport: (0, viem_1.http)(chain.rpcUrls.default.http[0])
88
87
  });
89
- // Get Kernel implementation address
90
- const delegateAddress = constants_1.KernelVersionToAddressesMap[constants_1.KERNEL_V3_3].accountImplementationAddress;
88
+ // Get Kernel implementation address from aaConfig or fallback to default
89
+ let delegateAddress;
90
+ if (aaConfig && aaConfig.kernelImplementations.length > 0) {
91
+ // Try to find matching kernel version (currently only 0.3.3 / version 3 is supported)
92
+ const versionNumber = 3; // kernel version 0.3.3 maps to version 3
93
+ const kernelImpl = aaConfig.kernelImplementations.find(impl => impl.version === versionNumber);
94
+ if (kernelImpl) {
95
+ delegateAddress = kernelImpl.address;
96
+ }
97
+ else {
98
+ // Fallback to first implementation if version not found
99
+ console.warn(`Kernel version ${kernelVersion} (v${versionNumber}) not found in aaConfig, using first available`);
100
+ delegateAddress = aaConfig.kernelImplementations[0].address;
101
+ }
102
+ }
103
+ else {
104
+ // Fallback to hardcoded map if no config
105
+ delegateAddress = constants_1.KernelVersionToAddressesMap[constants_1.KERNEL_V3_3].accountImplementationAddress;
106
+ }
91
107
  // Check if already delegated
92
108
  const code = await publicClient.getCode({ address: owner.address });
93
109
  const expectedCode = `0xef0100${delegateAddress.toLowerCase().substring(2)}`;
@@ -1 +1 @@
1
- {"version":3,"file":"kernel-account.js","sourceRoot":"","sources":["../../../../utils/evm/aa-service/lib/kernel-account.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kernel-account.js","sourceRoot":"","sources":["../../../../utils/evm/aa-service/lib/kernel-account.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@
13
13
  import { Hex, Address } from 'viem';
14
14
  import { Chain } from 'viem/chains';
15
15
  import { PrivateKeyAccount } from 'viem/accounts';
16
+ import { CreateKernelAccountReturnType } from '@zerodev/sdk';
16
17
  import { ModularSigner } from '@zerodev/permissions';
17
18
  export interface SessionKeyPermissionRule {
18
19
  target: Hex;
@@ -22,6 +23,7 @@ export interface SessionKeyPermissionRule {
22
23
  }
23
24
  export interface CreateSessionKeyApprovalOptions {
24
25
  sessionKeyAddress: Address;
26
+ sessionKeyPrivateKey: Hex;
25
27
  owner: PrivateKeyAccount;
26
28
  chain: Chain;
27
29
  entryPointVersion?: '0.6' | '0.7';
@@ -40,30 +42,21 @@ export interface DeserializedSessionKey {
40
42
  /**
41
43
  * Generate a new session key
42
44
  *
43
- * Creates a new keypair for use as a session key.
45
+ * Creates a new keypair for use as a session key or use the one that was passed if available.
44
46
  * The private key should be stored securely and shared with the agent.
45
47
  * The address should be shared with the owner for approval.
46
48
  *
47
49
  * @returns Session key info including private key, address, and signer
48
50
  *
49
51
  * @example
50
- * const sessionKey = await generateSessionKey();
52
+ * const sessionKey = await generateSessionKey(); or
53
+ * const privateKey = '0x...'; // Existing private key
54
+ * const sessionKey = await generateSessionKey(privateKey);
55
+ *
51
56
  * console.log("Share this address with owner:", sessionKey.address);
52
57
  * console.log("Keep this private key secure:", sessionKey.privateKey);
53
58
  */
54
- export declare function generateSessionKey(): Promise<SessionKeyInfo>;
55
- /**
56
- * Recreate session key from private key
57
- *
58
- * Recreates a session key signer from a stored private key.
59
- *
60
- * @param privateKey - The session key private key
61
- * @returns Session key info
62
- *
63
- * @example
64
- * const sessionKey = await recreateSessionKey(storedPrivateKey);
65
- */
66
- export declare function recreateSessionKey(privateKey: Hex): Promise<SessionKeyInfo>;
59
+ export declare function generateSessionKey(privateKey?: Hex): Promise<SessionKeyInfo>;
67
60
  /**
68
61
  * Create session key approval (Owner side)
69
62
  *
@@ -115,7 +108,7 @@ export declare function deserializeSessionKey(options: {
115
108
  sessionKeySigner: ModularSigner;
116
109
  chain: Chain;
117
110
  entryPointVersion?: '0.6' | '0.7';
118
- }): Promise<any>;
111
+ }): Promise<CreateKernelAccountReturnType<"0.6" | "0.7">>;
119
112
  /**
120
113
  * Create kernel client for session key
121
114
  *
@@ -139,6 +132,10 @@ export declare function createSessionKeyClient(options: {
139
132
  chain: Chain;
140
133
  bundlerUrl: string;
141
134
  paymasterUrl?: string;
135
+ entryPoint?: {
136
+ address: Hex;
137
+ version: '0.6' | '0.7';
138
+ };
142
139
  }): any;
143
140
  /**
144
141
  * Create USDC transfer permission rule
@@ -155,7 +152,7 @@ export declare function createSessionKeyClient(options: {
155
152
  * '10' // Max 10 USDC
156
153
  * );
157
154
  */
158
- export declare function createUSDCTransferPermission(usdcAddress: Hex, maxAmount: string): SessionKeyPermissionRule;
155
+ export declare function createUSDCTransferPermission(usdcAddress: Hex, maxAmount: string, destinationAddress: Hex): SessionKeyPermissionRule;
159
156
  /**
160
157
  * Create ETH transfer permission rule
161
158
  *
@@ -13,7 +13,6 @@
13
13
  */
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.generateSessionKey = generateSessionKey;
16
- exports.recreateSessionKey = recreateSessionKey;
17
16
  exports.createSessionKeyApproval = createSessionKeyApproval;
18
17
  exports.deserializeSessionKey = deserializeSessionKey;
19
18
  exports.createSessionKeyClient = createSessionKeyClient;
@@ -21,30 +20,35 @@ exports.createUSDCTransferPermission = createUSDCTransferPermission;
21
20
  exports.createETHTransferPermission = createETHTransferPermission;
22
21
  const viem_1 = require("viem");
23
22
  const accounts_1 = require("viem/accounts");
23
+ const account_abstraction_1 = require("viem/account-abstraction");
24
24
  const sdk_1 = require("@zerodev/sdk");
25
25
  const signers_1 = require("@zerodev/permissions/signers");
26
26
  const permissions_1 = require("@zerodev/permissions");
27
27
  const policies_1 = require("@zerodev/permissions/policies");
28
28
  const constants_1 = require("@zerodev/sdk/constants");
29
+ const pimlico_1 = require("permissionless/clients/pimlico");
29
30
  // ============================================
30
31
  // Session Key Generation
31
32
  // ============================================
32
33
  /**
33
34
  * Generate a new session key
34
35
  *
35
- * Creates a new keypair for use as a session key.
36
+ * Creates a new keypair for use as a session key or use the one that was passed if available.
36
37
  * The private key should be stored securely and shared with the agent.
37
38
  * The address should be shared with the owner for approval.
38
39
  *
39
40
  * @returns Session key info including private key, address, and signer
40
41
  *
41
42
  * @example
42
- * const sessionKey = await generateSessionKey();
43
+ * const sessionKey = await generateSessionKey(); or
44
+ * const privateKey = '0x...'; // Existing private key
45
+ * const sessionKey = await generateSessionKey(privateKey);
46
+ *
43
47
  * console.log("Share this address with owner:", sessionKey.address);
44
48
  * console.log("Keep this private key secure:", sessionKey.privateKey);
45
49
  */
46
- async function generateSessionKey() {
47
- const sessionPrivateKey = (0, accounts_1.generatePrivateKey)();
50
+ async function generateSessionKey(privateKey) {
51
+ const sessionPrivateKey = privateKey || (0, accounts_1.generatePrivateKey)();
48
52
  const sessionKeyAccount = (0, accounts_1.privateKeyToAccount)(sessionPrivateKey);
49
53
  const sessionKeySigner = await (0, signers_1.toECDSASigner)({
50
54
  signer: sessionKeyAccount,
@@ -55,28 +59,6 @@ async function generateSessionKey() {
55
59
  signer: sessionKeySigner
56
60
  };
57
61
  }
58
- /**
59
- * Recreate session key from private key
60
- *
61
- * Recreates a session key signer from a stored private key.
62
- *
63
- * @param privateKey - The session key private key
64
- * @returns Session key info
65
- *
66
- * @example
67
- * const sessionKey = await recreateSessionKey(storedPrivateKey);
68
- */
69
- async function recreateSessionKey(privateKey) {
70
- const sessionKeyAccount = (0, accounts_1.privateKeyToAccount)(privateKey);
71
- const sessionKeySigner = await (0, signers_1.toECDSASigner)({
72
- signer: sessionKeyAccount,
73
- });
74
- return {
75
- privateKey,
76
- address: sessionKeyAccount.address,
77
- signer: sessionKeySigner
78
- };
79
- }
80
62
  // ============================================
81
63
  // Owner Side: Create Approval
82
64
  // ============================================
@@ -105,17 +87,16 @@ async function recreateSessionKey(privateKey) {
105
87
  * // Share approval with agent
106
88
  */
107
89
  async function createSessionKeyApproval(options) {
108
- const { sessionKeyAddress, owner, chain, entryPointVersion = '0.7', useSudoPolicy = false, permissions = [] } = options;
90
+ const { sessionKeyAddress, sessionKeyPrivateKey, owner, chain, entryPointVersion = '0.7', useSudoPolicy = false, permissions = [] } = options;
109
91
  const publicClient = (0, viem_1.createPublicClient)({
110
92
  chain,
111
93
  transport: (0, viem_1.http)()
112
94
  });
113
95
  const entryPoint = (0, constants_1.getEntryPoint)(entryPointVersion);
114
- // Create "empty account" from just the session key address
115
- // This is the KEY difference from legacy pattern!
116
- const emptyAccount = (0, sdk_1.addressToEmptyAccount)(sessionKeyAddress);
117
- const emptySessionKeySigner = await (0, signers_1.toECDSASigner)({
118
- signer: emptyAccount
96
+ // Create session key signer from private key (NOT addressToEmptyAccount!)
97
+ const sessionKeyAccount = (0, accounts_1.privateKeyToAccount)(sessionKeyPrivateKey);
98
+ const sessionKeySigner = await (0, signers_1.toECDSASigner)({
99
+ signer: sessionKeyAccount
119
100
  });
120
101
  // Create permission plugin
121
102
  let policies;
@@ -140,24 +121,22 @@ async function createSessionKeyApproval(options) {
140
121
  }
141
122
  const permissionPlugin = await (0, permissions_1.toPermissionValidator)(publicClient, {
142
123
  entryPoint,
143
- signer: emptySessionKeySigner,
124
+ signer: sessionKeySigner,
144
125
  policies,
145
126
  kernelVersion: constants_1.KERNEL_V3_3,
146
127
  });
147
- // Create kernel account with eip7702Account (NOT address!)
148
- const sessionKeyAccount = await (0, sdk_1.createKernelAccount)(publicClient, {
128
+ // Create kernel account with eip7702Account AND address
129
+ const kernelSessionKeyAccount = await (0, sdk_1.createKernelAccount)(publicClient, {
149
130
  entryPoint,
150
- eip7702Account: owner, // ← EIP-7702 pattern
131
+ eip7702Account: owner,
151
132
  plugins: {
152
133
  regular: permissionPlugin,
153
134
  },
154
135
  kernelVersion: constants_1.KERNEL_V3_3,
155
- // NO address parameter!
136
+ address: owner.address, // Include owner's address
156
137
  });
157
- // Serialize approval (no private key in approval)
158
- // TODO: serializePermissionAccount not available in @zerodev/sdk yet
159
- // const approval = await serializePermissionAccount(sessionKeyAccount);
160
- const approval = JSON.stringify({ sessionKeyAccount: 'placeholder' });
138
+ // Serialize approval WITH session key private key (critical!)
139
+ const approval = await (0, permissions_1.serializePermissionAccount)(kernelSessionKeyAccount, sessionKeyPrivateKey);
161
140
  return approval;
162
141
  }
163
142
  // ============================================
@@ -193,16 +172,8 @@ async function deserializeSessionKey(options) {
193
172
  const entryPoint = (0, constants_1.getEntryPoint)(entryPointVersion);
194
173
  // Deserialize WITH the session key signer
195
174
  // This is the 5-parameter version (not 4!)
196
- // TODO: deserializePermissionAccount not available in @zerodev/sdk yet
197
- // const sessionKeyAccount = await deserializePermissionAccount(
198
- // publicClient,
199
- // entryPoint,
200
- // KERNEL_V3_3,
201
- // approval,
202
- // sessionKeySigner // ← Must pass the signer!
203
- // );
204
- // Placeholder until SDK is available
205
- const sessionKeyAccount = null;
175
+ const sessionKeyAccount = await (0, permissions_1.deserializePermissionAccount)(publicClient, entryPoint, constants_1.KERNEL_V3_3, approval, sessionKeySigner // ← Must pass the signer!
176
+ );
206
177
  return sessionKeyAccount;
207
178
  }
208
179
  /**
@@ -224,16 +195,24 @@ async function deserializeSessionKey(options) {
224
195
  * });
225
196
  */
226
197
  function createSessionKeyClient(options) {
227
- const { account, chain, bundlerUrl, paymasterUrl } = options;
198
+ const { account, chain, bundlerUrl, paymasterUrl, entryPoint = { address: account_abstraction_1.entryPoint07Address, version: '0.7' } } = options;
199
+ // Create Pimlico client for gas estimation
200
+ const paymasterClient = (0, pimlico_1.createPimlicoClient)({
201
+ transport: (0, viem_1.http)(bundlerUrl),
202
+ entryPoint
203
+ });
228
204
  const clientOptions = {
229
205
  account,
230
206
  chain,
231
- bundlerTransport: (0, viem_1.http)(bundlerUrl)
207
+ bundlerTransport: (0, viem_1.http)(bundlerUrl),
208
+ userOperation: {
209
+ estimateFeesPerGas: async () => (await paymasterClient.getUserOperationGasPrice()).fast,
210
+ }
232
211
  };
233
212
  // Add paymaster if provided
234
213
  if (paymasterUrl) {
235
214
  // Note: Paymaster client creation would go here
236
- // For now, just the basic client
215
+ // For now using Pimlico gas estimation
237
216
  }
238
217
  const kernelClient = (0, sdk_1.createKernelAccountClient)(clientOptions);
239
218
  return kernelClient;
@@ -256,15 +235,18 @@ function createSessionKeyClient(options) {
256
235
  * '10' // Max 10 USDC
257
236
  * );
258
237
  */
259
- function createUSDCTransferPermission(usdcAddress, maxAmount) {
238
+ function createUSDCTransferPermission(usdcAddress, maxAmount, destinationAddress) {
260
239
  return {
261
240
  target: usdcAddress,
262
241
  abi: (0, viem_1.parseAbi)(['function transfer(address to, uint256 amount) returns (bool)']),
263
242
  functionName: 'transfer',
264
243
  args: [
265
- null, // Any recipient
266
244
  {
267
- condition: 3, // LESS_THAN_OR_EQUAL
245
+ condition: policies_1.ParamCondition.EQUAL,
246
+ value: destinationAddress,
247
+ }, // Specific recipient
248
+ {
249
+ condition: policies_1.ParamCondition.LESS_THAN_OR_EQUAL, // LESS_THAN_OR_EQUAL
268
250
  value: (0, viem_1.parseUnits)(maxAmount, 6) // USDC has 6 decimals
269
251
  }
270
252
  ]
@@ -1 +1 @@
1
- {"version":3,"file":"session-keys.js","sourceRoot":"","sources":["../../../../utils/evm/aa-service/lib/session-keys.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;AAkEH,gDAYC;AAaD,gDAWC;AA8BD,4DAyEC;AA2BD,sDAmCC;AAoBD,wDA4BC;AAqBD,oEAgBC;AAaD,kEAYC;AAvXD,+BAAgG;AAEhG,4CAA2F;AAC3F,sCAMsB;AACtB,0DAA6D;AAC7D,sDAA4E;AAC5E,4DAA8F;AAC9F,sDAAoE;AAiCpE,+CAA+C;AAC/C,yBAAyB;AACzB,+CAA+C;AAE/C;;;;;;;;;;;;;GAaG;AACI,KAAK,UAAU,kBAAkB;IACpC,MAAM,iBAAiB,GAAG,IAAA,6BAAkB,GAAE,CAAC;IAC/C,MAAM,iBAAiB,GAAG,IAAA,8BAAmB,EAAC,iBAAiB,CAAC,CAAC;IACjE,MAAM,gBAAgB,GAAG,MAAM,IAAA,uBAAa,EAAC;QACzC,MAAM,EAAE,iBAAwB;KACnC,CAAC,CAAC;IAEH,OAAO;QACH,UAAU,EAAE,iBAAiB;QAC7B,OAAO,EAAE,iBAAiB,CAAC,OAAO;QAClC,MAAM,EAAE,gBAAgB;KAC3B,CAAC;AACN,CAAC;AAED;;;;;;;;;;GAUG;AACI,KAAK,UAAU,kBAAkB,CAAC,UAAe;IACpD,MAAM,iBAAiB,GAAG,IAAA,8BAAmB,EAAC,UAAU,CAAC,CAAC;IAC1D,MAAM,gBAAgB,GAAG,MAAM,IAAA,uBAAa,EAAC;QACzC,MAAM,EAAE,iBAAwB;KACnC,CAAC,CAAC;IAEH,OAAO;QACH,UAAU;QACV,OAAO,EAAE,iBAAiB,CAAC,OAAO;QAClC,MAAM,EAAE,gBAAgB;KAC3B,CAAC;AACN,CAAC;AAED,+CAA+C;AAC/C,8BAA8B;AAC9B,+CAA+C;AAE/C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACI,KAAK,UAAU,wBAAwB,CAC1C,OAAwC;IAExC,MAAM,EACF,iBAAiB,EACjB,KAAK,EACL,KAAK,EACL,iBAAiB,GAAG,KAAK,EACzB,aAAa,GAAG,KAAK,EACrB,WAAW,GAAG,EAAE,EACnB,GAAG,OAAO,CAAC;IAEZ,MAAM,YAAY,GAAG,IAAA,yBAAkB,EAAC;QACpC,KAAK;QACL,SAAS,EAAE,IAAA,WAAI,GAAE;KACpB,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,IAAA,yBAAa,EAAC,iBAAiB,CAAC,CAAC;IAEpD,2DAA2D;IAC3D,kDAAkD;IAClD,MAAM,YAAY,GAAG,IAAA,2BAAqB,EAAC,iBAAiB,CAAC,CAAC;IAC9D,MAAM,qBAAqB,GAAG,MAAM,IAAA,uBAAa,EAAC;QAC9C,MAAM,EAAE,YAAY;KACvB,CAAC,CAAC;IAEH,2BAA2B;IAC3B,IAAI,QAAe,CAAC;IAEpB,IAAI,aAAa,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,oCAAoC;QACpC,QAAQ,GAAG,CAAC,IAAA,uBAAY,EAAC,EAAE,CAAC,CAAC,CAAC;IAClC,CAAC;SAAM,CAAC;QACJ,kCAAkC;QAClC,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7C,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;SACxB,CAAC,CAAC,CAAC;QAEJ,QAAQ,GAAG;YACP,IAAA,uBAAY,EAAC;gBACT,aAAa,EAAE,4BAAiB,CAAC,MAAM;gBACvC,WAAW,EAAE,eAAe;aAC/B,CAAC;SACL,CAAC;IACN,CAAC;IAED,MAAM,gBAAgB,GAAG,MAAM,IAAA,mCAAqB,EAAC,YAAmB,EAAE;QACtE,UAAU;QACV,MAAM,EAAE,qBAAqB;QAC7B,QAAQ;QACR,aAAa,EAAE,uBAAW;KAC7B,CAAC,CAAC;IAEH,2DAA2D;IAC3D,MAAM,iBAAiB,GAAG,MAAM,IAAA,yBAAmB,EAAC,YAAmB,EAAE;QACrE,UAAU;QACV,cAAc,EAAE,KAAY,EAAG,qBAAqB;QACpD,OAAO,EAAE;YACL,OAAO,EAAE,gBAAgB;SAC5B;QACD,aAAa,EAAE,uBAAW;QAC1B,wBAAwB;KAC3B,CAAC,CAAC;IAEH,kDAAkD;IAClD,qEAAqE;IACrE,wEAAwE;IACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,iBAAiB,EAAE,aAAa,EAAE,CAAC,CAAC;IAEtE,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,+CAA+C;AAC/C,8BAA8B;AAC9B,+CAA+C;AAE/C;;;;;;;;;;;;;;;;;;;;GAoBG;AACI,KAAK,UAAU,qBAAqB,CAAC,OAK3C;IACG,MAAM,EACF,QAAQ,EACR,gBAAgB,EAChB,KAAK,EACL,iBAAiB,GAAG,KAAK,EAC5B,GAAG,OAAO,CAAC;IAEZ,MAAM,YAAY,GAAG,IAAA,yBAAkB,EAAC;QACpC,KAAK;QACL,SAAS,EAAE,IAAA,WAAI,GAAE;KACpB,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,IAAA,yBAAa,EAAC,iBAAiB,CAAC,CAAC;IAEpD,0CAA0C;IAC1C,2CAA2C;IAC3C,uEAAuE;IACvE,gEAAgE;IAChE,oBAAoB;IACpB,kBAAkB;IAClB,mBAAmB;IACnB,gBAAgB;IAChB,mDAAmD;IACnD,KAAK;IAEL,qCAAqC;IACrC,MAAM,iBAAiB,GAAG,IAAI,CAAC;IAE/B,OAAO,iBAAiB,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,sBAAsB,CAAC,OAKtC;IACG,MAAM,EACF,OAAO,EACP,KAAK,EACL,UAAU,EACV,YAAY,EACf,GAAG,OAAO,CAAC;IAEZ,MAAM,aAAa,GAAQ;QACvB,OAAO;QACP,KAAK;QACL,gBAAgB,EAAE,IAAA,WAAI,EAAC,UAAU,CAAC;KACrC,CAAC;IAEF,4BAA4B;IAC5B,IAAI,YAAY,EAAE,CAAC;QACf,gDAAgD;QAChD,iCAAiC;IACrC,CAAC;IAED,MAAM,YAAY,GAAG,IAAA,+BAAyB,EAAC,aAAa,CAAC,CAAC;IAE9D,OAAO,YAAY,CAAC;AACxB,CAAC;AAED,+CAA+C;AAC/C,wBAAwB;AACxB,+CAA+C;AAE/C;;;;;;;;;;;;;;GAcG;AACH,SAAgB,4BAA4B,CACxC,WAAgB,EAChB,SAAiB;IAEjB,OAAO;QACH,MAAM,EAAE,WAAW;QACnB,GAAG,EAAE,IAAA,eAAQ,EAAC,CAAC,8DAA8D,CAAC,CAAQ;QACtF,YAAY,EAAE,UAAU;QACxB,IAAI,EAAE;YACF,IAAI,EAAE,gBAAgB;YACtB;gBACI,SAAS,EAAE,CAAC,EAAE,qBAAqB;gBACnC,KAAK,EAAE,IAAA,iBAAU,EAAC,SAAS,EAAE,CAAC,CAAC,CAAC,sBAAsB;aACzD;SACJ;KACJ,CAAC;AACN,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,2BAA2B,CAAC,QAAgB;IACxD,OAAO;QACH,MAAM,EAAE,4CAAmD,EAAE,eAAe;QAC5E,GAAG,EAAE,EAAE;QACP,YAAY,EAAE,EAAE;QAChB,IAAI,EAAE;YACF;gBACI,SAAS,EAAE,CAAC,EAAE,qBAAqB;gBACnC,KAAK,EAAE,IAAA,iBAAU,EAAC,QAAQ,CAAC;aAC9B;SACJ;KACJ,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"session-keys.js","sourceRoot":"","sources":["../../../../utils/evm/aa-service/lib/session-keys.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;AAyEH,gDAYC;AAgCD,4DA0EC;AA2BD,sDA+BC;AAoBD,wDAuCC;AAqBD,oEAqBC;AAaD,kEAYC;AArXD,+BAAgG;AAEhG,4CAA2F;AAC3F,kEAA+D;AAC/D,sCAOsB;AACtB,0DAA6D;AAC7D,sDAAsI;AACtI,4DAA8G;AAC9G,sDAAoE;AACpE,4DAAqE;AAkCrE,+CAA+C;AAC/C,yBAAyB;AACzB,+CAA+C;AAE/C;;;;;;;;;;;;;;;;GAgBG;AACI,KAAK,UAAU,kBAAkB,CAAC,UAAgB;IACrD,MAAM,iBAAiB,GAAG,UAAU,IAAI,IAAA,6BAAkB,GAAE,CAAC;IAC7D,MAAM,iBAAiB,GAAG,IAAA,8BAAmB,EAAC,iBAAiB,CAAC,CAAC;IACjE,MAAM,gBAAgB,GAAG,MAAM,IAAA,uBAAa,EAAC;QACzC,MAAM,EAAE,iBAAwB;KACnC,CAAC,CAAC;IAEH,OAAO;QACH,UAAU,EAAE,iBAAiB;QAC7B,OAAO,EAAE,iBAAiB,CAAC,OAAO;QAClC,MAAM,EAAE,gBAAgB;KAC3B,CAAC;AACN,CAAC;AAID,+CAA+C;AAC/C,8BAA8B;AAC9B,+CAA+C;AAE/C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACI,KAAK,UAAU,wBAAwB,CAC1C,OAAwC;IAExC,MAAM,EACF,iBAAiB,EACjB,oBAAoB,EACpB,KAAK,EACL,KAAK,EACL,iBAAiB,GAAG,KAAK,EACzB,aAAa,GAAG,KAAK,EACrB,WAAW,GAAG,EAAE,EACnB,GAAG,OAAO,CAAC;IAEZ,MAAM,YAAY,GAAG,IAAA,yBAAkB,EAAC;QACpC,KAAK;QACL,SAAS,EAAE,IAAA,WAAI,GAAE;KACpB,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,IAAA,yBAAa,EAAC,iBAAiB,CAAC,CAAC;IAEpD,0EAA0E;IAC1E,MAAM,iBAAiB,GAAG,IAAA,8BAAmB,EAAC,oBAAoB,CAAC,CAAC;IACpE,MAAM,gBAAgB,GAAG,MAAM,IAAA,uBAAa,EAAC;QACzC,MAAM,EAAE,iBAAiB;KAC5B,CAAC,CAAC;IAEH,2BAA2B;IAC3B,IAAI,QAAe,CAAC;IAEpB,IAAI,aAAa,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,oCAAoC;QACpC,QAAQ,GAAG,CAAC,IAAA,uBAAY,EAAC,EAAE,CAAC,CAAC,CAAC;IAClC,CAAC;SAAM,CAAC;QACJ,kCAAkC;QAClC,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7C,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;SACxB,CAAC,CAAC,CAAC;QAEJ,QAAQ,GAAG;YACP,IAAA,uBAAY,EAAC;gBACT,aAAa,EAAE,4BAAiB,CAAC,MAAM;gBACvC,WAAW,EAAE,eAAe;aAC/B,CAAC;SACL,CAAC;IACN,CAAC;IAED,MAAM,gBAAgB,GAAG,MAAM,IAAA,mCAAqB,EAAC,YAAmB,EAAE;QACtE,UAAU;QACV,MAAM,EAAE,gBAAgB;QACxB,QAAQ;QACR,aAAa,EAAE,uBAAW;KAC7B,CAAC,CAAC;IAEH,wDAAwD;IACxD,MAAM,uBAAuB,GAAG,MAAM,IAAA,yBAAmB,EAAC,YAAmB,EAAE;QAC3E,UAAU;QACV,cAAc,EAAE,KAAY;QAC5B,OAAO,EAAE;YACL,OAAO,EAAE,gBAAgB;SAC5B;QACD,aAAa,EAAE,uBAAW;QAC1B,OAAO,EAAE,KAAK,CAAC,OAAc,EAAE,0BAA0B;KAC5D,CAAC,CAAC;IAEH,8DAA8D;IAC9D,MAAM,QAAQ,GAAG,MAAM,IAAA,wCAA0B,EAC7C,uBAA8B,EAC9B,oBAAoB,CACvB,CAAC;IAEF,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,+CAA+C;AAC/C,8BAA8B;AAC9B,+CAA+C;AAE/C;;;;;;;;;;;;;;;;;;;;GAoBG;AACI,KAAK,UAAU,qBAAqB,CAAC,OAK3C;IACG,MAAM,EACF,QAAQ,EACR,gBAAgB,EAChB,KAAK,EACL,iBAAiB,GAAG,KAAK,EAC5B,GAAG,OAAO,CAAC;IAEZ,MAAM,YAAY,GAAG,IAAA,yBAAkB,EAAC;QACpC,KAAK;QACL,SAAS,EAAE,IAAA,WAAI,GAAE;KACpB,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,IAAA,yBAAa,EAAC,iBAAiB,CAAC,CAAC;IAEpD,0CAA0C;IAC1C,2CAA2C;IAC3C,MAAM,iBAAiB,GAAG,MAAM,IAAA,0CAA4B,EACxD,YAAY,EACZ,UAAU,EACV,uBAAW,EACX,QAAQ,EACR,gBAAgB,CAAE,0BAA0B;KAC/C,CAAC;IAEF,OAAO,iBAAiB,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,sBAAsB,CAAC,OAMtC;IACG,MAAM,EACF,OAAO,EACP,KAAK,EACL,UAAU,EACV,YAAY,EACZ,UAAU,GAAG,EAAE,OAAO,EAAE,yCAAmB,EAAE,OAAO,EAAE,KAAc,EAAE,EACzE,GAAG,OAAO,CAAC;IAEZ,2CAA2C;IAC3C,MAAM,eAAe,GAAG,IAAA,6BAAmB,EAAC;QACxC,SAAS,EAAE,IAAA,WAAI,EAAC,UAAU,CAAC;QAC3B,UAAU;KACb,CAAC,CAAC;IAEH,MAAM,aAAa,GAAQ;QACvB,OAAO;QACP,KAAK;QACL,gBAAgB,EAAE,IAAA,WAAI,EAAC,UAAU,CAAC;QAClC,aAAa,EAAE;YACX,kBAAkB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,eAAe,CAAC,wBAAwB,EAAE,CAAC,CAAC,IAAI;SAC1F;KACJ,CAAC;IAEF,4BAA4B;IAC5B,IAAI,YAAY,EAAE,CAAC;QACf,gDAAgD;QAChD,uCAAuC;IAC3C,CAAC;IAED,MAAM,YAAY,GAAG,IAAA,+BAAyB,EAAC,aAAa,CAAC,CAAC;IAE9D,OAAO,YAAY,CAAC;AACxB,CAAC;AAED,+CAA+C;AAC/C,wBAAwB;AACxB,+CAA+C;AAE/C;;;;;;;;;;;;;;GAcG;AACH,SAAgB,4BAA4B,CACxC,WAAgB,EAChB,SAAiB,EACjB,kBAAuB;IAEvB,OAAO;QACH,MAAM,EAAE,WAAW;QACnB,GAAG,EAAE,IAAA,eAAQ,EAAC,CAAC,8DAA8D,CAAC,CAAQ;QACtF,YAAY,EAAE,UAAU;QACxB,IAAI,EAAE;YACF;gBACI,SAAS,EAAE,yBAAc,CAAC,KAAK;gBAC/B,KAAK,EAAE,kBAAkB;aAC5B,EACC,qBAAqB;YACvB;gBACI,SAAS,EAAE,yBAAc,CAAC,kBAAkB,EAAE,qBAAqB;gBACnE,KAAK,EAAE,IAAA,iBAAU,EAAC,SAAS,EAAE,CAAC,CAAC,CAAC,sBAAsB;aACzD;SACJ;KACJ,CAAC;AACN,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,2BAA2B,CAAC,QAAgB;IACxD,OAAO;QACH,MAAM,EAAE,4CAAmD,EAAE,eAAe;QAC5E,GAAG,EAAE,EAAE;QACP,YAAY,EAAE,EAAE;QAChB,IAAI,EAAE;YACF;gBACI,SAAS,EAAE,CAAC,EAAE,qBAAqB;gBACnC,KAAK,EAAE,IAAA,iBAAU,EAAC,QAAQ,CAAC;aAC9B;SACJ;KACJ,CAAC;AACN,CAAC"}
@@ -46,7 +46,6 @@ export interface SingleTransactionConfig {
46
46
  export interface KernelAccountConfig {
47
47
  chain: Chain;
48
48
  owner: PrivateKeyAccount;
49
- bundlerManager: BundlerManager;
50
49
  entryPointVersion?: EntryPointVersion;
51
50
  kernelVersion?: KernelVersion;
52
51
  aaConfig?: AA_SupportConfig;
@@ -109,6 +108,8 @@ export interface GasEstimate {
109
108
  export interface SessionKeyApprovalOptions {
110
109
  /** Session key address to approve */
111
110
  sessionKeyAddress: Hex;
111
+ /** Session key private key (needed for serialization) */
112
+ sessionKeyPrivateKey: Hex;
112
113
  /** Permission rules for the session key */
113
114
  permissions?: SessionKeyPermissionRule[];
114
115
  /** Use unrestricted sudo policy (not recommended for production) */
@@ -1 +1 @@
1
- {"version":3,"file":"type.js","sourceRoot":"","sources":["../../../../utils/evm/aa-service/lib/type.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAsNH,+CAA+C;AAC/C,cAAc;AACd,+CAA+C;AAE/C,MAAa,gBAAiB,SAAQ,KAAK;IACvC,IAAI,CAAS;IAEb,YAAY,OAAe,EAAE,OAAe,oBAAoB;QAC5D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;CACJ;AARD,4CAQC;AAED,MAAa,eAAgB,SAAQ,gBAAgB;IACjD,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAClC,CAAC;CACJ;AALD,0CAKC;AAED,MAAa,WAAY,SAAQ,gBAAgB;IAC7C,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC9B,CAAC;CACJ;AALD,kCAKC;AAED,MAAa,gBAAiB,SAAQ,gBAAgB;IAClD,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACnC,CAAC;CACJ;AALD,4CAKC"}
1
+ {"version":3,"file":"type.js","sourceRoot":"","sources":["../../../../utils/evm/aa-service/lib/type.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAuNH,+CAA+C;AAC/C,cAAc;AACd,+CAA+C;AAE/C,MAAa,gBAAiB,SAAQ,KAAK;IACvC,IAAI,CAAS;IAEb,YAAY,OAAe,EAAE,OAAe,oBAAoB;QAC5D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;CACJ;AARD,4CAQC;AAED,MAAa,eAAgB,SAAQ,gBAAgB;IACjD,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAClC,CAAC;CACJ;AALD,0CAKC;AAED,MAAa,WAAY,SAAQ,gBAAgB;IAC7C,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC9B,CAAC;CACJ;AALD,kCAKC;AAED,MAAa,gBAAiB,SAAQ,gBAAgB;IAClD,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACnC,CAAC;CACJ;AALD,4CAKC"}