@s2-dev/streamstore 0.15.9 → 0.15.12

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 (113) hide show
  1. package/README.md +3 -9
  2. package/bin/mcp-server.js +59 -22
  3. package/bin/mcp-server.js.map +18 -17
  4. package/dist/commonjs/funcs/basinsListBasins.js +3 -0
  5. package/dist/commonjs/funcs/basinsListBasins.js.map +1 -1
  6. package/dist/commonjs/funcs/recordsRead.js +1 -0
  7. package/dist/commonjs/funcs/recordsRead.js.map +1 -1
  8. package/dist/commonjs/funcs/streamsListStreams.js +3 -0
  9. package/dist/commonjs/funcs/streamsListStreams.js.map +1 -1
  10. package/dist/commonjs/lib/config.d.ts +3 -3
  11. package/dist/commonjs/lib/config.js +3 -3
  12. package/dist/commonjs/lib/config.js.map +1 -1
  13. package/dist/commonjs/lib/encodings.d.ts.map +1 -1
  14. package/dist/commonjs/lib/event-streams.d.ts +3 -3
  15. package/dist/commonjs/lib/event-streams.d.ts.map +1 -1
  16. package/dist/commonjs/lib/event-streams.js.map +1 -1
  17. package/dist/commonjs/lib/security.d.ts.map +1 -1
  18. package/dist/commonjs/lib/security.js.map +1 -1
  19. package/dist/commonjs/lib/url.js +1 -1
  20. package/dist/commonjs/lib/url.js.map +1 -1
  21. package/dist/commonjs/mcp-server/mcp-server.js +1 -1
  22. package/dist/commonjs/mcp-server/mcp-server.js.map +1 -1
  23. package/dist/commonjs/mcp-server/server.js +1 -1
  24. package/dist/commonjs/mcp-server/server.js.map +1 -1
  25. package/dist/commonjs/models/components/index.d.ts +1 -0
  26. package/dist/commonjs/models/components/index.d.ts.map +1 -1
  27. package/dist/commonjs/models/components/index.js +1 -0
  28. package/dist/commonjs/models/components/index.js.map +1 -1
  29. package/dist/commonjs/models/components/infiniteretention.d.ts +25 -0
  30. package/dist/commonjs/models/components/infiniteretention.d.ts.map +1 -0
  31. package/dist/commonjs/models/components/infiniteretention.js +65 -0
  32. package/dist/commonjs/models/components/infiniteretention.js.map +1 -0
  33. package/dist/commonjs/models/components/metric.d.ts +15 -15
  34. package/dist/commonjs/models/components/metric.d.ts.map +1 -1
  35. package/dist/commonjs/models/components/metric.js +18 -20
  36. package/dist/commonjs/models/components/metric.js.map +1 -1
  37. package/dist/commonjs/models/components/retentionpolicy.d.ts +37 -6
  38. package/dist/commonjs/models/components/retentionpolicy.d.ts.map +1 -1
  39. package/dist/commonjs/models/components/retentionpolicy.js +36 -3
  40. package/dist/commonjs/models/components/retentionpolicy.js.map +1 -1
  41. package/dist/commonjs/models/errors/index.d.ts +1 -0
  42. package/dist/commonjs/models/errors/index.d.ts.map +1 -1
  43. package/dist/commonjs/models/errors/index.js +1 -0
  44. package/dist/commonjs/models/errors/index.js.map +1 -1
  45. package/dist/commonjs/models/operations/read.d.ts +20 -10
  46. package/dist/commonjs/models/operations/read.d.ts.map +1 -1
  47. package/dist/commonjs/models/operations/read.js +7 -3
  48. package/dist/commonjs/models/operations/read.js.map +1 -1
  49. package/dist/esm/funcs/basinsListBasins.js +3 -0
  50. package/dist/esm/funcs/basinsListBasins.js.map +1 -1
  51. package/dist/esm/funcs/recordsRead.js +1 -0
  52. package/dist/esm/funcs/recordsRead.js.map +1 -1
  53. package/dist/esm/funcs/streamsListStreams.js +3 -0
  54. package/dist/esm/funcs/streamsListStreams.js.map +1 -1
  55. package/dist/esm/lib/config.d.ts +3 -3
  56. package/dist/esm/lib/config.js +3 -3
  57. package/dist/esm/lib/config.js.map +1 -1
  58. package/dist/esm/lib/encodings.d.ts.map +1 -1
  59. package/dist/esm/lib/event-streams.d.ts +3 -3
  60. package/dist/esm/lib/event-streams.d.ts.map +1 -1
  61. package/dist/esm/lib/event-streams.js.map +1 -1
  62. package/dist/esm/lib/security.d.ts.map +1 -1
  63. package/dist/esm/lib/security.js.map +1 -1
  64. package/dist/esm/lib/url.js +1 -1
  65. package/dist/esm/lib/url.js.map +1 -1
  66. package/dist/esm/mcp-server/mcp-server.js +1 -1
  67. package/dist/esm/mcp-server/mcp-server.js.map +1 -1
  68. package/dist/esm/mcp-server/server.js +1 -1
  69. package/dist/esm/mcp-server/server.js.map +1 -1
  70. package/dist/esm/models/components/index.d.ts +1 -0
  71. package/dist/esm/models/components/index.d.ts.map +1 -1
  72. package/dist/esm/models/components/index.js +1 -0
  73. package/dist/esm/models/components/index.js.map +1 -1
  74. package/dist/esm/models/components/infiniteretention.d.ts +25 -0
  75. package/dist/esm/models/components/infiniteretention.d.ts.map +1 -0
  76. package/dist/esm/models/components/infiniteretention.js +27 -0
  77. package/dist/esm/models/components/infiniteretention.js.map +1 -0
  78. package/dist/esm/models/components/metric.d.ts +15 -15
  79. package/dist/esm/models/components/metric.d.ts.map +1 -1
  80. package/dist/esm/models/components/metric.js +15 -17
  81. package/dist/esm/models/components/metric.js.map +1 -1
  82. package/dist/esm/models/components/retentionpolicy.d.ts +37 -6
  83. package/dist/esm/models/components/retentionpolicy.d.ts.map +1 -1
  84. package/dist/esm/models/components/retentionpolicy.js +33 -2
  85. package/dist/esm/models/components/retentionpolicy.js.map +1 -1
  86. package/dist/esm/models/errors/index.d.ts +1 -0
  87. package/dist/esm/models/errors/index.d.ts.map +1 -1
  88. package/dist/esm/models/errors/index.js +1 -0
  89. package/dist/esm/models/errors/index.js.map +1 -1
  90. package/dist/esm/models/operations/read.d.ts +20 -10
  91. package/dist/esm/models/operations/read.d.ts.map +1 -1
  92. package/dist/esm/models/operations/read.js +7 -3
  93. package/dist/esm/models/operations/read.js.map +1 -1
  94. package/docs/sdks/records/README.md +2 -8
  95. package/examples/accessTokensListAccessTokens.example.ts +2 -2
  96. package/examples/package-lock.json +3 -3
  97. package/jsr.json +1 -1
  98. package/package.json +3 -3
  99. package/src/funcs/basinsListBasins.ts +3 -0
  100. package/src/funcs/recordsRead.ts +1 -0
  101. package/src/funcs/streamsListStreams.ts +3 -0
  102. package/src/lib/config.ts +3 -3
  103. package/src/lib/event-streams.ts +6 -8
  104. package/src/lib/security.ts +4 -1
  105. package/src/lib/url.ts +1 -1
  106. package/src/mcp-server/mcp-server.ts +1 -1
  107. package/src/mcp-server/server.ts +1 -1
  108. package/src/models/components/index.ts +1 -0
  109. package/src/models/components/infiniteretention.ts +58 -0
  110. package/src/models/components/metric.ts +28 -25
  111. package/src/models/components/retentionpolicy.ts +68 -6
  112. package/src/models/errors/index.ts +1 -0
  113. package/src/models/operations/read.ts +32 -18
@@ -43,30 +43,39 @@ export type ReadRequest = {
43
43
  */
44
44
  tailOffset?: number | undefined;
45
45
  /**
46
- * Limit total records to return.
46
+ * Start reading from the tail if the requested position is beyond it.
47
47
  *
48
48
  * @remarks
49
- * If this is provided, tailing will be disabled.
49
+ * Otherwise, a `416 Range Not Satisfiable` response is returned.
50
+ */
51
+ clamp?: boolean | undefined;
52
+ /**
53
+ * Record count limit.
54
+ *
55
+ * @remarks
56
+ * Non-streaming reads are capped by the default limit of 1000 records.
50
57
  */
51
58
  count?: number | undefined;
52
59
  /**
53
- * Limit total metered bytes to return.
60
+ * Metered bytes limit.
54
61
  *
55
62
  * @remarks
56
- * If this is provided, tailing will be disabled.
63
+ * Non-streaming reads are capped by the default limit of 1 MiB.
57
64
  */
58
65
  bytes?: number | undefined;
59
66
  /**
60
67
  * Exclusive timestamp to read until.
61
- *
62
- * @remarks
63
- * If this is provided, tailing will be disabled.
64
68
  */
65
69
  until?: number | undefined;
66
70
  /**
67
- * Clamp the start position at the tail position.
71
+ * Duration in seconds to wait for new records.
72
+ *
73
+ * @remarks
74
+ * The default duration is 0 if there is a bound on `count`, `bytes`, or `until`, and otherwise infinite.
75
+ * Non-streaming reads are always bounded on `count` and `bytes`, so you can achieve long poll semantics by specifying a non-zero duration up to 60 seconds.
76
+ * In the context of an SSE or S2S streaming read, the duration will bound how much time can elapse between records throughout the lifetime of the session.
68
77
  */
69
- clamp?: boolean | undefined;
78
+ wait?: number | undefined;
70
79
  /**
71
80
  * Basin name for basin-specific endpoints
72
81
  */
@@ -88,10 +97,11 @@ export const ReadRequest$inboundSchema: z.ZodType<
88
97
  seq_num: z.number().int().optional(),
89
98
  timestamp: z.number().int().optional(),
90
99
  tail_offset: z.number().int().optional(),
100
+ clamp: z.boolean().optional(),
91
101
  count: z.number().int().optional(),
92
102
  bytes: z.number().int().optional(),
93
103
  until: z.number().int().optional(),
94
- clamp: z.boolean().optional(),
104
+ wait: z.number().int().optional(),
95
105
  "s2-basin": z.string(),
96
106
  }).transform((v) => {
97
107
  return remap$(v, {
@@ -109,10 +119,11 @@ export type ReadRequest$Outbound = {
109
119
  seq_num?: number | undefined;
110
120
  timestamp?: number | undefined;
111
121
  tail_offset?: number | undefined;
122
+ clamp?: boolean | undefined;
112
123
  count?: number | undefined;
113
124
  bytes?: number | undefined;
114
125
  until?: number | undefined;
115
- clamp?: boolean | undefined;
126
+ wait?: number | undefined;
116
127
  "s2-basin": string;
117
128
  };
118
129
 
@@ -127,10 +138,11 @@ export const ReadRequest$outboundSchema: z.ZodType<
127
138
  seqNum: z.number().int().optional(),
128
139
  timestamp: z.number().int().optional(),
129
140
  tailOffset: z.number().int().optional(),
141
+ clamp: z.boolean().optional(),
130
142
  count: z.number().int().optional(),
131
143
  bytes: z.number().int().optional(),
132
144
  until: z.number().int().optional(),
133
- clamp: z.boolean().optional(),
145
+ wait: z.number().int().optional(),
134
146
  s2Basin: z.string(),
135
147
  }).transform((v) => {
136
148
  return remap$(v, {
@@ -175,12 +187,14 @@ export const ReadResponse$inboundSchema: z.ZodType<
175
187
  unknown
176
188
  > = z.union([
177
189
  components.ReadBatch$inboundSchema,
178
- z.instanceof(ReadableStream<Uint8Array>).transform(stream => {
179
- return new EventStream(stream, rawEvent => {
180
- if (rawEvent.data === "[DONE]") return { done: true };
181
- return { value: components.ReadEvent$inboundSchema.parse(rawEvent) };
182
- });
183
- }),
190
+ z
191
+ .instanceof(ReadableStream<Uint8Array>)
192
+ .transform(stream => {
193
+ return new EventStream(stream, rawEvent => {
194
+ if (rawEvent.data === "[DONE]") return { done: true };
195
+ return { value: components.ReadEvent$inboundSchema.parse(rawEvent) };
196
+ });
197
+ }),
184
198
  ]);
185
199
 
186
200
  /** @internal */