tapimo 0.14.0 → 0.15.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1160) hide show
  1. package/README.md +7 -4
  2. package/dist/ApiKey.js +1 -1
  3. package/dist/ApiKey.js.map +1 -1
  4. package/dist/ApiKeys.d.ts +95 -14
  5. package/dist/ApiKeys.d.ts.map +1 -1
  6. package/dist/ApiKeys.js +360 -49
  7. package/dist/ApiKeys.js.map +1 -1
  8. package/dist/App.d.ts +12466 -10374
  9. package/dist/App.d.ts.map +1 -1
  10. package/dist/App.js +300 -22
  11. package/dist/App.js.map +1 -1
  12. package/dist/Assets.d.ts.map +1 -1
  13. package/dist/Assets.js +2 -1
  14. package/dist/Assets.js.map +1 -1
  15. package/dist/Handler.d.ts +0 -1
  16. package/dist/Handler.d.ts.map +1 -1
  17. package/dist/Handler.js +0 -1
  18. package/dist/Handler.js.map +1 -1
  19. package/dist/Scope.d.ts +13 -5
  20. package/dist/Scope.d.ts.map +1 -1
  21. package/dist/Scope.js +16 -5
  22. package/dist/Scope.js.map +1 -1
  23. package/dist/Webhooks.js +1 -1
  24. package/dist/Webhooks.js.map +1 -1
  25. package/dist/admin/App.d.ts +3057 -546
  26. package/dist/admin/App.d.ts.map +1 -1
  27. package/dist/admin/App.js +26 -5
  28. package/dist/admin/App.js.map +1 -1
  29. package/dist/admin/apps/api-keys.d.ts +179 -27
  30. package/dist/admin/apps/api-keys.d.ts.map +1 -1
  31. package/dist/admin/apps/api-keys.js +95 -43
  32. package/dist/admin/apps/api-keys.js.map +1 -1
  33. package/dist/admin/apps/earn-vaults.d.ts +1398 -0
  34. package/dist/admin/apps/earn-vaults.d.ts.map +1 -1
  35. package/dist/admin/apps/earn-vaults.js +463 -7
  36. package/dist/admin/apps/earn-vaults.js.map +1 -1
  37. package/dist/admin/apps/organizations.d.ts +267 -15
  38. package/dist/admin/apps/organizations.d.ts.map +1 -1
  39. package/dist/admin/apps/organizations.js +241 -25
  40. package/dist/admin/apps/organizations.js.map +1 -1
  41. package/dist/admin/apps/routes-support.d.ts +95 -0
  42. package/dist/admin/apps/routes-support.d.ts.map +1 -0
  43. package/dist/admin/apps/routes-support.js +151 -0
  44. package/dist/admin/apps/routes-support.js.map +1 -0
  45. package/dist/admin/apps/routes.d.ts +2764 -0
  46. package/dist/admin/apps/routes.d.ts.map +1 -0
  47. package/dist/admin/apps/routes.js +728 -0
  48. package/dist/admin/apps/routes.js.map +1 -0
  49. package/dist/admin/apps/subsidies.d.ts +501 -0
  50. package/dist/admin/apps/subsidies.d.ts.map +1 -0
  51. package/dist/admin/apps/subsidies.js +384 -0
  52. package/dist/admin/apps/subsidies.js.map +1 -0
  53. package/dist/admin/apps/verified-tokens.d.ts +166 -160
  54. package/dist/admin/apps/verified-tokens.d.ts.map +1 -1
  55. package/dist/admin/apps/verified-tokens.js +27 -7
  56. package/dist/admin/apps/verified-tokens.js.map +1 -1
  57. package/dist/admin/ui.generated.d.ts +1 -1
  58. package/dist/admin/ui.generated.d.ts.map +1 -1
  59. package/dist/admin/ui.generated.js +201 -149
  60. package/dist/admin/ui.generated.js.map +1 -1
  61. package/dist/analytics/Analytics.d.ts +5 -2
  62. package/dist/analytics/Analytics.d.ts.map +1 -1
  63. package/dist/analytics/Analytics.js +31 -1
  64. package/dist/analytics/Analytics.js.map +1 -1
  65. package/dist/analytics/tables/requestEvents.d.ts +2 -1
  66. package/dist/analytics/tables/requestEvents.d.ts.map +1 -1
  67. package/dist/analytics/tables/requestEvents.js +10 -1
  68. package/dist/analytics/tables/requestEvents.js.map +1 -1
  69. package/dist/analytics/tables/routesLifecycleIntervals.d.ts +72 -0
  70. package/dist/analytics/tables/routesLifecycleIntervals.d.ts.map +1 -0
  71. package/dist/analytics/tables/routesLifecycleIntervals.js +56 -0
  72. package/dist/analytics/tables/routesLifecycleIntervals.js.map +1 -0
  73. package/dist/apps/Zones.d.ts +21 -12526
  74. package/dist/apps/Zones.d.ts.map +1 -1
  75. package/dist/apps/Zones.js +37 -5
  76. package/dist/apps/Zones.js.map +1 -1
  77. package/dist/apps/data/App.d.ts +3971 -2595
  78. package/dist/apps/data/App.d.ts.map +1 -1
  79. package/dist/apps/data/App.js +76 -21
  80. package/dist/apps/data/App.js.map +1 -1
  81. package/dist/apps/data/routes/activities.d.ts +629 -299
  82. package/dist/apps/data/routes/activities.d.ts.map +1 -1
  83. package/dist/apps/data/routes/activities.js +495 -190
  84. package/dist/apps/data/routes/activities.js.map +1 -1
  85. package/dist/apps/data/routes/addresses.d.ts +72 -0
  86. package/dist/apps/data/routes/addresses.d.ts.map +1 -1
  87. package/dist/apps/data/routes/blocks.d.ts +116 -116
  88. package/dist/apps/data/routes/coingecko.d.ts.map +1 -1
  89. package/dist/apps/data/routes/coingecko.js +47 -21
  90. package/dist/apps/data/routes/coingecko.js.map +1 -1
  91. package/dist/apps/data/routes/earn.d.ts +1450 -337
  92. package/dist/apps/data/routes/earn.d.ts.map +1 -1
  93. package/dist/apps/data/routes/earn.js +1226 -144
  94. package/dist/apps/data/routes/earn.js.map +1 -1
  95. package/dist/apps/data/routes/fee-amm.d.ts +113 -108
  96. package/dist/apps/data/routes/fee-amm.d.ts.map +1 -1
  97. package/dist/apps/data/routes/fee-amm.js +41 -21
  98. package/dist/apps/data/routes/fee-amm.js.map +1 -1
  99. package/dist/apps/data/routes/indexer.d.ts +142 -17
  100. package/dist/apps/data/routes/indexer.d.ts.map +1 -1
  101. package/dist/apps/data/routes/indexer.js +83 -27
  102. package/dist/apps/data/routes/indexer.js.map +1 -1
  103. package/dist/apps/data/routes/receipts.d.ts +235 -235
  104. package/dist/apps/data/routes/rpc.d.ts +507 -33
  105. package/dist/apps/data/routes/rpc.d.ts.map +1 -1
  106. package/dist/apps/data/routes/rpc.js +309 -165
  107. package/dist/apps/data/routes/rpc.js.map +1 -1
  108. package/dist/apps/data/routes/tokenlist.d.ts +47 -15
  109. package/dist/apps/data/routes/tokenlist.d.ts.map +1 -1
  110. package/dist/apps/data/routes/tokenlist.js +68 -11
  111. package/dist/apps/data/routes/tokenlist.js.map +1 -1
  112. package/dist/apps/data/routes/tokens.d.ts +2 -0
  113. package/dist/apps/data/routes/tokens.d.ts.map +1 -1
  114. package/dist/apps/data/routes/tokens.js +26 -14
  115. package/dist/apps/data/routes/tokens.js.map +1 -1
  116. package/dist/apps/data/routes/transfers.d.ts +93 -77
  117. package/dist/apps/data/routes/transfers.d.ts.map +1 -1
  118. package/dist/apps/data/routes/transfers.js +9 -7
  119. package/dist/apps/data/routes/transfers.js.map +1 -1
  120. package/dist/apps/data/routes/valuation.d.ts +32 -32
  121. package/dist/apps/data/routes/verified-tokens.d.ts +88 -88
  122. package/dist/apps/data/routes/verified-tokens.d.ts.map +1 -1
  123. package/dist/apps/data/routes/verified-tokens.js +64 -20
  124. package/dist/apps/data/routes/verified-tokens.js.map +1 -1
  125. package/dist/apps/data/routes/webhooks.d.ts +614 -177
  126. package/dist/apps/data/routes/webhooks.d.ts.map +1 -1
  127. package/dist/apps/data/routes/webhooks.js +308 -205
  128. package/dist/apps/data/routes/webhooks.js.map +1 -1
  129. package/dist/apps/data/routes/zones.d.ts +31 -31
  130. package/dist/apps/data/routes/zones.d.ts.map +1 -1
  131. package/dist/apps/data/routes/zones.js +20 -12
  132. package/dist/apps/data/routes/zones.js.map +1 -1
  133. package/dist/apps/docs/reference.js +2 -2
  134. package/dist/apps/docs/reference.js.map +1 -1
  135. package/dist/apps/index.d.ts +1 -1
  136. package/dist/apps/index.d.ts.map +1 -1
  137. package/dist/apps/index.js +1 -1
  138. package/dist/apps/index.js.map +1 -1
  139. package/dist/apps/management/App.d.ts +3780 -3402
  140. package/dist/apps/management/App.d.ts.map +1 -1
  141. package/dist/apps/management/App.js +5 -14
  142. package/dist/apps/management/App.js.map +1 -1
  143. package/dist/apps/management/Billing.d.ts +48 -7
  144. package/dist/apps/management/Billing.d.ts.map +1 -1
  145. package/dist/apps/management/Billing.js +204 -25
  146. package/dist/apps/management/Billing.js.map +1 -1
  147. package/dist/apps/management/routes/api-keys.d.ts +317 -215
  148. package/dist/apps/management/routes/api-keys.d.ts.map +1 -1
  149. package/dist/apps/management/routes/api-keys.js +43 -15
  150. package/dist/apps/management/routes/api-keys.js.map +1 -1
  151. package/dist/apps/management/routes/billing.d.ts +290 -4
  152. package/dist/apps/management/routes/billing.d.ts.map +1 -1
  153. package/dist/apps/management/routes/billing.js +274 -49
  154. package/dist/apps/management/routes/billing.js.map +1 -1
  155. package/dist/apps/management/routes/faucet.d.ts +6 -6
  156. package/dist/apps/management/routes/faucet.js +1 -1
  157. package/dist/apps/management/routes/faucet.js.map +1 -1
  158. package/dist/apps/management/routes/invitations.d.ts +213 -138
  159. package/dist/apps/management/routes/invitations.d.ts.map +1 -1
  160. package/dist/apps/management/routes/invitations.js +117 -13
  161. package/dist/apps/management/routes/invitations.js.map +1 -1
  162. package/dist/apps/management/routes/invite-links.d.ts +166 -166
  163. package/dist/apps/management/routes/me.d.ts.map +1 -1
  164. package/dist/apps/management/routes/me.js +6 -2
  165. package/dist/apps/management/routes/me.js.map +1 -1
  166. package/dist/apps/management/routes/members.d.ts +30 -30
  167. package/dist/apps/management/routes/orgs.d.ts +103 -87
  168. package/dist/apps/management/routes/orgs.d.ts.map +1 -1
  169. package/dist/apps/management/routes/orgs.js +52 -12
  170. package/dist/apps/management/routes/orgs.js.map +1 -1
  171. package/dist/apps/management/routes/projects.d.ts +125 -125
  172. package/dist/apps/management/routes/projects.d.ts.map +1 -1
  173. package/dist/apps/management/routes/projects.js +6 -1
  174. package/dist/apps/management/routes/projects.js.map +1 -1
  175. package/dist/apps/management/routes/scopes.d.ts.map +1 -1
  176. package/dist/apps/management/routes/scopes.js +4 -1
  177. package/dist/apps/management/routes/scopes.js.map +1 -1
  178. package/dist/apps/management/routes/usage.d.ts +24 -24
  179. package/dist/apps/management/routes/usage.js +21 -4
  180. package/dist/apps/management/routes/usage.js.map +1 -1
  181. package/dist/apps/management/routes/verified-token-requests.d.ts +95 -95
  182. package/dist/apps/management/routes/verified-token-requests.d.ts.map +1 -1
  183. package/dist/apps/management/routes/verified-token-requests.js +7 -9
  184. package/dist/apps/management/routes/verified-token-requests.js.map +1 -1
  185. package/dist/apps/management/routes/webhooks.d.ts +682 -616
  186. package/dist/apps/management/routes/webhooks.d.ts.map +1 -1
  187. package/dist/apps/management/routes/webhooks.js +58 -12
  188. package/dist/apps/management/routes/webhooks.js.map +1 -1
  189. package/dist/apps/mcp.d.ts +1 -1
  190. package/dist/apps/mcp.d.ts.map +1 -1
  191. package/dist/apps/mcp.js +23 -10
  192. package/dist/apps/mcp.js.map +1 -1
  193. package/dist/apps/mpp/App.d.ts +44 -44
  194. package/dist/apps/mpp/App.d.ts.map +1 -1
  195. package/dist/apps/mpp/App.js +35 -7
  196. package/dist/apps/mpp/App.js.map +1 -1
  197. package/dist/apps/mpp/internal/Adapter.d.ts +2 -0
  198. package/dist/apps/mpp/internal/Adapter.d.ts.map +1 -1
  199. package/dist/apps/mpp/internal/Adapter.js +30 -1
  200. package/dist/apps/mpp/internal/Adapter.js.map +1 -1
  201. package/dist/apps/mpp/internal/Policy.d.ts +22 -4
  202. package/dist/apps/mpp/internal/Policy.d.ts.map +1 -1
  203. package/dist/apps/mpp/internal/Policy.js +24 -6
  204. package/dist/apps/mpp/internal/Policy.js.map +1 -1
  205. package/dist/apps/mpp/internal/Sponsorship.d.ts +3 -0
  206. package/dist/apps/mpp/internal/Sponsorship.d.ts.map +1 -1
  207. package/dist/apps/mpp/internal/Sponsorship.js +6 -3
  208. package/dist/apps/mpp/internal/Sponsorship.js.map +1 -1
  209. package/dist/apps/relay/App.d.ts +2 -0
  210. package/dist/apps/relay/App.d.ts.map +1 -1
  211. package/dist/apps/relay/App.js +134 -75
  212. package/dist/apps/relay/App.js.map +1 -1
  213. package/dist/apps/relay/Sponsorships.d.ts +5 -3
  214. package/dist/apps/relay/Sponsorships.d.ts.map +1 -1
  215. package/dist/apps/relay/Sponsorships.js +209 -28
  216. package/dist/apps/relay/Sponsorships.js.map +1 -1
  217. package/dist/apps/{funding → routes}/Access.d.ts +4 -4
  218. package/dist/apps/routes/Access.d.ts.map +1 -0
  219. package/dist/apps/{funding → routes}/Access.js +4 -4
  220. package/dist/apps/routes/Access.js.map +1 -0
  221. package/dist/apps/{funding → routes}/App.d.ts +418 -124
  222. package/dist/apps/{funding → routes}/App.d.ts.map +1 -1
  223. package/dist/apps/{funding → routes}/App.js +16 -16
  224. package/dist/apps/routes/App.js.map +1 -0
  225. package/dist/apps/routes/Inventory.d.ts.map +1 -0
  226. package/dist/apps/{funding → routes}/Inventory.js +2 -2
  227. package/dist/apps/routes/Inventory.js.map +1 -0
  228. package/dist/apps/routes/index.d.ts +2 -0
  229. package/dist/apps/routes/index.d.ts.map +1 -0
  230. package/dist/apps/routes/index.js +2 -0
  231. package/dist/apps/routes/index.js.map +1 -0
  232. package/dist/apps/{funding → routes}/routes/chains.d.ts +32 -32
  233. package/dist/apps/routes/routes/chains.d.ts.map +1 -0
  234. package/dist/apps/{funding → routes}/routes/chains.js +25 -25
  235. package/dist/apps/routes/routes/chains.js.map +1 -0
  236. package/dist/apps/{funding → routes}/routes/deposit-addresses.d.ts +107 -43
  237. package/dist/apps/routes/routes/deposit-addresses.d.ts.map +1 -0
  238. package/dist/apps/{funding → routes}/routes/deposit-addresses.js +497 -222
  239. package/dist/apps/routes/routes/deposit-addresses.js.map +1 -0
  240. package/dist/apps/{funding → routes}/routes/providers.d.ts +8 -8
  241. package/dist/apps/routes/routes/providers.d.ts.map +1 -0
  242. package/dist/apps/routes/routes/providers.js +57 -0
  243. package/dist/apps/routes/routes/providers.js.map +1 -0
  244. package/dist/apps/{funding → routes}/routes/quotes.d.ts +106 -103
  245. package/dist/apps/routes/routes/quotes.d.ts.map +1 -0
  246. package/dist/apps/{funding → routes}/routes/quotes.js +55 -38
  247. package/dist/apps/routes/routes/quotes.js.map +1 -0
  248. package/dist/apps/{funding → routes}/routes/transfers.d.ts +733 -428
  249. package/dist/apps/routes/routes/transfers.d.ts.map +1 -0
  250. package/dist/apps/routes/routes/transfers.js +1140 -0
  251. package/dist/apps/routes/routes/transfers.js.map +1 -0
  252. package/dist/cli/Cli.d.ts +30 -0
  253. package/dist/cli/Cli.d.ts.map +1 -1
  254. package/dist/cli/commands/admin.d.ts +36 -0
  255. package/dist/cli/commands/admin.d.ts.map +1 -1
  256. package/dist/cli/commands/admin.js +273 -0
  257. package/dist/cli/commands/admin.js.map +1 -1
  258. package/dist/cloudflare.d.ts +16 -14
  259. package/dist/cloudflare.d.ts.map +1 -1
  260. package/dist/cloudflare.js +26 -21
  261. package/dist/cloudflare.js.map +1 -1
  262. package/dist/db/Db.d.ts +63 -21
  263. package/dist/db/Db.d.ts.map +1 -1
  264. package/dist/db/Db.js +1035 -15
  265. package/dist/db/Db.js.map +1 -1
  266. package/dist/db/Schema.d.ts +780 -133
  267. package/dist/db/Schema.d.ts.map +1 -1
  268. package/dist/db/Schema.js +575 -162
  269. package/dist/db/Schema.js.map +1 -1
  270. package/dist/db/tables/apiKeyAdmissionBootstraps.d.ts +4 -0
  271. package/dist/db/tables/apiKeyAdmissionBootstraps.d.ts.map +1 -0
  272. package/dist/db/tables/apiKeyAdmissionBootstraps.js +2 -0
  273. package/dist/db/tables/apiKeyAdmissionBootstraps.js.map +1 -0
  274. package/dist/db/tables/apiKeyAdmissions.d.ts +73 -0
  275. package/dist/db/tables/apiKeyAdmissions.d.ts.map +1 -0
  276. package/dist/db/tables/apiKeyAdmissions.js +142 -0
  277. package/dist/db/tables/apiKeyAdmissions.js.map +1 -0
  278. package/dist/db/tables/apiKeyOwnerAdmissions.d.ts +4 -0
  279. package/dist/db/tables/apiKeyOwnerAdmissions.d.ts.map +1 -0
  280. package/dist/db/tables/apiKeyOwnerAdmissions.js +2 -0
  281. package/dist/db/tables/apiKeyOwnerAdmissions.js.map +1 -0
  282. package/dist/db/tables/apiKeyOwnerTombstones.d.ts +20 -0
  283. package/dist/db/tables/apiKeyOwnerTombstones.d.ts.map +1 -0
  284. package/dist/db/tables/apiKeyOwnerTombstones.js +57 -0
  285. package/dist/db/tables/apiKeyOwnerTombstones.js.map +1 -0
  286. package/dist/db/tables/apiKeyRevocations.d.ts +21 -0
  287. package/dist/db/tables/apiKeyRevocations.d.ts.map +1 -0
  288. package/dist/db/tables/apiKeyRevocations.js +98 -0
  289. package/dist/db/tables/apiKeyRevocations.js.map +1 -0
  290. package/dist/db/tables/authAccounts.d.ts +47 -0
  291. package/dist/db/tables/authAccounts.d.ts.map +1 -0
  292. package/dist/db/tables/authAccounts.js +72 -0
  293. package/dist/db/tables/authAccounts.js.map +1 -0
  294. package/dist/db/tables/authSessions.d.ts +12 -0
  295. package/dist/db/tables/authSessions.d.ts.map +1 -0
  296. package/dist/db/tables/authSessions.js +2 -0
  297. package/dist/db/tables/authSessions.js.map +1 -0
  298. package/dist/db/tables/authVerifications.d.ts +12 -0
  299. package/dist/db/tables/authVerifications.d.ts.map +1 -0
  300. package/dist/db/tables/authVerifications.js +2 -0
  301. package/dist/db/tables/authVerifications.js.map +1 -0
  302. package/dist/db/tables/invitations.d.ts +17 -1
  303. package/dist/db/tables/invitations.d.ts.map +1 -1
  304. package/dist/db/tables/invitations.js +123 -43
  305. package/dist/db/tables/invitations.js.map +1 -1
  306. package/dist/db/tables/memberships.d.ts +8 -0
  307. package/dist/db/tables/memberships.d.ts.map +1 -1
  308. package/dist/db/tables/memberships.js +51 -2
  309. package/dist/db/tables/memberships.js.map +1 -1
  310. package/dist/db/tables/organizations.d.ts +32 -10
  311. package/dist/db/tables/organizations.d.ts.map +1 -1
  312. package/dist/db/tables/organizations.js +110 -49
  313. package/dist/db/tables/organizations.js.map +1 -1
  314. package/dist/db/tables/projects.d.ts +2 -0
  315. package/dist/db/tables/projects.d.ts.map +1 -1
  316. package/dist/db/tables/projects.js +12 -3
  317. package/dist/db/tables/projects.js.map +1 -1
  318. package/dist/db/tables/requestUsage.d.ts.map +1 -1
  319. package/dist/db/tables/requestUsage.js.map +1 -1
  320. package/dist/db/tables/rewardAccounts.d.ts +86 -0
  321. package/dist/db/tables/rewardAccounts.d.ts.map +1 -0
  322. package/dist/db/tables/rewardAccounts.js +88 -0
  323. package/dist/db/tables/rewardAccounts.js.map +1 -0
  324. package/dist/db/tables/rewardCampaignDistributors.d.ts +36 -0
  325. package/dist/db/tables/rewardCampaignDistributors.d.ts.map +1 -0
  326. package/dist/db/tables/rewardCampaignDistributors.js +30 -0
  327. package/dist/db/tables/rewardCampaignDistributors.js.map +1 -0
  328. package/dist/db/tables/rewardCampaigns.d.ts +171 -0
  329. package/dist/db/tables/rewardCampaigns.d.ts.map +1 -0
  330. package/dist/db/tables/rewardCampaigns.js +392 -0
  331. package/dist/db/tables/rewardCampaigns.js.map +1 -0
  332. package/dist/db/tables/rewardCredits.d.ts +53 -0
  333. package/dist/db/tables/rewardCredits.d.ts.map +1 -0
  334. package/dist/db/tables/rewardCredits.js +63 -0
  335. package/dist/db/tables/rewardCredits.js.map +1 -0
  336. package/dist/db/tables/rewardEligibilityAssociations.d.ts +61 -0
  337. package/dist/db/tables/rewardEligibilityAssociations.d.ts.map +1 -0
  338. package/dist/db/tables/rewardEligibilityAssociations.js +103 -0
  339. package/dist/db/tables/rewardEligibilityAssociations.js.map +1 -0
  340. package/dist/db/tables/rewardRuns.d.ts +188 -0
  341. package/dist/db/tables/rewardRuns.d.ts.map +1 -0
  342. package/dist/db/tables/rewardRuns.js +278 -0
  343. package/dist/db/tables/rewardRuns.js.map +1 -0
  344. package/dist/db/tables/rewardTransactionAttempts.d.ts +100 -0
  345. package/dist/db/tables/rewardTransactionAttempts.d.ts.map +1 -0
  346. package/dist/db/tables/rewardTransactionAttempts.js +163 -0
  347. package/dist/db/tables/rewardTransactionAttempts.js.map +1 -0
  348. package/dist/db/tables/routesCatalog.d.ts +58 -0
  349. package/dist/db/tables/routesCatalog.d.ts.map +1 -0
  350. package/dist/db/tables/{fundingCatalog.js → routesCatalog.js} +19 -19
  351. package/dist/db/tables/routesCatalog.js.map +1 -0
  352. package/dist/db/tables/routesDepositAddresses.d.ts +476 -0
  353. package/dist/db/tables/routesDepositAddresses.d.ts.map +1 -0
  354. package/dist/db/tables/routesDepositAddresses.js +587 -0
  355. package/dist/db/tables/routesDepositAddresses.js.map +1 -0
  356. package/dist/db/tables/{fundingDepositRequestObservations.d.ts → routesDepositRequestObservations.d.ts} +6 -6
  357. package/dist/db/tables/routesDepositRequestObservations.d.ts.map +1 -0
  358. package/dist/db/tables/{fundingDepositRequestObservations.js → routesDepositRequestObservations.js} +6 -6
  359. package/dist/db/tables/routesDepositRequestObservations.js.map +1 -0
  360. package/dist/db/tables/{fundingDeposits.d.ts → routesDeposits.d.ts} +210 -22
  361. package/dist/db/tables/routesDeposits.d.ts.map +1 -0
  362. package/dist/db/tables/routesDeposits.js +576 -0
  363. package/dist/db/tables/routesDeposits.js.map +1 -0
  364. package/dist/db/tables/routesIdempotency.d.ts +166 -0
  365. package/dist/db/tables/routesIdempotency.d.ts.map +1 -0
  366. package/dist/db/tables/routesIdempotency.js +330 -0
  367. package/dist/db/tables/routesIdempotency.js.map +1 -0
  368. package/dist/db/tables/routesSubsidies.d.ts +27 -0
  369. package/dist/db/tables/routesSubsidies.d.ts.map +1 -0
  370. package/dist/db/tables/routesSubsidies.js +45 -0
  371. package/dist/db/tables/routesSubsidies.js.map +1 -0
  372. package/dist/db/tables/{fundingTransferEvents.d.ts → routesTransferEvents.d.ts} +3 -3
  373. package/dist/db/tables/routesTransferEvents.d.ts.map +1 -0
  374. package/dist/db/tables/{fundingTransferEvents.js → routesTransferEvents.js} +3 -3
  375. package/dist/db/tables/routesTransferEvents.js.map +1 -0
  376. package/dist/db/tables/routesTransferSubsidies.d.ts +19 -0
  377. package/dist/db/tables/routesTransferSubsidies.d.ts.map +1 -0
  378. package/dist/db/tables/routesTransferSubsidies.js +17 -0
  379. package/dist/db/tables/routesTransferSubsidies.js.map +1 -0
  380. package/dist/db/tables/routesTransferSubsidyNonces.d.ts +51 -0
  381. package/dist/db/tables/routesTransferSubsidyNonces.d.ts.map +1 -0
  382. package/dist/db/tables/routesTransferSubsidyNonces.js +82 -0
  383. package/dist/db/tables/routesTransferSubsidyNonces.js.map +1 -0
  384. package/dist/db/tables/routesTransferTransactions.d.ts +77 -0
  385. package/dist/db/tables/routesTransferTransactions.d.ts.map +1 -0
  386. package/dist/db/tables/{fundingTransferTransactions.js → routesTransferTransactions.js} +31 -13
  387. package/dist/db/tables/routesTransferTransactions.js.map +1 -0
  388. package/dist/db/tables/routesTransfers.d.ts +319 -0
  389. package/dist/db/tables/routesTransfers.d.ts.map +1 -0
  390. package/dist/db/tables/routesTransfers.js +372 -0
  391. package/dist/db/tables/routesTransfers.js.map +1 -0
  392. package/dist/db/tables/sponsoredTransactions.d.ts +75 -20
  393. package/dist/db/tables/sponsoredTransactions.d.ts.map +1 -1
  394. package/dist/db/tables/sponsoredTransactions.js +124 -54
  395. package/dist/db/tables/sponsoredTransactions.js.map +1 -1
  396. package/dist/db/tables/sponsorshipAttributions.d.ts +69 -0
  397. package/dist/db/tables/sponsorshipAttributions.d.ts.map +1 -0
  398. package/dist/db/tables/sponsorshipAttributions.js +77 -0
  399. package/dist/db/tables/sponsorshipAttributions.js.map +1 -0
  400. package/dist/db/tables/sponsorshipReconciliationCursors.d.ts +22 -0
  401. package/dist/db/tables/sponsorshipReconciliationCursors.d.ts.map +1 -0
  402. package/dist/db/tables/sponsorshipReconciliationCursors.js +45 -0
  403. package/dist/db/tables/sponsorshipReconciliationCursors.js.map +1 -0
  404. package/dist/db/tables/stripeCustomers.d.ts +11 -0
  405. package/dist/db/tables/stripeCustomers.d.ts.map +1 -1
  406. package/dist/db/tables/stripeCustomers.js +13 -0
  407. package/dist/db/tables/stripeCustomers.js.map +1 -1
  408. package/dist/db/tables/users.d.ts +17 -1
  409. package/dist/db/tables/users.d.ts.map +1 -1
  410. package/dist/db/tables/users.js +47 -2
  411. package/dist/db/tables/users.js.map +1 -1
  412. package/dist/db/tables/verifiedTokenRequests.d.ts +21 -4
  413. package/dist/db/tables/verifiedTokenRequests.d.ts.map +1 -1
  414. package/dist/db/tables/verifiedTokenRequests.js +65 -44
  415. package/dist/db/tables/verifiedTokenRequests.js.map +1 -1
  416. package/dist/db/tables/webhookQueueEvents.d.ts.map +1 -1
  417. package/dist/db/tables/webhookQueueEvents.js +5 -1
  418. package/dist/db/tables/webhookQueueEvents.js.map +1 -1
  419. package/dist/db/tables/webhookSubscriptions.d.ts +19 -11
  420. package/dist/db/tables/webhookSubscriptions.d.ts.map +1 -1
  421. package/dist/db/tables/webhookSubscriptions.js +45 -13
  422. package/dist/db/tables/webhookSubscriptions.js.map +1 -1
  423. package/dist/handlers/internal/executionError.d.ts +2 -2
  424. package/dist/handlers/internal/executionError.d.ts.map +1 -1
  425. package/dist/handlers/internal/executionError.js +1 -2
  426. package/dist/handlers/internal/executionError.js.map +1 -1
  427. package/dist/handlers/internal/multisig.d.ts +4 -232
  428. package/dist/handlers/internal/multisig.d.ts.map +1 -1
  429. package/dist/handlers/internal/multisig.js +11 -537
  430. package/dist/handlers/internal/multisig.js.map +1 -1
  431. package/dist/handlers/internal/sponsorship.d.ts +19 -8
  432. package/dist/handlers/internal/sponsorship.d.ts.map +1 -1
  433. package/dist/handlers/internal/sponsorship.js +13 -9
  434. package/dist/handlers/internal/sponsorship.js.map +1 -1
  435. package/dist/handlers/relay.d.ts +9 -12
  436. package/dist/handlers/relay.d.ts.map +1 -1
  437. package/dist/handlers/relay.js +81 -85
  438. package/dist/handlers/relay.js.map +1 -1
  439. package/dist/index.d.ts +0 -17
  440. package/dist/index.d.ts.map +1 -1
  441. package/dist/index.js +0 -17
  442. package/dist/index.js.map +1 -1
  443. package/dist/internal/AssetResponse.d.ts +12 -0
  444. package/dist/internal/AssetResponse.d.ts.map +1 -0
  445. package/dist/internal/AssetResponse.js +21 -0
  446. package/dist/internal/AssetResponse.js.map +1 -0
  447. package/dist/internal/Auth.d.ts +64 -12
  448. package/dist/internal/Auth.d.ts.map +1 -1
  449. package/dist/internal/Auth.js +631 -180
  450. package/dist/internal/Auth.js.map +1 -1
  451. package/dist/internal/BetterAuth.d.ts +1488 -0
  452. package/dist/internal/BetterAuth.d.ts.map +1 -0
  453. package/dist/internal/BetterAuth.js +253 -0
  454. package/dist/internal/BetterAuth.js.map +1 -0
  455. package/dist/internal/Cache.d.ts +2 -0
  456. package/dist/internal/Cache.d.ts.map +1 -1
  457. package/dist/internal/Cache.js +2 -0
  458. package/dist/internal/Cache.js.map +1 -1
  459. package/dist/internal/EarnRates.d.ts +26 -3
  460. package/dist/internal/EarnRates.d.ts.map +1 -1
  461. package/dist/internal/EarnRates.js +84 -19
  462. package/dist/internal/EarnRates.js.map +1 -1
  463. package/dist/internal/EarnSharePrices.d.ts +120 -0
  464. package/dist/internal/EarnSharePrices.d.ts.map +1 -0
  465. package/dist/internal/EarnSharePrices.js +179 -0
  466. package/dist/internal/EarnSharePrices.js.map +1 -0
  467. package/dist/internal/EarnVaults.d.ts +4 -0
  468. package/dist/internal/EarnVaults.d.ts.map +1 -1
  469. package/dist/internal/EarnVaults.js +27 -10
  470. package/dist/internal/EarnVaults.js.map +1 -1
  471. package/dist/internal/Email.d.ts +37 -0
  472. package/dist/internal/Email.d.ts.map +1 -0
  473. package/dist/internal/Email.js +16 -0
  474. package/dist/internal/Email.js.map +1 -0
  475. package/dist/internal/Log.d.ts +32 -28
  476. package/dist/internal/Log.d.ts.map +1 -1
  477. package/dist/internal/Log.js +18 -11
  478. package/dist/internal/Log.js.map +1 -1
  479. package/dist/internal/MetricSink.d.ts +3 -0
  480. package/dist/internal/MetricSink.d.ts.map +1 -1
  481. package/dist/internal/MetricSink.js +67 -8
  482. package/dist/internal/MetricSink.js.map +1 -1
  483. package/dist/internal/Mpp.d.ts.map +1 -1
  484. package/dist/internal/Mpp.js +20 -25
  485. package/dist/internal/Mpp.js.map +1 -1
  486. package/dist/internal/OpenApi.d.ts +26 -3
  487. package/dist/internal/OpenApi.d.ts.map +1 -1
  488. package/dist/internal/OpenApi.js +25 -10
  489. package/dist/internal/OpenApi.js.map +1 -1
  490. package/dist/internal/Provider.d.ts +1 -1
  491. package/dist/internal/Provider.d.ts.map +1 -1
  492. package/dist/internal/RateLimit.d.ts.map +1 -1
  493. package/dist/internal/RateLimit.js +13 -1
  494. package/dist/internal/RateLimit.js.map +1 -1
  495. package/dist/internal/Store.d.ts +16 -0
  496. package/dist/internal/Store.d.ts.map +1 -1
  497. package/dist/internal/Store.js +59 -8
  498. package/dist/internal/Store.js.map +1 -1
  499. package/dist/internal/Tidx.d.ts +9 -2
  500. package/dist/internal/Tidx.d.ts.map +1 -1
  501. package/dist/internal/Tidx.js +78 -11
  502. package/dist/internal/Tidx.js.map +1 -1
  503. package/dist/internal/Timing.d.ts +26 -0
  504. package/dist/internal/Timing.d.ts.map +1 -1
  505. package/dist/internal/Timing.js +63 -5
  506. package/dist/internal/Timing.js.map +1 -1
  507. package/dist/internal/VercelOidc.d.ts +94 -0
  508. package/dist/internal/VercelOidc.d.ts.map +1 -0
  509. package/dist/internal/VercelOidc.js +128 -0
  510. package/dist/internal/VercelOidc.js.map +1 -0
  511. package/dist/internal/VerifiedTokens.d.ts +2 -8
  512. package/dist/internal/VerifiedTokens.d.ts.map +1 -1
  513. package/dist/internal/VerifiedTokens.js +24 -24
  514. package/dist/internal/VerifiedTokens.js.map +1 -1
  515. package/dist/internal/Viem.d.ts +30 -2067
  516. package/dist/internal/Viem.d.ts.map +1 -1
  517. package/dist/internal/Viem.js +167 -17
  518. package/dist/internal/Viem.js.map +1 -1
  519. package/dist/internal/Webhooks.d.ts +12 -4
  520. package/dist/internal/Webhooks.d.ts.map +1 -1
  521. package/dist/internal/Webhooks.js +9 -3
  522. package/dist/internal/Webhooks.js.map +1 -1
  523. package/dist/internal/ZoneRpc.d.ts +7 -0
  524. package/dist/internal/ZoneRpc.d.ts.map +1 -0
  525. package/dist/internal/ZoneRpc.js +49 -0
  526. package/dist/internal/ZoneRpc.js.map +1 -0
  527. package/dist/internal/index.d.ts +3 -1
  528. package/dist/internal/index.d.ts.map +1 -1
  529. package/dist/internal/index.js +3 -1
  530. package/dist/internal/index.js.map +1 -1
  531. package/dist/internal/rewards/Audit.d.ts +88 -0
  532. package/dist/internal/rewards/Audit.d.ts.map +1 -0
  533. package/dist/internal/rewards/Audit.js +134 -0
  534. package/dist/internal/rewards/Audit.js.map +1 -0
  535. package/dist/internal/rewards/Campaigns.d.ts +572 -0
  536. package/dist/internal/rewards/Campaigns.d.ts.map +1 -0
  537. package/dist/internal/rewards/Campaigns.js +531 -0
  538. package/dist/internal/rewards/Campaigns.js.map +1 -0
  539. package/dist/internal/rewards/Credits.d.ts +76 -0
  540. package/dist/internal/rewards/Credits.d.ts.map +1 -0
  541. package/dist/internal/rewards/Credits.js +95 -0
  542. package/dist/internal/rewards/Credits.js.map +1 -0
  543. package/dist/internal/rewards/Events.d.ts +100 -0
  544. package/dist/internal/rewards/Events.d.ts.map +1 -0
  545. package/dist/internal/rewards/Events.js +340 -0
  546. package/dist/internal/rewards/Events.js.map +1 -0
  547. package/dist/internal/rewards/Projection.d.ts +237 -0
  548. package/dist/internal/rewards/Projection.d.ts.map +1 -0
  549. package/dist/internal/rewards/Projection.js +616 -0
  550. package/dist/internal/rewards/Projection.js.map +1 -0
  551. package/dist/internal/rewards/Rates.d.ts +44 -0
  552. package/dist/internal/rewards/Rates.d.ts.map +1 -0
  553. package/dist/internal/rewards/Rates.js +60 -0
  554. package/dist/internal/rewards/Rates.js.map +1 -0
  555. package/dist/internal/rewards/Read.d.ts +158 -0
  556. package/dist/internal/rewards/Read.d.ts.map +1 -0
  557. package/dist/internal/rewards/Read.js +292 -0
  558. package/dist/internal/rewards/Read.js.map +1 -0
  559. package/dist/internal/rewards/Runner.d.ts +164 -0
  560. package/dist/internal/rewards/Runner.d.ts.map +1 -0
  561. package/dist/internal/rewards/Runner.js +1778 -0
  562. package/dist/internal/rewards/Runner.js.map +1 -0
  563. package/dist/internal/rewards/Signer.d.ts +224 -0
  564. package/dist/internal/rewards/Signer.d.ts.map +1 -0
  565. package/dist/internal/rewards/Signer.js +135 -0
  566. package/dist/internal/rewards/Signer.js.map +1 -0
  567. package/dist/internal/rewards/index.d.ts +15 -0
  568. package/dist/internal/rewards/index.d.ts.map +1 -0
  569. package/dist/internal/rewards/index.js +15 -0
  570. package/dist/internal/rewards/index.js.map +1 -0
  571. package/dist/internal/{funding → routes}/Action.d.ts +12 -1
  572. package/dist/internal/routes/Action.d.ts.map +1 -0
  573. package/dist/internal/{funding → routes}/Action.js +17 -9
  574. package/dist/internal/routes/Action.js.map +1 -0
  575. package/dist/internal/{funding → routes}/Catalog.d.ts +20 -20
  576. package/dist/internal/routes/Catalog.d.ts.map +1 -0
  577. package/dist/internal/{funding → routes}/Catalog.js +29 -29
  578. package/dist/internal/routes/Catalog.js.map +1 -0
  579. package/dist/internal/{funding → routes}/Chain.d.ts +10 -10
  580. package/dist/internal/routes/Chain.d.ts.map +1 -0
  581. package/dist/internal/{funding → routes}/Chain.js +3 -3
  582. package/dist/internal/routes/Chain.js.map +1 -0
  583. package/dist/internal/{funding → routes}/Deposit.d.ts +45 -23
  584. package/dist/internal/routes/Deposit.d.ts.map +1 -0
  585. package/dist/internal/{funding → routes}/Deposit.js +60 -27
  586. package/dist/internal/routes/Deposit.js.map +1 -0
  587. package/dist/internal/{funding → routes}/DepositAddress.d.ts +56 -27
  588. package/dist/internal/routes/DepositAddress.d.ts.map +1 -0
  589. package/dist/internal/{funding → routes}/DepositAddress.js +95 -33
  590. package/dist/internal/routes/DepositAddress.js.map +1 -0
  591. package/dist/internal/{funding → routes}/DepositWebhook.d.ts +4 -4
  592. package/dist/internal/routes/DepositWebhook.d.ts.map +1 -0
  593. package/dist/internal/{funding → routes}/DepositWebhook.js +4 -4
  594. package/dist/internal/routes/DepositWebhook.js.map +1 -0
  595. package/dist/internal/routes/Economics.d.ts +25 -0
  596. package/dist/internal/routes/Economics.d.ts.map +1 -0
  597. package/dist/internal/routes/Economics.js +28 -0
  598. package/dist/internal/routes/Economics.js.map +1 -0
  599. package/dist/internal/{funding → routes}/Evidence.d.ts +3 -3
  600. package/dist/internal/routes/Evidence.d.ts.map +1 -0
  601. package/dist/internal/{funding → routes}/Evidence.js +7 -7
  602. package/dist/internal/routes/Evidence.js.map +1 -0
  603. package/dist/internal/routes/Observability.d.ts +154 -0
  604. package/dist/internal/routes/Observability.d.ts.map +1 -0
  605. package/dist/internal/routes/Observability.js +389 -0
  606. package/dist/internal/routes/Observability.js.map +1 -0
  607. package/dist/internal/{funding → routes}/Provider.d.ts +311 -105
  608. package/dist/internal/routes/Provider.d.ts.map +1 -0
  609. package/dist/internal/{funding → routes}/Provider.js +229 -98
  610. package/dist/internal/routes/Provider.js.map +1 -0
  611. package/dist/internal/{funding → routes}/Reconciliation.d.ts +11 -6
  612. package/dist/internal/routes/Reconciliation.d.ts.map +1 -0
  613. package/dist/internal/{funding → routes}/Reconciliation.js +408 -158
  614. package/dist/internal/routes/Reconciliation.js.map +1 -0
  615. package/dist/internal/routes/Route.d.ts +21 -0
  616. package/dist/internal/routes/Route.d.ts.map +1 -0
  617. package/dist/internal/{funding → routes}/Route.js +1 -1
  618. package/dist/internal/routes/Route.js.map +1 -0
  619. package/dist/internal/{funding → routes}/SourceObservation.d.ts +6 -6
  620. package/dist/internal/routes/SourceObservation.d.ts.map +1 -0
  621. package/dist/internal/{funding → routes}/SourceObservation.js +8 -8
  622. package/dist/internal/routes/SourceObservation.js.map +1 -0
  623. package/dist/internal/{funding → routes}/Subsidy.d.ts +48 -3
  624. package/dist/internal/routes/Subsidy.d.ts.map +1 -0
  625. package/dist/internal/{funding → routes}/Subsidy.js +43 -3
  626. package/dist/internal/routes/Subsidy.js.map +1 -0
  627. package/dist/internal/{funding → routes}/Token.d.ts +4 -4
  628. package/dist/internal/routes/Token.d.ts.map +1 -0
  629. package/dist/internal/{funding → routes}/Token.js +3 -3
  630. package/dist/internal/routes/Token.js.map +1 -0
  631. package/dist/internal/{funding → routes}/Transfer.d.ts +241 -46
  632. package/dist/internal/routes/Transfer.d.ts.map +1 -0
  633. package/dist/internal/routes/Transfer.js +728 -0
  634. package/dist/internal/routes/Transfer.js.map +1 -0
  635. package/dist/internal/{funding → routes}/TransferReconciliation.d.ts +13 -10
  636. package/dist/internal/routes/TransferReconciliation.d.ts.map +1 -0
  637. package/dist/internal/routes/TransferReconciliation.js +422 -0
  638. package/dist/internal/routes/TransferReconciliation.js.map +1 -0
  639. package/dist/internal/routes/TransferSubsidy.d.ts +201 -0
  640. package/dist/internal/routes/TransferSubsidy.d.ts.map +1 -0
  641. package/dist/internal/routes/TransferSubsidy.js +256 -0
  642. package/dist/internal/routes/TransferSubsidy.js.map +1 -0
  643. package/dist/internal/{funding → routes}/TransferWebhook.d.ts +5 -5
  644. package/dist/internal/routes/TransferWebhook.d.ts.map +1 -0
  645. package/dist/internal/{funding → routes}/TransferWebhook.js +3 -3
  646. package/dist/internal/routes/TransferWebhook.js.map +1 -0
  647. package/dist/internal/{funding → routes}/index.d.ts +2 -0
  648. package/dist/internal/routes/index.d.ts.map +1 -0
  649. package/dist/internal/{funding → routes}/index.js +2 -0
  650. package/dist/internal/routes/index.js.map +1 -0
  651. package/dist/internal/{funding → routes}/providers/across.d.ts +4 -4
  652. package/dist/internal/routes/providers/across.d.ts.map +1 -0
  653. package/dist/internal/{funding → routes}/providers/across.js +13 -13
  654. package/dist/internal/routes/providers/across.js.map +1 -0
  655. package/dist/internal/{funding → routes}/providers/relay.d.ts +21 -12
  656. package/dist/internal/routes/providers/relay.d.ts.map +1 -0
  657. package/dist/internal/{funding → routes}/providers/relay.js +194 -110
  658. package/dist/internal/routes/providers/relay.js.map +1 -0
  659. package/dist/internal/{funding → routes}/providers/rhino.d.ts +4 -4
  660. package/dist/internal/routes/providers/rhino.d.ts.map +1 -0
  661. package/dist/internal/{funding → routes}/providers/rhino.js +10 -10
  662. package/dist/internal/routes/providers/rhino.js.map +1 -0
  663. package/dist/internal/{funding → routes}/providers/squid.d.ts +4 -4
  664. package/dist/internal/routes/providers/squid.d.ts.map +1 -0
  665. package/dist/internal/{funding → routes}/providers/squid.js +14 -14
  666. package/dist/internal/routes/providers/squid.js.map +1 -0
  667. package/dist/internal/{funding → routes}/providers/stargate.d.ts +46 -18
  668. package/dist/internal/routes/providers/stargate.d.ts.map +1 -0
  669. package/dist/internal/routes/providers/stargate.js +898 -0
  670. package/dist/internal/routes/providers/stargate.js.map +1 -0
  671. package/dist/internal/{funding → routes}/providers/symbiosis.d.ts +4 -4
  672. package/dist/internal/routes/providers/symbiosis.d.ts.map +1 -0
  673. package/dist/internal/{funding → routes}/providers/symbiosis.js +30 -20
  674. package/dist/internal/routes/providers/symbiosis.js.map +1 -0
  675. package/dist/internal/webhookDestinations/slack.js +12 -12
  676. package/dist/internal/webhookDestinations/slack.js.map +1 -1
  677. package/dist/providers/index.d.ts +12 -12
  678. package/dist/providers/index.d.ts.map +1 -1
  679. package/dist/providers/index.js +12 -12
  680. package/dist/providers/index.js.map +1 -1
  681. package/dist/server.d.ts +19 -0
  682. package/dist/server.d.ts.map +1 -0
  683. package/dist/server.js +19 -0
  684. package/dist/server.js.map +1 -0
  685. package/package.json +15 -4
  686. package/src/ApiKey.ts +1 -1
  687. package/src/ApiKeys.test.ts +1033 -3
  688. package/src/ApiKeys.ts +489 -48
  689. package/src/App.test-d.ts +1 -1
  690. package/src/App.test.ts +216 -25
  691. package/src/App.ts +334 -31
  692. package/src/Assets.test.ts +2 -2
  693. package/src/Assets.ts +3 -1
  694. package/src/Auth.test-d.ts +1 -1
  695. package/src/Client.test-d.ts +539 -110
  696. package/src/Handler.ts +0 -1
  697. package/src/OpenApi.contract.test.ts +195 -0
  698. package/src/Scope.ts +17 -5
  699. package/src/Webhooks.ts +1 -1
  700. package/src/admin/App.test.ts +30 -2
  701. package/src/admin/App.ts +42 -6
  702. package/src/admin/apps/api-keys.test.ts +267 -5
  703. package/src/admin/apps/api-keys.ts +100 -50
  704. package/src/admin/apps/earn-vaults.test.ts +158 -0
  705. package/src/admin/apps/earn-vaults.ts +679 -6
  706. package/src/admin/apps/organizations.test.ts +306 -17
  707. package/src/admin/apps/organizations.ts +299 -24
  708. package/src/admin/apps/routes-support.test.ts +200 -0
  709. package/src/admin/apps/routes-support.ts +201 -0
  710. package/src/admin/apps/routes.test.ts +450 -0
  711. package/src/admin/apps/routes.ts +896 -0
  712. package/src/admin/apps/scopes.test.ts +15 -5
  713. package/src/admin/apps/subsidies.test.ts +306 -0
  714. package/src/admin/apps/subsidies.ts +457 -0
  715. package/src/admin/apps/verified-tokens.test.ts +40 -3
  716. package/src/admin/apps/verified-tokens.ts +33 -7
  717. package/src/admin/ui/plugin.ts +1 -2
  718. package/src/admin/ui/src/components/RewardCampaignForm.tsx +1009 -0
  719. package/src/admin/ui/src/lib/config.ts +11 -2
  720. package/src/admin/ui/src/lib/earn-vaults.ts +2 -2
  721. package/src/admin/ui/src/lib/organizations.test.ts +83 -50
  722. package/src/admin/ui/src/lib/organizations.ts +106 -25
  723. package/src/admin/ui/src/lib/query-client.ts +1 -1
  724. package/src/admin/ui/src/lib/reward-campaigns.ts +136 -0
  725. package/src/admin/ui/src/lib/routes.test.ts +88 -0
  726. package/src/admin/ui/src/lib/routes.ts +304 -0
  727. package/src/admin/ui/src/lib/subsidies.ts +75 -0
  728. package/src/admin/ui/src/lib/verified-tokens.ts +24 -9
  729. package/src/admin/ui/src/routeTree.gen.ts +63 -0
  730. package/src/admin/ui/src/routes/__root.tsx +13 -2
  731. package/src/admin/ui/src/routes/api-keys.tsx +196 -84
  732. package/src/admin/ui/src/routes/earn.vaults_.$vaultId.edit.tsx +105 -70
  733. package/src/admin/ui/src/routes/organizations.tsx +34 -4
  734. package/src/admin/ui/src/routes/organizations_.$orgId.tsx +239 -23
  735. package/src/admin/ui/src/routes/routes.tsx +1615 -0
  736. package/src/admin/ui/src/routes/routes_.support.tsx +248 -0
  737. package/src/admin/ui/src/routes/subsidies.tsx +799 -0
  738. package/src/admin/ui/src/routes/verified-tokens.tsx +64 -20
  739. package/src/admin/ui.generated.ts +202 -188
  740. package/src/analytics/Analytics.test.ts +108 -18
  741. package/src/analytics/Analytics.ts +38 -6
  742. package/src/analytics/tables/requestEvents.test.ts +100 -0
  743. package/src/analytics/tables/requestEvents.ts +10 -1
  744. package/src/analytics/tables/routesLifecycleIntervals.ts +140 -0
  745. package/src/apps/Zones.test.ts +15 -0
  746. package/src/apps/Zones.ts +52 -5
  747. package/src/apps/composition.test.ts +68 -60
  748. package/src/apps/data/App.test.ts +180 -2
  749. package/src/apps/data/App.ts +88 -28
  750. package/src/apps/data/routes/activities.test.ts +419 -7
  751. package/src/apps/data/routes/activities.ts +683 -216
  752. package/src/apps/data/routes/balances.test.ts +2 -2
  753. package/src/apps/data/routes/blocks.test.ts +46 -1
  754. package/src/apps/data/routes/coingecko.test.ts +419 -1
  755. package/src/apps/data/routes/coingecko.ts +309 -253
  756. package/src/apps/data/routes/earn.discovery.test.ts +274 -0
  757. package/src/apps/data/routes/earn.test.ts +1294 -17
  758. package/src/apps/data/routes/earn.ts +1838 -321
  759. package/src/apps/data/routes/exchanges.test.ts +12 -15
  760. package/src/apps/data/routes/fee-amm.test.ts +243 -0
  761. package/src/apps/data/routes/fee-amm.ts +201 -162
  762. package/src/apps/data/routes/indexer.test.ts +389 -0
  763. package/src/apps/data/routes/indexer.ts +165 -69
  764. package/src/apps/data/routes/receipts.test.ts +1 -1
  765. package/src/apps/data/routes/rpc.test.ts +384 -8
  766. package/src/apps/data/routes/rpc.ts +452 -227
  767. package/src/apps/data/routes/rpc.zone.test.ts +340 -0
  768. package/src/apps/data/routes/tokenlist.test.ts +285 -0
  769. package/src/apps/data/routes/tokenlist.ts +173 -88
  770. package/src/apps/data/routes/tokens.test.ts +93 -3
  771. package/src/apps/data/routes/tokens.ts +39 -23
  772. package/src/apps/data/routes/transactions.test.ts +1 -1
  773. package/src/apps/data/routes/transfers.test.ts +56 -24
  774. package/src/apps/data/routes/transfers.ts +19 -8
  775. package/src/apps/data/routes/valuation.test.ts +1 -1
  776. package/src/apps/data/routes/verified-tokens.test.ts +345 -0
  777. package/src/apps/data/routes/verified-tokens.ts +99 -29
  778. package/src/apps/data/routes/webhooks.scan.test.ts +29 -0
  779. package/src/apps/data/routes/webhooks.test.ts +651 -83
  780. package/src/apps/data/routes/webhooks.ts +1113 -868
  781. package/src/apps/data/routes/zones.test.ts +148 -71
  782. package/src/apps/data/routes/zones.ts +71 -55
  783. package/src/apps/docs/reference.ts +2 -2
  784. package/src/apps/index.ts +1 -1
  785. package/src/apps/management/App.ts +9 -51
  786. package/src/apps/management/Billing.test.ts +375 -14
  787. package/src/apps/management/Billing.ts +265 -29
  788. package/src/apps/management/routes/api-keys.test.ts +269 -7
  789. package/src/apps/management/routes/api-keys.ts +61 -20
  790. package/src/apps/management/routes/billing.test.ts +477 -15
  791. package/src/apps/management/routes/billing.ts +377 -50
  792. package/src/apps/management/routes/faucet.test.ts +1 -1
  793. package/src/apps/management/routes/faucet.ts +1 -1
  794. package/src/apps/management/routes/invitations.test.ts +270 -3
  795. package/src/apps/management/routes/invitations.ts +185 -15
  796. package/src/apps/management/routes/invoicePreview.test.ts +549 -0
  797. package/src/apps/management/routes/me.test.ts +246 -5
  798. package/src/apps/management/routes/me.ts +7 -2
  799. package/src/apps/management/routes/members.test.ts +108 -0
  800. package/src/apps/management/routes/orgs.test.ts +191 -3
  801. package/src/apps/management/routes/orgs.ts +58 -11
  802. package/src/apps/management/routes/projects.test.ts +33 -3
  803. package/src/apps/management/routes/projects.ts +6 -1
  804. package/src/apps/management/routes/scopes.test.ts +30 -2
  805. package/src/apps/management/routes/scopes.ts +4 -1
  806. package/src/apps/management/routes/usage.test.ts +32 -0
  807. package/src/apps/management/routes/usage.ts +22 -4
  808. package/src/apps/management/routes/verified-token-requests.test.ts +16 -2
  809. package/src/apps/management/routes/verified-token-requests.ts +7 -10
  810. package/src/apps/management/routes/webhooks.test.ts +49 -26
  811. package/src/apps/management/routes/webhooks.ts +78 -22
  812. package/src/apps/mcp.test.ts +113 -30
  813. package/src/apps/mcp.ts +22 -10
  814. package/src/apps/mpp/App.ts +37 -7
  815. package/src/apps/mpp/Mpp.test.ts +49 -8
  816. package/src/apps/mpp/Mpp.zone.test.ts +219 -0
  817. package/src/apps/mpp/internal/Adapter.ts +34 -0
  818. package/src/apps/mpp/internal/Policy.test.ts +86 -31
  819. package/src/apps/mpp/internal/Policy.ts +49 -7
  820. package/src/apps/mpp/internal/Sponsorship.test.ts +207 -0
  821. package/src/apps/mpp/internal/Sponsorship.ts +9 -3
  822. package/src/apps/relay/App.test.ts +839 -64
  823. package/src/apps/relay/App.ts +148 -81
  824. package/src/apps/relay/App.zone-billing.test.ts +257 -0
  825. package/src/apps/relay/Sponsorships.test.ts +67 -4
  826. package/src/apps/relay/Sponsorships.ts +233 -32
  827. package/src/apps/relay/Sponsorships.zone.test.ts +102 -0
  828. package/src/apps/{funding → routes}/Access.ts +6 -6
  829. package/src/apps/routes/App.test.ts +165 -0
  830. package/src/apps/routes/App.ts +96 -0
  831. package/src/apps/{funding → routes}/Inventory.ts +2 -2
  832. package/src/apps/routes/index.ts +1 -0
  833. package/src/apps/{funding → routes}/routes/chains.test.ts +66 -66
  834. package/src/apps/{funding → routes}/routes/chains.ts +23 -23
  835. package/src/apps/{funding → routes}/routes/deposit-addresses.test.ts +1358 -458
  836. package/src/apps/{funding → routes}/routes/deposit-addresses.ts +566 -246
  837. package/src/apps/{funding → routes}/routes/providers.test.ts +27 -33
  838. package/src/apps/{funding → routes}/routes/providers.ts +23 -23
  839. package/src/apps/{funding → routes}/routes/quotes.test.ts +298 -41
  840. package/src/apps/{funding → routes}/routes/quotes.ts +57 -40
  841. package/src/apps/{funding → routes}/routes/transfers.test.ts +1100 -353
  842. package/src/apps/routes/routes/transfers.ts +1332 -0
  843. package/src/cli/Cli.test.ts +1 -1
  844. package/src/cli/commands/admin.test.ts +748 -1
  845. package/src/cli/commands/admin.ts +278 -0
  846. package/src/cloudflare.ts +52 -47
  847. package/src/db/Db.test.ts +245 -2
  848. package/src/db/Db.ts +1485 -34
  849. package/src/db/Schema.ts +729 -228
  850. package/src/db/tables/apiKeyAdmissionBootstraps.ts +4 -0
  851. package/src/db/tables/apiKeyAdmissions.ts +218 -0
  852. package/src/db/tables/apiKeyOwnerAdmissions.ts +4 -0
  853. package/src/db/tables/apiKeyOwnerTombstones.ts +81 -0
  854. package/src/db/tables/apiKeyRevocations.test.ts +74 -0
  855. package/src/db/tables/apiKeyRevocations.ts +121 -0
  856. package/src/db/tables/authAccounts.ts +105 -0
  857. package/src/db/tables/authSessions.ts +13 -0
  858. package/src/db/tables/authVerifications.ts +13 -0
  859. package/src/db/tables/invitations.ts +142 -45
  860. package/src/db/tables/memberships.ts +79 -3
  861. package/src/db/tables/organizations.test.ts +690 -13
  862. package/src/db/tables/organizations.ts +139 -55
  863. package/src/db/tables/projects.test.ts +16 -0
  864. package/src/db/tables/projects.ts +13 -3
  865. package/src/db/tables/requestUsage.ts +4 -1
  866. package/src/db/tables/rewardAccounts.ts +178 -0
  867. package/src/db/tables/rewardCampaignDistributors.ts +68 -0
  868. package/src/db/tables/rewardCampaigns.test.ts +1388 -0
  869. package/src/db/tables/rewardCampaigns.ts +647 -0
  870. package/src/db/tables/rewardCredits.ts +110 -0
  871. package/src/db/tables/rewardEligibilityAssociations.test.ts +271 -0
  872. package/src/db/tables/rewardEligibilityAssociations.ts +184 -0
  873. package/src/db/tables/rewardRuns.ts +514 -0
  874. package/src/db/tables/rewardTransactionAttempts.ts +272 -0
  875. package/src/db/tables/routesCatalog.test.ts +185 -0
  876. package/src/db/tables/routesCatalog.ts +163 -0
  877. package/src/db/tables/routesDepositAddresses.test.ts +1048 -0
  878. package/src/db/tables/routesDepositAddresses.ts +1008 -0
  879. package/src/db/tables/{fundingDepositRequestObservations.test.ts → routesDepositRequestObservations.test.ts} +13 -14
  880. package/src/db/tables/{fundingDepositRequestObservations.ts → routesDepositRequestObservations.ts} +10 -10
  881. package/src/db/tables/{fundingDeposits.test.ts → routesDeposits.test.ts} +388 -46
  882. package/src/db/tables/routesDeposits.ts +1062 -0
  883. package/src/db/tables/routesIdempotency.test.ts +796 -0
  884. package/src/db/tables/routesIdempotency.ts +496 -0
  885. package/src/db/tables/routesSubsidies.test.ts +120 -0
  886. package/src/db/tables/routesSubsidies.ts +71 -0
  887. package/src/db/tables/{fundingTransferEvents.ts → routesTransferEvents.ts} +4 -4
  888. package/src/db/tables/routesTransferSubsidies.ts +38 -0
  889. package/src/db/tables/routesTransferSubsidyNonces.ts +124 -0
  890. package/src/db/tables/routesTransferTransactions.test.ts +195 -0
  891. package/src/db/tables/{fundingTransferTransactions.ts → routesTransferTransactions.ts} +63 -18
  892. package/src/db/tables/routesTransfers.test.ts +338 -0
  893. package/src/db/tables/routesTransfers.ts +662 -0
  894. package/src/db/tables/sponsoredTransactions.test.ts +269 -45
  895. package/src/db/tables/sponsoredTransactions.ts +225 -65
  896. package/src/db/tables/sponsorshipAttributions.test.ts +160 -0
  897. package/src/db/tables/sponsorshipAttributions.ts +168 -0
  898. package/src/db/tables/sponsorshipReconciliationCursors.test.ts +115 -0
  899. package/src/db/tables/sponsorshipReconciliationCursors.ts +67 -0
  900. package/src/db/tables/stripeCustomers.test.ts +85 -0
  901. package/src/db/tables/stripeCustomers.ts +24 -0
  902. package/src/db/tables/users.test.ts +129 -0
  903. package/src/db/tables/users.ts +49 -3
  904. package/src/db/tables/verifiedTokenRequests.test.ts +39 -20
  905. package/src/db/tables/verifiedTokenRequests.ts +80 -44
  906. package/src/db/tables/webhookQueueEvents.ts +8 -1
  907. package/src/db/tables/webhookSubscriptions.ts +95 -20
  908. package/src/handlers/internal/executionError.ts +3 -4
  909. package/src/handlers/internal/multisig.ts +13 -816
  910. package/src/handlers/internal/sponsorship.ts +26 -10
  911. package/src/handlers/relay.test-d.ts +9 -1
  912. package/src/handlers/relay.test.ts +823 -3
  913. package/src/handlers/relay.ts +127 -107
  914. package/src/index.test-d.ts +7 -0
  915. package/src/index.ts +0 -17
  916. package/src/internal/AssetResponse.ts +26 -0
  917. package/src/internal/Auth.test.ts +1656 -9
  918. package/src/internal/Auth.ts +880 -244
  919. package/src/internal/BetterAuth.test.ts +242 -0
  920. package/src/internal/BetterAuth.ts +349 -0
  921. package/src/internal/Cache.ts +2 -0
  922. package/src/internal/EarnRates.test.ts +17 -0
  923. package/src/internal/EarnRates.ts +124 -31
  924. package/src/internal/EarnSharePrices.test.ts +182 -0
  925. package/src/internal/EarnSharePrices.ts +313 -0
  926. package/src/internal/EarnVaults.test.ts +21 -0
  927. package/src/internal/EarnVaults.ts +33 -11
  928. package/src/internal/Email.ts +54 -0
  929. package/src/internal/Idempotency.test.ts +2 -2
  930. package/src/internal/Log.test-d.ts +8 -7
  931. package/src/internal/Log.test.ts +114 -16
  932. package/src/internal/Log.ts +53 -40
  933. package/src/internal/MetricSink.test.ts +313 -26
  934. package/src/internal/MetricSink.ts +73 -8
  935. package/src/internal/Mpp.test.ts +31 -0
  936. package/src/internal/Mpp.ts +21 -24
  937. package/src/internal/OpenApi.ts +45 -12
  938. package/src/internal/Provider.test.ts +1 -1
  939. package/src/internal/Provider.ts +1 -1
  940. package/src/internal/RateLimit.test.ts +21 -3
  941. package/src/internal/RateLimit.ts +12 -1
  942. package/src/internal/Store.test-d.ts +1 -1
  943. package/src/internal/Store.test.ts +151 -8
  944. package/src/internal/Store.ts +76 -9
  945. package/src/internal/Tidx.test.ts +59 -8
  946. package/src/internal/Tidx.ts +86 -14
  947. package/src/internal/Timing.test.ts +77 -0
  948. package/src/internal/Timing.ts +83 -6
  949. package/src/internal/VercelOidc.test.ts +188 -0
  950. package/src/internal/VercelOidc.ts +193 -0
  951. package/src/internal/VerifiedTokens.test.ts +60 -6
  952. package/src/internal/VerifiedTokens.ts +21 -24
  953. package/src/internal/Viem.batch.test.ts +80 -0
  954. package/src/internal/Viem.test.ts +201 -2
  955. package/src/internal/Viem.ts +221 -25
  956. package/src/internal/Webhooks.test.ts +85 -6
  957. package/src/internal/Webhooks.ts +22 -4
  958. package/src/internal/ZoneRpc.ts +50 -0
  959. package/src/internal/exchange/Provider.test.ts +2 -2
  960. package/src/internal/index.test.ts +3 -1
  961. package/src/internal/index.ts +3 -1
  962. package/src/internal/rewards/Audit.ts +231 -0
  963. package/src/internal/rewards/Campaigns.test.ts +1234 -0
  964. package/src/internal/rewards/Campaigns.ts +1205 -0
  965. package/src/internal/rewards/Credits.ts +165 -0
  966. package/src/internal/rewards/Events.local.test.ts +113 -0
  967. package/src/internal/rewards/Events.test.ts +152 -0
  968. package/src/internal/rewards/Events.ts +468 -0
  969. package/src/internal/rewards/Projection.test.ts +681 -0
  970. package/src/internal/rewards/Projection.ts +987 -0
  971. package/src/internal/rewards/Rates.test.ts +171 -0
  972. package/src/internal/rewards/Rates.ts +110 -0
  973. package/src/internal/rewards/Read.test.ts +501 -0
  974. package/src/internal/rewards/Read.ts +476 -0
  975. package/src/internal/rewards/Runner.checkpoint.test.ts +80 -0
  976. package/src/internal/rewards/Runner.states.test.ts +188 -0
  977. package/src/internal/rewards/Runner.test.ts +90 -0
  978. package/src/internal/rewards/Runner.ts +2229 -0
  979. package/src/internal/rewards/Signer.test.ts +79 -0
  980. package/src/internal/rewards/Signer.ts +180 -0
  981. package/src/internal/rewards/index.ts +14 -0
  982. package/src/internal/{funding → routes}/Action.test.ts +63 -14
  983. package/src/internal/{funding → routes}/Action.ts +35 -8
  984. package/src/internal/{funding → routes}/Catalog.test.ts +3 -3
  985. package/src/internal/{funding → routes}/Catalog.ts +39 -39
  986. package/src/internal/{funding → routes}/Chain.test.ts +1 -1
  987. package/src/internal/{funding → routes}/Chain.ts +11 -11
  988. package/src/internal/{funding → routes}/Deposit.test.ts +1 -1
  989. package/src/internal/{funding → routes}/Deposit.ts +93 -45
  990. package/src/internal/{funding → routes}/DepositAddress.test.ts +11 -3
  991. package/src/internal/{funding → routes}/DepositAddress.ts +132 -53
  992. package/src/internal/{funding → routes}/DepositWebhook.test.ts +61 -18
  993. package/src/internal/{funding → routes}/DepositWebhook.ts +9 -9
  994. package/src/internal/routes/Economics.test.ts +42 -0
  995. package/src/internal/routes/Economics.ts +47 -0
  996. package/src/internal/{funding → routes}/Evidence.test.ts +6 -6
  997. package/src/internal/{funding → routes}/Evidence.ts +9 -9
  998. package/src/internal/routes/Observability.test.ts +636 -0
  999. package/src/internal/routes/Observability.ts +668 -0
  1000. package/src/internal/{funding → routes}/Provider.test.ts +489 -153
  1001. package/src/internal/{funding → routes}/Provider.ts +489 -186
  1002. package/src/internal/{funding → routes}/Reconciliation.local.test.ts +84 -12
  1003. package/src/internal/{funding → routes}/Reconciliation.test.ts +1213 -279
  1004. package/src/internal/{funding → routes}/Reconciliation.ts +501 -203
  1005. package/src/internal/routes/Reconciliation.unattributed.test.ts +250 -0
  1006. package/src/internal/{funding → routes}/Route.ts +7 -7
  1007. package/src/internal/{funding → routes}/SourceObservation.test.ts +13 -14
  1008. package/src/internal/{funding → routes}/SourceObservation.ts +13 -13
  1009. package/src/internal/{funding → routes}/Subsidy.local.test.ts +7 -7
  1010. package/src/internal/routes/Subsidy.test.ts +169 -0
  1011. package/src/internal/{funding → routes}/Subsidy.ts +86 -6
  1012. package/src/internal/{funding → routes}/Token.test.ts +1 -1
  1013. package/src/internal/{funding → routes}/Token.ts +5 -5
  1014. package/src/internal/routes/Transfer.test.ts +1199 -0
  1015. package/src/internal/routes/Transfer.ts +1206 -0
  1016. package/src/internal/routes/TransferReconciliation.test.ts +731 -0
  1017. package/src/internal/routes/TransferReconciliation.ts +527 -0
  1018. package/src/internal/routes/TransferSubsidy.test.ts +172 -0
  1019. package/src/internal/routes/TransferSubsidy.ts +447 -0
  1020. package/src/internal/{funding → routes}/TransferWebhook.test.ts +13 -13
  1021. package/src/internal/{funding → routes}/TransferWebhook.ts +7 -7
  1022. package/src/internal/{funding → routes}/index.test.ts +5 -3
  1023. package/src/internal/{funding → routes}/index.ts +2 -0
  1024. package/src/internal/{funding → routes}/providers/across.ts +16 -16
  1025. package/src/internal/{funding → routes}/providers/index.test.ts +157 -44
  1026. package/src/internal/{funding → routes}/providers/relay.test.ts +224 -32
  1027. package/src/internal/{funding → routes}/providers/relay.ts +228 -121
  1028. package/src/internal/{funding → routes}/providers/rhino.ts +16 -16
  1029. package/src/internal/{funding → routes}/providers/squid.ts +17 -17
  1030. package/src/internal/routes/providers/stargate.test.ts +728 -0
  1031. package/src/internal/routes/providers/stargate.ts +1276 -0
  1032. package/src/internal/{funding → routes}/providers/symbiosis.ts +64 -24
  1033. package/src/internal/webhookDestinations/slack.ts +10 -10
  1034. package/src/providers/index.ts +13 -13
  1035. package/src/server.ts +18 -0
  1036. package/dist/apps/funding/Access.d.ts.map +0 -1
  1037. package/dist/apps/funding/Access.js.map +0 -1
  1038. package/dist/apps/funding/App.js.map +0 -1
  1039. package/dist/apps/funding/Inventory.d.ts.map +0 -1
  1040. package/dist/apps/funding/Inventory.js.map +0 -1
  1041. package/dist/apps/funding/ProviderAttempts.d.ts +0 -5
  1042. package/dist/apps/funding/ProviderAttempts.d.ts.map +0 -1
  1043. package/dist/apps/funding/ProviderAttempts.js +0 -24
  1044. package/dist/apps/funding/ProviderAttempts.js.map +0 -1
  1045. package/dist/apps/funding/index.d.ts +0 -2
  1046. package/dist/apps/funding/index.d.ts.map +0 -1
  1047. package/dist/apps/funding/index.js +0 -2
  1048. package/dist/apps/funding/index.js.map +0 -1
  1049. package/dist/apps/funding/routes/chains.d.ts.map +0 -1
  1050. package/dist/apps/funding/routes/chains.js.map +0 -1
  1051. package/dist/apps/funding/routes/deposit-addresses.d.ts.map +0 -1
  1052. package/dist/apps/funding/routes/deposit-addresses.js.map +0 -1
  1053. package/dist/apps/funding/routes/providers.d.ts.map +0 -1
  1054. package/dist/apps/funding/routes/providers.js +0 -57
  1055. package/dist/apps/funding/routes/providers.js.map +0 -1
  1056. package/dist/apps/funding/routes/quotes.d.ts.map +0 -1
  1057. package/dist/apps/funding/routes/quotes.js.map +0 -1
  1058. package/dist/apps/funding/routes/transfers.d.ts.map +0 -1
  1059. package/dist/apps/funding/routes/transfers.js +0 -828
  1060. package/dist/apps/funding/routes/transfers.js.map +0 -1
  1061. package/dist/db/tables/fundingCatalog.d.ts +0 -58
  1062. package/dist/db/tables/fundingCatalog.d.ts.map +0 -1
  1063. package/dist/db/tables/fundingCatalog.js.map +0 -1
  1064. package/dist/db/tables/fundingDepositAddresses.d.ts +0 -192
  1065. package/dist/db/tables/fundingDepositAddresses.d.ts.map +0 -1
  1066. package/dist/db/tables/fundingDepositAddresses.js +0 -235
  1067. package/dist/db/tables/fundingDepositAddresses.js.map +0 -1
  1068. package/dist/db/tables/fundingDepositRequestObservations.d.ts.map +0 -1
  1069. package/dist/db/tables/fundingDepositRequestObservations.js.map +0 -1
  1070. package/dist/db/tables/fundingDeposits.d.ts.map +0 -1
  1071. package/dist/db/tables/fundingDeposits.js +0 -295
  1072. package/dist/db/tables/fundingDeposits.js.map +0 -1
  1073. package/dist/db/tables/fundingIdempotency.d.ts +0 -91
  1074. package/dist/db/tables/fundingIdempotency.d.ts.map +0 -1
  1075. package/dist/db/tables/fundingIdempotency.js +0 -103
  1076. package/dist/db/tables/fundingIdempotency.js.map +0 -1
  1077. package/dist/db/tables/fundingTransferEvents.d.ts.map +0 -1
  1078. package/dist/db/tables/fundingTransferEvents.js.map +0 -1
  1079. package/dist/db/tables/fundingTransferTransactions.d.ts +0 -53
  1080. package/dist/db/tables/fundingTransferTransactions.d.ts.map +0 -1
  1081. package/dist/db/tables/fundingTransferTransactions.js.map +0 -1
  1082. package/dist/db/tables/fundingTransfers.d.ts +0 -99
  1083. package/dist/db/tables/fundingTransfers.d.ts.map +0 -1
  1084. package/dist/db/tables/fundingTransfers.js +0 -110
  1085. package/dist/db/tables/fundingTransfers.js.map +0 -1
  1086. package/dist/internal/funding/Action.d.ts.map +0 -1
  1087. package/dist/internal/funding/Action.js.map +0 -1
  1088. package/dist/internal/funding/Catalog.d.ts.map +0 -1
  1089. package/dist/internal/funding/Catalog.js.map +0 -1
  1090. package/dist/internal/funding/Chain.d.ts.map +0 -1
  1091. package/dist/internal/funding/Chain.js.map +0 -1
  1092. package/dist/internal/funding/Deposit.d.ts.map +0 -1
  1093. package/dist/internal/funding/Deposit.js.map +0 -1
  1094. package/dist/internal/funding/DepositAddress.d.ts.map +0 -1
  1095. package/dist/internal/funding/DepositAddress.js.map +0 -1
  1096. package/dist/internal/funding/DepositWebhook.d.ts.map +0 -1
  1097. package/dist/internal/funding/DepositWebhook.js.map +0 -1
  1098. package/dist/internal/funding/Evidence.d.ts.map +0 -1
  1099. package/dist/internal/funding/Evidence.js.map +0 -1
  1100. package/dist/internal/funding/Provider.d.ts.map +0 -1
  1101. package/dist/internal/funding/Provider.js.map +0 -1
  1102. package/dist/internal/funding/Reconciliation.d.ts.map +0 -1
  1103. package/dist/internal/funding/Reconciliation.js.map +0 -1
  1104. package/dist/internal/funding/Route.d.ts +0 -21
  1105. package/dist/internal/funding/Route.d.ts.map +0 -1
  1106. package/dist/internal/funding/Route.js.map +0 -1
  1107. package/dist/internal/funding/SourceObservation.d.ts.map +0 -1
  1108. package/dist/internal/funding/SourceObservation.js.map +0 -1
  1109. package/dist/internal/funding/Subsidy.d.ts.map +0 -1
  1110. package/dist/internal/funding/Subsidy.js.map +0 -1
  1111. package/dist/internal/funding/Token.d.ts.map +0 -1
  1112. package/dist/internal/funding/Token.js.map +0 -1
  1113. package/dist/internal/funding/Transfer.d.ts.map +0 -1
  1114. package/dist/internal/funding/Transfer.js +0 -462
  1115. package/dist/internal/funding/Transfer.js.map +0 -1
  1116. package/dist/internal/funding/TransferReconciliation.d.ts.map +0 -1
  1117. package/dist/internal/funding/TransferReconciliation.js +0 -192
  1118. package/dist/internal/funding/TransferReconciliation.js.map +0 -1
  1119. package/dist/internal/funding/TransferWebhook.d.ts.map +0 -1
  1120. package/dist/internal/funding/TransferWebhook.js.map +0 -1
  1121. package/dist/internal/funding/index.d.ts.map +0 -1
  1122. package/dist/internal/funding/index.js.map +0 -1
  1123. package/dist/internal/funding/providers/across.d.ts.map +0 -1
  1124. package/dist/internal/funding/providers/across.js.map +0 -1
  1125. package/dist/internal/funding/providers/relay.d.ts.map +0 -1
  1126. package/dist/internal/funding/providers/relay.js.map +0 -1
  1127. package/dist/internal/funding/providers/rhino.d.ts.map +0 -1
  1128. package/dist/internal/funding/providers/rhino.js.map +0 -1
  1129. package/dist/internal/funding/providers/squid.d.ts.map +0 -1
  1130. package/dist/internal/funding/providers/squid.js.map +0 -1
  1131. package/dist/internal/funding/providers/stargate.d.ts.map +0 -1
  1132. package/dist/internal/funding/providers/stargate.js +0 -579
  1133. package/dist/internal/funding/providers/stargate.js.map +0 -1
  1134. package/dist/internal/funding/providers/symbiosis.d.ts.map +0 -1
  1135. package/dist/internal/funding/providers/symbiosis.js.map +0 -1
  1136. package/src/apps/funding/App.test.ts +0 -78
  1137. package/src/apps/funding/App.ts +0 -88
  1138. package/src/apps/funding/ProviderAttempts.ts +0 -26
  1139. package/src/apps/funding/index.ts +0 -1
  1140. package/src/apps/funding/routes/transfers.ts +0 -987
  1141. package/src/db/tables/fundingCatalog.test.ts +0 -122
  1142. package/src/db/tables/fundingCatalog.ts +0 -163
  1143. package/src/db/tables/fundingDepositAddresses.test.ts +0 -608
  1144. package/src/db/tables/fundingDepositAddresses.ts +0 -443
  1145. package/src/db/tables/fundingDeposits.ts +0 -572
  1146. package/src/db/tables/fundingIdempotency.test.ts +0 -182
  1147. package/src/db/tables/fundingIdempotency.ts +0 -180
  1148. package/src/db/tables/fundingTransferTransactions.test.ts +0 -112
  1149. package/src/db/tables/fundingTransfers.test.ts +0 -115
  1150. package/src/db/tables/fundingTransfers.ts +0 -189
  1151. package/src/handlers/internal/multisig.test.ts +0 -818
  1152. package/src/internal/funding/Subsidy.test.ts +0 -75
  1153. package/src/internal/funding/Transfer.test.ts +0 -524
  1154. package/src/internal/funding/Transfer.ts +0 -762
  1155. package/src/internal/funding/TransferReconciliation.test.ts +0 -147
  1156. package/src/internal/funding/TransferReconciliation.ts +0 -264
  1157. package/src/internal/funding/providers/stargate.test.ts +0 -328
  1158. package/src/internal/funding/providers/stargate.ts +0 -856
  1159. /package/dist/apps/{funding → routes}/Inventory.d.ts +0 -0
  1160. /package/src/internal/{funding → routes}/Route.test.ts +0 -0
@@ -14,8 +14,8 @@ import * as Value from '../../../internal/Value.js';
14
14
  import * as WebhookDestination from '../../../internal/WebhookDestination.js';
15
15
  import * as WebhookTransfer from '../../../internal/WebhookTransfer.js';
16
16
  import * as Webhooks from '../../../internal/Webhooks.js';
17
- import * as FundingDeposit from '../../../internal/funding/Deposit.js';
18
- import * as FundingTransfer from '../../../internal/funding/Transfer.js';
17
+ import * as RoutesDeposit from '../../../internal/routes/Deposit.js';
18
+ import * as RoutesTransfer from '../../../internal/routes/Transfer.js';
19
19
  import * as Transactions from './transactions.js';
20
20
  import * as Transfers from './transfers.js';
21
21
  /** Default cap on live subscriptions per owner, overridable via `webhook.maxPerOwner`. */
@@ -35,20 +35,20 @@ const redactedSlackUrl = 'https://hooks.slack.com/…';
35
35
  */
36
36
  export const eventTypes = [
37
37
  'block:created',
38
- 'funding:deposit.updated',
39
- 'funding:transfer.updated',
38
+ 'routes:deposit.updated',
39
+ 'routes:transfer.updated',
40
40
  'log:emitted',
41
41
  'token:transfer',
42
42
  'transaction:included',
43
43
  ];
44
- /** Funding resource events produced by the API instead of chain scans. */
45
- export const fundingEventTypes = [
46
- 'funding:deposit.updated',
47
- 'funding:transfer.updated',
44
+ /** Route resource events produced by the API instead of chain scans. */
45
+ export const routesEventTypes = [
46
+ 'routes:deposit.updated',
47
+ 'routes:transfer.updated',
48
48
  ];
49
- /** Returns whether an event type carries an owner-scoped funding resource. */
50
- export function isFundingEventType(eventType) {
51
- return fundingEventTypes.includes(eventType);
49
+ /** Returns whether an event type carries an owner-scoped route resource. */
50
+ export function isRoutesEventType(eventType) {
51
+ return routesEventTypes.includes(eventType);
52
52
  }
53
53
  /** Subscribable event types surfaced by `GET /webhooks/event-types`. */
54
54
  const eventTypeDescriptions = [
@@ -57,12 +57,12 @@ const eventTypeDescriptions = [
57
57
  type: 'block:created',
58
58
  },
59
59
  {
60
- description: 'A funding deposit materially changed after verified reconciliation, filterable by deposit address, recipient, or status.',
61
- type: 'funding:deposit.updated',
60
+ description: 'A route deposit materially changed after verified reconciliation, filterable by deposit address, recipient, or status.',
61
+ type: 'routes:deposit.updated',
62
62
  },
63
63
  {
64
- description: 'A funding transfer materially changed, filterable by transfer ID or lifecycle status.',
65
- type: 'funding:transfer.updated',
64
+ description: 'A route transfer materially changed, filterable by transfer ID or lifecycle status.',
65
+ type: 'routes:transfer.updated',
66
66
  },
67
67
  {
68
68
  description: 'Any contract event log, filtered by emitting address, event signature/topics, or decoded arguments.',
@@ -81,7 +81,7 @@ const eventTypeDescriptions = [
81
81
  export var schema;
82
82
  (function (schema) {
83
83
  /** Subscribable event type. */
84
- schema.EventType = z.enum(eventTypes).check(z.describe('Event type you can subscribe to.'));
84
+ schema.EventType = OpenApi.component(z.enum(eventTypes).check(z.describe('Event type you can subscribe to.')), 'WebhookSubscriptionEventType');
85
85
  /** Subscription lifecycle status. */
86
86
  schema.Status = z
87
87
  .enum(['active', 'disabled', 'paused'])
@@ -106,42 +106,46 @@ export var schema;
106
106
  * your Slack incoming-webhook URL), or a `betterstack` destination (a structured
107
107
  * log event POSTed to a Better Stack source with a bearer source token).
108
108
  */
109
- const Destination = z
109
+ const DestinationSchema = z
110
110
  .discriminatedUnion('type', [
111
111
  z.object({
112
- type: z.literal('url'),
112
+ type: z.literal('url').check(z.meta({ examples: ['url'] })),
113
113
  url: Url,
114
114
  }),
115
115
  z.object({
116
- type: z.literal('slack'),
116
+ type: z.literal('slack').check(z.meta({ examples: ['slack'] })),
117
117
  url: SlackUrl,
118
118
  }),
119
119
  z.object({
120
120
  token: BetterstackToken,
121
- type: z.literal('betterstack'),
121
+ type: z.literal('betterstack').check(z.meta({ examples: ['betterstack'] })),
122
122
  url: BetterstackUrl,
123
123
  }),
124
124
  ])
125
- .check(z.describe('Delivery destination: an HTTPS URL, a Slack incoming-webhook URL, or a Better Stack source.'));
126
- const PublicDestination = z
125
+ .check(z.describe('Delivery destination: an HTTPS URL, a Slack incoming-webhook URL, or a Better Stack source.'), z.meta({ examples: [{ type: 'url', url: 'https://example.com/webhooks' }] }));
126
+ const Destination = OpenApi.component(DestinationSchema, 'WebhookDestination');
127
+ const PublicDestinationSchema = z
127
128
  .discriminatedUnion('type', [
128
129
  z.object({
129
- type: z.literal('url'),
130
+ type: z.literal('url').check(z.meta({ examples: ['url'] })),
130
131
  url: Url,
131
132
  }),
132
133
  z.object({
133
- type: z.literal('slack'),
134
- url: z.literal(redactedSlackUrl).check(z.describe('Redacted Slack webhook URL.')),
134
+ type: z.literal('slack').check(z.meta({ examples: ['slack'] })),
135
+ url: z
136
+ .literal(redactedSlackUrl)
137
+ .check(z.describe('Redacted Slack webhook URL.'), z.meta({ examples: [redactedSlackUrl] })),
135
138
  }),
136
139
  z.object({
137
140
  token: z
138
141
  .literal(redactedBetterstackToken)
139
- .check(z.describe('Redacted Better Stack source token.')),
140
- type: z.literal('betterstack'),
142
+ .check(z.describe('Redacted Better Stack source token.'), z.meta({ examples: [redactedBetterstackToken] })),
143
+ type: z.literal('betterstack').check(z.meta({ examples: ['betterstack'] })),
141
144
  url: BetterstackUrl,
142
145
  }),
143
146
  ])
144
- .check(z.describe('Delivery destination with bearer credentials redacted.'));
147
+ .check(z.describe('Delivery destination with bearer credentials redacted.'), z.meta({ examples: [{ type: 'url', url: 'https://example.com/webhooks' }] }));
148
+ const PublicDestination = OpenApi.component(PublicDestinationSchema, 'WebhookPublicDestination');
145
149
  /**
146
150
  * Equality / membership operator for a filterable field. A consumer can pass a
147
151
  * bare value (shorthand for exact equality, the common case) or an operator
@@ -173,7 +177,7 @@ export var schema;
173
177
  lt: z.optional(Schema.Quantity),
174
178
  lte: z.optional(Schema.Quantity),
175
179
  })
176
- .check(z.refine((c) => Object.keys(c).length > 0, { error: 'Comparison cannot be empty.' })),
180
+ .check(z.refine((c) => Object.keys(c).length > 0, { error: 'Comparison cannot be empty.' }), z.meta({ examples: [{ gte: '0x1' }] })),
177
181
  ]);
178
182
  /**
179
183
  * Byte/calldata-matching operator for hex fields (tx `input`, `calls[].input`).
@@ -191,7 +195,7 @@ export var schema;
191
195
  * drift. All are optional and AND-combined; omit every field to subscribe to
192
196
  * the full stream.
193
197
  */
194
- schema.TransferFilters = Transfers.schema.Predicates.check(z.describe('Filters that narrow which TIP-20 transfer events trigger this webhook.'), z.meta({ title: 'Transfer filters' }));
198
+ schema.TransferFilters = OpenApi.component(Transfers.schema.Predicates.check(z.describe('Filters that narrow which TIP-20 transfer events trigger this webhook.')), 'WebhookTransferFilters');
195
199
  /**
196
200
  * `transaction:included` subscription filters: operators over every column the
197
201
  * `txs` envelope exposes, plus inner account-abstraction `calls` and the
@@ -201,7 +205,7 @@ export var schema;
201
205
  * `address` matches either side (`from` OR `to`); when `includeCalls` is set
202
206
  * (default), `to`/`address` also match an inner call target (`calls[].to`).
203
207
  */
204
- schema.TxFilters = z
208
+ schema.TxFilters = OpenApi.component(z
205
209
  .strictObject({
206
210
  hash: z.optional(schema.eq(Schema.Hash).check(z.describe('Match this exact transaction hash (or any of several).'))),
207
211
  address: z.optional(schema.eq(Schema.Address).check(z.describe('Match transactions where this address is the sender or recipient.'))),
@@ -230,7 +234,7 @@ export var schema;
230
234
  blockNumber: z.optional(schema.compare.check(z.describe('Match the block-number bounds.'))),
231
235
  timestamp: z.optional(schema.compare.check(z.describe('Match the block timestamp bounds (unix s).'))),
232
236
  })
233
- .check(z.describe('Filters that narrow which included transactions trigger this webhook.'), z.meta({ title: 'Included-transaction filters' }));
237
+ .check(z.describe('Filters that narrow which included transactions trigger this webhook.')), 'WebhookTransactionFilters');
234
238
  /** A 32-byte log topic (lowercased hex). */
235
239
  const topic = Schema.Hash;
236
240
  /**
@@ -241,7 +245,7 @@ export var schema;
241
245
  * firehose), and an addressless filter must still be selective — an event
242
246
  * anchor (`signature`/`topic0`) plus at least one indexed topic or argument.
243
247
  */
244
- schema.LogFilters = z
248
+ schema.LogFilters = OpenApi.component(z
245
249
  .strictObject({
246
250
  address: z.optional(schema.eq(Schema.Address).check(z.describe('Only match logs emitted by this contract address (or any of several).'), z.meta({ examples: ['0x20c0000000000000000000008f5425160ebe5525'] }))),
247
251
  signature: z.optional(z.string().check(z.describe('Human-readable ABI event signature used to derive `topic0` and decode `args`, e.g. `event Transfer(address indexed from, address indexed to, uint256 value)`.'), z.meta({
@@ -264,7 +268,9 @@ export var schema;
264
268
  .check(z.describe('Match decoded event arguments by name (indexed or non-indexed). Requires `signature`. Each value is an exact value or a super admin object.'), z.meta({ examples: [{ to: '0x9e39034aae71fb89f66061a2602eb6efec271754' }] }))),
265
269
  blockNumber: z.optional(schema.compare.check(z.describe('Only match logs within these block-number bounds.'))),
266
270
  })
267
- .check(z.describe('Filters that narrow which contract event logs trigger this webhook.'), z.meta({ title: 'Log filters' }), z.refine((f) => Object.keys(f).length > 0, {
271
+ .check(z.describe('Filters that narrow which contract event logs trigger this webhook.'), z.meta({
272
+ examples: [{ address: '0x20c0000000000000000000008f5425160ebe5525' }],
273
+ }), z.refine((f) => Object.keys(f).length > 0, {
268
274
  error: 'At least one log filter is required.',
269
275
  }), z.refine((f) => !(f.signature && f.topic0), {
270
276
  error: 'Pass `signature` or `topic0`, not both.',
@@ -272,14 +278,14 @@ export var schema;
272
278
  error: '`args` requires `signature` to decode the event.',
273
279
  }), z.refine((f) => hasLogPushdown(f), {
274
280
  error: 'Log filters must include a pushdown-capable address or an event/topic0 anchor plus an indexed topic or argument.',
275
- }));
281
+ })), 'WebhookLogFilters');
276
282
  /**
277
283
  * `block:created` subscription filters. All optional and AND-combined; unlike
278
284
  * `log:emitted`, an empty filter is allowed — one row per block is a bounded,
279
285
  * non-abusive heartbeat feed. Block-level metadata only (no transaction
280
286
  * predicates; use `transaction:included` for those).
281
287
  */
282
- schema.BlockFilters = z
288
+ schema.BlockFilters = OpenApi.component(z
283
289
  .strictObject({
284
290
  number: z.optional(schema.compare.check(z.describe('Only match blocks within these block-number bounds.'))),
285
291
  miner: z.optional(schema.eq(Schema.Address).check(z.describe('Only match blocks produced by this address (the miner/producer).'), z.meta({ examples: ['0x0000000000000000000000000000000000000000'] }))),
@@ -288,28 +294,28 @@ export var schema;
288
294
  gasLimit: z.optional(schema.compare.check(z.describe('Only match blocks whose gas limit is within these bounds.'))),
289
295
  timestamp: z.optional(schema.compare.check(z.describe('Only match blocks whose unix timestamp (seconds) is within these bounds.'))),
290
296
  })
291
- .check(z.describe('Filters that narrow which new blocks trigger this webhook.'), z.meta({ title: 'Block filters' }));
292
- /** `funding:deposit.updated` subscription filters. All are optional and AND-combined. */
293
- schema.FundingDepositFilters = z
297
+ .check(z.describe('Filters that narrow which new blocks trigger this webhook.')), 'WebhookBlockFilters');
298
+ /** `routes:deposit.updated` subscription filters. All are optional and AND-combined. */
299
+ schema.RoutesDepositFilters = OpenApi.component(z
294
300
  .strictObject({
295
- depositAddressId: z.optional(FundingDeposit.schema.Snapshot.shape.depositAddressId),
301
+ depositAddressId: z.optional(RoutesDeposit.schema.Snapshot.shape.depositAddressId),
296
302
  recipient: z.optional(Schema.Address),
297
- status: z.optional(FundingDeposit.schema.Status),
303
+ status: z.optional(RoutesDeposit.schema.Status),
298
304
  })
299
- .check(z.describe('Filters that narrow which funding deposit changes trigger this webhook.'), z.meta({ title: 'Funding deposit filters' }));
300
- /** `funding:transfer.updated` subscription filters. All are optional and AND-combined. */
301
- schema.FundingTransferFilters = z
305
+ .check(z.describe('Filters that narrow which route deposit changes trigger this webhook.')), 'WebhookRoutesDepositFilters');
306
+ /** `routes:transfer.updated` subscription filters. All are optional and AND-combined. */
307
+ schema.RoutesTransferFilters = OpenApi.component(z
302
308
  .strictObject({
303
- id: z.optional(FundingTransfer.schema.FundingTransfer.shape.id),
304
- status: z.optional(FundingTransfer.schema.Status),
309
+ id: z.optional(RoutesTransfer.schema.RoutesTransfer.shape.id),
310
+ status: z.optional(RoutesTransfer.schema.Status),
305
311
  })
306
- .check(z.describe('Filters that narrow which funding transfer changes trigger this webhook.'), z.meta({ title: 'Funding transfer filters' }));
312
+ .check(z.describe('Filters that narrow which route transfer changes trigger this webhook.')), 'WebhookRoutesTransferFilters');
307
313
  /**
308
314
  * Optional human context describing what a subscription is for. Surfaced by
309
315
  * destinations (Slack header + description, Better Stack log fields) and echoed
310
316
  * on every delivered event envelope.
311
317
  */
312
- schema.Context = z
318
+ schema.Context = OpenApi.component(z
313
319
  .object({
314
320
  description: z.optional(z
315
321
  .string()
@@ -323,15 +329,17 @@ export var schema;
323
329
  .string()
324
330
  .check(z.maxLength(120), z.describe('Short label for this subscription.'), z.meta({ examples: ['Prod USDC large transfers'] }))),
325
331
  })
326
- .check(z.describe('Human context describing what this webhook subscription is for.'));
332
+ .check(z.describe('Human context describing what this webhook subscription is for.')), 'WebhookContext');
327
333
  /**
328
334
  * Public subscription representation. Never includes the signing `secret`
329
335
  * (returned once by `POST /webhooks`) or the internal owner.
330
336
  */
331
- schema.Subscription = z
337
+ schema.Subscription = OpenApi.component(z
332
338
  .object({
333
339
  chainId: chainIdResponse,
334
- context: z.optional(schema.Context),
340
+ context: z
341
+ .optional(schema.Context)
342
+ .check(z.meta({ examples: [{ title: 'Prod USDC large transfers' }] })),
335
343
  createdAt: z.iso
336
344
  .datetime()
337
345
  .check(z.describe('When the subscription was created, as an ISO 8601 timestamp.'), z.meta({ examples: ['2024-01-01T00:00:00Z'] })),
@@ -358,13 +366,13 @@ export var schema;
358
366
  .datetime()
359
367
  .check(z.describe('When the subscription was last changed, as an ISO 8601 timestamp.'), z.meta({ examples: ['2024-01-01T00:00:00Z'] })),
360
368
  })
361
- .check(z.describe('A webhook subscription that tells Tempo which onchain events to send to your destination.'));
369
+ .check(z.describe('A webhook subscription that tells Tempo which onchain events to send to its destination.')), 'Webhook');
362
370
  /** Outcome of a single delivery attempt. */
363
371
  schema.DeliveryStatus = z
364
372
  .enum(['failed', 'pending', 'succeeded'])
365
373
  .check(z.describe('Outcome of a webhook delivery attempt.'), z.meta({ examples: ['succeeded'] }));
366
374
  /** A logged delivery attempt for a subscription. */
367
- schema.Delivery = z
375
+ schema.Delivery = OpenApi.component(z
368
376
  .object({
369
377
  attempt: z
370
378
  .number()
@@ -382,7 +390,7 @@ export var schema;
382
390
  .string()
383
391
  .check(z.describe('Webhook delivery ID (`whd_…`).'), z.meta({ examples: ['whd_001718668800000_C1yJkk7CuML98HFthEDk9PsY'] })),
384
392
  requestUrl: z
385
- .string()
393
+ .url()
386
394
  .check(z.describe('Your callback URL that Tempo attempted to deliver to.'), z.meta({ examples: ['https://example.com/webhooks'] })),
387
395
  responseMs: z
388
396
  .optional(z.number().check(z.int(), z.nonnegative()))
@@ -395,14 +403,14 @@ export var schema;
395
403
  .string()
396
404
  .check(z.describe('Subscription ID (`wh_…`) this delivery belongs to.'), z.meta({ examples: ['wh_001718668800000_2ZPE2gvateYEQ0dQslgvkhjx'] })),
397
405
  })
398
- .check(z.describe('One attempt by Tempo to deliver an event to your webhook URL.'));
406
+ .check(z.describe('One attempt by Tempo to deliver an event to a webhook destination.')), 'WebhookDelivery');
399
407
  /**
400
408
  * A `transfer` event payload: the decoded TIP-20 `Transfer` row. Mirrors a
401
409
  * `GET /transfers` row but without the `sourceToken` metadata enrichment the
402
410
  * read endpoint adds (webhook delivery does not perform per-event token
403
411
  * lookups).
404
412
  */
405
- schema.TransferEvent = z
413
+ schema.TransferEvent = OpenApi.component(z
406
414
  .object({
407
415
  address: Schema.TokenAddress.check(z.describe('TIP-20 token contract address.'), z.meta({ examples: ['0x20c0000000000000000000008f5425160ebe5525'] })),
408
416
  amount: z
@@ -430,12 +438,12 @@ export var schema;
430
438
  examples: ['0x3d24a706cc2f6f4c96620bef1f61ddb23040ff77c22c8db42918c7c424bbf9d3'],
431
439
  })),
432
440
  })
433
- .check(z.describe('Payload for a `token:transfer` event, decoded from a TIP-20 `Transfer` log.'));
441
+ .check(z.describe('Payload for a `token:transfer` event, decoded from a TIP-20 `Transfer` log.')), 'WebhookTransferEvent');
434
442
  /**
435
443
  * A `transaction` event payload using the humanized transaction shape without
436
444
  * opt-in read resources such as receipts.
437
445
  */
438
- schema.TransactionEvent = z
446
+ schema.TransactionEvent = OpenApi.component(z
439
447
  .object({
440
448
  ...Transactions.schema.Transaction.shape,
441
449
  meta: z
@@ -444,14 +452,14 @@ export var schema;
444
452
  })
445
453
  .check(z.describe('Metadata for this transaction webhook event.')),
446
454
  })
447
- .check(z.describe('A transaction included in a block.'));
455
+ .check(z.describe('A transaction included in a block.')), 'WebhookTransactionEvent');
448
456
  /**
449
457
  * A `log:emitted` event payload: the raw contract event log. When a
450
458
  * `signature` filter was supplied and decoding succeeds, the best-effort
451
459
  * `event`/`args` fields carry the decoded event name and arguments (large
452
460
  * integers as decimal strings).
453
461
  */
454
- schema.LogEvent = z
462
+ schema.LogEvent = OpenApi.component(z
455
463
  .object({
456
464
  address: Schema.Address.check(z.describe('Contract that emitted the log.'), z.meta({ examples: ['0x20c00000000000000000000071de0cd31ab0d105'] })),
457
465
  args: z.optional(z
@@ -484,8 +492,9 @@ export var schema;
484
492
  timestamp: z.iso
485
493
  .datetime()
486
494
  .check(z.describe('When the block was produced, as an ISO 8601 timestamp.'), z.meta({ examples: ['2026-01-14T18:38:03.685Z'] })),
487
- topics: z.array(Schema.Hash).check(z.describe('Log topics, starting with the event signature hash (topic 0).'), z.meta({
495
+ topics: z.array(Schema.Hash).check(z.describe('Zero to four log topics; non-anonymous events start with the event signature hash.'), z.meta({
488
496
  examples: [
497
+ [],
489
498
  [
490
499
  '0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef',
491
500
  '0x000000000000000000000000e7687128b0a808c2831ff94d4f7b2fb35c65af38',
@@ -499,9 +508,9 @@ export var schema;
499
508
  .number()
500
509
  .check(z.int(), z.nonnegative(), z.describe('Index of the transaction within its block.'), z.meta({ examples: [0] })),
501
510
  })
502
- .check(z.describe('Payload for a `log:emitted` event (a raw contract event log).'));
511
+ .check(z.describe('Payload for a `log:emitted` event (a raw contract event log).')), 'WebhookLogEvent');
503
512
  /** Payload for a `block:created` event (an RPC-derived block header). */
504
- schema.BlockEvent = z
513
+ schema.BlockEvent = OpenApi.component(z
505
514
  .object({
506
515
  number: z
507
516
  .number()
@@ -527,21 +536,25 @@ export var schema;
527
536
  .datetime()
528
537
  .check(z.describe('When the block was produced, as an ISO 8601 timestamp.'), z.meta({ examples: ['2026-01-14T18:38:03.685Z'] })),
529
538
  })
530
- .check(z.describe('Payload for a `block:created` event (a new block header).'));
531
- /** Public funding deposit after a committed material change. */
532
- schema.FundingDepositEvent = FundingDeposit.schema.FundingDeposit;
533
- /** Public funding transfer after a committed material change. */
534
- schema.FundingTransferEvent = FundingTransfer.schema.FundingTransfer;
539
+ .check(z.describe('Payload for a `block:created` event (a new block header).')), 'WebhookBlockEvent');
540
+ /** Public route deposit after a committed material change. */
541
+ schema.RoutesDepositEvent = RoutesDeposit.schema.RoutesDeposit;
542
+ /** Public route transfer after a committed material change. */
543
+ schema.RoutesTransferEvent = RoutesTransfer.schema.RoutesTransfer;
535
544
  /** A `ping` (synthetic test-delivery) payload, sent by `POST /webhooks/:id/ping`. */
536
- schema.PingEvent = z
545
+ schema.PingEvent = OpenApi.component(z
537
546
  .object({
538
- ping: z.literal(true).check(z.describe('Marks this payload as a synthetic ping test.')),
547
+ ping: z
548
+ .literal(true)
549
+ .check(z.describe('Marks this payload as a synthetic ping test.'), z.meta({ examples: [true] })),
539
550
  })
540
- .check(z.describe('Payload for a webhook ping test delivery.'));
551
+ .check(z.describe('Payload for a webhook ping test delivery.')), 'WebhookPingEvent');
541
552
  /** Fields common to every delivery envelope. */
542
553
  const envelopeBase = {
543
554
  chainId: Schema.ChainId,
544
- context: z.optional(schema.Context),
555
+ context: z
556
+ .optional(schema.Context)
557
+ .check(z.meta({ examples: [{ title: 'Prod USDC large transfers' }] })),
545
558
  createdAt: z.iso
546
559
  .datetime()
547
560
  .check(z.describe('When Tempo built this delivery envelope, as an ISO 8601 timestamp.'), z.meta({ examples: ['2026-01-14T18:38:03.000Z'] })),
@@ -561,139 +574,176 @@ export var schema;
561
574
  * variant selector — without per-variant titles, inline `oneOf` members render
562
575
  * as a single (first) collapsed schema.
563
576
  */
564
- schema.Envelope = z
577
+ schema.Envelope = OpenApi.component(z
565
578
  .discriminatedUnion('type', [
566
579
  z
567
- .object({ ...envelopeBase, data: schema.TransferEvent, type: z.literal('token:transfer') })
580
+ .object({
581
+ ...envelopeBase,
582
+ data: schema.TransferEvent,
583
+ type: z.literal('token:transfer').check(z.meta({ examples: ['token:transfer'] })),
584
+ })
568
585
  .check(z.meta({ title: 'Transfer event' })),
569
586
  z
570
587
  .object({
571
588
  ...envelopeBase,
572
589
  data: schema.TransactionEvent,
573
- type: z.literal('transaction:included'),
590
+ type: z
591
+ .literal('transaction:included')
592
+ .check(z.meta({ examples: ['transaction:included'] })),
574
593
  })
575
594
  .check(z.meta({ title: 'Included transaction event' })),
576
595
  z
577
- .object({ ...envelopeBase, data: schema.LogEvent, type: z.literal('log:emitted') })
596
+ .object({
597
+ ...envelopeBase,
598
+ data: schema.LogEvent,
599
+ type: z.literal('log:emitted').check(z.meta({ examples: ['log:emitted'] })),
600
+ })
578
601
  .check(z.meta({ title: 'Log event' })),
579
602
  z
580
- .object({ ...envelopeBase, data: schema.BlockEvent, type: z.literal('block:created') })
603
+ .object({
604
+ ...envelopeBase,
605
+ data: schema.BlockEvent,
606
+ type: z.literal('block:created').check(z.meta({ examples: ['block:created'] })),
607
+ })
581
608
  .check(z.meta({ title: 'Block event' })),
582
609
  z
583
610
  .object({
584
611
  ...envelopeBase,
585
- data: schema.FundingDepositEvent,
586
- type: z.literal('funding:deposit.updated'),
612
+ data: schema.RoutesDepositEvent,
613
+ type: z
614
+ .literal('routes:deposit.updated')
615
+ .check(z.meta({ examples: ['routes:deposit.updated'] })),
587
616
  })
588
- .check(z.meta({ title: 'Funding deposit updated event' })),
617
+ .check(z.meta({ title: 'Route deposit updated event' })),
589
618
  z
590
619
  .object({
591
620
  ...envelopeBase,
592
- data: schema.FundingTransferEvent,
593
- type: z.literal('funding:transfer.updated'),
621
+ data: schema.RoutesTransferEvent,
622
+ type: z
623
+ .literal('routes:transfer.updated')
624
+ .check(z.meta({ examples: ['routes:transfer.updated'] })),
594
625
  })
595
- .check(z.meta({ title: 'Funding transfer updated event' })),
626
+ .check(z.meta({ title: 'Route transfer updated event' })),
596
627
  z
597
- .object({ ...envelopeBase, data: schema.PingEvent, type: z.literal('ping') })
628
+ .object({
629
+ ...envelopeBase,
630
+ data: schema.PingEvent,
631
+ type: z.literal('ping').check(z.meta({ examples: ['ping'] })),
632
+ })
598
633
  .check(z.meta({ title: 'Ping (test delivery)' })),
599
634
  ])
600
- .check(z.describe('The signed JSON payload Tempo POSTs to your webhook URL.'));
635
+ .check(z.describe('The signed JSON payload Tempo POSTs to a webhook destination.')), 'WebhookEventEnvelope');
601
636
  /** Schemas for the getWebhookEventTypes operation. */
602
637
  let getWebhookEventTypes;
603
638
  (function (getWebhookEventTypes) {
604
- getWebhookEventTypes.Response = z
639
+ const EventTypeEntry = OpenApi.component(z
605
640
  .object({
606
- data: z
607
- .array(z.object({
608
- description: z
609
- .string()
610
- .check(z.describe('Plain-English description of the event type.'), z.meta({ examples: ['TIP-20 token transfer event.'] })),
611
- type: schema.EventType.check(z.meta({ examples: ['token:transfer'] })),
612
- }))
613
- .check(z.describe('Webhook event types available for subscription.')),
641
+ description: z
642
+ .string()
643
+ .check(z.describe('Plain-English description of the event type.'), z.meta({ examples: ['TIP-20 token transfer event.'] })),
644
+ type: schema.EventType.check(z.meta({ examples: ['token:transfer'] })),
614
645
  })
615
- .check(z.describe('List of webhook event types Tempo can send.'));
646
+ .check(z.describe('One webhook event type available for subscription.')), 'WebhookEventType');
647
+ getWebhookEventTypes.Response = OpenApi.component(z
648
+ .object({
649
+ data: z.array(EventTypeEntry).check(z.describe('Webhook event types available for subscription.'), z.meta({
650
+ examples: [[{ description: 'TIP-20 token transfer event.', type: 'token:transfer' }]],
651
+ })),
652
+ })
653
+ .check(z.describe('List of webhook event types Tempo can send.')), 'WebhookEventTypeList');
616
654
  })(getWebhookEventTypes = schema.getWebhookEventTypes || (schema.getWebhookEventTypes = {}));
617
655
  /** Schemas for the createWebhook operation. */
618
656
  let createWebhook;
619
657
  (function (createWebhook) {
658
+ /** Request variant for TIP-20 transfer subscriptions. */
659
+ createWebhook.TransferBody = OpenApi.component(z
660
+ .object({
661
+ chainId: z.optional(Schema.ChainId).check(z.meta({ examples: [4217] })),
662
+ context: z.optional(schema.Context),
663
+ destination: Destination,
664
+ eventType: z
665
+ .literal('token:transfer')
666
+ .check(z.describe('Event type you want Tempo to send to your webhook URL.'), z.meta({ examples: ['token:transfer'] })),
667
+ filters: z.optional(schema.TransferFilters),
668
+ })
669
+ .check(z.meta({ title: 'Transfer subscription' })), 'CreateWebhookTransferRequest');
670
+ /** Request variant for included transaction subscriptions. */
671
+ createWebhook.TransactionBody = OpenApi.component(z
672
+ .object({
673
+ chainId: z.optional(Schema.ChainId).check(z.meta({ examples: [4217] })),
674
+ context: z.optional(schema.Context),
675
+ destination: Destination,
676
+ eventType: z
677
+ .literal('transaction:included')
678
+ .check(z.describe('Event type you want Tempo to send to your webhook URL.'), z.meta({ examples: ['transaction:included'] })),
679
+ filters: z.optional(schema.TxFilters),
680
+ })
681
+ .check(z.meta({ title: 'Included-transaction subscription' })), 'CreateWebhookTransactionRequest');
682
+ /** Request variant for emitted log subscriptions. */
683
+ createWebhook.LogBody = OpenApi.component(z
684
+ .object({
685
+ chainId: z.optional(Schema.ChainId).check(z.meta({ examples: [4217] })),
686
+ context: z.optional(schema.Context),
687
+ destination: Destination,
688
+ eventType: z
689
+ .literal('log:emitted')
690
+ .check(z.describe('Event type you want Tempo to send to your webhook URL.'), z.meta({ examples: ['log:emitted'] })),
691
+ filters: schema.LogFilters,
692
+ })
693
+ .check(z.meta({ title: 'Log subscription' })), 'CreateWebhookLogRequest');
694
+ /** Request variant for created block subscriptions. */
695
+ createWebhook.BlockBody = OpenApi.component(z
696
+ .object({
697
+ chainId: z.optional(Schema.ChainId).check(z.meta({ examples: [4217] })),
698
+ context: z.optional(schema.Context),
699
+ destination: Destination,
700
+ eventType: z
701
+ .literal('block:created')
702
+ .check(z.describe('Event type you want Tempo to send to your webhook URL.'), z.meta({ examples: ['block:created'] })),
703
+ filters: z.optional(schema.BlockFilters),
704
+ })
705
+ .check(z.meta({ title: 'Block subscription' })), 'CreateWebhookBlockRequest');
706
+ /** Request variant for route deposit subscriptions. */
707
+ createWebhook.RoutesDepositBody = OpenApi.component(z
708
+ .object({
709
+ chainId: z.optional(Schema.ChainId).check(z.meta({ examples: [4217] })),
710
+ context: z.optional(schema.Context),
711
+ destination: Destination,
712
+ eventType: z
713
+ .literal('routes:deposit.updated')
714
+ .check(z.describe('Event type for committed route deposit changes.'), z.meta({ examples: ['routes:deposit.updated'] })),
715
+ filters: z.optional(schema.RoutesDepositFilters),
716
+ })
717
+ .check(z.meta({ title: 'Route deposit subscription' })), 'CreateWebhookRoutesDepositRequest');
718
+ /** Request variant for route transfer subscriptions. */
719
+ createWebhook.RoutesTransferBody = OpenApi.component(z
720
+ .object({
721
+ chainId: z.optional(Schema.ChainId).check(z.meta({ examples: [4217] })),
722
+ context: z.optional(schema.Context),
723
+ destination: Destination,
724
+ eventType: z
725
+ .literal('routes:transfer.updated')
726
+ .check(z.describe('Event type for committed route transfer changes.'), z.meta({ examples: ['routes:transfer.updated'] })),
727
+ filters: z.optional(schema.RoutesTransferFilters),
728
+ })
729
+ .check(z.meta({ title: 'Route transfer subscription' })), 'CreateWebhookRoutesTransferRequest');
620
730
  /**
621
731
  * Discriminated on `eventType` so each variant carries its own typed
622
732
  * `filters` object — this is what lets the docs render the valid filter
623
733
  * fields per event type instead of an opaque map. Variant `title`s drive the
624
734
  * doc renderer's selector (see {@link schema.Envelope}).
625
735
  */
626
- createWebhook.Body = z
736
+ createWebhook.Body = OpenApi.component(z
627
737
  .discriminatedUnion('eventType', [
628
- z
629
- .object({
630
- chainId: z.optional(Schema.ChainId).check(z.meta({ examples: [4217] })),
631
- context: z.optional(schema.Context),
632
- destination: Destination,
633
- eventType: z
634
- .literal('token:transfer')
635
- .check(z.describe('Event type you want Tempo to send to your webhook URL.'), z.meta({ examples: ['token:transfer'] })),
636
- filters: z.optional(schema.TransferFilters),
637
- })
638
- .check(z.meta({ title: 'Transfer subscription' })),
639
- z
640
- .object({
641
- chainId: z.optional(Schema.ChainId).check(z.meta({ examples: [4217] })),
642
- context: z.optional(schema.Context),
643
- destination: Destination,
644
- eventType: z
645
- .literal('transaction:included')
646
- .check(z.describe('Event type you want Tempo to send to your webhook URL.'), z.meta({ examples: ['transaction:included'] })),
647
- filters: z.optional(schema.TxFilters),
648
- })
649
- .check(z.meta({ title: 'Included-transaction subscription' })),
650
- z
651
- .object({
652
- chainId: z.optional(Schema.ChainId).check(z.meta({ examples: [4217] })),
653
- context: z.optional(schema.Context),
654
- destination: Destination,
655
- eventType: z
656
- .literal('log:emitted')
657
- .check(z.describe('Event type you want Tempo to send to your webhook URL.'), z.meta({ examples: ['log:emitted'] })),
658
- filters: schema.LogFilters,
659
- })
660
- .check(z.meta({ title: 'Log subscription' })),
661
- z
662
- .object({
663
- chainId: z.optional(Schema.ChainId).check(z.meta({ examples: [4217] })),
664
- context: z.optional(schema.Context),
665
- destination: Destination,
666
- eventType: z
667
- .literal('block:created')
668
- .check(z.describe('Event type you want Tempo to send to your webhook URL.'), z.meta({ examples: ['block:created'] })),
669
- filters: z.optional(schema.BlockFilters),
670
- })
671
- .check(z.meta({ title: 'Block subscription' })),
672
- z
673
- .object({
674
- chainId: z.optional(Schema.ChainId).check(z.meta({ examples: [4217] })),
675
- context: z.optional(schema.Context),
676
- destination: Destination,
677
- eventType: z
678
- .literal('funding:deposit.updated')
679
- .check(z.describe('Event type for committed funding deposit changes.'), z.meta({ examples: ['funding:deposit.updated'] })),
680
- filters: z.optional(schema.FundingDepositFilters),
681
- })
682
- .check(z.meta({ title: 'Funding deposit subscription' })),
683
- z
684
- .object({
685
- chainId: z.optional(Schema.ChainId).check(z.meta({ examples: [4217] })),
686
- context: z.optional(schema.Context),
687
- destination: Destination,
688
- eventType: z
689
- .literal('funding:transfer.updated')
690
- .check(z.describe('Event type for committed funding transfer changes.'), z.meta({ examples: ['funding:transfer.updated'] })),
691
- filters: z.optional(schema.FundingTransferFilters),
692
- })
693
- .check(z.meta({ title: 'Funding transfer subscription' })),
738
+ createWebhook.TransferBody,
739
+ createWebhook.TransactionBody,
740
+ createWebhook.LogBody,
741
+ createWebhook.BlockBody,
742
+ createWebhook.RoutesDepositBody,
743
+ createWebhook.RoutesTransferBody,
694
744
  ])
695
- .check(z.describe('Details for creating a webhook subscription.'));
696
- createWebhook.Response = z
745
+ .check(z.describe('Details for creating a webhook subscription.')), 'CreateWebhookRequest');
746
+ createWebhook.Response = OpenApi.component(z
697
747
  .object({
698
748
  ...schema.Subscription.shape,
699
749
  destination: Destination,
@@ -701,7 +751,7 @@ export var schema;
701
751
  .string()
702
752
  .check(z.describe('HMAC signing secret (`whsec_…`) used to verify Tempo webhook signatures. It is shown once when you create the webhook, so store it now.'), z.meta({ examples: ['whsec_abc123'] })),
703
753
  })
704
- .check(z.describe('The new webhook subscription, including the one-time signing secret.'));
754
+ .check(z.describe('The new webhook subscription, including the one-time signing secret.')), 'CreateWebhookResponse');
705
755
  })(createWebhook = schema.createWebhook || (schema.createWebhook = {}));
706
756
  /** Schemas for the listWebhooks operation. */
707
757
  let listWebhooks;
@@ -714,15 +764,17 @@ export var schema;
714
764
  page: Schema.Page,
715
765
  })
716
766
  .check(...Schema.pageChecks(), z.describe('Query parameters for listing your webhook subscriptions.'));
717
- listWebhooks.Response = z
767
+ listWebhooks.Response = OpenApi.component(z
718
768
  .object({
719
- data: z.array(schema.Subscription).check(z.describe('Webhook subscriptions on this page.')),
769
+ data: z
770
+ .array(schema.Subscription)
771
+ .check(z.describe('Webhook subscriptions on this page.'), z.meta({ examples: [[]] })),
720
772
  meta: z
721
773
  .optional(Schema.CountMeta)
722
- .check(z.describe('Extra response metadata requested with `include`.')),
774
+ .check(z.describe('Extra response metadata requested with `include`.'), z.meta({ examples: [{ totalCount: 1, totalCountCapped: false }] })),
723
775
  nextCursor: Schema.NextCursor,
724
776
  })
725
- .check(z.describe('A page of your webhook subscriptions.'));
777
+ .check(z.describe('A page of webhook subscriptions.')), 'WebhookList');
726
778
  })(listWebhooks = schema.listWebhooks || (schema.listWebhooks = {}));
727
779
  /** Schemas for the getWebhook operation. */
728
780
  let getWebhook;
@@ -748,21 +800,23 @@ export var schema;
748
800
  page: Schema.Page,
749
801
  })
750
802
  .check(...Schema.pageChecks(), z.describe('Query parameters for listing webhook delivery attempts.'));
751
- listWebhookDeliveries.Response = z
803
+ listWebhookDeliveries.Response = OpenApi.component(z
752
804
  .object({
753
- data: z.array(schema.Delivery).check(z.describe('Webhook delivery attempts on this page.')),
805
+ data: z
806
+ .array(schema.Delivery)
807
+ .check(z.describe('Webhook delivery attempts on this page.'), z.meta({ examples: [[]] })),
754
808
  meta: z
755
809
  .optional(Schema.CountMeta)
756
- .check(z.describe('Extra response metadata requested with `include`.')),
810
+ .check(z.describe('Extra response metadata requested with `include`.'), z.meta({ examples: [{ totalCount: 1, totalCountCapped: false }] })),
757
811
  nextCursor: Schema.NextCursor,
758
812
  })
759
- .check(z.describe('A page of webhook delivery attempts.'));
813
+ .check(z.describe('A page of webhook delivery attempts.')), 'WebhookDeliveryList');
760
814
  })(listWebhookDeliveries = schema.listWebhookDeliveries || (schema.listWebhookDeliveries = {}));
761
815
  /** Schemas for the pingWebhook operation. */
762
816
  let pingWebhook;
763
817
  (function (pingWebhook) {
764
818
  pingWebhook.Params = getWebhook.Params;
765
- pingWebhook.Response = z
819
+ pingWebhook.Response = OpenApi.component(z
766
820
  .object({
767
821
  delivered: z
768
822
  .boolean()
@@ -780,7 +834,7 @@ export var schema;
780
834
  .optional(z.number().check(z.int()))
781
835
  .check(z.describe('HTTP status your endpoint returned, when Tempo received a response.'), z.meta({ examples: [200] })),
782
836
  })
783
- .check(z.describe('Result of sending a synthetic ping event to your webhook URL.'));
837
+ .check(z.describe('Result of sending a synthetic ping event to a webhook destination.')), 'PingWebhookResponse');
784
838
  })(pingWebhook = schema.pingWebhook || (schema.pingWebhook = {}));
785
839
  /** Schemas for the retryWebhookDelivery operation. */
786
840
  let retryWebhookDelivery;
@@ -795,13 +849,13 @@ export var schema;
795
849
  .check(z.describe('Webhook subscription ID (`wh_…`).'), z.meta({ examples: ['wh_001718668800000_2ZPE2gvateYEQ0dQslgvkhjx'] })),
796
850
  })
797
851
  .check(z.describe('Path parameters for retrying a webhook delivery.'));
798
- retryWebhookDelivery.Response = pingWebhook.Response;
852
+ retryWebhookDelivery.Response = OpenApi.component(pingWebhook.Response, 'RetryWebhookDeliveryResponse');
799
853
  })(retryWebhookDelivery = schema.retryWebhookDelivery || (schema.retryWebhookDelivery = {}));
800
854
  /** Schemas for the updateWebhook operation. */
801
855
  let updateWebhook;
802
856
  (function (updateWebhook) {
803
857
  updateWebhook.Params = getWebhook.Params;
804
- updateWebhook.Body = z
858
+ updateWebhook.Body = OpenApi.component(z
805
859
  .object({
806
860
  context: z
807
861
  .optional(z.nullable(schema.Context))
@@ -816,20 +870,20 @@ export var schema;
816
870
  .optional(schema.Status)
817
871
  .check(z.describe('New lifecycle status, such as pausing or resuming delivery.')),
818
872
  })
819
- .check(z.describe('Fields you want to update on the webhook subscription.'));
873
+ .check(z.describe('Fields to update on the webhook subscription.')), 'UpdateWebhookRequest');
820
874
  updateWebhook.Response = schema.Subscription;
821
875
  })(updateWebhook = schema.updateWebhook || (schema.updateWebhook = {}));
822
876
  /** Schemas for the deleteWebhook operation. */
823
877
  let deleteWebhook;
824
878
  (function (deleteWebhook) {
825
879
  deleteWebhook.Params = getWebhook.Params;
826
- deleteWebhook.Response = z
880
+ deleteWebhook.Response = OpenApi.component(z
827
881
  .object({
828
882
  id: z
829
883
  .string()
830
884
  .check(z.describe('ID of the webhook subscription that was deleted.'), z.meta({ examples: ['wh_001718668800000_2ZPE2gvateYEQ0dQslgvkhjx'] })),
831
885
  })
832
- .check(z.describe('Confirmation that the webhook subscription was deleted.'));
886
+ .check(z.describe('Confirmation that the webhook subscription was deleted.')), 'DeleteWebhookResponse');
833
887
  })(deleteWebhook = schema.deleteWebhook || (schema.deleteWebhook = {}));
834
888
  })(schema || (schema = {}));
835
889
  /**
@@ -841,8 +895,7 @@ export var schema;
841
895
  */
842
896
  export function webhooks(options = {}) {
843
897
  const hidden = !options.enabled;
844
- const availableEventTypes = eventTypeDescriptions.filter((eventType) => !isFundingEventType(eventType.type) ||
845
- options.applicationEventTypes?.includes(eventType.type));
898
+ const availableEventTypes = eventTypeDescriptions.filter((eventType) => !isRoutesEventType(eventType.type) || options.applicationEventTypes?.includes(eventType.type));
846
899
  const availableEventTypeSet = new Set(availableEventTypes.map((eventType) => eventType.type));
847
900
  // Gate the whole resource on a configured state store. Without it the
848
901
  // outbound-HTTP surface is disabled (read-only deployment).
@@ -865,6 +918,16 @@ export function webhooks(options = {}) {
865
918
  hide: hidden,
866
919
  operationId: 'getWebhookEventTypes',
867
920
  responses: OpenApi.responses({
921
+ errors: {
922
+ 400: {
923
+ codes: [],
924
+ description: 'The API key credential is malformed.',
925
+ },
926
+ 404: {
927
+ codes: ['webhooks_not_enabled'],
928
+ description: 'Webhooks are not enabled for this API deployment.',
929
+ },
930
+ },
868
931
  success: {
869
932
  description: 'Webhook event types available for subscription.',
870
933
  schema: schema.getWebhookEventTypes.Response,
@@ -910,7 +973,11 @@ export function webhooks(options = {}) {
910
973
  },
911
974
  403: {
912
975
  codes: ['api_key_forbidden', 'limit_exceeded'],
913
- description: 'The API key lacks access or the subscription limit was reached.',
976
+ description: 'The API key lacks access or its creator-shared subscription limit was reached.',
977
+ },
978
+ 404: {
979
+ codes: ['webhooks_not_enabled'],
980
+ description: 'Webhooks are not enabled for this API deployment.',
914
981
  },
915
982
  },
916
983
  success: {
@@ -943,10 +1010,10 @@ export function webhooks(options = {}) {
943
1010
  message: 'Webhook event type is not available in this deployment',
944
1011
  status: 400,
945
1012
  });
946
- if (isFundingEventType(body.eventType)) {
1013
+ if (isRoutesEventType(body.eventType)) {
947
1014
  if (principal?.type !== 'api_key')
948
1015
  return unauthorized(c);
949
- if (!principal.apiKey.scopes.some((scope) => scope === Scope.wildcard || scope === 'funding:read'))
1016
+ if (!principal.apiKey.scopes.some((scope) => scope === Scope.wildcard || scope === 'routes:read'))
950
1017
  return Response.error(c, {
951
1018
  code: 'api_key_forbidden',
952
1019
  message: 'API key missing required scope',
@@ -961,9 +1028,9 @@ export function webhooks(options = {}) {
961
1028
  // Preserve destination errors before the creation-time RPC dependency.
962
1029
  WebhookDestination.assertDestination(body.destination);
963
1030
  const maxPerOwner = webhook.maxPerOwner ?? defaultMaxPerOwner;
964
- if ((await Webhooks.countSubscriptions(db, owner)) >= maxPerOwner)
1031
+ if ((await Webhooks.countSubscriptionsForLimit(db, { owner })) >= maxPerOwner)
965
1032
  throw new Webhooks.LimitExceededError(maxPerOwner);
966
- const startBlockNumber = isFundingEventType(body.eventType)
1033
+ const startBlockNumber = isRoutesEventType(body.eventType)
967
1034
  ? undefined
968
1035
  : await getRpcHead(c.get('getClient')(chainId));
969
1036
  const subscription = await Webhooks.createSubscription(db, {
@@ -1000,6 +1067,16 @@ export function webhooks(options = {}) {
1000
1067
  hide: hidden,
1001
1068
  operationId: 'listWebhooks',
1002
1069
  responses: OpenApi.responses({
1070
+ errors: {
1071
+ 400: {
1072
+ codes: ['query_invalid'],
1073
+ description: 'The query parameters are invalid.',
1074
+ },
1075
+ 404: {
1076
+ codes: ['webhooks_not_enabled'],
1077
+ description: 'Webhooks are not enabled for this API deployment.',
1078
+ },
1079
+ },
1003
1080
  success: {
1004
1081
  description: 'A page of webhook subscriptions.',
1005
1082
  schema: schema.listWebhooks.Response,
@@ -1067,9 +1144,13 @@ export function webhooks(options = {}) {
1067
1144
  operationId: 'getWebhook',
1068
1145
  responses: OpenApi.responses({
1069
1146
  errors: {
1147
+ 400: {
1148
+ codes: ['param_invalid'],
1149
+ description: 'The webhook ID is invalid.',
1150
+ },
1070
1151
  404: {
1071
1152
  description: 'No webhook subscription was found for that ID.',
1072
- codes: ['webhook_not_found'],
1153
+ codes: ['webhook_not_found', 'webhooks_not_enabled'],
1073
1154
  },
1074
1155
  },
1075
1156
  success: {
@@ -1117,9 +1198,13 @@ export function webhooks(options = {}) {
1117
1198
  operationId: 'listWebhookDeliveries',
1118
1199
  responses: OpenApi.responses({
1119
1200
  errors: {
1201
+ 400: {
1202
+ codes: ['param_invalid', 'query_invalid'],
1203
+ description: 'The webhook ID or query parameters are invalid.',
1204
+ },
1120
1205
  404: {
1121
1206
  description: 'No webhook subscription was found for that ID.',
1122
- codes: ['webhook_not_found'],
1207
+ codes: ['webhook_not_found', 'webhooks_not_enabled'],
1123
1208
  },
1124
1209
  },
1125
1210
  success: {
@@ -1195,9 +1280,13 @@ export function webhooks(options = {}) {
1195
1280
  operationId: 'pingWebhook',
1196
1281
  responses: OpenApi.responses({
1197
1282
  errors: {
1283
+ 400: {
1284
+ codes: ['param_invalid'],
1285
+ description: 'The webhook ID is invalid.',
1286
+ },
1198
1287
  404: {
1199
1288
  description: 'No webhook subscription was found for that ID.',
1200
- codes: ['webhook_not_found'],
1289
+ codes: ['webhook_not_found', 'webhooks_not_enabled'],
1201
1290
  },
1202
1291
  },
1203
1292
  success: {
@@ -1253,9 +1342,13 @@ export function webhooks(options = {}) {
1253
1342
  operationId: 'retryWebhookDelivery',
1254
1343
  responses: OpenApi.responses({
1255
1344
  errors: {
1345
+ 400: {
1346
+ codes: ['param_invalid'],
1347
+ description: 'The webhook or delivery ID is invalid.',
1348
+ },
1256
1349
  404: {
1257
1350
  description: 'No webhook subscription or delivery was found for those IDs.',
1258
- codes: ['webhook_not_found', 'delivery_not_found'],
1351
+ codes: ['webhook_not_found', 'delivery_not_found', 'webhooks_not_enabled'],
1259
1352
  },
1260
1353
  },
1261
1354
  success: {
@@ -1332,7 +1425,7 @@ export function webhooks(options = {}) {
1332
1425
  },
1333
1426
  404: {
1334
1427
  description: 'No webhook subscription was found for that ID.',
1335
- codes: ['webhook_not_found'],
1428
+ codes: ['webhook_not_found', 'webhooks_not_enabled'],
1336
1429
  },
1337
1430
  },
1338
1431
  success: {
@@ -1394,9 +1487,13 @@ export function webhooks(options = {}) {
1394
1487
  operationId: 'deleteWebhook',
1395
1488
  responses: OpenApi.responses({
1396
1489
  errors: {
1490
+ 400: {
1491
+ codes: ['param_invalid'],
1492
+ description: 'The webhook ID is invalid.',
1493
+ },
1397
1494
  404: {
1398
1495
  description: 'No webhook subscription was found for that ID.',
1399
- codes: ['webhook_not_found'],
1496
+ codes: ['webhook_not_found', 'webhooks_not_enabled'],
1400
1497
  },
1401
1498
  },
1402
1499
  success: {
@@ -1521,8 +1618,8 @@ export async function getRpcHead(client) {
1521
1618
  }
1522
1619
  const filterSchemas = {
1523
1620
  'block:created': schema.BlockFilters,
1524
- 'funding:deposit.updated': schema.FundingDepositFilters,
1525
- 'funding:transfer.updated': schema.FundingTransferFilters,
1621
+ 'routes:deposit.updated': schema.RoutesDepositFilters,
1622
+ 'routes:transfer.updated': schema.RoutesTransferFilters,
1526
1623
  'log:emitted': schema.LogFilters,
1527
1624
  'token:transfer': schema.TransferFilters,
1528
1625
  'transaction:included': schema.TxFilters,
@@ -1574,7 +1671,7 @@ const toBig = (value) => BigInt(String(value));
1574
1671
  function operandEquals(value, target, kind) {
1575
1672
  return kind === 'number'
1576
1673
  ? toBig(value) === toBig(target)
1577
- : value.toLowerCase() === String(target).toLowerCase();
1674
+ : String(value).toLowerCase() === String(target).toLowerCase();
1578
1675
  }
1579
1676
  /**
1580
1677
  * The JS counterpart of the old SQL `applyOperator`: evaluates one parsed filter
@@ -1596,10 +1693,11 @@ export function matchesOperator(value, op, kind = 'string') {
1596
1693
  if (typeof op !== 'object' || op === null)
1597
1694
  return operandEquals(value, op, kind);
1598
1695
  const o = op;
1696
+ const value_string = String(value);
1599
1697
  if ('selector' in o)
1600
- return value.slice(0, 10).toLowerCase() === String(o['selector']).toLowerCase();
1698
+ return value_string.slice(0, 10).toLowerCase() === String(o['selector']).toLowerCase();
1601
1699
  if ('startsWith' in o)
1602
- return value.toLowerCase().startsWith(String(o['startsWith']).toLowerCase());
1700
+ return value_string.toLowerCase().startsWith(String(o['startsWith']).toLowerCase());
1603
1701
  if ('in' in o)
1604
1702
  return o['in'].some((v) => operandEquals(value, v, kind));
1605
1703
  if ('not' in o)
@@ -1650,12 +1748,11 @@ function toLogEvent(log, timestamp, signature, event) {
1650
1748
  const blockNumber = log.blockNumber === null ? undefined : Number(log.blockNumber);
1651
1749
  const logIndex = log.logIndex ?? undefined;
1652
1750
  const transactionIndex = log.transactionIndex ?? undefined;
1653
- const topics = log.topics.filter((t) => typeof t === 'string');
1654
- const topic0 = Schema.Hash.safeParse(topics[0]);
1751
+ const topics = z.array(Schema.Hash).safeParse(log.topics);
1655
1752
  const data = typeof log.data === 'string' ? log.data : '0x';
1656
1753
  if (!address.success ||
1657
1754
  !transactionHash.success ||
1658
- !topic0.success ||
1755
+ !topics.success ||
1659
1756
  blockNumber === undefined ||
1660
1757
  logIndex === undefined ||
1661
1758
  transactionIndex === undefined ||
@@ -1667,16 +1764,19 @@ function toLogEvent(log, timestamp, signature, event) {
1667
1764
  data,
1668
1765
  logIndex,
1669
1766
  timestamp,
1670
- topics,
1767
+ topics: topics.data,
1671
1768
  transactionHash: transactionHash.data,
1672
1769
  transactionIndex,
1673
1770
  };
1674
1771
  if (!signature || !event || log.args === undefined)
1675
1772
  return base;
1773
+ const topic0 = topics.data[0];
1774
+ if (!topic0)
1775
+ return undefined;
1676
1776
  return {
1677
1777
  ...base,
1678
1778
  args: serializeArgs(log.args),
1679
- event: { name: event.name, signature, topic0: topic0.data },
1779
+ event: { name: event.name, signature, topic0 },
1680
1780
  };
1681
1781
  }
1682
1782
  /** Narrows an exact or membership operator into an RPC filter value. */
@@ -1823,7 +1923,10 @@ function matchesLog(log, f, event) {
1823
1923
  const numeric = /^u?int/.test(input.type);
1824
1924
  const value = args[name];
1825
1925
  const normalized = input.type === 'address' ? lowercaseLeaves(op) : op;
1826
- if (!matchesOperator(asString(value), normalized, numeric ? 'number' : 'string'))
1926
+ const operand = typeof value === 'bigint' || typeof value === 'number' || typeof value === 'string'
1927
+ ? value
1928
+ : undefined;
1929
+ if (!matchesOperator(operand, normalized, numeric ? 'number' : 'string'))
1827
1930
  return false;
1828
1931
  }
1829
1932
  }
@@ -1963,7 +2066,7 @@ function toPublic(subscription) {
1963
2066
  ...(subscription.context === undefined ? {} : { context: subscription.context }),
1964
2067
  createdAt: subscription.createdAt,
1965
2068
  destination: redactDestination(subscription.destination),
1966
- ...(isFundingEventType(subscription.eventType) && subscription.environment !== undefined
2069
+ ...(isRoutesEventType(subscription.eventType) && subscription.environment !== undefined
1967
2070
  ? { environment: subscription.environment }
1968
2071
  : {}),
1969
2072
  eventType: subscription.eventType,