@camstack/types 1.2.105 → 1.2.107

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 (46) hide show
  1. package/dist/capabilities/addons.cap.d.ts +4 -4
  2. package/dist/capabilities/battery.cap.d.ts +4 -4
  3. package/dist/capabilities/control.cap.d.ts +4 -4
  4. package/dist/capabilities/core-blocks.cap.d.ts +8 -8
  5. package/dist/capabilities/custom-model-registry.cap.d.ts +4 -4
  6. package/dist/capabilities/data-store-provider.cap.d.ts +18 -0
  7. package/dist/capabilities/device-manager.cap.d.ts +1 -1
  8. package/dist/capabilities/face-gallery.cap.d.ts +3 -1
  9. package/dist/capabilities/llm-runtime.cap.d.ts +3 -3
  10. package/dist/capabilities/llm.cap.d.ts +4 -4
  11. package/dist/capabilities/model-convert.cap.d.ts +6 -6
  12. package/dist/capabilities/model-distributor.cap.d.ts +4 -4
  13. package/dist/capabilities/native-object-detection.cap.d.ts +15 -15
  14. package/dist/capabilities/notification-output.cap.d.ts +18 -18
  15. package/dist/capabilities/notification-rules.cap.d.ts +26 -26
  16. package/dist/capabilities/oauth-integration.cap.d.ts +2 -2
  17. package/dist/capabilities/osd-manager.cap.d.ts +14 -14
  18. package/dist/capabilities/pipeline-analytics.cap.d.ts +53 -53
  19. package/dist/capabilities/pipeline-executor.cap.d.ts +7 -7
  20. package/dist/capabilities/pipeline-orchestrator.cap.d.ts +19 -19
  21. package/dist/capabilities/plate-gallery.cap.d.ts +3 -1
  22. package/dist/capabilities/platform-probe.cap.d.ts +2 -2
  23. package/dist/capabilities/recording-export.cap.d.ts +7 -7
  24. package/dist/capabilities/recording.cap.d.ts +9 -30
  25. package/dist/capabilities/scene-monitor.cap.d.ts +8 -8
  26. package/dist/capabilities/settings-store.cap.d.ts +17 -2
  27. package/dist/capabilities/sso-bridge.cap.d.ts +3 -3
  28. package/dist/capabilities/storage-migration.cap.d.ts +1 -1
  29. package/dist/capabilities/stream-broker.cap.d.ts +6 -6
  30. package/dist/capabilities/user-management.cap.d.ts +20 -20
  31. package/dist/capabilities/vacuum-control.cap.d.ts +13 -13
  32. package/dist/encode-profile.d.ts +2 -2
  33. package/dist/generated/addon-api.d.ts +2 -6
  34. package/dist/health/wiring-health.d.ts +8 -8
  35. package/dist/index.js +126 -110
  36. package/dist/index.mjs +127 -105
  37. package/dist/interfaces/addon.d.ts +29 -7
  38. package/dist/interfaces/adoption-job.d.ts +2 -2
  39. package/dist/interfaces/ops-log.d.ts +2 -2
  40. package/dist/interfaces/recording-config.d.ts +7 -57
  41. package/dist/interfaces/relocate.d.ts +4 -4
  42. package/dist/interfaces/storage.d.ts +23 -0
  43. package/dist/lifecycle/job.d.ts +4 -4
  44. package/dist/schemas/auth-records.d.ts +4 -4
  45. package/dist/types/models.d.ts +7 -7
  46. package/package.json +1 -1
@@ -38,8 +38,8 @@ export type RecordingWeekday = z.infer<typeof RecordingWeekdaySchema>;
38
38
  * every save (`activeModeForConfig`). Writing it has no effect.
39
39
  */
40
40
  export declare const RecordingStorageModeSchema: z.ZodEnum<{
41
- events: "events";
42
41
  off: "off";
42
+ events: "events";
43
43
  continuous: "continuous";
44
44
  }>;
45
45
  export type RecordingStorageMode = z.infer<typeof RecordingStorageModeSchema>;
@@ -161,53 +161,6 @@ export declare const RecordingRetentionSchema: z.ZodObject<{
161
161
  maxSizeGb: z.ZodOptional<z.ZodNumber>;
162
162
  }, z.core.$strip>;
163
163
  export type RecordingRetention = z.infer<typeof RecordingRetentionSchema>;
164
- /**
165
- * Scrub-thumbnail fidelity preset — the single per-camera selector bundling the
166
- * sprite tile RESOLUTION + JPEG QUALITY the recorder packs timeline-scrub
167
- * previews at. Five graduated steps; absent on a config = `standard` (the
168
- * shipped default, matching `sheet-geometry`/`sheet-composer`).
169
- *
170
- * Existing sheets are IMMUTABLE — a changed preset applies to NEW windows only.
171
- * Each window's index sidecar carries its own tile dims, so a camera whose
172
- * preset changed over time renders every historical window at the dims it was
173
- * written with.
174
- */
175
- export declare const ScrubThumbnailPresetSchema: z.ZodEnum<{
176
- high: "high";
177
- low: "low";
178
- max: "max";
179
- standard: "standard";
180
- minimal: "minimal";
181
- }>;
182
- export type ScrubThumbnailPreset = z.infer<typeof ScrubThumbnailPresetSchema>;
183
- /** Resolved sprite geometry + encode quality for a scrub-thumbnail preset. */
184
- export interface ScrubThumbnailGeometry {
185
- /** Tile width in px (16:9). */
186
- readonly tileWidth: number;
187
- /** Tile height in px (16:9). */
188
- readonly tileHeight: number;
189
- /** Sheet JPEG quality, 1..100 (higher = better). */
190
- readonly quality: number;
191
- }
192
- /** The default preset when a config omits `scrubThumbnails`. */
193
- export declare const DEFAULT_SCRUB_THUMBNAIL_PRESET: ScrubThumbnailPreset;
194
- /**
195
- * Preset → tile geometry + JPEG quality. Every step is 16:9; the graduated
196
- * ladder trades sheet size (and remote fetch cost) for scrub crispness.
197
- * `standard` matches the shipped `sheet-geometry`/`sheet-composer` defaults
198
- * (480×270 q72), so an unset config is byte-identical to today. The map is
199
- * strictly monotone in resolution AND quality across the ordered steps.
200
- */
201
- export declare const SCRUB_THUMBNAIL_PRESETS: Record<ScrubThumbnailPreset, ScrubThumbnailGeometry>;
202
- /** Human labels for each preset (resolution-tagged), for settings UIs. */
203
- export declare const SCRUB_THUMBNAIL_PRESET_LABELS: Record<ScrubThumbnailPreset, string>;
204
- /** Ordered low→high so a UI can render the ladder in graduated order. */
205
- export declare const SCRUB_THUMBNAIL_PRESET_ORDER: readonly ScrubThumbnailPreset[];
206
- /**
207
- * Resolve the geometry for a recording config's scrub-thumbnail preset,
208
- * defaulting to `standard` when unset. Pure — no I/O.
209
- */
210
- export declare function resolveScrubThumbnailGeometry(preset: ScrubThumbnailPreset | undefined): ScrubThumbnailGeometry;
211
164
  /**
212
165
  * The full per-camera recording intent — the wire shape of a RecordingTarget.
213
166
  *
@@ -216,15 +169,19 @@ export declare function resolveScrubThumbnailGeometry(preset: ScrubThumbnailPres
216
169
  * other field is a storage knob (profiles, segment length, retention, scrub).
217
170
  *
218
171
  * STRICT on purpose: the legacy authoring surface (`schedule`/`schedules`/
219
- * `triggers`/`preBufferSec`/`postBufferSec`/`rules`) was retired 2026-07-30.
172
+ * `triggers`/`preBufferSec`/`postBufferSec`/`rules`) was retired 2026-07-30,
173
+ * and `scrubThumbnails` — a five-step fidelity knob for a sprite tier that was
174
+ * deleted on 2026-07-24 and had ZERO consumers in the recorder — on 2026-08-25
175
+ * (D62: a switch that writes a store nobody reads is worse than no switch).
176
+ * Stored rows keep loading: the READ schema is `.strip()` (config-store.ts).
220
177
  * A stale caller must fail loudly — silently stripping its legacy intent would
221
178
  * persist a band-less config, i.e. silently stop recording the camera.
222
179
  */
223
180
  export declare const RecordingConfigSchema: z.ZodObject<{
224
181
  enabled: z.ZodBoolean;
225
182
  mode: z.ZodOptional<z.ZodEnum<{
226
- events: "events";
227
183
  off: "off";
184
+ events: "events";
228
185
  continuous: "continuous";
229
186
  }>>;
230
187
  profiles: z.ZodOptional<z.ZodArray<z.ZodEnum<{
@@ -252,13 +209,6 @@ export declare const RecordingConfigSchema: z.ZodObject<{
252
209
  maxAgeDays: z.ZodOptional<z.ZodNumber>;
253
210
  maxSizeGb: z.ZodOptional<z.ZodNumber>;
254
211
  }, z.core.$strip>>;
255
- scrubThumbnails: z.ZodOptional<z.ZodEnum<{
256
- high: "high";
257
- low: "low";
258
- max: "max";
259
- standard: "standard";
260
- minimal: "minimal";
261
- }>>;
262
212
  }, z.core.$strict>;
263
213
  export type RecordingConfig = z.infer<typeof RecordingConfigSchema>;
264
214
  /** The bands + enabled flag a mode is derived from — all {@link deriveRecordingMode} reads. */
@@ -16,20 +16,20 @@ import { z } from 'zod';
16
16
  * runs at all.
17
17
  */
18
18
  export declare const RelocateJobStateSchema: z.ZodEnum<{
19
+ running: "running";
19
20
  queued: "queued";
20
21
  done: "done";
21
22
  failed: "failed";
22
- running: "running";
23
23
  cancelled: "cancelled";
24
24
  }>;
25
25
  export type RelocateJobState = z.infer<typeof RelocateJobStateSchema>;
26
26
  export declare const RelocateJobSchema: z.ZodObject<{
27
27
  jobId: z.ZodString;
28
28
  state: z.ZodEnum<{
29
+ running: "running";
29
30
  queued: "queued";
30
31
  done: "done";
31
32
  failed: "failed";
32
- running: "running";
33
33
  cancelled: "cancelled";
34
34
  }>;
35
35
  fromLocationId: z.ZodString;
@@ -162,10 +162,10 @@ export declare const StorageMigrationMoveSchema: z.ZodObject<{
162
162
  toLocationId: z.ZodString;
163
163
  moverJobId: z.ZodNullable<z.ZodString>;
164
164
  state: z.ZodNullable<z.ZodEnum<{
165
+ running: "running";
165
166
  queued: "queued";
166
167
  done: "done";
167
168
  failed: "failed";
168
- running: "running";
169
169
  cancelled: "cancelled";
170
170
  }>>;
171
171
  error: z.ZodNullable<z.ZodString>;
@@ -201,10 +201,10 @@ export declare const StorageMigrationJobSchema: z.ZodObject<{
201
201
  toLocationId: z.ZodString;
202
202
  moverJobId: z.ZodNullable<z.ZodString>;
203
203
  state: z.ZodNullable<z.ZodEnum<{
204
+ running: "running";
204
205
  queued: "queued";
205
206
  done: "done";
206
207
  failed: "failed";
207
- running: "running";
208
208
  cancelled: "cancelled";
209
209
  }>>;
210
210
  error: z.ZodNullable<z.ZodString>;
@@ -65,6 +65,29 @@ export interface SettingsQueryInput {
65
65
  readonly namespace?: string;
66
66
  readonly collection: SettingsCollection;
67
67
  readonly filter?: QueryFilter;
68
+ /**
69
+ * Read ONLY these columns (plus the primary key, always). Omit for the whole
70
+ * row.
71
+ *
72
+ * A projection, not a predicate — which is why it sits here and not inside
73
+ * {@link QueryFilter}. `count` and `histogram` take a filter and answer a
74
+ * scalar; a column list inside the filter would be a field they could only
75
+ * ignore, and a filter object shared between `query` and `count` (the
76
+ * notification-centre artefact index does exactly that) would carry it into
77
+ * both. This repo has already paid for one silently-ignored filter field.
78
+ *
79
+ * **The engine REFUSES a name it cannot serve.** Not a column of the
80
+ * collection, or a collection whose row is a single JSON blob, and the call
81
+ * throws. The alternative — skipping it, the way an unresolvable PREDICATE is
82
+ * skipped — would hand back a record whose missing key is indistinguishable
83
+ * from a NULL in the database, and the caller cannot tell "I did not read it"
84
+ * from "it is not there". A predicate that over-matches returns extra rows; a
85
+ * projection that under-reads returns wrong VALUES.
86
+ *
87
+ * The returned `data` therefore contains exactly these keys and the primary
88
+ * key — absent means NOT READ, and every absent key was asked to be absent.
89
+ */
90
+ readonly columns?: readonly string[];
68
91
  }
69
92
  export interface SettingsInsertInput<T extends object = Record<string, unknown>> {
70
93
  readonly namespace?: string;
@@ -91,17 +91,17 @@ export declare const lifecycleTaskSchema: z.ZodObject<{
91
91
  }, z.core.$strip>;
92
92
  export type LifecycleTask = z.infer<typeof lifecycleTaskSchema>;
93
93
  export declare const lifecycleJobStateSchema: z.ZodEnum<{
94
- failed: "failed";
95
94
  running: "running";
95
+ failed: "failed";
96
96
  completed: "completed";
97
97
  "partially-failed": "partially-failed";
98
98
  cancelled: "cancelled";
99
99
  }>;
100
100
  export type LifecycleJobState = z.infer<typeof lifecycleJobStateSchema>;
101
101
  export declare const lifecycleJobScopeSchema: z.ZodEnum<{
102
+ cluster: "cluster";
102
103
  single: "single";
103
104
  bulk: "bulk";
104
- cluster: "cluster";
105
105
  }>;
106
106
  export type LifecycleJobScope = z.infer<typeof lifecycleJobScopeSchema>;
107
107
  export declare const lifecycleJobSchema: z.ZodObject<{
@@ -115,9 +115,9 @@ export declare const lifecycleJobSchema: z.ZodObject<{
115
115
  createdAtMs: z.ZodNumber;
116
116
  createdBy: z.ZodString;
117
117
  scope: z.ZodEnum<{
118
+ cluster: "cluster";
118
119
  single: "single";
119
120
  bulk: "bulk";
120
- cluster: "cluster";
121
121
  }>;
122
122
  tasks: z.ZodArray<z.ZodObject<{
123
123
  taskId: z.ZodString;
@@ -166,8 +166,8 @@ export declare const lifecycleJobSchema: z.ZodObject<{
166
166
  finishedAtMs: z.ZodNullable<z.ZodNumber>;
167
167
  }, z.core.$strip>>;
168
168
  state: z.ZodEnum<{
169
- failed: "failed";
170
169
  running: "running";
170
+ failed: "failed";
171
171
  completed: "completed";
172
172
  "partially-failed": "partially-failed";
173
173
  cancelled: "cancelled";
@@ -34,8 +34,8 @@ export declare const MethodAccessSchema: z.ZodEnum<{
34
34
  }>;
35
35
  export type MethodAccess = z.infer<typeof MethodAccessSchema>;
36
36
  export declare const CapScopeSchema: z.ZodEnum<{
37
- system: "system";
38
37
  device: "device";
38
+ system: "system";
39
39
  }>;
40
40
  export type CapScope = z.infer<typeof CapScopeSchema>;
41
41
  /**
@@ -96,8 +96,8 @@ declare const DeviceTokenScopeSchema: z.ZodObject<{
96
96
  export declare const TokenScopeSchema: z.ZodPreprocess<z.ZodDiscriminatedUnion<[z.ZodObject<{
97
97
  type: z.ZodLiteral<"category">;
98
98
  target: z.ZodEnum<{
99
- system: "system";
100
99
  device: "device";
100
+ system: "system";
101
101
  }>;
102
102
  access: z.ZodArray<z.ZodEnum<{
103
103
  view: "view";
@@ -154,8 +154,8 @@ export declare const UserRecordSchema: z.ZodObject<{
154
154
  scopes: z.ZodDefault<z.ZodArray<z.ZodPreprocess<z.ZodDiscriminatedUnion<[z.ZodObject<{
155
155
  type: z.ZodLiteral<"category">;
156
156
  target: z.ZodEnum<{
157
- system: "system";
158
157
  device: "device";
158
+ system: "system";
159
159
  }>;
160
160
  access: z.ZodArray<z.ZodEnum<{
161
161
  view: "view";
@@ -224,8 +224,8 @@ export declare const ScopedTokenSchema: z.ZodObject<{
224
224
  scopes: z.ZodArray<z.ZodPreprocess<z.ZodDiscriminatedUnion<[z.ZodObject<{
225
225
  type: z.ZodLiteral<"category">;
226
226
  target: z.ZodEnum<{
227
- system: "system";
228
227
  device: "device";
228
+ system: "system";
229
229
  }>;
230
230
  access: z.ZodArray<z.ZodEnum<{
231
231
  view: "view";
@@ -121,8 +121,8 @@ export declare const ModelVariantGroupSchema: z.ZodObject<{
121
121
  int8: "int8";
122
122
  }>>;
123
123
  optimization: z.ZodOptional<z.ZodEnum<{
124
- fast: "fast";
125
124
  standard: "standard";
125
+ fast: "fast";
126
126
  }>>;
127
127
  resolution: z.ZodOptional<z.ZodNumber>;
128
128
  }, z.core.$strip>;
@@ -236,9 +236,9 @@ export declare const ModelCatalogEntrySchema: z.ZodObject<{
236
236
  nhwc: "nhwc";
237
237
  }>>;
238
238
  inputNormalization: z.ZodOptional<z.ZodEnum<{
239
- none: "none";
240
239
  "zero-one": "zero-one";
241
240
  imagenet: "imagenet";
241
+ none: "none";
242
242
  }>>;
243
243
  outputProbabilities: z.ZodOptional<z.ZodBoolean>;
244
244
  preprocessMode: z.ZodOptional<z.ZodEnum<{
@@ -266,8 +266,8 @@ export declare const ModelCatalogEntrySchema: z.ZodObject<{
266
266
  int8: "int8";
267
267
  }>>;
268
268
  optimization: z.ZodOptional<z.ZodEnum<{
269
- fast: "fast";
270
269
  standard: "standard";
270
+ fast: "fast";
271
271
  }>>;
272
272
  resolution: z.ZodOptional<z.ZodNumber>;
273
273
  }, z.core.$strip>>;
@@ -351,19 +351,19 @@ export declare const ModelConvertMetadataSchema: z.ZodObject<{
351
351
  nhwc: "nhwc";
352
352
  }>>;
353
353
  inputNormalization: z.ZodOptional<z.ZodEnum<{
354
- none: "none";
355
354
  "zero-one": "zero-one";
356
355
  imagenet: "imagenet";
356
+ none: "none";
357
357
  }>>;
358
358
  preprocessMode: z.ZodOptional<z.ZodEnum<{
359
359
  letterbox: "letterbox";
360
360
  resize: "resize";
361
361
  }>>;
362
362
  outputFormat: z.ZodEnum<{
363
- classification: "classification";
364
363
  yolo: "yolo";
365
364
  ssd: "ssd";
366
365
  embedding: "embedding";
366
+ classification: "classification";
367
367
  ocr: "ocr";
368
368
  segmentation: "segmentation";
369
369
  }>;
@@ -481,9 +481,9 @@ export declare const ConvertResultSchema: z.ZodObject<{
481
481
  nhwc: "nhwc";
482
482
  }>>;
483
483
  inputNormalization: z.ZodOptional<z.ZodEnum<{
484
- none: "none";
485
484
  "zero-one": "zero-one";
486
485
  imagenet: "imagenet";
486
+ none: "none";
487
487
  }>>;
488
488
  outputProbabilities: z.ZodOptional<z.ZodBoolean>;
489
489
  preprocessMode: z.ZodOptional<z.ZodEnum<{
@@ -511,8 +511,8 @@ export declare const ConvertResultSchema: z.ZodObject<{
511
511
  int8: "int8";
512
512
  }>>;
513
513
  optimization: z.ZodOptional<z.ZodEnum<{
514
- fast: "fast";
515
514
  standard: "standard";
515
+ fast: "fast";
516
516
  }>>;
517
517
  resolution: z.ZodOptional<z.ZodNumber>;
518
518
  }, z.core.$strip>>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/types",
3
- "version": "1.2.105",
3
+ "version": "1.2.107",
4
4
  "description": "Shared types, interfaces, and model catalogs for the CamStack detection ecosystem",
5
5
  "keywords": [
6
6
  "camstack",