@rhinestone/sdk 2.0.0-beta.9 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (615) hide show
  1. package/README.md +2 -2
  2. package/dist/src/accounts/adapter.d.ts +31 -0
  3. package/dist/src/accounts/adapter.d.ts.map +1 -0
  4. package/dist/src/accounts/adapters/eoa.d.ts +4 -0
  5. package/dist/src/accounts/adapters/eoa.d.ts.map +1 -0
  6. package/dist/src/accounts/adapters/eoa.js +45 -0
  7. package/dist/src/accounts/adapters/hca.d.ts +5 -0
  8. package/dist/src/accounts/adapters/hca.d.ts.map +1 -0
  9. package/dist/src/accounts/adapters/hca.js +121 -0
  10. package/dist/src/accounts/adapters/kernel.d.ts +9 -0
  11. package/dist/src/accounts/adapters/kernel.d.ts.map +1 -0
  12. package/dist/src/accounts/adapters/kernel.js +159 -0
  13. package/dist/src/accounts/adapters/nexus.d.ts +16 -0
  14. package/dist/src/accounts/adapters/nexus.d.ts.map +1 -0
  15. package/dist/src/accounts/adapters/nexus.js +212 -0
  16. package/dist/src/accounts/adapters/safe.d.ts +6 -0
  17. package/dist/src/accounts/adapters/safe.d.ts.map +1 -0
  18. package/dist/src/accounts/adapters/safe.js +194 -0
  19. package/dist/src/accounts/adapters/shared.d.ts +9 -0
  20. package/dist/src/accounts/adapters/shared.d.ts.map +1 -0
  21. package/dist/src/accounts/adapters/shared.js +62 -0
  22. package/dist/src/accounts/adapters/startale.d.ts +14 -0
  23. package/dist/src/accounts/adapters/startale.d.ts.map +1 -0
  24. package/dist/src/accounts/adapters/startale.js +165 -0
  25. package/dist/src/accounts/construction.d.ts +25 -0
  26. package/dist/src/accounts/construction.d.ts.map +1 -0
  27. package/dist/src/accounts/construction.js +34 -0
  28. package/dist/src/accounts/deployment.d.ts +12 -0
  29. package/dist/src/accounts/deployment.d.ts.map +1 -0
  30. package/dist/src/accounts/deployment.js +33 -0
  31. package/dist/src/accounts/erc7579-calls.d.ts +4 -0
  32. package/dist/src/accounts/erc7579-calls.d.ts.map +1 -0
  33. package/dist/src/accounts/erc7579-calls.js +57 -0
  34. package/dist/src/accounts/error.d.ts +3 -10
  35. package/dist/src/accounts/error.d.ts.map +1 -1
  36. package/dist/src/accounts/error.js +5 -11
  37. package/dist/src/accounts/legacy.d.ts +14 -0
  38. package/dist/src/accounts/legacy.d.ts.map +1 -0
  39. package/dist/src/accounts/legacy.js +40 -0
  40. package/dist/src/accounts/registry.d.ts +4 -0
  41. package/dist/src/accounts/registry.d.ts.map +1 -0
  42. package/dist/src/accounts/registry.js +22 -0
  43. package/dist/src/accounts/types.d.ts +131 -0
  44. package/dist/src/accounts/types.d.ts.map +1 -0
  45. package/dist/src/accounts/types.js +1 -0
  46. package/dist/src/accounts/wallet-account.d.ts +3 -0
  47. package/dist/src/accounts/wallet-account.d.ts.map +1 -0
  48. package/dist/src/accounts/wallet-account.js +12 -0
  49. package/dist/src/actions/deploy.d.ts +4 -0
  50. package/dist/src/actions/deploy.d.ts.map +1 -0
  51. package/dist/src/actions/deploy.js +8 -0
  52. package/dist/src/actions/ecdsa.d.ts +2 -2
  53. package/dist/src/actions/ecdsa.d.ts.map +1 -1
  54. package/dist/src/actions/ecdsa.js +12 -65
  55. package/dist/src/actions/index.d.ts +2 -16
  56. package/dist/src/actions/index.d.ts.map +1 -1
  57. package/dist/src/actions/index.js +3 -49
  58. package/dist/src/actions/mfa.d.ts +1 -1
  59. package/dist/src/actions/mfa.d.ts.map +1 -1
  60. package/dist/src/actions/mfa.js +30 -10
  61. package/dist/src/actions/modules.d.ts +4 -0
  62. package/dist/src/actions/modules.d.ts.map +1 -0
  63. package/dist/src/actions/modules.js +22 -0
  64. package/dist/src/actions/ownable.d.ts +6 -0
  65. package/dist/src/actions/ownable.d.ts.map +1 -0
  66. package/dist/src/actions/ownable.js +63 -0
  67. package/dist/src/actions/passkeys.d.ts +2 -2
  68. package/dist/src/actions/passkeys.d.ts.map +1 -1
  69. package/dist/src/actions/passkeys.js +23 -78
  70. package/dist/src/actions/recovery.d.ts +58 -24
  71. package/dist/src/actions/recovery.d.ts.map +1 -1
  72. package/dist/src/actions/recovery.js +107 -162
  73. package/dist/src/actions/runtime.d.ts +17 -0
  74. package/dist/src/actions/runtime.d.ts.map +1 -0
  75. package/dist/src/actions/runtime.js +182 -0
  76. package/dist/src/actions/smart-sessions.d.ts +30 -6
  77. package/dist/src/actions/smart-sessions.d.ts.map +1 -1
  78. package/dist/src/actions/smart-sessions.js +69 -18
  79. package/dist/src/actions/webauthn.d.ts +6 -0
  80. package/dist/src/actions/webauthn.d.ts.map +1 -0
  81. package/dist/src/actions/webauthn.js +67 -0
  82. package/dist/src/api/account.d.ts +265 -0
  83. package/dist/src/api/account.d.ts.map +1 -0
  84. package/dist/src/api/account.js +638 -0
  85. package/dist/src/api/accounts.d.ts +12 -0
  86. package/dist/src/api/accounts.d.ts.map +1 -0
  87. package/dist/src/api/accounts.js +17 -0
  88. package/dist/src/api/compose-types.d.ts +147 -0
  89. package/dist/src/api/compose-types.d.ts.map +1 -0
  90. package/dist/src/api/compose-types.js +1 -0
  91. package/dist/src/api/compose.d.ts +6 -0
  92. package/dist/src/api/compose.d.ts.map +1 -0
  93. package/dist/src/api/compose.js +772 -0
  94. package/dist/src/api/direct-signing.d.ts +27 -0
  95. package/dist/src/api/direct-signing.d.ts.map +1 -0
  96. package/dist/src/api/direct-signing.js +191 -0
  97. package/dist/src/api/project-mappers.d.ts +7 -0
  98. package/dist/src/api/project-mappers.d.ts.map +1 -0
  99. package/dist/src/api/project-mappers.js +23 -0
  100. package/dist/src/api/queries/app-fees.d.ts +4 -0
  101. package/dist/src/api/queries/app-fees.d.ts.map +1 -0
  102. package/dist/src/api/queries/app-fees.js +3 -0
  103. package/dist/src/api/queries/portfolio.d.ts +9 -0
  104. package/dist/src/api/queries/portfolio.d.ts.map +1 -0
  105. package/dist/src/api/queries/portfolio.js +28 -0
  106. package/dist/src/api/queries/session.d.ts +8 -0
  107. package/dist/src/api/queries/session.d.ts.map +1 -0
  108. package/dist/src/api/queries/session.js +15 -0
  109. package/dist/src/api/sdk.d.ts +80 -0
  110. package/dist/src/api/sdk.d.ts.map +1 -0
  111. package/dist/src/api/sdk.js +103 -0
  112. package/dist/src/api/signer-selection.d.ts +20 -0
  113. package/dist/src/api/signer-selection.d.ts.map +1 -0
  114. package/dist/src/api/signer-selection.js +159 -0
  115. package/dist/src/calls/normalize.d.ts +9 -0
  116. package/dist/src/calls/normalize.d.ts.map +1 -0
  117. package/dist/src/calls/normalize.js +17 -0
  118. package/dist/src/calls/resolve.d.ts +3 -0
  119. package/dist/src/calls/resolve.d.ts.map +1 -0
  120. package/dist/src/calls/resolve.js +15 -0
  121. package/dist/src/calls/types.d.ts +25 -0
  122. package/dist/src/calls/types.d.ts.map +1 -0
  123. package/dist/src/calls/types.js +1 -0
  124. package/dist/src/chains/caip2.d.ts +10 -0
  125. package/dist/src/chains/caip2.d.ts.map +1 -0
  126. package/dist/src/chains/caip2.js +85 -0
  127. package/dist/src/chains/catalog.d.ts +5 -0
  128. package/dist/src/chains/catalog.d.ts.map +1 -0
  129. package/dist/src/chains/catalog.js +41 -0
  130. package/dist/src/chains/errors.d.ts +15 -0
  131. package/dist/src/chains/errors.d.ts.map +1 -0
  132. package/dist/src/chains/errors.js +21 -0
  133. package/dist/src/{orchestrator/destinations.d.ts → chains/non-evm.d.ts} +9 -6
  134. package/dist/src/chains/non-evm.d.ts.map +1 -0
  135. package/dist/src/chains/non-evm.js +30 -0
  136. package/dist/src/chains/tokens.d.ts +4 -0
  137. package/dist/src/chains/tokens.d.ts.map +1 -0
  138. package/dist/src/chains/tokens.js +22 -0
  139. package/dist/src/chains/types.d.ts +25 -0
  140. package/dist/src/chains/types.d.ts.map +1 -0
  141. package/dist/src/chains/types.js +1 -0
  142. package/dist/src/clients/bundler/client.d.ts +10 -0
  143. package/dist/src/clients/bundler/client.d.ts.map +1 -0
  144. package/dist/src/clients/bundler/client.js +85 -0
  145. package/dist/src/clients/bundler/endpoints.d.ts +3 -0
  146. package/dist/src/clients/bundler/endpoints.d.ts.map +1 -0
  147. package/dist/src/clients/bundler/endpoints.js +18 -0
  148. package/dist/src/clients/bundler/port.d.ts +22 -0
  149. package/dist/src/clients/bundler/port.d.ts.map +1 -0
  150. package/dist/src/clients/bundler/port.js +1 -0
  151. package/dist/src/clients/json-rpc.d.ts +20 -0
  152. package/dist/src/clients/json-rpc.d.ts.map +1 -0
  153. package/dist/src/clients/json-rpc.js +56 -0
  154. package/dist/src/clients/orchestrator/auth.d.ts +7 -0
  155. package/dist/src/clients/orchestrator/auth.d.ts.map +1 -0
  156. package/dist/src/clients/orchestrator/auth.js +27 -0
  157. package/dist/src/clients/orchestrator/chain-catalog.d.ts +36 -0
  158. package/dist/src/clients/orchestrator/chain-catalog.d.ts.map +1 -0
  159. package/dist/src/clients/orchestrator/chain-catalog.js +67 -0
  160. package/dist/src/clients/orchestrator/client.d.ts +13 -0
  161. package/dist/src/clients/orchestrator/client.d.ts.map +1 -0
  162. package/dist/src/clients/orchestrator/client.js +97 -0
  163. package/dist/src/clients/orchestrator/errors.d.ts +238 -0
  164. package/dist/src/clients/orchestrator/errors.d.ts.map +1 -0
  165. package/dist/src/clients/orchestrator/errors.js +525 -0
  166. package/dist/src/clients/orchestrator/fetch.d.ts +7 -0
  167. package/dist/src/clients/orchestrator/fetch.d.ts.map +1 -0
  168. package/dist/src/clients/orchestrator/fetch.js +37 -0
  169. package/dist/src/clients/orchestrator/mappers.d.ts +9 -0
  170. package/dist/src/clients/orchestrator/mappers.d.ts.map +1 -0
  171. package/dist/src/clients/orchestrator/mappers.js +198 -0
  172. package/dist/src/clients/orchestrator/port.d.ts +26 -0
  173. package/dist/src/clients/orchestrator/port.d.ts.map +1 -0
  174. package/dist/src/clients/orchestrator/port.js +1 -0
  175. package/dist/src/{orchestrator/types.d.ts → clients/orchestrator/public.d.ts} +113 -43
  176. package/dist/src/clients/orchestrator/public.d.ts.map +1 -0
  177. package/dist/src/clients/orchestrator/public.js +14 -0
  178. package/dist/src/clients/orchestrator/types.d.ts +144 -0
  179. package/dist/src/clients/orchestrator/types.d.ts.map +1 -0
  180. package/dist/src/clients/orchestrator/types.js +1 -0
  181. package/dist/src/clients/orchestrator/wire.d.ts +19 -0
  182. package/dist/src/clients/orchestrator/wire.d.ts.map +1 -0
  183. package/dist/src/clients/orchestrator/wire.gen.d.ts +6463 -0
  184. package/dist/src/clients/orchestrator/wire.gen.d.ts.map +1 -0
  185. package/dist/src/clients/orchestrator/wire.gen.js +1 -0
  186. package/dist/src/clients/orchestrator/wire.js +1 -0
  187. package/dist/src/clients/paymaster/client.d.ts +8 -0
  188. package/dist/src/clients/paymaster/client.d.ts.map +1 -0
  189. package/dist/src/clients/paymaster/client.js +38 -0
  190. package/dist/src/clients/paymaster/endpoints.d.ts +3 -0
  191. package/dist/src/clients/paymaster/endpoints.d.ts.map +1 -0
  192. package/dist/src/clients/paymaster/endpoints.js +16 -0
  193. package/dist/src/clients/paymaster/port.d.ts +17 -0
  194. package/dist/src/clients/paymaster/port.d.ts.map +1 -0
  195. package/dist/src/clients/paymaster/port.js +1 -0
  196. package/dist/src/clients/rpc/client.d.ts +6 -0
  197. package/dist/src/clients/rpc/client.d.ts.map +1 -0
  198. package/dist/src/clients/rpc/client.js +66 -0
  199. package/dist/src/clients/rpc/compatibility.d.ts +12 -0
  200. package/dist/src/clients/rpc/compatibility.d.ts.map +1 -0
  201. package/dist/src/clients/rpc/compatibility.js +16 -0
  202. package/dist/src/clients/rpc/port.d.ts +13 -0
  203. package/dist/src/clients/rpc/port.d.ts.map +1 -0
  204. package/dist/src/clients/rpc/port.js +1 -0
  205. package/dist/src/clients/rpc/providers.d.ts +3 -0
  206. package/dist/src/clients/rpc/providers.d.ts.map +1 -0
  207. package/dist/src/clients/rpc/providers.js +8 -0
  208. package/dist/src/clients/rpc/transport.d.ts +4 -0
  209. package/dist/src/clients/rpc/transport.d.ts.map +1 -0
  210. package/dist/src/clients/rpc/transport.js +5 -0
  211. package/dist/src/clients/rpc/types.d.ts +23 -0
  212. package/dist/src/clients/rpc/types.d.ts.map +1 -0
  213. package/dist/src/clients/rpc/types.js +1 -0
  214. package/dist/src/config/account-runtime.d.ts +7 -0
  215. package/dist/src/config/account-runtime.d.ts.map +1 -0
  216. package/dist/src/config/account-runtime.js +36 -0
  217. package/dist/src/config/account.d.ts +767 -0
  218. package/dist/src/config/account.d.ts.map +1 -0
  219. package/dist/src/config/account.js +10 -0
  220. package/dist/src/config/defaults.d.ts +14 -0
  221. package/dist/src/config/defaults.d.ts.map +1 -0
  222. package/dist/src/config/defaults.js +26 -0
  223. package/dist/src/config/input.d.ts +59 -0
  224. package/dist/src/config/input.d.ts.map +1 -0
  225. package/dist/src/config/input.js +1 -0
  226. package/dist/src/config/legacy.d.ts +22 -0
  227. package/dist/src/config/legacy.d.ts.map +1 -0
  228. package/dist/src/config/legacy.js +23 -0
  229. package/dist/src/config/resolve.d.ts +13 -0
  230. package/dist/src/config/resolve.d.ts.map +1 -0
  231. package/dist/src/config/resolve.js +200 -0
  232. package/dist/src/config/resolved.d.ts +77 -0
  233. package/dist/src/config/resolved.d.ts.map +1 -0
  234. package/dist/src/config/resolved.js +1 -0
  235. package/dist/src/config/validate.d.ts +3 -0
  236. package/dist/src/config/validate.d.ts.map +1 -0
  237. package/dist/src/config/validate.js +6 -0
  238. package/dist/src/{execution/error.d.ts → errors/execution.d.ts} +47 -9
  239. package/dist/src/errors/execution.d.ts.map +1 -0
  240. package/dist/src/errors/execution.js +131 -0
  241. package/dist/src/errors/index.d.ts +6 -4
  242. package/dist/src/errors/index.d.ts.map +1 -1
  243. package/dist/src/errors/index.js +7 -6
  244. package/dist/src/index.d.ts +14 -84
  245. package/dist/src/index.d.ts.map +1 -1
  246. package/dist/src/index.js +9 -293
  247. package/dist/src/jwt-server/jcs.d.ts +1 -1
  248. package/dist/src/jwt-server/jcs.js +4 -2
  249. package/dist/src/modules/erc7579-abi.d.ts +4 -0
  250. package/dist/src/modules/erc7579-abi.d.ts.map +1 -0
  251. package/dist/src/modules/erc7579-abi.js +12 -0
  252. package/dist/src/modules/intent-executor.d.ts +6 -0
  253. package/dist/src/modules/intent-executor.d.ts.map +1 -0
  254. package/dist/src/modules/intent-executor.js +13 -0
  255. package/dist/src/modules/legacy-core.d.ts +29 -0
  256. package/dist/src/modules/legacy-core.d.ts.map +1 -0
  257. package/dist/src/modules/legacy-core.js +80 -0
  258. package/dist/src/modules/normalize.d.ts +4 -0
  259. package/dist/src/modules/normalize.d.ts.map +1 -0
  260. package/dist/src/modules/normalize.js +15 -0
  261. package/dist/src/modules/plan.d.ts +16 -0
  262. package/dist/src/modules/plan.d.ts.map +1 -0
  263. package/dist/src/modules/plan.js +51 -0
  264. package/dist/src/modules/read-core.d.ts +62 -0
  265. package/dist/src/modules/read-core.d.ts.map +1 -0
  266. package/dist/src/modules/read-core.js +206 -0
  267. package/dist/src/modules/types.d.ts +46 -0
  268. package/dist/src/modules/types.d.ts.map +1 -0
  269. package/dist/src/modules/types.js +1 -0
  270. package/dist/src/modules/validators/capabilities.d.ts +4 -0
  271. package/dist/src/modules/validators/capabilities.d.ts.map +1 -0
  272. package/dist/src/modules/validators/capabilities.js +58 -0
  273. package/dist/src/modules/validators/contribution.d.ts +4 -0
  274. package/dist/src/modules/validators/contribution.d.ts.map +1 -0
  275. package/dist/src/modules/validators/contribution.js +64 -0
  276. package/dist/src/modules/validators/definition.d.ts +3 -0
  277. package/dist/src/modules/validators/definition.d.ts.map +1 -0
  278. package/dist/src/modules/validators/definition.js +68 -0
  279. package/dist/src/modules/validators/ens.d.ts +5 -0
  280. package/dist/src/modules/validators/ens.d.ts.map +1 -0
  281. package/dist/src/modules/validators/ens.js +34 -0
  282. package/dist/src/modules/validators/k1.d.ts +2 -0
  283. package/dist/src/modules/validators/k1.d.ts.map +1 -0
  284. package/dist/src/modules/validators/k1.js +1 -0
  285. package/dist/src/modules/validators/multi-factor.d.ts +18 -0
  286. package/dist/src/modules/validators/multi-factor.d.ts.map +1 -0
  287. package/dist/src/modules/validators/multi-factor.js +79 -0
  288. package/dist/src/modules/validators/ownable.d.ts +26 -0
  289. package/dist/src/modules/validators/ownable.d.ts.map +1 -0
  290. package/dist/src/modules/validators/ownable.js +84 -0
  291. package/dist/src/modules/validators/permissions.d.ts +2 -1
  292. package/dist/src/modules/validators/permissions.d.ts.map +1 -1
  293. package/dist/src/modules/validators/permissions.js +192 -18
  294. package/dist/src/modules/validators/policies/claim/arbiters.d.ts +19 -0
  295. package/dist/src/modules/validators/policies/claim/arbiters.d.ts.map +1 -0
  296. package/dist/src/modules/validators/policies/claim/arbiters.js +82 -0
  297. package/dist/src/modules/validators/resolve.d.ts +5 -0
  298. package/dist/src/modules/validators/resolve.d.ts.map +1 -0
  299. package/dist/src/modules/validators/resolve.js +22 -0
  300. package/dist/src/modules/validators/signer-id.d.ts +5 -0
  301. package/dist/src/modules/validators/signer-id.d.ts.map +1 -0
  302. package/dist/src/modules/validators/signer-id.js +8 -0
  303. package/dist/src/modules/validators/smart-session-signature-types.d.ts +35 -0
  304. package/dist/src/modules/validators/smart-session-signature-types.d.ts.map +1 -0
  305. package/dist/src/modules/validators/smart-session-signature-types.js +1 -0
  306. package/dist/src/modules/validators/smart-sessions/authorization.d.ts +99 -0
  307. package/dist/src/modules/validators/smart-sessions/authorization.d.ts.map +1 -0
  308. package/dist/src/modules/validators/smart-sessions/authorization.js +101 -0
  309. package/dist/src/modules/validators/smart-sessions/calls.d.ts +19 -0
  310. package/dist/src/modules/validators/smart-sessions/calls.d.ts.map +1 -0
  311. package/dist/src/modules/validators/smart-sessions/calls.js +85 -0
  312. package/dist/src/modules/validators/smart-sessions/cross-chain-permits.d.ts +4 -0
  313. package/dist/src/modules/validators/smart-sessions/cross-chain-permits.d.ts.map +1 -0
  314. package/dist/src/modules/validators/smart-sessions/cross-chain-permits.js +77 -0
  315. package/dist/src/modules/validators/smart-sessions/digest.d.ts +5 -0
  316. package/dist/src/modules/validators/smart-sessions/digest.d.ts.map +1 -0
  317. package/dist/src/modules/validators/smart-sessions/digest.js +30 -0
  318. package/dist/src/modules/validators/smart-sessions/mock-signature.d.ts +10 -0
  319. package/dist/src/modules/validators/smart-sessions/mock-signature.d.ts.map +1 -0
  320. package/dist/src/modules/validators/smart-sessions/mock-signature.js +31 -0
  321. package/dist/src/modules/validators/smart-sessions/module.d.ts +11 -0
  322. package/dist/src/modules/validators/smart-sessions/module.d.ts.map +1 -0
  323. package/dist/src/modules/validators/smart-sessions/module.js +18 -0
  324. package/dist/src/modules/validators/smart-sessions/policies/addresses.d.ts +23 -0
  325. package/dist/src/modules/validators/smart-sessions/policies/addresses.d.ts.map +1 -0
  326. package/dist/src/modules/validators/smart-sessions/policies/addresses.js +29 -0
  327. package/dist/src/modules/validators/smart-sessions/policies/claim.d.ts +10 -0
  328. package/dist/src/modules/validators/smart-sessions/policies/claim.d.ts.map +1 -0
  329. package/dist/src/modules/validators/smart-sessions/policies/claim.js +106 -0
  330. package/dist/src/modules/validators/smart-sessions/policies/encode.d.ts +4 -0
  331. package/dist/src/modules/validators/smart-sessions/policies/encode.d.ts.map +1 -0
  332. package/dist/src/modules/validators/smart-sessions/policies/encode.js +197 -0
  333. package/dist/src/modules/validators/smart-sessions/resolve.d.ts +16 -0
  334. package/dist/src/modules/validators/smart-sessions/resolve.d.ts.map +1 -0
  335. package/dist/src/modules/validators/smart-sessions/resolve.js +120 -0
  336. package/dist/src/modules/validators/smart-sessions/signature.d.ts +14 -0
  337. package/dist/src/modules/validators/smart-sessions/signature.d.ts.map +1 -0
  338. package/dist/src/modules/validators/smart-sessions/signature.js +167 -0
  339. package/dist/src/modules/validators/smart-sessions/state.d.ts +19 -0
  340. package/dist/src/modules/validators/smart-sessions/state.d.ts.map +1 -0
  341. package/dist/src/modules/validators/smart-sessions/state.js +42 -0
  342. package/dist/src/modules/validators/smart-sessions/types.d.ts +227 -0
  343. package/dist/src/modules/validators/smart-sessions/types.d.ts.map +1 -0
  344. package/dist/src/modules/validators/smart-sessions/types.js +1 -0
  345. package/dist/src/modules/validators/social-recovery.d.ts +16 -0
  346. package/dist/src/modules/validators/social-recovery.d.ts.map +1 -0
  347. package/dist/src/modules/validators/social-recovery.js +17 -0
  348. package/dist/src/modules/validators/types.d.ts +143 -0
  349. package/dist/src/modules/validators/types.d.ts.map +1 -0
  350. package/dist/src/modules/validators/types.js +1 -0
  351. package/dist/src/modules/validators/webauthn.d.ts +54 -0
  352. package/dist/src/modules/validators/webauthn.d.ts.map +1 -0
  353. package/dist/src/modules/validators/webauthn.js +159 -0
  354. package/dist/src/signing/context.d.ts +25 -0
  355. package/dist/src/signing/context.d.ts.map +1 -0
  356. package/dist/src/signing/context.js +163 -0
  357. package/dist/src/signing/contribution.d.ts +13 -0
  358. package/dist/src/signing/contribution.d.ts.map +1 -0
  359. package/dist/src/signing/contribution.js +83 -0
  360. package/dist/src/signing/eip7702.d.ts +41 -0
  361. package/dist/src/signing/eip7702.d.ts.map +1 -0
  362. package/dist/src/signing/eip7702.js +215 -0
  363. package/dist/src/signing/error.d.ts +27 -0
  364. package/dist/src/signing/error.d.ts.map +1 -0
  365. package/dist/src/signing/error.js +25 -0
  366. package/dist/src/signing/execute.d.ts +17 -0
  367. package/dist/src/signing/execute.d.ts.map +1 -0
  368. package/dist/src/signing/execute.js +138 -0
  369. package/dist/src/signing/intent-plans/assemble.d.ts +15 -0
  370. package/dist/src/signing/intent-plans/assemble.d.ts.map +1 -0
  371. package/dist/src/signing/intent-plans/assemble.js +96 -0
  372. package/dist/src/signing/intent-plans/independent.d.ts +48 -0
  373. package/dist/src/signing/intent-plans/independent.d.ts.map +1 -0
  374. package/dist/src/signing/intent-plans/independent.js +150 -0
  375. package/dist/src/signing/intent-plans/plan.d.ts +14 -0
  376. package/dist/src/signing/intent-plans/plan.d.ts.map +1 -0
  377. package/dist/src/signing/intent-plans/plan.js +187 -0
  378. package/dist/src/signing/intent-plans/types.d.ts +63 -0
  379. package/dist/src/signing/intent-plans/types.d.ts.map +1 -0
  380. package/dist/src/signing/intent-plans/types.js +1 -0
  381. package/dist/src/signing/message.d.ts +28 -0
  382. package/dist/src/signing/message.d.ts.map +1 -0
  383. package/dist/src/signing/message.js +90 -0
  384. package/dist/src/signing/passkeys.d.ts +28 -0
  385. package/dist/src/signing/passkeys.d.ts.map +1 -0
  386. package/dist/src/signing/passkeys.js +17 -0
  387. package/dist/src/signing/plan.d.ts +35 -0
  388. package/dist/src/signing/plan.d.ts.map +1 -0
  389. package/dist/src/signing/plan.js +377 -0
  390. package/dist/src/signing/protocols/erc6492.d.ts +11 -0
  391. package/dist/src/signing/protocols/erc6492.d.ts.map +1 -0
  392. package/dist/src/signing/protocols/erc6492.js +24 -0
  393. package/dist/src/signing/protocols/erc7739.d.ts +17 -0
  394. package/dist/src/signing/protocols/erc7739.d.ts.map +1 -0
  395. package/dist/src/signing/protocols/erc7739.js +84 -0
  396. package/dist/src/signing/session-enable.d.ts +35 -0
  397. package/dist/src/signing/session-enable.d.ts.map +1 -0
  398. package/dist/src/signing/session-enable.js +62 -0
  399. package/dist/src/signing/signers/compatibility.d.ts +4 -0
  400. package/dist/src/signing/signers/compatibility.d.ts.map +1 -0
  401. package/dist/src/signing/signers/compatibility.js +51 -0
  402. package/dist/src/signing/signers/ecdsa.d.ts +14 -0
  403. package/dist/src/signing/signers/ecdsa.d.ts.map +1 -0
  404. package/dist/src/signing/signers/ecdsa.js +54 -0
  405. package/dist/src/signing/signers/registry.d.ts +7 -0
  406. package/dist/src/signing/signers/registry.d.ts.map +1 -0
  407. package/dist/src/signing/signers/registry.js +33 -0
  408. package/dist/src/signing/signers/types.d.ts +16 -0
  409. package/dist/src/signing/signers/types.d.ts.map +1 -0
  410. package/dist/src/signing/signers/types.js +1 -0
  411. package/dist/src/signing/signers/wallet-chain.d.ts +9 -0
  412. package/dist/src/signing/signers/wallet-chain.d.ts.map +1 -0
  413. package/dist/src/signing/signers/wallet-chain.js +15 -0
  414. package/dist/src/signing/signers/webauthn.d.ts +11 -0
  415. package/dist/src/signing/signers/webauthn.d.ts.map +1 -0
  416. package/dist/src/signing/signers/webauthn.js +14 -0
  417. package/dist/src/signing/typed-data.d.ts +39 -0
  418. package/dist/src/signing/typed-data.d.ts.map +1 -0
  419. package/dist/src/signing/typed-data.js +135 -0
  420. package/dist/src/signing/types.d.ts +346 -0
  421. package/dist/src/signing/types.d.ts.map +1 -0
  422. package/dist/src/signing/types.js +1 -0
  423. package/dist/src/signing/user-operation.d.ts +23 -0
  424. package/dist/src/signing/user-operation.d.ts.map +1 -0
  425. package/dist/src/signing/user-operation.js +61 -0
  426. package/dist/src/smart-sessions/index.d.ts +16 -0
  427. package/dist/src/smart-sessions/index.d.ts.map +1 -0
  428. package/dist/src/smart-sessions/index.js +45 -0
  429. package/dist/src/transactions/intents/account.d.ts +15 -0
  430. package/dist/src/transactions/intents/account.d.ts.map +1 -0
  431. package/dist/src/transactions/intents/account.js +48 -0
  432. package/dist/src/transactions/intents/compatibility.d.ts +4 -0
  433. package/dist/src/transactions/intents/compatibility.d.ts.map +1 -0
  434. package/dist/src/transactions/intents/compatibility.js +19 -0
  435. package/dist/src/transactions/intents/normalize.d.ts +5 -0
  436. package/dist/src/transactions/intents/normalize.d.ts.map +1 -0
  437. package/dist/src/transactions/intents/normalize.js +48 -0
  438. package/dist/src/transactions/intents/prepare.d.ts +7 -0
  439. package/dist/src/transactions/intents/prepare.d.ts.map +1 -0
  440. package/dist/src/transactions/intents/prepare.js +249 -0
  441. package/dist/src/transactions/intents/quotes.d.ts +3 -0
  442. package/dist/src/transactions/intents/quotes.d.ts.map +1 -0
  443. package/dist/src/transactions/intents/quotes.js +11 -0
  444. package/dist/src/transactions/intents/request.d.ts +11 -0
  445. package/dist/src/transactions/intents/request.d.ts.map +1 -0
  446. package/dist/src/transactions/intents/request.js +55 -0
  447. package/dist/src/transactions/intents/send.d.ts +3 -0
  448. package/dist/src/transactions/intents/send.d.ts.map +1 -0
  449. package/dist/src/transactions/intents/send.js +22 -0
  450. package/dist/src/transactions/intents/session-signing.d.ts +7 -0
  451. package/dist/src/transactions/intents/session-signing.d.ts.map +1 -0
  452. package/dist/src/transactions/intents/session-signing.js +363 -0
  453. package/dist/src/transactions/intents/sessions.d.ts +17 -0
  454. package/dist/src/transactions/intents/sessions.d.ts.map +1 -0
  455. package/dist/src/transactions/intents/sessions.js +85 -0
  456. package/dist/src/transactions/intents/sign-transaction.d.ts +10 -0
  457. package/dist/src/transactions/intents/sign-transaction.d.ts.map +1 -0
  458. package/dist/src/transactions/intents/sign-transaction.js +386 -0
  459. package/dist/src/transactions/intents/split.d.ts +13 -0
  460. package/dist/src/transactions/intents/split.d.ts.map +1 -0
  461. package/dist/src/transactions/intents/split.js +3 -0
  462. package/dist/src/transactions/intents/status-policy.d.ts +13 -0
  463. package/dist/src/transactions/intents/status-policy.d.ts.map +1 -0
  464. package/dist/src/transactions/intents/status-policy.js +39 -0
  465. package/dist/src/transactions/intents/status.d.ts +4 -0
  466. package/dist/src/transactions/intents/status.d.ts.map +1 -0
  467. package/dist/src/transactions/intents/status.js +50 -0
  468. package/dist/src/transactions/intents/submit.d.ts +3 -0
  469. package/dist/src/transactions/intents/submit.d.ts.map +1 -0
  470. package/dist/src/transactions/intents/submit.js +32 -0
  471. package/dist/src/transactions/intents/types.d.ts +136 -0
  472. package/dist/src/transactions/intents/types.d.ts.map +1 -0
  473. package/dist/src/transactions/intents/types.js +1 -0
  474. package/dist/src/transactions/user-operations/hash.d.ts +5 -0
  475. package/dist/src/transactions/user-operations/hash.d.ts.map +1 -0
  476. package/dist/src/transactions/user-operations/hash.js +9 -0
  477. package/dist/src/transactions/user-operations/nonce.d.ts +18 -0
  478. package/dist/src/transactions/user-operations/nonce.d.ts.map +1 -0
  479. package/dist/src/transactions/user-operations/nonce.js +43 -0
  480. package/dist/src/transactions/user-operations/prepare.d.ts +12 -0
  481. package/dist/src/transactions/user-operations/prepare.d.ts.map +1 -0
  482. package/dist/src/transactions/user-operations/prepare.js +136 -0
  483. package/dist/src/transactions/user-operations/reconstruct.d.ts +28 -0
  484. package/dist/src/transactions/user-operations/reconstruct.d.ts.map +1 -0
  485. package/dist/src/transactions/user-operations/reconstruct.js +52 -0
  486. package/dist/src/transactions/user-operations/send.d.ts +3 -0
  487. package/dist/src/transactions/user-operations/send.d.ts.map +1 -0
  488. package/dist/src/transactions/user-operations/send.js +8 -0
  489. package/dist/src/transactions/user-operations/sign.d.ts +3 -0
  490. package/dist/src/transactions/user-operations/sign.d.ts.map +1 -0
  491. package/dist/src/transactions/user-operations/sign.js +14 -0
  492. package/dist/src/transactions/user-operations/status.d.ts +4 -0
  493. package/dist/src/transactions/user-operations/status.d.ts.map +1 -0
  494. package/dist/src/transactions/user-operations/status.js +37 -0
  495. package/dist/src/transactions/user-operations/submit.d.ts +3 -0
  496. package/dist/src/transactions/user-operations/submit.d.ts.map +1 -0
  497. package/dist/src/transactions/user-operations/submit.js +8 -0
  498. package/dist/src/transactions/user-operations/types.d.ts +68 -0
  499. package/dist/src/transactions/user-operations/types.d.ts.map +1 -0
  500. package/dist/src/transactions/user-operations/types.js +1 -0
  501. package/dist/src/transactions/user-operations/validator-account.d.ts +5 -0
  502. package/dist/src/transactions/user-operations/validator-account.d.ts.map +1 -0
  503. package/dist/src/transactions/user-operations/validator-account.js +26 -0
  504. package/dist/src/utils/index.d.ts +68 -4
  505. package/dist/src/utils/index.d.ts.map +1 -1
  506. package/dist/src/utils/index.js +113 -51
  507. package/package.json +10 -11
  508. package/dist/src/accounts/index.d.ts +0 -51
  509. package/dist/src/accounts/index.d.ts.map +0 -1
  510. package/dist/src/accounts/index.js +0 -589
  511. package/dist/src/accounts/json-rpc/index.d.ts +0 -5
  512. package/dist/src/accounts/json-rpc/index.d.ts.map +0 -1
  513. package/dist/src/accounts/json-rpc/index.js +0 -19
  514. package/dist/src/accounts/json-rpc/providers.d.ts +0 -5
  515. package/dist/src/accounts/json-rpc/providers.d.ts.map +0 -1
  516. package/dist/src/accounts/json-rpc/providers.js +0 -16
  517. package/dist/src/accounts/kernel.d.ts +0 -27
  518. package/dist/src/accounts/kernel.d.ts.map +0 -1
  519. package/dist/src/accounts/kernel.js +0 -272
  520. package/dist/src/accounts/nexus.d.ts +0 -33
  521. package/dist/src/accounts/nexus.d.ts.map +0 -1
  522. package/dist/src/accounts/nexus.js +0 -444
  523. package/dist/src/accounts/safe.d.ts +0 -33
  524. package/dist/src/accounts/safe.d.ts.map +0 -1
  525. package/dist/src/accounts/safe.js +0 -343
  526. package/dist/src/accounts/signing/common.d.ts +0 -32
  527. package/dist/src/accounts/signing/common.d.ts.map +0 -1
  528. package/dist/src/accounts/signing/common.js +0 -184
  529. package/dist/src/accounts/signing/message.d.ts +0 -7
  530. package/dist/src/accounts/signing/message.d.ts.map +0 -1
  531. package/dist/src/accounts/signing/message.js +0 -45
  532. package/dist/src/accounts/signing/passkeys.d.ts +0 -36
  533. package/dist/src/accounts/signing/passkeys.d.ts.map +0 -1
  534. package/dist/src/accounts/signing/passkeys.js +0 -119
  535. package/dist/src/accounts/signing/typedData.d.ts +0 -5
  536. package/dist/src/accounts/signing/typedData.d.ts.map +0 -1
  537. package/dist/src/accounts/signing/typedData.js +0 -33
  538. package/dist/src/accounts/startale.d.ts +0 -26
  539. package/dist/src/accounts/startale.d.ts.map +0 -1
  540. package/dist/src/accounts/startale.js +0 -191
  541. package/dist/src/accounts/utils.d.ts +0 -33
  542. package/dist/src/accounts/utils.d.ts.map +0 -1
  543. package/dist/src/accounts/utils.js +0 -202
  544. package/dist/src/auth/provider.d.ts +0 -7
  545. package/dist/src/auth/provider.d.ts.map +0 -1
  546. package/dist/src/auth/provider.js +0 -38
  547. package/dist/src/execution/compact.d.ts +0 -5
  548. package/dist/src/execution/compact.d.ts.map +0 -1
  549. package/dist/src/execution/compact.js +0 -4
  550. package/dist/src/execution/error.d.ts.map +0 -1
  551. package/dist/src/execution/error.js +0 -85
  552. package/dist/src/execution/index.d.ts +0 -42
  553. package/dist/src/execution/index.d.ts.map +0 -1
  554. package/dist/src/execution/index.js +0 -202
  555. package/dist/src/execution/utils.d.ts +0 -127
  556. package/dist/src/execution/utils.d.ts.map +0 -1
  557. package/dist/src/execution/utils.js +0 -1116
  558. package/dist/src/modules/abi/smart-sessions.d.ts +0 -104
  559. package/dist/src/modules/abi/smart-sessions.d.ts.map +0 -1
  560. package/dist/src/modules/abi/smart-sessions.js +0 -128
  561. package/dist/src/modules/chain-abstraction.d.ts +0 -5
  562. package/dist/src/modules/chain-abstraction.d.ts.map +0 -1
  563. package/dist/src/modules/chain-abstraction.js +0 -3
  564. package/dist/src/modules/common.d.ts +0 -30
  565. package/dist/src/modules/common.d.ts.map +0 -1
  566. package/dist/src/modules/common.js +0 -30
  567. package/dist/src/modules/index.d.ts +0 -11
  568. package/dist/src/modules/index.d.ts.map +0 -1
  569. package/dist/src/modules/index.js +0 -90
  570. package/dist/src/modules/legacy.d.ts +0 -10
  571. package/dist/src/modules/legacy.d.ts.map +0 -1
  572. package/dist/src/modules/legacy.js +0 -62
  573. package/dist/src/modules/read.d.ts +0 -10
  574. package/dist/src/modules/read.d.ts.map +0 -1
  575. package/dist/src/modules/read.js +0 -171
  576. package/dist/src/modules/validators/core.d.ts +0 -31
  577. package/dist/src/modules/validators/core.d.ts.map +0 -1
  578. package/dist/src/modules/validators/core.js +0 -266
  579. package/dist/src/modules/validators/index.d.ts +0 -4
  580. package/dist/src/modules/validators/index.d.ts.map +0 -1
  581. package/dist/src/modules/validators/index.js +0 -3
  582. package/dist/src/modules/validators/smart-sessions.d.ts +0 -196
  583. package/dist/src/modules/validators/smart-sessions.d.ts.map +0 -1
  584. package/dist/src/modules/validators/smart-sessions.js +0 -772
  585. package/dist/src/orchestrator/caip2.d.ts +0 -13
  586. package/dist/src/orchestrator/caip2.d.ts.map +0 -1
  587. package/dist/src/orchestrator/caip2.js +0 -52
  588. package/dist/src/orchestrator/client.d.ts +0 -29
  589. package/dist/src/orchestrator/client.d.ts.map +0 -1
  590. package/dist/src/orchestrator/client.js +0 -293
  591. package/dist/src/orchestrator/consts.d.ts +0 -6
  592. package/dist/src/orchestrator/consts.d.ts.map +0 -1
  593. package/dist/src/orchestrator/consts.js +0 -5
  594. package/dist/src/orchestrator/destinations.d.ts.map +0 -1
  595. package/dist/src/orchestrator/destinations.js +0 -36
  596. package/dist/src/orchestrator/error.d.ts +0 -97
  597. package/dist/src/orchestrator/error.d.ts.map +0 -1
  598. package/dist/src/orchestrator/error.js +0 -173
  599. package/dist/src/orchestrator/index.d.ts +0 -12
  600. package/dist/src/orchestrator/index.d.ts.map +0 -1
  601. package/dist/src/orchestrator/index.js +0 -10
  602. package/dist/src/orchestrator/registry.d.ts +0 -17
  603. package/dist/src/orchestrator/registry.d.ts.map +0 -1
  604. package/dist/src/orchestrator/registry.js +0 -100
  605. package/dist/src/orchestrator/types.d.ts.map +0 -1
  606. package/dist/src/orchestrator/types.js +0 -15
  607. package/dist/src/orchestrator/utils.d.ts +0 -3
  608. package/dist/src/orchestrator/utils.d.ts.map +0 -1
  609. package/dist/src/orchestrator/utils.js +0 -22
  610. package/dist/src/types.d.ts +0 -466
  611. package/dist/src/types.d.ts.map +0 -1
  612. package/dist/src/utils/walletClient.d.ts +0 -34
  613. package/dist/src/utils/walletClient.d.ts.map +0 -1
  614. package/dist/src/utils/walletClient.js +0 -117
  615. /package/dist/src/{types.js → accounts/adapter.js} +0 -0
@@ -0,0 +1,135 @@
1
+ import { concat, hashTypedData } from 'viem';
2
+ import { wrapKernelMessageHash } from '../accounts/adapters/kernel.js';
3
+ import { K1_DEFAULT_VALIDATOR_ADDRESS, startaleEip712Domain, } from '../accounts/adapters/startale.js';
4
+ import { EoaSigningNotSupportedError } from '../accounts/error.js';
5
+ import { encodePlannedValidatorContribution } from './contribution.js';
6
+ import { runSigningStep } from './error.js';
7
+ import { executeSigningPlan } from './execute.js';
8
+ import { createSingleStageSigningPlan } from './plan.js';
9
+ import { wrapErc6492Signature } from './protocols/erc6492.js';
10
+ import { hashErc7739TypedData, wrapErc7739TypedDataSignature, } from './protocols/erc7739.js';
11
+ export function resolveAccountTypedDataSigning(input) {
12
+ const payload = hashTypedData(input.typedData);
13
+ const accountKind = input.context.account.definition.kind;
14
+ const startaleK1 = accountKind === 'startale' &&
15
+ input.context.validatorCapabilities.compatibilityKey.moduleAddress.toLowerCase() ===
16
+ K1_DEFAULT_VALIDATOR_ADDRESS.toLowerCase();
17
+ const messagePayload = accountKind === 'kernel'
18
+ ? wrapKernelMessageHash(payload, input.context.account.address)
19
+ : startaleK1
20
+ ? hashErc7739TypedData({
21
+ typedData: input.typedData,
22
+ verifierDomain: startaleEip712Domain(input.context.account.address, input.chain.id),
23
+ })
24
+ : input.context.validatorCapabilities.supportsEip712
25
+ ? undefined
26
+ : payload;
27
+ return messagePayload
28
+ ? {
29
+ material: { kind: 'message', message: { raw: messagePayload } },
30
+ payloadKind: 'message',
31
+ ecdsaInvocation: 'ecdsa-sign-message',
32
+ webauthnInvocation: 'webauthn-sign-hash',
33
+ erc7739: startaleK1
34
+ ? { kind: 'wrap-typed-data', typedData: input.typedData }
35
+ : { kind: 'none' },
36
+ }
37
+ : {
38
+ material: { kind: 'typed-data', typedData: input.typedData },
39
+ payloadKind: 'typed-data',
40
+ ecdsaInvocation: 'ecdsa-sign-typed-data',
41
+ webauthnInvocation: 'webauthn-sign-typed-data',
42
+ erc7739: { kind: 'none' },
43
+ };
44
+ }
45
+ export function createTypedDataSigningPlan(input) {
46
+ return createSingleStageSigningPlan({
47
+ kind: 'account-typed-data',
48
+ payload: { kind: 'typed-data', id: hashTypedData(input.typedData) },
49
+ configuredTopology: input.configuredTopology,
50
+ effectiveSelection: input.effectiveSelection,
51
+ stageId: 'typed-data',
52
+ ...(input.checkpoint ? { checkpoint: input.checkpoint } : {}),
53
+ chain: input.chain,
54
+ tasks: input.tasks,
55
+ artifacts: [
56
+ {
57
+ id: 'typed-data-signature',
58
+ usage: 'erc1271',
59
+ ...input.route,
60
+ },
61
+ ],
62
+ });
63
+ }
64
+ export async function signAccountTypedData(input) {
65
+ if (input.context.account.definition.kind === 'eoa') {
66
+ throw new EoaSigningNotSupportedError('packed signatures');
67
+ }
68
+ const plan = createTypedDataSigningPlan(input.planInput);
69
+ const transcript = await executeSigningPlan({
70
+ plan,
71
+ payloads: {
72
+ [plan.payload.id]: input.planInput.signingMaterial ?? {
73
+ kind: 'typed-data',
74
+ typedData: input.planInput.typedData,
75
+ },
76
+ },
77
+ checkpoints: input.checkpoints,
78
+ signerInvoker: input.context.signerInvoker,
79
+ assembleStage: (stage) => assembleTypedDataStage(stage, input.context),
80
+ });
81
+ const signature = transcript.stages[0].outputs['typed-data-signature'];
82
+ return { signature, transcript };
83
+ }
84
+ export function assembleTypedDataStage(input, context) {
85
+ const artifact = input.stagePlan.artifacts[0];
86
+ if (!artifact)
87
+ throw new Error('Typed-data plan has no artifact');
88
+ const step = (failureStage, operation) => runSigningStep({
89
+ plan: input.plan,
90
+ failureStage,
91
+ stageId: input.stage.stageId,
92
+ artifactId: artifact.id,
93
+ usage: artifact.usage,
94
+ operation,
95
+ });
96
+ let contribution = step('validator-encode', () => encodePlannedValidatorContribution({
97
+ artifact,
98
+ stage: input.stage,
99
+ results: input.results,
100
+ }));
101
+ const erc7739 = artifact.erc7739;
102
+ if (erc7739.kind !== 'none') {
103
+ contribution = step('protocol-operation', () => {
104
+ const wrapped = wrapErc7739TypedDataSignature({
105
+ typedData: erc7739.typedData,
106
+ signature: contribution,
107
+ });
108
+ return erc7739.kind === 'wrap-session-typed-data'
109
+ ? concat([erc7739.permissionId, wrapped])
110
+ : wrapped;
111
+ });
112
+ }
113
+ const accountSignature = artifact.accountEnvelope.kind === 'none'
114
+ ? contribution
115
+ : step('account-envelope', () => context.accountAdapter.encodeSignatureEnvelope({
116
+ account: context.account,
117
+ envelope: artifact.accountEnvelope,
118
+ validatorContribution: contribution,
119
+ purpose: 'erc1271',
120
+ }));
121
+ const erc6492 = artifact.erc6492;
122
+ if (erc6492.kind === 'none') {
123
+ return { [artifact.id]: accountSignature };
124
+ }
125
+ const deployed = input.stage.facts.find((fact) => fact.kind === 'account-deployed');
126
+ return {
127
+ [artifact.id]: deployed?.kind === 'account-deployed' && deployed.deployed
128
+ ? accountSignature
129
+ : step('protocol-operation', () => wrapErc6492Signature({
130
+ factory: erc6492.factory,
131
+ factoryData: erc6492.factoryData,
132
+ signature: accountSignature,
133
+ })),
134
+ };
135
+ }
@@ -0,0 +1,346 @@
1
+ import type { Account, Address, AuthorizationRequest, Hex, SignedAuthorization, TypedDataDefinition } from 'viem';
2
+ import type { WebAuthnAccount } from 'viem/account-abstraction';
3
+ import type { AccountSignatureEnvelope } from '../accounts/types.js';
4
+ import type { EvmChainReference } from '../chains/types.js';
5
+ import type { ResolvedValidatorDefinition, ValidatorContributionCodec } from '../modules/validators/types.js';
6
+ export interface OwnerSignerSelection {
7
+ readonly kind: 'owner';
8
+ readonly validator: ResolvedValidatorDefinition;
9
+ readonly signerIds: readonly string[];
10
+ }
11
+ export type PlannedValidatorContributionCodec = ValidatorContributionCodec | {
12
+ readonly kind: 'smart-session-state';
13
+ readonly factId: string;
14
+ readonly whenEnabled: Extract<ValidatorContributionCodec, {
15
+ readonly kind: 'smart-session';
16
+ }>;
17
+ readonly whenDisabled: Extract<ValidatorContributionCodec, {
18
+ readonly kind: 'smart-session';
19
+ }>;
20
+ };
21
+ export type SigningPlanKind = 'account-message' | 'account-typed-data' | 'intent-full' | 'intent-independent' | 'user-operation' | 'session-enable' | 'nexus-eip7702-init' | 'eip7702-authorization-list';
22
+ export type SigningPayloadKind = 'message' | 'typed-data' | 'intent' | 'user-operation' | 'session-enable' | 'authorization';
23
+ export interface SigningPayloadIdentity {
24
+ readonly kind: SigningPayloadKind;
25
+ readonly id: Hex;
26
+ }
27
+ export interface SignerReference {
28
+ readonly id: string;
29
+ readonly kind: 'ecdsa' | 'webauthn' | 'wallet-authorization';
30
+ }
31
+ export type SignerInvocation = {
32
+ readonly kind: 'ecdsa-sign-message';
33
+ readonly chain?: EvmChainReference;
34
+ readonly message: {
35
+ readonly raw: Hex;
36
+ };
37
+ } | {
38
+ readonly kind: 'ecdsa-sign-typed-data';
39
+ readonly chain?: EvmChainReference;
40
+ readonly typedData: TypedDataDefinition;
41
+ } | {
42
+ readonly kind: 'webauthn-sign-hash';
43
+ readonly hash: Hex;
44
+ } | {
45
+ readonly kind: 'webauthn-sign-typed-data';
46
+ readonly typedData: TypedDataDefinition;
47
+ } | {
48
+ readonly kind: 'sign-authorization';
49
+ readonly chain: EvmChainReference;
50
+ readonly authorization: AuthorizationRequest;
51
+ };
52
+ export type RawSignerResult = {
53
+ readonly kind: 'ecdsa-signature';
54
+ readonly signature: Hex;
55
+ } | {
56
+ readonly kind: 'webauthn-assertion';
57
+ readonly signature: Hex;
58
+ readonly authenticatorData: Hex;
59
+ readonly clientDataJSON: string;
60
+ readonly challengeIndex: number;
61
+ readonly typeIndex: number;
62
+ readonly userVerificationRequired: boolean;
63
+ } | {
64
+ readonly kind: 'signed-authorization';
65
+ readonly authorization: SignedAuthorization;
66
+ };
67
+ export type SigningArtifact = Hex | SignedAuthorization | {
68
+ readonly preClaimSig: Hex;
69
+ readonly notarizedClaimSig: Hex;
70
+ };
71
+ export type SigningPayloadMaterial = {
72
+ readonly kind: 'message';
73
+ readonly message: {
74
+ readonly raw: Hex;
75
+ };
76
+ } | {
77
+ readonly kind: 'typed-data';
78
+ readonly typedData: TypedDataDefinition;
79
+ } | {
80
+ readonly kind: 'authorization';
81
+ readonly authorization: AuthorizationRequest;
82
+ };
83
+ export type SigningPayloadRegistry = Readonly<Record<Hex, SigningPayloadMaterial>>;
84
+ export interface SignerInvocationPort {
85
+ readonly has?: (signer: SignerReference) => boolean;
86
+ readonly invoke: (signer: SignerReference, invocation: SignerInvocation) => Promise<RawSignerResult>;
87
+ }
88
+ export interface SigningCheckpointPort {
89
+ readonly read: (checkpoint: Exclude<SigningReadCheckpoint, {
90
+ readonly kind: 'none';
91
+ }>) => Promise<readonly SigningRuntimeFact[]>;
92
+ }
93
+ export type SigningTaskRole = 'owner' | 'factor' | 'session-notarized' | 'session-pre-claim' | 'session-target' | 'session-enable-owner' | 'authorization';
94
+ export type SigningPayloadReference = {
95
+ readonly source: 'plan-payload';
96
+ readonly payloadId: Hex;
97
+ } | {
98
+ readonly source: 'prior-output';
99
+ readonly stageId: string;
100
+ readonly outputId: string;
101
+ readonly selection: 'whole' | 'pre-claim';
102
+ } | {
103
+ readonly source: 'checkpoint-fact';
104
+ readonly checkpointId: string;
105
+ readonly factId: string;
106
+ };
107
+ export interface SigningTaskTemplate {
108
+ readonly id: string;
109
+ readonly signer: SignerReference;
110
+ readonly role: SigningTaskRole;
111
+ readonly chain?: EvmChainReference;
112
+ readonly invocationKind: SignerInvocation['kind'];
113
+ readonly payload: SigningPayloadReference;
114
+ readonly when?: {
115
+ readonly kind: 'delegation-required';
116
+ readonly factId: string;
117
+ readonly contract: Address;
118
+ };
119
+ readonly contribution?: {
120
+ readonly kind: 'ecdsa';
121
+ readonly ownerId: string;
122
+ readonly encoding: 'raw-signer' | 'validator-contribution';
123
+ readonly factorId?: string;
124
+ } | {
125
+ readonly kind: 'webauthn';
126
+ readonly ownerId: string;
127
+ readonly publicKey: Hex;
128
+ readonly factorId?: string;
129
+ } | {
130
+ readonly kind: 'session';
131
+ readonly recoveryEncoding: 'ethereum' | 'validator-offset-4';
132
+ } | {
133
+ readonly kind: 'authorization';
134
+ };
135
+ }
136
+ export type PayloadSigningTask = Omit<SigningTaskTemplate, 'chain' | 'payload'>;
137
+ export interface SigningTask extends Omit<SigningTaskTemplate, 'invocationKind'> {
138
+ readonly invocation: SignerInvocation;
139
+ }
140
+ export interface SigningBatch {
141
+ readonly id: string;
142
+ readonly execution: 'serial' | 'parallel';
143
+ readonly taskIds: readonly string[];
144
+ }
145
+ export type SigningReadCheckpoint = {
146
+ readonly kind: 'none';
147
+ readonly id: string;
148
+ } | {
149
+ readonly kind: 'session-enabled';
150
+ readonly id: string;
151
+ readonly chain: EvmChainReference;
152
+ readonly account: Address;
153
+ readonly permissionId: Hex;
154
+ } | {
155
+ readonly kind: 'account-deployment';
156
+ readonly id: string;
157
+ readonly chain: EvmChainReference;
158
+ readonly account: Address;
159
+ } | {
160
+ readonly kind: 'delegation-code';
161
+ readonly id: string;
162
+ readonly chain: EvmChainReference;
163
+ readonly account: Address;
164
+ };
165
+ export type SigningRuntimeFact = {
166
+ readonly kind: 'session-enabled';
167
+ readonly id: string;
168
+ readonly enabled: boolean;
169
+ } | {
170
+ readonly kind: 'account-deployed';
171
+ readonly id: string;
172
+ readonly deployed: boolean;
173
+ } | {
174
+ readonly kind: 'delegation-code';
175
+ readonly id: string;
176
+ readonly code?: Hex;
177
+ };
178
+ export interface ConfiguredValidatorTopology {
179
+ readonly rootValidatorId: string;
180
+ readonly validators: readonly {
181
+ readonly id: string;
182
+ readonly ownerIds: readonly string[];
183
+ readonly threshold: number;
184
+ }[];
185
+ readonly threshold: number;
186
+ }
187
+ export interface EffectiveSignerSelection {
188
+ readonly validatorIds: readonly string[];
189
+ readonly signerIds: readonly string[];
190
+ readonly threshold: number;
191
+ }
192
+ export type SignatureUsage = 'erc1271' | 'intent-origin' | 'intent-destination' | 'intent-pre-claim' | 'intent-notarized-claim' | 'intent-target' | 'user-operation' | 'session-enable';
193
+ export interface ArtifactAssemblyPlan {
194
+ readonly id: string;
195
+ readonly stageId: string;
196
+ readonly usage: SignatureUsage;
197
+ readonly input: {
198
+ readonly kind: 'task-results';
199
+ readonly taskIds: readonly string[];
200
+ } | {
201
+ readonly kind: 'reuse-artifact';
202
+ readonly stageId: string;
203
+ readonly artifactId: string;
204
+ readonly selection: 'whole' | 'pre-claim';
205
+ } | {
206
+ readonly kind: 'session-claim-pair';
207
+ readonly preClaimArtifactId: string;
208
+ readonly notarizedClaimArtifactId: string;
209
+ };
210
+ readonly validatorCodec: PlannedValidatorContributionCodec | {
211
+ readonly kind: 'none';
212
+ };
213
+ readonly validatorFactors?: readonly {
214
+ readonly id: string;
215
+ readonly publicId: number | Hex;
216
+ readonly validator: Address;
217
+ readonly codec: Extract<ValidatorContributionCodec, {
218
+ readonly kind: 'ordered-threshold';
219
+ }>;
220
+ }[];
221
+ readonly erc7739: {
222
+ readonly kind: 'none';
223
+ } | {
224
+ readonly kind: 'wrap-typed-data';
225
+ readonly typedData: TypedDataDefinition;
226
+ } | {
227
+ readonly kind: 'wrap-session-typed-data';
228
+ readonly typedData: TypedDataDefinition;
229
+ readonly permissionId: Hex;
230
+ };
231
+ readonly accountEnvelope: AccountSignatureEnvelope;
232
+ readonly erc6492: {
233
+ readonly kind: 'none';
234
+ } | {
235
+ readonly kind: 'wrap-deployless';
236
+ readonly factory: Address;
237
+ readonly factoryData: Hex;
238
+ };
239
+ }
240
+ export interface SigningStagePlan {
241
+ readonly id: string;
242
+ readonly checkpoint: SigningReadCheckpoint;
243
+ readonly priorOutputs: readonly {
244
+ readonly stageId: string;
245
+ readonly outputId: string;
246
+ readonly selection: 'whole' | 'pre-claim';
247
+ }[];
248
+ readonly taskTemplates: readonly SigningTaskTemplate[];
249
+ readonly schedule: readonly SigningBatch[];
250
+ readonly artifacts: readonly ArtifactAssemblyPlan[];
251
+ }
252
+ export interface SigningPlan {
253
+ readonly version: 1;
254
+ readonly kind: SigningPlanKind;
255
+ readonly payload: SigningPayloadIdentity;
256
+ readonly configuredTopology: ConfiguredValidatorTopology;
257
+ readonly effectiveSelection: EffectiveSignerSelection;
258
+ readonly preparedIntent?: {
259
+ readonly signatureMode: 'default' | 'session' | 'session-with-execution-verification';
260
+ readonly artifacts: readonly {
261
+ readonly id: string;
262
+ readonly usage: SignatureUsage;
263
+ readonly payloadId: Hex;
264
+ readonly cardinality: 'one' | 'per-origin';
265
+ readonly shape: 'hex' | 'session-claims';
266
+ }[];
267
+ readonly destination?: {
268
+ readonly mode: 'sign';
269
+ readonly artifactId: string;
270
+ readonly payloadId: Hex;
271
+ } | {
272
+ readonly mode: 'reuse-origin';
273
+ readonly artifactId: string;
274
+ readonly originArtifactId: string;
275
+ readonly selection: 'whole' | 'pre-claim';
276
+ };
277
+ readonly target?: {
278
+ readonly artifactId: string;
279
+ readonly payloadId: Hex;
280
+ };
281
+ };
282
+ readonly stages: readonly SigningStagePlan[];
283
+ readonly publicOutputs: readonly {
284
+ readonly id: string;
285
+ readonly source: {
286
+ readonly kind: 'artifact';
287
+ readonly artifactId: string;
288
+ } | {
289
+ readonly kind: 'task-result';
290
+ readonly taskId: string;
291
+ };
292
+ readonly exposedForIndependentSigning: boolean;
293
+ }[];
294
+ }
295
+ export interface MaterializedSigningStage {
296
+ readonly stageId: string;
297
+ readonly facts: readonly SigningRuntimeFact[];
298
+ readonly tasks: readonly SigningTask[];
299
+ readonly schedule: readonly SigningBatch[];
300
+ }
301
+ export interface SigningStageTranscript {
302
+ readonly stage: MaterializedSigningStage;
303
+ readonly results: Readonly<Record<string, RawSignerResult>>;
304
+ readonly outputs: Readonly<Record<string, SigningArtifact>>;
305
+ }
306
+ export interface SigningTranscript {
307
+ readonly planKind: SigningPlanKind;
308
+ readonly payloadId: Hex;
309
+ readonly stages: readonly SigningStageTranscript[];
310
+ }
311
+ export interface OwnerPasskeySignature {
312
+ webauthn: {
313
+ authenticatorData: Hex;
314
+ challengeIndex?: number;
315
+ clientDataJSON: string;
316
+ typeIndex?: number;
317
+ userVerificationRequired?: boolean;
318
+ };
319
+ signature: Hex;
320
+ }
321
+ export type OwnerSignatureData = {
322
+ kind: 'ecdsa';
323
+ signer: Address;
324
+ origin: Hex[];
325
+ } | {
326
+ kind: 'passkey';
327
+ publicKey: Hex;
328
+ origin: OwnerPasskeySignature[];
329
+ };
330
+ export type OwnerSignature = ({
331
+ intentId: string;
332
+ } & OwnerSignatureData) | {
333
+ intentId: string;
334
+ kind: 'multi-factor';
335
+ validatorId: number | Hex;
336
+ signature: OwnerSignatureData;
337
+ };
338
+ export interface SignAsOwnerOptions {
339
+ /** Account that contributes this signature. Must belong to the configured owner set. */
340
+ owner: Account | WebAuthnAccount;
341
+ /** Multi-factor validator ID containing `owner`. Required only for multi-factor accounts. */
342
+ validatorId?: number | Hex;
343
+ /** Quote to sign. Defaults to `preparedTransaction.quotes.best`. */
344
+ intentId?: string;
345
+ }
346
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../signing/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,23 @@
1
+ import type { Hex } from 'viem';
2
+ import type { EvmChainReference } from '../chains/types.js';
3
+ import type { ValidatorContributionCodec } from '../modules/validators/types.js';
4
+ import type { ConfiguredValidatorTopology, EffectiveSignerSelection, PayloadSigningTask, SignerInvocationPort, SigningCheckpointPort, SigningPlan, SigningTranscript } from './types.js';
5
+ export interface UserOperationSigningPlanInput {
6
+ readonly hash: Hex;
7
+ readonly chain: EvmChainReference;
8
+ readonly configuredTopology: ConfiguredValidatorTopology;
9
+ readonly effectiveSelection: EffectiveSignerSelection;
10
+ readonly tasks: readonly PayloadSigningTask[];
11
+ readonly validatorCodec: ValidatorContributionCodec;
12
+ readonly validatorFactors?: import('./types.js').ArtifactAssemblyPlan['validatorFactors'];
13
+ }
14
+ export declare function createUserOperationSigningPlan(input: UserOperationSigningPlanInput): SigningPlan;
15
+ export declare function signUserOperationPayload(input: {
16
+ readonly planInput: UserOperationSigningPlanInput;
17
+ readonly signerInvoker: SignerInvocationPort;
18
+ readonly checkpoints: SigningCheckpointPort;
19
+ }): Promise<{
20
+ readonly signature: Hex;
21
+ readonly transcript: SigningTranscript;
22
+ }>;
23
+ //# sourceMappingURL=user-operation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-operation.d.ts","sourceRoot":"","sources":["../../../signing/user-operation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAC/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACxD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAA;AAK7E,OAAO,KAAK,EACV,2BAA2B,EAC3B,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,WAAW,EACX,iBAAiB,EAClB,MAAM,SAAS,CAAA;AAEhB,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAA;IAClB,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAA;IACjC,QAAQ,CAAC,kBAAkB,EAAE,2BAA2B,CAAA;IACxD,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAA;IACrD,QAAQ,CAAC,KAAK,EAAE,SAAS,kBAAkB,EAAE,CAAA;IAC7C,QAAQ,CAAC,cAAc,EAAE,0BAA0B,CAAA;IACnD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,SAAS,EAAE,oBAAoB,CAAC,kBAAkB,CAAC,CAAA;CACvF;AAED,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,6BAA6B,GACnC,WAAW,CAuBb;AAED,wBAAsB,wBAAwB,CAAC,KAAK,EAAE;IACpD,QAAQ,CAAC,SAAS,EAAE,6BAA6B,CAAA;IACjD,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAA;IAC5C,QAAQ,CAAC,WAAW,EAAE,qBAAqB,CAAA;CAC5C,GAAG,OAAO,CAAC;IACV,QAAQ,CAAC,SAAS,EAAE,GAAG,CAAA;IACvB,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAA;CACvC,CAAC,CAmCD"}
@@ -0,0 +1,61 @@
1
+ import { encodePlannedValidatorContribution } from './contribution.js';
2
+ import { runSigningStep } from './error.js';
3
+ import { executeSigningPlan } from './execute.js';
4
+ import { createSingleStageSigningPlan } from './plan.js';
5
+ export function createUserOperationSigningPlan(input) {
6
+ return createSingleStageSigningPlan({
7
+ kind: 'user-operation',
8
+ payload: { kind: 'user-operation', id: input.hash },
9
+ configuredTopology: input.configuredTopology,
10
+ effectiveSelection: input.effectiveSelection,
11
+ stageId: 'user-operation',
12
+ chain: input.chain,
13
+ tasks: input.tasks,
14
+ artifacts: [
15
+ {
16
+ id: 'user-operation-signature',
17
+ usage: 'user-operation',
18
+ validatorCodec: input.validatorCodec,
19
+ ...(input.validatorFactors
20
+ ? { validatorFactors: input.validatorFactors }
21
+ : {}),
22
+ erc7739: { kind: 'none' },
23
+ accountEnvelope: { kind: 'none' },
24
+ erc6492: { kind: 'none' },
25
+ },
26
+ ],
27
+ });
28
+ }
29
+ export async function signUserOperationPayload(input) {
30
+ const plan = createUserOperationSigningPlan(input.planInput);
31
+ const transcript = await executeSigningPlan({
32
+ plan,
33
+ payloads: {
34
+ [plan.payload.id]: {
35
+ kind: 'message',
36
+ message: { raw: input.planInput.hash },
37
+ },
38
+ },
39
+ signerInvoker: input.signerInvoker,
40
+ checkpoints: input.checkpoints,
41
+ assembleStage: ({ stagePlan, stage, results }) => {
42
+ const artifact = stagePlan.artifacts[0];
43
+ return {
44
+ [artifact.id]: runSigningStep({
45
+ plan,
46
+ failureStage: 'validator-encode',
47
+ stageId: stage.stageId,
48
+ artifactId: artifact.id,
49
+ usage: artifact.usage,
50
+ operation: () => encodePlannedValidatorContribution({
51
+ artifact,
52
+ stage,
53
+ results,
54
+ }),
55
+ }),
56
+ };
57
+ },
58
+ });
59
+ const signature = transcript.stages[0].outputs['user-operation-signature'];
60
+ return { signature, transcript };
61
+ }
@@ -0,0 +1,16 @@
1
+ import type { Abi, Address } from 'viem';
2
+ import type { ProviderConfig, Session, SessionDefinition } from '../config/account.js';
3
+ import { toCrossChainPermissionInput } from '../modules/validators/smart-sessions/cross-chain-permits.js';
4
+ import { getPermissionId, getSessionData } from '../modules/validators/smart-sessions/digest.js';
5
+ import { SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV } from '../modules/validators/smart-sessions/module.js';
6
+ import { ARG_POLICY_ADDRESS, INTENT_EXECUTION_POLICY_ADDRESS, SPENDING_LIMITS_POLICY_ADDRESS, SUDO_POLICY_ADDRESS, TIME_FRAME_POLICY_ADDRESS, UNIVERSAL_ACTION_POLICY_ADDRESS, USAGE_LIMIT_POLICY_ADDRESS, VALUE_LIMIT_POLICY_ADDRESS } from '../modules/validators/smart-sessions/policies/addresses.js';
7
+ import { SMART_SESSIONS_FALLBACK_TARGET_FLAG, SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG } from '../modules/validators/smart-sessions/resolve.js';
8
+ import type { ChainDigest, SessionDetails } from '../modules/validators/smart-sessions/types.js';
9
+ declare function toSession<const TAbis extends readonly Abi[]>(definition: SessionDefinition<TAbis>, options?: {
10
+ useDevContracts?: boolean;
11
+ }): Session;
12
+ declare function getSessionDetails(account: Address, sessions: Session[], provider: ProviderConfig | undefined, useDevContracts?: boolean): Promise<SessionDetails>;
13
+ declare function isSessionEnabled(account: Address, provider: ProviderConfig | undefined, session: Session, useDevContracts?: boolean): Promise<boolean>;
14
+ export { toSession, SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, SMART_SESSIONS_FALLBACK_TARGET_FLAG, SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG, getPermissionId, getSessionData, getSessionDetails, isSessionEnabled, toCrossChainPermissionInput, SPENDING_LIMITS_POLICY_ADDRESS, TIME_FRAME_POLICY_ADDRESS, SUDO_POLICY_ADDRESS, UNIVERSAL_ACTION_POLICY_ADDRESS, ARG_POLICY_ADDRESS, USAGE_LIMIT_POLICY_ADDRESS, VALUE_LIMIT_POLICY_ADDRESS, INTENT_EXECUTION_POLICY_ADDRESS, };
15
+ export type { ChainDigest, SessionDetails };
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../smart-sessions/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAExC,OAAO,KAAK,EACV,cAAc,EACd,OAAO,EACP,iBAAiB,EAClB,MAAM,mBAAmB,CAAA;AAK1B,OAAO,EAAE,2BAA2B,EAAE,MAAM,0DAA0D,CAAA;AACtG,OAAO,EACL,eAAe,EACf,cAAc,EACf,MAAM,6CAA6C,CAAA;AACpD,OAAO,EACL,8BAA8B,EAC9B,kCAAkC,EACnC,MAAM,6CAA6C,CAAA;AACpD,OAAO,EACL,kBAAkB,EAClB,+BAA+B,EAC/B,8BAA8B,EAC9B,mBAAmB,EACnB,yBAAyB,EACzB,+BAA+B,EAC/B,0BAA0B,EAC1B,0BAA0B,EAC3B,MAAM,yDAAyD,CAAA;AAChE,OAAO,EAEL,mCAAmC,EACnC,4CAA4C,EAC7C,MAAM,8CAA8C,CAAA;AAKrD,OAAO,KAAK,EACV,WAAW,EAGX,cAAc,EACf,MAAM,4CAA4C,CAAA;AAMnD,iBAAS,SAAS,CAAC,KAAK,CAAC,KAAK,SAAS,SAAS,GAAG,EAAE,EACnD,UAAU,EAAE,iBAAiB,CAAC,KAAK,CAAC,EACpC,OAAO,GAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAA;CAAO,GAC1C,OAAO,CAIT;AAED,iBAAe,iBAAiB,CAC9B,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,OAAO,EAAE,EACnB,QAAQ,EAAE,cAAc,GAAG,SAAS,EACpC,eAAe,CAAC,EAAE,OAAO,GACxB,OAAO,CAAC,cAAc,CAAC,CAiBzB;AAED,iBAAe,gBAAgB,CAC7B,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,cAAc,GAAG,SAAS,EACpC,OAAO,EAAE,OAAO,EAChB,eAAe,CAAC,EAAE,OAAO,GACxB,OAAO,CAAC,OAAO,CAAC,CASlB;AAED,OAAO,EACL,SAAS,EACT,8BAA8B,EAC9B,kCAAkC,EAClC,mCAAmC,EACnC,4CAA4C,EAC5C,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,2BAA2B,EAC3B,8BAA8B,EAC9B,yBAAyB,EACzB,mBAAmB,EACnB,+BAA+B,EAC/B,kBAAkB,EAClB,0BAA0B,EAC1B,0BAA0B,EAC1B,+BAA+B,GAChC,CAAA;AACD,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,CAAA"}
@@ -0,0 +1,45 @@
1
+ import { materializeRpcReader } from '../clients/rpc/compatibility.js';
2
+ import { getSessionDetails as buildSessionDetails, SESSION_LOCK_TAG, } from '../modules/validators/smart-sessions/authorization.js';
3
+ import { toCrossChainPermissionInput } from '../modules/validators/smart-sessions/cross-chain-permits.js';
4
+ import { getPermissionId, getSessionData, } from '../modules/validators/smart-sessions/digest.js';
5
+ import { SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, } from '../modules/validators/smart-sessions/module.js';
6
+ import { ARG_POLICY_ADDRESS, INTENT_EXECUTION_POLICY_ADDRESS, SPENDING_LIMITS_POLICY_ADDRESS, SUDO_POLICY_ADDRESS, TIME_FRAME_POLICY_ADDRESS, UNIVERSAL_ACTION_POLICY_ADDRESS, USAGE_LIMIT_POLICY_ADDRESS, VALUE_LIMIT_POLICY_ADDRESS, } from '../modules/validators/smart-sessions/policies/addresses.js';
7
+ import { toSession as resolveSession, SMART_SESSIONS_FALLBACK_TARGET_FLAG, SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG, } from '../modules/validators/smart-sessions/resolve.js';
8
+ import { readSessionEnabled, readSessionNonce, } from '../modules/validators/smart-sessions/state.js';
9
+ function environment(useDevContracts) {
10
+ return useDevContracts === true ? 'development' : 'production';
11
+ }
12
+ function toSession(definition, options = {}) {
13
+ return resolveSession(definition, {
14
+ environment: environment(options.useDevContracts),
15
+ });
16
+ }
17
+ async function getSessionDetails(account, sessions, provider, useDevContracts) {
18
+ const runtimeEnvironment = environment(useDevContracts);
19
+ return buildSessionDetails({
20
+ account,
21
+ sessions: sessions,
22
+ environment: runtimeEnvironment,
23
+ readNonce: async (session) => {
24
+ const reader = materializeRpcReader({ chain: session.chain, provider });
25
+ return readSessionNonce({
26
+ rpc: reader.rpc,
27
+ chain: reader.chain,
28
+ account,
29
+ lockTag: SESSION_LOCK_TAG,
30
+ environment: runtimeEnvironment,
31
+ });
32
+ },
33
+ });
34
+ }
35
+ async function isSessionEnabled(account, provider, session, useDevContracts) {
36
+ const reader = materializeRpcReader({ chain: session.chain, provider });
37
+ return readSessionEnabled({
38
+ rpc: reader.rpc,
39
+ chain: reader.chain,
40
+ account,
41
+ session: session,
42
+ environment: environment(useDevContracts),
43
+ });
44
+ }
45
+ export { toSession, SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, SMART_SESSIONS_FALLBACK_TARGET_FLAG, SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG, getPermissionId, getSessionData, getSessionDetails, isSessionEnabled, toCrossChainPermissionInput, SPENDING_LIMITS_POLICY_ADDRESS, TIME_FRAME_POLICY_ADDRESS, SUDO_POLICY_ADDRESS, UNIVERSAL_ACTION_POLICY_ADDRESS, ARG_POLICY_ADDRESS, USAGE_LIMIT_POLICY_ADDRESS, VALUE_LIMIT_POLICY_ADDRESS, INTENT_EXECUTION_POLICY_ADDRESS, };