@rhinestone/sdk 2.0.0-beta.43 → 2.0.0-beta.45

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 (603) 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 +118 -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 +17 -0
  14. package/dist/src/accounts/adapters/nexus.d.ts.map +1 -0
  15. package/dist/src/accounts/adapters/nexus.js +227 -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 +1 -1
  35. package/dist/src/accounts/error.d.ts.map +1 -1
  36. package/dist/src/accounts/legacy.d.ts +14 -0
  37. package/dist/src/accounts/legacy.d.ts.map +1 -0
  38. package/dist/src/accounts/legacy.js +40 -0
  39. package/dist/src/accounts/registry.d.ts +4 -0
  40. package/dist/src/accounts/registry.d.ts.map +1 -0
  41. package/dist/src/accounts/registry.js +22 -0
  42. package/dist/src/accounts/types.d.ts +131 -0
  43. package/dist/src/accounts/types.d.ts.map +1 -0
  44. package/dist/src/accounts/wallet-account.d.ts +3 -0
  45. package/dist/src/accounts/wallet-account.d.ts.map +1 -0
  46. package/dist/src/accounts/wallet-account.js +12 -0
  47. package/dist/src/actions/deploy.d.ts +4 -0
  48. package/dist/src/actions/deploy.d.ts.map +1 -0
  49. package/dist/src/actions/deploy.js +8 -0
  50. package/dist/src/actions/ecdsa.d.ts +1 -1
  51. package/dist/src/actions/ecdsa.d.ts.map +1 -1
  52. package/dist/src/actions/ecdsa.js +8 -8
  53. package/dist/src/actions/index.d.ts +2 -16
  54. package/dist/src/actions/index.d.ts.map +1 -1
  55. package/dist/src/actions/index.js +3 -49
  56. package/dist/src/actions/mfa.d.ts +1 -1
  57. package/dist/src/actions/mfa.d.ts.map +1 -1
  58. package/dist/src/actions/mfa.js +30 -10
  59. package/dist/src/actions/modules.d.ts +4 -0
  60. package/dist/src/actions/modules.d.ts.map +1 -0
  61. package/dist/src/actions/modules.js +22 -0
  62. package/dist/src/actions/passkeys.d.ts +2 -2
  63. package/dist/src/actions/passkeys.d.ts.map +1 -1
  64. package/dist/src/actions/passkeys.js +19 -14
  65. package/dist/src/actions/runtime.d.ts +12 -0
  66. package/dist/src/actions/runtime.d.ts.map +1 -0
  67. package/dist/src/actions/runtime.js +161 -0
  68. package/dist/src/actions/smart-sessions.d.ts +2 -2
  69. package/dist/src/actions/smart-sessions.d.ts.map +1 -1
  70. package/dist/src/actions/smart-sessions.js +35 -12
  71. package/dist/src/api/account.d.ts +265 -0
  72. package/dist/src/api/account.d.ts.map +1 -0
  73. package/dist/src/api/account.js +635 -0
  74. package/dist/src/api/accounts.d.ts +12 -0
  75. package/dist/src/api/accounts.d.ts.map +1 -0
  76. package/dist/src/api/accounts.js +17 -0
  77. package/dist/src/api/compose-types.d.ts +147 -0
  78. package/dist/src/api/compose-types.d.ts.map +1 -0
  79. package/dist/src/api/compose.d.ts +6 -0
  80. package/dist/src/api/compose.d.ts.map +1 -0
  81. package/dist/src/api/compose.js +766 -0
  82. package/dist/src/api/direct-signing.d.ts +27 -0
  83. package/dist/src/api/direct-signing.d.ts.map +1 -0
  84. package/dist/src/api/direct-signing.js +191 -0
  85. package/dist/src/api/project-mappers.d.ts +7 -0
  86. package/dist/src/api/project-mappers.d.ts.map +1 -0
  87. package/dist/src/api/project-mappers.js +23 -0
  88. package/dist/src/api/queries/app-fees.d.ts +4 -0
  89. package/dist/src/api/queries/app-fees.d.ts.map +1 -0
  90. package/dist/src/api/queries/app-fees.js +3 -0
  91. package/dist/src/api/queries/portfolio.d.ts +9 -0
  92. package/dist/src/api/queries/portfolio.d.ts.map +1 -0
  93. package/dist/src/api/queries/portfolio.js +28 -0
  94. package/dist/src/api/queries/session.d.ts +8 -0
  95. package/dist/src/api/queries/session.d.ts.map +1 -0
  96. package/dist/src/api/queries/session.js +15 -0
  97. package/dist/src/api/sdk.d.ts +80 -0
  98. package/dist/src/api/sdk.d.ts.map +1 -0
  99. package/dist/src/api/sdk.js +103 -0
  100. package/dist/src/api/signer-selection.d.ts +7 -0
  101. package/dist/src/api/signer-selection.d.ts.map +1 -0
  102. package/dist/src/api/signer-selection.js +109 -0
  103. package/dist/src/calls/normalize.d.ts +9 -0
  104. package/dist/src/calls/normalize.d.ts.map +1 -0
  105. package/dist/src/calls/normalize.js +17 -0
  106. package/dist/src/calls/resolve.d.ts +3 -0
  107. package/dist/src/calls/resolve.d.ts.map +1 -0
  108. package/dist/src/calls/resolve.js +15 -0
  109. package/dist/src/calls/types.d.ts +25 -0
  110. package/dist/src/calls/types.d.ts.map +1 -0
  111. package/dist/src/calls/types.js +1 -0
  112. package/dist/src/chains/caip2.d.ts +10 -0
  113. package/dist/src/chains/caip2.d.ts.map +1 -0
  114. package/dist/src/chains/caip2.js +85 -0
  115. package/dist/src/chains/catalog.d.ts +5 -0
  116. package/dist/src/chains/catalog.d.ts.map +1 -0
  117. package/dist/src/chains/catalog.js +41 -0
  118. package/dist/src/chains/errors.d.ts +15 -0
  119. package/dist/src/chains/errors.d.ts.map +1 -0
  120. package/dist/src/chains/errors.js +21 -0
  121. package/dist/src/{orchestrator/destinations.d.ts → chains/non-evm.d.ts} +7 -5
  122. package/dist/src/chains/non-evm.d.ts.map +1 -0
  123. package/dist/src/chains/non-evm.js +30 -0
  124. package/dist/src/chains/tokens.d.ts +4 -0
  125. package/dist/src/chains/tokens.d.ts.map +1 -0
  126. package/dist/src/chains/tokens.js +22 -0
  127. package/dist/src/chains/types.d.ts +25 -0
  128. package/dist/src/chains/types.d.ts.map +1 -0
  129. package/dist/src/chains/types.js +1 -0
  130. package/dist/src/clients/bundler/client.d.ts +10 -0
  131. package/dist/src/clients/bundler/client.d.ts.map +1 -0
  132. package/dist/src/clients/bundler/client.js +85 -0
  133. package/dist/src/clients/bundler/endpoints.d.ts +3 -0
  134. package/dist/src/clients/bundler/endpoints.d.ts.map +1 -0
  135. package/dist/src/clients/bundler/endpoints.js +18 -0
  136. package/dist/src/clients/bundler/port.d.ts +22 -0
  137. package/dist/src/clients/bundler/port.d.ts.map +1 -0
  138. package/dist/src/clients/bundler/port.js +1 -0
  139. package/dist/src/clients/json-rpc.d.ts +20 -0
  140. package/dist/src/clients/json-rpc.d.ts.map +1 -0
  141. package/dist/src/clients/json-rpc.js +56 -0
  142. package/dist/src/clients/orchestrator/auth.d.ts +7 -0
  143. package/dist/src/clients/orchestrator/auth.d.ts.map +1 -0
  144. package/dist/src/clients/orchestrator/auth.js +27 -0
  145. package/dist/src/clients/orchestrator/chain-catalog.d.ts +36 -0
  146. package/dist/src/clients/orchestrator/chain-catalog.d.ts.map +1 -0
  147. package/dist/src/clients/orchestrator/chain-catalog.js +67 -0
  148. package/dist/src/clients/orchestrator/client.d.ts +13 -0
  149. package/dist/src/clients/orchestrator/client.d.ts.map +1 -0
  150. package/dist/src/clients/orchestrator/client.js +97 -0
  151. package/dist/src/{orchestrator/error.d.ts → clients/orchestrator/errors.d.ts} +2 -16
  152. package/dist/src/clients/orchestrator/errors.d.ts.map +1 -0
  153. package/dist/src/{orchestrator/error.js → clients/orchestrator/errors.js} +1 -22
  154. package/dist/src/clients/orchestrator/fetch.d.ts +7 -0
  155. package/dist/src/clients/orchestrator/fetch.d.ts.map +1 -0
  156. package/dist/src/clients/orchestrator/fetch.js +37 -0
  157. package/dist/src/clients/orchestrator/mappers.d.ts +9 -0
  158. package/dist/src/clients/orchestrator/mappers.d.ts.map +1 -0
  159. package/dist/src/clients/orchestrator/mappers.js +198 -0
  160. package/dist/src/clients/orchestrator/port.d.ts +26 -0
  161. package/dist/src/clients/orchestrator/port.d.ts.map +1 -0
  162. package/dist/src/clients/orchestrator/port.js +1 -0
  163. package/dist/src/{orchestrator/types.d.ts → clients/orchestrator/public.d.ts} +12 -15
  164. package/dist/src/clients/orchestrator/public.d.ts.map +1 -0
  165. package/dist/src/{orchestrator/types.js → clients/orchestrator/public.js} +3 -0
  166. package/dist/src/clients/orchestrator/types.d.ts +140 -0
  167. package/dist/src/clients/orchestrator/types.d.ts.map +1 -0
  168. package/dist/src/clients/orchestrator/types.js +1 -0
  169. package/dist/src/clients/orchestrator/wire.d.ts +19 -0
  170. package/dist/src/clients/orchestrator/wire.d.ts.map +1 -0
  171. package/dist/src/{orchestrator → clients/orchestrator}/wire.gen.d.ts +519 -499
  172. package/dist/src/clients/orchestrator/wire.gen.d.ts.map +1 -0
  173. package/dist/src/clients/orchestrator/wire.gen.js +1 -0
  174. package/dist/src/clients/orchestrator/wire.js +1 -0
  175. package/dist/src/clients/paymaster/client.d.ts +8 -0
  176. package/dist/src/clients/paymaster/client.d.ts.map +1 -0
  177. package/dist/src/clients/paymaster/client.js +38 -0
  178. package/dist/src/clients/paymaster/endpoints.d.ts +3 -0
  179. package/dist/src/clients/paymaster/endpoints.d.ts.map +1 -0
  180. package/dist/src/clients/paymaster/endpoints.js +16 -0
  181. package/dist/src/clients/paymaster/port.d.ts +17 -0
  182. package/dist/src/clients/paymaster/port.d.ts.map +1 -0
  183. package/dist/src/clients/paymaster/port.js +1 -0
  184. package/dist/src/clients/rpc/client.d.ts +6 -0
  185. package/dist/src/clients/rpc/client.d.ts.map +1 -0
  186. package/dist/src/clients/rpc/client.js +66 -0
  187. package/dist/src/clients/rpc/compatibility.d.ts +12 -0
  188. package/dist/src/clients/rpc/compatibility.d.ts.map +1 -0
  189. package/dist/src/clients/rpc/compatibility.js +16 -0
  190. package/dist/src/clients/rpc/port.d.ts +13 -0
  191. package/dist/src/clients/rpc/port.d.ts.map +1 -0
  192. package/dist/src/clients/rpc/port.js +1 -0
  193. package/dist/src/clients/rpc/providers.d.ts +3 -0
  194. package/dist/src/clients/rpc/providers.d.ts.map +1 -0
  195. package/dist/src/clients/rpc/providers.js +8 -0
  196. package/dist/src/clients/rpc/transport.d.ts +4 -0
  197. package/dist/src/clients/rpc/transport.d.ts.map +1 -0
  198. package/dist/src/clients/rpc/transport.js +5 -0
  199. package/dist/src/clients/rpc/types.d.ts +23 -0
  200. package/dist/src/clients/rpc/types.d.ts.map +1 -0
  201. package/dist/src/clients/rpc/types.js +1 -0
  202. package/dist/src/config/account-runtime.d.ts +7 -0
  203. package/dist/src/config/account-runtime.d.ts.map +1 -0
  204. package/dist/src/config/account-runtime.js +36 -0
  205. package/dist/src/{types.d.ts → config/account.d.ts} +31 -26
  206. package/dist/src/config/account.d.ts.map +1 -0
  207. package/dist/src/config/account.js +10 -0
  208. package/dist/src/config/defaults.d.ts +14 -0
  209. package/dist/src/config/defaults.d.ts.map +1 -0
  210. package/dist/src/config/defaults.js +26 -0
  211. package/dist/src/config/input.d.ts +54 -0
  212. package/dist/src/config/input.d.ts.map +1 -0
  213. package/dist/src/config/input.js +1 -0
  214. package/dist/src/config/legacy.d.ts +22 -0
  215. package/dist/src/config/legacy.d.ts.map +1 -0
  216. package/dist/src/config/legacy.js +23 -0
  217. package/dist/src/config/resolve.d.ts +13 -0
  218. package/dist/src/config/resolve.d.ts.map +1 -0
  219. package/dist/src/config/resolve.js +174 -0
  220. package/dist/src/config/resolved.d.ts +77 -0
  221. package/dist/src/config/resolved.d.ts.map +1 -0
  222. package/dist/src/config/resolved.js +1 -0
  223. package/dist/src/config/validate.d.ts +3 -0
  224. package/dist/src/config/validate.d.ts.map +1 -0
  225. package/dist/src/config/validate.js +6 -0
  226. package/dist/src/{execution/error.d.ts → errors/execution.d.ts} +2 -2
  227. package/dist/src/errors/execution.d.ts.map +1 -0
  228. package/dist/src/{execution/error.js → errors/execution.js} +1 -1
  229. package/dist/src/errors/index.d.ts +4 -4
  230. package/dist/src/errors/index.d.ts.map +1 -1
  231. package/dist/src/errors/index.js +4 -3
  232. package/dist/src/index.d.ts +13 -314
  233. package/dist/src/index.d.ts.map +1 -1
  234. package/dist/src/index.js +6 -260
  235. package/dist/src/modules/erc7579-abi.d.ts +4 -0
  236. package/dist/src/modules/erc7579-abi.d.ts.map +1 -0
  237. package/dist/src/modules/erc7579-abi.js +12 -0
  238. package/dist/src/modules/intent-executor.d.ts +6 -0
  239. package/dist/src/modules/intent-executor.d.ts.map +1 -0
  240. package/dist/src/modules/intent-executor.js +13 -0
  241. package/dist/src/modules/legacy-core.d.ts +29 -0
  242. package/dist/src/modules/legacy-core.d.ts.map +1 -0
  243. package/dist/src/modules/legacy-core.js +80 -0
  244. package/dist/src/modules/normalize.d.ts +4 -0
  245. package/dist/src/modules/normalize.d.ts.map +1 -0
  246. package/dist/src/modules/normalize.js +15 -0
  247. package/dist/src/modules/plan.d.ts +16 -0
  248. package/dist/src/modules/plan.d.ts.map +1 -0
  249. package/dist/src/modules/plan.js +51 -0
  250. package/dist/src/modules/read-core.d.ts +39 -0
  251. package/dist/src/modules/read-core.d.ts.map +1 -0
  252. package/dist/src/modules/read-core.js +149 -0
  253. package/dist/src/modules/types.d.ts +46 -0
  254. package/dist/src/modules/types.d.ts.map +1 -0
  255. package/dist/src/modules/types.js +1 -0
  256. package/dist/src/modules/validators/capabilities.d.ts +4 -0
  257. package/dist/src/modules/validators/capabilities.d.ts.map +1 -0
  258. package/dist/src/modules/validators/capabilities.js +58 -0
  259. package/dist/src/modules/validators/contribution.d.ts +4 -0
  260. package/dist/src/modules/validators/contribution.d.ts.map +1 -0
  261. package/dist/src/modules/validators/contribution.js +64 -0
  262. package/dist/src/modules/validators/definition.d.ts +3 -0
  263. package/dist/src/modules/validators/definition.d.ts.map +1 -0
  264. package/dist/src/modules/validators/definition.js +68 -0
  265. package/dist/src/modules/validators/ens.d.ts +5 -0
  266. package/dist/src/modules/validators/ens.d.ts.map +1 -0
  267. package/dist/src/modules/validators/ens.js +34 -0
  268. package/dist/src/modules/validators/k1.d.ts +2 -0
  269. package/dist/src/modules/validators/k1.d.ts.map +1 -0
  270. package/dist/src/modules/validators/k1.js +1 -0
  271. package/dist/src/modules/validators/multi-factor.d.ts +18 -0
  272. package/dist/src/modules/validators/multi-factor.d.ts.map +1 -0
  273. package/dist/src/modules/validators/multi-factor.js +79 -0
  274. package/dist/src/modules/validators/ownable.d.ts +26 -0
  275. package/dist/src/modules/validators/ownable.d.ts.map +1 -0
  276. package/dist/src/modules/validators/ownable.js +84 -0
  277. package/dist/src/modules/validators/permissions.d.ts +1 -1
  278. package/dist/src/modules/validators/permissions.d.ts.map +1 -1
  279. package/dist/src/modules/validators/policies/claim/arbiters.d.ts +9 -12
  280. package/dist/src/modules/validators/policies/claim/arbiters.d.ts.map +1 -1
  281. package/dist/src/modules/validators/policies/claim/arbiters.js +52 -27
  282. package/dist/src/modules/validators/resolve.d.ts +5 -0
  283. package/dist/src/modules/validators/resolve.d.ts.map +1 -0
  284. package/dist/src/modules/validators/resolve.js +22 -0
  285. package/dist/src/modules/validators/signer-id.d.ts +5 -0
  286. package/dist/src/modules/validators/signer-id.d.ts.map +1 -0
  287. package/dist/src/modules/validators/signer-id.js +8 -0
  288. package/dist/src/modules/validators/smart-session-signature-types.d.ts +35 -0
  289. package/dist/src/modules/validators/smart-session-signature-types.d.ts.map +1 -0
  290. package/dist/src/modules/validators/smart-session-signature-types.js +1 -0
  291. package/dist/src/modules/validators/smart-sessions/authorization.d.ts +99 -0
  292. package/dist/src/modules/validators/smart-sessions/authorization.d.ts.map +1 -0
  293. package/dist/src/modules/validators/smart-sessions/authorization.js +101 -0
  294. package/dist/src/modules/validators/smart-sessions/calls.d.ts +19 -0
  295. package/dist/src/modules/validators/smart-sessions/calls.d.ts.map +1 -0
  296. package/dist/src/modules/validators/smart-sessions/calls.js +85 -0
  297. package/dist/src/modules/validators/smart-sessions/cross-chain-permits.d.ts +4 -0
  298. package/dist/src/modules/validators/smart-sessions/cross-chain-permits.d.ts.map +1 -0
  299. package/dist/src/modules/validators/smart-sessions/cross-chain-permits.js +77 -0
  300. package/dist/src/modules/validators/smart-sessions/digest.d.ts +5 -0
  301. package/dist/src/modules/validators/smart-sessions/digest.d.ts.map +1 -0
  302. package/dist/src/modules/validators/smart-sessions/digest.js +30 -0
  303. package/dist/src/modules/validators/smart-sessions/mock-signature.d.ts +10 -0
  304. package/dist/src/modules/validators/smart-sessions/mock-signature.d.ts.map +1 -0
  305. package/dist/src/modules/validators/smart-sessions/mock-signature.js +31 -0
  306. package/dist/src/modules/validators/smart-sessions/module.d.ts +11 -0
  307. package/dist/src/modules/validators/smart-sessions/module.d.ts.map +1 -0
  308. package/dist/src/modules/validators/smart-sessions/module.js +18 -0
  309. package/dist/src/modules/validators/smart-sessions/policies/addresses.d.ts +23 -0
  310. package/dist/src/modules/validators/smart-sessions/policies/addresses.d.ts.map +1 -0
  311. package/dist/src/modules/validators/smart-sessions/policies/addresses.js +29 -0
  312. package/dist/src/modules/validators/smart-sessions/policies/claim.d.ts +10 -0
  313. package/dist/src/modules/validators/smart-sessions/policies/claim.d.ts.map +1 -0
  314. package/dist/src/modules/validators/smart-sessions/policies/claim.js +106 -0
  315. package/dist/src/modules/validators/smart-sessions/policies/encode.d.ts +4 -0
  316. package/dist/src/modules/validators/smart-sessions/policies/encode.d.ts.map +1 -0
  317. package/dist/src/modules/validators/smart-sessions/policies/encode.js +197 -0
  318. package/dist/src/modules/validators/smart-sessions/resolve.d.ts +16 -0
  319. package/dist/src/modules/validators/smart-sessions/resolve.d.ts.map +1 -0
  320. package/dist/src/modules/validators/smart-sessions/resolve.js +120 -0
  321. package/dist/src/modules/validators/smart-sessions/signature.d.ts +14 -0
  322. package/dist/src/modules/validators/smart-sessions/signature.d.ts.map +1 -0
  323. package/dist/src/modules/validators/smart-sessions/signature.js +167 -0
  324. package/dist/src/modules/validators/smart-sessions/state.d.ts +19 -0
  325. package/dist/src/modules/validators/smart-sessions/state.d.ts.map +1 -0
  326. package/dist/src/modules/validators/smart-sessions/state.js +42 -0
  327. package/dist/src/modules/validators/smart-sessions/types.d.ts +227 -0
  328. package/dist/src/modules/validators/smart-sessions/types.d.ts.map +1 -0
  329. package/dist/src/modules/validators/smart-sessions/types.js +1 -0
  330. package/dist/src/modules/validators/types.d.ts +143 -0
  331. package/dist/src/modules/validators/types.d.ts.map +1 -0
  332. package/dist/src/modules/validators/types.js +1 -0
  333. package/dist/src/modules/validators/webauthn.d.ts +54 -0
  334. package/dist/src/modules/validators/webauthn.d.ts.map +1 -0
  335. package/dist/src/modules/validators/webauthn.js +159 -0
  336. package/dist/src/signing/context.d.ts +25 -0
  337. package/dist/src/signing/context.d.ts.map +1 -0
  338. package/dist/src/signing/context.js +163 -0
  339. package/dist/src/signing/contribution.d.ts +13 -0
  340. package/dist/src/signing/contribution.d.ts.map +1 -0
  341. package/dist/src/signing/contribution.js +83 -0
  342. package/dist/src/signing/eip7702.d.ts +41 -0
  343. package/dist/src/signing/eip7702.d.ts.map +1 -0
  344. package/dist/src/signing/eip7702.js +215 -0
  345. package/dist/src/signing/error.d.ts +27 -0
  346. package/dist/src/signing/error.d.ts.map +1 -0
  347. package/dist/src/signing/error.js +25 -0
  348. package/dist/src/signing/execute.d.ts +17 -0
  349. package/dist/src/signing/execute.d.ts.map +1 -0
  350. package/dist/src/signing/execute.js +138 -0
  351. package/dist/src/signing/intent-plans/assemble.d.ts +15 -0
  352. package/dist/src/signing/intent-plans/assemble.d.ts.map +1 -0
  353. package/dist/src/signing/intent-plans/assemble.js +96 -0
  354. package/dist/src/signing/intent-plans/independent.d.ts +48 -0
  355. package/dist/src/signing/intent-plans/independent.d.ts.map +1 -0
  356. package/dist/src/signing/intent-plans/independent.js +150 -0
  357. package/dist/src/signing/intent-plans/plan.d.ts +14 -0
  358. package/dist/src/signing/intent-plans/plan.d.ts.map +1 -0
  359. package/dist/src/signing/intent-plans/plan.js +187 -0
  360. package/dist/src/signing/intent-plans/types.d.ts +63 -0
  361. package/dist/src/signing/intent-plans/types.d.ts.map +1 -0
  362. package/dist/src/signing/intent-plans/types.js +1 -0
  363. package/dist/src/signing/message.d.ts +28 -0
  364. package/dist/src/signing/message.d.ts.map +1 -0
  365. package/dist/src/signing/message.js +90 -0
  366. package/dist/src/signing/passkeys.d.ts +28 -0
  367. package/dist/src/signing/passkeys.d.ts.map +1 -0
  368. package/dist/src/signing/passkeys.js +17 -0
  369. package/dist/src/signing/plan.d.ts +35 -0
  370. package/dist/src/signing/plan.d.ts.map +1 -0
  371. package/dist/src/signing/plan.js +377 -0
  372. package/dist/src/signing/protocols/erc6492.d.ts +11 -0
  373. package/dist/src/signing/protocols/erc6492.d.ts.map +1 -0
  374. package/dist/src/signing/protocols/erc6492.js +24 -0
  375. package/dist/src/signing/protocols/erc7739.d.ts +17 -0
  376. package/dist/src/signing/protocols/erc7739.d.ts.map +1 -0
  377. package/dist/src/signing/protocols/erc7739.js +84 -0
  378. package/dist/src/signing/session-enable.d.ts +35 -0
  379. package/dist/src/signing/session-enable.d.ts.map +1 -0
  380. package/dist/src/signing/session-enable.js +62 -0
  381. package/dist/src/signing/signers/compatibility.d.ts +4 -0
  382. package/dist/src/signing/signers/compatibility.d.ts.map +1 -0
  383. package/dist/src/signing/signers/compatibility.js +51 -0
  384. package/dist/src/signing/signers/ecdsa.d.ts +14 -0
  385. package/dist/src/signing/signers/ecdsa.d.ts.map +1 -0
  386. package/dist/src/signing/signers/ecdsa.js +54 -0
  387. package/dist/src/signing/signers/registry.d.ts +7 -0
  388. package/dist/src/signing/signers/registry.d.ts.map +1 -0
  389. package/dist/src/signing/signers/registry.js +33 -0
  390. package/dist/src/signing/signers/types.d.ts +16 -0
  391. package/dist/src/signing/signers/types.d.ts.map +1 -0
  392. package/dist/src/signing/signers/types.js +1 -0
  393. package/dist/src/signing/signers/wallet-chain.d.ts +9 -0
  394. package/dist/src/signing/signers/wallet-chain.d.ts.map +1 -0
  395. package/dist/src/signing/signers/wallet-chain.js +15 -0
  396. package/dist/src/signing/signers/webauthn.d.ts +11 -0
  397. package/dist/src/signing/signers/webauthn.d.ts.map +1 -0
  398. package/dist/src/signing/signers/webauthn.js +14 -0
  399. package/dist/src/signing/typed-data.d.ts +39 -0
  400. package/dist/src/signing/typed-data.d.ts.map +1 -0
  401. package/dist/src/signing/typed-data.js +135 -0
  402. package/dist/src/signing/types.d.ts +346 -0
  403. package/dist/src/signing/types.d.ts.map +1 -0
  404. package/dist/src/signing/types.js +1 -0
  405. package/dist/src/signing/user-operation.d.ts +23 -0
  406. package/dist/src/signing/user-operation.d.ts.map +1 -0
  407. package/dist/src/signing/user-operation.js +61 -0
  408. package/dist/src/smart-sessions/index.d.ts +13 -3
  409. package/dist/src/smart-sessions/index.d.ts.map +1 -1
  410. package/dist/src/smart-sessions/index.js +44 -6
  411. package/dist/src/transactions/intents/account.d.ts +15 -0
  412. package/dist/src/transactions/intents/account.d.ts.map +1 -0
  413. package/dist/src/transactions/intents/account.js +48 -0
  414. package/dist/src/transactions/intents/compatibility.d.ts +4 -0
  415. package/dist/src/transactions/intents/compatibility.d.ts.map +1 -0
  416. package/dist/src/transactions/intents/compatibility.js +19 -0
  417. package/dist/src/transactions/intents/normalize.d.ts +5 -0
  418. package/dist/src/transactions/intents/normalize.d.ts.map +1 -0
  419. package/dist/src/transactions/intents/normalize.js +48 -0
  420. package/dist/src/transactions/intents/prepare.d.ts +7 -0
  421. package/dist/src/transactions/intents/prepare.d.ts.map +1 -0
  422. package/dist/src/transactions/intents/prepare.js +249 -0
  423. package/dist/src/transactions/intents/quotes.d.ts +3 -0
  424. package/dist/src/transactions/intents/quotes.d.ts.map +1 -0
  425. package/dist/src/transactions/intents/quotes.js +11 -0
  426. package/dist/src/transactions/intents/request.d.ts +11 -0
  427. package/dist/src/transactions/intents/request.d.ts.map +1 -0
  428. package/dist/src/transactions/intents/request.js +55 -0
  429. package/dist/src/transactions/intents/send.d.ts +3 -0
  430. package/dist/src/transactions/intents/send.d.ts.map +1 -0
  431. package/dist/src/transactions/intents/send.js +22 -0
  432. package/dist/src/transactions/intents/session-signing.d.ts +7 -0
  433. package/dist/src/transactions/intents/session-signing.d.ts.map +1 -0
  434. package/dist/src/transactions/intents/session-signing.js +363 -0
  435. package/dist/src/transactions/intents/sessions.d.ts +17 -0
  436. package/dist/src/transactions/intents/sessions.d.ts.map +1 -0
  437. package/dist/src/transactions/intents/sessions.js +85 -0
  438. package/dist/src/transactions/intents/sign-transaction.d.ts +10 -0
  439. package/dist/src/transactions/intents/sign-transaction.d.ts.map +1 -0
  440. package/dist/src/transactions/intents/sign-transaction.js +386 -0
  441. package/dist/src/transactions/intents/split.d.ts +13 -0
  442. package/dist/src/transactions/intents/split.d.ts.map +1 -0
  443. package/dist/src/transactions/intents/split.js +3 -0
  444. package/dist/src/transactions/intents/status-policy.d.ts +13 -0
  445. package/dist/src/transactions/intents/status-policy.d.ts.map +1 -0
  446. package/dist/src/transactions/intents/status-policy.js +39 -0
  447. package/dist/src/transactions/intents/status.d.ts +4 -0
  448. package/dist/src/transactions/intents/status.d.ts.map +1 -0
  449. package/dist/src/transactions/intents/status.js +50 -0
  450. package/dist/src/transactions/intents/submit.d.ts +3 -0
  451. package/dist/src/transactions/intents/submit.d.ts.map +1 -0
  452. package/dist/src/transactions/intents/submit.js +32 -0
  453. package/dist/src/transactions/intents/types.d.ts +136 -0
  454. package/dist/src/transactions/intents/types.d.ts.map +1 -0
  455. package/dist/src/transactions/intents/types.js +1 -0
  456. package/dist/src/transactions/user-operations/hash.d.ts +5 -0
  457. package/dist/src/transactions/user-operations/hash.d.ts.map +1 -0
  458. package/dist/src/transactions/user-operations/hash.js +9 -0
  459. package/dist/src/transactions/user-operations/nonce.d.ts +18 -0
  460. package/dist/src/transactions/user-operations/nonce.d.ts.map +1 -0
  461. package/dist/src/transactions/user-operations/nonce.js +43 -0
  462. package/dist/src/transactions/user-operations/prepare.d.ts +12 -0
  463. package/dist/src/transactions/user-operations/prepare.d.ts.map +1 -0
  464. package/dist/src/transactions/user-operations/prepare.js +138 -0
  465. package/dist/src/transactions/user-operations/reconstruct.d.ts +28 -0
  466. package/dist/src/transactions/user-operations/reconstruct.d.ts.map +1 -0
  467. package/dist/src/transactions/user-operations/reconstruct.js +52 -0
  468. package/dist/src/transactions/user-operations/send.d.ts +3 -0
  469. package/dist/src/transactions/user-operations/send.d.ts.map +1 -0
  470. package/dist/src/transactions/user-operations/send.js +8 -0
  471. package/dist/src/transactions/user-operations/sign.d.ts +3 -0
  472. package/dist/src/transactions/user-operations/sign.d.ts.map +1 -0
  473. package/dist/src/transactions/user-operations/sign.js +14 -0
  474. package/dist/src/transactions/user-operations/status.d.ts +4 -0
  475. package/dist/src/transactions/user-operations/status.d.ts.map +1 -0
  476. package/dist/src/transactions/user-operations/status.js +37 -0
  477. package/dist/src/transactions/user-operations/submit.d.ts +3 -0
  478. package/dist/src/transactions/user-operations/submit.d.ts.map +1 -0
  479. package/dist/src/transactions/user-operations/submit.js +8 -0
  480. package/dist/src/transactions/user-operations/types.d.ts +68 -0
  481. package/dist/src/transactions/user-operations/types.d.ts.map +1 -0
  482. package/dist/src/transactions/user-operations/types.js +1 -0
  483. package/dist/src/transactions/user-operations/validator-account.d.ts +5 -0
  484. package/dist/src/transactions/user-operations/validator-account.d.ts.map +1 -0
  485. package/dist/src/transactions/user-operations/validator-account.js +26 -0
  486. package/dist/src/utils/index.d.ts +9 -4
  487. package/dist/src/utils/index.d.ts.map +1 -1
  488. package/dist/src/utils/index.js +54 -51
  489. package/package.json +3 -4
  490. package/dist/src/accounts/hca.d.ts +0 -25
  491. package/dist/src/accounts/hca.d.ts.map +0 -1
  492. package/dist/src/accounts/hca.js +0 -148
  493. package/dist/src/accounts/index.d.ts +0 -64
  494. package/dist/src/accounts/index.d.ts.map +0 -1
  495. package/dist/src/accounts/index.js +0 -680
  496. package/dist/src/accounts/json-rpc/index.d.ts +0 -5
  497. package/dist/src/accounts/json-rpc/index.d.ts.map +0 -1
  498. package/dist/src/accounts/json-rpc/index.js +0 -19
  499. package/dist/src/accounts/json-rpc/providers.d.ts +0 -5
  500. package/dist/src/accounts/json-rpc/providers.d.ts.map +0 -1
  501. package/dist/src/accounts/json-rpc/providers.js +0 -16
  502. package/dist/src/accounts/kernel.d.ts +0 -26
  503. package/dist/src/accounts/kernel.d.ts.map +0 -1
  504. package/dist/src/accounts/kernel.js +0 -265
  505. package/dist/src/accounts/nexus.d.ts +0 -34
  506. package/dist/src/accounts/nexus.d.ts.map +0 -1
  507. package/dist/src/accounts/nexus.js +0 -469
  508. package/dist/src/accounts/safe.d.ts +0 -32
  509. package/dist/src/accounts/safe.d.ts.map +0 -1
  510. package/dist/src/accounts/safe.js +0 -337
  511. package/dist/src/accounts/signing/common.d.ts +0 -38
  512. package/dist/src/accounts/signing/common.d.ts.map +0 -1
  513. package/dist/src/accounts/signing/common.js +0 -186
  514. package/dist/src/accounts/signing/message.d.ts +0 -7
  515. package/dist/src/accounts/signing/message.d.ts.map +0 -1
  516. package/dist/src/accounts/signing/message.js +0 -42
  517. package/dist/src/accounts/signing/passkeys.d.ts +0 -36
  518. package/dist/src/accounts/signing/passkeys.d.ts.map +0 -1
  519. package/dist/src/accounts/signing/passkeys.js +0 -119
  520. package/dist/src/accounts/signing/typedData.d.ts +0 -5
  521. package/dist/src/accounts/signing/typedData.d.ts.map +0 -1
  522. package/dist/src/accounts/signing/typedData.js +0 -30
  523. package/dist/src/accounts/startale.d.ts +0 -25
  524. package/dist/src/accounts/startale.d.ts.map +0 -1
  525. package/dist/src/accounts/startale.js +0 -188
  526. package/dist/src/accounts/utils.d.ts +0 -33
  527. package/dist/src/accounts/utils.d.ts.map +0 -1
  528. package/dist/src/accounts/utils.js +0 -202
  529. package/dist/src/auth/provider.d.ts +0 -7
  530. package/dist/src/auth/provider.d.ts.map +0 -1
  531. package/dist/src/auth/provider.js +0 -38
  532. package/dist/src/execution/compact.d.ts +0 -5
  533. package/dist/src/execution/compact.d.ts.map +0 -1
  534. package/dist/src/execution/compact.js +0 -4
  535. package/dist/src/execution/error.d.ts.map +0 -1
  536. package/dist/src/execution/index.d.ts +0 -42
  537. package/dist/src/execution/index.d.ts.map +0 -1
  538. package/dist/src/execution/index.js +0 -187
  539. package/dist/src/execution/utils.d.ts +0 -167
  540. package/dist/src/execution/utils.d.ts.map +0 -1
  541. package/dist/src/execution/utils.js +0 -1606
  542. package/dist/src/modules/abi/smart-sessions.d.ts +0 -104
  543. package/dist/src/modules/abi/smart-sessions.d.ts.map +0 -1
  544. package/dist/src/modules/abi/smart-sessions.js +0 -128
  545. package/dist/src/modules/chain-abstraction.d.ts +0 -5
  546. package/dist/src/modules/chain-abstraction.d.ts.map +0 -1
  547. package/dist/src/modules/chain-abstraction.js +0 -3
  548. package/dist/src/modules/common.d.ts +0 -30
  549. package/dist/src/modules/common.d.ts.map +0 -1
  550. package/dist/src/modules/common.js +0 -30
  551. package/dist/src/modules/index.d.ts +0 -11
  552. package/dist/src/modules/index.d.ts.map +0 -1
  553. package/dist/src/modules/index.js +0 -85
  554. package/dist/src/modules/legacy.d.ts +0 -10
  555. package/dist/src/modules/legacy.d.ts.map +0 -1
  556. package/dist/src/modules/legacy.js +0 -62
  557. package/dist/src/modules/read.d.ts +0 -11
  558. package/dist/src/modules/read.d.ts.map +0 -1
  559. package/dist/src/modules/read.js +0 -219
  560. package/dist/src/modules/validators/core.d.ts +0 -31
  561. package/dist/src/modules/validators/core.d.ts.map +0 -1
  562. package/dist/src/modules/validators/core.js +0 -269
  563. package/dist/src/modules/validators/cross-chain-permits.d.ts +0 -21
  564. package/dist/src/modules/validators/cross-chain-permits.d.ts.map +0 -1
  565. package/dist/src/modules/validators/cross-chain-permits.js +0 -111
  566. package/dist/src/modules/validators/index.d.ts +0 -4
  567. package/dist/src/modules/validators/index.d.ts.map +0 -1
  568. package/dist/src/modules/validators/index.js +0 -3
  569. package/dist/src/modules/validators/smart-sessions.d.ts +0 -225
  570. package/dist/src/modules/validators/smart-sessions.d.ts.map +0 -1
  571. package/dist/src/modules/validators/smart-sessions.js +0 -1189
  572. package/dist/src/orchestrator/caip2.d.ts +0 -20
  573. package/dist/src/orchestrator/caip2.d.ts.map +0 -1
  574. package/dist/src/orchestrator/caip2.js +0 -49
  575. package/dist/src/orchestrator/client.d.ts +0 -29
  576. package/dist/src/orchestrator/client.d.ts.map +0 -1
  577. package/dist/src/orchestrator/client.js +0 -290
  578. package/dist/src/orchestrator/consts.d.ts +0 -6
  579. package/dist/src/orchestrator/consts.d.ts.map +0 -1
  580. package/dist/src/orchestrator/consts.js +0 -5
  581. package/dist/src/orchestrator/destinations.d.ts.map +0 -1
  582. package/dist/src/orchestrator/destinations.js +0 -59
  583. package/dist/src/orchestrator/error.d.ts.map +0 -1
  584. package/dist/src/orchestrator/index.d.ts +0 -13
  585. package/dist/src/orchestrator/index.d.ts.map +0 -1
  586. package/dist/src/orchestrator/index.js +0 -10
  587. package/dist/src/orchestrator/registry.d.ts +0 -17
  588. package/dist/src/orchestrator/registry.d.ts.map +0 -1
  589. package/dist/src/orchestrator/registry.js +0 -103
  590. package/dist/src/orchestrator/types.d.ts.map +0 -1
  591. package/dist/src/orchestrator/utils.d.ts +0 -3
  592. package/dist/src/orchestrator/utils.d.ts.map +0 -1
  593. package/dist/src/orchestrator/utils.js +0 -22
  594. package/dist/src/orchestrator/wire.d.ts +0 -30
  595. package/dist/src/orchestrator/wire.d.ts.map +0 -1
  596. package/dist/src/orchestrator/wire.gen.d.ts.map +0 -1
  597. package/dist/src/types.d.ts.map +0 -1
  598. package/dist/src/utils/walletClient.d.ts +0 -34
  599. package/dist/src/utils/walletClient.d.ts.map +0 -1
  600. package/dist/src/utils/walletClient.js +0 -117
  601. /package/dist/src/{orchestrator/wire.gen.js → accounts/adapter.js} +0 -0
  602. /package/dist/src/{types.js → accounts/types.js} +0 -0
  603. /package/dist/src/{orchestrator/wire.js → api/compose-types.js} +0 -0
@@ -0,0 +1,96 @@
1
+ import { encodePlannedValidatorContribution } from '../contribution.js';
2
+ import { runSigningStep } from '../error.js';
3
+ import { wrapErc7739TypedDataSignature } from '../protocols/erc7739.js';
4
+ export function assembleIntentStage(input, context) {
5
+ const outputs = {};
6
+ for (const artifact of input.stagePlan.artifacts) {
7
+ if (artifact.input.kind === 'session-claim-pair')
8
+ continue;
9
+ outputs[artifact.id] =
10
+ artifact.input.kind === 'reuse-artifact'
11
+ ? resolveReusedArtifact(artifact.id, artifact.input, input.priorOutputs)
12
+ : assembleSignedArtifact(input, artifact, context);
13
+ }
14
+ for (const artifact of input.stagePlan.artifacts) {
15
+ if (artifact.input.kind !== 'session-claim-pair')
16
+ continue;
17
+ const preClaimSig = outputs[artifact.input.preClaimArtifactId];
18
+ const notarizedClaimSig = outputs[artifact.input.notarizedClaimArtifactId];
19
+ if (typeof preClaimSig !== 'string' ||
20
+ typeof notarizedClaimSig !== 'string') {
21
+ throw new Error(`Session claim pair ${artifact.id} is incomplete`);
22
+ }
23
+ outputs[artifact.id] = { preClaimSig, notarizedClaimSig };
24
+ }
25
+ return outputs;
26
+ }
27
+ export function assembleIntentValidatorArtifact(input) {
28
+ if (input.artifact.erc6492.kind !== 'none') {
29
+ throw new Error('ERC-6492 is forbidden for intent signatures');
30
+ }
31
+ const step = (failureStage, operation) => input.diagnostics
32
+ ? runSigningStep({
33
+ plan: input.diagnostics.plan,
34
+ failureStage,
35
+ stageId: input.diagnostics.stageId,
36
+ artifactId: input.artifact.id,
37
+ usage: input.artifact.usage,
38
+ operation,
39
+ })
40
+ : operation();
41
+ let contribution = input.validatorContribution;
42
+ const erc7739 = input.artifact.erc7739;
43
+ if (erc7739.kind === 'wrap-typed-data') {
44
+ contribution = step('protocol-operation', () => wrapErc7739TypedDataSignature({
45
+ typedData: erc7739.typedData,
46
+ signature: contribution,
47
+ }));
48
+ }
49
+ return input.artifact.accountEnvelope.kind === 'none'
50
+ ? contribution
51
+ : step('account-envelope', () => input.context.accountAdapter.encodeSignatureEnvelope({
52
+ account: input.context.account,
53
+ envelope: input.artifact.accountEnvelope,
54
+ validatorContribution: contribution,
55
+ purpose: 'intent',
56
+ }));
57
+ }
58
+ function assembleSignedArtifact(input, artifact, context) {
59
+ if (artifact.validatorCodec.kind === 'none') {
60
+ if (artifact.input.kind !== 'task-results' ||
61
+ artifact.input.taskIds.length !== 1) {
62
+ throw new Error(`Direct artifact ${artifact.id} requires one task`);
63
+ }
64
+ const result = input.results[artifact.input.taskIds[0]];
65
+ if (result?.kind !== 'ecdsa-signature') {
66
+ throw new Error(`Direct artifact ${artifact.id} requires an ECDSA result`);
67
+ }
68
+ return result.signature;
69
+ }
70
+ return assembleIntentValidatorArtifact({
71
+ artifact,
72
+ context,
73
+ validatorContribution: runSigningStep({
74
+ plan: input.plan,
75
+ failureStage: 'validator-encode',
76
+ stageId: input.stage.stageId,
77
+ artifactId: artifact.id,
78
+ usage: artifact.usage,
79
+ operation: () => encodePlannedValidatorContribution({
80
+ artifact,
81
+ stage: input.stage,
82
+ results: input.results,
83
+ }),
84
+ }),
85
+ diagnostics: { plan: input.plan, stageId: input.stage.stageId },
86
+ });
87
+ }
88
+ function resolveReusedArtifact(artifactId, route, priorOutputs) {
89
+ const source = priorOutputs[`${route.stageId}:${route.artifactId}`];
90
+ if (typeof source === 'string')
91
+ return source;
92
+ if (source && route.selection === 'pre-claim' && 'preClaimSig' in source) {
93
+ return source.preClaimSig;
94
+ }
95
+ throw new Error(`Reused artifact ${route.artifactId} is unavailable for ${artifactId}`);
96
+ }
@@ -0,0 +1,48 @@
1
+ import type { Account, Address, Hex } from 'viem';
2
+ import type { WebAuthnAccount } from 'viem/account-abstraction';
3
+ import type { SigningContext } from '../context.js';
4
+ import type { ArtifactAssemblyPlan } from '../types.js';
5
+ export interface IndependentOwnerDescriptor {
6
+ readonly ownerId: string;
7
+ readonly identity: Address | Hex;
8
+ readonly kind: 'ecdsa' | 'webauthn';
9
+ readonly factorId?: string;
10
+ readonly factorPublicId?: number | Hex;
11
+ }
12
+ export type IndependentOwnerSignatureData = {
13
+ readonly kind: 'ecdsa';
14
+ readonly signer: Address;
15
+ readonly origin: readonly Hex[];
16
+ } | {
17
+ readonly kind: 'passkey';
18
+ readonly publicKey: Hex;
19
+ readonly origin: readonly {
20
+ readonly webauthn: {
21
+ readonly authenticatorData: Hex;
22
+ readonly challengeIndex?: number;
23
+ readonly clientDataJSON: string;
24
+ readonly typeIndex?: number;
25
+ readonly userVerificationRequired?: boolean;
26
+ };
27
+ readonly signature: Hex;
28
+ }[];
29
+ };
30
+ export type IndependentOwnerSignature = ({
31
+ readonly intentId: string;
32
+ } & IndependentOwnerSignatureData) | {
33
+ readonly intentId: string;
34
+ readonly kind: 'multi-factor';
35
+ readonly validatorId: number | Hex;
36
+ readonly signature: IndependentOwnerSignatureData;
37
+ };
38
+ export declare function assembleIndependentIntentArtifact(input: {
39
+ readonly intentId: string;
40
+ readonly originIndex: number;
41
+ readonly originCount: number;
42
+ readonly signatures: readonly IndependentOwnerSignature[];
43
+ readonly owners: readonly IndependentOwnerDescriptor[];
44
+ readonly artifact: ArtifactAssemblyPlan;
45
+ readonly context: SigningContext;
46
+ }): Hex;
47
+ export type IndependentSigner = Account | WebAuthnAccount;
48
+ //# sourceMappingURL=independent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"independent.d.ts","sourceRoot":"","sources":["../../../../signing/intent-plans/independent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAY/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAGpD,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,OAAO,GAAG,GAAG,CAAA;IAChC,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,CAAA;IACnC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACvC;AAED,MAAM,MAAM,6BAA6B,GACrC;IACE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,EAAE,CAAA;CAChC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,SAAS,EAAE,GAAG,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,SAAS;QACxB,QAAQ,CAAC,QAAQ,EAAE;YACjB,QAAQ,CAAC,iBAAiB,EAAE,GAAG,CAAA;YAC/B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;YAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;YAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;YAC3B,QAAQ,CAAC,wBAAwB,CAAC,EAAE,OAAO,CAAA;SAC5C,CAAA;QACD,QAAQ,CAAC,SAAS,EAAE,GAAG,CAAA;KACxB,EAAE,CAAA;CACJ,CAAA;AAEL,MAAM,MAAM,yBAAyB,GACjC,CAAC;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,6BAA6B,CAAC,GAC/D;IACE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,GAAG,CAAA;IAClC,QAAQ,CAAC,SAAS,EAAE,6BAA6B,CAAA;CAClD,CAAA;AAEL,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IACvD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,UAAU,EAAE,SAAS,yBAAyB,EAAE,CAAA;IACzD,QAAQ,CAAC,MAAM,EAAE,SAAS,0BAA0B,EAAE,CAAA;IACtD,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAA;IACvC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAA;CACjC,GAAG,GAAG,CA2BN;AAoLD,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,eAAe,CAAA"}
@@ -0,0 +1,150 @@
1
+ import { InsufficientOwnerSignaturesError, MismatchedOwnerSignaturesError, UnknownOwnerError, } from '../../errors/execution.js';
2
+ import { encodeValidatorContribution } from '../../modules/validators/contribution.js';
3
+ import { encodeValidatorId } from '../../modules/validators/multi-factor.js';
4
+ import { assembleIntentValidatorArtifact } from './assemble.js';
5
+ export function assembleIndependentIntentArtifact(input) {
6
+ if (input.artifact.validatorCodec.kind === 'none') {
7
+ throw new Error('Independent signing requires a validator codec');
8
+ }
9
+ if (input.artifact.validatorCodec.kind === 'smart-session-state') {
10
+ throw new Error('Smart Session state cannot be signed independently');
11
+ }
12
+ const contributions = importOwnerContributions(input);
13
+ const codec = input.artifact.validatorCodec;
14
+ if (codec.kind === 'smart-session') {
15
+ throw new Error('Smart Session state cannot be signed independently');
16
+ }
17
+ const validatorContribution = input.artifact.validatorFactors
18
+ ? encodeIndependentFactors(codec, input.artifact.validatorFactors, contributions)
19
+ : encodeAtomicContributions(codec, contributions.map(({ contribution }) => contribution));
20
+ return assembleIntentValidatorArtifact({
21
+ artifact: input.artifact,
22
+ context: input.context,
23
+ validatorContribution,
24
+ });
25
+ }
26
+ function importOwnerContributions(input) {
27
+ const seen = new Set();
28
+ return input.signatures.map((value) => {
29
+ if (value.intentId !== input.intentId) {
30
+ throw new MismatchedOwnerSignaturesError({
31
+ context: { intentIds: [input.intentId, value.intentId] },
32
+ });
33
+ }
34
+ const signature = value.kind === 'multi-factor' ? value.signature : value;
35
+ if (signature.origin.length !== input.originCount) {
36
+ throw new MismatchedOwnerSignaturesError({
37
+ context: { expectedOriginCount: input.originCount },
38
+ });
39
+ }
40
+ const identity = signature.kind === 'ecdsa'
41
+ ? signature.signer.toLowerCase()
42
+ : signature.publicKey.toLowerCase();
43
+ const owner = input.owners.find((candidate) => candidate.identity.toLowerCase() === identity &&
44
+ (value.kind === 'multi-factor'
45
+ ? candidate.factorPublicId !== undefined &&
46
+ sameValidatorId(candidate.factorPublicId, value.validatorId)
47
+ : candidate.factorId === undefined));
48
+ if (!owner) {
49
+ const matchingIdentity = input.owners.filter((candidate) => candidate.identity.toLowerCase() === identity);
50
+ if (matchingIdentity.length > 0 &&
51
+ (value.kind === 'multi-factor' ||
52
+ matchingIdentity.some(({ factorId }) => factorId !== undefined))) {
53
+ throw new MismatchedOwnerSignaturesError({
54
+ context: value.kind === 'multi-factor'
55
+ ? { validatorId: value.validatorId }
56
+ : { expectedKind: 'multi-factor' },
57
+ });
58
+ }
59
+ throw new UnknownOwnerError({
60
+ context: signature.kind === 'passkey'
61
+ ? { publicKey: signature.publicKey }
62
+ : { signer: signature.signer },
63
+ });
64
+ }
65
+ const contributionKey = `${owner.factorId ?? 'root'}:${identity}`;
66
+ if (seen.has(contributionKey))
67
+ throw new MismatchedOwnerSignaturesError({
68
+ context: { duplicateOwner: identity },
69
+ });
70
+ seen.add(contributionKey);
71
+ if ((signature.kind === 'ecdsa' && owner.kind !== 'ecdsa') ||
72
+ (signature.kind === 'passkey' && owner.kind !== 'webauthn')) {
73
+ throw new MismatchedOwnerSignaturesError({
74
+ context: { owner: identity },
75
+ });
76
+ }
77
+ const contribution = signature.kind === 'ecdsa'
78
+ ? {
79
+ kind: 'ecdsa',
80
+ ownerId: owner.ownerId,
81
+ signature: signature.origin[input.originIndex],
82
+ encoding: 'validator-contribution',
83
+ }
84
+ : {
85
+ kind: 'webauthn',
86
+ ownerId: owner.ownerId,
87
+ publicKey: signature.publicKey,
88
+ signature: signature.origin[input.originIndex].signature,
89
+ authenticatorData: signature.origin[input.originIndex].webauthn.authenticatorData,
90
+ clientDataJSON: signature.origin[input.originIndex].webauthn.clientDataJSON,
91
+ challengeIndex: signature.origin[input.originIndex].webauthn.challengeIndex ?? 0,
92
+ typeIndex: signature.origin[input.originIndex].webauthn.typeIndex ?? 0,
93
+ userVerificationRequired: signature.origin[input.originIndex].webauthn
94
+ .userVerificationRequired ?? false,
95
+ };
96
+ return {
97
+ ...(owner.factorId ? { factorId: owner.factorId } : {}),
98
+ contribution,
99
+ };
100
+ });
101
+ }
102
+ function sameValidatorId(left, right) {
103
+ try {
104
+ return (encodeValidatorId(left).toLowerCase() ===
105
+ encodeValidatorId(right).toLowerCase());
106
+ }
107
+ catch {
108
+ return false;
109
+ }
110
+ }
111
+ function encodeIndependentFactors(codec, factors, contributions) {
112
+ const factorContributions = factors.flatMap((factor) => {
113
+ const selected = contributions.flatMap((entry) => entry.factorId === factor.id ? [entry.contribution] : []);
114
+ if (selected.length === 0)
115
+ return [];
116
+ if (selected.length < factor.codec.threshold) {
117
+ throw new InsufficientOwnerSignaturesError({
118
+ required: factor.codec.threshold,
119
+ provided: selected.length,
120
+ validatorId: factor.publicId,
121
+ });
122
+ }
123
+ return [
124
+ {
125
+ kind: 'factor',
126
+ factorId: factor.id,
127
+ publicId: factor.publicId,
128
+ validator: factor.validator,
129
+ contribution: encodeValidatorContribution(factor.codec, selected),
130
+ },
131
+ ];
132
+ });
133
+ if (factorContributions.length < codec.threshold) {
134
+ throw new InsufficientOwnerSignaturesError({
135
+ required: codec.threshold,
136
+ provided: factorContributions.length,
137
+ });
138
+ }
139
+ return encodeValidatorContribution(codec, factorContributions);
140
+ }
141
+ function encodeAtomicContributions(codec, contributions) {
142
+ if (codec.kind === 'ordered-threshold' &&
143
+ contributions.length < codec.threshold) {
144
+ throw new InsufficientOwnerSignaturesError({
145
+ required: codec.threshold,
146
+ provided: contributions.length,
147
+ });
148
+ }
149
+ return encodeValidatorContribution(codec, contributions);
150
+ }
@@ -0,0 +1,14 @@
1
+ import type { SigningContext } from '../context.js';
2
+ import type { SigningCheckpointPort, SigningPlan, SigningTranscript } from '../types.js';
3
+ import type { IndependentSigningProjection, IntentSigningPlanCreationInput } from './types.js';
4
+ export declare function createIntentSigningPlan(input: IntentSigningPlanCreationInput): SigningPlan;
5
+ export declare function projectIndependentSigning(plan: SigningPlan, signerIds: readonly string[], ownerIds?: readonly string[]): {
6
+ readonly plan: SigningPlan;
7
+ readonly projection: IndependentSigningProjection;
8
+ };
9
+ export declare function executeIntentSigning(input: {
10
+ readonly planInput: IntentSigningPlanCreationInput;
11
+ readonly context: SigningContext;
12
+ readonly checkpoints: SigningCheckpointPort;
13
+ }): Promise<SigningTranscript>;
14
+ //# sourceMappingURL=plan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../../../signing/intent-plans/plan.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAEhD,OAAO,KAAK,EACV,qBAAqB,EACrB,WAAW,EACX,iBAAiB,EAClB,MAAM,UAAU,CAAA;AAEjB,OAAO,KAAK,EACV,4BAA4B,EAC5B,8BAA8B,EAC/B,MAAM,SAAS,CAAA;AAEhB,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,8BAA8B,GACpC,WAAW,CAoEb;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,GAC3B;IACD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,4BAA4B,CAAA;CAClD,CA8DA;AAoFD,wBAAsB,oBAAoB,CAAC,KAAK,EAAE;IAChD,QAAQ,CAAC,SAAS,EAAE,8BAA8B,CAAA;IAClD,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAA;IAChC,QAAQ,CAAC,WAAW,EAAE,qBAAqB,CAAA;CAC5C,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAS7B"}
@@ -0,0 +1,187 @@
1
+ import { executeSigningPlan } from '../execute.js';
2
+ import { assembleIntentStage } from './assemble.js';
3
+ export function createIntentSigningPlan(input) {
4
+ const targetArtifact = input.intent.target
5
+ ? requireSingleArtifact(input.intent.artifacts.filter(({ usage, payloadId }) => usage === 'intent-target' && payloadId === input.intent.target?.id), 'target')
6
+ : undefined;
7
+ const plan = {
8
+ version: 1,
9
+ kind: 'intent-full',
10
+ payload: { kind: 'intent', id: input.intent.id },
11
+ configuredTopology: input.intent.configuredTopology,
12
+ effectiveSelection: input.intent.effectiveSelection,
13
+ preparedIntent: {
14
+ signatureMode: input.intent.preparedSignatureMode,
15
+ artifacts: input.intent.artifacts.map(({ id, usage, payloadId, cardinality, shape }) => ({
16
+ id,
17
+ usage,
18
+ payloadId,
19
+ cardinality,
20
+ shape,
21
+ })),
22
+ ...(input.intent.destination
23
+ ? {
24
+ destination: input.intent.destination.mode === 'sign'
25
+ ? {
26
+ mode: 'sign',
27
+ artifactId: input.intent.destination.artifactId,
28
+ payloadId: input.intent.destination.payload.id,
29
+ }
30
+ : input.intent.destination,
31
+ }
32
+ : {}),
33
+ ...(targetArtifact
34
+ ? {
35
+ target: {
36
+ artifactId: targetArtifact.id,
37
+ payloadId: targetArtifact.payloadId,
38
+ },
39
+ }
40
+ : {}),
41
+ },
42
+ stages: input.stages.map((stage) => ({
43
+ id: stage.id,
44
+ checkpoint: stage.checkpoint,
45
+ priorOutputs: stage.priorOutputs,
46
+ taskTemplates: stage.tasks,
47
+ schedule: stage.schedule,
48
+ artifacts: stage.artifacts.map((artifact) => ({
49
+ ...artifact,
50
+ stageId: stage.id,
51
+ })),
52
+ })),
53
+ publicOutputs: input.intent.artifacts.map((artifact) => ({
54
+ id: artifact.id,
55
+ source: { kind: 'artifact', artifactId: artifact.id },
56
+ exposedForIndependentSigning: artifact.exposedForIndependentSigning,
57
+ })),
58
+ };
59
+ assertPreparedMode(input);
60
+ assertIntentRoutes(input, plan);
61
+ return plan;
62
+ }
63
+ export function projectIndependentSigning(plan, signerIds, ownerIds) {
64
+ if (plan.kind !== 'intent-full') {
65
+ throw new Error('Independent signing requires a full intent plan');
66
+ }
67
+ const selected = new Set(signerIds);
68
+ const selectedOwners = ownerIds ? new Set(ownerIds) : undefined;
69
+ if (selected.size !== signerIds.length) {
70
+ throw new Error('Independent signer selection contains duplicates');
71
+ }
72
+ for (const signerId of selected) {
73
+ if (!plan.effectiveSelection.signerIds.includes(signerId)) {
74
+ throw new Error(`Independent signer ${signerId} is not in the plan`);
75
+ }
76
+ }
77
+ const stages = plan.stages.map((stage) => {
78
+ const taskTemplates = stage.taskTemplates.filter((task) => selected.has(task.signer.id) &&
79
+ (!selectedOwners ||
80
+ [...selectedOwners].some((ownerId) => task.id.includes(ownerId))));
81
+ const taskIds = new Set(taskTemplates.map(({ id }) => id));
82
+ return {
83
+ ...stage,
84
+ priorOutputs: [],
85
+ taskTemplates,
86
+ schedule: stage.schedule
87
+ .map((batch) => ({
88
+ ...batch,
89
+ taskIds: batch.taskIds.filter((taskId) => taskIds.has(taskId)),
90
+ }))
91
+ .filter(({ taskIds: ids }) => ids.length > 0),
92
+ artifacts: [],
93
+ };
94
+ });
95
+ const projected = {
96
+ ...plan,
97
+ kind: 'intent-independent',
98
+ effectiveSelection: {
99
+ ...plan.effectiveSelection,
100
+ signerIds: plan.effectiveSelection.signerIds.filter((id) => selected.has(id)),
101
+ },
102
+ stages,
103
+ publicOutputs: stages.flatMap((stage) => stage.taskTemplates.map((task) => ({
104
+ id: `${task.id}-contribution`,
105
+ source: { kind: 'task-result', taskId: task.id },
106
+ exposedForIndependentSigning: true,
107
+ }))),
108
+ };
109
+ return {
110
+ plan: projected,
111
+ projection: {
112
+ planKind: 'intent-independent',
113
+ sourceIntentId: plan.payload.id,
114
+ exposedArtifactIds: projected.publicOutputs.map(({ id }) => id),
115
+ selectedSignerIds: [...signerIds],
116
+ },
117
+ };
118
+ }
119
+ function assertIntentRoutes(input, plan) {
120
+ const artifacts = plan.stages.flatMap((stage) => stage.artifacts);
121
+ const requirements = new Map(input.intent.artifacts.map((artifact) => [artifact.id, artifact]));
122
+ if (requirements.size !== input.intent.artifacts.length) {
123
+ throw new Error('Intent artifact requirements contain duplicate ids');
124
+ }
125
+ for (const requirement of input.intent.artifacts) {
126
+ if (!artifacts.some(({ id }) => id === requirement.id)) {
127
+ throw new Error(`Intent artifact ${requirement.id} has no assembly route`);
128
+ }
129
+ }
130
+ const destination = input.intent.destination;
131
+ if (!destination)
132
+ return;
133
+ const requirement = requirements.get(destination.artifactId);
134
+ if (!requirement || requirement.usage !== 'intent-destination') {
135
+ throw new Error('Intent destination artifact requirement is missing');
136
+ }
137
+ const route = artifacts.find(({ id }) => id === destination.artifactId);
138
+ if (!route)
139
+ throw new Error('Intent destination assembly route is missing');
140
+ if (destination.mode === 'sign') {
141
+ if (requirement.payloadId !== destination.payload.id ||
142
+ route.input.kind !== 'task-results') {
143
+ throw new Error('Intent destination signing route is incompatible');
144
+ }
145
+ return;
146
+ }
147
+ if (route.input.kind !== 'reuse-artifact' ||
148
+ route.input.artifactId !== destination.originArtifactId ||
149
+ route.input.selection !== destination.selection) {
150
+ throw new Error('Intent destination reuse route is incompatible');
151
+ }
152
+ }
153
+ function requireSingleArtifact(artifacts, role) {
154
+ if (artifacts.length !== 1) {
155
+ throw new Error(`Intent ${role} requires exactly one artifact`);
156
+ }
157
+ return artifacts[0];
158
+ }
159
+ function assertPreparedMode(input) {
160
+ const originArtifacts = input.intent.artifacts.filter(({ usage }) => usage === 'intent-origin' ||
161
+ usage === 'intent-pre-claim' ||
162
+ usage === 'intent-notarized-claim');
163
+ const expectedPerOrigin = 1;
164
+ const expected = input.intent.origins.length * expectedPerOrigin;
165
+ if (originArtifacts.length !== expected) {
166
+ throw new Error(`Prepared signature mode requires ${expected} origin artifacts, received ${originArtifacts.length}`);
167
+ }
168
+ const invalidShape = originArtifacts.some(({ shape }) => input.intent.preparedSignatureMode === 'default'
169
+ ? shape !== 'hex'
170
+ : !['hex', 'session-claims'].includes(shape));
171
+ if (invalidShape) {
172
+ const expectedShape = input.intent.preparedSignatureMode === 'default'
173
+ ? 'hex'
174
+ : 'hex or session-claims';
175
+ throw new Error(`Prepared signature mode requires ${expectedShape} origin artifacts`);
176
+ }
177
+ }
178
+ export async function executeIntentSigning(input) {
179
+ const plan = createIntentSigningPlan(input.planInput);
180
+ return executeSigningPlan({
181
+ plan,
182
+ payloads: input.planInput.payloads,
183
+ signerInvoker: input.context.signerInvoker,
184
+ checkpoints: input.checkpoints,
185
+ assembleStage: (stage) => assembleIntentStage(stage, input.context),
186
+ });
187
+ }
@@ -0,0 +1,63 @@
1
+ import type { Hex, TypedDataDefinition } from 'viem';
2
+ import type { EvmChainReference } from '../../chains/types.js';
3
+ import type { ArtifactAssemblyPlan, ConfiguredValidatorTopology, EffectiveSignerSelection, SignatureUsage, SigningBatch, SigningPayloadRegistry, SigningReadCheckpoint, SigningTaskTemplate } from '../types.js';
4
+ export type PreparedIntentSignatureMode = 'default' | 'session' | 'session-with-execution-verification';
5
+ export interface IntentSigningPayload {
6
+ readonly id: Hex;
7
+ readonly chain: EvmChainReference;
8
+ readonly role: 'origin' | 'destination' | 'target';
9
+ readonly typedData: TypedDataDefinition;
10
+ readonly usage: SignatureUsage;
11
+ }
12
+ export type DestinationSigningRequirement = {
13
+ readonly mode: 'sign';
14
+ readonly payload: IntentSigningPayload;
15
+ readonly artifactId: string;
16
+ } | {
17
+ readonly mode: 'reuse-origin';
18
+ readonly artifactId: string;
19
+ readonly originArtifactId: string;
20
+ readonly selection: 'whole' | 'pre-claim';
21
+ };
22
+ export interface IntentArtifactRequirement {
23
+ readonly id: string;
24
+ readonly usage: SignatureUsage;
25
+ readonly payloadId: Hex;
26
+ readonly cardinality: 'one' | 'per-origin';
27
+ readonly shape: 'hex' | 'session-claims';
28
+ readonly exposedForIndependentSigning: boolean;
29
+ }
30
+ export interface IntentSigningInput {
31
+ readonly id: Hex;
32
+ readonly preparedSignatureMode: PreparedIntentSignatureMode;
33
+ readonly configuredTopology: ConfiguredValidatorTopology;
34
+ readonly effectiveSelection: EffectiveSignerSelection;
35
+ readonly origins: readonly IntentSigningPayload[];
36
+ readonly destination?: DestinationSigningRequirement;
37
+ readonly target?: IntentSigningPayload;
38
+ readonly artifacts: readonly IntentArtifactRequirement[];
39
+ }
40
+ export interface IndependentSigningProjection {
41
+ readonly planKind: 'intent-independent';
42
+ readonly sourceIntentId: Hex;
43
+ readonly exposedArtifactIds: readonly string[];
44
+ readonly selectedSignerIds: readonly string[];
45
+ }
46
+ export interface IntentSigningStageInput {
47
+ readonly id: string;
48
+ readonly checkpoint: SigningReadCheckpoint;
49
+ readonly priorOutputs: readonly {
50
+ readonly stageId: string;
51
+ readonly outputId: string;
52
+ readonly selection: 'whole' | 'pre-claim';
53
+ }[];
54
+ readonly tasks: readonly SigningTaskTemplate[];
55
+ readonly schedule: readonly SigningBatch[];
56
+ readonly artifacts: readonly Omit<ArtifactAssemblyPlan, 'stageId'>[];
57
+ }
58
+ export interface IntentSigningPlanCreationInput {
59
+ readonly intent: IntentSigningInput;
60
+ readonly stages: readonly IntentSigningStageInput[];
61
+ readonly payloads: SigningPayloadRegistry;
62
+ }
63
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../signing/intent-plans/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAA;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,KAAK,EACV,oBAAoB,EACpB,2BAA2B,EAC3B,wBAAwB,EACxB,cAAc,EACd,YAAY,EACZ,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,UAAU,CAAA;AAEjB,MAAM,MAAM,2BAA2B,GACnC,SAAS,GACT,SAAS,GACT,qCAAqC,CAAA;AAEzC,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAA;IAChB,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAA;IACjC,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,aAAa,GAAG,QAAQ,CAAA;IAClD,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAA;IACvC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAA;CAC/B;AAED,MAAM,MAAM,6BAA6B,GACrC;IACE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAA;IACtC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAC5B,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,SAAS,EAAE,OAAO,GAAG,WAAW,CAAA;CAC1C,CAAA;AAEL,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAA;IAC9B,QAAQ,CAAC,SAAS,EAAE,GAAG,CAAA;IACvB,QAAQ,CAAC,WAAW,EAAE,KAAK,GAAG,YAAY,CAAA;IAC1C,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,gBAAgB,CAAA;IACxC,QAAQ,CAAC,4BAA4B,EAAE,OAAO,CAAA;CAC/C;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAA;IAChB,QAAQ,CAAC,qBAAqB,EAAE,2BAA2B,CAAA;IAC3D,QAAQ,CAAC,kBAAkB,EAAE,2BAA2B,CAAA;IACxD,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAA;IACrD,QAAQ,CAAC,OAAO,EAAE,SAAS,oBAAoB,EAAE,CAAA;IACjD,QAAQ,CAAC,WAAW,CAAC,EAAE,6BAA6B,CAAA;IACpD,QAAQ,CAAC,MAAM,CAAC,EAAE,oBAAoB,CAAA;IACtC,QAAQ,CAAC,SAAS,EAAE,SAAS,yBAAyB,EAAE,CAAA;CACzD;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAA;IACvC,QAAQ,CAAC,cAAc,EAAE,GAAG,CAAA;IAC5B,QAAQ,CAAC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAA;IAC9C,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAA;CAC9C;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,UAAU,EAAE,qBAAqB,CAAA;IAC1C,QAAQ,CAAC,YAAY,EAAE,SAAS;QAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;QACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;QACzB,QAAQ,CAAC,SAAS,EAAE,OAAO,GAAG,WAAW,CAAA;KAC1C,EAAE,CAAA;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,CAAA;IAC9C,QAAQ,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,CAAA;IAC1C,QAAQ,CAAC,SAAS,EAAE,SAAS,IAAI,CAAC,oBAAoB,EAAE,SAAS,CAAC,EAAE,CAAA;CACrE;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAA;IACnC,QAAQ,CAAC,MAAM,EAAE,SAAS,uBAAuB,EAAE,CAAA;IACnD,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAA;CAC1C"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,28 @@
1
+ import { type Hex, type SignableMessage } from 'viem';
2
+ import type { EvmChainReference } from '../chains/types.js';
3
+ import type { SigningContext } from './context.js';
4
+ import type { ArtifactAssemblyPlan, ConfiguredValidatorTopology, EffectiveSignerSelection, PayloadSigningTask, SigningCheckpointPort, SigningPayloadMaterial, SigningPlan, SigningTranscript } from './types.js';
5
+ export interface MessageSigningPlanInput {
6
+ readonly message: SignableMessage;
7
+ readonly signingMaterial?: Extract<SigningPayloadMaterial, {
8
+ readonly kind: 'message';
9
+ }>;
10
+ readonly chain: EvmChainReference;
11
+ readonly configuredTopology: ConfiguredValidatorTopology;
12
+ readonly effectiveSelection: EffectiveSignerSelection;
13
+ readonly tasks: readonly PayloadSigningTask[];
14
+ readonly route: Omit<ArtifactAssemblyPlan, 'id' | 'stageId' | 'input' | 'usage'>;
15
+ readonly checkpoint?: Extract<import('./types.js').SigningReadCheckpoint, {
16
+ readonly kind: 'account-deployment';
17
+ }>;
18
+ }
19
+ export declare function createMessageSigningPlan(input: MessageSigningPlanInput): SigningPlan;
20
+ export declare function signAccountMessage(input: {
21
+ readonly planInput: MessageSigningPlanInput;
22
+ readonly context: SigningContext;
23
+ readonly checkpoints: SigningCheckpointPort;
24
+ }): Promise<{
25
+ readonly signature: Hex;
26
+ readonly transcript: SigningTranscript;
27
+ }>;
28
+ //# sourceMappingURL=message.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../signing/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAe,KAAK,eAAe,EAAE,MAAM,MAAM,CAAA;AAElE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAM/C,OAAO,KAAK,EACV,oBAAoB,EACpB,2BAA2B,EAC3B,wBAAwB,EACxB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,WAAW,EACX,iBAAiB,EAClB,MAAM,SAAS,CAAA;AAEhB,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;IACjC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAChC,sBAAsB,EACtB;QAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;KAAE,CAC7B,CAAA;IACD,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,KAAK,EAAE,IAAI,CAClB,oBAAoB,EACpB,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CACrC,CAAA;IACD,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAC3B,OAAO,SAAS,EAAE,qBAAqB,EACvC;QAAE,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAA;KAAE,CACxC,CAAA;CACF;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,uBAAuB,GAC7B,WAAW,CAkBb;AAED,wBAAsB,kBAAkB,CAAC,KAAK,EAAE;IAC9C,QAAQ,CAAC,SAAS,EAAE,uBAAuB,CAAA;IAC3C,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAA;IAChC,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,CAqBD"}