@camstack/types 1.2.332 → 1.2.334

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 (53) hide show
  1. package/dist/addon/base-addon.d.ts +32 -0
  2. package/dist/addon/secret-aware-context.d.ts +49 -6
  3. package/dist/addon/secret-settings-view.d.ts +23 -1
  4. package/dist/addon/secret-write-back.d.ts +40 -0
  5. package/dist/addon.js +5 -7
  6. package/dist/addon.mjs +5 -7
  7. package/dist/auth/app-callback.d.ts +28 -0
  8. package/dist/auth/sso-state.d.ts +16 -0
  9. package/dist/capabilities/addon-routes.cap.d.ts +3 -0
  10. package/dist/capabilities/addons.cap.d.ts +4 -4
  11. package/dist/capabilities/backup.cap.d.ts +101 -1
  12. package/dist/capabilities/broker.cap.d.ts +4 -4
  13. package/dist/capabilities/custom-model-registry.cap.d.ts +520 -0
  14. package/dist/capabilities/device-manager.cap.d.ts +4 -4
  15. package/dist/capabilities/hub-address.d.ts +2 -2
  16. package/dist/capabilities/index.d.ts +12 -6
  17. package/dist/capabilities/keychain-admin.cap.d.ts +83 -0
  18. package/dist/capabilities/login-method.cap.d.ts +5 -6
  19. package/dist/capabilities/nodes.cap.d.ts +8 -0
  20. package/dist/capabilities/notification-output.cap.d.ts +4 -4
  21. package/dist/capabilities/notification-rules.cap.d.ts +6 -6
  22. package/dist/capabilities/osd-manager.cap.d.ts +5 -5
  23. package/dist/capabilities/pipeline-analytics.cap.d.ts +39 -8
  24. package/dist/capabilities/recording.cap.d.ts +3 -3
  25. package/dist/capabilities/server-management.cap.d.ts +5 -5
  26. package/dist/capabilities/snapshot.cap.d.ts +2 -2
  27. package/dist/capabilities/sso-bridge.cap.d.ts +5 -2
  28. package/dist/capabilities/training-provider.cap.d.ts +373 -0
  29. package/dist/capabilities/training.cap.d.ts +1896 -0
  30. package/dist/capabilities/user-management.cap.d.ts +1 -64
  31. package/dist/capabilities/videoclips.cap.d.ts +3 -3
  32. package/dist/client.js +33 -5
  33. package/dist/client.mjs +33 -5
  34. package/dist/generated/addon-api.d.ts +872 -173
  35. package/dist/generated/cap-input-defaults.d.ts +1 -1
  36. package/dist/generated/capability-router-map.d.ts +10 -4
  37. package/dist/generated/collection-array-methods.d.ts +1 -1
  38. package/dist/generated/method-access-map.d.ts +1 -1
  39. package/dist/generated/method-device-selectors.d.ts +2 -2
  40. package/dist/generated/system-proxy.d.ts +5 -3
  41. package/dist/index.d.ts +3 -0
  42. package/dist/index.js +1469 -94
  43. package/dist/index.mjs +1420 -93
  44. package/dist/interfaces/addon-routes.d.ts +7 -0
  45. package/dist/interfaces/addon.d.ts +8 -0
  46. package/dist/interfaces/auth.d.ts +6 -3
  47. package/dist/interfaces/event-bus.d.ts +5 -0
  48. package/dist/schemas/auth-records.d.ts +1 -2
  49. package/dist/{sleep-ClNXPpWR.js → sleep-DiQYrfm9.js} +425 -75
  50. package/dist/{sleep-DujUvOcb.mjs → sleep-r3RWkGVx.mjs} +425 -75
  51. package/dist/training/index.d.ts +1 -0
  52. package/dist/training/trainer-contract.d.ts +468 -0
  53. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ export * from './trainer-contract.js';
@@ -0,0 +1,468 @@
1
+ /**
2
+ * The trainer contract — what the hub hands the cloud trainer and what it
3
+ * gets back (cloud training, D805+).
4
+ *
5
+ * The trainer (`hf/camstack-trainer`, published as the Hugging Face repo
6
+ * `camstack/camstack-trainer`) is a separate AGPL program the hub never
7
+ * imports: `job.json` goes in, files come out, and progress is `CAMSTACK_EVENT`
8
+ * lines on stdout. These schemas are the hub's half of that boundary; the
9
+ * trainer's pydantic models (and the JSON Schemas generated from them under
10
+ * `hf/camstack-trainer/schemas/`) are the other half. A change here is a
11
+ * change there, in the same piece of work.
12
+ *
13
+ * No `.default()` anywhere: defaults do not run on the addon cap path, so the
14
+ * orchestrator fills every field of a job spec explicitly.
15
+ */
16
+ import { z } from 'zod';
17
+ export declare const TRAINING_JOB_SCHEMA = "camstack.training/v1";
18
+ export declare const TRAINING_RESULT_SCHEMA = "camstack.training-result/v1";
19
+ /** The stdout prefix of a progress line. Anything else on stdout is log text. */
20
+ export declare const CAMSTACK_EVENT_PREFIX = "CAMSTACK_EVENT ";
21
+ /** What the trainer can export. Edge TPU is a later, separate image. */
22
+ export declare const TrainingExportSchema: z.ZodEnum<{
23
+ onnx: "onnx";
24
+ "openvino-fp16": "openvino-fp16";
25
+ "openvino-int8": "openvino-int8";
26
+ "coreml-fp16": "coreml-fp16";
27
+ }>;
28
+ export type TrainingExport = z.infer<typeof TrainingExportSchema>;
29
+ export declare const TrainingJobSpecSchema: z.ZodObject<{
30
+ schema: z.ZodLiteral<"camstack.training/v1">;
31
+ jobKey: z.ZodString;
32
+ target: z.ZodObject<{
33
+ kind: z.ZodLiteral<"detector">;
34
+ step: z.ZodLiteral<"object-detection">;
35
+ }, z.core.$strip>;
36
+ base: z.ZodObject<{
37
+ modelId: z.ZodString;
38
+ weights: z.ZodString;
39
+ imgsz: z.ZodNumber;
40
+ }, z.core.$strip>;
41
+ baseline: z.ZodObject<{
42
+ modelId: z.ZodString;
43
+ onnxUrl: z.ZodString;
44
+ imgsz: z.ZodNumber;
45
+ floors: z.ZodRecord<z.ZodString, z.ZodNumber>;
46
+ }, z.core.$strip>;
47
+ dataset: z.ZodObject<{
48
+ versionId: z.ZodString;
49
+ annotationHash: z.ZodString;
50
+ sha256: z.ZodString;
51
+ }, z.core.$strip>;
52
+ split: z.ZodObject<{
53
+ holdoutCameras: z.ZodArray<z.ZodNumber>;
54
+ holdoutLastDays: z.ZodNumber;
55
+ valFraction: z.ZodNumber;
56
+ seed: z.ZodNumber;
57
+ }, z.core.$strip>;
58
+ hyper: z.ZodObject<{
59
+ epochs: z.ZodNumber;
60
+ batch: z.ZodNumber;
61
+ lr0: z.ZodNumber;
62
+ freeze: z.ZodNumber;
63
+ patience: z.ZodNumber;
64
+ seed: z.ZodNumber;
65
+ }, z.core.$strip>;
66
+ replay: z.ZodObject<{
67
+ source: z.ZodLiteral<"coco2017">;
68
+ count: z.ZodNumber;
69
+ }, z.core.$strip>;
70
+ exports: z.ZodArray<z.ZodEnum<{
71
+ onnx: "onnx";
72
+ "openvino-fp16": "openvino-fp16";
73
+ "openvino-int8": "openvino-int8";
74
+ "coreml-fp16": "coreml-fp16";
75
+ }>>;
76
+ calibration: z.ZodObject<{
77
+ maxFrames: z.ZodNumber;
78
+ }, z.core.$strip>;
79
+ floors: z.ZodObject<{
80
+ minSupport: z.ZodNumber;
81
+ clamp: z.ZodNumber;
82
+ }, z.core.$strip>;
83
+ int8Gate: z.ZodObject<{
84
+ maxMap50Drop: z.ZodNumber;
85
+ }, z.core.$strip>;
86
+ catalog: z.ZodObject<{
87
+ id: z.ZodString;
88
+ name: z.ZodString;
89
+ }, z.core.$strip>;
90
+ }, z.core.$strip>;
91
+ export type TrainingJobSpec = z.infer<typeof TrainingJobSpecSchema>;
92
+ /** One regular file of the bundle. An mlpackage contributes one row per member. */
93
+ export declare const TrainingResultFileSchema: z.ZodObject<{
94
+ path: z.ZodString;
95
+ bytes: z.ZodNumber;
96
+ sha256: z.ZodString;
97
+ format: z.ZodEnum<{
98
+ onnx: "onnx";
99
+ coreml: "coreml";
100
+ openvino: "openvino";
101
+ pt: "pt";
102
+ }>;
103
+ variant: z.ZodEnum<{
104
+ int8: "int8";
105
+ base: "base";
106
+ }>;
107
+ }, z.core.$strip>;
108
+ export type TrainingResultFile = z.infer<typeof TrainingResultFileSchema>;
109
+ /** The trainer's half of a catalog entry; the hub completes it (labels, licence, group). */
110
+ export declare const TrainingCatalogDraftSchema: z.ZodObject<{
111
+ id: z.ZodString;
112
+ name: z.ZodString;
113
+ description: z.ZodString;
114
+ labels: z.ZodArray<z.ZodUnknown>;
115
+ inputSize: z.ZodObject<{
116
+ width: z.ZodNumber;
117
+ height: z.ZodNumber;
118
+ }, z.core.$strip>;
119
+ preprocessMode: z.ZodLiteral<"letterbox">;
120
+ defaultClassFloors: z.ZodRecord<z.ZodString, z.ZodNumber>;
121
+ formats: z.ZodObject<{
122
+ onnx: z.ZodOptional<z.ZodObject<{
123
+ url: z.ZodString;
124
+ sizeMB: z.ZodNumber;
125
+ isDirectory: z.ZodOptional<z.ZodBoolean>;
126
+ files: z.ZodOptional<z.ZodArray<z.ZodString>>;
127
+ runtimes: z.ZodOptional<z.ZodArray<z.ZodLiteral<"python">>>;
128
+ revision: z.ZodString;
129
+ }, z.core.$strip>>;
130
+ openvino: z.ZodOptional<z.ZodObject<{
131
+ url: z.ZodString;
132
+ sizeMB: z.ZodNumber;
133
+ isDirectory: z.ZodOptional<z.ZodBoolean>;
134
+ files: z.ZodOptional<z.ZodArray<z.ZodString>>;
135
+ runtimes: z.ZodOptional<z.ZodArray<z.ZodLiteral<"python">>>;
136
+ revision: z.ZodString;
137
+ }, z.core.$strip>>;
138
+ coreml: z.ZodOptional<z.ZodObject<{
139
+ url: z.ZodString;
140
+ sizeMB: z.ZodNumber;
141
+ isDirectory: z.ZodOptional<z.ZodBoolean>;
142
+ files: z.ZodOptional<z.ZodArray<z.ZodString>>;
143
+ runtimes: z.ZodOptional<z.ZodArray<z.ZodLiteral<"python">>>;
144
+ revision: z.ZodString;
145
+ }, z.core.$strip>>;
146
+ }, z.core.$strip>;
147
+ }, z.core.$strip>;
148
+ export type TrainingCatalogDraft = z.infer<typeof TrainingCatalogDraftSchema>;
149
+ /** One class of one model's holdout report (the eval harness's summary). */
150
+ export declare const TrainingEvalClassSchema: z.ZodObject<{
151
+ positives: z.ZodNumber;
152
+ floor: z.ZodNullable<z.ZodNumber>;
153
+ tp: z.ZodNumber;
154
+ fp: z.ZodNumber;
155
+ fn: z.ZodNumber;
156
+ precision: z.ZodNullable<z.ZodNumber>;
157
+ recall: z.ZodNullable<z.ZodNumber>;
158
+ ap50: z.ZodNullable<z.ZodNumber>;
159
+ recallByCamera: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodNumber>>>;
160
+ recallByLight: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodNumber>>>;
161
+ fpByCamera: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
162
+ smallFound: z.ZodOptional<z.ZodNumber>;
163
+ smallTotal: z.ZodOptional<z.ZodNumber>;
164
+ }, z.core.$loose>;
165
+ export type TrainingEvalClass = z.infer<typeof TrainingEvalClassSchema>;
166
+ export declare const TrainingEvalReportSchema: z.ZodObject<{
167
+ frames: z.ZodNumber;
168
+ classes: z.ZodRecord<z.ZodString, z.ZodObject<{
169
+ positives: z.ZodNumber;
170
+ floor: z.ZodNullable<z.ZodNumber>;
171
+ tp: z.ZodNumber;
172
+ fp: z.ZodNumber;
173
+ fn: z.ZodNumber;
174
+ precision: z.ZodNullable<z.ZodNumber>;
175
+ recall: z.ZodNullable<z.ZodNumber>;
176
+ ap50: z.ZodNullable<z.ZodNumber>;
177
+ recallByCamera: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodNumber>>>;
178
+ recallByLight: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodNumber>>>;
179
+ fpByCamera: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
180
+ smallFound: z.ZodOptional<z.ZodNumber>;
181
+ smallTotal: z.ZodOptional<z.ZodNumber>;
182
+ }, z.core.$loose>>;
183
+ }, z.core.$loose>;
184
+ export type TrainingEvalReport = z.infer<typeof TrainingEvalReportSchema>;
185
+ /**
186
+ * A succeeded result carries every block; a failed one carries the error and
187
+ * whatever was known by then — the other blocks are ABSENT, not null. The
188
+ * orchestrator checks the blocks it needs before it trusts a success.
189
+ */
190
+ export declare const TrainingResultSchema: z.ZodObject<{
191
+ schema: z.ZodLiteral<"camstack.training-result/v1">;
192
+ jobKey: z.ZodString;
193
+ status: z.ZodEnum<{
194
+ failed: "failed";
195
+ succeeded: "succeeded";
196
+ }>;
197
+ error: z.ZodNullable<z.ZodObject<{
198
+ stage: z.ZodString;
199
+ code: z.ZodString;
200
+ message: z.ZodString;
201
+ }, z.core.$strip>>;
202
+ trainer: z.ZodObject<{
203
+ version: z.ZodString;
204
+ revision: z.ZodString;
205
+ }, z.core.$strip>;
206
+ toolchain: z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>;
207
+ dataset: z.ZodOptional<z.ZodObject<{
208
+ versionId: z.ZodString;
209
+ annotationHash: z.ZodString;
210
+ sha256: z.ZodString;
211
+ frames: z.ZodObject<{
212
+ train: z.ZodNumber;
213
+ val: z.ZodNumber;
214
+ holdout: z.ZodNumber;
215
+ }, z.core.$strip>;
216
+ holdoutCameras: z.ZodArray<z.ZodNumber>;
217
+ replayImages: z.ZodNumber;
218
+ }, z.core.$strip>>;
219
+ training: z.ZodOptional<z.ZodObject<{
220
+ epochsRun: z.ZodNumber;
221
+ bestEpoch: z.ZodNumber;
222
+ bestMap50: z.ZodNumber;
223
+ bestMap50_95: z.ZodNumber;
224
+ seconds: z.ZodNumber;
225
+ }, z.core.$strip>>;
226
+ evaluation: z.ZodOptional<z.ZodObject<{
227
+ holdoutFrames: z.ZodNumber;
228
+ baseline: z.ZodNullable<z.ZodObject<{
229
+ frames: z.ZodNumber;
230
+ classes: z.ZodRecord<z.ZodString, z.ZodObject<{
231
+ positives: z.ZodNumber;
232
+ floor: z.ZodNullable<z.ZodNumber>;
233
+ tp: z.ZodNumber;
234
+ fp: z.ZodNumber;
235
+ fn: z.ZodNumber;
236
+ precision: z.ZodNullable<z.ZodNumber>;
237
+ recall: z.ZodNullable<z.ZodNumber>;
238
+ ap50: z.ZodNullable<z.ZodNumber>;
239
+ recallByCamera: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodNumber>>>;
240
+ recallByLight: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodNumber>>>;
241
+ fpByCamera: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
242
+ smallFound: z.ZodOptional<z.ZodNumber>;
243
+ smallTotal: z.ZodOptional<z.ZodNumber>;
244
+ }, z.core.$loose>>;
245
+ }, z.core.$loose>>;
246
+ candidate: z.ZodNullable<z.ZodObject<{
247
+ frames: z.ZodNumber;
248
+ classes: z.ZodRecord<z.ZodString, z.ZodObject<{
249
+ positives: z.ZodNumber;
250
+ floor: z.ZodNullable<z.ZodNumber>;
251
+ tp: z.ZodNumber;
252
+ fp: z.ZodNumber;
253
+ fn: z.ZodNumber;
254
+ precision: z.ZodNullable<z.ZodNumber>;
255
+ recall: z.ZodNullable<z.ZodNumber>;
256
+ ap50: z.ZodNullable<z.ZodNumber>;
257
+ recallByCamera: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodNumber>>>;
258
+ recallByLight: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodNumber>>>;
259
+ fpByCamera: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
260
+ smallFound: z.ZodOptional<z.ZodNumber>;
261
+ smallTotal: z.ZodOptional<z.ZodNumber>;
262
+ }, z.core.$loose>>;
263
+ }, z.core.$loose>>;
264
+ candidateInt8: z.ZodNullable<z.ZodObject<{
265
+ frames: z.ZodNumber;
266
+ classes: z.ZodRecord<z.ZodString, z.ZodObject<{
267
+ positives: z.ZodNumber;
268
+ floor: z.ZodNullable<z.ZodNumber>;
269
+ tp: z.ZodNumber;
270
+ fp: z.ZodNumber;
271
+ fn: z.ZodNumber;
272
+ precision: z.ZodNullable<z.ZodNumber>;
273
+ recall: z.ZodNullable<z.ZodNumber>;
274
+ ap50: z.ZodNullable<z.ZodNumber>;
275
+ recallByCamera: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodNumber>>>;
276
+ recallByLight: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodNumber>>>;
277
+ fpByCamera: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
278
+ smallFound: z.ZodOptional<z.ZodNumber>;
279
+ smallTotal: z.ZodOptional<z.ZodNumber>;
280
+ }, z.core.$loose>>;
281
+ }, z.core.$loose>>;
282
+ recallDeltaByCamera: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodNumber>>>;
283
+ map50: z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodNumber>>;
284
+ }, z.core.$strip>>;
285
+ floors: z.ZodOptional<z.ZodObject<{
286
+ baseline: z.ZodRecord<z.ZodString, z.ZodNumber>;
287
+ candidate: z.ZodRecord<z.ZodString, z.ZodNumber>;
288
+ candidateInt8: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNumber>>;
289
+ notes: z.ZodArray<z.ZodString>;
290
+ }, z.core.$strip>>;
291
+ int8: z.ZodOptional<z.ZodObject<{
292
+ kept: z.ZodBoolean;
293
+ map50Fp16: z.ZodNullable<z.ZodNumber>;
294
+ map50Int8: z.ZodNullable<z.ZodNumber>;
295
+ reason: z.ZodNullable<z.ZodString>;
296
+ }, z.core.$strip>>;
297
+ exportsDropped: z.ZodOptional<z.ZodArray<z.ZodObject<{
298
+ export: z.ZodString;
299
+ reason: z.ZodString;
300
+ }, z.core.$strip>>>;
301
+ files: z.ZodOptional<z.ZodArray<z.ZodObject<{
302
+ path: z.ZodString;
303
+ bytes: z.ZodNumber;
304
+ sha256: z.ZodString;
305
+ format: z.ZodEnum<{
306
+ onnx: "onnx";
307
+ coreml: "coreml";
308
+ openvino: "openvino";
309
+ pt: "pt";
310
+ }>;
311
+ variant: z.ZodEnum<{
312
+ int8: "int8";
313
+ base: "base";
314
+ }>;
315
+ }, z.core.$strip>>>;
316
+ bundle: z.ZodOptional<z.ZodNullable<z.ZodObject<{
317
+ path: z.ZodLiteral<"bundle.tar">;
318
+ bytes: z.ZodNumber;
319
+ sha256: z.ZodString;
320
+ }, z.core.$strip>>>;
321
+ catalogDraft: z.ZodOptional<z.ZodNullable<z.ZodObject<{
322
+ base: z.ZodObject<{
323
+ id: z.ZodString;
324
+ name: z.ZodString;
325
+ description: z.ZodString;
326
+ labels: z.ZodArray<z.ZodUnknown>;
327
+ inputSize: z.ZodObject<{
328
+ width: z.ZodNumber;
329
+ height: z.ZodNumber;
330
+ }, z.core.$strip>;
331
+ preprocessMode: z.ZodLiteral<"letterbox">;
332
+ defaultClassFloors: z.ZodRecord<z.ZodString, z.ZodNumber>;
333
+ formats: z.ZodObject<{
334
+ onnx: z.ZodOptional<z.ZodObject<{
335
+ url: z.ZodString;
336
+ sizeMB: z.ZodNumber;
337
+ isDirectory: z.ZodOptional<z.ZodBoolean>;
338
+ files: z.ZodOptional<z.ZodArray<z.ZodString>>;
339
+ runtimes: z.ZodOptional<z.ZodArray<z.ZodLiteral<"python">>>;
340
+ revision: z.ZodString;
341
+ }, z.core.$strip>>;
342
+ openvino: z.ZodOptional<z.ZodObject<{
343
+ url: z.ZodString;
344
+ sizeMB: z.ZodNumber;
345
+ isDirectory: z.ZodOptional<z.ZodBoolean>;
346
+ files: z.ZodOptional<z.ZodArray<z.ZodString>>;
347
+ runtimes: z.ZodOptional<z.ZodArray<z.ZodLiteral<"python">>>;
348
+ revision: z.ZodString;
349
+ }, z.core.$strip>>;
350
+ coreml: z.ZodOptional<z.ZodObject<{
351
+ url: z.ZodString;
352
+ sizeMB: z.ZodNumber;
353
+ isDirectory: z.ZodOptional<z.ZodBoolean>;
354
+ files: z.ZodOptional<z.ZodArray<z.ZodString>>;
355
+ runtimes: z.ZodOptional<z.ZodArray<z.ZodLiteral<"python">>>;
356
+ revision: z.ZodString;
357
+ }, z.core.$strip>>;
358
+ }, z.core.$strip>;
359
+ }, z.core.$strip>;
360
+ int8: z.ZodNullable<z.ZodObject<{
361
+ id: z.ZodString;
362
+ name: z.ZodString;
363
+ description: z.ZodString;
364
+ labels: z.ZodArray<z.ZodUnknown>;
365
+ inputSize: z.ZodObject<{
366
+ width: z.ZodNumber;
367
+ height: z.ZodNumber;
368
+ }, z.core.$strip>;
369
+ preprocessMode: z.ZodLiteral<"letterbox">;
370
+ defaultClassFloors: z.ZodRecord<z.ZodString, z.ZodNumber>;
371
+ formats: z.ZodObject<{
372
+ onnx: z.ZodOptional<z.ZodObject<{
373
+ url: z.ZodString;
374
+ sizeMB: z.ZodNumber;
375
+ isDirectory: z.ZodOptional<z.ZodBoolean>;
376
+ files: z.ZodOptional<z.ZodArray<z.ZodString>>;
377
+ runtimes: z.ZodOptional<z.ZodArray<z.ZodLiteral<"python">>>;
378
+ revision: z.ZodString;
379
+ }, z.core.$strip>>;
380
+ openvino: z.ZodOptional<z.ZodObject<{
381
+ url: z.ZodString;
382
+ sizeMB: z.ZodNumber;
383
+ isDirectory: z.ZodOptional<z.ZodBoolean>;
384
+ files: z.ZodOptional<z.ZodArray<z.ZodString>>;
385
+ runtimes: z.ZodOptional<z.ZodArray<z.ZodLiteral<"python">>>;
386
+ revision: z.ZodString;
387
+ }, z.core.$strip>>;
388
+ coreml: z.ZodOptional<z.ZodObject<{
389
+ url: z.ZodString;
390
+ sizeMB: z.ZodNumber;
391
+ isDirectory: z.ZodOptional<z.ZodBoolean>;
392
+ files: z.ZodOptional<z.ZodArray<z.ZodString>>;
393
+ runtimes: z.ZodOptional<z.ZodArray<z.ZodLiteral<"python">>>;
394
+ revision: z.ZodString;
395
+ }, z.core.$strip>>;
396
+ }, z.core.$strip>;
397
+ }, z.core.$strip>>;
398
+ }, z.core.$strip>>>;
399
+ licence: z.ZodString;
400
+ }, z.core.$strip>;
401
+ export type TrainingResult = z.infer<typeof TrainingResultSchema>;
402
+ export declare const TrainingStageSchema: z.ZodEnum<{
403
+ package: "package";
404
+ replay: "replay";
405
+ train: "train";
406
+ export: "export";
407
+ prepare: "prepare";
408
+ eval: "eval";
409
+ }>;
410
+ export type TrainingStage = z.infer<typeof TrainingStageSchema>;
411
+ export declare const TrainingEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
412
+ type: z.ZodLiteral<"stage">;
413
+ stage: z.ZodEnum<{
414
+ package: "package";
415
+ replay: "replay";
416
+ train: "train";
417
+ export: "export";
418
+ prepare: "prepare";
419
+ eval: "eval";
420
+ }>;
421
+ v: z.ZodLiteral<1>;
422
+ ts: z.ZodNumber;
423
+ }, z.core.$strip>, z.ZodObject<{
424
+ type: z.ZodLiteral<"epoch">;
425
+ epoch: z.ZodNumber;
426
+ epochs: z.ZodNumber;
427
+ boxLoss: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
428
+ map50: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
429
+ map50_95: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
430
+ etaSec: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
431
+ v: z.ZodLiteral<1>;
432
+ ts: z.ZodNumber;
433
+ }, z.core.$strip>, z.ZodObject<{
434
+ type: z.ZodLiteral<"metric">;
435
+ name: z.ZodString;
436
+ value: z.ZodNumber;
437
+ v: z.ZodLiteral<1>;
438
+ ts: z.ZodNumber;
439
+ }, z.core.$strip>, z.ZodObject<{
440
+ type: z.ZodLiteral<"artifact">;
441
+ path: z.ZodString;
442
+ bytes: z.ZodNumber;
443
+ sha256: z.ZodString;
444
+ v: z.ZodLiteral<1>;
445
+ ts: z.ZodNumber;
446
+ }, z.core.$strip>, z.ZodObject<{
447
+ type: z.ZodLiteral<"done">;
448
+ status: z.ZodEnum<{
449
+ failed: "failed";
450
+ succeeded: "succeeded";
451
+ }>;
452
+ resultSha256: z.ZodOptional<z.ZodNullable<z.ZodString>>;
453
+ v: z.ZodLiteral<1>;
454
+ ts: z.ZodNumber;
455
+ }, z.core.$strip>, z.ZodObject<{
456
+ type: z.ZodLiteral<"error">;
457
+ stage: z.ZodString;
458
+ code: z.ZodString;
459
+ message: z.ZodString;
460
+ v: z.ZodLiteral<1>;
461
+ ts: z.ZodNumber;
462
+ }, z.core.$strip>], "type">;
463
+ export type TrainingEvent = z.infer<typeof TrainingEventSchema>;
464
+ /**
465
+ * Parse one stdout line. `null` = not an event (plain log text, or an event
466
+ * line this hub does not understand — a newer trainer may add types).
467
+ */
468
+ export declare function parseTrainingEventLine(line: string): TrainingEvent | null;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/types",
3
- "version": "1.2.332",
3
+ "version": "1.2.334",
4
4
  "description": "Shared types, interfaces, and model catalogs for the CamStack detection ecosystem",
5
5
  "keywords": [
6
6
  "camstack",