@s2-dev/streamstore 0.3.14 → 0.4.2

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 (224) hide show
  1. package/README.md +115 -2
  2. package/bin/mcp-server.js +50283 -0
  3. package/bin/mcp-server.js.map +347 -0
  4. package/funcs/accountCreateBasin.d.ts +2 -1
  5. package/funcs/accountCreateBasin.d.ts.map +1 -1
  6. package/funcs/accountCreateBasin.js +11 -6
  7. package/funcs/accountCreateBasin.js.map +1 -1
  8. package/funcs/accountDeleteBasin.d.ts +2 -1
  9. package/funcs/accountDeleteBasin.d.ts.map +1 -1
  10. package/funcs/accountDeleteBasin.js +11 -6
  11. package/funcs/accountDeleteBasin.js.map +1 -1
  12. package/funcs/accountGetBasinConfig.d.ts +2 -1
  13. package/funcs/accountGetBasinConfig.d.ts.map +1 -1
  14. package/funcs/accountGetBasinConfig.js +11 -6
  15. package/funcs/accountGetBasinConfig.js.map +1 -1
  16. package/funcs/accountListBasins.d.ts +2 -1
  17. package/funcs/accountListBasins.d.ts.map +1 -1
  18. package/funcs/accountListBasins.js +19 -6
  19. package/funcs/accountListBasins.js.map +1 -1
  20. package/funcs/accountReconfigureBasin.d.ts +2 -1
  21. package/funcs/accountReconfigureBasin.d.ts.map +1 -1
  22. package/funcs/accountReconfigureBasin.js +11 -6
  23. package/funcs/accountReconfigureBasin.js.map +1 -1
  24. package/funcs/basinCreateStream.d.ts +2 -1
  25. package/funcs/basinCreateStream.d.ts.map +1 -1
  26. package/funcs/basinCreateStream.js +11 -6
  27. package/funcs/basinCreateStream.js.map +1 -1
  28. package/funcs/basinDeleteStream.d.ts +2 -1
  29. package/funcs/basinDeleteStream.d.ts.map +1 -1
  30. package/funcs/basinDeleteStream.js +11 -6
  31. package/funcs/basinDeleteStream.js.map +1 -1
  32. package/funcs/basinGetStreamConfig.d.ts +2 -1
  33. package/funcs/basinGetStreamConfig.d.ts.map +1 -1
  34. package/funcs/basinGetStreamConfig.js +11 -6
  35. package/funcs/basinGetStreamConfig.js.map +1 -1
  36. package/funcs/basinListStreams.d.ts +2 -1
  37. package/funcs/basinListStreams.d.ts.map +1 -1
  38. package/funcs/basinListStreams.js +19 -6
  39. package/funcs/basinListStreams.js.map +1 -1
  40. package/funcs/basinReconfigureStream.d.ts +2 -1
  41. package/funcs/basinReconfigureStream.d.ts.map +1 -1
  42. package/funcs/basinReconfigureStream.js +11 -6
  43. package/funcs/basinReconfigureStream.js.map +1 -1
  44. package/funcs/streamAppend.d.ts +2 -1
  45. package/funcs/streamAppend.d.ts.map +1 -1
  46. package/funcs/streamAppend.js +11 -6
  47. package/funcs/streamAppend.js.map +1 -1
  48. package/funcs/streamCheckTail.d.ts +2 -1
  49. package/funcs/streamCheckTail.d.ts.map +1 -1
  50. package/funcs/streamCheckTail.js +11 -6
  51. package/funcs/streamCheckTail.js.map +1 -1
  52. package/funcs/streamRead.d.ts +2 -1
  53. package/funcs/streamRead.d.ts.map +1 -1
  54. package/funcs/streamRead.js +11 -6
  55. package/funcs/streamRead.js.map +1 -1
  56. package/hooks/types.d.ts +1 -0
  57. package/hooks/types.d.ts.map +1 -1
  58. package/index.extras.d.ts +38 -15
  59. package/index.extras.d.ts.map +1 -1
  60. package/index.extras.js +91 -46
  61. package/index.extras.js.map +1 -1
  62. package/jsr.json +1 -1
  63. package/lib/config.d.ts +6 -6
  64. package/lib/config.d.ts.map +1 -1
  65. package/lib/config.js +3 -3
  66. package/lib/config.js.map +1 -1
  67. package/lib/files.js.map +1 -1
  68. package/lib/primitives.d.ts +3 -0
  69. package/lib/primitives.d.ts.map +1 -1
  70. package/lib/primitives.js +7 -0
  71. package/lib/primitives.js.map +1 -1
  72. package/lib/sdks.d.ts +1 -1
  73. package/lib/sdks.d.ts.map +1 -1
  74. package/lib/security.d.ts.map +1 -1
  75. package/lib/security.js.map +1 -1
  76. package/mcp-server/build.d.mts.map +1 -0
  77. package/mcp-server/build.mjs +14 -0
  78. package/mcp-server/build.mjs.map +1 -0
  79. package/mcp-server/cli/start/command.d.ts +2 -0
  80. package/mcp-server/cli/start/command.d.ts.map +1 -0
  81. package/mcp-server/cli/start/command.js +129 -0
  82. package/mcp-server/cli/start/command.js.map +1 -0
  83. package/mcp-server/cli/start/impl.d.ts +17 -0
  84. package/mcp-server/cli/start/impl.d.ts.map +1 -0
  85. package/mcp-server/cli/start/impl.js +102 -0
  86. package/mcp-server/cli/start/impl.js.map +1 -0
  87. package/mcp-server/cli.d.ts +6 -0
  88. package/mcp-server/cli.d.ts.map +1 -0
  89. package/mcp-server/cli.js +10 -0
  90. package/mcp-server/cli.js.map +1 -0
  91. package/mcp-server/console-logger.d.ts +7 -0
  92. package/mcp-server/console-logger.d.ts.map +1 -0
  93. package/mcp-server/console-logger.js +59 -0
  94. package/mcp-server/console-logger.js.map +1 -0
  95. package/mcp-server/mcp-server.d.ts +2 -0
  96. package/mcp-server/mcp-server.d.ts.map +1 -0
  97. package/mcp-server/mcp-server.js +29 -0
  98. package/mcp-server/mcp-server.js.map +1 -0
  99. package/mcp-server/resources.d.ts +27 -0
  100. package/mcp-server/resources.d.ts.map +1 -0
  101. package/mcp-server/resources.js +51 -0
  102. package/mcp-server/resources.js.map +1 -0
  103. package/mcp-server/scopes.d.ts +3 -0
  104. package/mcp-server/scopes.d.ts.map +1 -0
  105. package/mcp-server/scopes.js +11 -0
  106. package/mcp-server/scopes.js.map +1 -0
  107. package/mcp-server/server.d.ts +12 -0
  108. package/mcp-server/server.d.ts.map +1 -0
  109. package/mcp-server/server.js +51 -0
  110. package/mcp-server/server.js.map +1 -0
  111. package/mcp-server/shared.d.ts +7 -0
  112. package/mcp-server/shared.d.ts.map +1 -0
  113. package/mcp-server/shared.js +98 -0
  114. package/mcp-server/shared.js.map +1 -0
  115. package/mcp-server/tools/accountCreateBasin.d.ts +8 -0
  116. package/mcp-server/tools/accountCreateBasin.d.ts.map +1 -0
  117. package/mcp-server/tools/accountCreateBasin.js +63 -0
  118. package/mcp-server/tools/accountCreateBasin.js.map +1 -0
  119. package/mcp-server/tools/accountDeleteBasin.d.ts +8 -0
  120. package/mcp-server/tools/accountDeleteBasin.d.ts.map +1 -0
  121. package/mcp-server/tools/accountDeleteBasin.js +62 -0
  122. package/mcp-server/tools/accountDeleteBasin.js.map +1 -0
  123. package/mcp-server/tools/accountGetBasinConfig.d.ts +8 -0
  124. package/mcp-server/tools/accountGetBasinConfig.d.ts.map +1 -0
  125. package/mcp-server/tools/accountGetBasinConfig.js +63 -0
  126. package/mcp-server/tools/accountGetBasinConfig.js.map +1 -0
  127. package/mcp-server/tools/accountListBasins.d.ts +8 -0
  128. package/mcp-server/tools/accountListBasins.d.ts.map +1 -0
  129. package/mcp-server/tools/accountListBasins.js +63 -0
  130. package/mcp-server/tools/accountListBasins.js.map +1 -0
  131. package/mcp-server/tools/accountReconfigureBasin.d.ts +8 -0
  132. package/mcp-server/tools/accountReconfigureBasin.d.ts.map +1 -0
  133. package/mcp-server/tools/accountReconfigureBasin.js +63 -0
  134. package/mcp-server/tools/accountReconfigureBasin.js.map +1 -0
  135. package/mcp-server/tools/basinCreateStream.d.ts +8 -0
  136. package/mcp-server/tools/basinCreateStream.d.ts.map +1 -0
  137. package/mcp-server/tools/basinCreateStream.js +63 -0
  138. package/mcp-server/tools/basinCreateStream.js.map +1 -0
  139. package/mcp-server/tools/basinDeleteStream.d.ts +8 -0
  140. package/mcp-server/tools/basinDeleteStream.d.ts.map +1 -0
  141. package/mcp-server/tools/basinDeleteStream.js +62 -0
  142. package/mcp-server/tools/basinDeleteStream.js.map +1 -0
  143. package/mcp-server/tools/basinGetStreamConfig.d.ts +8 -0
  144. package/mcp-server/tools/basinGetStreamConfig.d.ts.map +1 -0
  145. package/mcp-server/tools/basinGetStreamConfig.js +63 -0
  146. package/mcp-server/tools/basinGetStreamConfig.js.map +1 -0
  147. package/mcp-server/tools/basinListStreams.d.ts +8 -0
  148. package/mcp-server/tools/basinListStreams.d.ts.map +1 -0
  149. package/mcp-server/tools/basinListStreams.js +63 -0
  150. package/mcp-server/tools/basinListStreams.js.map +1 -0
  151. package/mcp-server/tools/basinReconfigureStream.d.ts +8 -0
  152. package/mcp-server/tools/basinReconfigureStream.d.ts.map +1 -0
  153. package/mcp-server/tools/basinReconfigureStream.js +63 -0
  154. package/mcp-server/tools/basinReconfigureStream.js.map +1 -0
  155. package/mcp-server/tools/streamAppend.d.ts +8 -0
  156. package/mcp-server/tools/streamAppend.d.ts.map +1 -0
  157. package/mcp-server/tools/streamAppend.js +65 -0
  158. package/mcp-server/tools/streamAppend.js.map +1 -0
  159. package/mcp-server/tools/streamCheckTail.d.ts +8 -0
  160. package/mcp-server/tools/streamCheckTail.d.ts.map +1 -0
  161. package/mcp-server/tools/streamCheckTail.js +65 -0
  162. package/mcp-server/tools/streamCheckTail.js.map +1 -0
  163. package/mcp-server/tools/streamRead.d.ts +8 -0
  164. package/mcp-server/tools/streamRead.d.ts.map +1 -0
  165. package/mcp-server/tools/streamRead.js +65 -0
  166. package/mcp-server/tools/streamRead.js.map +1 -0
  167. package/mcp-server/tools.d.ts +25 -0
  168. package/mcp-server/tools.d.ts.map +1 -0
  169. package/mcp-server/tools.js +74 -0
  170. package/mcp-server/tools.js.map +1 -0
  171. package/models/components/endpoints.d.ts +67 -0
  172. package/models/components/endpoints.d.ts.map +1 -0
  173. package/models/components/endpoints.js +126 -0
  174. package/models/components/endpoints.js.map +1 -0
  175. package/package.json +16 -2
  176. package/src/funcs/accountCreateBasin.ts +38 -7
  177. package/src/funcs/accountDeleteBasin.ts +39 -7
  178. package/src/funcs/accountGetBasinConfig.ts +38 -7
  179. package/src/funcs/accountListBasins.ts +49 -7
  180. package/src/funcs/accountReconfigureBasin.ts +38 -7
  181. package/src/funcs/basinCreateStream.ts +38 -7
  182. package/src/funcs/basinDeleteStream.ts +39 -7
  183. package/src/funcs/basinGetStreamConfig.ts +38 -7
  184. package/src/funcs/basinListStreams.ts +49 -7
  185. package/src/funcs/basinReconfigureStream.ts +38 -7
  186. package/src/funcs/streamAppend.ts +38 -7
  187. package/src/funcs/streamCheckTail.ts +38 -7
  188. package/src/funcs/streamRead.ts +38 -7
  189. package/src/hooks/types.ts +1 -0
  190. package/src/index.extras.ts +113 -49
  191. package/src/lib/config.ts +6 -7
  192. package/src/lib/files.ts +1 -1
  193. package/src/lib/primitives.ts +14 -0
  194. package/src/lib/sdks.ts +1 -1
  195. package/src/lib/security.ts +0 -1
  196. package/src/mcp-server/cli/start/command.ts +98 -0
  197. package/src/mcp-server/cli/start/impl.ts +131 -0
  198. package/src/mcp-server/cli.ts +13 -0
  199. package/src/mcp-server/console-logger.ts +71 -0
  200. package/src/mcp-server/mcp-server.ts +26 -0
  201. package/src/mcp-server/resources.ts +96 -0
  202. package/src/mcp-server/scopes.ts +10 -0
  203. package/src/mcp-server/server.ts +60 -0
  204. package/src/mcp-server/shared.ts +75 -0
  205. package/src/mcp-server/tools/accountCreateBasin.ts +36 -0
  206. package/src/mcp-server/tools/accountDeleteBasin.ts +34 -0
  207. package/src/mcp-server/tools/accountGetBasinConfig.ts +36 -0
  208. package/src/mcp-server/tools/accountListBasins.ts +36 -0
  209. package/src/mcp-server/tools/accountReconfigureBasin.ts +36 -0
  210. package/src/mcp-server/tools/basinCreateStream.ts +36 -0
  211. package/src/mcp-server/tools/basinDeleteStream.ts +34 -0
  212. package/src/mcp-server/tools/basinGetStreamConfig.ts +36 -0
  213. package/src/mcp-server/tools/basinListStreams.ts +36 -0
  214. package/src/mcp-server/tools/basinReconfigureStream.ts +36 -0
  215. package/src/mcp-server/tools/streamAppend.ts +38 -0
  216. package/src/mcp-server/tools/streamCheckTail.ts +38 -0
  217. package/src/mcp-server/tools/streamRead.ts +38 -0
  218. package/src/mcp-server/tools.ts +116 -0
  219. package/src/models/components/endpoints.ts +159 -0
  220. package/src/types/async.ts +68 -0
  221. package/types/async.d.ts +23 -0
  222. package/types/async.d.ts.map +1 -0
  223. package/types/async.js +44 -0
  224. package/types/async.js.map +1 -0
@@ -23,6 +23,7 @@ import * as errors from "../models/errors/index.js";
23
23
  import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
24
24
  import * as operations from "../models/operations/index.js";
25
25
  import { ListStreamsServerList } from "../models/operations/liststreams.js";
26
+ import { APICall, APIPromise } from "../types/async.js";
26
27
  import { Result } from "../types/fp.js";
27
28
  import {
28
29
  createPageIterator,
@@ -34,11 +35,11 @@ import {
34
35
  /**
35
36
  * List Streams.
36
37
  */
37
- export async function basinListStreams(
38
+ export function basinListStreams(
38
39
  client: S2Core,
39
40
  request: operations.ListStreamsRequest,
40
41
  options?: RequestOptions,
41
- ): Promise<
42
+ ): APIPromise<
42
43
  PageIterator<
43
44
  Result<
44
45
  operations.ListStreamsResponse,
@@ -55,6 +56,38 @@ export async function basinListStreams(
55
56
  >,
56
57
  { cursor: string }
57
58
  >
59
+ > {
60
+ return new APIPromise($do(
61
+ client,
62
+ request,
63
+ options,
64
+ ));
65
+ }
66
+
67
+ async function $do(
68
+ client: S2Core,
69
+ request: operations.ListStreamsRequest,
70
+ options?: RequestOptions,
71
+ ): Promise<
72
+ [
73
+ PageIterator<
74
+ Result<
75
+ operations.ListStreamsResponse,
76
+ | errors.ErrorResponse
77
+ | errors.RetryableError
78
+ | errors.RetryableError
79
+ | APIError
80
+ | SDKValidationError
81
+ | UnexpectedClientError
82
+ | InvalidRequestError
83
+ | RequestAbortedError
84
+ | RequestTimeoutError
85
+ | ConnectionError
86
+ >,
87
+ { cursor: string }
88
+ >,
89
+ APICall,
90
+ ]
58
91
  > {
59
92
  const parsed = safeParse(
60
93
  request,
@@ -62,7 +95,7 @@ export async function basinListStreams(
62
95
  "Input validation failed",
63
96
  );
64
97
  if (!parsed.ok) {
65
- return haltIterator(parsed);
98
+ return [haltIterator(parsed), { status: "invalid" }];
66
99
  }
67
100
  const payload = parsed.value;
68
101
  const body = null;
@@ -89,6 +122,7 @@ export async function basinListStreams(
89
122
  const requestSecurity = resolveGlobalSecurity(securityInput);
90
123
 
91
124
  const context = {
125
+ baseURL: baseURL ?? "",
92
126
  operationID: "list_streams",
93
127
  oAuth2Scopes: [],
94
128
 
@@ -112,7 +146,7 @@ export async function basinListStreams(
112
146
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
113
147
  }, options);
114
148
  if (!requestRes.ok) {
115
- return haltIterator(requestRes);
149
+ return [haltIterator(requestRes), { status: "invalid" }];
116
150
  }
117
151
  const req = requestRes.value;
118
152
 
@@ -123,7 +157,7 @@ export async function basinListStreams(
123
157
  retryCodes: context.retryCodes,
124
158
  });
125
159
  if (!doResult.ok) {
126
- return haltIterator(doResult);
160
+ return [haltIterator(doResult), { status: "request-error", request: req }];
127
161
  }
128
162
  const response = doResult.value;
129
163
 
@@ -154,7 +188,11 @@ export async function basinListStreams(
154
188
  M.fail("5XX"),
155
189
  )(response, { extraFields: responseFields });
156
190
  if (!result.ok) {
157
- return haltIterator(result);
191
+ return [haltIterator(result), {
192
+ status: "complete",
193
+ request: req,
194
+ response,
195
+ }];
158
196
  }
159
197
 
160
198
  const nextFunc = (
@@ -196,5 +234,9 @@ export async function basinListStreams(
196
234
  };
197
235
 
198
236
  const page = { ...result, ...nextFunc(raw) };
199
- return { ...page, ...createPageIterator(page, (v) => !v.ok) };
237
+ return [{ ...page, ...createPageIterator(page, (v) => !v.ok) }, {
238
+ status: "complete",
239
+ request: req,
240
+ response,
241
+ }];
200
242
  }
@@ -23,16 +23,17 @@ import * as errors from "../models/errors/index.js";
23
23
  import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
24
24
  import * as operations from "../models/operations/index.js";
25
25
  import { ReconfigureStreamServerList } from "../models/operations/reconfigurestream.js";
26
+ import { APICall, APIPromise } from "../types/async.js";
26
27
  import { Result } from "../types/fp.js";
27
28
 
28
29
  /**
29
30
  * Update stream configuration.
30
31
  */
31
- export async function basinReconfigureStream(
32
+ export function basinReconfigureStream(
32
33
  client: S2Core,
33
34
  request: operations.ReconfigureStreamRequest,
34
35
  options?: RequestOptions,
35
- ): Promise<
36
+ ): APIPromise<
36
37
  Result<
37
38
  components.StreamConfig,
38
39
  | errors.ErrorResponse
@@ -46,6 +47,35 @@ export async function basinReconfigureStream(
46
47
  | RequestTimeoutError
47
48
  | ConnectionError
48
49
  >
50
+ > {
51
+ return new APIPromise($do(
52
+ client,
53
+ request,
54
+ options,
55
+ ));
56
+ }
57
+
58
+ async function $do(
59
+ client: S2Core,
60
+ request: operations.ReconfigureStreamRequest,
61
+ options?: RequestOptions,
62
+ ): Promise<
63
+ [
64
+ Result<
65
+ components.StreamConfig,
66
+ | errors.ErrorResponse
67
+ | errors.RetryableError
68
+ | errors.RetryableError
69
+ | APIError
70
+ | SDKValidationError
71
+ | UnexpectedClientError
72
+ | InvalidRequestError
73
+ | RequestAbortedError
74
+ | RequestTimeoutError
75
+ | ConnectionError
76
+ >,
77
+ APICall,
78
+ ]
49
79
  > {
50
80
  const parsed = safeParse(
51
81
  request,
@@ -53,7 +83,7 @@ export async function basinReconfigureStream(
53
83
  "Input validation failed",
54
84
  );
55
85
  if (!parsed.ok) {
56
- return parsed;
86
+ return [parsed, { status: "invalid" }];
57
87
  }
58
88
  const payload = parsed.value;
59
89
  const body = encodeJSON("body", payload.StreamConfig, { explode: true });
@@ -82,6 +112,7 @@ export async function basinReconfigureStream(
82
112
  const requestSecurity = resolveGlobalSecurity(securityInput);
83
113
 
84
114
  const context = {
115
+ baseURL: baseURL ?? "",
85
116
  operationID: "reconfigure_stream",
86
117
  oAuth2Scopes: [],
87
118
 
@@ -104,7 +135,7 @@ export async function basinReconfigureStream(
104
135
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
105
136
  }, options);
106
137
  if (!requestRes.ok) {
107
- return requestRes;
138
+ return [requestRes, { status: "invalid" }];
108
139
  }
109
140
  const req = requestRes.value;
110
141
 
@@ -115,7 +146,7 @@ export async function basinReconfigureStream(
115
146
  retryCodes: context.retryCodes,
116
147
  });
117
148
  if (!doResult.ok) {
118
- return doResult;
149
+ return [doResult, { status: "request-error", request: req }];
119
150
  }
120
151
  const response = doResult.value;
121
152
 
@@ -144,8 +175,8 @@ export async function basinReconfigureStream(
144
175
  M.fail("5XX"),
145
176
  )(response, { extraFields: responseFields });
146
177
  if (!result.ok) {
147
- return result;
178
+ return [result, { status: "complete", request: req, response }];
148
179
  }
149
180
 
150
- return result;
181
+ return [result, { status: "complete", request: req, response }];
151
182
  }
@@ -23,6 +23,7 @@ import * as errors from "../models/errors/index.js";
23
23
  import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
24
24
  import { AppendServerList } from "../models/operations/append.js";
25
25
  import * as operations from "../models/operations/index.js";
26
+ import { APICall, APIPromise } from "../types/async.js";
26
27
  import { Result } from "../types/fp.js";
27
28
 
28
29
  /**
@@ -31,11 +32,11 @@ import { Result } from "../types/fp.js";
31
32
  * @remarks
32
33
  * Append a batch of records to a stream.
33
34
  */
34
- export async function streamAppend(
35
+ export function streamAppend(
35
36
  client: S2Core,
36
37
  request: operations.AppendRequest,
37
38
  options?: RequestOptions,
38
- ): Promise<
39
+ ): APIPromise<
39
40
  Result<
40
41
  components.AppendOutput,
41
42
  | errors.ErrorResponse
@@ -49,6 +50,35 @@ export async function streamAppend(
49
50
  | RequestTimeoutError
50
51
  | ConnectionError
51
52
  >
53
+ > {
54
+ return new APIPromise($do(
55
+ client,
56
+ request,
57
+ options,
58
+ ));
59
+ }
60
+
61
+ async function $do(
62
+ client: S2Core,
63
+ request: operations.AppendRequest,
64
+ options?: RequestOptions,
65
+ ): Promise<
66
+ [
67
+ Result<
68
+ components.AppendOutput,
69
+ | errors.ErrorResponse
70
+ | errors.RetryableError
71
+ | errors.RetryableError
72
+ | APIError
73
+ | SDKValidationError
74
+ | UnexpectedClientError
75
+ | InvalidRequestError
76
+ | RequestAbortedError
77
+ | RequestTimeoutError
78
+ | ConnectionError
79
+ >,
80
+ APICall,
81
+ ]
52
82
  > {
53
83
  const parsed = safeParse(
54
84
  request,
@@ -56,7 +86,7 @@ export async function streamAppend(
56
86
  "Input validation failed",
57
87
  );
58
88
  if (!parsed.ok) {
59
- return parsed;
89
+ return [parsed, { status: "invalid" }];
60
90
  }
61
91
  const payload = parsed.value;
62
92
  const body = encodeJSON("body", payload.AppendInput, { explode: true });
@@ -89,6 +119,7 @@ export async function streamAppend(
89
119
  const requestSecurity = resolveGlobalSecurity(securityInput);
90
120
 
91
121
  const context = {
122
+ baseURL: baseURL ?? "",
92
123
  operationID: "append",
93
124
  oAuth2Scopes: [],
94
125
 
@@ -111,7 +142,7 @@ export async function streamAppend(
111
142
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
112
143
  }, options);
113
144
  if (!requestRes.ok) {
114
- return requestRes;
145
+ return [requestRes, { status: "invalid" }];
115
146
  }
116
147
  const req = requestRes.value;
117
148
 
@@ -122,7 +153,7 @@ export async function streamAppend(
122
153
  retryCodes: context.retryCodes,
123
154
  });
124
155
  if (!doResult.ok) {
125
- return doResult;
156
+ return [doResult, { status: "request-error", request: req }];
126
157
  }
127
158
  const response = doResult.value;
128
159
 
@@ -151,8 +182,8 @@ export async function streamAppend(
151
182
  M.fail("5XX"),
152
183
  )(response, { extraFields: responseFields });
153
184
  if (!result.ok) {
154
- return result;
185
+ return [result, { status: "complete", request: req, response }];
155
186
  }
156
187
 
157
- return result;
188
+ return [result, { status: "complete", request: req, response }];
158
189
  }
@@ -23,6 +23,7 @@ import * as errors from "../models/errors/index.js";
23
23
  import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
24
24
  import { CheckTailServerList } from "../models/operations/checktail.js";
25
25
  import * as operations from "../models/operations/index.js";
26
+ import { APICall, APIPromise } from "../types/async.js";
26
27
  import { Result } from "../types/fp.js";
27
28
 
28
29
  /**
@@ -31,11 +32,11 @@ import { Result } from "../types/fp.js";
31
32
  * @remarks
32
33
  * Check the sequence number that will be assigned to the next record on a stream.
33
34
  */
34
- export async function streamCheckTail(
35
+ export function streamCheckTail(
35
36
  client: S2Core,
36
37
  request: operations.CheckTailRequest,
37
38
  options?: RequestOptions,
38
- ): Promise<
39
+ ): APIPromise<
39
40
  Result<
40
41
  components.CheckTailResponse,
41
42
  | errors.ErrorResponse
@@ -49,6 +50,35 @@ export async function streamCheckTail(
49
50
  | RequestTimeoutError
50
51
  | ConnectionError
51
52
  >
53
+ > {
54
+ return new APIPromise($do(
55
+ client,
56
+ request,
57
+ options,
58
+ ));
59
+ }
60
+
61
+ async function $do(
62
+ client: S2Core,
63
+ request: operations.CheckTailRequest,
64
+ options?: RequestOptions,
65
+ ): Promise<
66
+ [
67
+ Result<
68
+ components.CheckTailResponse,
69
+ | errors.ErrorResponse
70
+ | errors.RetryableError
71
+ | errors.RetryableError
72
+ | APIError
73
+ | SDKValidationError
74
+ | UnexpectedClientError
75
+ | InvalidRequestError
76
+ | RequestAbortedError
77
+ | RequestTimeoutError
78
+ | ConnectionError
79
+ >,
80
+ APICall,
81
+ ]
52
82
  > {
53
83
  const parsed = safeParse(
54
84
  request,
@@ -56,7 +86,7 @@ export async function streamCheckTail(
56
86
  "Input validation failed",
57
87
  );
58
88
  if (!parsed.ok) {
59
- return parsed;
89
+ return [parsed, { status: "invalid" }];
60
90
  }
61
91
  const payload = parsed.value;
62
92
  const body = null;
@@ -84,6 +114,7 @@ export async function streamCheckTail(
84
114
  const requestSecurity = resolveGlobalSecurity(securityInput);
85
115
 
86
116
  const context = {
117
+ baseURL: baseURL ?? "",
87
118
  operationID: "check_tail",
88
119
  oAuth2Scopes: [],
89
120
 
@@ -106,7 +137,7 @@ export async function streamCheckTail(
106
137
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
107
138
  }, options);
108
139
  if (!requestRes.ok) {
109
- return requestRes;
140
+ return [requestRes, { status: "invalid" }];
110
141
  }
111
142
  const req = requestRes.value;
112
143
 
@@ -117,7 +148,7 @@ export async function streamCheckTail(
117
148
  retryCodes: context.retryCodes,
118
149
  });
119
150
  if (!doResult.ok) {
120
- return doResult;
151
+ return [doResult, { status: "request-error", request: req }];
121
152
  }
122
153
  const response = doResult.value;
123
154
 
@@ -146,8 +177,8 @@ export async function streamCheckTail(
146
177
  M.fail("5XX"),
147
178
  )(response, { extraFields: responseFields });
148
179
  if (!result.ok) {
149
- return result;
180
+ return [result, { status: "complete", request: req, response }];
150
181
  }
151
182
 
152
- return result;
183
+ return [result, { status: "complete", request: req, response }];
153
184
  }
@@ -22,6 +22,7 @@ import * as errors from "../models/errors/index.js";
22
22
  import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
23
23
  import * as operations from "../models/operations/index.js";
24
24
  import { ReadServerList } from "../models/operations/read.js";
25
+ import { APICall, APIPromise } from "../types/async.js";
25
26
  import { Result } from "../types/fp.js";
26
27
 
27
28
  export enum ReadAcceptEnum {
@@ -35,11 +36,11 @@ export enum ReadAcceptEnum {
35
36
  * @remarks
36
37
  * Retrieve a batch of records, or set `Accept: text/event-stream` to stream using server-sent events.
37
38
  */
38
- export async function streamRead(
39
+ export function streamRead(
39
40
  client: S2Core,
40
41
  request: operations.ReadRequest,
41
42
  options?: RequestOptions & { acceptHeaderOverride?: ReadAcceptEnum },
42
- ): Promise<
43
+ ): APIPromise<
43
44
  Result<
44
45
  operations.ReadResponse,
45
46
  | errors.ErrorResponse
@@ -53,6 +54,35 @@ export async function streamRead(
53
54
  | RequestTimeoutError
54
55
  | ConnectionError
55
56
  >
57
+ > {
58
+ return new APIPromise($do(
59
+ client,
60
+ request,
61
+ options,
62
+ ));
63
+ }
64
+
65
+ async function $do(
66
+ client: S2Core,
67
+ request: operations.ReadRequest,
68
+ options?: RequestOptions & { acceptHeaderOverride?: ReadAcceptEnum },
69
+ ): Promise<
70
+ [
71
+ Result<
72
+ operations.ReadResponse,
73
+ | errors.ErrorResponse
74
+ | errors.RetryableError
75
+ | errors.RetryableError
76
+ | APIError
77
+ | SDKValidationError
78
+ | UnexpectedClientError
79
+ | InvalidRequestError
80
+ | RequestAbortedError
81
+ | RequestTimeoutError
82
+ | ConnectionError
83
+ >,
84
+ APICall,
85
+ ]
56
86
  > {
57
87
  const parsed = safeParse(
58
88
  request,
@@ -60,7 +90,7 @@ export async function streamRead(
60
90
  "Input validation failed",
61
91
  );
62
92
  if (!parsed.ok) {
63
- return parsed;
93
+ return [parsed, { status: "invalid" }];
64
94
  }
65
95
  const payload = parsed.value;
66
96
  const body = null;
@@ -98,6 +128,7 @@ export async function streamRead(
98
128
  const requestSecurity = resolveGlobalSecurity(securityInput);
99
129
 
100
130
  const context = {
131
+ baseURL: baseURL ?? "",
101
132
  operationID: "read",
102
133
  oAuth2Scopes: [],
103
134
 
@@ -121,7 +152,7 @@ export async function streamRead(
121
152
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
122
153
  }, options);
123
154
  if (!requestRes.ok) {
124
- return requestRes;
155
+ return [requestRes, { status: "invalid" }];
125
156
  }
126
157
  const req = requestRes.value;
127
158
 
@@ -132,7 +163,7 @@ export async function streamRead(
132
163
  retryCodes: context.retryCodes,
133
164
  });
134
165
  if (!doResult.ok) {
135
- return doResult;
166
+ return [doResult, { status: "request-error", request: req }];
136
167
  }
137
168
  const response = doResult.value;
138
169
 
@@ -162,8 +193,8 @@ export async function streamRead(
162
193
  M.fail("5XX"),
163
194
  )(response, { extraFields: responseFields });
164
195
  if (!result.ok) {
165
- return result;
196
+ return [result, { status: "complete", request: req, response }];
166
197
  }
167
198
 
168
- return result;
199
+ return [result, { status: "complete", request: req, response }];
169
200
  }
@@ -7,6 +7,7 @@ import { RetryConfig } from "../lib/retries.js";
7
7
  import { SecurityState } from "../lib/security.js";
8
8
 
9
9
  export type HookContext = {
10
+ baseURL: string | URL;
10
11
  operationID: string;
11
12
  oAuth2Scopes?: string[];
12
13
  securitySource?: any | (() => Promise<any>);