mppx 0.6.30 → 0.7.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 (483) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/dist/Challenge.d.ts.map +1 -1
  3. package/dist/Challenge.js +9 -7
  4. package/dist/Challenge.js.map +1 -1
  5. package/dist/Constants.d.ts +46 -0
  6. package/dist/Constants.d.ts.map +1 -0
  7. package/dist/Constants.js +46 -0
  8. package/dist/Constants.js.map +1 -0
  9. package/dist/Credential.d.ts.map +1 -1
  10. package/dist/Credential.js +5 -4
  11. package/dist/Credential.js.map +1 -1
  12. package/dist/Method.d.ts +32 -4
  13. package/dist/Method.d.ts.map +1 -1
  14. package/dist/Method.js +5 -2
  15. package/dist/Method.js.map +1 -1
  16. package/dist/Receipt.d.ts.map +1 -1
  17. package/dist/Receipt.js +3 -2
  18. package/dist/Receipt.js.map +1 -1
  19. package/dist/cli/cli.d.ts.map +1 -1
  20. package/dist/cli/cli.js +19 -11
  21. package/dist/cli/cli.js.map +1 -1
  22. package/dist/cli/plugins/tempo.d.ts.map +1 -1
  23. package/dist/cli/plugins/tempo.js +17 -6
  24. package/dist/cli/plugins/tempo.js.map +1 -1
  25. package/dist/cli/utils.d.ts +5 -0
  26. package/dist/cli/utils.d.ts.map +1 -1
  27. package/dist/cli/utils.js +10 -0
  28. package/dist/cli/utils.js.map +1 -1
  29. package/dist/client/Methods.d.ts +5 -2
  30. package/dist/client/Methods.d.ts.map +1 -1
  31. package/dist/client/Methods.js +5 -2
  32. package/dist/client/Methods.js.map +1 -1
  33. package/dist/client/Transport.d.ts.map +1 -1
  34. package/dist/client/Transport.js +4 -5
  35. package/dist/client/Transport.js.map +1 -1
  36. package/dist/client/index.d.ts +2 -1
  37. package/dist/client/index.d.ts.map +1 -1
  38. package/dist/client/index.js +2 -1
  39. package/dist/client/index.js.map +1 -1
  40. package/dist/client/internal/Fetch.d.ts.map +1 -1
  41. package/dist/client/internal/Fetch.js +14 -6
  42. package/dist/client/internal/Fetch.js.map +1 -1
  43. package/dist/evm/server/Methods.d.ts +1 -1
  44. package/dist/evm/server/Methods.d.ts.map +1 -1
  45. package/dist/index.d.ts +1 -0
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +1 -0
  48. package/dist/index.js.map +1 -1
  49. package/dist/internal/AcceptPayment.d.ts +3 -0
  50. package/dist/internal/AcceptPayment.d.ts.map +1 -1
  51. package/dist/internal/AcceptPayment.js +15 -11
  52. package/dist/internal/AcceptPayment.js.map +1 -1
  53. package/dist/mcp-sdk/client/McpClient.d.ts +12 -5
  54. package/dist/mcp-sdk/client/McpClient.d.ts.map +1 -1
  55. package/dist/mcp-sdk/client/McpClient.js +55 -42
  56. package/dist/mcp-sdk/client/McpClient.js.map +1 -1
  57. package/dist/server/Mppx.d.ts +11 -3
  58. package/dist/server/Mppx.d.ts.map +1 -1
  59. package/dist/server/Mppx.js +76 -27
  60. package/dist/server/Mppx.js.map +1 -1
  61. package/dist/server/Request.js +24 -10
  62. package/dist/server/Request.js.map +1 -1
  63. package/dist/server/Response.d.ts.map +1 -1
  64. package/dist/server/Response.js +2 -1
  65. package/dist/server/Response.js.map +1 -1
  66. package/dist/server/Transport.d.ts.map +1 -1
  67. package/dist/server/Transport.js +4 -3
  68. package/dist/server/Transport.js.map +1 -1
  69. package/dist/server/index.d.ts +1 -0
  70. package/dist/server/index.d.ts.map +1 -1
  71. package/dist/server/index.js +1 -0
  72. package/dist/server/index.js.map +1 -1
  73. package/dist/stripe/client/Charge.d.ts +1 -1
  74. package/dist/stripe/client/Charge.d.ts.map +1 -1
  75. package/dist/stripe/client/Charge.js +3 -1
  76. package/dist/stripe/client/Charge.js.map +1 -1
  77. package/dist/stripe/server/Charge.d.ts +1 -1
  78. package/dist/stripe/server/Charge.d.ts.map +1 -1
  79. package/dist/stripe/server/Charge.js +9 -2
  80. package/dist/stripe/server/Charge.js.map +1 -1
  81. package/dist/stripe/server/Methods.d.ts +1 -1
  82. package/dist/stripe/server/Methods.d.ts.map +1 -1
  83. package/dist/stripe/server/internal/html.gen.d.ts +1 -1
  84. package/dist/stripe/server/internal/html.gen.d.ts.map +1 -1
  85. package/dist/stripe/server/internal/html.gen.js +1 -1
  86. package/dist/stripe/server/internal/html.gen.js.map +1 -1
  87. package/dist/tempo/Methods.d.ts +18 -0
  88. package/dist/tempo/Methods.d.ts.map +1 -1
  89. package/dist/tempo/Methods.js +16 -1
  90. package/dist/tempo/Methods.js.map +1 -1
  91. package/dist/tempo/client/Charge.d.ts +6 -0
  92. package/dist/tempo/client/Charge.d.ts.map +1 -1
  93. package/dist/tempo/client/Charge.js +9 -2
  94. package/dist/tempo/client/Charge.js.map +1 -1
  95. package/dist/tempo/client/Methods.d.ts +36 -7
  96. package/dist/tempo/client/Methods.d.ts.map +1 -1
  97. package/dist/tempo/client/Methods.js +12 -5
  98. package/dist/tempo/client/Methods.js.map +1 -1
  99. package/dist/tempo/client/index.d.ts +7 -4
  100. package/dist/tempo/client/index.d.ts.map +1 -1
  101. package/dist/tempo/client/index.js +5 -3
  102. package/dist/tempo/client/index.js.map +1 -1
  103. package/dist/tempo/index.d.ts +1 -0
  104. package/dist/tempo/index.d.ts.map +1 -1
  105. package/dist/tempo/index.js +1 -0
  106. package/dist/tempo/index.js.map +1 -1
  107. package/dist/tempo/internal/fee-payer.d.ts +21 -1
  108. package/dist/tempo/internal/fee-payer.d.ts.map +1 -1
  109. package/dist/tempo/internal/fee-payer.js +109 -4
  110. package/dist/tempo/internal/fee-payer.js.map +1 -1
  111. package/dist/tempo/{client → legacy/client}/ChannelOps.d.ts +19 -6
  112. package/dist/tempo/legacy/client/ChannelOps.d.ts.map +1 -0
  113. package/dist/tempo/{client → legacy/client}/ChannelOps.js +9 -3
  114. package/dist/tempo/legacy/client/ChannelOps.js.map +1 -0
  115. package/dist/tempo/{client → legacy/client}/Session.d.ts +23 -4
  116. package/dist/tempo/legacy/client/Session.d.ts.map +1 -0
  117. package/dist/tempo/{client → legacy/client}/Session.js +14 -7
  118. package/dist/tempo/legacy/client/Session.js.map +1 -0
  119. package/dist/tempo/{client → legacy/client}/SessionManager.d.ts +20 -5
  120. package/dist/tempo/legacy/client/SessionManager.d.ts.map +1 -0
  121. package/dist/tempo/{client → legacy/client}/SessionManager.js +20 -16
  122. package/dist/tempo/legacy/client/SessionManager.js.map +1 -0
  123. package/dist/tempo/legacy/client/index.d.ts +7 -0
  124. package/dist/tempo/legacy/client/index.d.ts.map +1 -0
  125. package/dist/tempo/legacy/client/index.js +5 -0
  126. package/dist/tempo/legacy/client/index.js.map +1 -0
  127. package/dist/tempo/legacy/index.d.ts +7 -0
  128. package/dist/tempo/legacy/index.d.ts.map +1 -0
  129. package/dist/tempo/legacy/index.js +7 -0
  130. package/dist/tempo/legacy/index.js.map +1 -0
  131. package/dist/tempo/{server → legacy/server}/Session.d.ts +28 -11
  132. package/dist/tempo/legacy/server/Session.d.ts.map +1 -0
  133. package/dist/tempo/{server → legacy/server}/Session.js +28 -23
  134. package/dist/tempo/legacy/server/Session.js.map +1 -0
  135. package/dist/tempo/legacy/server/index.d.ts +5 -0
  136. package/dist/tempo/legacy/server/index.d.ts.map +1 -0
  137. package/dist/tempo/legacy/server/index.js +5 -0
  138. package/dist/tempo/legacy/server/index.js.map +1 -0
  139. package/dist/tempo/{session → legacy/session}/Chain.d.ts +30 -23
  140. package/dist/tempo/legacy/session/Chain.d.ts.map +1 -0
  141. package/dist/tempo/{session → legacy/session}/Chain.js +12 -11
  142. package/dist/tempo/legacy/session/Chain.js.map +1 -0
  143. package/dist/tempo/{session → legacy/session}/Channel.d.ts +1 -0
  144. package/dist/tempo/legacy/session/Channel.d.ts.map +1 -0
  145. package/dist/tempo/legacy/session/Channel.js.map +1 -0
  146. package/dist/tempo/legacy/session/ChannelStore.d.ts +22 -0
  147. package/dist/tempo/legacy/session/ChannelStore.d.ts.map +1 -0
  148. package/dist/tempo/legacy/session/ChannelStore.js +6 -0
  149. package/dist/tempo/legacy/session/ChannelStore.js.map +1 -0
  150. package/dist/tempo/legacy/session/Types.d.ts +73 -0
  151. package/dist/tempo/legacy/session/Types.d.ts.map +1 -0
  152. package/dist/tempo/legacy/session/Types.js.map +1 -0
  153. package/dist/tempo/{session → legacy/session}/Voucher.d.ts +4 -4
  154. package/dist/tempo/legacy/session/Voucher.d.ts.map +1 -0
  155. package/dist/tempo/{session → legacy/session}/Voucher.js +1 -1
  156. package/dist/tempo/legacy/session/Voucher.js.map +1 -0
  157. package/dist/tempo/{session → legacy/session}/escrow.abi.d.ts +1 -0
  158. package/dist/tempo/{session → legacy/session}/escrow.abi.d.ts.map +1 -1
  159. package/dist/tempo/{session → legacy/session}/escrow.abi.js +1 -0
  160. package/dist/tempo/legacy/session/escrow.abi.js.map +1 -0
  161. package/dist/tempo/legacy/session/index.d.ts +9 -0
  162. package/dist/tempo/legacy/session/index.d.ts.map +1 -0
  163. package/dist/tempo/legacy/session/index.js +9 -0
  164. package/dist/tempo/legacy/session/index.js.map +1 -0
  165. package/dist/tempo/server/Charge.d.ts +1 -1
  166. package/dist/tempo/server/Charge.d.ts.map +1 -1
  167. package/dist/tempo/server/Charge.js +13 -16
  168. package/dist/tempo/server/Charge.js.map +1 -1
  169. package/dist/tempo/server/Methods.d.ts +63 -6
  170. package/dist/tempo/server/Methods.d.ts.map +1 -1
  171. package/dist/tempo/server/Methods.js +36 -8
  172. package/dist/tempo/server/Methods.js.map +1 -1
  173. package/dist/tempo/server/Subscription.d.ts +1 -1
  174. package/dist/tempo/server/Subscription.d.ts.map +1 -1
  175. package/dist/tempo/server/index.d.ts +6 -5
  176. package/dist/tempo/server/index.d.ts.map +1 -1
  177. package/dist/tempo/server/index.js +5 -5
  178. package/dist/tempo/server/index.js.map +1 -1
  179. package/dist/tempo/server/internal/html.gen.d.ts +1 -1
  180. package/dist/tempo/server/internal/html.gen.d.ts.map +1 -1
  181. package/dist/tempo/server/internal/html.gen.js +1 -1
  182. package/dist/tempo/server/internal/html.gen.js.map +1 -1
  183. package/dist/tempo/server/internal/request-body.d.ts +7 -2
  184. package/dist/tempo/server/internal/request-body.d.ts.map +1 -1
  185. package/dist/tempo/server/internal/request-body.js +20 -3
  186. package/dist/tempo/server/internal/request-body.js.map +1 -1
  187. package/dist/tempo/server/internal/transport.d.ts +8 -4
  188. package/dist/tempo/server/internal/transport.d.ts.map +1 -1
  189. package/dist/tempo/server/internal/transport.js +8 -7
  190. package/dist/tempo/server/internal/transport.js.map +1 -1
  191. package/dist/tempo/session/Snapshot.d.ts +32 -0
  192. package/dist/tempo/session/Snapshot.d.ts.map +1 -0
  193. package/dist/tempo/session/Snapshot.js +37 -0
  194. package/dist/tempo/session/Snapshot.js.map +1 -0
  195. package/dist/tempo/session/client/ChannelOps.d.ts +82 -0
  196. package/dist/tempo/session/client/ChannelOps.d.ts.map +1 -0
  197. package/dist/tempo/session/client/ChannelOps.js +204 -0
  198. package/dist/tempo/session/client/ChannelOps.js.map +1 -0
  199. package/dist/tempo/session/client/CredentialState.d.ts +262 -0
  200. package/dist/tempo/session/client/CredentialState.d.ts.map +1 -0
  201. package/dist/tempo/session/client/CredentialState.js +417 -0
  202. package/dist/tempo/session/client/CredentialState.js.map +1 -0
  203. package/dist/tempo/session/client/ReceiptCoordinator.d.ts +26 -0
  204. package/dist/tempo/session/client/ReceiptCoordinator.d.ts.map +1 -0
  205. package/dist/tempo/session/client/ReceiptCoordinator.js +61 -0
  206. package/dist/tempo/session/client/ReceiptCoordinator.js.map +1 -0
  207. package/dist/tempo/session/client/Runtime.d.ts +464 -0
  208. package/dist/tempo/session/client/Runtime.d.ts.map +1 -0
  209. package/dist/tempo/session/client/Runtime.js +499 -0
  210. package/dist/tempo/session/client/Runtime.js.map +1 -0
  211. package/dist/tempo/session/client/Session.d.ts +132 -0
  212. package/dist/tempo/session/client/Session.d.ts.map +1 -0
  213. package/dist/tempo/session/client/Session.js +55 -0
  214. package/dist/tempo/session/client/Session.js.map +1 -0
  215. package/dist/tempo/session/client/SessionManager.d.ts +120 -0
  216. package/dist/tempo/session/client/SessionManager.d.ts.map +1 -0
  217. package/dist/tempo/session/client/SessionManager.js +627 -0
  218. package/dist/tempo/session/client/SessionManager.js.map +1 -0
  219. package/dist/tempo/session/client/Transports.d.ts +449 -0
  220. package/dist/tempo/session/client/Transports.d.ts.map +1 -0
  221. package/dist/tempo/session/client/Transports.js +721 -0
  222. package/dist/tempo/session/client/Transports.js.map +1 -0
  223. package/dist/tempo/session/client/index.d.ts +12 -0
  224. package/dist/tempo/session/client/index.d.ts.map +1 -0
  225. package/dist/tempo/session/client/index.js +5 -0
  226. package/dist/tempo/session/client/index.js.map +1 -0
  227. package/dist/tempo/session/index.d.ts +7 -8
  228. package/dist/tempo/session/index.d.ts.map +1 -1
  229. package/dist/tempo/session/index.js +7 -8
  230. package/dist/tempo/session/index.js.map +1 -1
  231. package/dist/tempo/session/precompile/Chain.d.ts +319 -0
  232. package/dist/tempo/session/precompile/Chain.d.ts.map +1 -0
  233. package/dist/tempo/session/precompile/Chain.js +492 -0
  234. package/dist/tempo/session/precompile/Chain.js.map +1 -0
  235. package/dist/tempo/session/precompile/Channel.d.ts +46 -0
  236. package/dist/tempo/session/precompile/Channel.d.ts.map +1 -0
  237. package/dist/tempo/session/precompile/Channel.js +56 -0
  238. package/dist/tempo/session/precompile/Channel.js.map +1 -0
  239. package/dist/tempo/session/precompile/Protocol.d.ts +308 -0
  240. package/dist/tempo/session/precompile/Protocol.d.ts.map +1 -0
  241. package/dist/tempo/session/precompile/Protocol.js +264 -0
  242. package/dist/tempo/session/precompile/Protocol.js.map +1 -0
  243. package/dist/tempo/session/precompile/Voucher.d.ts +40 -0
  244. package/dist/tempo/session/precompile/Voucher.d.ts.map +1 -0
  245. package/dist/tempo/session/precompile/Voucher.js +126 -0
  246. package/dist/tempo/session/precompile/Voucher.js.map +1 -0
  247. package/dist/tempo/session/precompile/escrow.abi.d.ts +522 -0
  248. package/dist/tempo/session/precompile/escrow.abi.d.ts.map +1 -0
  249. package/dist/tempo/session/precompile/escrow.abi.js +224 -0
  250. package/dist/tempo/session/precompile/escrow.abi.js.map +1 -0
  251. package/dist/tempo/session/precompile/index.d.ts +24 -0
  252. package/dist/tempo/session/precompile/index.d.ts.map +1 -0
  253. package/dist/tempo/session/precompile/index.js +22 -0
  254. package/dist/tempo/session/precompile/index.js.map +1 -0
  255. package/dist/tempo/session/server/ChannelOps.d.ts +56 -0
  256. package/dist/tempo/session/server/ChannelOps.d.ts.map +1 -0
  257. package/dist/tempo/session/server/ChannelOps.js +91 -0
  258. package/dist/tempo/session/server/ChannelOps.js.map +1 -0
  259. package/dist/tempo/session/server/ChannelStore.d.ts +347 -0
  260. package/dist/tempo/session/server/ChannelStore.d.ts.map +1 -0
  261. package/dist/tempo/session/server/ChannelStore.js +404 -0
  262. package/dist/tempo/session/server/ChannelStore.js.map +1 -0
  263. package/dist/tempo/session/server/CredentialVerification.d.ts +85 -0
  264. package/dist/tempo/session/server/CredentialVerification.d.ts.map +1 -0
  265. package/dist/tempo/session/server/CredentialVerification.js +494 -0
  266. package/dist/tempo/session/server/CredentialVerification.js.map +1 -0
  267. package/dist/tempo/session/server/MeteredStream.d.ts +40 -0
  268. package/dist/tempo/session/server/MeteredStream.d.ts.map +1 -0
  269. package/dist/tempo/session/server/MeteredStream.js +42 -0
  270. package/dist/tempo/session/server/MeteredStream.js.map +1 -0
  271. package/dist/tempo/session/server/RequestState.d.ts +208 -0
  272. package/dist/tempo/session/server/RequestState.d.ts.map +1 -0
  273. package/dist/tempo/session/server/RequestState.js +252 -0
  274. package/dist/tempo/session/server/RequestState.js.map +1 -0
  275. package/dist/tempo/session/server/Session.d.ts +169 -0
  276. package/dist/tempo/session/server/Session.d.ts.map +1 -0
  277. package/dist/tempo/session/server/Session.js +351 -0
  278. package/dist/tempo/session/server/Session.js.map +1 -0
  279. package/dist/tempo/session/server/Settlement.d.ts +185 -0
  280. package/dist/tempo/session/server/Settlement.d.ts.map +1 -0
  281. package/dist/tempo/session/server/Settlement.js +250 -0
  282. package/dist/tempo/session/server/Settlement.js.map +1 -0
  283. package/dist/tempo/session/{Sse.d.ts → server/Sse.d.ts} +9 -56
  284. package/dist/tempo/session/server/Sse.d.ts.map +1 -0
  285. package/dist/tempo/session/server/Sse.js +184 -0
  286. package/dist/tempo/session/server/Sse.js.map +1 -0
  287. package/dist/tempo/session/server/Transports.d.ts +89 -0
  288. package/dist/tempo/session/server/Transports.d.ts.map +1 -0
  289. package/dist/tempo/session/server/Transports.js +149 -0
  290. package/dist/tempo/session/server/Transports.js.map +1 -0
  291. package/dist/tempo/session/server/Ws.d.ts +48 -0
  292. package/dist/tempo/session/server/Ws.d.ts.map +1 -0
  293. package/dist/tempo/session/server/Ws.js +244 -0
  294. package/dist/tempo/session/server/Ws.js.map +1 -0
  295. package/dist/tempo/session/server/index.d.ts +4 -0
  296. package/dist/tempo/session/server/index.d.ts.map +1 -0
  297. package/dist/tempo/session/server/index.js +2 -0
  298. package/dist/tempo/session/server/index.js.map +1 -0
  299. package/package.json +8 -3
  300. package/src/Challenge.ts +9 -7
  301. package/src/Constants.ts +58 -0
  302. package/src/Credential.ts +5 -4
  303. package/src/Method.ts +46 -5
  304. package/src/Receipt.ts +3 -2
  305. package/src/cli/cli.test.ts +23 -28
  306. package/src/cli/cli.ts +23 -10
  307. package/src/cli/mcp.test.ts +21 -7
  308. package/src/cli/plugins/tempo.ts +21 -8
  309. package/src/cli/utils.test.ts +25 -1
  310. package/src/cli/utils.ts +10 -0
  311. package/src/client/Methods.ts +5 -2
  312. package/src/client/Mppx.test-d.ts +10 -0
  313. package/src/client/Mppx.test.ts +75 -0
  314. package/src/client/Transport.ts +4 -5
  315. package/src/client/index.ts +11 -1
  316. package/src/client/internal/Fetch.test.ts +29 -4
  317. package/src/client/internal/Fetch.ts +17 -5
  318. package/src/env.d.ts +1 -1
  319. package/src/index.ts +1 -0
  320. package/src/internal/AcceptPayment.test.ts +61 -0
  321. package/src/internal/AcceptPayment.ts +21 -14
  322. package/src/mcp-sdk/client/McpClient.integration.test.ts +8 -7
  323. package/src/mcp-sdk/client/McpClient.test-d.ts +7 -0
  324. package/src/mcp-sdk/client/McpClient.ts +99 -67
  325. package/src/mcp-sdk/client/McpClient.unit.test.ts +131 -0
  326. package/src/middlewares/elysia.test.ts +8 -4
  327. package/src/middlewares/express.test.ts +8 -4
  328. package/src/middlewares/hono.test.ts +4 -4
  329. package/src/middlewares/nextjs.test.ts +8 -4
  330. package/src/proxy/Proxy.test.ts +8 -8
  331. package/src/server/Mppx.test-d.ts +54 -0
  332. package/src/server/Mppx.test.ts +274 -7
  333. package/src/server/Mppx.ts +487 -406
  334. package/src/server/Request.test.ts +81 -0
  335. package/src/server/Request.ts +23 -9
  336. package/src/server/Response.ts +2 -1
  337. package/src/server/Transport.ts +4 -3
  338. package/src/server/index.ts +1 -0
  339. package/src/stripe/client/Charge.test.ts +20 -5
  340. package/src/stripe/client/Charge.ts +6 -2
  341. package/src/stripe/server/Charge.test.ts +114 -1
  342. package/src/stripe/server/Charge.ts +13 -2
  343. package/src/stripe/server/internal/html/package.json +1 -1
  344. package/src/stripe/server/internal/html.gen.ts +1 -1
  345. package/src/tempo/AccessKeyAuthorization.test.ts +4 -94
  346. package/src/tempo/Methods.test.ts +45 -17
  347. package/src/tempo/Methods.ts +22 -0
  348. package/src/tempo/PublicExports.test-d.ts +105 -0
  349. package/src/tempo/client/Charge.test.ts +85 -0
  350. package/src/tempo/client/Charge.ts +19 -2
  351. package/src/tempo/client/Methods.ts +18 -6
  352. package/src/tempo/client/index.ts +15 -4
  353. package/src/tempo/index.ts +1 -0
  354. package/src/tempo/internal/fee-payer.test.ts +241 -17
  355. package/src/tempo/internal/fee-payer.ts +150 -4
  356. package/src/tempo/internal/fee-token.test.ts +14 -9
  357. package/src/tempo/legacy/AccessKeyAuthorization.test.ts +162 -0
  358. package/src/tempo/legacy/README.md +9 -0
  359. package/src/tempo/{client → legacy/client}/ChannelOps.test.ts +6 -7
  360. package/src/tempo/{client → legacy/client}/ChannelOps.ts +22 -9
  361. package/src/tempo/{client → legacy/client}/Session.test.ts +51 -9
  362. package/src/tempo/{client → legacy/client}/Session.ts +25 -11
  363. package/src/tempo/{client → legacy/client}/SessionManager.test.ts +81 -9
  364. package/src/tempo/{client → legacy/client}/SessionManager.ts +41 -20
  365. package/src/tempo/legacy/client/index.ts +6 -0
  366. package/src/tempo/legacy/index.ts +6 -0
  367. package/src/tempo/{server → legacy/server}/Session.test.ts +162 -63
  368. package/src/tempo/{server → legacy/server}/Session.ts +49 -37
  369. package/src/tempo/legacy/server/index.ts +4 -0
  370. package/src/tempo/{session → legacy/session}/Chain.test.ts +3 -4
  371. package/src/tempo/{session → legacy/session}/Chain.ts +94 -63
  372. package/src/tempo/{session → legacy/session}/Channel.ts +1 -0
  373. package/src/tempo/legacy/session/ChannelStore.test.ts +58 -0
  374. package/src/tempo/legacy/session/ChannelStore.ts +39 -0
  375. package/src/tempo/legacy/session/Types.ts +91 -0
  376. package/src/tempo/{session → legacy/session}/Voucher.ts +12 -8
  377. package/src/tempo/{session → legacy/session}/escrow.abi.ts +1 -0
  378. package/src/tempo/legacy/session/index.ts +8 -0
  379. package/src/tempo/server/AtomicStore.test-d.ts +16 -11
  380. package/src/tempo/server/Charge.test.ts +92 -14
  381. package/src/tempo/server/Charge.ts +18 -16
  382. package/src/tempo/server/Methods.ts +54 -8
  383. package/src/tempo/server/Sse.test.ts +2 -2
  384. package/src/tempo/server/index.ts +6 -5
  385. package/src/tempo/server/internal/html/package.json +1 -1
  386. package/src/tempo/server/internal/html.gen.ts +1 -1
  387. package/src/tempo/server/internal/request-body.test.ts +37 -4
  388. package/src/tempo/server/internal/request-body.ts +25 -6
  389. package/src/tempo/server/internal/transport.test.ts +4 -4
  390. package/src/tempo/server/internal/transport.ts +19 -10
  391. package/src/tempo/session/Snapshot.test.ts +41 -0
  392. package/src/tempo/session/Snapshot.ts +74 -0
  393. package/src/tempo/session/client/ChannelOps.test.ts +163 -0
  394. package/src/tempo/session/client/ChannelOps.ts +344 -0
  395. package/src/tempo/session/client/CredentialState.test.ts +645 -0
  396. package/src/tempo/session/client/CredentialState.ts +814 -0
  397. package/src/tempo/session/client/ReceiptCoordinator.ts +95 -0
  398. package/src/tempo/session/client/Runtime.test.ts +1092 -0
  399. package/src/tempo/session/client/Runtime.ts +986 -0
  400. package/src/tempo/session/client/Session.test.ts +734 -0
  401. package/src/tempo/session/client/Session.ts +97 -0
  402. package/src/tempo/session/client/SessionManager.test.ts +1308 -0
  403. package/src/tempo/session/client/SessionManager.ts +845 -0
  404. package/src/tempo/session/client/Transports.test.ts +837 -0
  405. package/src/tempo/session/client/Transports.ts +1292 -0
  406. package/src/tempo/session/client/index.ts +37 -0
  407. package/src/tempo/session/index.ts +7 -8
  408. package/src/tempo/session/precompile/Chain.integration.test.ts +321 -0
  409. package/src/tempo/session/precompile/Chain.test.ts +1258 -0
  410. package/src/tempo/session/precompile/Chain.ts +979 -0
  411. package/src/tempo/session/precompile/Channel.test.ts +138 -0
  412. package/src/tempo/session/precompile/Channel.ts +103 -0
  413. package/src/tempo/session/precompile/Protocol.test.ts +358 -0
  414. package/src/tempo/session/precompile/Protocol.ts +520 -0
  415. package/src/tempo/session/precompile/Voucher.test.ts +316 -0
  416. package/src/tempo/session/precompile/Voucher.ts +160 -0
  417. package/src/tempo/session/precompile/escrow.abi.ts +226 -0
  418. package/src/tempo/session/precompile/index.ts +33 -0
  419. package/src/tempo/session/server/ChannelOps.test.ts +129 -0
  420. package/src/tempo/session/server/ChannelOps.ts +157 -0
  421. package/src/tempo/session/{ChannelStore.test.ts → server/ChannelStore.test.ts} +536 -29
  422. package/src/tempo/session/server/ChannelStore.ts +835 -0
  423. package/src/tempo/session/server/CredentialVerification.test.ts +146 -0
  424. package/src/tempo/session/server/CredentialVerification.ts +710 -0
  425. package/src/tempo/session/server/MeteredStream.ts +88 -0
  426. package/src/tempo/session/server/RequestState.test.ts +531 -0
  427. package/src/tempo/session/server/RequestState.ts +499 -0
  428. package/src/tempo/session/server/Session.integration.test.ts +444 -0
  429. package/src/tempo/session/server/Session.test.ts +3253 -0
  430. package/src/tempo/session/server/Session.ts +543 -0
  431. package/src/tempo/session/server/Settlement.test.ts +242 -0
  432. package/src/tempo/session/server/Settlement.ts +470 -0
  433. package/src/tempo/session/{Sse.test.ts → server/Sse.test.ts} +37 -3
  434. package/src/tempo/session/server/Sse.ts +256 -0
  435. package/src/tempo/session/server/Transports.test.ts +346 -0
  436. package/src/tempo/session/server/Transports.ts +255 -0
  437. package/src/tempo/session/{Ws.test.ts → server/Ws.test.ts} +4 -4
  438. package/src/tempo/session/server/Ws.ts +384 -0
  439. package/src/tempo/session/server/index.ts +8 -0
  440. package/dist/tempo/client/ChannelOps.d.ts.map +0 -1
  441. package/dist/tempo/client/ChannelOps.js.map +0 -1
  442. package/dist/tempo/client/Session.d.ts.map +0 -1
  443. package/dist/tempo/client/Session.js.map +0 -1
  444. package/dist/tempo/client/SessionManager.d.ts.map +0 -1
  445. package/dist/tempo/client/SessionManager.js.map +0 -1
  446. package/dist/tempo/server/Session.d.ts.map +0 -1
  447. package/dist/tempo/server/Session.js.map +0 -1
  448. package/dist/tempo/session/Chain.d.ts.map +0 -1
  449. package/dist/tempo/session/Chain.js.map +0 -1
  450. package/dist/tempo/session/Channel.d.ts.map +0 -1
  451. package/dist/tempo/session/Channel.js.map +0 -1
  452. package/dist/tempo/session/ChannelStore.d.ts +0 -117
  453. package/dist/tempo/session/ChannelStore.d.ts.map +0 -1
  454. package/dist/tempo/session/ChannelStore.js +0 -172
  455. package/dist/tempo/session/ChannelStore.js.map +0 -1
  456. package/dist/tempo/session/Receipt.d.ts +0 -22
  457. package/dist/tempo/session/Receipt.d.ts.map +0 -1
  458. package/dist/tempo/session/Receipt.js +0 -34
  459. package/dist/tempo/session/Receipt.js.map +0 -1
  460. package/dist/tempo/session/Sse.d.ts.map +0 -1
  461. package/dist/tempo/session/Sse.js +0 -363
  462. package/dist/tempo/session/Sse.js.map +0 -1
  463. package/dist/tempo/session/Types.d.ts +0 -78
  464. package/dist/tempo/session/Types.d.ts.map +0 -1
  465. package/dist/tempo/session/Types.js.map +0 -1
  466. package/dist/tempo/session/Voucher.d.ts.map +0 -1
  467. package/dist/tempo/session/Voucher.js.map +0 -1
  468. package/dist/tempo/session/Ws.d.ts +0 -87
  469. package/dist/tempo/session/Ws.d.ts.map +0 -1
  470. package/dist/tempo/session/Ws.js +0 -443
  471. package/dist/tempo/session/Ws.js.map +0 -1
  472. package/dist/tempo/session/escrow.abi.js.map +0 -1
  473. package/src/tempo/session/ChannelStore.ts +0 -308
  474. package/src/tempo/session/Receipt.test.ts +0 -89
  475. package/src/tempo/session/Receipt.ts +0 -46
  476. package/src/tempo/session/Sse.ts +0 -462
  477. package/src/tempo/session/Types.ts +0 -86
  478. package/src/tempo/session/Ws.ts +0 -576
  479. /package/dist/tempo/{session → legacy/session}/Channel.js +0 -0
  480. /package/dist/tempo/{session → legacy/session}/Types.js +0 -0
  481. /package/src/tempo/{session → legacy/session}/Channel.test.ts +0 -0
  482. /package/src/tempo/{session → legacy/session}/Voucher.test.ts +0 -0
  483. /package/src/tempo/session/{Sse.fuzz.test.ts → server/Sse.fuzz.test.ts} +0 -0
@@ -5,6 +5,12 @@ import * as core_Mcp from '../../Mcp.js';
5
5
  import type * as Method from '../../Method.js';
6
6
  import type * as z from '../../zod.js';
7
7
  type AnyClient = Method.Client<any, any>;
8
+ export type CallToolParameters = {
9
+ name: string;
10
+ arguments?: Record<string, unknown>;
11
+ _meta?: Record<string, unknown>;
12
+ };
13
+ export type OnPaymentRequired = (challenge: Challenge.Challenge) => boolean | Promise<boolean>;
8
14
  /**
9
15
  * Result of a tool call with payment handling.
10
16
  * Extends the SDK's callTool return type with an optional payment receipt.
@@ -50,14 +56,15 @@ export declare namespace wrap {
50
56
  type Config<methods extends readonly Method.AnyClient[] = readonly Method.AnyClient[]> = {
51
57
  /** Array of methods to use. */
52
58
  methods: methods;
59
+ /** Optional approval hook called before creating a payment credential. */
60
+ onPaymentRequired?: OnPaymentRequired;
53
61
  };
54
62
  type McpClient<client extends Pick<Client, 'callTool'> = Pick<Client, 'callTool'>, methods extends readonly AnyClient[] = readonly AnyClient[]> = Omit<client, 'callTool'> & {
55
63
  /** Call a tool with automatic payment handling. */
56
- callTool: (params: {
57
- name: string;
58
- arguments?: Record<string, unknown>;
59
- _meta?: Record<string, unknown>;
60
- }, options?: CallToolOptions<methods>) => Promise<CallToolResult>;
64
+ callTool: {
65
+ (params: CallToolParameters, options?: CallToolOptions<methods>): Promise<CallToolResult>;
66
+ (onPaymentRequired: OnPaymentRequired | null | undefined, params: CallToolParameters, options?: CallToolOptions<methods>): Promise<CallToolResult>;
67
+ };
61
68
  };
62
69
  type CallToolOptions<methods extends readonly AnyClient[] = readonly AnyClient[]> = {
63
70
  /** Context to pass to the method intent's createCredential. */
@@ -1 +1 @@
1
- {"version":3,"file":"McpClient.d.ts","sourceRoot":"","sources":["../../../src/mcp-sdk/client/McpClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"McpClient.d.ts","sourceRoot":"","sources":["../../../src/mcp-sdk/client/McpClient.ts"],"names":[],"mappings":"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"}
@@ -33,50 +33,63 @@ import * as core_Mcp from '../../Mcp.js';
33
33
  export function wrap(client, config) {
34
34
  const { methods } = config;
35
35
  const paymentPreferences = AcceptPayment.resolve(methods);
36
- return {
37
- ...client,
38
- async callTool(params, options) {
39
- const context = options?.context;
40
- const timeout = options?.timeout;
41
- try {
42
- const result = await client.callTool(params, undefined, timeout !== undefined ? { timeout } : undefined);
43
- return {
44
- ...result,
45
- receipt: result._meta?.[core_Mcp.receiptMetaKey],
46
- };
36
+ const callTool = (async (first, second, third) => {
37
+ const hasApprovalArgument = typeof first === 'function' || first === null || first === undefined;
38
+ const params = (hasApprovalArgument ? second : first);
39
+ const options = (hasApprovalArgument ? third : second);
40
+ const onPaymentRequired = first === null
41
+ ? undefined
42
+ : hasApprovalArgument
43
+ ? (first ?? config.onPaymentRequired)
44
+ : config.onPaymentRequired;
45
+ const context = options?.context;
46
+ const timeout = options?.timeout;
47
+ try {
48
+ const result = await client.callTool(params, undefined, timeout !== undefined ? { timeout } : undefined);
49
+ return {
50
+ ...result,
51
+ receipt: result._meta?.[core_Mcp.receiptMetaKey],
52
+ };
53
+ }
54
+ catch (error) {
55
+ // Check if this is a payment required error
56
+ if (!isPaymentRequiredError(error))
57
+ throw error;
58
+ const challenges = error.data?.challenges;
59
+ if (!challenges?.length)
60
+ throw error;
61
+ const selected = AcceptPayment.selectChallenge(challenges, methods, paymentPreferences.entries);
62
+ if (!selected) {
63
+ const available = challenges.map((c) => `${c.method}.${c.intent}`).join(', ');
64
+ const installed = methods.map((m) => `${m.name}.${m.intent}`).join(', ');
65
+ throw new Error(`No compatible payment method. Server offers: ${available}. Client has: ${installed}`, { cause: error });
47
66
  }
48
- catch (error) {
49
- // Check if this is a payment required error
50
- if (!isPaymentRequiredError(error))
51
- throw error;
52
- const challenges = error.data?.challenges;
53
- if (!challenges?.length)
54
- throw error;
55
- const selected = AcceptPayment.selectChallenge(challenges, methods, paymentPreferences.entries);
56
- if (!selected) {
57
- const available = challenges.map((c) => `${c.method}.${c.intent}`).join(', ');
58
- const installed = methods.map((m) => `${m.name}.${m.intent}`).join(', ');
59
- throw new Error(`No compatible payment method. Server offers: ${available}. Client has: ${installed}`, { cause: error });
60
- }
61
- const credential = await createCredential(selected.challenge, {
62
- context,
63
- methods,
64
- });
65
- const parsed = Credential.deserialize(credential);
66
- const retryResult = await client.callTool({
67
- ...params,
68
- _meta: {
69
- ...params._meta,
70
- [core_Mcp.credentialMetaKey]: parsed,
71
- },
72
- }, undefined, timeout !== undefined ? { timeout } : undefined);
73
- return {
74
- ...retryResult,
75
- receipt: retryResult._meta?.[core_Mcp.receiptMetaKey],
76
- };
67
+ if (selected.challenge.expires)
68
+ Expires.assert(selected.challenge.expires, selected.challenge.id);
69
+ if (onPaymentRequired) {
70
+ const approved = await onPaymentRequired(selected.challenge);
71
+ if (!approved)
72
+ throw new Error('Payment declined.', { cause: error });
77
73
  }
78
- },
79
- };
74
+ const credential = await createCredential(selected.challenge, {
75
+ context,
76
+ methods,
77
+ });
78
+ const parsed = Credential.deserialize(credential);
79
+ const retryResult = await client.callTool({
80
+ ...params,
81
+ _meta: {
82
+ ...params._meta,
83
+ [core_Mcp.credentialMetaKey]: parsed,
84
+ },
85
+ }, undefined, timeout !== undefined ? { timeout } : undefined);
86
+ return {
87
+ ...retryResult,
88
+ receipt: retryResult._meta?.[core_Mcp.receiptMetaKey],
89
+ };
90
+ }
91
+ });
92
+ return { ...client, callTool };
80
93
  }
81
94
  /**
82
95
  * Checks if an error is a payment required error.
@@ -1 +1 @@
1
- {"version":3,"file":"McpClient.js","sourceRoot":"","sources":["../../../src/mcp-sdk/client/McpClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"McpClient.js","sourceRoot":"","sources":["../../../src/mcp-sdk/client/McpClient.ts"],"names":[],"mappings":"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"}
@@ -201,18 +201,26 @@ type UniqueIntentHandlers<methods extends readonly Method.AnyServer[], transport
201
201
  }>>;
202
202
  };
203
203
  /** Nested handlers: `mppx.tempo.charge(...)`, grouped by method name then intent. */
204
+ type PublicAlias<method extends Method.AnyServer> = method extends {
205
+ alias?: infer alias;
206
+ } ? Exclude<alias, undefined> extends infer definedAlias ? definedAlias extends string ? string extends definedAlias ? never : definedAlias : never : never : never;
207
+ type PublicIntent<method extends Method.AnyServer> = [PublicAlias<method>] extends [never] ? method extends {
208
+ intent: infer intent extends string;
209
+ } ? intent : never : PublicAlias<method>;
204
210
  type NestedHandlers<methods extends readonly Method.AnyServer[], transport extends Transport.AnyTransport> = {
205
211
  [name in methods[number]['name'] as name extends ReservedKey ? never : name]: {
206
212
  [mi in Extract<methods[number], {
207
213
  name: name;
208
- }> as mi['intent']]: MethodFn<mi, EffectiveTransportOf<mi, transport>, NonNullable<mi['defaults']>> & MethodExtensions<mi> & {
214
+ }> as PublicIntent<mi>]: MethodFn<mi, EffectiveTransportOf<mi, transport>, NonNullable<mi['defaults']>> & MethodExtensions<mi> & {
209
215
  _method: mi;
210
216
  };
211
217
  };
212
218
  };
213
219
  type Handlers<methods extends readonly Method.AnyServer[], transport extends Transport.AnyTransport> = {
214
220
  [mi in methods[number] as `${mi['name']}/${mi['intent']}`]: MethodFn<mi, EffectiveTransportOf<mi, transport>, NonNullable<mi['defaults']>> & MethodExtensions<mi>;
215
- } & UniqueIntentHandlers<methods, transport> & NestedHandlers<methods, transport>;
221
+ } & UniqueIntentHandlers<methods, transport> & NestedHandlers<methods, transport> & {
222
+ [mi in methods[number] as PublicAlias<mi> extends string ? `${mi['name']}/${PublicAlias<mi>}` : never]: MethodFn<mi, EffectiveTransportOf<mi, transport>, NonNullable<mi['defaults']>> & MethodExtensions<mi>;
223
+ };
216
224
  type MethodExtensions<method extends Method.AnyServer> = method extends {
217
225
  extensions?: (infer extensions) | undefined;
218
226
  } ? NonNullable<extensions> extends object ? NonNullable<extensions> : {} : {};
@@ -221,7 +229,7 @@ type ChallengeHandlers<methods extends readonly Method.AnyServer[]> = {
221
229
  [name in methods[number]['name']]: {
222
230
  [mi in Extract<methods[number], {
223
231
  name: name;
224
- }> as mi['intent']]: ChallengeFn<mi, NonNullable<mi['defaults']>>;
232
+ }> as PublicIntent<mi>]: ChallengeFn<mi, NonNullable<mi['defaults']>>;
225
233
  };
226
234
  };
227
235
  /** A function that generates a Challenge object from intent options. */
@@ -1 +1 @@
1
- {"version":3,"file":"Mppx.d.ts","sourceRoot":"","sources":["../../src/server/Mppx.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Mppx.d.ts","sourceRoot":"","sources":["../../src/server/Mppx.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { isDeepStrictEqual } from 'node:util';
2
2
  import * as Challenge from '../Challenge.js';
3
+ import * as Constants from '../Constants.js';
3
4
  import * as Credential from '../Credential.js';
4
5
  import * as Errors from '../Errors.js';
5
6
  import * as Expires from '../Expires.js';
@@ -65,6 +66,7 @@ export function create(config) {
65
66
  method: mi,
66
67
  realm,
67
68
  events: serverEvents,
69
+ preflight: mi.preflight,
68
70
  request: mi.request,
69
71
  respond: mi.respond,
70
72
  secretKey,
@@ -72,9 +74,14 @@ export function create(config) {
72
74
  transport: (mi.transport ?? transport),
73
75
  verify: mi.verify,
74
76
  });
77
+ const wireKey = `${mi.name}/${mi.intent}`;
78
+ const aliasKey = mi.alias ? `${mi.name}/${mi.alias}` : undefined;
75
79
  if (mi.extensions)
76
80
  Object.assign(fn, mi.extensions);
77
- handlers[`${mi.name}/${mi.intent}`] = fn;
81
+ if (!aliasKey || !handlers[wireKey])
82
+ handlers[wireKey] = fn;
83
+ if (aliasKey)
84
+ handlers[aliasKey] = fn;
78
85
  }
79
86
  // Also set shorthand intent key when there's no collision
80
87
  for (const mi of methods) {
@@ -85,16 +92,17 @@ export function create(config) {
85
92
  for (const mi of methods) {
86
93
  if (!handlers[mi.name])
87
94
  handlers[mi.name] = {};
88
- const fn = handlers[`${mi.name}/${mi.intent}`];
95
+ const key = mi.alias ? `${mi.name}/${mi.alias}` : `${mi.name}/${mi.intent}`;
96
+ const fn = handlers[key];
89
97
  fn._method = mi;
90
- handlers[mi.name][mi.intent] = fn;
98
+ handlers[mi.name][mi.alias ?? mi.intent] = fn;
91
99
  }
92
100
  // Build challenge generators: mppx.challenge.tempo.charge(...)
93
101
  const challengeHandlers = {};
94
102
  for (const mi of methods) {
95
103
  if (!challengeHandlers[mi.name])
96
104
  challengeHandlers[mi.name] = {};
97
- challengeHandlers[mi.name][mi.intent] = createChallengeFn({
105
+ challengeHandlers[mi.name][mi.alias ?? mi.intent] = createChallengeFn({
98
106
  defaults: mi.defaults,
99
107
  method: mi,
100
108
  realm,
@@ -105,9 +113,11 @@ export function create(config) {
105
113
  // verifyCredential: single-call end-to-end verification
106
114
  async function verifyCredentialFn(input, options) {
107
115
  const credential = hydrateCredentialMeta(typeof input === 'string' ? Credential.deserialize(input) : input);
108
- // Find matching method by name + intent
116
+ // Find matching method by name + intent, then use method-details markers
117
+ // when multiple handlers intentionally share the same wire identity.
109
118
  const { method: credMethod, intent: credIntent } = credential.challenge;
110
- const mi = methods.find((m) => m.name === credMethod && m.intent === credIntent);
119
+ const methodCandidates = methods.filter((m) => m.name === credMethod && m.intent === credIntent);
120
+ const mi = selectVerificationMethod(methodCandidates, credential.challenge);
111
121
  const eventMethod = mi ?? { intent: credIntent, name: credMethod };
112
122
  const emitStandalonePaymentFailed = async (parameters) => {
113
123
  await serverEvents.emit('payment.failed', createPaymentFailedContext({
@@ -282,8 +292,8 @@ export function create(config) {
282
292
  const key = typeof methodOrKey === 'string'
283
293
  ? methodOrKey
284
294
  : typeof methodOrKey === 'function' && '_method' in methodOrKey
285
- ? `${methodOrKey._method.name}/${methodOrKey._method.intent}`
286
- : `${methodOrKey.name}/${methodOrKey.intent}`;
295
+ ? `${methodOrKey._method.name}/${methodOrKey._method.alias ?? methodOrKey._method.intent}`
296
+ : `${methodOrKey.name}/${methodOrKey.alias ?? methodOrKey.intent}`;
287
297
  const handlerFn = handlers[key];
288
298
  if (!handlerFn)
289
299
  throw new Error(`No handler for "${key}". Is this method in your methods array?`);
@@ -316,11 +326,22 @@ export function create(config) {
316
326
  }
317
327
  // biome-ignore lint/correctness/noUnusedVariables: _
318
328
  function createMethodFn(parameters) {
319
- const { authorize, defaults, events, method, realm, respond, secretKey, stableBinding, transport, verify, } = parameters;
329
+ const { authorize, defaults, events, method, preflight, realm, respond, secretKey, stableBinding, transport, verify, } = parameters;
320
330
  return (options) => {
321
331
  const { description, meta, scope, ...rest } = options;
322
332
  const staticMeta = Scope.merge({ meta, scope });
323
- return Object.assign(async (input) => {
333
+ const internal = {
334
+ ...method,
335
+ ...defaults,
336
+ ...options,
337
+ ...(staticMeta !== undefined ? { meta: staticMeta } : {}),
338
+ name: method.name,
339
+ intent: method.intent,
340
+ html: method.html,
341
+ _canonicalRequest: PaymentRequest.fromMethod(method, { ...defaults, ...rest }),
342
+ _stableBinding: stableBinding,
343
+ };
344
+ const handler = async (input) => {
324
345
  if (method.html && isServiceWorkerRequest(input))
325
346
  return {
326
347
  status: 402,
@@ -343,6 +364,27 @@ function createMethodFn(parameters) {
343
364
  return [null, e];
344
365
  }
345
366
  })();
367
+ if (preflight && input instanceof globalThis.Request) {
368
+ const response = await preflight({
369
+ capturedRequest,
370
+ credential,
371
+ expires,
372
+ input,
373
+ options: { ...defaults, ...rest },
374
+ realm: realm ?? new URL(input.url).hostname ?? 'MPP Payment',
375
+ secretKey,
376
+ });
377
+ if (response) {
378
+ if (response.status === 402)
379
+ return { challenge: response, status: 402 };
380
+ return {
381
+ status: 200,
382
+ withReceipt() {
383
+ return response;
384
+ },
385
+ };
386
+ }
387
+ }
346
388
  const emitChallenge = async (parameters) => {
347
389
  const response = await transport.respondChallenge({
348
390
  challenge: parameters.challenge,
@@ -422,6 +464,7 @@ function createMethodFn(parameters) {
422
464
  if ('response' in routeChallenge)
423
465
  return { challenge: routeChallenge.response, status: 402 };
424
466
  const { challenge, parsedRequest, request } = routeChallenge;
467
+ internal._canonicalRequest = parsedRequest;
425
468
  if (credential && transport.bindCredential) {
426
469
  try {
427
470
  credential = hydrateCredentialMeta((await transport.bindCredential({
@@ -722,18 +765,8 @@ function createMethodFn(parameters) {
722
765
  envelopeForReceipt: envelope,
723
766
  managementResponse,
724
767
  });
725
- }, {
726
- _internal: {
727
- ...method,
728
- ...defaults,
729
- ...options,
730
- ...(staticMeta !== undefined ? { meta: staticMeta } : {}),
731
- name: method.name,
732
- intent: method.intent,
733
- _canonicalRequest: PaymentRequest.fromMethod(method, { ...defaults, ...rest }),
734
- _stableBinding: stableBinding,
735
- },
736
- });
768
+ };
769
+ return Object.assign(handler, { _internal: internal });
737
770
  };
738
771
  }
739
772
  /**
@@ -1079,8 +1112,22 @@ function captureRequestFromInput(input) {
1079
1112
  };
1080
1113
  }
1081
1114
  const coreBindingFields = ['amount', 'currency', 'recipient'];
1082
- const methodBindingFields = ['chainId', 'memo', 'splits', 'unitType'];
1115
+ const methodBindingFields = ['chainId', 'memo', 'sessionProtocol', 'splits', 'unitType'];
1083
1116
  const pinnedRequestBindingFields = [...coreBindingFields, ...methodBindingFields];
1117
+ function selectVerificationMethod(methods, challenge) {
1118
+ if (methods.length <= 1)
1119
+ return methods[0];
1120
+ if (challenge.method !== Constants.Methods.tempo ||
1121
+ challenge.intent !== Constants.Intents.session)
1122
+ return methods[0];
1123
+ const sessionProtocolMarker = Constants.getMethodDetail(challenge.request.methodDetails, Constants.MethodDetailKeys.sessionProtocol);
1124
+ if (sessionProtocolMarker === undefined ||
1125
+ sessionProtocolMarker === Constants.SessionProtocols.v1)
1126
+ return methods.find((method) => method.alias === 'sessionLegacy') ?? methods[0];
1127
+ if (sessionProtocolMarker === Constants.SessionProtocols.v2)
1128
+ return methods.find((method) => method.alias === undefined) ?? methods[0];
1129
+ return undefined;
1130
+ }
1084
1131
  function getChallengeBindingMismatch(expectedChallenge, actualChallenge, stableBinding) {
1085
1132
  if (!stableBinding)
1086
1133
  return getPinnedChallengeMismatch(expectedChallenge, actualChallenge);
@@ -1131,6 +1178,7 @@ function getPinnedRequestBinding(request) {
1131
1178
  const currency = normalizeScalar(request.currency ?? methodDetails.currency);
1132
1179
  const memo = normalizeHex(methodDetails.memo);
1133
1180
  const recipient = normalizeScalar(request.recipient ?? methodDetails.recipient);
1181
+ const sessionProtocol = normalizeScalar(methodDetails.sessionProtocol);
1134
1182
  const splits = normalizeComparable(methodDetails.splits);
1135
1183
  const unitType = normalizeScalar(request.unitType ?? methodDetails.unitType);
1136
1184
  return {
@@ -1142,6 +1190,7 @@ function getPinnedRequestBinding(request) {
1142
1190
  methodBinding: {
1143
1191
  ...(chainId !== undefined ? { chainId } : {}),
1144
1192
  ...(memo !== undefined ? { memo } : {}),
1193
+ ...(sessionProtocol !== undefined ? { sessionProtocol } : {}),
1145
1194
  ...(splits !== undefined ? { splits } : {}),
1146
1195
  ...(unitType !== undefined ? { unitType } : {}),
1147
1196
  },
@@ -1200,7 +1249,7 @@ function withParsedCredentialPayload(credential, payload) {
1200
1249
  payload,
1201
1250
  };
1202
1251
  }
1203
- const paymentAuthChallengeHeader = 'WWW-Authenticate';
1252
+ const paymentAuthChallengeHeader = Constants.Headers.wwwAuthenticate;
1204
1253
  const challengeHeaderMerges = [
1205
1254
  {
1206
1255
  name: paymentAuthChallengeHeader,
@@ -1257,7 +1306,7 @@ export function compose(...args) {
1257
1306
  // Try to extract a Payment credential to decide whether to dispatch or challenge.
1258
1307
  // Only gate on the Payment scheme — other auth schemes (Bearer, Basic, etc.)
1259
1308
  // should fall through to the merged-402 path so all offers are presented.
1260
- const header = input.headers.get('Authorization');
1309
+ const header = input.headers.get(Constants.Headers.authorization);
1261
1310
  const paymentHeader = header ? Credential.extractPaymentScheme(header) : null;
1262
1311
  if (paymentHeader) {
1263
1312
  // Parse the credential to find method+intent for dispatch.
@@ -1325,7 +1374,7 @@ export function compose(...args) {
1325
1374
  result,
1326
1375
  });
1327
1376
  }
1328
- const acceptPayment = input.headers.get('Accept-Payment');
1377
+ const acceptPayment = input.headers.get(Constants.Headers.acceptPayment);
1329
1378
  if (!acceptPayment)
1330
1379
  return entries;
1331
1380
  try {
@@ -1340,7 +1389,7 @@ export function compose(...args) {
1340
1389
  }
1341
1390
  })();
1342
1391
  const challengeResponses = results.flatMap((result) => result.status === 402 ? [result.challenge] : []);
1343
- const unnegotiatedX402Responses = input.headers.has('Accept-Payment') || challengeEntries.length === 0
1392
+ const unnegotiatedX402Responses = input.headers.has(Constants.Headers.acceptPayment) || challengeEntries.length === 0
1344
1393
  ? []
1345
1394
  : challengeResponses.filter((response) => response.headers.has(x402_Types.paymentRequiredHeader) &&
1346
1395
  !response.headers.has(paymentAuthChallengeHeader));