@s2-dev/streamstore 0.11.1 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (569) hide show
  1. package/README.md +50 -1
  2. package/bin/mcp-server.js +1705 -192
  3. package/bin/mcp-server.js.map +73 -40
  4. package/dist/commonjs/funcs/accessTokensIssueAccessToken.js +2 -2
  5. package/dist/commonjs/funcs/accessTokensIssueAccessToken.js.map +1 -1
  6. package/dist/commonjs/funcs/accessTokensListAccessTokens.js +2 -2
  7. package/dist/commonjs/funcs/accessTokensRevokeAccessToken.js +2 -2
  8. package/dist/commonjs/funcs/basinsCreateBasin.d.ts +14 -0
  9. package/dist/commonjs/funcs/basinsCreateBasin.d.ts.map +1 -0
  10. package/dist/commonjs/funcs/basinsCreateBasin.js +124 -0
  11. package/dist/commonjs/funcs/basinsCreateBasin.js.map +1 -0
  12. package/dist/commonjs/funcs/basinsCreateOrReconfigureBasin.js +3 -3
  13. package/dist/commonjs/funcs/basinsCreateOrReconfigureBasin.js.map +1 -1
  14. package/dist/commonjs/funcs/basinsDeleteBasin.d.ts +1 -1
  15. package/dist/commonjs/funcs/basinsDeleteBasin.d.ts.map +1 -1
  16. package/dist/commonjs/funcs/basinsDeleteBasin.js +13 -2
  17. package/dist/commonjs/funcs/basinsDeleteBasin.js.map +1 -1
  18. package/dist/commonjs/funcs/basinsGetBasinConfig.js +2 -2
  19. package/dist/commonjs/funcs/basinsGetBasinConfig.js.map +1 -1
  20. package/dist/commonjs/funcs/basinsListBasins.js +2 -2
  21. package/dist/commonjs/funcs/basinsReconfigureBasin.js +2 -2
  22. package/dist/commonjs/funcs/basinsReconfigureBasin.js.map +1 -1
  23. package/dist/commonjs/funcs/recordsAppend.d.ts +18 -0
  24. package/dist/commonjs/funcs/recordsAppend.d.ts.map +1 -0
  25. package/dist/commonjs/funcs/recordsAppend.js +144 -0
  26. package/dist/commonjs/funcs/recordsAppend.js.map +1 -0
  27. package/dist/commonjs/funcs/recordsCheckTail.d.ts +18 -0
  28. package/dist/commonjs/funcs/recordsCheckTail.d.ts.map +1 -0
  29. package/dist/commonjs/funcs/recordsCheckTail.js +138 -0
  30. package/dist/commonjs/funcs/recordsCheckTail.js.map +1 -0
  31. package/dist/commonjs/funcs/recordsRead.d.ts +23 -0
  32. package/dist/commonjs/funcs/recordsRead.d.ts.map +1 -0
  33. package/dist/commonjs/funcs/recordsRead.js +157 -0
  34. package/dist/commonjs/funcs/recordsRead.js.map +1 -0
  35. package/dist/commonjs/funcs/streamsCreateOrReconfigureStream.js +14 -3
  36. package/dist/commonjs/funcs/streamsCreateOrReconfigureStream.js.map +1 -1
  37. package/dist/commonjs/funcs/streamsCreateStream.d.ts +14 -0
  38. package/dist/commonjs/funcs/streamsCreateStream.d.ts.map +1 -0
  39. package/dist/commonjs/funcs/streamsCreateStream.js +129 -0
  40. package/dist/commonjs/funcs/streamsCreateStream.js.map +1 -0
  41. package/dist/commonjs/funcs/streamsDeleteStream.d.ts +1 -1
  42. package/dist/commonjs/funcs/streamsDeleteStream.d.ts.map +1 -1
  43. package/dist/commonjs/funcs/streamsDeleteStream.js +2 -2
  44. package/dist/commonjs/funcs/streamsDeleteStream.js.map +1 -1
  45. package/dist/commonjs/funcs/streamsGetStreamConfig.js +13 -2
  46. package/dist/commonjs/funcs/streamsGetStreamConfig.js.map +1 -1
  47. package/dist/commonjs/funcs/streamsListStreams.js +2 -2
  48. package/dist/commonjs/funcs/streamsListStreams.js.map +1 -1
  49. package/dist/commonjs/funcs/streamsReconfigureStream.js +13 -2
  50. package/dist/commonjs/funcs/streamsReconfigureStream.js.map +1 -1
  51. package/dist/commonjs/lib/config.d.ts +3 -3
  52. package/dist/commonjs/lib/config.js +3 -3
  53. package/dist/commonjs/lib/event-streams.d.ts +17 -0
  54. package/dist/commonjs/lib/event-streams.d.ts.map +1 -0
  55. package/dist/commonjs/lib/event-streams.js +220 -0
  56. package/dist/commonjs/lib/event-streams.js.map +1 -0
  57. package/dist/commonjs/lib/matchers.d.ts.map +1 -1
  58. package/dist/commonjs/lib/matchers.js +4 -1
  59. package/dist/commonjs/lib/matchers.js.map +1 -1
  60. package/dist/commonjs/lib/sdks.d.ts +3 -1
  61. package/dist/commonjs/lib/sdks.d.ts.map +1 -1
  62. package/dist/commonjs/lib/sdks.js +6 -11
  63. package/dist/commonjs/lib/sdks.js.map +1 -1
  64. package/dist/commonjs/mcp-server/mcp-server.js +1 -1
  65. package/dist/commonjs/mcp-server/server.d.ts.map +1 -1
  66. package/dist/commonjs/mcp-server/server.js +11 -1
  67. package/dist/commonjs/mcp-server/server.js.map +1 -1
  68. package/dist/commonjs/mcp-server/tools/basinsCreateBasin.d.ts +8 -0
  69. package/dist/commonjs/mcp-server/tools/basinsCreateBasin.d.ts.map +1 -0
  70. package/dist/commonjs/mcp-server/tools/basinsCreateBasin.js +63 -0
  71. package/dist/commonjs/mcp-server/tools/basinsCreateBasin.js.map +1 -0
  72. package/dist/commonjs/mcp-server/tools/recordsAppend.d.ts +8 -0
  73. package/dist/commonjs/mcp-server/tools/recordsAppend.d.ts.map +1 -0
  74. package/dist/commonjs/mcp-server/tools/recordsAppend.js +65 -0
  75. package/dist/commonjs/mcp-server/tools/recordsAppend.js.map +1 -0
  76. package/dist/commonjs/mcp-server/tools/recordsCheckTail.d.ts +8 -0
  77. package/dist/commonjs/mcp-server/tools/recordsCheckTail.d.ts.map +1 -0
  78. package/dist/commonjs/mcp-server/tools/recordsCheckTail.js +65 -0
  79. package/dist/commonjs/mcp-server/tools/recordsCheckTail.js.map +1 -0
  80. package/dist/commonjs/mcp-server/tools/recordsRead.d.ts +8 -0
  81. package/dist/commonjs/mcp-server/tools/recordsRead.d.ts.map +1 -0
  82. package/dist/commonjs/mcp-server/tools/recordsRead.js +65 -0
  83. package/dist/commonjs/mcp-server/tools/recordsRead.js.map +1 -0
  84. package/dist/commonjs/mcp-server/tools/streamsCreateStream.d.ts +8 -0
  85. package/dist/commonjs/mcp-server/tools/streamsCreateStream.d.ts.map +1 -0
  86. package/dist/commonjs/mcp-server/tools/streamsCreateStream.js +63 -0
  87. package/dist/commonjs/mcp-server/tools/streamsCreateStream.js.map +1 -0
  88. package/dist/commonjs/models/components/accesstokeninfo.d.ts +2 -2
  89. package/dist/commonjs/models/components/appendack.d.ts +46 -0
  90. package/dist/commonjs/models/components/appendack.d.ts.map +1 -0
  91. package/dist/commonjs/models/components/appendack.js +74 -0
  92. package/dist/commonjs/models/components/appendack.js.map +1 -0
  93. package/dist/commonjs/models/components/appendinput.d.ts +46 -0
  94. package/dist/commonjs/models/components/appendinput.d.ts.map +1 -0
  95. package/dist/commonjs/models/components/appendinput.js +85 -0
  96. package/dist/commonjs/models/components/appendinput.js.map +1 -0
  97. package/dist/commonjs/models/components/appendrecord.d.ts +43 -0
  98. package/dist/commonjs/models/components/appendrecord.d.ts.map +1 -0
  99. package/dist/commonjs/models/components/appendrecord.js +74 -0
  100. package/dist/commonjs/models/components/appendrecord.js.map +1 -0
  101. package/dist/commonjs/models/components/basinconfig.d.ts +4 -4
  102. package/dist/commonjs/models/components/basinconfig.d.ts.map +1 -1
  103. package/dist/commonjs/models/components/basinconfig.js +4 -4
  104. package/dist/commonjs/models/components/basinconfig.js.map +1 -1
  105. package/dist/commonjs/models/components/createbasinrequest.d.ts +5 -0
  106. package/dist/commonjs/models/components/createbasinrequest.d.ts.map +1 -1
  107. package/dist/commonjs/models/components/createbasinrequest.js +2 -0
  108. package/dist/commonjs/models/components/createbasinrequest.js.map +1 -1
  109. package/dist/commonjs/models/components/createorreconfigurebasinrequest.d.ts +54 -0
  110. package/dist/commonjs/models/components/createorreconfigurebasinrequest.d.ts.map +1 -0
  111. package/dist/commonjs/models/components/createorreconfigurebasinrequest.js +96 -0
  112. package/dist/commonjs/models/components/createorreconfigurebasinrequest.js.map +1 -0
  113. package/dist/commonjs/models/components/createstreamrequest.d.ts +35 -0
  114. package/dist/commonjs/models/components/createstreamrequest.d.ts.map +1 -0
  115. package/dist/commonjs/models/components/createstreamrequest.js +72 -0
  116. package/dist/commonjs/models/components/createstreamrequest.js.map +1 -0
  117. package/dist/commonjs/models/components/header.d.ts +43 -0
  118. package/dist/commonjs/models/components/header.d.ts.map +1 -0
  119. package/dist/commonjs/models/components/header.js +72 -0
  120. package/dist/commonjs/models/components/header.js.map +1 -0
  121. package/dist/commonjs/models/components/index.d.ts +15 -0
  122. package/dist/commonjs/models/components/index.d.ts.map +1 -1
  123. package/dist/commonjs/models/components/index.js +15 -0
  124. package/dist/commonjs/models/components/index.js.map +1 -1
  125. package/dist/commonjs/models/components/listaccesstokensresponse.d.ts +5 -5
  126. package/dist/commonjs/models/components/listaccesstokensresponse.d.ts.map +1 -1
  127. package/dist/commonjs/models/components/listaccesstokensresponse.js +4 -2
  128. package/dist/commonjs/models/components/listaccesstokensresponse.js.map +1 -1
  129. package/dist/commonjs/models/components/listbasinsresponse.d.ts +1 -1
  130. package/dist/commonjs/models/components/liststreamsresponse.d.ts +1 -1
  131. package/dist/commonjs/models/components/readbatch.d.ts +30 -0
  132. package/dist/commonjs/models/components/readbatch.d.ts.map +1 -0
  133. package/dist/commonjs/models/components/readbatch.js +70 -0
  134. package/dist/commonjs/models/components/readbatch.js.map +1 -0
  135. package/dist/commonjs/models/components/readevent.d.ts +107 -0
  136. package/dist/commonjs/models/components/readevent.d.ts.map +1 -0
  137. package/dist/commonjs/models/components/readevent.js +175 -0
  138. package/dist/commonjs/models/components/readevent.js.map +1 -0
  139. package/dist/commonjs/models/components/s2format.d.ts +28 -0
  140. package/dist/commonjs/models/components/s2format.d.ts.map +1 -0
  141. package/dist/commonjs/models/components/s2format.js +61 -0
  142. package/dist/commonjs/models/components/s2format.js.map +1 -0
  143. package/dist/commonjs/models/components/sequencedrecord.d.ts +45 -0
  144. package/dist/commonjs/models/components/sequencedrecord.d.ts.map +1 -0
  145. package/dist/commonjs/models/components/sequencedrecord.js +85 -0
  146. package/dist/commonjs/models/components/sequencedrecord.js.map +1 -0
  147. package/dist/commonjs/models/components/streamconfig.d.ts +3 -18
  148. package/dist/commonjs/models/components/streamconfig.d.ts.map +1 -1
  149. package/dist/commonjs/models/components/streamconfig.js +3 -8
  150. package/dist/commonjs/models/components/streamconfig.js.map +1 -1
  151. package/dist/commonjs/models/components/streaminfo.d.ts +2 -2
  152. package/dist/commonjs/models/components/streamposition.d.ts +43 -0
  153. package/dist/commonjs/models/components/streamposition.d.ts.map +1 -0
  154. package/dist/commonjs/models/components/streamposition.js +80 -0
  155. package/dist/commonjs/models/components/streamposition.js.map +1 -0
  156. package/dist/commonjs/models/components/streamreconfiguration.d.ts +3 -18
  157. package/dist/commonjs/models/components/streamreconfiguration.d.ts.map +1 -1
  158. package/dist/commonjs/models/components/streamreconfiguration.js +5 -8
  159. package/dist/commonjs/models/components/streamreconfiguration.js.map +1 -1
  160. package/dist/commonjs/models/components/tailresponse.d.ts +33 -0
  161. package/dist/commonjs/models/components/tailresponse.d.ts.map +1 -0
  162. package/dist/commonjs/models/components/tailresponse.js +70 -0
  163. package/dist/commonjs/models/components/tailresponse.js.map +1 -0
  164. package/dist/commonjs/models/components/timestampingconfig.d.ts +38 -0
  165. package/dist/commonjs/models/components/timestampingconfig.d.ts.map +1 -0
  166. package/dist/commonjs/models/components/timestampingconfig.js +72 -0
  167. package/dist/commonjs/models/components/timestampingconfig.js.map +1 -0
  168. package/dist/commonjs/models/components/timestampingmode.d.ts +31 -0
  169. package/dist/commonjs/models/components/timestampingmode.d.ts.map +1 -0
  170. package/dist/commonjs/models/components/timestampingmode.js +61 -0
  171. package/dist/commonjs/models/components/timestampingmode.js.map +1 -0
  172. package/dist/commonjs/models/components/timestampingreconfiguration.d.ts +35 -0
  173. package/dist/commonjs/models/components/timestampingreconfiguration.d.ts.map +1 -0
  174. package/dist/commonjs/models/components/timestampingreconfiguration.js +72 -0
  175. package/dist/commonjs/models/components/timestampingreconfiguration.js.map +1 -0
  176. package/dist/commonjs/models/errors/appendconditionfailed.d.ts +134 -0
  177. package/dist/commonjs/models/errors/appendconditionfailed.d.ts.map +1 -0
  178. package/dist/commonjs/models/errors/appendconditionfailed.js +171 -0
  179. package/dist/commonjs/models/errors/appendconditionfailed.js.map +1 -0
  180. package/dist/commonjs/models/errors/index.d.ts +3 -0
  181. package/dist/commonjs/models/errors/index.d.ts.map +1 -1
  182. package/dist/commonjs/models/errors/index.js +3 -0
  183. package/dist/commonjs/models/errors/index.js.map +1 -1
  184. package/dist/commonjs/models/errors/notfounderror.d.ts +31 -0
  185. package/dist/commonjs/models/errors/notfounderror.d.ts.map +1 -0
  186. package/dist/commonjs/models/errors/notfounderror.js +75 -0
  187. package/dist/commonjs/models/errors/notfounderror.js.map +1 -0
  188. package/dist/commonjs/models/errors/tailresponse.d.ts +38 -0
  189. package/dist/commonjs/models/errors/tailresponse.d.ts.map +1 -0
  190. package/dist/commonjs/models/errors/tailresponse.js +78 -0
  191. package/dist/commonjs/models/errors/tailresponse.js.map +1 -0
  192. package/dist/commonjs/models/operations/append.d.ts +48 -0
  193. package/dist/commonjs/models/operations/append.d.ts.map +1 -0
  194. package/dist/commonjs/models/operations/append.js +91 -0
  195. package/dist/commonjs/models/operations/append.js.map +1 -0
  196. package/dist/commonjs/models/operations/checktail.d.ts +36 -0
  197. package/dist/commonjs/models/operations/checktail.d.ts.map +1 -0
  198. package/dist/commonjs/models/operations/checktail.js +75 -0
  199. package/dist/commonjs/models/operations/checktail.js.map +1 -0
  200. package/dist/commonjs/models/operations/createorreconfigurebasin.d.ts +7 -7
  201. package/dist/commonjs/models/operations/createorreconfigurebasin.d.ts.map +1 -1
  202. package/dist/commonjs/models/operations/createorreconfigurebasin.js +6 -6
  203. package/dist/commonjs/models/operations/createorreconfigurebasin.js.map +1 -1
  204. package/dist/commonjs/models/operations/createorreconfigurestream.d.ts +3 -4
  205. package/dist/commonjs/models/operations/createorreconfigurestream.d.ts.map +1 -1
  206. package/dist/commonjs/models/operations/createorreconfigurestream.js +2 -2
  207. package/dist/commonjs/models/operations/createorreconfigurestream.js.map +1 -1
  208. package/dist/commonjs/models/operations/createstream.d.ts +2 -0
  209. package/dist/commonjs/models/operations/createstream.d.ts.map +1 -0
  210. package/dist/commonjs/models/operations/createstream.js +13 -0
  211. package/dist/commonjs/models/operations/createstream.js.map +1 -0
  212. package/dist/commonjs/models/operations/deletestream.d.ts +1 -2
  213. package/dist/commonjs/models/operations/deletestream.d.ts.map +1 -1
  214. package/dist/commonjs/models/operations/deletestream.js.map +1 -1
  215. package/dist/commonjs/models/operations/getstreamconfig.d.ts +1 -2
  216. package/dist/commonjs/models/operations/getstreamconfig.d.ts.map +1 -1
  217. package/dist/commonjs/models/operations/getstreamconfig.js.map +1 -1
  218. package/dist/commonjs/models/operations/index.d.ts +4 -0
  219. package/dist/commonjs/models/operations/index.d.ts.map +1 -1
  220. package/dist/commonjs/models/operations/index.js +4 -0
  221. package/dist/commonjs/models/operations/index.js.map +1 -1
  222. package/dist/commonjs/models/operations/listbasins.d.ts +1 -1
  223. package/dist/commonjs/models/operations/read.d.ts +93 -0
  224. package/dist/commonjs/models/operations/read.d.ts.map +1 -0
  225. package/dist/commonjs/models/operations/read.js +136 -0
  226. package/dist/commonjs/models/operations/read.js.map +1 -0
  227. package/dist/commonjs/models/operations/reconfigurestream.d.ts +1 -2
  228. package/dist/commonjs/models/operations/reconfigurestream.d.ts.map +1 -1
  229. package/dist/commonjs/models/operations/reconfigurestream.js.map +1 -1
  230. package/dist/commonjs/models/operations/revokeaccesstoken.d.ts +1 -1
  231. package/dist/commonjs/sdk/basins.d.ts +4 -0
  232. package/dist/commonjs/sdk/basins.d.ts.map +1 -1
  233. package/dist/commonjs/sdk/basins.js +7 -0
  234. package/dist/commonjs/sdk/basins.js.map +1 -1
  235. package/dist/commonjs/sdk/records.d.ts +31 -0
  236. package/dist/commonjs/sdk/records.d.ts.map +1 -0
  237. package/dist/commonjs/sdk/records.js +44 -0
  238. package/dist/commonjs/sdk/records.js.map +1 -0
  239. package/dist/commonjs/sdk/sdk.d.ts +3 -0
  240. package/dist/commonjs/sdk/sdk.d.ts.map +1 -1
  241. package/dist/commonjs/sdk/sdk.js +4 -0
  242. package/dist/commonjs/sdk/sdk.js.map +1 -1
  243. package/dist/commonjs/sdk/streams.d.ts +4 -0
  244. package/dist/commonjs/sdk/streams.d.ts.map +1 -1
  245. package/dist/commonjs/sdk/streams.js +7 -0
  246. package/dist/commonjs/sdk/streams.js.map +1 -1
  247. package/dist/esm/funcs/accessTokensIssueAccessToken.js +2 -2
  248. package/dist/esm/funcs/accessTokensIssueAccessToken.js.map +1 -1
  249. package/dist/esm/funcs/accessTokensListAccessTokens.js +2 -2
  250. package/dist/esm/funcs/accessTokensRevokeAccessToken.js +2 -2
  251. package/dist/esm/funcs/basinsCreateBasin.d.ts +14 -0
  252. package/dist/esm/funcs/basinsCreateBasin.d.ts.map +1 -0
  253. package/dist/esm/funcs/basinsCreateBasin.js +88 -0
  254. package/dist/esm/funcs/basinsCreateBasin.js.map +1 -0
  255. package/dist/esm/funcs/basinsCreateOrReconfigureBasin.js +3 -3
  256. package/dist/esm/funcs/basinsCreateOrReconfigureBasin.js.map +1 -1
  257. package/dist/esm/funcs/basinsDeleteBasin.d.ts +1 -1
  258. package/dist/esm/funcs/basinsDeleteBasin.d.ts.map +1 -1
  259. package/dist/esm/funcs/basinsDeleteBasin.js +13 -2
  260. package/dist/esm/funcs/basinsDeleteBasin.js.map +1 -1
  261. package/dist/esm/funcs/basinsGetBasinConfig.js +2 -2
  262. package/dist/esm/funcs/basinsGetBasinConfig.js.map +1 -1
  263. package/dist/esm/funcs/basinsListBasins.js +2 -2
  264. package/dist/esm/funcs/basinsReconfigureBasin.js +2 -2
  265. package/dist/esm/funcs/basinsReconfigureBasin.js.map +1 -1
  266. package/dist/esm/funcs/recordsAppend.d.ts +18 -0
  267. package/dist/esm/funcs/recordsAppend.d.ts.map +1 -0
  268. package/dist/esm/funcs/recordsAppend.js +108 -0
  269. package/dist/esm/funcs/recordsAppend.js.map +1 -0
  270. package/dist/esm/funcs/recordsCheckTail.d.ts +18 -0
  271. package/dist/esm/funcs/recordsCheckTail.d.ts.map +1 -0
  272. package/dist/esm/funcs/recordsCheckTail.js +102 -0
  273. package/dist/esm/funcs/recordsCheckTail.js.map +1 -0
  274. package/dist/esm/funcs/recordsRead.d.ts +23 -0
  275. package/dist/esm/funcs/recordsRead.d.ts.map +1 -0
  276. package/dist/esm/funcs/recordsRead.js +120 -0
  277. package/dist/esm/funcs/recordsRead.js.map +1 -0
  278. package/dist/esm/funcs/streamsCreateOrReconfigureStream.js +14 -3
  279. package/dist/esm/funcs/streamsCreateOrReconfigureStream.js.map +1 -1
  280. package/dist/esm/funcs/streamsCreateStream.d.ts +14 -0
  281. package/dist/esm/funcs/streamsCreateStream.d.ts.map +1 -0
  282. package/dist/esm/funcs/streamsCreateStream.js +93 -0
  283. package/dist/esm/funcs/streamsCreateStream.js.map +1 -0
  284. package/dist/esm/funcs/streamsDeleteStream.d.ts +1 -1
  285. package/dist/esm/funcs/streamsDeleteStream.d.ts.map +1 -1
  286. package/dist/esm/funcs/streamsDeleteStream.js +2 -2
  287. package/dist/esm/funcs/streamsDeleteStream.js.map +1 -1
  288. package/dist/esm/funcs/streamsGetStreamConfig.js +13 -2
  289. package/dist/esm/funcs/streamsGetStreamConfig.js.map +1 -1
  290. package/dist/esm/funcs/streamsListStreams.js +2 -2
  291. package/dist/esm/funcs/streamsListStreams.js.map +1 -1
  292. package/dist/esm/funcs/streamsReconfigureStream.js +13 -2
  293. package/dist/esm/funcs/streamsReconfigureStream.js.map +1 -1
  294. package/dist/esm/lib/config.d.ts +3 -3
  295. package/dist/esm/lib/config.js +3 -3
  296. package/dist/esm/lib/event-streams.d.ts +17 -0
  297. package/dist/esm/lib/event-streams.d.ts.map +1 -0
  298. package/dist/esm/lib/event-streams.js +215 -0
  299. package/dist/esm/lib/event-streams.js.map +1 -0
  300. package/dist/esm/lib/matchers.d.ts.map +1 -1
  301. package/dist/esm/lib/matchers.js +4 -1
  302. package/dist/esm/lib/matchers.js.map +1 -1
  303. package/dist/esm/lib/sdks.d.ts +3 -1
  304. package/dist/esm/lib/sdks.d.ts.map +1 -1
  305. package/dist/esm/lib/sdks.js +6 -11
  306. package/dist/esm/lib/sdks.js.map +1 -1
  307. package/dist/esm/mcp-server/mcp-server.js +1 -1
  308. package/dist/esm/mcp-server/server.d.ts.map +1 -1
  309. package/dist/esm/mcp-server/server.js +11 -1
  310. package/dist/esm/mcp-server/server.js.map +1 -1
  311. package/dist/esm/mcp-server/tools/basinsCreateBasin.d.ts +8 -0
  312. package/dist/esm/mcp-server/tools/basinsCreateBasin.d.ts.map +1 -0
  313. package/dist/esm/mcp-server/tools/basinsCreateBasin.js +27 -0
  314. package/dist/esm/mcp-server/tools/basinsCreateBasin.js.map +1 -0
  315. package/dist/esm/mcp-server/tools/recordsAppend.d.ts +8 -0
  316. package/dist/esm/mcp-server/tools/recordsAppend.d.ts.map +1 -0
  317. package/dist/esm/mcp-server/tools/recordsAppend.js +29 -0
  318. package/dist/esm/mcp-server/tools/recordsAppend.js.map +1 -0
  319. package/dist/esm/mcp-server/tools/recordsCheckTail.d.ts +8 -0
  320. package/dist/esm/mcp-server/tools/recordsCheckTail.d.ts.map +1 -0
  321. package/dist/esm/mcp-server/tools/recordsCheckTail.js +29 -0
  322. package/dist/esm/mcp-server/tools/recordsCheckTail.js.map +1 -0
  323. package/dist/esm/mcp-server/tools/recordsRead.d.ts +8 -0
  324. package/dist/esm/mcp-server/tools/recordsRead.d.ts.map +1 -0
  325. package/dist/esm/mcp-server/tools/recordsRead.js +29 -0
  326. package/dist/esm/mcp-server/tools/recordsRead.js.map +1 -0
  327. package/dist/esm/mcp-server/tools/streamsCreateStream.d.ts +8 -0
  328. package/dist/esm/mcp-server/tools/streamsCreateStream.d.ts.map +1 -0
  329. package/dist/esm/mcp-server/tools/streamsCreateStream.js +27 -0
  330. package/dist/esm/mcp-server/tools/streamsCreateStream.js.map +1 -0
  331. package/dist/esm/models/components/accesstokeninfo.d.ts +2 -2
  332. package/dist/esm/models/components/appendack.d.ts +46 -0
  333. package/dist/esm/models/components/appendack.d.ts.map +1 -0
  334. package/dist/esm/models/components/appendack.js +36 -0
  335. package/dist/esm/models/components/appendack.js.map +1 -0
  336. package/dist/esm/models/components/appendinput.d.ts +46 -0
  337. package/dist/esm/models/components/appendinput.d.ts.map +1 -0
  338. package/dist/esm/models/components/appendinput.js +47 -0
  339. package/dist/esm/models/components/appendinput.js.map +1 -0
  340. package/dist/esm/models/components/appendrecord.d.ts +43 -0
  341. package/dist/esm/models/components/appendrecord.d.ts.map +1 -0
  342. package/dist/esm/models/components/appendrecord.js +36 -0
  343. package/dist/esm/models/components/appendrecord.js.map +1 -0
  344. package/dist/esm/models/components/basinconfig.d.ts +4 -4
  345. package/dist/esm/models/components/basinconfig.d.ts.map +1 -1
  346. package/dist/esm/models/components/basinconfig.js +4 -4
  347. package/dist/esm/models/components/basinconfig.js.map +1 -1
  348. package/dist/esm/models/components/createbasinrequest.d.ts +5 -0
  349. package/dist/esm/models/components/createbasinrequest.d.ts.map +1 -1
  350. package/dist/esm/models/components/createbasinrequest.js +2 -0
  351. package/dist/esm/models/components/createbasinrequest.js.map +1 -1
  352. package/dist/esm/models/components/createorreconfigurebasinrequest.d.ts +54 -0
  353. package/dist/esm/models/components/createorreconfigurebasinrequest.d.ts.map +1 -0
  354. package/dist/esm/models/components/createorreconfigurebasinrequest.js +56 -0
  355. package/dist/esm/models/components/createorreconfigurebasinrequest.js.map +1 -0
  356. package/dist/esm/models/components/createstreamrequest.d.ts +35 -0
  357. package/dist/esm/models/components/createstreamrequest.d.ts.map +1 -0
  358. package/dist/esm/models/components/createstreamrequest.js +34 -0
  359. package/dist/esm/models/components/createstreamrequest.js.map +1 -0
  360. package/dist/esm/models/components/header.d.ts +43 -0
  361. package/dist/esm/models/components/header.d.ts.map +1 -0
  362. package/dist/esm/models/components/header.js +34 -0
  363. package/dist/esm/models/components/header.js.map +1 -0
  364. package/dist/esm/models/components/index.d.ts +15 -0
  365. package/dist/esm/models/components/index.d.ts.map +1 -1
  366. package/dist/esm/models/components/index.js +15 -0
  367. package/dist/esm/models/components/index.js.map +1 -1
  368. package/dist/esm/models/components/listaccesstokensresponse.d.ts +5 -5
  369. package/dist/esm/models/components/listaccesstokensresponse.d.ts.map +1 -1
  370. package/dist/esm/models/components/listaccesstokensresponse.js +4 -2
  371. package/dist/esm/models/components/listaccesstokensresponse.js.map +1 -1
  372. package/dist/esm/models/components/listbasinsresponse.d.ts +1 -1
  373. package/dist/esm/models/components/liststreamsresponse.d.ts +1 -1
  374. package/dist/esm/models/components/readbatch.d.ts +30 -0
  375. package/dist/esm/models/components/readbatch.d.ts.map +1 -0
  376. package/dist/esm/models/components/readbatch.js +32 -0
  377. package/dist/esm/models/components/readbatch.js.map +1 -0
  378. package/dist/esm/models/components/readevent.d.ts +107 -0
  379. package/dist/esm/models/components/readevent.d.ts.map +1 -0
  380. package/dist/esm/models/components/readevent.js +131 -0
  381. package/dist/esm/models/components/readevent.js.map +1 -0
  382. package/dist/esm/models/components/s2format.d.ts +28 -0
  383. package/dist/esm/models/components/s2format.d.ts.map +1 -0
  384. package/dist/esm/models/components/s2format.js +25 -0
  385. package/dist/esm/models/components/s2format.js.map +1 -0
  386. package/dist/esm/models/components/sequencedrecord.d.ts +45 -0
  387. package/dist/esm/models/components/sequencedrecord.d.ts.map +1 -0
  388. package/dist/esm/models/components/sequencedrecord.js +47 -0
  389. package/dist/esm/models/components/sequencedrecord.js.map +1 -0
  390. package/dist/esm/models/components/streamconfig.d.ts +3 -18
  391. package/dist/esm/models/components/streamconfig.d.ts.map +1 -1
  392. package/dist/esm/models/components/streamconfig.js +3 -8
  393. package/dist/esm/models/components/streamconfig.js.map +1 -1
  394. package/dist/esm/models/components/streaminfo.d.ts +2 -2
  395. package/dist/esm/models/components/streamposition.d.ts +43 -0
  396. package/dist/esm/models/components/streamposition.d.ts.map +1 -0
  397. package/dist/esm/models/components/streamposition.js +42 -0
  398. package/dist/esm/models/components/streamposition.js.map +1 -0
  399. package/dist/esm/models/components/streamreconfiguration.d.ts +3 -18
  400. package/dist/esm/models/components/streamreconfiguration.d.ts.map +1 -1
  401. package/dist/esm/models/components/streamreconfiguration.js +5 -8
  402. package/dist/esm/models/components/streamreconfiguration.js.map +1 -1
  403. package/dist/esm/models/components/tailresponse.d.ts +33 -0
  404. package/dist/esm/models/components/tailresponse.d.ts.map +1 -0
  405. package/dist/esm/models/components/tailresponse.js +32 -0
  406. package/dist/esm/models/components/tailresponse.js.map +1 -0
  407. package/dist/esm/models/components/timestampingconfig.d.ts +38 -0
  408. package/dist/esm/models/components/timestampingconfig.d.ts.map +1 -0
  409. package/dist/esm/models/components/timestampingconfig.js +34 -0
  410. package/dist/esm/models/components/timestampingconfig.js.map +1 -0
  411. package/dist/esm/models/components/timestampingmode.d.ts +31 -0
  412. package/dist/esm/models/components/timestampingmode.d.ts.map +1 -0
  413. package/dist/esm/models/components/timestampingmode.js +25 -0
  414. package/dist/esm/models/components/timestampingmode.js.map +1 -0
  415. package/dist/esm/models/components/timestampingreconfiguration.d.ts +35 -0
  416. package/dist/esm/models/components/timestampingreconfiguration.d.ts.map +1 -0
  417. package/dist/esm/models/components/timestampingreconfiguration.js +34 -0
  418. package/dist/esm/models/components/timestampingreconfiguration.js.map +1 -0
  419. package/dist/esm/models/errors/appendconditionfailed.d.ts +134 -0
  420. package/dist/esm/models/errors/appendconditionfailed.d.ts.map +1 -0
  421. package/dist/esm/models/errors/appendconditionfailed.js +131 -0
  422. package/dist/esm/models/errors/appendconditionfailed.js.map +1 -0
  423. package/dist/esm/models/errors/index.d.ts +3 -0
  424. package/dist/esm/models/errors/index.d.ts.map +1 -1
  425. package/dist/esm/models/errors/index.js +3 -0
  426. package/dist/esm/models/errors/index.js.map +1 -1
  427. package/dist/esm/models/errors/notfounderror.d.ts +31 -0
  428. package/dist/esm/models/errors/notfounderror.d.ts.map +1 -0
  429. package/dist/esm/models/errors/notfounderror.js +38 -0
  430. package/dist/esm/models/errors/notfounderror.js.map +1 -0
  431. package/dist/esm/models/errors/tailresponse.d.ts +38 -0
  432. package/dist/esm/models/errors/tailresponse.d.ts.map +1 -0
  433. package/dist/esm/models/errors/tailresponse.js +41 -0
  434. package/dist/esm/models/errors/tailresponse.js.map +1 -0
  435. package/dist/esm/models/operations/append.d.ts +48 -0
  436. package/dist/esm/models/operations/append.d.ts.map +1 -0
  437. package/dist/esm/models/operations/append.js +53 -0
  438. package/dist/esm/models/operations/append.js.map +1 -0
  439. package/dist/esm/models/operations/checktail.d.ts +36 -0
  440. package/dist/esm/models/operations/checktail.d.ts.map +1 -0
  441. package/dist/esm/models/operations/checktail.js +37 -0
  442. package/dist/esm/models/operations/checktail.js.map +1 -0
  443. package/dist/esm/models/operations/createorreconfigurebasin.d.ts +7 -7
  444. package/dist/esm/models/operations/createorreconfigurebasin.d.ts.map +1 -1
  445. package/dist/esm/models/operations/createorreconfigurebasin.js +6 -6
  446. package/dist/esm/models/operations/createorreconfigurebasin.js.map +1 -1
  447. package/dist/esm/models/operations/createorreconfigurestream.d.ts +3 -4
  448. package/dist/esm/models/operations/createorreconfigurestream.d.ts.map +1 -1
  449. package/dist/esm/models/operations/createorreconfigurestream.js +2 -2
  450. package/dist/esm/models/operations/createorreconfigurestream.js.map +1 -1
  451. package/dist/esm/models/operations/createstream.d.ts +2 -0
  452. package/dist/esm/models/operations/createstream.d.ts.map +1 -0
  453. package/dist/esm/models/operations/createstream.js +10 -0
  454. package/dist/esm/models/operations/createstream.js.map +1 -0
  455. package/dist/esm/models/operations/deletestream.d.ts +1 -2
  456. package/dist/esm/models/operations/deletestream.d.ts.map +1 -1
  457. package/dist/esm/models/operations/deletestream.js.map +1 -1
  458. package/dist/esm/models/operations/getstreamconfig.d.ts +1 -2
  459. package/dist/esm/models/operations/getstreamconfig.d.ts.map +1 -1
  460. package/dist/esm/models/operations/getstreamconfig.js.map +1 -1
  461. package/dist/esm/models/operations/index.d.ts +4 -0
  462. package/dist/esm/models/operations/index.d.ts.map +1 -1
  463. package/dist/esm/models/operations/index.js +4 -0
  464. package/dist/esm/models/operations/index.js.map +1 -1
  465. package/dist/esm/models/operations/listbasins.d.ts +1 -1
  466. package/dist/esm/models/operations/read.d.ts +93 -0
  467. package/dist/esm/models/operations/read.d.ts.map +1 -0
  468. package/dist/esm/models/operations/read.js +96 -0
  469. package/dist/esm/models/operations/read.js.map +1 -0
  470. package/dist/esm/models/operations/reconfigurestream.d.ts +1 -2
  471. package/dist/esm/models/operations/reconfigurestream.d.ts.map +1 -1
  472. package/dist/esm/models/operations/reconfigurestream.js.map +1 -1
  473. package/dist/esm/models/operations/revokeaccesstoken.d.ts +1 -1
  474. package/dist/esm/sdk/basins.d.ts +4 -0
  475. package/dist/esm/sdk/basins.d.ts.map +1 -1
  476. package/dist/esm/sdk/basins.js +7 -0
  477. package/dist/esm/sdk/basins.js.map +1 -1
  478. package/dist/esm/sdk/records.d.ts +31 -0
  479. package/dist/esm/sdk/records.d.ts.map +1 -0
  480. package/dist/esm/sdk/records.js +39 -0
  481. package/dist/esm/sdk/records.js.map +1 -0
  482. package/dist/esm/sdk/sdk.d.ts +3 -0
  483. package/dist/esm/sdk/sdk.d.ts.map +1 -1
  484. package/dist/esm/sdk/sdk.js +4 -0
  485. package/dist/esm/sdk/sdk.js.map +1 -1
  486. package/dist/esm/sdk/streams.d.ts +4 -0
  487. package/dist/esm/sdk/streams.d.ts.map +1 -1
  488. package/dist/esm/sdk/streams.js +7 -0
  489. package/dist/esm/sdk/streams.js.map +1 -1
  490. package/docs/sdks/accesstokens/README.md +3 -3
  491. package/docs/sdks/basins/README.md +86 -7
  492. package/docs/sdks/records/README.md +271 -0
  493. package/docs/sdks/streams/README.md +87 -7
  494. package/jsr.json +2 -1
  495. package/package.json +1 -1
  496. package/src/funcs/accessTokensIssueAccessToken.ts +2 -2
  497. package/src/funcs/accessTokensListAccessTokens.ts +2 -2
  498. package/src/funcs/accessTokensRevokeAccessToken.ts +2 -2
  499. package/src/funcs/basinsCreateBasin.ts +179 -0
  500. package/src/funcs/basinsCreateOrReconfigureBasin.ts +3 -3
  501. package/src/funcs/basinsDeleteBasin.ts +17 -2
  502. package/src/funcs/basinsGetBasinConfig.ts +2 -2
  503. package/src/funcs/basinsListBasins.ts +2 -2
  504. package/src/funcs/basinsReconfigureBasin.ts +2 -2
  505. package/src/funcs/recordsAppend.ts +205 -0
  506. package/src/funcs/recordsCheckTail.ts +195 -0
  507. package/src/funcs/recordsRead.ts +219 -0
  508. package/src/funcs/streamsCreateOrReconfigureStream.ts +14 -3
  509. package/src/funcs/streamsCreateStream.ts +185 -0
  510. package/src/funcs/streamsDeleteStream.ts +6 -2
  511. package/src/funcs/streamsGetStreamConfig.ts +13 -2
  512. package/src/funcs/streamsListStreams.ts +2 -2
  513. package/src/funcs/streamsReconfigureStream.ts +13 -2
  514. package/src/lib/config.ts +3 -3
  515. package/src/lib/event-streams.ts +264 -0
  516. package/src/lib/matchers.ts +4 -1
  517. package/src/lib/sdks.ts +11 -11
  518. package/src/mcp-server/mcp-server.ts +1 -1
  519. package/src/mcp-server/server.ts +11 -1
  520. package/src/mcp-server/tools/basinsCreateBasin.ts +36 -0
  521. package/src/mcp-server/tools/recordsAppend.ts +38 -0
  522. package/src/mcp-server/tools/recordsCheckTail.ts +38 -0
  523. package/src/mcp-server/tools/recordsRead.ts +38 -0
  524. package/src/mcp-server/tools/streamsCreateStream.ts +36 -0
  525. package/src/models/components/accesstokeninfo.ts +2 -2
  526. package/src/models/components/appendack.ts +88 -0
  527. package/src/models/components/appendinput.ts +99 -0
  528. package/src/models/components/appendrecord.ts +85 -0
  529. package/src/models/components/basinconfig.ts +8 -8
  530. package/src/models/components/createbasinrequest.ts +7 -0
  531. package/src/models/components/createorreconfigurebasinrequest.ts +138 -0
  532. package/src/models/components/createstreamrequest.ts +79 -0
  533. package/src/models/components/header.ts +75 -0
  534. package/src/models/components/index.ts +15 -0
  535. package/src/models/components/listaccesstokensresponse.ts +9 -7
  536. package/src/models/components/listbasinsresponse.ts +1 -1
  537. package/src/models/components/liststreamsresponse.ts +1 -1
  538. package/src/models/components/readbatch.ts +68 -0
  539. package/src/models/components/readevent.ts +243 -0
  540. package/src/models/components/s2format.ts +31 -0
  541. package/src/models/components/sequencedrecord.ts +100 -0
  542. package/src/models/components/streamconfig.ts +10 -26
  543. package/src/models/components/streaminfo.ts +2 -2
  544. package/src/models/components/streamposition.ts +87 -0
  545. package/src/models/components/streamreconfiguration.ts +12 -26
  546. package/src/models/components/tailresponse.ts +71 -0
  547. package/src/models/components/timestampingconfig.ts +81 -0
  548. package/src/models/components/timestampingmode.ts +34 -0
  549. package/src/models/components/timestampingreconfiguration.ts +80 -0
  550. package/src/models/errors/appendconditionfailed.ts +249 -0
  551. package/src/models/errors/index.ts +3 -0
  552. package/src/models/errors/notfounderror.ts +67 -0
  553. package/src/models/errors/tailresponse.ts +76 -0
  554. package/src/models/operations/append.ts +102 -0
  555. package/src/models/operations/checktail.ts +79 -0
  556. package/src/models/operations/createorreconfigurebasin.ts +23 -13
  557. package/src/models/operations/createorreconfigurestream.ts +5 -6
  558. package/src/models/operations/createstream.ts +10 -0
  559. package/src/models/operations/deletestream.ts +1 -2
  560. package/src/models/operations/getstreamconfig.ts +1 -2
  561. package/src/models/operations/index.ts +4 -0
  562. package/src/models/operations/listbasins.ts +1 -1
  563. package/src/models/operations/read.ts +195 -0
  564. package/src/models/operations/reconfigurestream.ts +1 -2
  565. package/src/models/operations/revokeaccesstoken.ts +1 -1
  566. package/src/sdk/basins.ts +15 -0
  567. package/src/sdk/records.ts +66 -0
  568. package/src/sdk/sdk.ts +6 -0
  569. package/src/sdk/streams.ts +15 -0
@@ -152,7 +152,7 @@ async function $do(
152
152
 
153
153
  const doResult = await client._do(req, {
154
154
  context,
155
- errorCodes: ["400", "401", "499", "4XX", "500", "503", "504", "5XX"],
155
+ errorCodes: ["400", "403", "404", "499", "4XX", "500", "503", "504", "5XX"],
156
156
  retryConfig: context.retryConfig,
157
157
  retryCodes: context.retryCodes,
158
158
  });
@@ -181,7 +181,7 @@ async function $do(
181
181
  M.json(200, operations.ListStreamsResponse$inboundSchema, {
182
182
  key: "Result",
183
183
  }),
184
- M.jsonErr([400, 401], errors.ErrorResponse$inboundSchema),
184
+ M.jsonErr([400, 403, 404], errors.ErrorResponse$inboundSchema),
185
185
  M.jsonErr(499, errors.RetryableError$inboundSchema),
186
186
  M.jsonErr([500, 503, 504], errors.RetryableError$inboundSchema),
187
187
  M.fail("4XX"),
@@ -143,7 +143,18 @@ async function $do(
143
143
 
144
144
  const doResult = await client._do(req, {
145
145
  context,
146
- errorCodes: ["400", "401", "499", "4XX", "500", "503", "504", "5XX"],
146
+ errorCodes: [
147
+ "400",
148
+ "403",
149
+ "404",
150
+ "409",
151
+ "499",
152
+ "4XX",
153
+ "500",
154
+ "503",
155
+ "504",
156
+ "5XX",
157
+ ],
147
158
  retryConfig: context.retryConfig,
148
159
  retryCodes: context.retryCodes,
149
160
  });
@@ -170,7 +181,7 @@ async function $do(
170
181
  | ConnectionError
171
182
  >(
172
183
  M.json(200, components.StreamConfig$inboundSchema),
173
- M.jsonErr([400, 401], errors.ErrorResponse$inboundSchema),
184
+ M.jsonErr([400, 403, 404, 409], errors.ErrorResponse$inboundSchema),
174
185
  M.jsonErr(499, errors.RetryableError$inboundSchema),
175
186
  M.jsonErr([500, 503, 504], errors.RetryableError$inboundSchema),
176
187
  M.fail("4XX"),
package/src/lib/config.ts CHANGED
@@ -54,8 +54,8 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
54
54
  export const SDK_METADATA = {
55
55
  language: "typescript",
56
56
  openapiDocVersion: "1.0.0",
57
- sdkVersion: "0.11.1",
58
- genVersion: "2.593.4",
57
+ sdkVersion: "0.12.0",
58
+ genVersion: "2.604.2",
59
59
  userAgent:
60
- "speakeasy-sdk/typescript 0.11.1 2.593.4 1.0.0 @s2-dev/streamstore",
60
+ "speakeasy-sdk/typescript 0.12.0 2.604.2 1.0.0 @s2-dev/streamstore",
61
61
  } as const;
@@ -0,0 +1,264 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ export type ServerEvent<T> = {
6
+ data?: T | undefined;
7
+ event?: string | undefined;
8
+ retry?: number | undefined;
9
+ id?: string | undefined;
10
+ };
11
+ const LF = 0x0a;
12
+ const CR = 0x0d;
13
+ const NEWLINE_CHARS = new Set([LF, CR]);
14
+ const MESSAGE_BOUNDARIES = [
15
+ new Uint8Array([CR, LF, CR, LF]),
16
+ new Uint8Array([CR, CR]),
17
+ new Uint8Array([LF, LF]),
18
+ ];
19
+
20
+ export class EventStream<Event extends ServerEvent<unknown>> {
21
+ private readonly stream: ReadableStream<Uint8Array>;
22
+ private readonly decoder: (rawEvent: ServerEvent<string>) => Event;
23
+
24
+ constructor(init: {
25
+ stream: ReadableStream<Uint8Array>;
26
+ decoder: (rawEvent: ServerEvent<string>) => Event;
27
+ }) {
28
+ this.stream = init.stream;
29
+ this.decoder = init.decoder;
30
+ }
31
+
32
+ async *[Symbol.asyncIterator](): AsyncGenerator<Event, void, unknown> {
33
+ const reader = this.stream.getReader();
34
+ let buffer = new Uint8Array([]);
35
+ let position = 0;
36
+
37
+ try {
38
+ while (true) {
39
+ const { done, value } = await reader.read();
40
+ if (done) {
41
+ break;
42
+ }
43
+
44
+ const newBuffer = new Uint8Array(buffer.length + value.length);
45
+ newBuffer.set(buffer);
46
+ newBuffer.set(value, buffer.length);
47
+ buffer = newBuffer;
48
+
49
+ for (let i = position; i < buffer.length; i++) {
50
+ const boundary = findBoundary(buffer, i);
51
+ if (boundary == null) {
52
+ continue;
53
+ }
54
+
55
+ const chunk = buffer.slice(position, i);
56
+ position = i + boundary.length;
57
+ const event = parseEvent(chunk, this.decoder);
58
+ if (event != null) {
59
+ yield event;
60
+ }
61
+ }
62
+
63
+ if (position > 0) {
64
+ buffer = buffer.slice(position);
65
+ position = 0;
66
+ }
67
+ }
68
+
69
+ if (buffer.length > 0) {
70
+ const event = parseEvent(buffer, this.decoder);
71
+ if (event != null) {
72
+ yield event;
73
+ }
74
+ }
75
+ } catch (e: unknown) {
76
+ if (e instanceof Error && e.name === "AbortError") {
77
+ return;
78
+ }
79
+
80
+ throw e;
81
+ } finally {
82
+ reader.releaseLock();
83
+ }
84
+ }
85
+ }
86
+
87
+ function findBoundary(buffer: Uint8Array, start: number): Uint8Array | null {
88
+ const char1 = buffer[start];
89
+ const char2 = buffer[start + 1];
90
+
91
+ // Don't bother checking if the first two characters are not new line
92
+ // characters.
93
+ if (
94
+ char1 == null
95
+ || char2 == null
96
+ || !NEWLINE_CHARS.has(char1)
97
+ || !NEWLINE_CHARS.has(char2)
98
+ ) {
99
+ return null;
100
+ }
101
+
102
+ for (const s of MESSAGE_BOUNDARIES) {
103
+ const seq = peekSequence(start, buffer, s);
104
+ if (seq != null) {
105
+ return seq;
106
+ }
107
+ }
108
+
109
+ return null;
110
+ }
111
+
112
+ function peekSequence(
113
+ position: number,
114
+ buffer: Uint8Array,
115
+ sequence: Uint8Array,
116
+ ): Uint8Array | null {
117
+ if (sequence.length > buffer.length - position) {
118
+ return null;
119
+ }
120
+
121
+ for (let i = 0; i < sequence.length; i++) {
122
+ if (buffer[position + i] !== sequence[i]) {
123
+ return null;
124
+ }
125
+ }
126
+
127
+ return sequence;
128
+ }
129
+
130
+ function parseEvent<Event extends ServerEvent<unknown>>(
131
+ chunk: Uint8Array,
132
+ decoder: (rawEvent: ServerEvent<string>) => Event,
133
+ ) {
134
+ if (!chunk.length) {
135
+ return null;
136
+ }
137
+
138
+ const td = new TextDecoder();
139
+ const raw = td.decode(chunk);
140
+ const lines = raw.split(/\r?\n|\r/g);
141
+ let publish = false;
142
+ const rawEvent: ServerEvent<string> = {};
143
+
144
+ for (const line of lines) {
145
+ if (!line) {
146
+ continue;
147
+ }
148
+
149
+ const delim = line.indexOf(":");
150
+ // Lines starting with a colon are ignored.
151
+ if (delim === 0) {
152
+ continue;
153
+ }
154
+
155
+ const field = delim > 0 ? line.substring(0, delim) : "";
156
+ let value = delim > 0 ? line.substring(delim + 1) : "";
157
+ if (value.charAt(0) === " ") {
158
+ value = value.substring(1);
159
+ }
160
+
161
+ switch (field) {
162
+ case "event": {
163
+ publish = true;
164
+ rawEvent.event = value;
165
+ break;
166
+ }
167
+ case "data": {
168
+ publish = true;
169
+ rawEvent.data ??= "";
170
+ rawEvent.data += value + "\n";
171
+ break;
172
+ }
173
+ case "id": {
174
+ publish = true;
175
+ rawEvent.id = value;
176
+ break;
177
+ }
178
+ case "retry": {
179
+ const r = parseInt(value, 10);
180
+ if (!Number.isNaN(r)) {
181
+ publish = true;
182
+ rawEvent.retry = r;
183
+ }
184
+ break;
185
+ }
186
+ }
187
+ }
188
+
189
+ if (!publish) {
190
+ return null;
191
+ }
192
+
193
+ if (rawEvent.data != null) {
194
+ rawEvent.data = rawEvent.data.slice(0, -1);
195
+ }
196
+
197
+ return decoder(rawEvent);
198
+ }
199
+
200
+ export function discardSentinel(
201
+ stream: ReadableStream<Uint8Array>,
202
+ sentinel: string,
203
+ ): ReadableStream<Uint8Array> {
204
+ return new ReadableStream<Uint8Array>({
205
+ async start(controller) {
206
+ let buffer = new Uint8Array([]);
207
+ let position = 0;
208
+ let done = false;
209
+ let discard = false;
210
+ const rdr = stream.getReader();
211
+ try {
212
+ while (!done) {
213
+ const result = await rdr.read();
214
+ const value = result.value;
215
+ done = done || result.done;
216
+ // We keep consuming from the source to its completion so it can
217
+ // flush all its contents and release resources.
218
+ if (discard) {
219
+ continue;
220
+ }
221
+ if (typeof value === "undefined") {
222
+ continue;
223
+ }
224
+
225
+ const newBuffer = new Uint8Array(buffer.length + value.length);
226
+ newBuffer.set(buffer);
227
+ newBuffer.set(value, buffer.length);
228
+ buffer = newBuffer;
229
+
230
+ for (let i = position; i < buffer.length; i++) {
231
+ const boundary = findBoundary(buffer, i);
232
+ if (boundary == null) {
233
+ continue;
234
+ }
235
+
236
+ const start = position;
237
+ const chunk = buffer.slice(start, i);
238
+ position = i + boundary.length;
239
+ const event = parseEvent(chunk, id);
240
+ if (event?.data === sentinel) {
241
+ controller.enqueue(buffer.slice(0, start));
242
+ discard = true;
243
+ } else {
244
+ controller.enqueue(buffer.slice(0, position));
245
+ buffer = buffer.slice(position);
246
+ position = 0;
247
+ }
248
+ }
249
+ }
250
+ } catch (e) {
251
+ controller.error(e);
252
+ } finally {
253
+ // If the source stream terminates, flush its contents and terminate.
254
+ // If the sentinel event was found, flush everything up to its start.
255
+ controller.close();
256
+ rdr.releaseLock();
257
+ }
258
+ },
259
+ });
260
+ }
261
+
262
+ function id<T>(v: T): T {
263
+ return v;
264
+ }
@@ -5,6 +5,7 @@
5
5
  import { APIError } from "../models/errors/apierror.js";
6
6
  import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
7
7
  import { Result } from "../types/fp.js";
8
+ import { discardSentinel } from "./event-streams.js";
8
9
  import { matchResponse, matchStatusCode, StatusCodePredicate } from "./http.js";
9
10
  import { isPlainObject } from "./is-plain-object.js";
10
11
  import { safeParse } from "./schemas.js";
@@ -234,7 +235,9 @@ export function match<T, E>(
234
235
  raw = await response.text();
235
236
  break;
236
237
  case "sse":
237
- raw = response.body;
238
+ raw = response.body && matcher.sseSentinel
239
+ ? discardSentinel(response.body, matcher.sseSentinel)
240
+ : response.body;
238
241
  break;
239
242
  case "nil":
240
243
  raw = await discardResponseBody(response);
package/src/lib/sdks.ts CHANGED
@@ -47,12 +47,14 @@ export type RequestOptions = {
47
47
  */
48
48
  serverURL?: string | URL;
49
49
  /**
50
+ * @deprecated `fetchOptions` has been flattened into `RequestOptions`.
51
+ *
50
52
  * Sets various request options on the `fetch` call made by an SDK method.
51
53
  *
52
54
  * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options|Request}
53
55
  */
54
56
  fetchOptions?: Omit<RequestInit, "method" | "body">;
55
- };
57
+ } & Omit<RequestInit, "method" | "body">;
56
58
 
57
59
  type RequestConfig = {
58
60
  method: string;
@@ -172,7 +174,9 @@ export class ClientSDK {
172
174
  cookie = cookie.startsWith("; ") ? cookie.slice(2) : cookie;
173
175
  headers.set("cookie", cookie);
174
176
 
175
- const userHeaders = new Headers(options?.fetchOptions?.headers);
177
+ const userHeaders = new Headers(
178
+ options?.headers ?? options?.fetchOptions?.headers,
179
+ );
176
180
  for (const [k, v] of userHeaders) {
177
181
  headers.set(k, v);
178
182
  }
@@ -183,20 +187,16 @@ export class ClientSDK {
183
187
  headers.set(conf.uaHeader ?? "user-agent", SDK_METADATA.userAgent);
184
188
  }
185
189
 
186
- let fetchOptions = options?.fetchOptions;
190
+ const fetchOptions: Omit<RequestInit, "method" | "body"> = {
191
+ ...options?.fetchOptions,
192
+ ...options,
193
+ };
187
194
  if (!fetchOptions?.signal && conf.timeoutMs && conf.timeoutMs > 0) {
188
195
  const timeoutSignal = AbortSignal.timeout(conf.timeoutMs);
189
- if (!fetchOptions) {
190
- fetchOptions = { signal: timeoutSignal };
191
- } else {
192
- fetchOptions.signal = timeoutSignal;
193
- }
196
+ fetchOptions.signal = timeoutSignal;
194
197
  }
195
198
 
196
199
  if (conf.body instanceof ReadableStream) {
197
- if (!fetchOptions) {
198
- fetchOptions = {};
199
- }
200
200
  Object.assign(fetchOptions, { duplex: "half" });
201
201
  }
202
202
 
@@ -19,7 +19,7 @@ const routes = buildRouteMap({
19
19
  export const app = buildApplication(routes, {
20
20
  name: "mcp",
21
21
  versionInfo: {
22
- currentVersion: "0.11.1",
22
+ currentVersion: "0.12.0",
23
23
  },
24
24
  });
25
25
 
@@ -16,12 +16,17 @@ import { createRegisterTool } from "./tools.js";
16
16
  import { tool$accessTokensIssueAccessToken } from "./tools/accessTokensIssueAccessToken.js";
17
17
  import { tool$accessTokensListAccessTokens } from "./tools/accessTokensListAccessTokens.js";
18
18
  import { tool$accessTokensRevokeAccessToken } from "./tools/accessTokensRevokeAccessToken.js";
19
+ import { tool$basinsCreateBasin } from "./tools/basinsCreateBasin.js";
19
20
  import { tool$basinsCreateOrReconfigureBasin } from "./tools/basinsCreateOrReconfigureBasin.js";
20
21
  import { tool$basinsDeleteBasin } from "./tools/basinsDeleteBasin.js";
21
22
  import { tool$basinsGetBasinConfig } from "./tools/basinsGetBasinConfig.js";
22
23
  import { tool$basinsListBasins } from "./tools/basinsListBasins.js";
23
24
  import { tool$basinsReconfigureBasin } from "./tools/basinsReconfigureBasin.js";
25
+ import { tool$recordsAppend } from "./tools/recordsAppend.js";
26
+ import { tool$recordsCheckTail } from "./tools/recordsCheckTail.js";
27
+ import { tool$recordsRead } from "./tools/recordsRead.js";
24
28
  import { tool$streamsCreateOrReconfigureStream } from "./tools/streamsCreateOrReconfigureStream.js";
29
+ import { tool$streamsCreateStream } from "./tools/streamsCreateStream.js";
25
30
  import { tool$streamsDeleteStream } from "./tools/streamsDeleteStream.js";
26
31
  import { tool$streamsGetStreamConfig } from "./tools/streamsGetStreamConfig.js";
27
32
  import { tool$streamsListStreams } from "./tools/streamsListStreams.js";
@@ -37,7 +42,7 @@ export function createMCPServer(deps: {
37
42
  }) {
38
43
  const server = new McpServer({
39
44
  name: "S2",
40
- version: "0.11.1",
45
+ version: "0.12.0",
41
46
  });
42
47
 
43
48
  const client = new S2Core({
@@ -71,15 +76,20 @@ export function createMCPServer(deps: {
71
76
  tool(tool$accessTokensIssueAccessToken);
72
77
  tool(tool$accessTokensRevokeAccessToken);
73
78
  tool(tool$basinsListBasins);
79
+ tool(tool$basinsCreateBasin);
74
80
  tool(tool$basinsGetBasinConfig);
75
81
  tool(tool$basinsCreateOrReconfigureBasin);
76
82
  tool(tool$basinsDeleteBasin);
77
83
  tool(tool$basinsReconfigureBasin);
78
84
  tool(tool$streamsListStreams);
85
+ tool(tool$streamsCreateStream);
79
86
  tool(tool$streamsGetStreamConfig);
80
87
  tool(tool$streamsCreateOrReconfigureStream);
81
88
  tool(tool$streamsDeleteStream);
82
89
  tool(tool$streamsReconfigureStream);
90
+ tool(tool$recordsRead);
91
+ tool(tool$recordsAppend);
92
+ tool(tool$recordsCheckTail);
83
93
 
84
94
  return server;
85
95
  }
@@ -0,0 +1,36 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { basinsCreateBasin } from "../../funcs/basinsCreateBasin.js";
6
+ import * as components from "../../models/components/index.js";
7
+ import { formatResult, ToolDefinition } from "../tools.js";
8
+
9
+ const args = {
10
+ request: components.CreateBasinRequest$inboundSchema,
11
+ };
12
+
13
+ export const tool$basinsCreateBasin: ToolDefinition<typeof args> = {
14
+ name: "basins-create-basin",
15
+ description: `Create a basin.`,
16
+ scopes: ["write"],
17
+ args,
18
+ tool: async (client, args, ctx) => {
19
+ const [result, apiCall] = await basinsCreateBasin(
20
+ client,
21
+ args.request,
22
+ { fetchOptions: { signal: ctx.signal } },
23
+ ).$inspect();
24
+
25
+ if (!result.ok) {
26
+ return {
27
+ content: [{ type: "text", text: result.error.message }],
28
+ isError: true,
29
+ };
30
+ }
31
+
32
+ const value = result.value;
33
+
34
+ return formatResult(value, apiCall);
35
+ },
36
+ };
@@ -0,0 +1,38 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { recordsAppend } from "../../funcs/recordsAppend.js";
6
+ import * as operations from "../../models/operations/index.js";
7
+ import { formatResult, ToolDefinition } from "../tools.js";
8
+
9
+ const args = {
10
+ request: operations.AppendRequest$inboundSchema,
11
+ };
12
+
13
+ export const tool$recordsAppend: ToolDefinition<typeof args> = {
14
+ name: "records-append",
15
+ description: `Append records.
16
+
17
+ Append a batch of records to a stream.`,
18
+ scopes: ["write"],
19
+ args,
20
+ tool: async (client, args, ctx) => {
21
+ const [result, apiCall] = await recordsAppend(
22
+ client,
23
+ args.request,
24
+ { fetchOptions: { signal: ctx.signal } },
25
+ ).$inspect();
26
+
27
+ if (!result.ok) {
28
+ return {
29
+ content: [{ type: "text", text: result.error.message }],
30
+ isError: true,
31
+ };
32
+ }
33
+
34
+ const value = result.value;
35
+
36
+ return formatResult(value, apiCall);
37
+ },
38
+ };
@@ -0,0 +1,38 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { recordsCheckTail } from "../../funcs/recordsCheckTail.js";
6
+ import * as operations from "../../models/operations/index.js";
7
+ import { formatResult, ToolDefinition } from "../tools.js";
8
+
9
+ const args = {
10
+ request: operations.CheckTailRequest$inboundSchema,
11
+ };
12
+
13
+ export const tool$recordsCheckTail: ToolDefinition<typeof args> = {
14
+ name: "records-check-tail",
15
+ description: `Check the tail.
16
+
17
+ Check the tail of a stream.`,
18
+ scopes: ["read"],
19
+ args,
20
+ tool: async (client, args, ctx) => {
21
+ const [result, apiCall] = await recordsCheckTail(
22
+ client,
23
+ args.request,
24
+ { fetchOptions: { signal: ctx.signal } },
25
+ ).$inspect();
26
+
27
+ if (!result.ok) {
28
+ return {
29
+ content: [{ type: "text", text: result.error.message }],
30
+ isError: true,
31
+ };
32
+ }
33
+
34
+ const value = result.value;
35
+
36
+ return formatResult(value, apiCall);
37
+ },
38
+ };
@@ -0,0 +1,38 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { recordsRead } from "../../funcs/recordsRead.js";
6
+ import * as operations from "../../models/operations/index.js";
7
+ import { formatResult, ToolDefinition } from "../tools.js";
8
+
9
+ const args = {
10
+ request: operations.ReadRequest$inboundSchema,
11
+ };
12
+
13
+ export const tool$recordsRead: ToolDefinition<typeof args> = {
14
+ name: "records-read",
15
+ description: `Retrieve records.
16
+
17
+ Retrieve a batch of records, or set \`Accept: text/event-stream\` to stream using server-sent events.`,
18
+ scopes: ["read"],
19
+ args,
20
+ tool: async (client, args, ctx) => {
21
+ const [result, apiCall] = await recordsRead(
22
+ client,
23
+ args.request,
24
+ { fetchOptions: { signal: ctx.signal } },
25
+ ).$inspect();
26
+
27
+ if (!result.ok) {
28
+ return {
29
+ content: [{ type: "text", text: result.error.message }],
30
+ isError: true,
31
+ };
32
+ }
33
+
34
+ const value = result.value;
35
+
36
+ return formatResult(value, apiCall);
37
+ },
38
+ };
@@ -0,0 +1,36 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { streamsCreateStream } from "../../funcs/streamsCreateStream.js";
6
+ import * as components from "../../models/components/index.js";
7
+ import { formatResult, ToolDefinition } from "../tools.js";
8
+
9
+ const args = {
10
+ request: components.CreateStreamRequest$inboundSchema,
11
+ };
12
+
13
+ export const tool$streamsCreateStream: ToolDefinition<typeof args> = {
14
+ name: "streams-create-stream",
15
+ description: `Create a stream.`,
16
+ scopes: ["write"],
17
+ args,
18
+ tool: async (client, args, ctx) => {
19
+ const [result, apiCall] = await streamsCreateStream(
20
+ client,
21
+ args.request,
22
+ { fetchOptions: { signal: ctx.signal } },
23
+ ).$inspect();
24
+
25
+ if (!result.ok) {
26
+ return {
27
+ content: [{ type: "text", text: result.error.message }],
28
+ isError: true,
29
+ };
30
+ }
31
+
32
+ const value = result.value;
33
+
34
+ return formatResult(value, apiCall);
35
+ },
36
+ };
@@ -24,7 +24,7 @@ export type AccessTokenInfo = {
24
24
  */
25
25
  autoPrefixStreams?: boolean | undefined;
26
26
  /**
27
- * Expiration time in seconds since Unix epoch.
27
+ * Expiration time in ISO 8601 format.
28
28
  *
29
29
  * @remarks
30
30
  * If not set, the expiration will be set to that of the requestor's token.
@@ -34,7 +34,7 @@ export type AccessTokenInfo = {
34
34
  * Access token ID.
35
35
  *
36
36
  * @remarks
37
- * It must be unique to the account and between 1 and 50 characters.
37
+ * It must be unique to the account and between 1 and 96 characters.
38
38
  */
39
39
  id: string;
40
40
  scope: AccessTokenScope;