mppx 0.6.31 → 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 (477) hide show
  1. package/CHANGELOG.md +17 -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/Response.d.ts.map +1 -1
  62. package/dist/server/Response.js +2 -1
  63. package/dist/server/Response.js.map +1 -1
  64. package/dist/server/Transport.d.ts.map +1 -1
  65. package/dist/server/Transport.js +4 -3
  66. package/dist/server/Transport.js.map +1 -1
  67. package/dist/server/index.d.ts +1 -0
  68. package/dist/server/index.d.ts.map +1 -1
  69. package/dist/server/index.js +1 -0
  70. package/dist/server/index.js.map +1 -1
  71. package/dist/stripe/client/Charge.d.ts +1 -1
  72. package/dist/stripe/client/Charge.d.ts.map +1 -1
  73. package/dist/stripe/client/Charge.js +3 -1
  74. package/dist/stripe/client/Charge.js.map +1 -1
  75. package/dist/stripe/server/Charge.d.ts +1 -1
  76. package/dist/stripe/server/Charge.d.ts.map +1 -1
  77. package/dist/stripe/server/Charge.js +9 -2
  78. package/dist/stripe/server/Charge.js.map +1 -1
  79. package/dist/stripe/server/Methods.d.ts +1 -1
  80. package/dist/stripe/server/Methods.d.ts.map +1 -1
  81. package/dist/stripe/server/internal/html.gen.d.ts +1 -1
  82. package/dist/stripe/server/internal/html.gen.d.ts.map +1 -1
  83. package/dist/stripe/server/internal/html.gen.js +1 -1
  84. package/dist/stripe/server/internal/html.gen.js.map +1 -1
  85. package/dist/tempo/Methods.d.ts +18 -0
  86. package/dist/tempo/Methods.d.ts.map +1 -1
  87. package/dist/tempo/Methods.js +16 -1
  88. package/dist/tempo/Methods.js.map +1 -1
  89. package/dist/tempo/client/Charge.d.ts +6 -0
  90. package/dist/tempo/client/Charge.d.ts.map +1 -1
  91. package/dist/tempo/client/Charge.js +9 -2
  92. package/dist/tempo/client/Charge.js.map +1 -1
  93. package/dist/tempo/client/Methods.d.ts +36 -7
  94. package/dist/tempo/client/Methods.d.ts.map +1 -1
  95. package/dist/tempo/client/Methods.js +12 -5
  96. package/dist/tempo/client/Methods.js.map +1 -1
  97. package/dist/tempo/client/index.d.ts +7 -4
  98. package/dist/tempo/client/index.d.ts.map +1 -1
  99. package/dist/tempo/client/index.js +5 -3
  100. package/dist/tempo/client/index.js.map +1 -1
  101. package/dist/tempo/index.d.ts +1 -0
  102. package/dist/tempo/index.d.ts.map +1 -1
  103. package/dist/tempo/index.js +1 -0
  104. package/dist/tempo/index.js.map +1 -1
  105. package/dist/tempo/internal/fee-payer.d.ts +21 -1
  106. package/dist/tempo/internal/fee-payer.d.ts.map +1 -1
  107. package/dist/tempo/internal/fee-payer.js +109 -4
  108. package/dist/tempo/internal/fee-payer.js.map +1 -1
  109. package/dist/tempo/{client → legacy/client}/ChannelOps.d.ts +19 -6
  110. package/dist/tempo/legacy/client/ChannelOps.d.ts.map +1 -0
  111. package/dist/tempo/{client → legacy/client}/ChannelOps.js +9 -3
  112. package/dist/tempo/legacy/client/ChannelOps.js.map +1 -0
  113. package/dist/tempo/{client → legacy/client}/Session.d.ts +23 -4
  114. package/dist/tempo/legacy/client/Session.d.ts.map +1 -0
  115. package/dist/tempo/{client → legacy/client}/Session.js +14 -7
  116. package/dist/tempo/legacy/client/Session.js.map +1 -0
  117. package/dist/tempo/{client → legacy/client}/SessionManager.d.ts +20 -5
  118. package/dist/tempo/legacy/client/SessionManager.d.ts.map +1 -0
  119. package/dist/tempo/{client → legacy/client}/SessionManager.js +20 -16
  120. package/dist/tempo/legacy/client/SessionManager.js.map +1 -0
  121. package/dist/tempo/legacy/client/index.d.ts +7 -0
  122. package/dist/tempo/legacy/client/index.d.ts.map +1 -0
  123. package/dist/tempo/legacy/client/index.js +5 -0
  124. package/dist/tempo/legacy/client/index.js.map +1 -0
  125. package/dist/tempo/legacy/index.d.ts +7 -0
  126. package/dist/tempo/legacy/index.d.ts.map +1 -0
  127. package/dist/tempo/legacy/index.js +7 -0
  128. package/dist/tempo/legacy/index.js.map +1 -0
  129. package/dist/tempo/{server → legacy/server}/Session.d.ts +28 -11
  130. package/dist/tempo/legacy/server/Session.d.ts.map +1 -0
  131. package/dist/tempo/{server → legacy/server}/Session.js +12 -10
  132. package/dist/tempo/legacy/server/Session.js.map +1 -0
  133. package/dist/tempo/legacy/server/index.d.ts +5 -0
  134. package/dist/tempo/legacy/server/index.d.ts.map +1 -0
  135. package/dist/tempo/legacy/server/index.js +5 -0
  136. package/dist/tempo/legacy/server/index.js.map +1 -0
  137. package/dist/tempo/{session → legacy/session}/Chain.d.ts +30 -23
  138. package/dist/tempo/legacy/session/Chain.d.ts.map +1 -0
  139. package/dist/tempo/{session → legacy/session}/Chain.js +12 -11
  140. package/dist/tempo/legacy/session/Chain.js.map +1 -0
  141. package/dist/tempo/{session → legacy/session}/Channel.d.ts +1 -0
  142. package/dist/tempo/legacy/session/Channel.d.ts.map +1 -0
  143. package/dist/tempo/legacy/session/Channel.js.map +1 -0
  144. package/dist/tempo/legacy/session/ChannelStore.d.ts +22 -0
  145. package/dist/tempo/legacy/session/ChannelStore.d.ts.map +1 -0
  146. package/dist/tempo/legacy/session/ChannelStore.js +6 -0
  147. package/dist/tempo/legacy/session/ChannelStore.js.map +1 -0
  148. package/dist/tempo/legacy/session/Types.d.ts +73 -0
  149. package/dist/tempo/legacy/session/Types.d.ts.map +1 -0
  150. package/dist/tempo/legacy/session/Types.js.map +1 -0
  151. package/dist/tempo/{session → legacy/session}/Voucher.d.ts +4 -4
  152. package/dist/tempo/legacy/session/Voucher.d.ts.map +1 -0
  153. package/dist/tempo/{session → legacy/session}/Voucher.js +1 -1
  154. package/dist/tempo/legacy/session/Voucher.js.map +1 -0
  155. package/dist/tempo/{session → legacy/session}/escrow.abi.d.ts +1 -0
  156. package/dist/tempo/{session → legacy/session}/escrow.abi.d.ts.map +1 -1
  157. package/dist/tempo/{session → legacy/session}/escrow.abi.js +1 -0
  158. package/dist/tempo/legacy/session/escrow.abi.js.map +1 -0
  159. package/dist/tempo/legacy/session/index.d.ts +9 -0
  160. package/dist/tempo/legacy/session/index.d.ts.map +1 -0
  161. package/dist/tempo/legacy/session/index.js +9 -0
  162. package/dist/tempo/legacy/session/index.js.map +1 -0
  163. package/dist/tempo/server/Charge.d.ts +1 -1
  164. package/dist/tempo/server/Charge.d.ts.map +1 -1
  165. package/dist/tempo/server/Charge.js +13 -16
  166. package/dist/tempo/server/Charge.js.map +1 -1
  167. package/dist/tempo/server/Methods.d.ts +63 -6
  168. package/dist/tempo/server/Methods.d.ts.map +1 -1
  169. package/dist/tempo/server/Methods.js +36 -8
  170. package/dist/tempo/server/Methods.js.map +1 -1
  171. package/dist/tempo/server/Subscription.d.ts +1 -1
  172. package/dist/tempo/server/Subscription.d.ts.map +1 -1
  173. package/dist/tempo/server/index.d.ts +6 -5
  174. package/dist/tempo/server/index.d.ts.map +1 -1
  175. package/dist/tempo/server/index.js +5 -5
  176. package/dist/tempo/server/index.js.map +1 -1
  177. package/dist/tempo/server/internal/html.gen.d.ts +1 -1
  178. package/dist/tempo/server/internal/html.gen.d.ts.map +1 -1
  179. package/dist/tempo/server/internal/html.gen.js +1 -1
  180. package/dist/tempo/server/internal/html.gen.js.map +1 -1
  181. package/dist/tempo/server/internal/request-body.d.ts +7 -2
  182. package/dist/tempo/server/internal/request-body.d.ts.map +1 -1
  183. package/dist/tempo/server/internal/request-body.js +20 -3
  184. package/dist/tempo/server/internal/request-body.js.map +1 -1
  185. package/dist/tempo/server/internal/transport.d.ts +8 -4
  186. package/dist/tempo/server/internal/transport.d.ts.map +1 -1
  187. package/dist/tempo/server/internal/transport.js +8 -7
  188. package/dist/tempo/server/internal/transport.js.map +1 -1
  189. package/dist/tempo/session/Snapshot.d.ts +32 -0
  190. package/dist/tempo/session/Snapshot.d.ts.map +1 -0
  191. package/dist/tempo/session/Snapshot.js +37 -0
  192. package/dist/tempo/session/Snapshot.js.map +1 -0
  193. package/dist/tempo/session/client/ChannelOps.d.ts +82 -0
  194. package/dist/tempo/session/client/ChannelOps.d.ts.map +1 -0
  195. package/dist/tempo/session/client/ChannelOps.js +204 -0
  196. package/dist/tempo/session/client/ChannelOps.js.map +1 -0
  197. package/dist/tempo/session/client/CredentialState.d.ts +262 -0
  198. package/dist/tempo/session/client/CredentialState.d.ts.map +1 -0
  199. package/dist/tempo/session/client/CredentialState.js +417 -0
  200. package/dist/tempo/session/client/CredentialState.js.map +1 -0
  201. package/dist/tempo/session/client/ReceiptCoordinator.d.ts +26 -0
  202. package/dist/tempo/session/client/ReceiptCoordinator.d.ts.map +1 -0
  203. package/dist/tempo/session/client/ReceiptCoordinator.js +61 -0
  204. package/dist/tempo/session/client/ReceiptCoordinator.js.map +1 -0
  205. package/dist/tempo/session/client/Runtime.d.ts +464 -0
  206. package/dist/tempo/session/client/Runtime.d.ts.map +1 -0
  207. package/dist/tempo/session/client/Runtime.js +499 -0
  208. package/dist/tempo/session/client/Runtime.js.map +1 -0
  209. package/dist/tempo/session/client/Session.d.ts +132 -0
  210. package/dist/tempo/session/client/Session.d.ts.map +1 -0
  211. package/dist/tempo/session/client/Session.js +55 -0
  212. package/dist/tempo/session/client/Session.js.map +1 -0
  213. package/dist/tempo/session/client/SessionManager.d.ts +120 -0
  214. package/dist/tempo/session/client/SessionManager.d.ts.map +1 -0
  215. package/dist/tempo/session/client/SessionManager.js +627 -0
  216. package/dist/tempo/session/client/SessionManager.js.map +1 -0
  217. package/dist/tempo/session/client/Transports.d.ts +449 -0
  218. package/dist/tempo/session/client/Transports.d.ts.map +1 -0
  219. package/dist/tempo/session/client/Transports.js +721 -0
  220. package/dist/tempo/session/client/Transports.js.map +1 -0
  221. package/dist/tempo/session/client/index.d.ts +12 -0
  222. package/dist/tempo/session/client/index.d.ts.map +1 -0
  223. package/dist/tempo/session/client/index.js +5 -0
  224. package/dist/tempo/session/client/index.js.map +1 -0
  225. package/dist/tempo/session/index.d.ts +7 -8
  226. package/dist/tempo/session/index.d.ts.map +1 -1
  227. package/dist/tempo/session/index.js +7 -8
  228. package/dist/tempo/session/index.js.map +1 -1
  229. package/dist/tempo/session/precompile/Chain.d.ts +319 -0
  230. package/dist/tempo/session/precompile/Chain.d.ts.map +1 -0
  231. package/dist/tempo/session/precompile/Chain.js +492 -0
  232. package/dist/tempo/session/precompile/Chain.js.map +1 -0
  233. package/dist/tempo/session/precompile/Channel.d.ts +46 -0
  234. package/dist/tempo/session/precompile/Channel.d.ts.map +1 -0
  235. package/dist/tempo/session/precompile/Channel.js +56 -0
  236. package/dist/tempo/session/precompile/Channel.js.map +1 -0
  237. package/dist/tempo/session/precompile/Protocol.d.ts +308 -0
  238. package/dist/tempo/session/precompile/Protocol.d.ts.map +1 -0
  239. package/dist/tempo/session/precompile/Protocol.js +264 -0
  240. package/dist/tempo/session/precompile/Protocol.js.map +1 -0
  241. package/dist/tempo/session/precompile/Voucher.d.ts +40 -0
  242. package/dist/tempo/session/precompile/Voucher.d.ts.map +1 -0
  243. package/dist/tempo/session/precompile/Voucher.js +126 -0
  244. package/dist/tempo/session/precompile/Voucher.js.map +1 -0
  245. package/dist/tempo/session/precompile/escrow.abi.d.ts +522 -0
  246. package/dist/tempo/session/precompile/escrow.abi.d.ts.map +1 -0
  247. package/dist/tempo/session/precompile/escrow.abi.js +224 -0
  248. package/dist/tempo/session/precompile/escrow.abi.js.map +1 -0
  249. package/dist/tempo/session/precompile/index.d.ts +24 -0
  250. package/dist/tempo/session/precompile/index.d.ts.map +1 -0
  251. package/dist/tempo/session/precompile/index.js +22 -0
  252. package/dist/tempo/session/precompile/index.js.map +1 -0
  253. package/dist/tempo/session/server/ChannelOps.d.ts +56 -0
  254. package/dist/tempo/session/server/ChannelOps.d.ts.map +1 -0
  255. package/dist/tempo/session/server/ChannelOps.js +91 -0
  256. package/dist/tempo/session/server/ChannelOps.js.map +1 -0
  257. package/dist/tempo/session/server/ChannelStore.d.ts +347 -0
  258. package/dist/tempo/session/server/ChannelStore.d.ts.map +1 -0
  259. package/dist/tempo/session/server/ChannelStore.js +404 -0
  260. package/dist/tempo/session/server/ChannelStore.js.map +1 -0
  261. package/dist/tempo/session/server/CredentialVerification.d.ts +85 -0
  262. package/dist/tempo/session/server/CredentialVerification.d.ts.map +1 -0
  263. package/dist/tempo/session/server/CredentialVerification.js +494 -0
  264. package/dist/tempo/session/server/CredentialVerification.js.map +1 -0
  265. package/dist/tempo/session/server/MeteredStream.d.ts +40 -0
  266. package/dist/tempo/session/server/MeteredStream.d.ts.map +1 -0
  267. package/dist/tempo/session/server/MeteredStream.js +42 -0
  268. package/dist/tempo/session/server/MeteredStream.js.map +1 -0
  269. package/dist/tempo/session/server/RequestState.d.ts +208 -0
  270. package/dist/tempo/session/server/RequestState.d.ts.map +1 -0
  271. package/dist/tempo/session/server/RequestState.js +252 -0
  272. package/dist/tempo/session/server/RequestState.js.map +1 -0
  273. package/dist/tempo/session/server/Session.d.ts +169 -0
  274. package/dist/tempo/session/server/Session.d.ts.map +1 -0
  275. package/dist/tempo/session/server/Session.js +351 -0
  276. package/dist/tempo/session/server/Session.js.map +1 -0
  277. package/dist/tempo/session/server/Settlement.d.ts +185 -0
  278. package/dist/tempo/session/server/Settlement.d.ts.map +1 -0
  279. package/dist/tempo/session/server/Settlement.js +250 -0
  280. package/dist/tempo/session/server/Settlement.js.map +1 -0
  281. package/dist/tempo/session/{Sse.d.ts → server/Sse.d.ts} +9 -56
  282. package/dist/tempo/session/server/Sse.d.ts.map +1 -0
  283. package/dist/tempo/session/server/Sse.js +184 -0
  284. package/dist/tempo/session/server/Sse.js.map +1 -0
  285. package/dist/tempo/session/server/Transports.d.ts +89 -0
  286. package/dist/tempo/session/server/Transports.d.ts.map +1 -0
  287. package/dist/tempo/session/server/Transports.js +149 -0
  288. package/dist/tempo/session/server/Transports.js.map +1 -0
  289. package/dist/tempo/session/server/Ws.d.ts +48 -0
  290. package/dist/tempo/session/server/Ws.d.ts.map +1 -0
  291. package/dist/tempo/session/server/Ws.js +244 -0
  292. package/dist/tempo/session/server/Ws.js.map +1 -0
  293. package/dist/tempo/session/server/index.d.ts +4 -0
  294. package/dist/tempo/session/server/index.d.ts.map +1 -0
  295. package/dist/tempo/session/server/index.js +2 -0
  296. package/dist/tempo/session/server/index.js.map +1 -0
  297. package/package.json +6 -1
  298. package/src/Challenge.ts +9 -7
  299. package/src/Constants.ts +58 -0
  300. package/src/Credential.ts +5 -4
  301. package/src/Method.ts +46 -5
  302. package/src/Receipt.ts +3 -2
  303. package/src/cli/cli.test.ts +23 -28
  304. package/src/cli/cli.ts +23 -10
  305. package/src/cli/mcp.test.ts +21 -7
  306. package/src/cli/plugins/tempo.ts +21 -8
  307. package/src/cli/utils.test.ts +25 -1
  308. package/src/cli/utils.ts +10 -0
  309. package/src/client/Methods.ts +5 -2
  310. package/src/client/Mppx.test-d.ts +10 -0
  311. package/src/client/Mppx.test.ts +75 -0
  312. package/src/client/Transport.ts +4 -5
  313. package/src/client/index.ts +11 -1
  314. package/src/client/internal/Fetch.test.ts +29 -4
  315. package/src/client/internal/Fetch.ts +17 -5
  316. package/src/env.d.ts +1 -1
  317. package/src/index.ts +1 -0
  318. package/src/internal/AcceptPayment.test.ts +61 -0
  319. package/src/internal/AcceptPayment.ts +21 -14
  320. package/src/mcp-sdk/client/McpClient.integration.test.ts +8 -7
  321. package/src/mcp-sdk/client/McpClient.test-d.ts +7 -0
  322. package/src/mcp-sdk/client/McpClient.ts +99 -67
  323. package/src/mcp-sdk/client/McpClient.unit.test.ts +131 -0
  324. package/src/middlewares/elysia.test.ts +8 -4
  325. package/src/middlewares/express.test.ts +8 -4
  326. package/src/middlewares/hono.test.ts +4 -4
  327. package/src/middlewares/nextjs.test.ts +8 -4
  328. package/src/proxy/Proxy.test.ts +8 -8
  329. package/src/server/Mppx.test-d.ts +54 -0
  330. package/src/server/Mppx.test.ts +200 -7
  331. package/src/server/Mppx.ts +487 -406
  332. package/src/server/Response.ts +2 -1
  333. package/src/server/Transport.ts +4 -3
  334. package/src/server/index.ts +1 -0
  335. package/src/stripe/client/Charge.test.ts +20 -5
  336. package/src/stripe/client/Charge.ts +6 -2
  337. package/src/stripe/server/Charge.test.ts +114 -1
  338. package/src/stripe/server/Charge.ts +13 -2
  339. package/src/stripe/server/internal/html.gen.ts +1 -1
  340. package/src/tempo/AccessKeyAuthorization.test.ts +4 -94
  341. package/src/tempo/Methods.test.ts +45 -17
  342. package/src/tempo/Methods.ts +22 -0
  343. package/src/tempo/PublicExports.test-d.ts +105 -0
  344. package/src/tempo/client/Charge.test.ts +85 -0
  345. package/src/tempo/client/Charge.ts +19 -2
  346. package/src/tempo/client/Methods.ts +18 -6
  347. package/src/tempo/client/index.ts +15 -4
  348. package/src/tempo/index.ts +1 -0
  349. package/src/tempo/internal/fee-payer.test.ts +241 -17
  350. package/src/tempo/internal/fee-payer.ts +150 -4
  351. package/src/tempo/internal/fee-token.test.ts +14 -9
  352. package/src/tempo/legacy/AccessKeyAuthorization.test.ts +162 -0
  353. package/src/tempo/legacy/README.md +9 -0
  354. package/src/tempo/{client → legacy/client}/ChannelOps.test.ts +6 -7
  355. package/src/tempo/{client → legacy/client}/ChannelOps.ts +22 -9
  356. package/src/tempo/{client → legacy/client}/Session.test.ts +51 -9
  357. package/src/tempo/{client → legacy/client}/Session.ts +25 -11
  358. package/src/tempo/{client → legacy/client}/SessionManager.test.ts +81 -9
  359. package/src/tempo/{client → legacy/client}/SessionManager.ts +41 -20
  360. package/src/tempo/legacy/client/index.ts +6 -0
  361. package/src/tempo/legacy/index.ts +6 -0
  362. package/src/tempo/{server → legacy/server}/Session.test.ts +45 -45
  363. package/src/tempo/{server → legacy/server}/Session.ts +32 -23
  364. package/src/tempo/legacy/server/index.ts +4 -0
  365. package/src/tempo/{session → legacy/session}/Chain.test.ts +3 -4
  366. package/src/tempo/{session → legacy/session}/Chain.ts +94 -63
  367. package/src/tempo/{session → legacy/session}/Channel.ts +1 -0
  368. package/src/tempo/legacy/session/ChannelStore.test.ts +58 -0
  369. package/src/tempo/legacy/session/ChannelStore.ts +39 -0
  370. package/src/tempo/legacy/session/Types.ts +91 -0
  371. package/src/tempo/{session → legacy/session}/Voucher.ts +12 -8
  372. package/src/tempo/{session → legacy/session}/escrow.abi.ts +1 -0
  373. package/src/tempo/legacy/session/index.ts +8 -0
  374. package/src/tempo/server/AtomicStore.test-d.ts +16 -11
  375. package/src/tempo/server/Charge.test.ts +92 -14
  376. package/src/tempo/server/Charge.ts +18 -16
  377. package/src/tempo/server/Methods.ts +54 -8
  378. package/src/tempo/server/Sse.test.ts +2 -2
  379. package/src/tempo/server/index.ts +6 -5
  380. package/src/tempo/server/internal/html.gen.ts +1 -1
  381. package/src/tempo/server/internal/request-body.test.ts +37 -4
  382. package/src/tempo/server/internal/request-body.ts +25 -6
  383. package/src/tempo/server/internal/transport.test.ts +4 -4
  384. package/src/tempo/server/internal/transport.ts +19 -10
  385. package/src/tempo/session/Snapshot.test.ts +41 -0
  386. package/src/tempo/session/Snapshot.ts +74 -0
  387. package/src/tempo/session/client/ChannelOps.test.ts +163 -0
  388. package/src/tempo/session/client/ChannelOps.ts +344 -0
  389. package/src/tempo/session/client/CredentialState.test.ts +645 -0
  390. package/src/tempo/session/client/CredentialState.ts +814 -0
  391. package/src/tempo/session/client/ReceiptCoordinator.ts +95 -0
  392. package/src/tempo/session/client/Runtime.test.ts +1092 -0
  393. package/src/tempo/session/client/Runtime.ts +986 -0
  394. package/src/tempo/session/client/Session.test.ts +734 -0
  395. package/src/tempo/session/client/Session.ts +97 -0
  396. package/src/tempo/session/client/SessionManager.test.ts +1308 -0
  397. package/src/tempo/session/client/SessionManager.ts +845 -0
  398. package/src/tempo/session/client/Transports.test.ts +837 -0
  399. package/src/tempo/session/client/Transports.ts +1292 -0
  400. package/src/tempo/session/client/index.ts +37 -0
  401. package/src/tempo/session/index.ts +7 -8
  402. package/src/tempo/session/precompile/Chain.integration.test.ts +321 -0
  403. package/src/tempo/session/precompile/Chain.test.ts +1258 -0
  404. package/src/tempo/session/precompile/Chain.ts +979 -0
  405. package/src/tempo/session/precompile/Channel.test.ts +138 -0
  406. package/src/tempo/session/precompile/Channel.ts +103 -0
  407. package/src/tempo/session/precompile/Protocol.test.ts +358 -0
  408. package/src/tempo/session/precompile/Protocol.ts +520 -0
  409. package/src/tempo/session/precompile/Voucher.test.ts +316 -0
  410. package/src/tempo/session/precompile/Voucher.ts +160 -0
  411. package/src/tempo/session/precompile/escrow.abi.ts +226 -0
  412. package/src/tempo/session/precompile/index.ts +33 -0
  413. package/src/tempo/session/server/ChannelOps.test.ts +129 -0
  414. package/src/tempo/session/server/ChannelOps.ts +157 -0
  415. package/src/tempo/session/{ChannelStore.test.ts → server/ChannelStore.test.ts} +536 -29
  416. package/src/tempo/session/server/ChannelStore.ts +835 -0
  417. package/src/tempo/session/server/CredentialVerification.test.ts +146 -0
  418. package/src/tempo/session/server/CredentialVerification.ts +710 -0
  419. package/src/tempo/session/server/MeteredStream.ts +88 -0
  420. package/src/tempo/session/server/RequestState.test.ts +531 -0
  421. package/src/tempo/session/server/RequestState.ts +499 -0
  422. package/src/tempo/session/server/Session.integration.test.ts +444 -0
  423. package/src/tempo/session/server/Session.test.ts +3253 -0
  424. package/src/tempo/session/server/Session.ts +543 -0
  425. package/src/tempo/session/server/Settlement.test.ts +242 -0
  426. package/src/tempo/session/server/Settlement.ts +470 -0
  427. package/src/tempo/session/{Sse.test.ts → server/Sse.test.ts} +37 -3
  428. package/src/tempo/session/server/Sse.ts +256 -0
  429. package/src/tempo/session/server/Transports.test.ts +346 -0
  430. package/src/tempo/session/server/Transports.ts +255 -0
  431. package/src/tempo/session/{Ws.test.ts → server/Ws.test.ts} +4 -4
  432. package/src/tempo/session/server/Ws.ts +384 -0
  433. package/src/tempo/session/server/index.ts +8 -0
  434. package/dist/tempo/client/ChannelOps.d.ts.map +0 -1
  435. package/dist/tempo/client/ChannelOps.js.map +0 -1
  436. package/dist/tempo/client/Session.d.ts.map +0 -1
  437. package/dist/tempo/client/Session.js.map +0 -1
  438. package/dist/tempo/client/SessionManager.d.ts.map +0 -1
  439. package/dist/tempo/client/SessionManager.js.map +0 -1
  440. package/dist/tempo/server/Session.d.ts.map +0 -1
  441. package/dist/tempo/server/Session.js.map +0 -1
  442. package/dist/tempo/session/Chain.d.ts.map +0 -1
  443. package/dist/tempo/session/Chain.js.map +0 -1
  444. package/dist/tempo/session/Channel.d.ts.map +0 -1
  445. package/dist/tempo/session/Channel.js.map +0 -1
  446. package/dist/tempo/session/ChannelStore.d.ts +0 -117
  447. package/dist/tempo/session/ChannelStore.d.ts.map +0 -1
  448. package/dist/tempo/session/ChannelStore.js +0 -172
  449. package/dist/tempo/session/ChannelStore.js.map +0 -1
  450. package/dist/tempo/session/Receipt.d.ts +0 -22
  451. package/dist/tempo/session/Receipt.d.ts.map +0 -1
  452. package/dist/tempo/session/Receipt.js +0 -34
  453. package/dist/tempo/session/Receipt.js.map +0 -1
  454. package/dist/tempo/session/Sse.d.ts.map +0 -1
  455. package/dist/tempo/session/Sse.js +0 -363
  456. package/dist/tempo/session/Sse.js.map +0 -1
  457. package/dist/tempo/session/Types.d.ts +0 -78
  458. package/dist/tempo/session/Types.d.ts.map +0 -1
  459. package/dist/tempo/session/Types.js.map +0 -1
  460. package/dist/tempo/session/Voucher.d.ts.map +0 -1
  461. package/dist/tempo/session/Voucher.js.map +0 -1
  462. package/dist/tempo/session/Ws.d.ts +0 -87
  463. package/dist/tempo/session/Ws.d.ts.map +0 -1
  464. package/dist/tempo/session/Ws.js +0 -443
  465. package/dist/tempo/session/Ws.js.map +0 -1
  466. package/dist/tempo/session/escrow.abi.js.map +0 -1
  467. package/src/tempo/session/ChannelStore.ts +0 -308
  468. package/src/tempo/session/Receipt.test.ts +0 -89
  469. package/src/tempo/session/Receipt.ts +0 -46
  470. package/src/tempo/session/Sse.ts +0 -462
  471. package/src/tempo/session/Types.ts +0 -86
  472. package/src/tempo/session/Ws.ts +0 -576
  473. /package/dist/tempo/{session → legacy/session}/Channel.js +0 -0
  474. /package/dist/tempo/{session → legacy/session}/Types.js +0 -0
  475. /package/src/tempo/{session → legacy/session}/Channel.test.ts +0 -0
  476. /package/src/tempo/{session → legacy/session}/Voucher.test.ts +0 -0
  477. /package/src/tempo/session/{Sse.fuzz.test.ts → server/Sse.fuzz.test.ts} +0 -0
@@ -0,0 +1,126 @@
1
+ import { Signature } from 'ox';
2
+ import { Channel, SignatureEnvelope } from 'ox/tempo';
3
+ import { hashTypedData } from 'viem';
4
+ import { signTypedData } from 'viem/actions';
5
+ import { Account as TempoAccount } from 'viem/tempo';
6
+ import * as TempoAddress from '../../internal/address.js';
7
+ import { uint96 } from './Protocol.js';
8
+ /** Must match the on-chain TIP-20 channel reserve DOMAIN_SEPARATOR name. */
9
+ const DOMAIN_NAME = 'TIP20 Channel Reserve';
10
+ /** Must match the on-chain TIP20 channel escrow DOMAIN_SEPARATOR version. */
11
+ const DOMAIN_VERSION = '1';
12
+ /**
13
+ * EIP-712 domain for voucher signing.
14
+ */
15
+ export function getVoucherDomain(escrowContract, chainId) {
16
+ return {
17
+ name: DOMAIN_NAME,
18
+ version: DOMAIN_VERSION,
19
+ chainId,
20
+ verifyingContract: escrowContract,
21
+ };
22
+ }
23
+ /**
24
+ * EIP-712 types for voucher signing.
25
+ * Matches @tempo/stream-channels/voucher and on-chain VOUCHER_TYPEHASH.
26
+ */
27
+ export const voucherTypes = {
28
+ Voucher: [
29
+ { name: 'channelId', type: 'bytes32' },
30
+ { name: 'cumulativeAmount', type: 'uint96' },
31
+ ],
32
+ };
33
+ function getVoucherDigest(chainId, voucher) {
34
+ return Channel.getVoucherSignPayload({
35
+ chainId,
36
+ channelId: voucher.channelId,
37
+ cumulativeAmount: voucher.cumulativeAmount,
38
+ });
39
+ }
40
+ function signCanonicalTempoVoucher(account, parameters) {
41
+ // viem/tempo's canonical TIP-1034 voucher signer accepts Tempo account
42
+ // extensions that are wider than viem's base Account type. Keep that
43
+ // compatibility bridge here and fall back to generic EIP-712 below.
44
+ return TempoAccount.signVoucher(account, {
45
+ chainId: parameters.chainId,
46
+ channel: parameters.channelId,
47
+ cumulativeAmount: parameters.cumulativeAmount,
48
+ });
49
+ }
50
+ /**
51
+ * Sign a voucher with an account.
52
+ */
53
+ export async function signVoucher(client, account, voucher, verifyingContract, chainId, _authorizedSigner) {
54
+ const signature = await (async () => {
55
+ if (verifyingContract.toLowerCase() === Channel.address.toLowerCase()) {
56
+ try {
57
+ return await signCanonicalTempoVoucher(account, {
58
+ chainId,
59
+ channelId: voucher.channelId,
60
+ cumulativeAmount: voucher.cumulativeAmount,
61
+ });
62
+ }
63
+ catch { }
64
+ }
65
+ return signTypedData(client, {
66
+ account,
67
+ domain: getVoucherDomain(verifyingContract, chainId),
68
+ types: voucherTypes,
69
+ primaryType: 'Voucher',
70
+ message: voucher,
71
+ });
72
+ })();
73
+ const envelope = SignatureEnvelope.from(signature);
74
+ if (envelope.type === 'keychain' && envelope.inner.type === 'secp256k1')
75
+ return Signature.toHex(envelope.inner.signature);
76
+ if (envelope.type === 'keychain' || envelope.type !== 'secp256k1')
77
+ throw new Error('TIP-1034 voucher signing only supports secp256k1 voucher signatures.');
78
+ return signature;
79
+ }
80
+ /**
81
+ * Verify a voucher signature matches the expected signer.
82
+ *
83
+ * Only accepts raw secp256k1 signatures — the escrow contract verifies
84
+ * via ecrecover. Keychain, p256, and webAuthn signatures are rejected.
85
+ */
86
+ export function verifyVoucher(escrowContract, chainId, voucher, expectedSigner) {
87
+ try {
88
+ const envelope = SignatureEnvelope.from(voucher.signature);
89
+ // Reject keychain signatures — the escrow contract verifies raw ECDSA
90
+ // signatures against authorizedSigner, not keychain-wrapped ones.
91
+ if (envelope.type === 'keychain')
92
+ return false;
93
+ if (envelope.type !== 'secp256k1')
94
+ return false;
95
+ if (SignatureEnvelope.serialize(envelope).toLowerCase() !== voucher.signature.toLowerCase())
96
+ return false;
97
+ const payload = escrowContract.toLowerCase() === Channel.address.toLowerCase()
98
+ ? getVoucherDigest(chainId, voucher)
99
+ : hashTypedData({
100
+ domain: getVoucherDomain(escrowContract, chainId),
101
+ types: voucherTypes,
102
+ primaryType: 'Voucher',
103
+ message: {
104
+ channelId: voucher.channelId,
105
+ cumulativeAmount: voucher.cumulativeAmount,
106
+ },
107
+ });
108
+ const signer = SignatureEnvelope.extractAddress({ payload, signature: envelope });
109
+ const valid = SignatureEnvelope.verify(envelope, { address: signer, payload });
110
+ return valid && TempoAddress.isEqual(signer, expectedSigner);
111
+ }
112
+ catch {
113
+ return false;
114
+ }
115
+ }
116
+ /**
117
+ * Parse a voucher from credential payload.
118
+ */
119
+ export function parseVoucherFromPayload(channelId, cumulativeAmount, signature) {
120
+ return {
121
+ channelId,
122
+ cumulativeAmount: uint96(BigInt(cumulativeAmount)),
123
+ signature,
124
+ };
125
+ }
126
+ //# sourceMappingURL=Voucher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Voucher.js","sourceRoot":"","sources":["../../../../src/tempo/session/precompile/Voucher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,522 @@
1
+ /** ABI for the TIP-1034 TIP-20 Channel Escrow precompile. */
2
+ export declare const escrowAbi: readonly [{
3
+ readonly type: "function";
4
+ readonly name: "CLOSE_GRACE_PERIOD";
5
+ readonly stateMutability: "view";
6
+ readonly inputs: readonly [];
7
+ readonly outputs: readonly [{
8
+ readonly type: "uint64";
9
+ }];
10
+ }, {
11
+ readonly type: "function";
12
+ readonly name: "VOUCHER_TYPEHASH";
13
+ readonly stateMutability: "view";
14
+ readonly inputs: readonly [];
15
+ readonly outputs: readonly [{
16
+ readonly type: "bytes32";
17
+ }];
18
+ }, {
19
+ readonly type: "function";
20
+ readonly name: "open";
21
+ readonly stateMutability: "nonpayable";
22
+ readonly inputs: readonly [{
23
+ readonly name: "payee";
24
+ readonly type: "address";
25
+ }, {
26
+ readonly name: "operator";
27
+ readonly type: "address";
28
+ }, {
29
+ readonly name: "token";
30
+ readonly type: "address";
31
+ }, {
32
+ readonly name: "deposit";
33
+ readonly type: "uint96";
34
+ }, {
35
+ readonly name: "salt";
36
+ readonly type: "bytes32";
37
+ }, {
38
+ readonly name: "authorizedSigner";
39
+ readonly type: "address";
40
+ }];
41
+ readonly outputs: readonly [{
42
+ readonly name: "channelId";
43
+ readonly type: "bytes32";
44
+ }];
45
+ }, {
46
+ readonly type: "function";
47
+ readonly name: "settle";
48
+ readonly stateMutability: "nonpayable";
49
+ readonly inputs: readonly [{
50
+ readonly name: "descriptor";
51
+ readonly type: "tuple";
52
+ readonly components: readonly [{
53
+ readonly name: "payer";
54
+ readonly type: "address";
55
+ }, {
56
+ readonly name: "payee";
57
+ readonly type: "address";
58
+ }, {
59
+ readonly name: "operator";
60
+ readonly type: "address";
61
+ }, {
62
+ readonly name: "token";
63
+ readonly type: "address";
64
+ }, {
65
+ readonly name: "salt";
66
+ readonly type: "bytes32";
67
+ }, {
68
+ readonly name: "authorizedSigner";
69
+ readonly type: "address";
70
+ }, {
71
+ readonly name: "expiringNonceHash";
72
+ readonly type: "bytes32";
73
+ }];
74
+ }, {
75
+ readonly name: "cumulativeAmount";
76
+ readonly type: "uint96";
77
+ }, {
78
+ readonly name: "signature";
79
+ readonly type: "bytes";
80
+ }];
81
+ readonly outputs: readonly [];
82
+ }, {
83
+ readonly type: "function";
84
+ readonly name: "topUp";
85
+ readonly stateMutability: "nonpayable";
86
+ readonly inputs: readonly [{
87
+ readonly name: "descriptor";
88
+ readonly type: "tuple";
89
+ readonly components: readonly [{
90
+ readonly name: "payer";
91
+ readonly type: "address";
92
+ }, {
93
+ readonly name: "payee";
94
+ readonly type: "address";
95
+ }, {
96
+ readonly name: "operator";
97
+ readonly type: "address";
98
+ }, {
99
+ readonly name: "token";
100
+ readonly type: "address";
101
+ }, {
102
+ readonly name: "salt";
103
+ readonly type: "bytes32";
104
+ }, {
105
+ readonly name: "authorizedSigner";
106
+ readonly type: "address";
107
+ }, {
108
+ readonly name: "expiringNonceHash";
109
+ readonly type: "bytes32";
110
+ }];
111
+ }, {
112
+ readonly name: "additionalDeposit";
113
+ readonly type: "uint96";
114
+ }];
115
+ readonly outputs: readonly [];
116
+ }, {
117
+ readonly type: "function";
118
+ readonly name: "close";
119
+ readonly stateMutability: "nonpayable";
120
+ readonly inputs: readonly [{
121
+ readonly name: "descriptor";
122
+ readonly type: "tuple";
123
+ readonly components: readonly [{
124
+ readonly name: "payer";
125
+ readonly type: "address";
126
+ }, {
127
+ readonly name: "payee";
128
+ readonly type: "address";
129
+ }, {
130
+ readonly name: "operator";
131
+ readonly type: "address";
132
+ }, {
133
+ readonly name: "token";
134
+ readonly type: "address";
135
+ }, {
136
+ readonly name: "salt";
137
+ readonly type: "bytes32";
138
+ }, {
139
+ readonly name: "authorizedSigner";
140
+ readonly type: "address";
141
+ }, {
142
+ readonly name: "expiringNonceHash";
143
+ readonly type: "bytes32";
144
+ }];
145
+ }, {
146
+ readonly name: "cumulativeAmount";
147
+ readonly type: "uint96";
148
+ }, {
149
+ readonly name: "captureAmount";
150
+ readonly type: "uint96";
151
+ }, {
152
+ readonly name: "signature";
153
+ readonly type: "bytes";
154
+ }];
155
+ readonly outputs: readonly [];
156
+ }, {
157
+ readonly type: "function";
158
+ readonly name: "requestClose";
159
+ readonly stateMutability: "nonpayable";
160
+ readonly inputs: readonly [{
161
+ readonly name: "descriptor";
162
+ readonly type: "tuple";
163
+ readonly components: readonly [{
164
+ readonly name: "payer";
165
+ readonly type: "address";
166
+ }, {
167
+ readonly name: "payee";
168
+ readonly type: "address";
169
+ }, {
170
+ readonly name: "operator";
171
+ readonly type: "address";
172
+ }, {
173
+ readonly name: "token";
174
+ readonly type: "address";
175
+ }, {
176
+ readonly name: "salt";
177
+ readonly type: "bytes32";
178
+ }, {
179
+ readonly name: "authorizedSigner";
180
+ readonly type: "address";
181
+ }, {
182
+ readonly name: "expiringNonceHash";
183
+ readonly type: "bytes32";
184
+ }];
185
+ }];
186
+ readonly outputs: readonly [];
187
+ }, {
188
+ readonly type: "function";
189
+ readonly name: "withdraw";
190
+ readonly stateMutability: "nonpayable";
191
+ readonly inputs: readonly [{
192
+ readonly name: "descriptor";
193
+ readonly type: "tuple";
194
+ readonly components: readonly [{
195
+ readonly name: "payer";
196
+ readonly type: "address";
197
+ }, {
198
+ readonly name: "payee";
199
+ readonly type: "address";
200
+ }, {
201
+ readonly name: "operator";
202
+ readonly type: "address";
203
+ }, {
204
+ readonly name: "token";
205
+ readonly type: "address";
206
+ }, {
207
+ readonly name: "salt";
208
+ readonly type: "bytes32";
209
+ }, {
210
+ readonly name: "authorizedSigner";
211
+ readonly type: "address";
212
+ }, {
213
+ readonly name: "expiringNonceHash";
214
+ readonly type: "bytes32";
215
+ }];
216
+ }];
217
+ readonly outputs: readonly [];
218
+ }, {
219
+ readonly type: "function";
220
+ readonly name: "getChannel";
221
+ readonly stateMutability: "view";
222
+ readonly inputs: readonly [{
223
+ readonly name: "descriptor";
224
+ readonly type: "tuple";
225
+ readonly components: readonly [{
226
+ readonly name: "payer";
227
+ readonly type: "address";
228
+ }, {
229
+ readonly name: "payee";
230
+ readonly type: "address";
231
+ }, {
232
+ readonly name: "operator";
233
+ readonly type: "address";
234
+ }, {
235
+ readonly name: "token";
236
+ readonly type: "address";
237
+ }, {
238
+ readonly name: "salt";
239
+ readonly type: "bytes32";
240
+ }, {
241
+ readonly name: "authorizedSigner";
242
+ readonly type: "address";
243
+ }, {
244
+ readonly name: "expiringNonceHash";
245
+ readonly type: "bytes32";
246
+ }];
247
+ }];
248
+ readonly outputs: readonly [{
249
+ readonly type: "tuple";
250
+ readonly components: readonly [{
251
+ readonly name: "descriptor";
252
+ readonly type: "tuple";
253
+ readonly components: readonly [{
254
+ readonly name: "payer";
255
+ readonly type: "address";
256
+ }, {
257
+ readonly name: "payee";
258
+ readonly type: "address";
259
+ }, {
260
+ readonly name: "operator";
261
+ readonly type: "address";
262
+ }, {
263
+ readonly name: "token";
264
+ readonly type: "address";
265
+ }, {
266
+ readonly name: "salt";
267
+ readonly type: "bytes32";
268
+ }, {
269
+ readonly name: "authorizedSigner";
270
+ readonly type: "address";
271
+ }, {
272
+ readonly name: "expiringNonceHash";
273
+ readonly type: "bytes32";
274
+ }];
275
+ }, {
276
+ readonly name: "state";
277
+ readonly type: "tuple";
278
+ readonly components: readonly [{
279
+ readonly name: "settled";
280
+ readonly type: "uint96";
281
+ }, {
282
+ readonly name: "deposit";
283
+ readonly type: "uint96";
284
+ }, {
285
+ readonly name: "closeRequestedAt";
286
+ readonly type: "uint32";
287
+ }];
288
+ }];
289
+ }];
290
+ }, {
291
+ readonly type: "function";
292
+ readonly name: "getChannelState";
293
+ readonly stateMutability: "view";
294
+ readonly inputs: readonly [{
295
+ readonly name: "channelId";
296
+ readonly type: "bytes32";
297
+ }];
298
+ readonly outputs: readonly [{
299
+ readonly type: "tuple";
300
+ readonly components: readonly [{
301
+ readonly name: "settled";
302
+ readonly type: "uint96";
303
+ }, {
304
+ readonly name: "deposit";
305
+ readonly type: "uint96";
306
+ }, {
307
+ readonly name: "closeRequestedAt";
308
+ readonly type: "uint32";
309
+ }];
310
+ }];
311
+ }, {
312
+ readonly type: "function";
313
+ readonly name: "getChannelStatesBatch";
314
+ readonly stateMutability: "view";
315
+ readonly inputs: readonly [{
316
+ readonly name: "channelIds";
317
+ readonly type: "bytes32[]";
318
+ }];
319
+ readonly outputs: readonly [{
320
+ readonly type: "tuple[]";
321
+ readonly components: readonly [{
322
+ readonly name: "settled";
323
+ readonly type: "uint96";
324
+ }, {
325
+ readonly name: "deposit";
326
+ readonly type: "uint96";
327
+ }, {
328
+ readonly name: "closeRequestedAt";
329
+ readonly type: "uint32";
330
+ }];
331
+ }];
332
+ }, {
333
+ readonly type: "function";
334
+ readonly name: "computeChannelId";
335
+ readonly stateMutability: "view";
336
+ readonly inputs: readonly [{
337
+ readonly name: "payer";
338
+ readonly type: "address";
339
+ }, {
340
+ readonly name: "payee";
341
+ readonly type: "address";
342
+ }, {
343
+ readonly name: "operator";
344
+ readonly type: "address";
345
+ }, {
346
+ readonly name: "token";
347
+ readonly type: "address";
348
+ }, {
349
+ readonly name: "salt";
350
+ readonly type: "bytes32";
351
+ }, {
352
+ readonly name: "authorizedSigner";
353
+ readonly type: "address";
354
+ }, {
355
+ readonly name: "expiringNonceHash";
356
+ readonly type: "bytes32";
357
+ }];
358
+ readonly outputs: readonly [{
359
+ readonly type: "bytes32";
360
+ }];
361
+ }, {
362
+ readonly type: "function";
363
+ readonly name: "getVoucherDigest";
364
+ readonly stateMutability: "view";
365
+ readonly inputs: readonly [{
366
+ readonly name: "channelId";
367
+ readonly type: "bytes32";
368
+ }, {
369
+ readonly name: "cumulativeAmount";
370
+ readonly type: "uint96";
371
+ }];
372
+ readonly outputs: readonly [{
373
+ readonly type: "bytes32";
374
+ }];
375
+ }, {
376
+ readonly type: "function";
377
+ readonly name: "domainSeparator";
378
+ readonly stateMutability: "view";
379
+ readonly inputs: readonly [];
380
+ readonly outputs: readonly [{
381
+ readonly type: "bytes32";
382
+ }];
383
+ }, {
384
+ readonly type: "event";
385
+ readonly name: "ChannelOpened";
386
+ readonly inputs: readonly [{
387
+ readonly name: "channelId";
388
+ readonly type: "bytes32";
389
+ readonly indexed: true;
390
+ }, {
391
+ readonly name: "payer";
392
+ readonly type: "address";
393
+ readonly indexed: true;
394
+ }, {
395
+ readonly name: "payee";
396
+ readonly type: "address";
397
+ readonly indexed: true;
398
+ }, {
399
+ readonly name: "operator";
400
+ readonly type: "address";
401
+ }, {
402
+ readonly name: "token";
403
+ readonly type: "address";
404
+ }, {
405
+ readonly name: "authorizedSigner";
406
+ readonly type: "address";
407
+ }, {
408
+ readonly name: "salt";
409
+ readonly type: "bytes32";
410
+ }, {
411
+ readonly name: "expiringNonceHash";
412
+ readonly type: "bytes32";
413
+ }, {
414
+ readonly name: "deposit";
415
+ readonly type: "uint96";
416
+ }];
417
+ }, {
418
+ readonly type: "event";
419
+ readonly name: "Settled";
420
+ readonly inputs: readonly [{
421
+ readonly name: "channelId";
422
+ readonly type: "bytes32";
423
+ readonly indexed: true;
424
+ }, {
425
+ readonly name: "payer";
426
+ readonly type: "address";
427
+ readonly indexed: true;
428
+ }, {
429
+ readonly name: "payee";
430
+ readonly type: "address";
431
+ readonly indexed: true;
432
+ }, {
433
+ readonly name: "cumulativeAmount";
434
+ readonly type: "uint96";
435
+ }, {
436
+ readonly name: "deltaPaid";
437
+ readonly type: "uint96";
438
+ }, {
439
+ readonly name: "newSettled";
440
+ readonly type: "uint96";
441
+ }];
442
+ }, {
443
+ readonly type: "event";
444
+ readonly name: "TopUp";
445
+ readonly inputs: readonly [{
446
+ readonly name: "channelId";
447
+ readonly type: "bytes32";
448
+ readonly indexed: true;
449
+ }, {
450
+ readonly name: "payer";
451
+ readonly type: "address";
452
+ readonly indexed: true;
453
+ }, {
454
+ readonly name: "payee";
455
+ readonly type: "address";
456
+ readonly indexed: true;
457
+ }, {
458
+ readonly name: "additionalDeposit";
459
+ readonly type: "uint96";
460
+ }, {
461
+ readonly name: "newDeposit";
462
+ readonly type: "uint96";
463
+ }];
464
+ }, {
465
+ readonly type: "event";
466
+ readonly name: "CloseRequested";
467
+ readonly inputs: readonly [{
468
+ readonly name: "channelId";
469
+ readonly type: "bytes32";
470
+ readonly indexed: true;
471
+ }, {
472
+ readonly name: "payer";
473
+ readonly type: "address";
474
+ readonly indexed: true;
475
+ }, {
476
+ readonly name: "payee";
477
+ readonly type: "address";
478
+ readonly indexed: true;
479
+ }, {
480
+ readonly name: "closeGraceEnd";
481
+ readonly type: "uint256";
482
+ }];
483
+ }, {
484
+ readonly type: "event";
485
+ readonly name: "ChannelClosed";
486
+ readonly inputs: readonly [{
487
+ readonly name: "channelId";
488
+ readonly type: "bytes32";
489
+ readonly indexed: true;
490
+ }, {
491
+ readonly name: "payer";
492
+ readonly type: "address";
493
+ readonly indexed: true;
494
+ }, {
495
+ readonly name: "payee";
496
+ readonly type: "address";
497
+ readonly indexed: true;
498
+ }, {
499
+ readonly name: "settledToPayee";
500
+ readonly type: "uint96";
501
+ }, {
502
+ readonly name: "refundedToPayer";
503
+ readonly type: "uint96";
504
+ }];
505
+ }, {
506
+ readonly type: "event";
507
+ readonly name: "CloseRequestCancelled";
508
+ readonly inputs: readonly [{
509
+ readonly name: "channelId";
510
+ readonly type: "bytes32";
511
+ readonly indexed: true;
512
+ }, {
513
+ readonly name: "payer";
514
+ readonly type: "address";
515
+ readonly indexed: true;
516
+ }, {
517
+ readonly name: "payee";
518
+ readonly type: "address";
519
+ readonly indexed: true;
520
+ }];
521
+ }];
522
+ //# sourceMappingURL=escrow.abi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"escrow.abi.d.ts","sourceRoot":"","sources":["../../../../src/tempo/session/precompile/escrow.abi.ts"],"names":[],"mappings":"AAsBA,6DAA6D;AAC7D,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0MZ,CAAA"}