@s2-dev/streamstore 0.2.5

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 (467) hide show
  1. package/.devcontainer/README.md +35 -0
  2. package/.devcontainer/devcontainer.json +45 -0
  3. package/FUNCTIONS.md +106 -0
  4. package/README.md +559 -0
  5. package/RUNTIMES.md +48 -0
  6. package/core.d.ts +10 -0
  7. package/core.d.ts.map +1 -0
  8. package/core.js +17 -0
  9. package/core.js.map +1 -0
  10. package/docs/sdks/account/README.md +406 -0
  11. package/docs/sdks/basin/README.md +415 -0
  12. package/docs/sdks/s2/README.md +7 -0
  13. package/docs/sdks/stream/README.md +267 -0
  14. package/funcs/accountCreateBasin.d.ts +14 -0
  15. package/funcs/accountCreateBasin.d.ts.map +1 -0
  16. package/funcs/accountCreateBasin.js +118 -0
  17. package/funcs/accountCreateBasin.js.map +1 -0
  18. package/funcs/accountDeleteBasin.d.ts +13 -0
  19. package/funcs/accountDeleteBasin.d.ts.map +1 -0
  20. package/funcs/accountDeleteBasin.js +114 -0
  21. package/funcs/accountDeleteBasin.js.map +1 -0
  22. package/funcs/accountGetBasinConfig.d.ts +14 -0
  23. package/funcs/accountGetBasinConfig.d.ts.map +1 -0
  24. package/funcs/accountGetBasinConfig.js +114 -0
  25. package/funcs/accountGetBasinConfig.js.map +1 -0
  26. package/funcs/accountListBasins.d.ts +16 -0
  27. package/funcs/accountListBasins.d.ts.map +1 -0
  28. package/funcs/accountListBasins.js +130 -0
  29. package/funcs/accountListBasins.js.map +1 -0
  30. package/funcs/accountReconfigureBasin.d.ts +14 -0
  31. package/funcs/accountReconfigureBasin.d.ts.map +1 -0
  32. package/funcs/accountReconfigureBasin.js +115 -0
  33. package/funcs/accountReconfigureBasin.js.map +1 -0
  34. package/funcs/basinCreateStream.d.ts +14 -0
  35. package/funcs/basinCreateStream.d.ts.map +1 -0
  36. package/funcs/basinCreateStream.js +123 -0
  37. package/funcs/basinCreateStream.js.map +1 -0
  38. package/funcs/basinDeleteStream.d.ts +13 -0
  39. package/funcs/basinDeleteStream.d.ts.map +1 -0
  40. package/funcs/basinDeleteStream.js +119 -0
  41. package/funcs/basinDeleteStream.js.map +1 -0
  42. package/funcs/basinGetStreamConfig.d.ts +14 -0
  43. package/funcs/basinGetStreamConfig.d.ts.map +1 -0
  44. package/funcs/basinGetStreamConfig.js +119 -0
  45. package/funcs/basinGetStreamConfig.js.map +1 -0
  46. package/funcs/basinListStreams.d.ts +16 -0
  47. package/funcs/basinListStreams.d.ts.map +1 -0
  48. package/funcs/basinListStreams.js +137 -0
  49. package/funcs/basinListStreams.js.map +1 -0
  50. package/funcs/basinReconfigureStream.d.ts +14 -0
  51. package/funcs/basinReconfigureStream.d.ts.map +1 -0
  52. package/funcs/basinReconfigureStream.js +120 -0
  53. package/funcs/basinReconfigureStream.js.map +1 -0
  54. package/funcs/streamAppend.d.ts +14 -0
  55. package/funcs/streamAppend.d.ts.map +1 -0
  56. package/funcs/streamAppend.js +124 -0
  57. package/funcs/streamAppend.js.map +1 -0
  58. package/funcs/streamCheckTail.d.ts +14 -0
  59. package/funcs/streamCheckTail.d.ts.map +1 -0
  60. package/funcs/streamCheckTail.js +119 -0
  61. package/funcs/streamCheckTail.js.map +1 -0
  62. package/funcs/streamRead.d.ts +19 -0
  63. package/funcs/streamRead.d.ts.map +1 -0
  64. package/funcs/streamRead.js +134 -0
  65. package/funcs/streamRead.js.map +1 -0
  66. package/hooks/hooks.d.ts +24 -0
  67. package/hooks/hooks.d.ts.map +1 -0
  68. package/hooks/hooks.js +86 -0
  69. package/hooks/hooks.js.map +1 -0
  70. package/hooks/index.d.ts +3 -0
  71. package/hooks/index.d.ts.map +1 -0
  72. package/hooks/index.js +22 -0
  73. package/hooks/index.js.map +1 -0
  74. package/hooks/registration.d.ts +3 -0
  75. package/hooks/registration.d.ts.map +1 -0
  76. package/hooks/registration.js +15 -0
  77. package/hooks/registration.js.map +1 -0
  78. package/hooks/types.d.ts +77 -0
  79. package/hooks/types.d.ts.map +1 -0
  80. package/hooks/types.js +6 -0
  81. package/hooks/types.js.map +1 -0
  82. package/index.d.ts +4 -0
  83. package/index.d.ts.map +1 -0
  84. package/index.js +46 -0
  85. package/index.js.map +1 -0
  86. package/jsr.json +28 -0
  87. package/lib/base64.d.ts +10 -0
  88. package/lib/base64.d.ts.map +1 -0
  89. package/lib/base64.js +71 -0
  90. package/lib/base64.js.map +1 -0
  91. package/lib/config.d.ts +34 -0
  92. package/lib/config.d.ts.map +1 -0
  93. package/lib/config.js +35 -0
  94. package/lib/config.js.map +1 -0
  95. package/lib/dlv.d.ts +14 -0
  96. package/lib/dlv.d.ts.map +1 -0
  97. package/lib/dlv.js +49 -0
  98. package/lib/dlv.js.map +1 -0
  99. package/lib/encodings.d.ts +52 -0
  100. package/lib/encodings.d.ts.map +1 -0
  101. package/lib/encodings.js +368 -0
  102. package/lib/encodings.js.map +1 -0
  103. package/lib/env.d.ts +15 -0
  104. package/lib/env.d.ts.map +1 -0
  105. package/lib/env.js +65 -0
  106. package/lib/env.js.map +1 -0
  107. package/lib/event-streams.d.ts +17 -0
  108. package/lib/event-streams.d.ts.map +1 -0
  109. package/lib/event-streams.js +220 -0
  110. package/lib/event-streams.js.map +1 -0
  111. package/lib/files.d.ts +8 -0
  112. package/lib/files.d.ts.map +1 -0
  113. package/lib/files.js +36 -0
  114. package/lib/files.js.map +1 -0
  115. package/lib/http.d.ts +67 -0
  116. package/lib/http.d.ts.map +1 -0
  117. package/lib/http.js +217 -0
  118. package/lib/http.js.map +1 -0
  119. package/lib/is-plain-object.d.ts +2 -0
  120. package/lib/is-plain-object.d.ts.map +1 -0
  121. package/lib/is-plain-object.js +41 -0
  122. package/lib/is-plain-object.js.map +1 -0
  123. package/lib/logger.d.ts +6 -0
  124. package/lib/logger.d.ts.map +1 -0
  125. package/lib/logger.js +6 -0
  126. package/lib/logger.js.map +1 -0
  127. package/lib/matchers.d.ts +64 -0
  128. package/lib/matchers.d.ts.map +1 -0
  129. package/lib/matchers.js +207 -0
  130. package/lib/matchers.js.map +1 -0
  131. package/lib/primitives.d.ts +23 -0
  132. package/lib/primitives.d.ts.map +1 -0
  133. package/lib/primitives.js +104 -0
  134. package/lib/primitives.js.map +1 -0
  135. package/lib/retries.d.ts +38 -0
  136. package/lib/retries.d.ts.map +1 -0
  137. package/lib/retries.js +154 -0
  138. package/lib/retries.js.map +1 -0
  139. package/lib/schemas.d.ts +19 -0
  140. package/lib/schemas.d.ts.map +1 -0
  141. package/lib/schemas.js +62 -0
  142. package/lib/schemas.js.map +1 -0
  143. package/lib/sdks.d.ts +60 -0
  144. package/lib/sdks.d.ts.map +1 -0
  145. package/lib/sdks.js +280 -0
  146. package/lib/sdks.js.map +1 -0
  147. package/lib/security.d.ts +82 -0
  148. package/lib/security.d.ts.map +1 -0
  149. package/lib/security.js +139 -0
  150. package/lib/security.js.map +1 -0
  151. package/lib/url.d.ts +5 -0
  152. package/lib/url.d.ts.map +1 -0
  153. package/lib/url.js +25 -0
  154. package/lib/url.js.map +1 -0
  155. package/models/components/appendinput.d.ts +49 -0
  156. package/models/components/appendinput.d.ts.map +1 -0
  157. package/models/components/appendinput.js +85 -0
  158. package/models/components/appendinput.js.map +1 -0
  159. package/models/components/appendoutput.d.ts +51 -0
  160. package/models/components/appendoutput.d.ts.map +1 -0
  161. package/models/components/appendoutput.js +86 -0
  162. package/models/components/appendoutput.js.map +1 -0
  163. package/models/components/appendrecord.d.ts +40 -0
  164. package/models/components/appendrecord.d.ts.map +1 -0
  165. package/models/components/appendrecord.js +71 -0
  166. package/models/components/appendrecord.js.map +1 -0
  167. package/models/components/assignment.d.ts +90 -0
  168. package/models/components/assignment.d.ts.map +1 -0
  169. package/models/components/assignment.js +127 -0
  170. package/models/components/assignment.js.map +1 -0
  171. package/models/components/basinconfig.d.ts +33 -0
  172. package/models/components/basinconfig.d.ts.map +1 -0
  173. package/models/components/basinconfig.js +79 -0
  174. package/models/components/basinconfig.js.map +1 -0
  175. package/models/components/basininfo.d.ts +51 -0
  176. package/models/components/basininfo.d.ts.map +1 -0
  177. package/models/components/basininfo.js +76 -0
  178. package/models/components/basininfo.js.map +1 -0
  179. package/models/components/basinstate.d.ts +40 -0
  180. package/models/components/basinstate.d.ts.map +1 -0
  181. package/models/components/basinstate.js +66 -0
  182. package/models/components/basinstate.js.map +1 -0
  183. package/models/components/checktailresponse.d.ts +35 -0
  184. package/models/components/checktailresponse.d.ts.map +1 -0
  185. package/models/components/checktailresponse.js +78 -0
  186. package/models/components/checktailresponse.js.map +1 -0
  187. package/models/components/createbasinrequest.d.ts +36 -0
  188. package/models/components/createbasinrequest.d.ts.map +1 -0
  189. package/models/components/createbasinrequest.js +73 -0
  190. package/models/components/createbasinrequest.js.map +1 -0
  191. package/models/components/createstreamrequest.d.ts +33 -0
  192. package/models/components/createstreamrequest.d.ts.map +1 -0
  193. package/models/components/createstreamrequest.js +70 -0
  194. package/models/components/createstreamrequest.js.map +1 -0
  195. package/models/components/header.d.ts +43 -0
  196. package/models/components/header.d.ts.map +1 -0
  197. package/models/components/header.js +72 -0
  198. package/models/components/header.js.map +1 -0
  199. package/models/components/index.d.ts +23 -0
  200. package/models/components/index.d.ts.map +1 -0
  201. package/models/components/index.js +42 -0
  202. package/models/components/index.js.map +1 -0
  203. package/models/components/listbasinsresponse.d.ts +41 -0
  204. package/models/components/listbasinsresponse.d.ts.map +1 -0
  205. package/models/components/listbasinsresponse.js +81 -0
  206. package/models/components/listbasinsresponse.js.map +1 -0
  207. package/models/components/liststreamsresponse.d.ts +41 -0
  208. package/models/components/liststreamsresponse.d.ts.map +1 -0
  209. package/models/components/liststreamsresponse.js +81 -0
  210. package/models/components/liststreamsresponse.js.map +1 -0
  211. package/models/components/output.d.ts +140 -0
  212. package/models/components/output.d.ts.map +1 -0
  213. package/models/components/output.js +174 -0
  214. package/models/components/output.js.map +1 -0
  215. package/models/components/readresponse.d.ts +83 -0
  216. package/models/components/readresponse.d.ts.map +1 -0
  217. package/models/components/readresponse.js +141 -0
  218. package/models/components/readresponse.js.map +1 -0
  219. package/models/components/retentionpolicy.d.ts +68 -0
  220. package/models/components/retentionpolicy.d.ts.map +1 -0
  221. package/models/components/retentionpolicy.js +94 -0
  222. package/models/components/retentionpolicy.js.map +1 -0
  223. package/models/components/security.d.ts +29 -0
  224. package/models/components/security.d.ts.map +1 -0
  225. package/models/components/security.js +69 -0
  226. package/models/components/security.js.map +1 -0
  227. package/models/components/sequencedrecord.d.ts +46 -0
  228. package/models/components/sequencedrecord.d.ts.map +1 -0
  229. package/models/components/sequencedrecord.js +83 -0
  230. package/models/components/sequencedrecord.js.map +1 -0
  231. package/models/components/sequencedrecordbatch.d.ts +36 -0
  232. package/models/components/sequencedrecordbatch.d.ts.map +1 -0
  233. package/models/components/sequencedrecordbatch.js +70 -0
  234. package/models/components/sequencedrecordbatch.js.map +1 -0
  235. package/models/components/storageclass.d.ts +37 -0
  236. package/models/components/storageclass.d.ts.map +1 -0
  237. package/models/components/storageclass.js +64 -0
  238. package/models/components/storageclass.js.map +1 -0
  239. package/models/components/streamconfig.d.ts +39 -0
  240. package/models/components/streamconfig.d.ts.map +1 -0
  241. package/models/components/streamconfig.js +84 -0
  242. package/models/components/streamconfig.js.map +1 -0
  243. package/models/components/streaminfo.d.ts +45 -0
  244. package/models/components/streaminfo.d.ts.map +1 -0
  245. package/models/components/streaminfo.js +84 -0
  246. package/models/components/streaminfo.js.map +1 -0
  247. package/models/errors/apierror.d.ts +8 -0
  248. package/models/errors/apierror.d.ts.map +1 -0
  249. package/models/errors/apierror.js +21 -0
  250. package/models/errors/apierror.js.map +1 -0
  251. package/models/errors/errorresponse.d.ts +31 -0
  252. package/models/errors/errorresponse.d.ts.map +1 -0
  253. package/models/errors/errorresponse.js +77 -0
  254. package/models/errors/errorresponse.js.map +1 -0
  255. package/models/errors/httpclienterrors.d.ts +44 -0
  256. package/models/errors/httpclienterrors.d.ts.map +1 -0
  257. package/models/errors/httpclienterrors.js +78 -0
  258. package/models/errors/httpclienterrors.js.map +1 -0
  259. package/models/errors/index.d.ts +5 -0
  260. package/models/errors/index.d.ts.map +1 -0
  261. package/models/errors/index.js +24 -0
  262. package/models/errors/index.js.map +1 -0
  263. package/models/errors/sdkvalidationerror.d.ts +20 -0
  264. package/models/errors/sdkvalidationerror.d.ts.map +1 -0
  265. package/models/errors/sdkvalidationerror.js +115 -0
  266. package/models/errors/sdkvalidationerror.js.map +1 -0
  267. package/models/operations/append.d.ts +97 -0
  268. package/models/operations/append.d.ts.map +1 -0
  269. package/models/operations/append.js +134 -0
  270. package/models/operations/append.js.map +1 -0
  271. package/models/operations/checktail.d.ts +33 -0
  272. package/models/operations/checktail.d.ts.map +1 -0
  273. package/models/operations/checktail.js +75 -0
  274. package/models/operations/checktail.js.map +1 -0
  275. package/models/operations/createbasin.d.ts +37 -0
  276. package/models/operations/createbasin.d.ts.map +1 -0
  277. package/models/operations/createbasin.js +85 -0
  278. package/models/operations/createbasin.js.map +1 -0
  279. package/models/operations/createstream.d.ts +38 -0
  280. package/models/operations/createstream.d.ts.map +1 -0
  281. package/models/operations/createstream.js +91 -0
  282. package/models/operations/createstream.js.map +1 -0
  283. package/models/operations/deletebasin.d.ts +32 -0
  284. package/models/operations/deletebasin.d.ts.map +1 -0
  285. package/models/operations/deletebasin.js +69 -0
  286. package/models/operations/deletebasin.js.map +1 -0
  287. package/models/operations/deletestream.d.ts +33 -0
  288. package/models/operations/deletestream.d.ts.map +1 -0
  289. package/models/operations/deletestream.js +75 -0
  290. package/models/operations/deletestream.js.map +1 -0
  291. package/models/operations/getbasinconfig.d.ts +32 -0
  292. package/models/operations/getbasinconfig.d.ts.map +1 -0
  293. package/models/operations/getbasinconfig.js +69 -0
  294. package/models/operations/getbasinconfig.js.map +1 -0
  295. package/models/operations/getstreamconfig.d.ts +33 -0
  296. package/models/operations/getstreamconfig.d.ts.map +1 -0
  297. package/models/operations/getstreamconfig.js +75 -0
  298. package/models/operations/getstreamconfig.js.map +1 -0
  299. package/models/operations/index.d.ts +14 -0
  300. package/models/operations/index.d.ts.map +1 -0
  301. package/models/operations/index.js +33 -0
  302. package/models/operations/index.js.map +1 -0
  303. package/models/operations/listbasins.d.ts +72 -0
  304. package/models/operations/listbasins.d.ts.map +1 -0
  305. package/models/operations/listbasins.js +118 -0
  306. package/models/operations/listbasins.js.map +1 -0
  307. package/models/operations/liststreams.d.ts +73 -0
  308. package/models/operations/liststreams.d.ts.map +1 -0
  309. package/models/operations/liststreams.js +124 -0
  310. package/models/operations/liststreams.js.map +1 -0
  311. package/models/operations/read.d.ts +163 -0
  312. package/models/operations/read.d.ts.map +1 -0
  313. package/models/operations/read.js +200 -0
  314. package/models/operations/read.js.map +1 -0
  315. package/models/operations/reconfigurebasin.d.ts +35 -0
  316. package/models/operations/reconfigurebasin.d.ts.map +1 -0
  317. package/models/operations/reconfigurebasin.js +81 -0
  318. package/models/operations/reconfigurebasin.js.map +1 -0
  319. package/models/operations/reconfigurestream.d.ts +36 -0
  320. package/models/operations/reconfigurestream.d.ts.map +1 -0
  321. package/models/operations/reconfigurestream.js +87 -0
  322. package/models/operations/reconfigurestream.js.map +1 -0
  323. package/package.json +32 -0
  324. package/sdk/account.d.ts +29 -0
  325. package/sdk/account.d.ts.map +1 -0
  326. package/sdk/account.js +48 -0
  327. package/sdk/account.js.map +1 -0
  328. package/sdk/basin.d.ts +29 -0
  329. package/sdk/basin.d.ts.map +1 -0
  330. package/sdk/basin.js +48 -0
  331. package/sdk/basin.js.map +1 -0
  332. package/sdk/index.d.ts +2 -0
  333. package/sdk/index.d.ts.map +1 -0
  334. package/sdk/index.js +21 -0
  335. package/sdk/index.js.map +1 -0
  336. package/sdk/sdk.d.ts +13 -0
  337. package/sdk/sdk.d.ts.map +1 -0
  338. package/sdk/sdk.js +23 -0
  339. package/sdk/sdk.js.map +1 -0
  340. package/sdk/stream.d.ts +22 -0
  341. package/sdk/stream.d.ts.map +1 -0
  342. package/sdk/stream.js +35 -0
  343. package/sdk/stream.js.map +1 -0
  344. package/src/core.ts +13 -0
  345. package/src/funcs/accountCreateBasin.ts +149 -0
  346. package/src/funcs/accountDeleteBasin.ts +141 -0
  347. package/src/funcs/accountGetBasinConfig.ts +141 -0
  348. package/src/funcs/accountListBasins.ts +188 -0
  349. package/src/funcs/accountReconfigureBasin.ts +142 -0
  350. package/src/funcs/basinCreateStream.ts +155 -0
  351. package/src/funcs/basinDeleteStream.ts +147 -0
  352. package/src/funcs/basinGetStreamConfig.ts +147 -0
  353. package/src/funcs/basinListStreams.ts +196 -0
  354. package/src/funcs/basinReconfigureStream.ts +148 -0
  355. package/src/funcs/streamAppend.ts +152 -0
  356. package/src/funcs/streamCheckTail.ts +147 -0
  357. package/src/funcs/streamRead.ts +163 -0
  358. package/src/hooks/hooks.ts +132 -0
  359. package/src/hooks/index.ts +6 -0
  360. package/src/hooks/registration.ts +14 -0
  361. package/src/hooks/types.ts +109 -0
  362. package/src/index.ts +7 -0
  363. package/src/lib/base64.ts +37 -0
  364. package/src/lib/config.ts +60 -0
  365. package/src/lib/dlv.ts +53 -0
  366. package/src/lib/encodings.ts +483 -0
  367. package/src/lib/env.ts +41 -0
  368. package/src/lib/event-streams.ts +264 -0
  369. package/src/lib/files.ts +40 -0
  370. package/src/lib/http.ts +323 -0
  371. package/src/lib/is-plain-object.ts +43 -0
  372. package/src/lib/logger.ts +9 -0
  373. package/src/lib/matchers.ts +325 -0
  374. package/src/lib/primitives.ts +136 -0
  375. package/src/lib/retries.ts +219 -0
  376. package/src/lib/schemas.ts +91 -0
  377. package/src/lib/sdks.ts +400 -0
  378. package/src/lib/security.ts +254 -0
  379. package/src/lib/url.ts +33 -0
  380. package/src/models/components/appendinput.ts +102 -0
  381. package/src/models/components/appendoutput.ts +101 -0
  382. package/src/models/components/appendrecord.ts +75 -0
  383. package/src/models/components/assignment.ts +177 -0
  384. package/src/models/components/basinconfig.ts +80 -0
  385. package/src/models/components/basininfo.ts +94 -0
  386. package/src/models/components/basinstate.ts +39 -0
  387. package/src/models/components/checktailresponse.ts +81 -0
  388. package/src/models/components/createbasinrequest.ts +85 -0
  389. package/src/models/components/createstreamrequest.ts +75 -0
  390. package/src/models/components/header.ts +75 -0
  391. package/src/models/components/index.ts +26 -0
  392. package/src/models/components/listbasinsresponse.ts +94 -0
  393. package/src/models/components/liststreamsresponse.ts +94 -0
  394. package/src/models/components/output.ts +277 -0
  395. package/src/models/components/readresponse.ts +197 -0
  396. package/src/models/components/retentionpolicy.ts +122 -0
  397. package/src/models/components/security.ts +62 -0
  398. package/src/models/components/sequencedrecord.ts +99 -0
  399. package/src/models/components/sequencedrecordbatch.ts +78 -0
  400. package/src/models/components/storageclass.ts +38 -0
  401. package/src/models/components/streamconfig.ts +94 -0
  402. package/src/models/components/streaminfo.ts +93 -0
  403. package/src/models/errors/apierror.ts +27 -0
  404. package/src/models/errors/errorresponse.ts +69 -0
  405. package/src/models/errors/httpclienterrors.ts +62 -0
  406. package/src/models/errors/index.ts +8 -0
  407. package/src/models/errors/sdkvalidationerror.ts +97 -0
  408. package/src/models/operations/append.ts +176 -0
  409. package/src/models/operations/checktail.ts +76 -0
  410. package/src/models/operations/createbasin.ts +89 -0
  411. package/src/models/operations/createstream.ts +96 -0
  412. package/src/models/operations/deletebasin.ts +69 -0
  413. package/src/models/operations/deletestream.ts +76 -0
  414. package/src/models/operations/getbasinconfig.ts +69 -0
  415. package/src/models/operations/getstreamconfig.ts +76 -0
  416. package/src/models/operations/index.ts +17 -0
  417. package/src/models/operations/listbasins.ts +163 -0
  418. package/src/models/operations/liststreams.ts +170 -0
  419. package/src/models/operations/read.ts +309 -0
  420. package/src/models/operations/reconfigurebasin.ts +83 -0
  421. package/src/models/operations/reconfigurestream.ts +90 -0
  422. package/src/sdk/account.ts +86 -0
  423. package/src/sdk/basin.ts +86 -0
  424. package/src/sdk/index.ts +5 -0
  425. package/src/sdk/sdk.ts +25 -0
  426. package/src/sdk/stream.ts +57 -0
  427. package/src/types/blobs.ts +31 -0
  428. package/src/types/constdatetime.ts +15 -0
  429. package/src/types/enums.ts +16 -0
  430. package/src/types/fp.ts +50 -0
  431. package/src/types/index.ts +11 -0
  432. package/src/types/operations.ts +105 -0
  433. package/src/types/rfcdate.ts +54 -0
  434. package/src/types/streams.ts +21 -0
  435. package/tsconfig.json +41 -0
  436. package/types/blobs.d.ts +4 -0
  437. package/types/blobs.d.ts.map +1 -0
  438. package/types/blobs.js +62 -0
  439. package/types/blobs.js.map +1 -0
  440. package/types/constdatetime.d.ts +3 -0
  441. package/types/constdatetime.d.ts.map +1 -0
  442. package/types/constdatetime.js +46 -0
  443. package/types/constdatetime.js.map +1 -0
  444. package/types/enums.d.ts +12 -0
  445. package/types/enums.d.ts.map +1 -0
  446. package/types/enums.js +10 -0
  447. package/types/enums.js.map +1 -0
  448. package/types/fp.d.ts +31 -0
  449. package/types/fp.d.ts.map +1 -0
  450. package/types/fp.js +37 -0
  451. package/types/fp.js.map +1 -0
  452. package/types/index.d.ts +8 -0
  453. package/types/index.d.ts.map +1 -0
  454. package/types/index.js +16 -0
  455. package/types/index.js.map +1 -0
  456. package/types/operations.d.ts +27 -0
  457. package/types/operations.d.ts.map +1 -0
  458. package/types/operations.js +83 -0
  459. package/types/operations.js.map +1 -0
  460. package/types/rfcdate.d.ts +21 -0
  461. package/types/rfcdate.d.ts.map +1 -0
  462. package/types/rfcdate.js +46 -0
  463. package/types/rfcdate.js.map +1 -0
  464. package/types/streams.d.ts +2 -0
  465. package/types/streams.d.ts.map +1 -0
  466. package/types/streams.js +18 -0
  467. package/types/streams.js.map +1 -0
@@ -0,0 +1,35 @@
1
+
2
+ <div align="center">
3
+ <a href="https://codespaces.new/s2-streamstore/s2-sdk-typescript.git/tree/main"><img src="https://github.com/codespaces/badge.svg" /></a>
4
+ </div>
5
+ <br>
6
+
7
+ > **Remember to shutdown a GitHub Codespace when it is not in use!**
8
+
9
+ # Dev Containers Quick Start
10
+
11
+ The default location for usage snippets is the `samples` directory.
12
+
13
+ ## Running a Usage Sample
14
+
15
+ A sample usage example has been provided in a `root.ts` file. As you work with the SDK, it's expected that you will modify these samples to fit your needs. To execute this particular snippet, use the command below.
16
+
17
+ ```
18
+ ts-node root.ts
19
+ ```
20
+
21
+ ## Generating Additional Usage Samples
22
+
23
+ The speakeasy CLI allows you to generate more usage snippets. Here's how:
24
+
25
+ - To generate a sample for a specific operation by providing an operation ID, use:
26
+
27
+ ```
28
+ speakeasy generate usage -s s2/proto/public/s2/v1alpha/s2.json -l typescript -i {INPUT_OPERATION_ID} -o ./samples
29
+ ```
30
+
31
+ - To generate samples for an entire namespace (like a tag or group name), use:
32
+
33
+ ```
34
+ speakeasy generate usage -s s2/proto/public/s2/v1alpha/s2.json -l typescript -n {INPUT_TAG_NAME} -o ./samples
35
+ ```
@@ -0,0 +1,45 @@
1
+ // For format details, see https://aka.ms/devcontainer.json. For config options, see the
2
+ // README at: https://github.com/devcontainers/images/tree/main/src/typescript-node
3
+ {
4
+ "name": "TypeScript",
5
+ "image": "mcr.microsoft.com/devcontainers/typescript-node:1-20-bullseye",
6
+ // Features to add to the dev container. More info: https://containers.dev/features.
7
+ // "features": {},
8
+ // Use 'forwardPorts' to make a list of ports inside the container available locally.
9
+ // "forwardPorts": [],
10
+ // Use 'postCreateCommand' to run commands after the container is created.
11
+ "postCreateCommand": "sudo chmod +x ./.devcontainer/setup.sh && ./.devcontainer/setup.sh",
12
+ "customizations": {
13
+ "vscode": {
14
+ "extensions": [
15
+ "ms-vscode.vscode-typescript-tslint-plugin",
16
+ "esbenp.prettier-vscode",
17
+ "github.vscode-pull-request-github"
18
+ ],
19
+ "settings": {
20
+ "files.eol": "\n",
21
+ "editor.formatOnSave": true,
22
+ "typescript.tsc.autoDetect": "on",
23
+ "typescript.updateImportsOnFileMove.enabled": "always",
24
+ "typescript.preferences.importModuleSpecifier": "relative",
25
+ "[typescript]": {
26
+ "editor.codeActionsOnSave": {
27
+ "source.organizeImports": true
28
+ }
29
+ },
30
+ "[typescriptreact]": {
31
+ "editor.codeActionsOnSave": {
32
+ "source.organizeImports": true
33
+ }
34
+ }
35
+ }
36
+ },
37
+ "codespaces": {
38
+ "openFiles": [
39
+ ".devcontainer/README.md"
40
+ ]
41
+ }
42
+ }
43
+ // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
44
+ // "remoteUser": "root"
45
+ }
package/FUNCTIONS.md ADDED
@@ -0,0 +1,106 @@
1
+ # Standalone Functions
2
+
3
+ > [!NOTE]
4
+ > This section is useful if you are using a bundler and targetting browsers and
5
+ > runtimes where the size of an application affects performance and load times.
6
+
7
+ Every method in this SDK is also available as a standalone function. This
8
+ alternative API is suitable when targetting the browser or serverless runtimes
9
+ and using a bundler to build your application since all unused functionality
10
+ will be tree-shaken away. This includes code for unused methods, Zod schemas,
11
+ encoding helpers and response handlers. The result is dramatically smaller
12
+ impact on the application's final bundle size which grows very slowly as you use
13
+ more and more functionality from this SDK.
14
+
15
+ Calling methods through the main SDK class remains a valid and generally more
16
+ more ergonomic option. Standalone functions represent an optimisation for a
17
+ specific category of applications.
18
+
19
+ ## Example
20
+
21
+ ```typescript
22
+ import { S2Core } from "@s2-dev/streamstore/core.js";
23
+ import { accountListBasins } from "@s2-dev/streamstore/funcs/accountListBasins.js";
24
+ import { SDKValidationError } from "@s2-dev/streamstore/models/errors/sdkvalidationerror.js";
25
+
26
+ // Use `S2Core` for best tree-shaking performance.
27
+ // You can create one instance of it to use across an application.
28
+ const s2 = new S2Core({
29
+ bearerAuth: process.env["S2_BEARER_AUTH"] ?? "",
30
+ });
31
+
32
+ async function run() {
33
+ const res = await accountListBasins(s2, {});
34
+
35
+ switch (true) {
36
+ case res.ok:
37
+ // The success case will be handled outside of the switch block
38
+ break;
39
+ case res.error instanceof SDKValidationError:
40
+ // Pretty-print validation errors.
41
+ return console.log(res.error.pretty());
42
+ case res.error instanceof Error:
43
+ return console.log(res.error);
44
+ default:
45
+ // TypeScript's type checking will fail on the following line if the above
46
+ // cases were not exhaustive.
47
+ res.error satisfies never;
48
+ throw new Error("Assertion failed: expected error checks to be exhaustive: " + res.error);
49
+ }
50
+
51
+
52
+ const { value: result } = res;
53
+
54
+ for await (const page of result) {
55
+ // Handle the page
56
+ console.log(page);
57
+ }
58
+ }
59
+
60
+ run();
61
+ ```
62
+
63
+ ## Result types
64
+
65
+ Standalone functions differ from SDK methods in that they return a
66
+ `Result<Value, Error>` type to capture _known errors_ and document them using
67
+ the type system. By avoiding throwing errors, application code maintains clear
68
+ control flow and error-handling become part of the regular flow of application
69
+ code.
70
+
71
+ > We use the term "known errors" because standalone functions, and JavaScript
72
+ > code in general, can still throw unexpected errors such as `TypeError`s,
73
+ > `RangeError`s and `DOMException`s. Exhaustively catching all errors may be
74
+ > something this SDK addresses in the future. Nevertheless, there is still a lot
75
+ > of benefit from capturing most errors and turning them into values.
76
+
77
+ The second reason for this style of programming is because these functions will
78
+ typically be used in front-end applications where exception throwing is
79
+ sometimes discouraged or considered unidiomatic. React and similar ecosystems
80
+ and libraries tend to promote this style of programming so that components
81
+ render useful content under all states (loading, success, error and so on).
82
+
83
+ The general pattern when calling standalone functions looks like this:
84
+
85
+ ```typescript
86
+ import { Core } from "<sdk-package-name>";
87
+ import { fetchSomething } from "<sdk-package-name>/funcs/fetchSomething.js";
88
+
89
+ const client = new Core();
90
+
91
+ async function run() {
92
+ const result = await fetchSomething(client, { id: "123" });
93
+ if (!result.ok) {
94
+ // You can throw the error or handle it. It's your choice now.
95
+ throw result.error;
96
+ }
97
+
98
+ console.log(result.value);
99
+ }
100
+
101
+ run();
102
+ ```
103
+
104
+ Notably, `result.error` above will have an explicit type compared to a try-catch
105
+ variation where the error in the catch block can only be of type `unknown` (or
106
+ `any` depending on your TypeScript settings).