@tinycloudlabs/sdk-services 1.0.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 (57) hide show
  1. package/dist/base/BaseService.d.ts +151 -0
  2. package/dist/base/BaseService.d.ts.map +1 -0
  3. package/dist/base/BaseService.js +221 -0
  4. package/dist/base/BaseService.js.map +1 -0
  5. package/dist/base/index.d.ts +6 -0
  6. package/dist/base/index.d.ts.map +1 -0
  7. package/dist/base/index.js +6 -0
  8. package/dist/base/index.js.map +1 -0
  9. package/dist/base/types.d.ts +36 -0
  10. package/dist/base/types.d.ts.map +1 -0
  11. package/dist/base/types.js +7 -0
  12. package/dist/base/types.js.map +1 -0
  13. package/dist/context.d.ts +142 -0
  14. package/dist/context.d.ts.map +1 -0
  15. package/dist/context.js +218 -0
  16. package/dist/context.js.map +1 -0
  17. package/dist/errors.d.ts +43 -0
  18. package/dist/errors.d.ts.map +1 -0
  19. package/dist/errors.js +111 -0
  20. package/dist/errors.js.map +1 -0
  21. package/dist/index.d.ts +47 -0
  22. package/dist/index.d.ts.map +1 -0
  23. package/dist/index.js +53 -0
  24. package/dist/index.js.map +1 -0
  25. package/dist/kv/IKVService.d.ts +148 -0
  26. package/dist/kv/IKVService.d.ts.map +1 -0
  27. package/dist/kv/IKVService.js +8 -0
  28. package/dist/kv/IKVService.js.map +1 -0
  29. package/dist/kv/KVService.d.ts +153 -0
  30. package/dist/kv/KVService.d.ts.map +1 -0
  31. package/dist/kv/KVService.js +337 -0
  32. package/dist/kv/KVService.js.map +1 -0
  33. package/dist/kv/PrefixedKVService.d.ts +246 -0
  34. package/dist/kv/PrefixedKVService.d.ts.map +1 -0
  35. package/dist/kv/PrefixedKVService.js +145 -0
  36. package/dist/kv/PrefixedKVService.js.map +1 -0
  37. package/dist/kv/index.d.ts +10 -0
  38. package/dist/kv/index.d.ts.map +1 -0
  39. package/dist/kv/index.js +12 -0
  40. package/dist/kv/index.js.map +1 -0
  41. package/dist/kv/types.d.ts +204 -0
  42. package/dist/kv/types.d.ts.map +1 -0
  43. package/dist/kv/types.js +16 -0
  44. package/dist/kv/types.js.map +1 -0
  45. package/dist/types.d.ts +259 -0
  46. package/dist/types.d.ts.map +1 -0
  47. package/dist/types.js +72 -0
  48. package/dist/types.js.map +1 -0
  49. package/dist/types.schema.d.ts +652 -0
  50. package/dist/types.schema.d.ts.map +1 -0
  51. package/dist/types.schema.js +342 -0
  52. package/dist/types.schema.js.map +1 -0
  53. package/dist/types.schema.test.d.ts +5 -0
  54. package/dist/types.schema.test.d.ts.map +1 -0
  55. package/dist/types.schema.test.js +677 -0
  56. package/dist/types.schema.test.js.map +1 -0
  57. package/package.json +42 -0
@@ -0,0 +1,342 @@
1
+ /**
2
+ * Zod schemas for SDK Services API response types.
3
+ *
4
+ * This is the source of truth for service response types. TypeScript types
5
+ * are derived from these schemas using z.infer<>.
6
+ *
7
+ * @packageDocumentation
8
+ */
9
+ import { z } from "zod";
10
+ // =============================================================================
11
+ // Service Error Schema
12
+ // =============================================================================
13
+ /**
14
+ * Schema for service error with structured information.
15
+ */
16
+ export const ServiceErrorSchema = z.object({
17
+ /** Error code for programmatic handling (e.g., 'KV_NOT_FOUND', 'AUTH_EXPIRED') */
18
+ code: z.string(),
19
+ /** Human-readable error message */
20
+ message: z.string(),
21
+ /** Service that produced the error (e.g., 'kv', 'sql') */
22
+ service: z.string(),
23
+ /** Original error if this wraps another error - not validated since Error is a class */
24
+ cause: z.unknown().optional(),
25
+ /** Additional metadata about the error - passthrough allows any object properties */
26
+ meta: z.object({}).passthrough().optional(),
27
+ });
28
+ // =============================================================================
29
+ // Result Schema Factory
30
+ // =============================================================================
31
+ /**
32
+ * Creates a Result schema for a given data type.
33
+ * Result is a discriminated union: { ok: true, data: T } | { ok: false, error: E }
34
+ *
35
+ * @param dataSchema - Zod schema for the success data type
36
+ * @param errorSchema - Zod schema for the error type (defaults to ServiceErrorSchema)
37
+ * @returns A Zod schema for Result<T, E>
38
+ *
39
+ * @example
40
+ * ```typescript
41
+ * const KVGetResultSchema = createResultSchema(z.string());
42
+ * type KVGetResult = z.infer<typeof KVGetResultSchema>;
43
+ * ```
44
+ */
45
+ export function createResultSchema(dataSchema, errorSchema = ServiceErrorSchema) {
46
+ return z.discriminatedUnion("ok", [
47
+ z.object({
48
+ ok: z.literal(true),
49
+ data: dataSchema,
50
+ }),
51
+ z.object({
52
+ ok: z.literal(false),
53
+ error: errorSchema,
54
+ }),
55
+ ]);
56
+ }
57
+ /**
58
+ * Pre-built Result schema with unknown data and ServiceError.
59
+ * Useful for generic validation before type narrowing.
60
+ */
61
+ export const GenericResultSchema = createResultSchema(z.unknown(), ServiceErrorSchema);
62
+ // =============================================================================
63
+ // KV Response Schemas
64
+ // =============================================================================
65
+ /**
66
+ * Schema for KV response headers metadata.
67
+ * Note: The `get` method is a function and cannot be validated with Zod.
68
+ * This schema validates the data properties only.
69
+ */
70
+ export const KVResponseHeadersSchema = z.object({
71
+ /** ETag for conditional requests */
72
+ etag: z.string().optional(),
73
+ /** Content type of the stored value */
74
+ contentType: z.string().optional(),
75
+ /** Last modification timestamp */
76
+ lastModified: z.string().optional(),
77
+ /** Content length in bytes */
78
+ contentLength: z.number().optional(),
79
+ });
80
+ /**
81
+ * Creates a KVResponse schema for a given data type.
82
+ *
83
+ * @param dataSchema - Zod schema for the data payload type
84
+ * @returns A Zod schema for KVResponse<T>
85
+ *
86
+ * @example
87
+ * ```typescript
88
+ * const UserResponseSchema = createKVResponseSchema(UserSchema);
89
+ * type UserResponse = z.infer<typeof UserResponseSchema>;
90
+ * ```
91
+ */
92
+ export function createKVResponseSchema(dataSchema) {
93
+ return z.object({
94
+ /** The data payload */
95
+ data: dataSchema,
96
+ /** Response headers with metadata */
97
+ headers: KVResponseHeadersSchema,
98
+ });
99
+ }
100
+ /**
101
+ * Generic KVResponse schema with unknown data.
102
+ * Useful for generic validation before type narrowing.
103
+ */
104
+ export const GenericKVResponseSchema = createKVResponseSchema(z.unknown());
105
+ /**
106
+ * Schema for KV list response.
107
+ */
108
+ export const KVListResponseSchema = z.object({
109
+ /** Array of keys matching the list criteria */
110
+ keys: z.array(z.string()),
111
+ });
112
+ /**
113
+ * Result schema for KV list operations.
114
+ */
115
+ export const KVListResultSchema = createResultSchema(KVListResponseSchema);
116
+ // =============================================================================
117
+ // Telemetry Event Schemas
118
+ // =============================================================================
119
+ /**
120
+ * Schema for service request event.
121
+ */
122
+ export const ServiceRequestEventSchema = z.object({
123
+ service: z.string(),
124
+ action: z.string(),
125
+ key: z.string().optional(),
126
+ timestamp: z.number(),
127
+ });
128
+ /**
129
+ * Schema for service response event.
130
+ */
131
+ export const ServiceResponseEventSchema = z.object({
132
+ service: z.string(),
133
+ action: z.string(),
134
+ ok: z.boolean(),
135
+ duration: z.number(),
136
+ status: z.number().optional(),
137
+ });
138
+ /**
139
+ * Schema for service error event.
140
+ */
141
+ export const ServiceErrorEventSchema = z.object({
142
+ service: z.string(),
143
+ error: ServiceErrorSchema,
144
+ });
145
+ /**
146
+ * Schema for service retry event.
147
+ */
148
+ export const ServiceRetryEventSchema = z.object({
149
+ service: z.string(),
150
+ attempt: z.number().int().positive(),
151
+ maxAttempts: z.number().int().positive(),
152
+ error: ServiceErrorSchema,
153
+ });
154
+ // =============================================================================
155
+ // Retry Policy Schema
156
+ // =============================================================================
157
+ /**
158
+ * Schema for retry policy configuration.
159
+ */
160
+ export const RetryPolicySchema = z.object({
161
+ /** Maximum number of attempts (including initial) */
162
+ maxAttempts: z.number().int().positive(),
163
+ /** Backoff strategy between retries */
164
+ backoff: z.enum(["none", "linear", "exponential"]),
165
+ /** Base delay in milliseconds for backoff calculation */
166
+ baseDelayMs: z.number().nonnegative(),
167
+ /** Maximum delay in milliseconds between retries */
168
+ maxDelayMs: z.number().nonnegative(),
169
+ /** Error codes that should trigger a retry */
170
+ retryableErrors: z.array(z.string()),
171
+ });
172
+ // =============================================================================
173
+ // Service Session Schema
174
+ // =============================================================================
175
+ /**
176
+ * Schema for service session data required for authenticated operations.
177
+ */
178
+ export const ServiceSessionSchema = z.object({
179
+ /** The delegation header containing the UCAN */
180
+ delegationHeader: z.object({
181
+ Authorization: z.string(),
182
+ }),
183
+ /** The delegation CID */
184
+ delegationCid: z.string(),
185
+ /** The space ID for this session */
186
+ spaceId: z.string(),
187
+ /** The verification method DID */
188
+ verificationMethod: z.string(),
189
+ /** The session key JWK (required for invoke) */
190
+ jwk: z.object({}).passthrough(),
191
+ });
192
+ // =============================================================================
193
+ // Validation Helpers
194
+ // =============================================================================
195
+ /**
196
+ * Validate service error against the schema.
197
+ *
198
+ * @param data - Unknown data to validate
199
+ * @returns Result with validated data or validation error
200
+ */
201
+ export function validateServiceError(data) {
202
+ const result = ServiceErrorSchema.safeParse(data);
203
+ if (!result.success) {
204
+ return {
205
+ ok: false,
206
+ error: {
207
+ code: "VALIDATION_ERROR",
208
+ message: result.error.message,
209
+ service: "validation",
210
+ meta: { issues: result.error.issues },
211
+ },
212
+ };
213
+ }
214
+ return { ok: true, data: result.data };
215
+ }
216
+ /**
217
+ * Validate KV list response against the schema.
218
+ *
219
+ * @param data - Unknown data to validate
220
+ * @returns Result with validated data or validation error
221
+ */
222
+ export function validateKVListResponse(data) {
223
+ const result = KVListResponseSchema.safeParse(data);
224
+ if (!result.success) {
225
+ return {
226
+ ok: false,
227
+ error: {
228
+ code: "VALIDATION_ERROR",
229
+ message: result.error.message,
230
+ service: "kv",
231
+ meta: { issues: result.error.issues },
232
+ },
233
+ };
234
+ }
235
+ return { ok: true, data: result.data };
236
+ }
237
+ /**
238
+ * Validate KV response headers against the schema.
239
+ *
240
+ * @param data - Unknown data to validate
241
+ * @returns Result with validated data or validation error
242
+ */
243
+ export function validateKVResponseHeaders(data) {
244
+ const result = KVResponseHeadersSchema.safeParse(data);
245
+ if (!result.success) {
246
+ return {
247
+ ok: false,
248
+ error: {
249
+ code: "VALIDATION_ERROR",
250
+ message: result.error.message,
251
+ service: "kv",
252
+ meta: { issues: result.error.issues },
253
+ },
254
+ };
255
+ }
256
+ return { ok: true, data: result.data };
257
+ }
258
+ /**
259
+ * Validate service session against the schema.
260
+ *
261
+ * @param data - Unknown data to validate
262
+ * @returns Result with validated data or validation error
263
+ */
264
+ export function validateServiceSession(data) {
265
+ const result = ServiceSessionSchema.safeParse(data);
266
+ if (!result.success) {
267
+ return {
268
+ ok: false,
269
+ error: {
270
+ code: "VALIDATION_ERROR",
271
+ message: result.error.message,
272
+ service: "session",
273
+ meta: { issues: result.error.issues },
274
+ },
275
+ };
276
+ }
277
+ return { ok: true, data: result.data };
278
+ }
279
+ /**
280
+ * Validate retry policy against the schema.
281
+ *
282
+ * @param data - Unknown data to validate
283
+ * @returns Result with validated data or validation error
284
+ */
285
+ export function validateRetryPolicy(data) {
286
+ const result = RetryPolicySchema.safeParse(data);
287
+ if (!result.success) {
288
+ return {
289
+ ok: false,
290
+ error: {
291
+ code: "VALIDATION_ERROR",
292
+ message: result.error.message,
293
+ service: "config",
294
+ meta: { issues: result.error.issues },
295
+ },
296
+ };
297
+ }
298
+ return { ok: true, data: result.data };
299
+ }
300
+ /**
301
+ * Validate service request event against the schema.
302
+ *
303
+ * @param data - Unknown data to validate
304
+ * @returns Result with validated data or validation error
305
+ */
306
+ export function validateServiceRequestEvent(data) {
307
+ const result = ServiceRequestEventSchema.safeParse(data);
308
+ if (!result.success) {
309
+ return {
310
+ ok: false,
311
+ error: {
312
+ code: "VALIDATION_ERROR",
313
+ message: result.error.message,
314
+ service: "telemetry",
315
+ meta: { issues: result.error.issues },
316
+ },
317
+ };
318
+ }
319
+ return { ok: true, data: result.data };
320
+ }
321
+ /**
322
+ * Validate service response event against the schema.
323
+ *
324
+ * @param data - Unknown data to validate
325
+ * @returns Result with validated data or validation error
326
+ */
327
+ export function validateServiceResponseEvent(data) {
328
+ const result = ServiceResponseEventSchema.safeParse(data);
329
+ if (!result.success) {
330
+ return {
331
+ ok: false,
332
+ error: {
333
+ code: "VALIDATION_ERROR",
334
+ message: result.error.message,
335
+ service: "telemetry",
336
+ meta: { issues: result.error.issues },
337
+ },
338
+ };
339
+ }
340
+ return { ok: true, data: result.data };
341
+ }
342
+ //# sourceMappingURL=types.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.schema.js","sourceRoot":"","sources":["../src/types.schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Tests for types.schema.ts Zod schemas.
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=types.schema.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.schema.test.d.ts","sourceRoot":"","sources":["../src/types.schema.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}