@account-kit/smart-contracts 4.0.0-alpha.0 → 4.0.0-alpha.1

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 (228) hide show
  1. package/dist/cjs/src/index.d.ts +3 -3
  2. package/dist/cjs/src/index.js +15 -15
  3. package/dist/cjs/src/index.js.map +1 -1
  4. package/dist/cjs/src/light-account/accounts/account.js +1 -1
  5. package/dist/cjs/src/light-account/accounts/account.js.map +1 -1
  6. package/dist/cjs/src/light-account/accounts/multiOwner.js +2 -4
  7. package/dist/cjs/src/light-account/accounts/multiOwner.js.map +1 -1
  8. package/dist/cjs/src/light-account/actions/transferOwnership.d.ts +1 -1
  9. package/dist/cjs/src/light-account/actions/transferOwnership.js +2 -1
  10. package/dist/cjs/src/light-account/actions/transferOwnership.js.map +1 -1
  11. package/dist/cjs/src/light-account/actions/updateOwners.js.map +1 -1
  12. package/dist/cjs/src/light-account/clients/alchemyClient.js.map +1 -1
  13. package/dist/cjs/src/light-account/clients/client.js +2 -1
  14. package/dist/cjs/src/light-account/clients/client.js.map +1 -1
  15. package/dist/cjs/src/light-account/clients/multiOwnerAlchemyClient.js.map +1 -1
  16. package/dist/cjs/src/light-account/clients/multiOwnerLightAccount.js +2 -1
  17. package/dist/cjs/src/light-account/clients/multiOwnerLightAccount.js.map +1 -1
  18. package/dist/cjs/src/light-account/decorators/lightAccount.js.map +1 -1
  19. package/dist/cjs/src/light-account/decorators/multiOwnerLightAccount.js.map +1 -1
  20. package/dist/cjs/src/light-account/utils.d.ts +3 -2
  21. package/dist/cjs/src/light-account/utils.js +14 -5
  22. package/dist/cjs/src/light-account/utils.js.map +1 -1
  23. package/dist/cjs/src/msca/account/multiOwnerAccount.js +2 -1
  24. package/dist/cjs/src/msca/account/multiOwnerAccount.js.map +1 -1
  25. package/dist/cjs/src/msca/account/multisigAccount.js +4 -3
  26. package/dist/cjs/src/msca/account/multisigAccount.js.map +1 -1
  27. package/dist/cjs/src/msca/account-loupe/decorator.js.map +1 -1
  28. package/dist/cjs/src/msca/client/alchemyClient.js.map +1 -1
  29. package/dist/cjs/src/msca/client/client.js.map +1 -1
  30. package/dist/cjs/src/msca/client/multiSigAlchemyClient.js.map +1 -1
  31. package/dist/cjs/src/msca/errors.js.map +1 -1
  32. package/dist/cjs/src/msca/plugin-manager/decorator.d.ts +1 -1
  33. package/dist/cjs/src/msca/plugin-manager/decorator.js +6 -4
  34. package/dist/cjs/src/msca/plugin-manager/decorator.js.map +1 -1
  35. package/dist/cjs/src/msca/plugin-manager/installPlugin.js.map +1 -1
  36. package/dist/cjs/src/msca/plugins/multi-owner/extension.js.map +1 -1
  37. package/dist/cjs/src/msca/plugins/multi-owner/index.d.ts +1 -1
  38. package/dist/cjs/src/msca/plugins/multi-owner/index.js +2 -1
  39. package/dist/cjs/src/msca/plugins/multi-owner/index.js.map +1 -1
  40. package/dist/cjs/src/msca/plugins/multisig/actions/proposeUserOperation.js +2 -2
  41. package/dist/cjs/src/msca/plugins/multisig/actions/proposeUserOperation.js.map +1 -1
  42. package/dist/cjs/src/msca/plugins/multisig/actions/signMultisigUserOperation.js +1 -1
  43. package/dist/cjs/src/msca/plugins/multisig/actions/signMultisigUserOperation.js.map +1 -1
  44. package/dist/cjs/src/msca/plugins/multisig/extension.js.map +1 -1
  45. package/dist/cjs/src/msca/plugins/multisig/index.d.ts +1 -8
  46. package/dist/cjs/src/msca/plugins/multisig/index.js +1 -16
  47. package/dist/cjs/src/msca/plugins/multisig/index.js.map +1 -1
  48. package/dist/cjs/src/msca/plugins/multisig/middleware.d.ts +1 -1
  49. package/dist/cjs/src/msca/plugins/multisig/middleware.js +1 -1
  50. package/dist/cjs/src/msca/plugins/multisig/middleware.js.map +1 -1
  51. package/dist/cjs/src/msca/plugins/multisig/utils/combineSignatures.d.ts +3 -2
  52. package/dist/cjs/src/msca/plugins/multisig/utils/combineSignatures.js +2 -2
  53. package/dist/cjs/src/msca/plugins/multisig/utils/combineSignatures.js.map +1 -1
  54. package/dist/cjs/src/msca/plugins/multisig/utils/getSignerType.d.ts +2 -2
  55. package/dist/cjs/src/msca/plugins/multisig/utils/getSignerType.js.map +1 -1
  56. package/dist/cjs/src/msca/plugins/multisig/utils/index.d.ts +4 -0
  57. package/dist/cjs/src/msca/plugins/multisig/utils/index.js.map +1 -1
  58. package/dist/cjs/src/msca/plugins/session-key/extension.js.map +1 -1
  59. package/dist/cjs/src/msca/plugins/session-key/index.d.ts +1 -1
  60. package/dist/cjs/src/msca/plugins/session-key/index.js +3 -1
  61. package/dist/cjs/src/msca/plugins/session-key/index.js.map +1 -1
  62. package/dist/cjs/src/msca/plugins/session-key/permissions.js.map +1 -1
  63. package/dist/cjs/src/msca/plugins/session-key/signer.js.map +1 -1
  64. package/dist/cjs/src/msca/plugins/session-key/utils.d.ts +4 -2
  65. package/dist/cjs/src/msca/plugins/session-key/utils.js +3 -2
  66. package/dist/cjs/src/msca/plugins/session-key/utils.js.map +1 -1
  67. package/dist/cjs/src/msca/utils.d.ts +6 -4
  68. package/dist/cjs/src/msca/utils.js.map +1 -1
  69. package/dist/esm/src/index.d.ts +3 -3
  70. package/dist/esm/src/index.js +2 -2
  71. package/dist/esm/src/index.js.map +1 -1
  72. package/dist/esm/src/light-account/accounts/account.js +2 -2
  73. package/dist/esm/src/light-account/accounts/account.js.map +1 -1
  74. package/dist/esm/src/light-account/accounts/multiOwner.js +3 -5
  75. package/dist/esm/src/light-account/accounts/multiOwner.js.map +1 -1
  76. package/dist/esm/src/light-account/actions/transferOwnership.d.ts +1 -1
  77. package/dist/esm/src/light-account/actions/transferOwnership.js +2 -1
  78. package/dist/esm/src/light-account/actions/transferOwnership.js.map +1 -1
  79. package/dist/esm/src/light-account/actions/updateOwners.js.map +1 -1
  80. package/dist/esm/src/light-account/clients/alchemyClient.js.map +1 -1
  81. package/dist/esm/src/light-account/clients/client.js +2 -1
  82. package/dist/esm/src/light-account/clients/client.js.map +1 -1
  83. package/dist/esm/src/light-account/clients/multiOwnerAlchemyClient.js.map +1 -1
  84. package/dist/esm/src/light-account/clients/multiOwnerLightAccount.js +2 -1
  85. package/dist/esm/src/light-account/clients/multiOwnerLightAccount.js.map +1 -1
  86. package/dist/esm/src/light-account/decorators/lightAccount.js.map +1 -1
  87. package/dist/esm/src/light-account/decorators/multiOwnerLightAccount.js.map +1 -1
  88. package/dist/esm/src/light-account/utils.d.ts +3 -2
  89. package/dist/esm/src/light-account/utils.js +12 -4
  90. package/dist/esm/src/light-account/utils.js.map +1 -1
  91. package/dist/esm/src/msca/account/multiOwnerAccount.js +2 -1
  92. package/dist/esm/src/msca/account/multiOwnerAccount.js.map +1 -1
  93. package/dist/esm/src/msca/account/multisigAccount.js +4 -3
  94. package/dist/esm/src/msca/account/multisigAccount.js.map +1 -1
  95. package/dist/esm/src/msca/account-loupe/decorator.js.map +1 -1
  96. package/dist/esm/src/msca/client/alchemyClient.js.map +1 -1
  97. package/dist/esm/src/msca/client/client.js.map +1 -1
  98. package/dist/esm/src/msca/client/multiSigAlchemyClient.js.map +1 -1
  99. package/dist/esm/src/msca/errors.js.map +1 -1
  100. package/dist/esm/src/msca/plugin-manager/decorator.d.ts +1 -1
  101. package/dist/esm/src/msca/plugin-manager/decorator.js +6 -4
  102. package/dist/esm/src/msca/plugin-manager/decorator.js.map +1 -1
  103. package/dist/esm/src/msca/plugin-manager/installPlugin.js.map +1 -1
  104. package/dist/esm/src/msca/plugins/multi-owner/extension.js.map +1 -1
  105. package/dist/esm/src/msca/plugins/multi-owner/index.d.ts +1 -1
  106. package/dist/esm/src/msca/plugins/multi-owner/index.js +1 -1
  107. package/dist/esm/src/msca/plugins/multi-owner/index.js.map +1 -1
  108. package/dist/esm/src/msca/plugins/multisig/actions/proposeUserOperation.js +1 -1
  109. package/dist/esm/src/msca/plugins/multisig/actions/proposeUserOperation.js.map +1 -1
  110. package/dist/esm/src/msca/plugins/multisig/actions/signMultisigUserOperation.js +1 -1
  111. package/dist/esm/src/msca/plugins/multisig/actions/signMultisigUserOperation.js.map +1 -1
  112. package/dist/esm/src/msca/plugins/multisig/extension.js.map +1 -1
  113. package/dist/esm/src/msca/plugins/multisig/index.d.ts +1 -8
  114. package/dist/esm/src/msca/plugins/multisig/index.js +0 -7
  115. package/dist/esm/src/msca/plugins/multisig/index.js.map +1 -1
  116. package/dist/esm/src/msca/plugins/multisig/middleware.d.ts +1 -1
  117. package/dist/esm/src/msca/plugins/multisig/middleware.js +2 -1
  118. package/dist/esm/src/msca/plugins/multisig/middleware.js.map +1 -1
  119. package/dist/esm/src/msca/plugins/multisig/utils/combineSignatures.d.ts +3 -2
  120. package/dist/esm/src/msca/plugins/multisig/utils/combineSignatures.js +2 -2
  121. package/dist/esm/src/msca/plugins/multisig/utils/combineSignatures.js.map +1 -1
  122. package/dist/esm/src/msca/plugins/multisig/utils/getSignerType.d.ts +2 -2
  123. package/dist/esm/src/msca/plugins/multisig/utils/getSignerType.js.map +1 -1
  124. package/dist/esm/src/msca/plugins/multisig/utils/index.d.ts +4 -0
  125. package/dist/esm/src/msca/plugins/multisig/utils/index.js.map +1 -1
  126. package/dist/esm/src/msca/plugins/session-key/extension.js.map +1 -1
  127. package/dist/esm/src/msca/plugins/session-key/index.d.ts +1 -1
  128. package/dist/esm/src/msca/plugins/session-key/index.js +1 -1
  129. package/dist/esm/src/msca/plugins/session-key/index.js.map +1 -1
  130. package/dist/esm/src/msca/plugins/session-key/permissions.js.map +1 -1
  131. package/dist/esm/src/msca/plugins/session-key/signer.js.map +1 -1
  132. package/dist/esm/src/msca/plugins/session-key/utils.d.ts +4 -2
  133. package/dist/esm/src/msca/plugins/session-key/utils.js +3 -2
  134. package/dist/esm/src/msca/plugins/session-key/utils.js.map +1 -1
  135. package/dist/esm/src/msca/utils.d.ts +6 -4
  136. package/dist/esm/src/msca/utils.js.map +1 -1
  137. package/dist/types/src/index.d.ts +3 -3
  138. package/dist/types/src/index.d.ts.map +1 -1
  139. package/dist/types/src/light-account/accounts/account.d.ts.map +1 -1
  140. package/dist/types/src/light-account/accounts/multiOwner.d.ts.map +1 -1
  141. package/dist/types/src/light-account/actions/transferOwnership.d.ts +26 -1
  142. package/dist/types/src/light-account/actions/transferOwnership.d.ts.map +1 -1
  143. package/dist/types/src/light-account/actions/updateOwners.d.ts +24 -0
  144. package/dist/types/src/light-account/actions/updateOwners.d.ts.map +1 -1
  145. package/dist/types/src/light-account/decorators/lightAccount.d.ts +19 -0
  146. package/dist/types/src/light-account/decorators/lightAccount.d.ts.map +1 -1
  147. package/dist/types/src/light-account/decorators/multiOwnerLightAccount.d.ts +19 -0
  148. package/dist/types/src/light-account/decorators/multiOwnerLightAccount.d.ts.map +1 -1
  149. package/dist/types/src/light-account/utils.d.ts +11 -4
  150. package/dist/types/src/light-account/utils.d.ts.map +1 -1
  151. package/dist/types/src/msca/account/multisigAccount.d.ts.map +1 -1
  152. package/dist/types/src/msca/account-loupe/decorator.d.ts +15 -0
  153. package/dist/types/src/msca/account-loupe/decorator.d.ts.map +1 -1
  154. package/dist/types/src/msca/client/client.d.ts.map +1 -1
  155. package/dist/types/src/msca/errors.d.ts +12 -0
  156. package/dist/types/src/msca/errors.d.ts.map +1 -1
  157. package/dist/types/src/msca/plugin-manager/decorator.d.ts +16 -1
  158. package/dist/types/src/msca/plugin-manager/decorator.d.ts.map +1 -1
  159. package/dist/types/src/msca/plugin-manager/installPlugin.d.ts +21 -0
  160. package/dist/types/src/msca/plugin-manager/installPlugin.d.ts.map +1 -1
  161. package/dist/types/src/msca/plugins/multi-owner/extension.d.ts +15 -0
  162. package/dist/types/src/msca/plugins/multi-owner/extension.d.ts.map +1 -1
  163. package/dist/types/src/msca/plugins/multi-owner/index.d.ts +1 -1
  164. package/dist/types/src/msca/plugins/multi-owner/index.d.ts.map +1 -1
  165. package/dist/types/src/msca/plugins/multisig/actions/proposeUserOperation.d.ts.map +1 -1
  166. package/dist/types/src/msca/plugins/multisig/actions/signMultisigUserOperation.d.ts.map +1 -1
  167. package/dist/types/src/msca/plugins/multisig/extension.d.ts +13 -0
  168. package/dist/types/src/msca/plugins/multisig/extension.d.ts.map +1 -1
  169. package/dist/types/src/msca/plugins/multisig/index.d.ts +1 -8
  170. package/dist/types/src/msca/plugins/multisig/index.d.ts.map +1 -1
  171. package/dist/types/src/msca/plugins/multisig/middleware.d.ts +1 -1
  172. package/dist/types/src/msca/plugins/multisig/middleware.d.ts.map +1 -1
  173. package/dist/types/src/msca/plugins/multisig/utils/combineSignatures.d.ts +28 -2
  174. package/dist/types/src/msca/plugins/multisig/utils/combineSignatures.d.ts.map +1 -1
  175. package/dist/types/src/msca/plugins/multisig/utils/getSignerType.d.ts +21 -2
  176. package/dist/types/src/msca/plugins/multisig/utils/getSignerType.d.ts.map +1 -1
  177. package/dist/types/src/msca/plugins/multisig/utils/index.d.ts +4 -0
  178. package/dist/types/src/msca/plugins/multisig/utils/index.d.ts.map +1 -1
  179. package/dist/types/src/msca/plugins/session-key/extension.d.ts +13 -0
  180. package/dist/types/src/msca/plugins/session-key/extension.d.ts.map +1 -1
  181. package/dist/types/src/msca/plugins/session-key/index.d.ts +1 -1
  182. package/dist/types/src/msca/plugins/session-key/index.d.ts.map +1 -1
  183. package/dist/types/src/msca/plugins/session-key/permissions.d.ts +3 -0
  184. package/dist/types/src/msca/plugins/session-key/permissions.d.ts.map +1 -1
  185. package/dist/types/src/msca/plugins/session-key/signer.d.ts +1 -1
  186. package/dist/types/src/msca/plugins/session-key/signer.d.ts.map +1 -1
  187. package/dist/types/src/msca/plugins/session-key/utils.d.ts +22 -2
  188. package/dist/types/src/msca/plugins/session-key/utils.d.ts.map +1 -1
  189. package/dist/types/src/msca/utils.d.ts +43 -5
  190. package/dist/types/src/msca/utils.d.ts.map +1 -1
  191. package/package.json +5 -5
  192. package/src/index.ts +2 -3
  193. package/src/light-account/accounts/account.ts +22 -3
  194. package/src/light-account/accounts/multiOwner.ts +26 -5
  195. package/src/light-account/actions/transferOwnership.ts +28 -5
  196. package/src/light-account/actions/updateOwners.ts +24 -0
  197. package/src/light-account/clients/alchemyClient.ts +20 -0
  198. package/src/light-account/clients/client.ts +27 -6
  199. package/src/light-account/clients/multiOwnerAlchemyClient.ts +20 -0
  200. package/src/light-account/clients/multiOwnerLightAccount.ts +27 -6
  201. package/src/light-account/decorators/lightAccount.ts +19 -0
  202. package/src/light-account/decorators/multiOwnerLightAccount.ts +19 -0
  203. package/src/light-account/utils.ts +29 -6
  204. package/src/msca/account/multiOwnerAccount.ts +36 -11
  205. package/src/msca/account/multisigAccount.ts +40 -14
  206. package/src/msca/account-loupe/decorator.ts +15 -0
  207. package/src/msca/client/alchemyClient.ts +20 -0
  208. package/src/msca/client/client.ts +46 -0
  209. package/src/msca/client/multiSigAlchemyClient.ts +22 -0
  210. package/src/msca/errors.ts +12 -0
  211. package/src/msca/plugin-manager/decorator.ts +22 -5
  212. package/src/msca/plugin-manager/installPlugin.ts +21 -0
  213. package/src/msca/plugins/multi-owner/extension.ts +15 -0
  214. package/src/msca/plugins/multi-owner/index.ts +3 -0
  215. package/src/msca/plugins/multisig/actions/proposeUserOperation.ts +1 -1
  216. package/src/msca/plugins/multisig/actions/signMultisigUserOperation.ts +1 -1
  217. package/src/msca/plugins/multisig/extension.ts +13 -0
  218. package/src/msca/plugins/multisig/index.ts +1 -12
  219. package/src/msca/plugins/multisig/middleware.ts +2 -2
  220. package/src/msca/plugins/multisig/utils/combineSignatures.ts +36 -9
  221. package/src/msca/plugins/multisig/utils/getSignerType.ts +23 -4
  222. package/src/msca/plugins/multisig/utils/index.ts +4 -0
  223. package/src/msca/plugins/session-key/extension.ts +13 -0
  224. package/src/msca/plugins/session-key/index.ts +7 -1
  225. package/src/msca/plugins/session-key/permissions.ts +3 -0
  226. package/src/msca/plugins/session-key/signer.ts +1 -2
  227. package/src/msca/plugins/session-key/utils.ts +33 -12
  228. package/src/msca/utils.ts +64 -9
@@ -7,6 +7,27 @@ export type InstallPluginParams<TAccount extends SmartContractAccount | undefine
7
7
  pluginInitData?: Hash;
8
8
  dependencies?: FunctionReference[];
9
9
  } & UserOperationOverridesParameter<TEntryPointVersion> & GetAccountParameter<TAccount> & GetContextParameter<TContext>;
10
+ /**
11
+ * Installs a plugin on a smart account via the client, sending the user operation with the appropriate parameters.
12
+ * NOTE: it's recommended to just use the installPlugin action returned from generated plugins
13
+ *
14
+ * @example
15
+ * ```ts
16
+ * import { installPlugin, createModularAccountAlchemyClient } from "@account-kit/smart-contracts";
17
+ *
18
+ * const client = createModularAccountAlchemyClient(...);
19
+ *
20
+ * const hash = await installPlugin(client, {
21
+ * pluginAddress: "0x...",
22
+ * manifestHash: "0x...",
23
+ * dependencies: [], // this is defined by the plugin you're installing
24
+ * });
25
+ * ```
26
+ *
27
+ * @param {Client<TTransport, TChain, TAccount>} client The client configured to the smart account on which the plugin will be installed
28
+ * @param {InstallPluginParams<TAccount, TContext>} params The parameters required to install the plugin, including overrides, context, and account information
29
+ * @returns {Promise<any>} A promise that resolves once the plugin installation operation is sent
30
+ */
10
31
  export declare function installPlugin<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined, TContext extends Record<string, unknown> | undefined = Record<string, unknown> | undefined>(client: Client<TTransport, TChain, TAccount>, { overrides, context, account, ...params }: InstallPluginParams<TAccount, TContext>): Promise<import("@aa-sdk/core").SendUserOperationResult<GetEntryPointFromAccount<TAccount, SmartContractAccount<string, keyof import("@aa-sdk/core").EntryPointRegistryBase<unknown>>>>>;
11
32
  export declare function encodeInstallPluginUserOperation<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined>(client: SmartAccountClient<TTransport, TChain, TAccount>, params: Omit<InstallPluginParams, "overrides" | "account" | "context">): Promise<`0x${string}`>;
12
33
  //# sourceMappingURL=installPlugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"installPlugin.d.ts","sourceRoot":"","sources":["../../../../../src/msca/plugin-manager/installPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,+BAA+B,EACrC,MAAM,cAAc,CAAC;AACtB,OAAO,EAIL,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,MAAM,EACX,KAAK,IAAI,EACT,KAAK,SAAS,EACf,MAAM,MAAM,CAAC;AAGd,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,MAAM,MAAM,mBAAmB,CAC7B,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EACb,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAChD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvB,SAAS,EACb,kBAAkB,SAAS,wBAAwB,CAAC,QAAQ,CAAC,GAAG,wBAAwB,CAAC,QAAQ,CAAC,IAChG;IACF,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,cAAc,CAAC,EAAE,IAAI,CAAC;IACtB,YAAY,CAAC,EAAE,iBAAiB,EAAE,CAAC;CACpC,GAAG,+BAA+B,CAAC,kBAAkB,CAAC,GACrD,mBAAmB,CAAC,QAAQ,CAAC,GAC7B,mBAAmB,CAAC,QAAQ,CAAC,CAAC;AAEhC,wBAAsB,aAAa,CACjC,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EACb,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAChD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvB,SAAS,EAEb,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAC5C,EACE,SAAS,EACT,OAAO,EACP,OAAwB,EACxB,GAAG,MAAM,EACV,EAAE,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,2LAsB3C;AAED,wBAAsB,gCAAgC,CACpD,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EAEb,MAAM,EAAE,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EACxD,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC,0BA2BvE"}
1
+ {"version":3,"file":"installPlugin.d.ts","sourceRoot":"","sources":["../../../../../src/msca/plugin-manager/installPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,+BAA+B,EACrC,MAAM,cAAc,CAAC;AACtB,OAAO,EAIL,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,MAAM,EACX,KAAK,IAAI,EACT,KAAK,SAAS,EACf,MAAM,MAAM,CAAC;AAGd,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,MAAM,MAAM,mBAAmB,CAC7B,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EACb,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAChD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvB,SAAS,EACb,kBAAkB,SAAS,wBAAwB,CAAC,QAAQ,CAAC,GAAG,wBAAwB,CAAC,QAAQ,CAAC,IAChG;IACF,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,cAAc,CAAC,EAAE,IAAI,CAAC;IACtB,YAAY,CAAC,EAAE,iBAAiB,EAAE,CAAC;CACpC,GAAG,+BAA+B,CAAC,kBAAkB,CAAC,GACrD,mBAAmB,CAAC,QAAQ,CAAC,GAC7B,mBAAmB,CAAC,QAAQ,CAAC,CAAC;AAEhC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,aAAa,CACjC,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EACb,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAChD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvB,SAAS,EAEb,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAC5C,EACE,SAAS,EACT,OAAO,EACP,OAAwB,EACxB,GAAG,MAAM,EACV,EAAE,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,2LAsB3C;AAED,wBAAsB,gCAAgC,CACpD,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EAEb,MAAM,EAAE,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EACxD,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC,0BA2BvE"}
@@ -10,5 +10,20 @@ export type MultiOwnerPluginActions<TAccount extends SmartContractAccount | unde
10
10
  } & (IsUndefined<TAccount> extends false ? {
11
11
  readOwners: (params?: GetPluginAddressParameter & GetAccountParameter<TAccount>) => Promise<ReadonlyArray<Address>>;
12
12
  } : {});
13
+ /**
14
+ * Creates actions for the MultiOwner plugin, including reading owners and checking ownership.
15
+ * NOTE: this is already added to the client returned from createMultiOwnerModularAccountClient
16
+ *
17
+ * @example
18
+ * ```ts
19
+ * import { multiOwnerPluginActions } from "@account-kit/smart-contracts";
20
+ * import { createSmartAccountClient } from "@aa-sdk/core";
21
+ *
22
+ * const client = createSmartAccountClient(...).extend(multiOwnerPluginActions);
23
+ * ```
24
+ *
25
+ * @param {Client<TTransport, TChain, TAccount>} client the client instance containing the transport, chain, and account information
26
+ * @returns {MultiOwnerPluginActions<TAccount>} an object containing the actions for the MultiOwner plugin, such as `readOwners` and `isOwnerOf`
27
+ */
13
28
  export declare const multiOwnerPluginActions: <TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined>(client: Client<TTransport, TChain, TAccount>) => MultiOwnerPluginActions<TAccount>;
14
29
  //# sourceMappingURL=extension.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/multi-owner/extension.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,oBAAoB,EAC1B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,MAAM,CAAC;AAC7E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAGL,KAAK,uBAAuB,IAAI,wBAAwB,EACzD,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,uBAAuB,CACjC,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,IACX,wBAAwB,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG;IAClD,UAAU,EAAE,CACV,MAAM,EAAE,yBAAyB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,KAC9D,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IAErC,SAAS,EAAE,CACT,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,GAAG,yBAAyB,GACtD,mBAAmB,CAAC,QAAQ,CAAC,KAC5B,OAAO,CAAC,OAAO,CAAC,CAAC;CACvB,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,KAAK,GAClC;IACE,UAAU,EAAE,CACV,MAAM,CAAC,EAAE,yBAAyB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,KAC/D,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;CACtC,GACD,EAAE,CAAC,CAAC;AAEV,eAAO,MAAM,uBAAuB,EAAE,CACpC,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EAEb,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,KACzC,uBAAuB,CAAC,QAAQ,CAoCnC,CAAC"}
1
+ {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/multi-owner/extension.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,oBAAoB,EAC1B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,MAAM,CAAC;AAC7E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAGL,KAAK,uBAAuB,IAAI,wBAAwB,EACzD,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,uBAAuB,CACjC,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,IACX,wBAAwB,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG;IAClD,UAAU,EAAE,CACV,MAAM,EAAE,yBAAyB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,KAC9D,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IAErC,SAAS,EAAE,CACT,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,GAAG,yBAAyB,GACtD,mBAAmB,CAAC,QAAQ,CAAC,KAC5B,OAAO,CAAC,OAAO,CAAC,CAAC;CACvB,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,KAAK,GAClC;IACE,UAAU,EAAE,CACV,MAAM,CAAC,EAAE,yBAAyB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,KAC/D,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;CACtC,GACD,EAAE,CAAC,CAAC;AAEV;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,uBAAuB,EAAE,CACpC,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EAEb,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,KACzC,uBAAuB,CAAC,QAAQ,CAoCnC,CAAC"}
@@ -1,4 +1,4 @@
1
1
  export type * from "./extension.js";
2
2
  export { multiOwnerPluginActions } from "./extension.js";
3
- export { MultiOwnerPluginAbi, MultiOwnerPluginExecutionFunctionAbi, } from "./plugin.js";
3
+ export { MultiOwnerPlugin, MultiOwnerPluginAbi, MultiOwnerPluginExecutionFunctionAbi, type InstallMultiOwnerPluginParams, } from "./plugin.js";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/multi-owner/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,gBAAgB,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EACL,mBAAmB,EACnB,oCAAoC,GACrC,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/multi-owner/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,gBAAgB,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,oCAAoC,EACpC,KAAK,6BAA6B,GACnC,MAAM,aAAa,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"proposeUserOperation.d.ts","sourceRoot":"","sources":["../../../../../../../src/msca/plugins/multisig/actions/proposeUserOperation.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,EAE1B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,MAAM,CAAC;AAE/D,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAE9D,wBAAsB,oBAAoB,CACxC,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EACb,kBAAkB,SAAS,wBAAwB,CAAC,QAAQ,CAAC,GAAG,wBAAwB,CAAC,QAAQ,CAAC,EAElG,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAC5C,EACE,EAAE,EACF,OAAwB,EACxB,SAAS,EAAE,UAAU,GACtB,EAAE,2BAA2B,CAAC,QAAQ,EAAE,SAAS,CAAC,GAClD,OAAO,CAAC,0BAA0B,CAAC,CAoDrC"}
1
+ {"version":3,"file":"proposeUserOperation.d.ts","sourceRoot":"","sources":["../../../../../../../src/msca/plugins/multisig/actions/proposeUserOperation.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,EAE1B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,MAAM,CAAC;AAC/D,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAG9D,wBAAsB,oBAAoB,CACxC,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EACb,kBAAkB,SAAS,wBAAwB,CAAC,QAAQ,CAAC,GAAG,wBAAwB,CAAC,QAAQ,CAAC,EAElG,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAC5C,EACE,EAAE,EACF,OAAwB,EACxB,SAAS,EAAE,UAAU,GACtB,EAAE,2BAA2B,CAAC,QAAQ,EAAE,SAAS,CAAC,GAClD,OAAO,CAAC,0BAA0B,CAAC,CAoDrC"}
@@ -1 +1 @@
1
- {"version":3,"file":"signMultisigUserOperation.d.ts","sourceRoot":"","sources":["../../../../../../../src/msca/plugins/multisig/actions/signMultisigUserOperation.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,oBAAoB,EAC1B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,MAAM,CAAC;AAG/D,OAAO,EACL,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,EACrC,MAAM,aAAa,CAAC;AAErB,wBAAsB,yBAAyB,CAC7C,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EAEb,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAC5C,MAAM,EAAE,+BAA+B,CAAC,QAAQ,CAAC,GAChD,OAAO,CAAC,+BAA+B,CAAC,CAmE1C"}
1
+ {"version":3,"file":"signMultisigUserOperation.d.ts","sourceRoot":"","sources":["../../../../../../../src/msca/plugins/multisig/actions/signMultisigUserOperation.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,oBAAoB,EAC1B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,MAAM,CAAC;AAE/D,OAAO,EACL,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,EACrC,MAAM,aAAa,CAAC;AAGrB,wBAAsB,yBAAyB,CAC7C,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EAEb,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAC5C,MAAM,EAAE,+BAA+B,CAAC,QAAQ,CAAC,GAChD,OAAO,CAAC,+BAA+B,CAAC,CAmE1C"}
@@ -14,5 +14,18 @@ export type MultisigPluginActions<TAccount extends SmartContractAccount | undefi
14
14
  } & (IsUndefined<TAccount> extends false ? {
15
15
  readOwners: (params?: GetPluginAddressParameter & GetAccountParameter<TAccount>) => Promise<ReadonlyArray<Address>>;
16
16
  } : {});
17
+ /**
18
+ * Provides actions for managing a multisig plugin within the specified client, including reading owners, checking ownership, getting the threshold, proposing user operations, and signing multisig user operations.
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * import { createModularAccountAlchemyClient, multisigPluginActions } from "@account-kit/smart-contracts";
23
+ *
24
+ * const client = createModularAccountAlchemyClient(...).extend(multisigPluginActions);
25
+ * ```
26
+ *
27
+ * @param {Client<TTransport, TChain, TAccount>} client The client instance configured with transport, chain, and account information
28
+ * @returns {MultisigPluginActions<TAccount>} An object containing methods to perform actions related to the multisig plugin
29
+ */
17
30
  export declare const multisigPluginActions: <TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined>(client: Client<TTransport, TChain, TAccount>) => MultisigPluginActions<TAccount>;
18
31
  //# sourceMappingURL=extension.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/multisig/extension.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,WAAW,EAChB,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,EAC1B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,MAAM,CAAC;AAC7E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAM7D,OAAO,EAEL,KAAK,qBAAqB,IAAI,sBAAsB,EACrD,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,EAC/B,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,EACrC,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,qBAAqB,CAC/B,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,IACX,sBAAsB,CAAC,QAAQ,EAAE,4BAA4B,CAAC,GAAG;IACnE,UAAU,EAAE,CACV,MAAM,EAAE,yBAAyB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,KAC9D,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IAErC,SAAS,EAAE,CACT,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,GAAG,yBAAyB,GACtD,mBAAmB,CAAC,QAAQ,CAAC,KAC5B,OAAO,CAAC,OAAO,CAAC,CAAC;IAEtB,YAAY,EAAE,CACZ,MAAM,EAAE,yBAAyB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,KAC9D,OAAO,CAAC,MAAM,CAAC,CAAC;IAErB,oBAAoB,EAAE,CACpB,MAAM,EAAE,2BAA2B,CAAC,QAAQ,EAAE,SAAS,CAAC,KACrD,OAAO,CACV,0BAA0B,CAAC,QAAQ,EAAE,wBAAwB,CAAC,QAAQ,CAAC,CAAC,CACzE,CAAC;IAEF,yBAAyB,EAAE,CACzB,MAAM,EAAE,+BAA+B,CAAC,QAAQ,CAAC,KAC9C,OAAO,CAAC,+BAA+B,CAAC,CAAC;CAC/C,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,KAAK,GAClC;IACE,UAAU,EAAE,CACV,MAAM,CAAC,EAAE,yBAAyB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,KAC/D,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;CACtC,GACD,EAAE,CAAC,CAAC;AAEV,eAAO,MAAM,qBAAqB,EAAE,CAClC,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EAEb,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,KACzC,qBAAqB,CAAC,QAAQ,CA+BjC,CAAC"}
1
+ {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/multisig/extension.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,WAAW,EAChB,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,EAC1B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,MAAM,CAAC;AAC7E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAM7D,OAAO,EAEL,KAAK,qBAAqB,IAAI,sBAAsB,EACrD,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,EAC/B,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,EACrC,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,qBAAqB,CAC/B,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,IACX,sBAAsB,CAAC,QAAQ,EAAE,4BAA4B,CAAC,GAAG;IACnE,UAAU,EAAE,CACV,MAAM,EAAE,yBAAyB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,KAC9D,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IAErC,SAAS,EAAE,CACT,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,GAAG,yBAAyB,GACtD,mBAAmB,CAAC,QAAQ,CAAC,KAC5B,OAAO,CAAC,OAAO,CAAC,CAAC;IAEtB,YAAY,EAAE,CACZ,MAAM,EAAE,yBAAyB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,KAC9D,OAAO,CAAC,MAAM,CAAC,CAAC;IAErB,oBAAoB,EAAE,CACpB,MAAM,EAAE,2BAA2B,CAAC,QAAQ,EAAE,SAAS,CAAC,KACrD,OAAO,CACV,0BAA0B,CAAC,QAAQ,EAAE,wBAAwB,CAAC,QAAQ,CAAC,CAAC,CACzE,CAAC;IAEF,yBAAyB,EAAE,CACzB,MAAM,EAAE,+BAA+B,CAAC,QAAQ,CAAC,KAC9C,OAAO,CAAC,+BAA+B,CAAC,CAAC;CAC/C,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,KAAK,GAClC;IACE,UAAU,EAAE,CACV,MAAM,CAAC,EAAE,yBAAyB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,KAC/D,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;CACtC,GACD,EAAE,CAAC,CAAC;AAEV;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,qBAAqB,EAAE,CAClC,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EAEb,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,KACzC,qBAAqB,CAAC,QAAQ,CA+BjC,CAAC"}
@@ -1,13 +1,6 @@
1
- export { getThreshold } from "./actions/getThreshold.js";
2
- export { isOwnerOf } from "./actions/isOwnerOf.js";
3
- export { proposeUserOperation } from "./actions/proposeUserOperation.js";
4
- export { readOwners } from "./actions/readOwners.js";
5
- export { signMultisigUserOperation } from "./actions/signMultisigUserOperation.js";
6
1
  export type * from "./extension.js";
7
2
  export { multisigPluginActions } from "./extension.js";
8
3
  export { multisigSignatureMiddleware } from "./middleware.js";
9
- export { MultisigPlugin, MultisigPluginAbi, MultisigPluginExecutionFunctionAbi, } from "./plugin.js";
4
+ export { MultisigPlugin, MultisigPluginAbi, MultisigPluginExecutionFunctionAbi, type InstallMultisigPluginParams, } from "./plugin.js";
10
5
  export type * from "./types.js";
11
- export { type SignerType } from "./types.js";
12
- export { combineSignatures, formatSignatures, getSignerType, splitAggregatedSignature, } from "./utils/index.js";
13
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/multisig/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AACnF,mBAAmB,gBAAgB,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,kCAAkC,GACnC,MAAM,aAAa,CAAC;AACrB,mBAAmB,YAAY,CAAC;AAChC,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,wBAAwB,GACzB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/multisig/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,gBAAgB,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,kCAAkC,EAClC,KAAK,2BAA2B,GACjC,MAAM,aAAa,CAAC;AACrB,mBAAmB,YAAY,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { type ClientMiddlewareFn } from "@aa-sdk/core";
2
- import { type MultisigUserOperationContext } from "./index.js";
2
+ import { type MultisigUserOperationContext } from "./types.js";
3
3
  /**
4
4
  * A signer middleware to be used with Multisig Account Clients.
5
5
  * This middleware handles correctly aggregating signatures passed through
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/multisig/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,kBAAkB,EAGxB,MAAM,cAAc,CAAC;AAOtB,OAAO,EAIL,KAAK,4BAA4B,EAClC,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,2BAA2B,EAAE,kBAAkB,CAC1D,4BAA4B,CAmG7B,CAAC"}
1
+ {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/multisig/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,kBAAkB,EAGxB,MAAM,cAAc,CAAC;AAOtB,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAO/D;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,2BAA2B,EAAE,kBAAkB,CAC1D,4BAA4B,CAmG7B,CAAC"}
@@ -1,10 +1,36 @@
1
1
  import { type Hex } from "viem";
2
2
  import type { Signature } from "../types.js";
3
- export declare const combineSignatures: ({ signatures, upperLimitMaxFeePerGas, upperLimitMaxPriorityFeePerGas, upperLimitPvg, usingMaxValues, }: {
3
+ export type CombineSignaturesParams = {
4
4
  upperLimitPvg: Hex;
5
5
  upperLimitMaxFeePerGas: Hex;
6
6
  upperLimitMaxPriorityFeePerGas: Hex;
7
7
  signatures: Signature[];
8
8
  usingMaxValues: boolean;
9
- }) => `0x${string}`;
9
+ };
10
+ /**
11
+ * Combines multiple signatures with provided upper limit values for gas fees and returns the concatenated result.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * import { combineSignatures } from "@account-kit/smart-contracts";
16
+ *
17
+ * const combinedSignature = combineSignatures({
18
+ * // this is the upper limit pre-verification gas
19
+ * upperLimitPvg: "0x01",
20
+ * upperLimitMaxFeePerGas: "0x02",
21
+ * upperLimitMaxPriorityFeePerGas: "0x03",
22
+ * signatures: [{
23
+ * signerType: "EOA",
24
+ * userOpSigType: "UPPERLIMIT",
25
+ * signer: `0x...`,
26
+ * signature: `0x...`,
27
+ * }]
28
+ * usingMaxValues: false,
29
+ * });
30
+ * ```
31
+ *
32
+ * @param {CombineSignaturesParams} params The function parameters
33
+ * @returns {Hex} The concatenated result of padding and formatting the provided values and signatures
34
+ */
35
+ export declare function combineSignatures({ signatures, upperLimitMaxFeePerGas, upperLimitMaxPriorityFeePerGas, upperLimitPvg, usingMaxValues, }: CombineSignaturesParams): Hex;
10
36
  //# sourceMappingURL=combineSignatures.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"combineSignatures.d.ts","sourceRoot":"","sources":["../../../../../../../src/msca/plugins/multisig/utils/combineSignatures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAe,MAAM,MAAM,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,eAAO,MAAM,iBAAiB;mBAOb,GAAG;4BACM,GAAG;oCACK,GAAG;gBACvB,SAAS,EAAE;oBACP,OAAO;mBAQxB,CAAC"}
1
+ {"version":3,"file":"combineSignatures.d.ts","sourceRoot":"","sources":["../../../../../../../src/msca/plugins/multisig/utils/combineSignatures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAe,MAAM,MAAM,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,MAAM,MAAM,uBAAuB,GAAG;IACpC,aAAa,EAAE,GAAG,CAAC;IACnB,sBAAsB,EAAE,GAAG,CAAC;IAC5B,8BAA8B,EAAE,GAAG,CAAC;IACpC,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,UAAU,EACV,sBAAsB,EACtB,8BAA8B,EAC9B,aAAa,EACb,cAAc,GACf,EAAE,uBAAuB,GAAG,GAAG,CAO/B"}
@@ -1,11 +1,30 @@
1
- import type { SmartContractAccount, SmartAccountSigner } from "@aa-sdk/core";
2
- import { type Transport, type Chain, type Client, type PublicRpcSchema, type PublicActions, type Hex } from "viem";
1
+ import type { SmartAccountSigner, SmartContractAccount } from "@aa-sdk/core";
2
+ import { type Chain, type Client, type Hex, type PublicActions, type PublicRpcSchema, type Transport } from "viem";
3
3
  import type { SignerType } from "../types";
4
4
  type GetSignerTypeParams<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined, TClient extends Client<TTransport, TChain, TAccount, PublicRpcSchema, PublicActions> = Client<TTransport, TChain, TAccount, PublicRpcSchema, PublicActions>> = {
5
5
  signer: SmartAccountSigner<any>;
6
6
  signature: Hex;
7
7
  client: TClient;
8
8
  };
9
+ /**
10
+ * Determines the type of signer (Externally Owned Account (EOA) or CONTRACT) based on the provided client, signature, and signer.
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * import { getSignerType } from "@account-kit/smart-contracts";
15
+ * import { LocalAccountSigner } from "@aa-sdk/core";
16
+ * import { createPublicClient, generatePrivateKey } from "viem";
17
+ *
18
+ * const signer = LocalAccountSigner.privateKeyToAccountSigner(generatePrivateKey());
19
+ * const client = createPublicClient(...);
20
+ * const signature = signer.signMessage("Hello World");
21
+ *
22
+ * const signerType = await getSignerType({ client, signature, signer }); // EOA
23
+ * ```
24
+ *
25
+ * @param {GetSignerTypeParams<TTransport, TChain>} params the parameters including the client, signature, and signer
26
+ * @returns {Promise<SignerType>} A promise that resolves to the signer type, which is either "EOA" or "CONTRACT"
27
+ */
9
28
  export declare const getSignerType: <TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined>({ client, signature, signer, }: GetSignerTypeParams<TTransport, TChain, SmartContractAccount | undefined, Client<TTransport, TChain, SmartContractAccount | undefined, PublicRpcSchema, PublicActions>>) => Promise<SignerType>;
10
29
  export {};
11
30
  //# sourceMappingURL=getSignerType.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getSignerType.d.ts","sourceRoot":"","sources":["../../../../../../../src/msca/plugins/multisig/utils/getSignerType.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EACL,KAAK,SAAS,EACd,KAAK,KAAK,EACV,KAAK,MAAM,EACX,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,GAAG,EAET,MAAM,MAAM,CAAC;AACd,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,KAAK,mBAAmB,CACtB,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EACb,OAAO,SAAS,MAAM,CACpB,UAAU,EACV,MAAM,EACN,QAAQ,EACR,eAAe,EACf,aAAa,CACd,GAAG,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,aAAa,CAAC,IACtE;IACF,MAAM,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAChC,SAAS,EAAE,GAAG,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,aAAa,+SAOmB,QAAQ,UAAU,CAO9D,CAAC"}
1
+ {"version":3,"file":"getSignerType.d.ts","sourceRoot":"","sources":["../../../../../../../src/msca/plugins/multisig/utils/getSignerType.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EACL,KAAK,KAAK,EACV,KAAK,MAAM,EACX,KAAK,GAAG,EACR,KAAK,aAAa,EAClB,KAAK,eAAe,EAEpB,KAAK,SAAS,EACf,MAAM,MAAM,CAAC;AACd,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,KAAK,mBAAmB,CACtB,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EACb,OAAO,SAAS,MAAM,CACpB,UAAU,EACV,MAAM,EACN,QAAQ,EACR,eAAe,EACf,aAAa,CACd,GAAG,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,aAAa,CAAC,IACtE;IACF,MAAM,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAChC,SAAS,EAAE,GAAG,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,aAAa,+SAOmB,QAAQ,UAAU,CAO9D,CAAC"}
@@ -1,5 +1,9 @@
1
+ export type * from "./combineSignatures.js";
1
2
  export { combineSignatures } from "./combineSignatures.js";
3
+ export type * from "./formatSignatures.js";
2
4
  export { formatSignatures } from "./formatSignatures.js";
5
+ export type * from "./getSignerType.js";
3
6
  export { getSignerType } from "./getSignerType.js";
7
+ export type * from "./splitAggregatedSignature.js";
4
8
  export { splitAggregatedSignature } from "./splitAggregatedSignature.js";
5
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/msca/plugins/multisig/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/msca/plugins/multisig/utils/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,wBAAwB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,mBAAmB,uBAAuB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,mBAAmB,oBAAoB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,mBAAmB,+BAA+B,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC"}
@@ -27,5 +27,18 @@ export type SessionKeyPluginActions<TAccount extends SmartContractAccount | unde
27
27
  } & (IsUndefined<TAccount> extends false ? {
28
28
  getAccountSessionKeys: (args?: GetPluginAddressParameter & GetAccountParameter<TAccount>) => Promise<ReadonlyArray<Address>>;
29
29
  } : {});
30
+ /**
31
+ * Creates actions for managing session keys in a smart contract associated with a client, including adding, removing, rotating, and updating session key permissions.
32
+ *
33
+ * @example
34
+ * ```ts
35
+ * import { createModularAccountAlchemyClient, sessionKeyPluginActions } from "@account-kit/smart-contracts";
36
+ *
37
+ * const client = createModularAccountAlchemyClient(...).extend(sessionKeyPluginActions);
38
+ * ```
39
+ *
40
+ * @param {Client<TTransport, TChain, TAccount>} client The client instance to use for managing session keys
41
+ * @returns {SessionKeyPluginActions<TAccount>} An object containing methods for session key management and interaction with the smart contract
42
+ */
30
43
  export declare const sessionKeyPluginActions: <TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined>(client: Client<TTransport, TChain, TAccount>) => SessionKeyPluginActions<TAccount>;
31
44
  //# sourceMappingURL=extension.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/session-key/extension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/session-key/extension.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  export type * from "./extension.js";
2
2
  export { sessionKeyPluginActions } from "./extension.js";
3
- export { SessionKeyPlugin } from "./plugin.js";
3
+ export { SessionKeyPlugin, SessionKeyPluginAbi, SessionKeyPluginExecutionFunctionAbi, type InstallSessionKeyPluginParams, } from "./plugin.js";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/session-key/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,gBAAgB,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/session-key/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,gBAAgB,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,oCAAoC,EACpC,KAAK,6BAA6B,GACnC,MAAM,aAAa,CAAC"}
@@ -31,6 +31,9 @@ export type GasSpendLimit = {
31
31
  spendLimit: bigint;
32
32
  refreshInterval?: number;
33
33
  };
34
+ /**
35
+ * A builder for creating the hex-encoded data for updating session key permissions.
36
+ */
34
37
  export declare class SessionKeyPermissionsBuilder {
35
38
  private _contractAccessControlType;
36
39
  private _contractAddressAccessEntrys;
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/session-key/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAGlE,oBAAY,wBAAwB;IAClC,SAAS,IAAI;IACb,QAAQ,IAAI;IACZ,gBAAgB,IAAI;CACrB;AAED,MAAM,MAAM,mBAAmB,GAAG;IAEhC,eAAe,EAAE,OAAO,CAAC;IAEzB,QAAQ,EAAE,OAAO,CAAC;IAElB,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAEhC,eAAe,EAAE,OAAO,CAAC;IAEzB,cAAc,EAAE,GAAG,CAAC;IAEpB,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,MAAM,CAAC;IAGnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IAGnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAGF,MAAM,MAAM,aAAa,GAAG;IAI1B,UAAU,EAAE,MAAM,CAAC;IAGnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,qBAAa,4BAA4B;IACvC,OAAO,CAAC,0BAA0B,CACG;IACrC,OAAO,CAAC,4BAA4B,CAA6B;IACjE,OAAO,CAAC,2BAA2B,CAA6B;IAChE,OAAO,CAAC,UAAU,CAAC,CAAY;IAC/B,OAAO,CAAC,sBAAsB,CAAC,CAAmB;IAClD,OAAO,CAAC,sBAAsB,CAAyB;IACvD,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,kBAAkB,CAAC,CAAU;IAE9B,4BAA4B,CAAC,OAAO,EAAE,wBAAwB;IAK9D,6BAA6B,CAAC,KAAK,EAAE,mBAAmB;IAKxD,8BAA8B,CAAC,KAAK,EAAE,mBAAmB;IAKzD,YAAY,CAAC,SAAS,EAAE,SAAS;IAKjC,wBAAwB,CAAC,KAAK,EAAE,gBAAgB;IAKhD,uBAAuB,CAAC,KAAK,EAAE,eAAe;IAK9C,gBAAgB,CAAC,KAAK,EAAE,aAAa;IAKrC,oBAAoB,CAAC,SAAS,EAAE,OAAO;IAKvC,MAAM,IAAI,GAAG,EAAE;IA0EtB,OAAO,CAAC,eAAe;CAKxB"}
1
+ {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/session-key/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAGlE,oBAAY,wBAAwB;IAClC,SAAS,IAAI;IACb,QAAQ,IAAI;IACZ,gBAAgB,IAAI;CACrB;AAED,MAAM,MAAM,mBAAmB,GAAG;IAEhC,eAAe,EAAE,OAAO,CAAC;IAEzB,QAAQ,EAAE,OAAO,CAAC;IAElB,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAEhC,eAAe,EAAE,OAAO,CAAC;IAEzB,cAAc,EAAE,GAAG,CAAC;IAEpB,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,MAAM,CAAC;IAGnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IAGnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAGF,MAAM,MAAM,aAAa,GAAG;IAI1B,UAAU,EAAE,MAAM,CAAC;IAGnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,qBAAa,4BAA4B;IACvC,OAAO,CAAC,0BAA0B,CACG;IACrC,OAAO,CAAC,4BAA4B,CAA6B;IACjE,OAAO,CAAC,2BAA2B,CAA6B;IAChE,OAAO,CAAC,UAAU,CAAC,CAAY;IAC/B,OAAO,CAAC,sBAAsB,CAAC,CAAmB;IAClD,OAAO,CAAC,sBAAsB,CAAyB;IACvD,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,kBAAkB,CAAC,CAAU;IAE9B,4BAA4B,CAAC,OAAO,EAAE,wBAAwB;IAK9D,6BAA6B,CAAC,KAAK,EAAE,mBAAmB;IAKxD,8BAA8B,CAAC,KAAK,EAAE,mBAAmB;IAKzD,YAAY,CAAC,SAAS,EAAE,SAAS;IAKjC,wBAAwB,CAAC,KAAK,EAAE,gBAAgB;IAKhD,uBAAuB,CAAC,KAAK,EAAE,eAAe;IAK9C,gBAAgB,CAAC,KAAK,EAAE,aAAa;IAKrC,oBAAoB,CAAC,SAAS,EAAE,OAAO;IAKvC,MAAM,IAAI,GAAG,EAAE;IA0EtB,OAAO,CAAC,eAAe;CAKxB"}
@@ -12,12 +12,12 @@ export declare const SessionKeySignerSchema: z.ZodObject<{
12
12
  storageKey?: string | undefined;
13
13
  }>;
14
14
  export type SessionKeySignerConfig = z.input<typeof SessionKeySignerSchema>;
15
+ export declare const SESSION_KEY_SIGNER_TYPE_PFX = "alchemy:session-key";
15
16
  /**
16
17
  * A simple session key signer that uses localStorage or sessionStorage to store
17
18
  * a private key. If the key is not found, it will generate a new one and store
18
19
  * it in the storage.
19
20
  */
20
- export declare const SESSION_KEY_SIGNER_TYPE_PFX = "alchemy:session-key";
21
21
  export declare class SessionKeySigner implements SmartAccountSigner<LocalAccountSigner<PrivateKeyAccount>> {
22
22
  signerType: string;
23
23
  inner: LocalAccountSigner<PrivateKeyAccount>;
@@ -1 +1 @@
1
- {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/session-key/signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,KAAK,EAEV,iBAAiB,EACjB,eAAe,EAEf,mBAAmB,EACpB,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,sBAAsB;;;;;;;;;EAMjC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE5E;;;;GAIG;AAEH,eAAO,MAAM,2BAA2B,wBAAwB,CAAC;AACjE,qBAAa,gBACX,YAAW,kBAAkB,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IAEpE,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IAC7C,OAAO,CAAC,WAAW,CAAgD;IACnE,OAAO,CAAC,UAAU,CAAS;gBAEf,OAAO,GAAE,sBAA2B;IA2BhD,UAAU,EAAE,MAAM,OAAO,CAAC,KAAK,MAAM,EAAE,CAAC,CAEtC;IAEF,WAAW,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,OAAO,CAAC,KAAK,MAAM,EAAE,CAAC,CAI3D;IAEF,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8HAOX;IAEF;;;;OAIG;IACH,cAAc,sBASZ;CACH"}
1
+ {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/session-key/signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,KAAK,EAEV,iBAAiB,EACjB,eAAe,EAEf,mBAAmB,EACpB,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,sBAAsB;;;;;;;;;EAMjC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC5E,eAAO,MAAM,2BAA2B,wBAAwB,CAAC;AAEjE;;;;GAIG;AACH,qBAAa,gBACX,YAAW,kBAAkB,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IAEpE,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IAC7C,OAAO,CAAC,WAAW,CAAgD;IACnE,OAAO,CAAC,UAAU,CAAS;gBAEf,OAAO,GAAE,sBAA2B;IA2BhD,UAAU,EAAE,MAAM,OAAO,CAAC,KAAK,MAAM,EAAE,CAAC,CAEtC;IAEF,WAAW,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,OAAO,CAAC,KAAK,MAAM,EAAE,CAAC,CAI3D;IAEF,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8HAOX;IAEF;;;;OAIG;IACH,cAAc,sBASZ;CACH"}
@@ -1,10 +1,30 @@
1
1
  import type { GetAccountParameter, SmartContractAccount } from "@aa-sdk/core";
2
2
  import type { Address, Chain, Client, Transport } from "viem";
3
- export declare const buildSessionKeysToRemoveStruct: <TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined>(client: Client<TTransport, TChain, TAccount>, args: {
3
+ type BuildSessionKeysToRemoveStructParams<TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined> = {
4
4
  keys: ReadonlyArray<Address>;
5
5
  pluginAddress?: Address;
6
- } & GetAccountParameter<TAccount>) => Promise<{
6
+ } & GetAccountParameter<TAccount>;
7
+ /**
8
+ * Finds predecessors for each provided key and returns them in the struct `ISessionKeyPlugin.SessionKeyToRemove[]`.
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * import { buildSessionKeysToRemoveStruct } from "@account-kit/smart-contracts";
13
+ *
14
+ * const client = createSmartAccountClient(...);
15
+ *
16
+ * const keysToRemove = await buildSessionKeysToRemoveStruct(client, {
17
+ * keys: ["0x...", "0x..."],
18
+ * });
19
+ * ```
20
+ *
21
+ * @param {Client<TTransport, TChain, TAccount>} client The client instance used to interact with the smart account
22
+ * @param {BuildSessionKeysToRemoveStructParams<TAccount>} args Arguments to configure the session key removal process
23
+ * @returns {Promise<{ sessionKey: Address; predecessor: Address }[]>} A promise that resolves to an array of objects each containing a session key and its predecessor
24
+ */
25
+ export declare function buildSessionKeysToRemoveStruct<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined>(client: Client<TTransport, TChain, TAccount>, args: BuildSessionKeysToRemoveStructParams): Promise<{
7
26
  sessionKey: Address;
8
27
  predecessor: Address;
9
28
  }[]>;
29
+ export {};
10
30
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/session-key/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAE9E,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAK9D,eAAO,MAAM,8BAA8B,EAAE,CAC3C,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EAEb,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAC5C,IAAI,EAAE;IACJ,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,KAC9B,OAAO,CAAC;IAAE,UAAU,EAAE,OAAO,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,EAAE,CAoB3D,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../src/msca/plugins/session-key/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAE9E,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAG9D,KAAK,oCAAoC,CACvC,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,IACX;IACF,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;AAElC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,8BAA8B,CAClD,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EAEb,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAC5C,IAAI,EAAE,oCAAoC,GACzC,OAAO,CAAC;IAAE,UAAU,EAAE,OAAO,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,EAAE,CAAC,CAmB1D"}
@@ -4,7 +4,7 @@ import { type MultiOwnerModularAccount } from "./account/multiOwnerAccount.js";
4
4
  /**
5
5
  * Utility method returning the default multi sig msca factory address given a {@link Chain} object
6
6
  *
7
- * @param chain - a {@link Chain} object
7
+ * @param chain a {@link Chain} object
8
8
  * @returns a {@link Address} for the given chain
9
9
  * @throws if the chain doesn't have an address currently deployed
10
10
  */
@@ -17,14 +17,52 @@ export declare const getDefaultMultisigModularAccountFactoryAddress: (chain: Cha
17
17
  * @throws if the chain doesn't have an address currently deployed
18
18
  */
19
19
  export declare const getDefaultMultiOwnerModularAccountFactoryAddress: (chain: Chain) => Address;
20
- export declare function getMSCAUpgradeToData<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TSigner extends SmartAccountSigner = SmartAccountSigner, TAccount extends SmartContractAccountWithSigner<string, TSigner> | undefined = SmartContractAccountWithSigner<string, TSigner> | undefined>(client: SmartAccountClient<TTransport, TChain, TAccount>, args: {
20
+ export type GetMSCAUpgradeToData<TSigner extends SmartAccountSigner = SmartAccountSigner, TAccount extends SmartContractAccountWithSigner<string, TSigner> | undefined = SmartContractAccountWithSigner<string, TSigner> | undefined> = {
21
21
  multiOwnerPluginAddress?: Address;
22
- } & GetAccountParameter<TAccount>): Promise<UpgradeToData & {
22
+ } & GetAccountParameter<TAccount>;
23
+ /**
24
+ * Retrieves the data necessary to upgrade to a Multi-Signature Contract Account (MSCA) and provides a method to create a Multi-Owner Modular Account.
25
+ *
26
+ * @example
27
+ * ```ts
28
+ * import { createLightAccountClient, getMSCAUpgradeToData } from "@account-kit/smart-contracts";
29
+ *
30
+ * const client = createLightAccountClient(...);
31
+ * const upgradeData = await getMSCAUpgradeToData(client, {});
32
+ * ```
33
+ *
34
+ * @param {SmartAccountClient<TTransport, TChain, TAccount>} client The smart account client
35
+ * @param {GetMSCAUpgradeToData<TSigner, TAccount>} args The arguments required for the upgrade
36
+ * @returns {Promise<UpgradeToData & { createMAAccount: () => Promise<MultiOwnerModularAccount<TSigner>>}>} A promise that resolves to upgrade data augmented with a function to create a Multi-Owner Modular Account
37
+ */
38
+ export declare function getMSCAUpgradeToData<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TSigner extends SmartAccountSigner = SmartAccountSigner, TAccount extends SmartContractAccountWithSigner<string, TSigner> | undefined = SmartContractAccountWithSigner<string, TSigner> | undefined>(client: SmartAccountClient<TTransport, TChain, TAccount>, args: GetMSCAUpgradeToData<TSigner, TAccount>): Promise<UpgradeToData & {
23
39
  createMAAccount: () => Promise<MultiOwnerModularAccount<TSigner>>;
24
40
  }>;
25
- export declare function getMAInitializationData<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined>({ client, multiOwnerPluginAddress, signerAddress, }: {
41
+ export type GetMAInitializationDataParams<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined> = {
26
42
  multiOwnerPluginAddress?: Address;
27
43
  client: SmartAccountClient<TTransport, TChain, TAccount>;
28
44
  signerAddress: Address | Address[];
29
- }): Promise<UpgradeToData>;
45
+ };
46
+ /**
47
+ * Retrieves the initialization data for a multi-owner modular account. Throws an error if the client's chain is not found or if the multi-owner plugin address is not retrievable.
48
+ *
49
+ * @example
50
+ * ```ts
51
+ * import { getMAInitializationData } from "@account-kit/smart-contracts";
52
+ * import { createSmartAccountClient } from "@aa-sdk/core";
53
+ *
54
+ * const client = createSmartAccountClient(...);
55
+ * const initializationData = await getMAInitializationData({
56
+ * client,
57
+ * signerAddress: "0x...", // or array of signers
58
+ * });
59
+ * ```
60
+ *
61
+ * @param {GetMAInitializationDataParams<TTransport, TChain, TAccount>} params the parameters for getting initialization data
62
+ * @param {SmartAccountClient<TTransport, TChain, TAccount>} params.client the smart account client
63
+ * @param {Address | Address[]} params.signerAddress the address of the signer or an array of signer addresses
64
+ * @param {Address} [params.multiOwnerPluginAddress] optional address of the multi-owner plugin
65
+ * @returns {Promise<UpgradeToData>} a promise that resolves to the initialization data required for upgrading to a multi-owner modular account
66
+ */
67
+ export declare function getMAInitializationData<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined>({ client, multiOwnerPluginAddress, signerAddress, }: GetMAInitializationDataParams<TTransport, TChain, TAccount>): Promise<UpgradeToData>;
30
68
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/msca/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAaL,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,8BAA8B,EACnC,KAAK,aAAa,EACnB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAYtD,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,gCAAgC,CAAC;AAGxC;;;;;;GAMG;AACH,eAAO,MAAM,8CAA8C,UAClD,KAAK,KACX,OAeF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gDAAgD,UACpD,KAAK,KACX,OAKF,CAAC;AAEF,wBAAsB,oBAAoB,CACxC,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,OAAO,SAAS,kBAAkB,GAAG,kBAAkB,EACvD,QAAQ,SACJ,8BAA8B,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/C,SAAS,GAAG,8BAA8B,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAE3E,MAAM,EAAE,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EACxD,IAAI,EAAE;IACJ,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC,GAAG,mBAAmB,CAAC,QAAQ,CAAC,GAChC,OAAO,CACR,aAAa,GAAG;IACd,eAAe,EAAE,MAAM,OAAO,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAC;CACnE,CACF,CA6BA;AAED,wBAAsB,uBAAuB,CAC3C,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EACb,EACA,MAAM,EACN,uBAAuB,EACvB,aAAa,GACd,EAAE;IACD,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,MAAM,EAAE,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACzD,aAAa,EAAE,OAAO,GAAG,OAAO,EAAE,CAAC;CACpC,GAAG,OAAO,CAAC,aAAa,CAAC,CAwDzB"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/msca/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAaL,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,8BAA8B,EACnC,KAAK,aAAa,EACnB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAYtD,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,gCAAgC,CAAC;AAGxC;;;;;;GAMG;AACH,eAAO,MAAM,8CAA8C,UAClD,KAAK,KACX,OAeF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gDAAgD,UACpD,KAAK,KACX,OAKF,CAAC;AAEF,MAAM,MAAM,oBAAoB,CAC9B,OAAO,SAAS,kBAAkB,GAAG,kBAAkB,EACvD,QAAQ,SACJ,8BAA8B,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/C,SAAS,GAAG,8BAA8B,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,IACzE;IACF,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;AAElC;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,OAAO,SAAS,kBAAkB,GAAG,kBAAkB,EACvD,QAAQ,SACJ,8BAA8B,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/C,SAAS,GAAG,8BAA8B,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAE3E,MAAM,EAAE,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EACxD,IAAI,EAAE,oBAAoB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAC5C,OAAO,CACR,aAAa,GAAG;IACd,eAAe,EAAE,MAAM,OAAO,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAC;CACnE,CACF,CA6BA;AAED,MAAM,MAAM,6BAA6B,CACvC,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,IACX;IACF,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,MAAM,EAAE,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACzD,aAAa,EAAE,OAAO,GAAG,OAAO,EAAE,CAAC;CACpC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,uBAAuB,CAC3C,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,oBAAoB,GAAG,SAAS,GAC7C,oBAAoB,GACpB,SAAS,EACb,EACA,MAAM,EACN,uBAAuB,EACvB,aAAa,GACd,EAAE,6BAA6B,CAC9B,UAAU,EACV,MAAM,EACN,QAAQ,CACT,GAAG,OAAO,CAAC,aAAa,CAAC,CAwDzB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@account-kit/smart-contracts",
3
- "version": "4.0.0-alpha.0",
3
+ "version": "4.0.0-alpha.1",
4
4
  "description": "aa-sdk compatible interfaces for Alchemy Smart Accounts",
5
5
  "author": "Alchemy",
6
6
  "license": "MIT",
@@ -46,7 +46,7 @@
46
46
  "test:run-e2e": "vitest run --config vitest.config.e2e.ts"
47
47
  },
48
48
  "devDependencies": {
49
- "@account-kit/plugingen": "*",
49
+ "@account-kit/plugingen": "^4.0.0-alpha.1",
50
50
  "@wagmi/cli": "^1.5.2",
51
51
  "change-case": "^5.1.2",
52
52
  "dedent": "^1.5.1",
@@ -67,10 +67,10 @@
67
67
  "url": "https://github.com/alchemyplatform/aa-sdk/issues"
68
68
  },
69
69
  "homepage": "https://github.com/alchemyplatform/aa-sdk#readme",
70
- "gitHead": "bd1788c2bd7f28ba762a06c649f30b544f8bade9",
70
+ "gitHead": "cb4bf5f8a9aa8fdff1610130821b69ff806e79e6",
71
71
  "dependencies": {
72
- "@aa-sdk/core": "^4.0.0-alpha.0",
73
- "@account-kit/infra": "^4.0.0-alpha.0",
72
+ "@aa-sdk/core": "^4.0.0-alpha.1",
73
+ "@account-kit/infra": "^4.0.0-alpha.1",
74
74
  "viem": "2.8.6"
75
75
  },
76
76
  "peerDependencies": {
package/src/index.ts CHANGED
@@ -72,8 +72,8 @@ export {
72
72
  export type * from "./msca/plugin-manager/decorator.js";
73
73
  export { pluginManagerActions } from "./msca/plugin-manager/decorator.js";
74
74
  export { installPlugin } from "./msca/plugin-manager/installPlugin.js";
75
+ export { multiOwnerPluginActions } from "./msca/plugins/multi-owner/extension.js";
75
76
  export type * from "./msca/plugins/multi-owner/index.js";
76
- export { multiOwnerPluginActions } from "./msca/plugins/multi-owner/index.js";
77
77
  export {
78
78
  MultiOwnerPlugin,
79
79
  MultiOwnerPluginAbi,
@@ -86,7 +86,6 @@ export {
86
86
  MultisigPluginExecutionFunctionAbi,
87
87
  multisigPluginActions,
88
88
  multisigSignatureMiddleware,
89
- type SignerType,
90
89
  } from "./msca/plugins/multisig/index.js";
91
90
  export {
92
91
  combineSignatures,
@@ -94,8 +93,8 @@ export {
94
93
  getSignerType,
95
94
  splitAggregatedSignature,
96
95
  } from "./msca/plugins/multisig/utils/index.js";
96
+ export { sessionKeyPluginActions } from "./msca/plugins/session-key/extension.js";
97
97
  export type * from "./msca/plugins/session-key/index.js";
98
- export { sessionKeyPluginActions } from "./msca/plugins/session-key/index.js";
99
98
  export type * from "./msca/plugins/session-key/permissions.js";
100
99
  export {
101
100
  SessionKeyAccessListType,
@@ -25,6 +25,7 @@ import {
25
25
  AccountVersionRegistry,
26
26
  LightAccountUnsupported1271Factories,
27
27
  defaultLightAccountVersion,
28
+ getDefaultLightAccountFactoryAddress,
28
29
  } from "../utils.js";
29
30
  import {
30
31
  createLightAccountBase,
@@ -102,6 +103,26 @@ export async function createLightAccount<
102
103
  >
103
104
  ): Promise<LightAccount<TSigner, TLightAccountVersion, TEntryPointVersion>>;
104
105
 
106
+ /**
107
+ * Creates a light account based on the provided parameters such as transport, chain, signer, init code, and more. Ensures that an account is configured and returned with various capabilities, such as transferring ownership and retrieving the owner's address.
108
+ *
109
+ * @example
110
+ * ```ts
111
+ * import { createLightAccount } from "@account-kit/smart-contracts";
112
+ * import { LocalAccountSigner } from "@aa-sdk/core";
113
+ * import { sepolia } from "viem/chains";
114
+ * import { http, generatePrivateKey } from "viem"
115
+ *
116
+ * const account = await createLightAccount({
117
+ * chain: sepolia,
118
+ * transport: http("RPC_URL"),
119
+ * signer: LocalAccountSigner.privateKeyToAccountSigner(generatePrivateKey())
120
+ * });
121
+ * ```
122
+ *
123
+ * @param {CreateLightAccountParams} config The parameters for creating a light account
124
+ * @returns {Promise<LightAccount>} A promise that resolves to a `LightAccount` object containing the created account information and methods
125
+ */
105
126
  export async function createLightAccount({
106
127
  transport,
107
128
  chain,
@@ -113,9 +134,7 @@ export async function createLightAccount({
113
134
  .entryPointVersion as any,
114
135
  }),
115
136
  accountAddress,
116
- factoryAddress = AccountVersionRegistry["LightAccount"][version].address[
117
- chain.id
118
- ].factory,
137
+ factoryAddress = getDefaultLightAccountFactoryAddress(chain, version),
119
138
  salt: salt_ = 0n,
120
139
  }: CreateLightAccountParams): Promise<LightAccount> {
121
140
  const client = createBundlerClient({