@camstack/types 1.2.76 → 1.2.78

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.
package/dist/addon.js CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_event_category = require("./event-category-D3gG7oil.js");
3
- const require_sleep = require("./sleep-DslGLq5_.js");
3
+ const require_sleep = require("./sleep-CoL-9qhR.js");
4
4
  const require_err_msg = require("./err-msg-COpsHMw2.js");
5
5
  //#region src/generated/cap-input-defaults.ts
6
6
  /**
package/dist/addon.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { t as EventCategory } from "./event-category-Bxo5yJjt.mjs";
2
- import { A as expandCapMethods, B as ReadinessTimeoutError, I as nodePin, L as readNodePin, T as adminUiCapability, U as scopeKey, _t as BaseAddon, a as asJsonObject, b as viewerUiCapability, d as BOOT_RECOVERY_BACKOFF_MS, f as DEVICE_SCOPED_CAPS, gt as DisposerChain, ht as DATAPLANE_SECRET_HEADER, m as createDeviceProxy, p as isDeviceScopedCap, s as asString, t as sleep, u as parseJsonUnknown, vt as normalizeAddonInitResult, w as DeviceType, xt as emitReadiness, y as deviceOpsCapability, z as ReadinessRegistry } from "./sleep-BfRjZ3C3.mjs";
2
+ import { A as expandCapMethods, B as ReadinessTimeoutError, I as nodePin, L as readNodePin, T as adminUiCapability, U as scopeKey, _t as BaseAddon, a as asJsonObject, b as viewerUiCapability, d as BOOT_RECOVERY_BACKOFF_MS, f as DEVICE_SCOPED_CAPS, gt as DisposerChain, ht as DATAPLANE_SECRET_HEADER, m as createDeviceProxy, p as isDeviceScopedCap, s as asString, t as sleep, u as parseJsonUnknown, vt as normalizeAddonInitResult, w as DeviceType, xt as emitReadiness, y as deviceOpsCapability, z as ReadinessRegistry } from "./sleep-DlC2kJYf.mjs";
3
3
  import { t as errMsg } from "./err-msg-IQTHeDzc.mjs";
4
4
  //#region src/generated/cap-input-defaults.ts
5
5
  /**
@@ -17,6 +17,7 @@ export declare const BatteryStatusSchema: z.ZodObject<{
17
17
  }>;
18
18
  sleeping: z.ZodBoolean;
19
19
  lastUpdated: z.ZodNumber;
20
+ lastContactAt: z.ZodOptional<z.ZodNumber>;
20
21
  binary: z.ZodOptional<z.ZodBoolean>;
21
22
  }, z.core.$strip>;
22
23
  export type BatteryStatus = z.infer<typeof BatteryStatusSchema>;
@@ -70,6 +71,7 @@ export declare const batteryCapability: {
70
71
  }>;
71
72
  sleeping: z.ZodBoolean;
72
73
  lastUpdated: z.ZodNumber;
74
+ lastContactAt: z.ZodOptional<z.ZodNumber>;
73
75
  binary: z.ZodOptional<z.ZodBoolean>;
74
76
  }, z.core.$strip>;
75
77
  }, z.core.$strip>;
@@ -85,6 +87,7 @@ export declare const batteryCapability: {
85
87
  }>;
86
88
  sleeping: z.ZodBoolean;
87
89
  lastUpdated: z.ZodNumber;
90
+ lastContactAt: z.ZodOptional<z.ZodNumber>;
88
91
  binary: z.ZodOptional<z.ZodBoolean>;
89
92
  }, z.core.$strip>;
90
93
  readonly kind: "push";
@@ -113,6 +116,7 @@ export declare const batteryCapability: {
113
116
  }>;
114
117
  sleeping: z.ZodBoolean;
115
118
  lastUpdated: z.ZodNumber;
119
+ lastContactAt: z.ZodOptional<z.ZodNumber>;
116
120
  binary: z.ZodOptional<z.ZodBoolean>;
117
121
  }, z.core.$strip>;
118
122
  /**
@@ -185,7 +185,7 @@ export { type ISceneMonitorProvider, SCENE_CONDITIONS, SCENE_CONFIRM_DEFAULT_MAX
185
185
  export { type ZoneRule, type ZoneRuleMode, ZoneRuleModeEnum, ZoneRuleSchema, type ZoneRules, ZoneRulesArraySchema, } from './schemas/zone-rule.js';
186
186
  export { type IScriptRunnerProvider, type ScriptRunnerStatus, ScriptRunnerStatusSchema, scriptRunnerCapability, } from './script-runner.cap.js';
187
187
  export { type ISmokeProvider, type SmokeStatus, SmokeStatusSchema, smokeCapability, } from './smoke.cap.js';
188
- export { type CamStreamDescriptor, CamStreamDescriptorSchema, type IStreamCatalogProvider, streamCatalogCapability, } from './stream-catalog.cap.js';
188
+ export { type CamStreamDescriptor, CamStreamDescriptorSchema, type IStreamCatalogProvider, streamCatalogCapability, type StreamCatalogState, } from './stream-catalog.cap.js';
189
189
  export { type IStreamParamsProvider, type StreamParamsOptions, StreamParamsOptionsSchema, type StreamParamsStatus, StreamParamsStatusSchema, type StreamProfile, StreamProfileConfigSchema, StreamProfileOptionsSchema, type StreamProfilePatch, StreamProfilePatchSchema, StreamProfileSchema, streamParamsCapability, } from './stream-params.cap.js';
190
190
  export { buildStreamParamsConfigSchema, parseStreamParamsFormPatch, STREAM_PROFILE_META, type StreamProfileMeta, } from './stream-params-config-schema.js';
191
191
  export { type ISwitchProvider, type SwitchStatus, SwitchStatusSchema, switchCapability, } from './switch.cap.js';
@@ -116,7 +116,7 @@ declare const OauthIntegrationDescriptorSchema: z.ZodObject<{
116
116
  ids: z.ZodArray<z.ZodNumber>;
117
117
  }, z.core.$strip>, z.ZodObject<{
118
118
  kind: z.ZodLiteral<"types">;
119
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
119
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
120
120
  }, z.core.$strip>, z.ZodObject<{
121
121
  kind: z.ZodLiteral<"locations">;
122
122
  locations: z.ZodArray<z.ZodString>;
@@ -179,7 +179,7 @@ export declare const oauthIntegrationCapability: {
179
179
  ids: z.ZodArray<z.ZodNumber>;
180
180
  }, z.core.$strip>, z.ZodObject<{
181
181
  kind: z.ZodLiteral<"types">;
182
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
182
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
183
183
  }, z.core.$strip>, z.ZodObject<{
184
184
  kind: z.ZodLiteral<"locations">;
185
185
  locations: z.ZodArray<z.ZodString>;
@@ -139,6 +139,12 @@ export declare const snapshotCapability: {
139
139
  width: z.ZodNullable<z.ZodNumber>;
140
140
  neverCaptured: z.ZodBoolean;
141
141
  sleeping: z.ZodBoolean;
142
+ stateReason: z.ZodNullable<z.ZodEnum<{
143
+ sleeping: "sleeping";
144
+ unreachable: "unreachable";
145
+ disabled: "disabled";
146
+ waking: "waking";
147
+ }>>;
142
148
  }, z.core.$strip>>, import("./capability-definition.js").CapabilityMethodKind> & {
143
149
  readonly systemOnly: true;
144
150
  };
@@ -58,7 +58,7 @@ declare const SsoBridgeClaimsSchema: z.ZodObject<{
58
58
  ids: z.ZodArray<z.ZodNumber>;
59
59
  }, z.core.$strip>, z.ZodObject<{
60
60
  kind: z.ZodLiteral<"types">;
61
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
61
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
62
62
  }, z.core.$strip>, z.ZodObject<{
63
63
  kind: z.ZodLiteral<"locations">;
64
64
  locations: z.ZodArray<z.ZodString>;
@@ -128,7 +128,7 @@ export declare const ssoBridgeCapability: {
128
128
  ids: z.ZodArray<z.ZodNumber>;
129
129
  }, z.core.$strip>, z.ZodObject<{
130
130
  kind: z.ZodLiteral<"types">;
131
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
131
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
132
132
  }, z.core.$strip>, z.ZodObject<{
133
133
  kind: z.ZodLiteral<"locations">;
134
134
  locations: z.ZodArray<z.ZodString>;
@@ -197,7 +197,7 @@ export declare const ssoBridgeCapability: {
197
197
  ids: z.ZodArray<z.ZodNumber>;
198
198
  }, z.core.$strip>, z.ZodObject<{
199
199
  kind: z.ZodLiteral<"types">;
200
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
200
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
201
201
  }, z.core.$strip>, z.ZodObject<{
202
202
  kind: z.ZodLiteral<"locations">;
203
203
  locations: z.ZodArray<z.ZodString>;
@@ -49,6 +49,56 @@ export type CamStreamDescriptor = z.infer<typeof CamStreamDescriptorSchema>;
49
49
  * set of stream descriptors it can offer for the device, synchronously, so the
50
50
  * broker can reconcile its registry against the authoritative provider state.
51
51
  */
52
+ /**
53
+ * The catalog as a DURABLE fact rather than a live answer.
54
+ *
55
+ * A battery camera's descriptors are profile-stable — they change when the
56
+ * operator rewrites an encoder profile, not minute to minute — but building
57
+ * them costs a Baichuan login, which on a sleeping Argus IS a wake. So the
58
+ * provider is allowed to build them exactly once per profile and must serve
59
+ * every later pull from a cache.
60
+ *
61
+ * Holding that cache only in RAM is what turned a restart into an outage. The
62
+ * runner comes back with the camera asleep, `buildStreamCatalogUncached`
63
+ * correctly refuses to wake it, the pull answers `[]`, the broker has no
64
+ * cam-stream entry to build a broker from, and `webrtcSession.handleOffer`
65
+ * fails with a flat "No broker for stream" — for as long as the camera sleeps,
66
+ * which on a battery cam is most of the day. The camera was fine. The stream
67
+ * was unreachable because the process had forgotten what the camera offers.
68
+ *
69
+ * Declaring it here puts it in `device-runtime-state`, the kernel's canonical
70
+ * declared collection, with the same `restored` durability `battery` uses for
71
+ * the same reason: the last known value is the only value there is while the
72
+ * device is asleep. The broker's brokers are therefore always DEFINABLE — it
73
+ * is the DIAL that wakes a camera, never the catalog (D173).
74
+ */
75
+ declare const StreamCatalogStateSchema: z.ZodObject<{
76
+ descriptors: z.ZodArray<z.ZodObject<{
77
+ camStreamId: z.ZodString;
78
+ kind: z.ZodEnum<{
79
+ "pull-rtsp": "pull-rtsp";
80
+ "pull-rtmp": "pull-rtmp";
81
+ "pull-http": "pull-http";
82
+ "pull-flv": "pull-flv";
83
+ "pull-rfc4571": "pull-rfc4571";
84
+ "push-annexb": "push-annexb";
85
+ derived: "derived";
86
+ }>;
87
+ url: z.ZodOptional<z.ZodString>;
88
+ codec: z.ZodOptional<z.ZodString>;
89
+ resolution: z.ZodOptional<z.ZodObject<{
90
+ width: z.ZodNumber;
91
+ height: z.ZodNumber;
92
+ }, z.core.$strip>>;
93
+ fps: z.ZodOptional<z.ZodNumber>;
94
+ label: z.ZodOptional<z.ZodString>;
95
+ deviceFeatures: z.ZodOptional<z.ZodArray<z.ZodString>>;
96
+ autoEligible: z.ZodOptional<z.ZodBoolean>;
97
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
98
+ }, z.core.$strip>>;
99
+ lastFetchedAt: z.ZodNumber;
100
+ }, z.core.$strip>;
101
+ export type StreamCatalogState = z.infer<typeof StreamCatalogStateSchema>;
52
102
  export declare const streamCatalogCapability: {
53
103
  readonly name: "stream-catalog";
54
104
  readonly scope: "device";
@@ -82,5 +132,48 @@ export declare const streamCatalogCapability: {
82
132
  metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
83
133
  }, z.core.$strip>>>, import("./capability-definition.js").CapabilityMethodKind>;
84
134
  };
135
+ readonly runtimeState: z.ZodObject<{
136
+ descriptors: z.ZodArray<z.ZodObject<{
137
+ camStreamId: z.ZodString;
138
+ kind: z.ZodEnum<{
139
+ "pull-rtsp": "pull-rtsp";
140
+ "pull-rtmp": "pull-rtmp";
141
+ "pull-http": "pull-http";
142
+ "pull-flv": "pull-flv";
143
+ "pull-rfc4571": "pull-rfc4571";
144
+ "push-annexb": "push-annexb";
145
+ derived: "derived";
146
+ }>;
147
+ url: z.ZodOptional<z.ZodString>;
148
+ codec: z.ZodOptional<z.ZodString>;
149
+ resolution: z.ZodOptional<z.ZodObject<{
150
+ width: z.ZodNumber;
151
+ height: z.ZodNumber;
152
+ }, z.core.$strip>>;
153
+ fps: z.ZodOptional<z.ZodNumber>;
154
+ label: z.ZodOptional<z.ZodString>;
155
+ deviceFeatures: z.ZodOptional<z.ZodArray<z.ZodString>>;
156
+ autoEligible: z.ZodOptional<z.ZodBoolean>;
157
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
158
+ }, z.core.$strip>>;
159
+ lastFetchedAt: z.ZodNumber;
160
+ }, z.core.$strip>;
161
+ /**
162
+ * Runtime-state durability: **restored** — see the schema doc. A cold
163
+ * catalog on a sleeping battery camera is not a slow first frame, it is a
164
+ * camera that cannot be watched at all until it happens to wake.
165
+ *
166
+ * Churn is nil by construction: the slice is written only by a SUCCESSFUL
167
+ * build, and a build only runs when there is no cached copy (or the copy is
168
+ * a day old and the camera is awake anyway).
169
+ *
170
+ * See `RuntimeStateDurability`. Enforced by
171
+ * `scripts/check-runtime-state-durability.ts`.
172
+ */
173
+ readonly durability: "restored";
174
+ /** Clock field: written, but excluded from the compare that decides whether
175
+ * persisting is worth a SQLite commit — the descriptors are the value. */
176
+ readonly volatileStateFields: readonly ["lastFetchedAt"];
85
177
  };
86
178
  export type IStreamCatalogProvider = InferNativeProvider<typeof streamCatalogCapability>;
179
+ export {};
@@ -42,7 +42,7 @@ declare const UserSummarySchema: z.ZodObject<{
42
42
  ids: z.ZodArray<z.ZodNumber>;
43
43
  }, z.core.$strip>, z.ZodObject<{
44
44
  kind: z.ZodLiteral<"types">;
45
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
45
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
46
46
  }, z.core.$strip>, z.ZodObject<{
47
47
  kind: z.ZodLiteral<"locations">;
48
48
  locations: z.ZodArray<z.ZodString>;
@@ -100,7 +100,7 @@ declare const CreateUserInputSchema: z.ZodObject<{
100
100
  ids: z.ZodArray<z.ZodNumber>;
101
101
  }, z.core.$strip>, z.ZodObject<{
102
102
  kind: z.ZodLiteral<"types">;
103
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
103
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
104
104
  }, z.core.$strip>, z.ZodObject<{
105
105
  kind: z.ZodLiteral<"locations">;
106
106
  locations: z.ZodArray<z.ZodString>;
@@ -154,7 +154,7 @@ declare const UpdateUserInputSchema: z.ZodObject<{
154
154
  ids: z.ZodArray<z.ZodNumber>;
155
155
  }, z.core.$strip>, z.ZodObject<{
156
156
  kind: z.ZodLiteral<"types">;
157
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
157
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
158
158
  }, z.core.$strip>, z.ZodObject<{
159
159
  kind: z.ZodLiteral<"locations">;
160
160
  locations: z.ZodArray<z.ZodString>;
@@ -237,7 +237,7 @@ declare const ScopedTokenSummarySchema: z.ZodObject<{
237
237
  ids: z.ZodArray<z.ZodNumber>;
238
238
  }, z.core.$strip>, z.ZodObject<{
239
239
  kind: z.ZodLiteral<"types">;
240
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
240
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
241
241
  }, z.core.$strip>, z.ZodObject<{
242
242
  kind: z.ZodLiteral<"locations">;
243
243
  locations: z.ZodArray<z.ZodString>;
@@ -292,7 +292,7 @@ declare const CreateScopedTokenInputSchema: z.ZodObject<{
292
292
  ids: z.ZodArray<z.ZodNumber>;
293
293
  }, z.core.$strip>, z.ZodObject<{
294
294
  kind: z.ZodLiteral<"types">;
295
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
295
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
296
296
  }, z.core.$strip>, z.ZodObject<{
297
297
  kind: z.ZodLiteral<"locations">;
298
298
  locations: z.ZodArray<z.ZodString>;
@@ -349,7 +349,7 @@ declare const CreateScopedTokenResultSchema: z.ZodObject<{
349
349
  ids: z.ZodArray<z.ZodNumber>;
350
350
  }, z.core.$strip>, z.ZodObject<{
351
351
  kind: z.ZodLiteral<"types">;
352
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
352
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
353
353
  }, z.core.$strip>, z.ZodObject<{
354
354
  kind: z.ZodLiteral<"locations">;
355
355
  locations: z.ZodArray<z.ZodString>;
@@ -407,7 +407,7 @@ declare const OauthSessionSummarySchema: z.ZodObject<{
407
407
  ids: z.ZodArray<z.ZodNumber>;
408
408
  }, z.core.$strip>, z.ZodObject<{
409
409
  kind: z.ZodLiteral<"types">;
410
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
410
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
411
411
  }, z.core.$strip>, z.ZodObject<{
412
412
  kind: z.ZodLiteral<"locations">;
413
413
  locations: z.ZodArray<z.ZodString>;
@@ -480,7 +480,7 @@ export declare const userManagementCapability: {
480
480
  ids: z.ZodArray<z.ZodNumber>;
481
481
  }, z.core.$strip>, z.ZodObject<{
482
482
  kind: z.ZodLiteral<"types">;
483
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
483
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
484
484
  }, z.core.$strip>, z.ZodObject<{
485
485
  kind: z.ZodLiteral<"locations">;
486
486
  locations: z.ZodArray<z.ZodString>;
@@ -538,7 +538,7 @@ export declare const userManagementCapability: {
538
538
  ids: z.ZodArray<z.ZodNumber>;
539
539
  }, z.core.$strip>, z.ZodObject<{
540
540
  kind: z.ZodLiteral<"types">;
541
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
541
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
542
542
  }, z.core.$strip>, z.ZodObject<{
543
543
  kind: z.ZodLiteral<"locations">;
544
544
  locations: z.ZodArray<z.ZodString>;
@@ -592,7 +592,7 @@ export declare const userManagementCapability: {
592
592
  ids: z.ZodArray<z.ZodNumber>;
593
593
  }, z.core.$strip>, z.ZodObject<{
594
594
  kind: z.ZodLiteral<"types">;
595
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
595
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
596
596
  }, z.core.$strip>, z.ZodObject<{
597
597
  kind: z.ZodLiteral<"locations">;
598
598
  locations: z.ZodArray<z.ZodString>;
@@ -649,7 +649,7 @@ export declare const userManagementCapability: {
649
649
  ids: z.ZodArray<z.ZodNumber>;
650
650
  }, z.core.$strip>, z.ZodObject<{
651
651
  kind: z.ZodLiteral<"types">;
652
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
652
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
653
653
  }, z.core.$strip>, z.ZodObject<{
654
654
  kind: z.ZodLiteral<"locations">;
655
655
  locations: z.ZodArray<z.ZodString>;
@@ -713,7 +713,7 @@ export declare const userManagementCapability: {
713
713
  ids: z.ZodArray<z.ZodNumber>;
714
714
  }, z.core.$strip>, z.ZodObject<{
715
715
  kind: z.ZodLiteral<"types">;
716
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
716
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
717
717
  }, z.core.$strip>, z.ZodObject<{
718
718
  kind: z.ZodLiteral<"locations">;
719
719
  locations: z.ZodArray<z.ZodString>;
@@ -773,7 +773,7 @@ export declare const userManagementCapability: {
773
773
  ids: z.ZodArray<z.ZodNumber>;
774
774
  }, z.core.$strip>, z.ZodObject<{
775
775
  kind: z.ZodLiteral<"types">;
776
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
776
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
777
777
  }, z.core.$strip>, z.ZodObject<{
778
778
  kind: z.ZodLiteral<"locations">;
779
779
  locations: z.ZodArray<z.ZodString>;
@@ -874,7 +874,7 @@ export declare const userManagementCapability: {
874
874
  ids: z.ZodArray<z.ZodNumber>;
875
875
  }, z.core.$strip>, z.ZodObject<{
876
876
  kind: z.ZodLiteral<"types">;
877
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
877
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
878
878
  }, z.core.$strip>, z.ZodObject<{
879
879
  kind: z.ZodLiteral<"locations">;
880
880
  locations: z.ZodArray<z.ZodString>;
@@ -930,7 +930,7 @@ export declare const userManagementCapability: {
930
930
  ids: z.ZodArray<z.ZodNumber>;
931
931
  }, z.core.$strip>, z.ZodObject<{
932
932
  kind: z.ZodLiteral<"types">;
933
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
933
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
934
934
  }, z.core.$strip>, z.ZodObject<{
935
935
  kind: z.ZodLiteral<"locations">;
936
936
  locations: z.ZodArray<z.ZodString>;
@@ -995,7 +995,7 @@ export declare const userManagementCapability: {
995
995
  ids: z.ZodArray<z.ZodNumber>;
996
996
  }, z.core.$strip>, z.ZodObject<{
997
997
  kind: z.ZodLiteral<"types">;
998
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
998
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
999
999
  }, z.core.$strip>, z.ZodObject<{
1000
1000
  kind: z.ZodLiteral<"locations">;
1001
1001
  locations: z.ZodArray<z.ZodString>;
@@ -1054,7 +1054,7 @@ export declare const userManagementCapability: {
1054
1054
  ids: z.ZodArray<z.ZodNumber>;
1055
1055
  }, z.core.$strip>, z.ZodObject<{
1056
1056
  kind: z.ZodLiteral<"types">;
1057
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
1057
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
1058
1058
  }, z.core.$strip>, z.ZodObject<{
1059
1059
  kind: z.ZodLiteral<"locations">;
1060
1060
  locations: z.ZodArray<z.ZodString>;
@@ -1139,7 +1139,7 @@ export declare const userManagementCapability: {
1139
1139
  ids: z.ZodArray<z.ZodNumber>;
1140
1140
  }, z.core.$strip>, z.ZodObject<{
1141
1141
  kind: z.ZodLiteral<"types">;
1142
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
1142
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
1143
1143
  }, z.core.$strip>, z.ZodObject<{
1144
1144
  kind: z.ZodLiteral<"locations">;
1145
1145
  locations: z.ZodArray<z.ZodString>;
@@ -1215,7 +1215,7 @@ export declare const userManagementCapability: {
1215
1215
  ids: z.ZodArray<z.ZodNumber>;
1216
1216
  }, z.core.$strip>, z.ZodObject<{
1217
1217
  kind: z.ZodLiteral<"types">;
1218
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
1218
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
1219
1219
  }, z.core.$strip>, z.ZodObject<{
1220
1220
  kind: z.ZodLiteral<"locations">;
1221
1221
  locations: z.ZodArray<z.ZodString>;
@@ -1269,7 +1269,7 @@ export declare const userManagementCapability: {
1269
1269
  ids: z.ZodArray<z.ZodNumber>;
1270
1270
  }, z.core.$strip>, z.ZodObject<{
1271
1271
  kind: z.ZodLiteral<"types">;
1272
- types: z.ZodArray<z.ZodEnum<typeof import("../addon.js").DeviceType>>;
1272
+ types: z.ZodArray<z.ZodEnum<typeof import("../index.js").DeviceType>>;
1273
1273
  }, z.core.$strip>, z.ZodObject<{
1274
1274
  kind: z.ZodLiteral<"locations">;
1275
1275
  locations: z.ZodArray<z.ZodString>;
@@ -0,0 +1,84 @@
1
+ /**
2
+ * "Asleep" and "gone" are two different facts, and a battery camera reports
3
+ * neither by itself.
4
+ *
5
+ * A mains camera answers "are you there?" because something may ask it. A
6
+ * battery camera may not be asked: the question IS the damage — a Baichuan
7
+ * login on a sleeping Argus is itself a wake event, so a reachability poll
8
+ * that proves a camera is alive is the same poll that flattens it (D173).
9
+ *
10
+ * That leaves exactly one honest way to tell a healthy sleeper from a dead
11
+ * battery: **wait, and notice**. Every signal that reaches us WITHOUT us
12
+ * reaching for the camera — a firmware push, an inbound motion email, an
13
+ * observed wake, a round-trip somebody else's demand already paid for — stamps
14
+ * `BatteryStatus.lastContactAt`. Silence past a threshold is then a positive
15
+ * observation rather than an absence of one.
16
+ *
17
+ * ## Why this is a function and not a stored field
18
+ *
19
+ * The stored fact is the CONTACT. The verdict is a reading of it against a
20
+ * clock and a threshold, so storing the verdict would create a second
21
+ * authority that goes stale the moment nobody rewrites it — the exact shape
22
+ * D62 forbids for per-camera switches, for the same reason: two knobs that can
23
+ * disagree are worse than one. Every surface (badge, camera status, snapshot
24
+ * courtesy frame, stream error) calls this, so they cannot disagree.
25
+ *
26
+ * ## The failure direction
27
+ *
28
+ * Toward `sleeping`. `unreachable` is a FAULT — it lights a badge and it is
29
+ * meant to be believed — so it is only ever returned when we have positively
30
+ * seen silence for longer than the threshold. A slice we have never written
31
+ * (`lastContactAt` absent or 0) answers `sleeping`, never `unreachable`: a
32
+ * freshly-adopted camera, or one whose slice was lost, has told us nothing,
33
+ * and "we know nothing" must never be painted as "it is broken". That is D62's
34
+ * rule — disabled must never look like broken — applied to the third state.
35
+ */
36
+ import type { BatteryStatus } from '../capabilities/battery.cap.js';
37
+ /**
38
+ * What a battery-operated device is doing, as far as PASSIVE evidence can say.
39
+ *
40
+ * - `awake` — the firmware is up right now. Reads are cheap, streams dial.
41
+ * - `sleeping` — low-power, and that is NORMAL. Not a fault, never a fault
42
+ * badge; a stream can still be had by asking for a wake.
43
+ * - `unreachable` — nothing passive has arrived for longer than the
44
+ * threshold. Flat battery, off the LAN, unpaired. This IS a fault and the
45
+ * surface must say so.
46
+ */
47
+ export type BatteryPresence = 'awake' | 'sleeping' | 'unreachable';
48
+ /**
49
+ * Default silence budget before a sleeping battery camera is called gone.
50
+ *
51
+ * Sized off the mechanism that produces contact, not off taste: a battery cam
52
+ * on this deployment surfaces a firmware push (battery level, sleep/wake, or a
53
+ * motion email) on the order of hours even with no visitors, and the snapshot
54
+ * wrapper's own battery window is 1 hour. Six hours is therefore several
55
+ * missed opportunities, not one — so a single quiet night does not raise a
56
+ * fault, and a genuinely flat camera is named well inside a day.
57
+ */
58
+ export declare const BATTERY_UNREACHABLE_AFTER_MS: number;
59
+ export interface BatteryPresenceInput {
60
+ /** The device's `battery` runtime-state slice, or `undefined` when it has none. */
61
+ readonly status: Pick<BatteryStatus, 'sleeping' | 'lastContactAt'> | undefined | null;
62
+ /** Clock. Pass explicitly from callers that already hold one. */
63
+ readonly nowMs: number;
64
+ /** Silence budget. Defaults to {@link BATTERY_UNREACHABLE_AFTER_MS}. */
65
+ readonly unreachableAfterMs?: number;
66
+ }
67
+ /**
68
+ * THE derivation. One crop rectangle, one presence verdict — see D52 for why
69
+ * this repo insists a derived value has exactly one implementation.
70
+ *
71
+ * `undefined` status ⇒ `sleeping`. A device with no slice has made no claim,
72
+ * and the caller decides separately whether it is even battery-operated
73
+ * (`DeviceFeature.BatteryOperated`); this function never answers that
74
+ * question, only what a battery device is doing.
75
+ */
76
+ export declare function deriveBatteryPresence(input: BatteryPresenceInput): BatteryPresence;
77
+ /**
78
+ * Is this presence a FAULT the operator should be told about?
79
+ *
80
+ * Exists so no surface has to re-decide it — the whole point of the third
81
+ * state is that `sleeping` stops being rendered as breakage, and a caller that
82
+ * writes `presence !== 'awake'` has silently undone that.
83
+ */
84
+ export declare function isBatteryPresenceFault(presence: BatteryPresence): boolean;
@@ -8808,14 +8808,14 @@ export type AppRouter = TrpcCoreRouter<{
8808
8808
  }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
8809
8809
  listCapabilities: import("@trpc/server").TRPCQueryProcedure<{
8810
8810
  input: void;
8811
- output: import("packages/types/dist").CapabilityInfo[];
8811
+ output: import("@camstack/types").CapabilityInfo[];
8812
8812
  meta: object;
8813
8813
  }>;
8814
8814
  getCapability: import("@trpc/server").TRPCQueryProcedure<{
8815
8815
  input: {
8816
8816
  name: string;
8817
8817
  };
8818
- output: import("packages/types/dist").CapabilityInfo | null;
8818
+ output: import("@camstack/types").CapabilityInfo | null;
8819
8819
  meta: object;
8820
8820
  }>;
8821
8821
  setActiveSingleton: import("@trpc/server").TRPCMutationProcedure<{
@@ -8887,14 +8887,14 @@ export type AppRouter = TrpcCoreRouter<{
8887
8887
  }>> & import("@trpc/server").TRPCDecorateCreateRouterOptions<{
8888
8888
  listCapabilities: import("@trpc/server").TRPCQueryProcedure<{
8889
8889
  input: void;
8890
- output: import("packages/types/dist").CapabilityInfo[];
8890
+ output: import("@camstack/types").CapabilityInfo[];
8891
8891
  meta: object;
8892
8892
  }>;
8893
8893
  getCapability: import("@trpc/server").TRPCQueryProcedure<{
8894
8894
  input: {
8895
8895
  name: string;
8896
8896
  };
8897
- output: import("packages/types/dist").CapabilityInfo | null;
8897
+ output: import("@camstack/types").CapabilityInfo | null;
8898
8898
  meta: object;
8899
8899
  }>;
8900
8900
  setActiveSingleton: import("@trpc/server").TRPCMutationProcedure<{
@@ -9131,14 +9131,14 @@ export type AppRouter = TrpcCoreRouter<{
9131
9131
  category?: string | undefined;
9132
9132
  limit?: number | undefined;
9133
9133
  } | undefined;
9134
- output: readonly import("packages/types/dist").SystemEvent[];
9134
+ output: readonly import("@camstack/types").SystemEvent[];
9135
9135
  meta: object;
9136
9136
  }>;
9137
9137
  onEvent: import("@trpc/server").TRPCSubscriptionProcedure<{
9138
9138
  input: {
9139
9139
  category?: string | undefined;
9140
9140
  };
9141
- output: AsyncIterable<import("packages/types/dist").SystemEvent, any, any>;
9141
+ output: AsyncIterable<import("@camstack/types").SystemEvent, any, any>;
9142
9142
  meta: object;
9143
9143
  }>;
9144
9144
  onDeviceEvent: import("@trpc/server").TRPCSubscriptionProcedure<{
@@ -9154,14 +9154,14 @@ export type AppRouter = TrpcCoreRouter<{
9154
9154
  category?: string | undefined;
9155
9155
  limit?: number | undefined;
9156
9156
  } | undefined;
9157
- output: readonly import("packages/types/dist").SystemEvent[];
9157
+ output: readonly import("@camstack/types").SystemEvent[];
9158
9158
  meta: object;
9159
9159
  }>;
9160
9160
  onEvent: import("@trpc/server").TRPCSubscriptionProcedure<{
9161
9161
  input: {
9162
9162
  category?: string | undefined;
9163
9163
  };
9164
- output: AsyncIterable<import("packages/types/dist").SystemEvent, any, any>;
9164
+ output: AsyncIterable<import("@camstack/types").SystemEvent, any, any>;
9165
9165
  meta: object;
9166
9166
  }>;
9167
9167
  onDeviceEvent: import("@trpc/server").TRPCSubscriptionProcedure<{
@@ -49,6 +49,7 @@ import { ptzAutotrackCapability } from '../capabilities/ptz-autotrack.cap.js';
49
49
  import { sceneMonitorCapability } from '../capabilities/scene-monitor.cap.js';
50
50
  import { scriptRunnerCapability } from '../capabilities/script-runner.cap.js';
51
51
  import { smokeCapability } from '../capabilities/smoke.cap.js';
52
+ import { streamCatalogCapability } from '../capabilities/stream-catalog.cap.js';
52
53
  import { streamParamsCapability } from '../capabilities/stream-params.cap.js';
53
54
  import { switchCapability } from '../capabilities/switch.cap.js';
54
55
  import { tamperCapability } from '../capabilities/tamper.cap.js';
@@ -124,6 +125,7 @@ export interface DeviceLocalState {
124
125
  sceneMonitor: InferRuntimeState<typeof sceneMonitorCapability>;
125
126
  scriptRunner: InferRuntimeState<typeof scriptRunnerCapability>;
126
127
  smoke: InferRuntimeState<typeof smokeCapability>;
128
+ streamCatalog: InferRuntimeState<typeof streamCatalogCapability>;
127
129
  streamParams: InferRuntimeState<typeof streamParamsCapability>;
128
130
  switch: InferRuntimeState<typeof switchCapability>;
129
131
  tamper: InferRuntimeState<typeof tamperCapability>;
@@ -209,6 +211,7 @@ export interface CapNameToRuntimeStateMap {
209
211
  'scene-monitor': InferRuntimeState<typeof sceneMonitorCapability>;
210
212
  'script-runner': InferRuntimeState<typeof scriptRunnerCapability>;
211
213
  'smoke': InferRuntimeState<typeof smokeCapability>;
214
+ 'stream-catalog': InferRuntimeState<typeof streamCatalogCapability>;
212
215
  'stream-params': InferRuntimeState<typeof streamParamsCapability>;
213
216
  'switch': InferRuntimeState<typeof switchCapability>;
214
217
  'tamper': InferRuntimeState<typeof tamperCapability>;
@@ -154,6 +154,7 @@ export interface DeviceProxyState {
154
154
  readonly sceneMonitor: SliceHandle<InferRuntimeState<typeof sceneMonitorCapability>>;
155
155
  readonly scriptRunner: SliceHandle<InferRuntimeState<typeof scriptRunnerCapability>>;
156
156
  readonly smoke: SliceHandle<InferRuntimeState<typeof smokeCapability>>;
157
+ readonly streamCatalog: SliceHandle<InferRuntimeState<typeof streamCatalogCapability>>;
157
158
  readonly streamParams: SliceHandle<InferRuntimeState<typeof streamParamsCapability>>;
158
159
  readonly switch: SliceHandle<InferRuntimeState<typeof switchCapability>>;
159
160
  readonly tamper: SliceHandle<InferRuntimeState<typeof tamperCapability>>;
@@ -11,7 +11,7 @@ export interface RuntimeStatePolicy {
11
11
  }
12
12
  /**
13
13
  * Per-cap runtime-state policy, projected from every `*.cap.ts` that declares
14
- * `runtimeState`. 63 caps: 33 `restored`, 30 `session`.
14
+ * `runtimeState`. 64 caps: 34 `restored`, 30 `session`.
15
15
  *
16
16
  * A cap absent from this map has no runtime-state slice at all. A cap PRESENT
17
17
  * with `durability: 'session'` has one and has decided not to keep it.
package/dist/index.d.ts CHANGED
@@ -147,6 +147,8 @@ export { DeviceRuntimeState } from './device/device-runtime-state.js';
147
147
  export type { SliceHandle, SliceHandleApi, SliceHandleSource, } from './device/device-state-handle.js';
148
148
  export { createLazyTrpcSource, createMirrorSource, createSliceHandle, } from './device/device-state-handle.js';
149
149
  export { ChargingStatus, DeviceFeature, DeviceRole, DeviceType } from './device/device-type.js';
150
+ export type { BatteryPresence, BatteryPresenceInput } from './device/battery-presence.js';
151
+ export { BATTERY_UNREACHABLE_AFTER_MS, deriveBatteryPresence, isBatteryPresenceFault, } from './device/battery-presence.js';
150
152
  export type { IBatteryOperated, IDoorbellButton, INativeSnapshot, IPanTiltZoom, IRebootable, ITwoWayAudio, } from './device/features.js';
151
153
  export { getByPath, setByPath } from './device/path-util.js';
152
154
  export type { ReachabilityPollHandle, ReachabilityPollLogger, ReachabilityPollOptions, } from './device/reachability-poll.js';
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_event_category = require("./event-category-D3gG7oil.js");
3
- const require_sleep = require("./sleep-DslGLq5_.js");
3
+ const require_sleep = require("./sleep-CoL-9qhR.js");
4
4
  const require_canonical_hash = require("./canonical-hash-DNV8S5ET.js");
5
5
  const require_enums = require("./enums.js");
6
6
  const require_err_msg = require("./err-msg-COpsHMw2.js");
@@ -19097,7 +19097,16 @@ targets: zod.z.array(zod.z.object({
19097
19097
  /** A sleeping battery camera: the frame is deliberately stale and will
19098
19098
  * NOT refresh in the background. A surface should say so rather than
19099
19099
  * present it as current. */
19100
- sleeping: zod.z.boolean()
19100
+ sleeping: zod.z.boolean(),
19101
+ /** Current device state rendered over the cached frame. State images
19102
+ * remain authoritative even when their photographic background is
19103
+ * old; null means the link must carry a current camera frame. */
19104
+ stateReason: zod.z.enum([
19105
+ "disabled",
19106
+ "sleeping",
19107
+ "unreachable",
19108
+ "waking"
19109
+ ]).nullable()
19101
19110
  })))
19102
19111
  },
19103
19112
  status: {
@@ -21363,6 +21372,25 @@ var BatteryStatusSchema = zod.z.object({
21363
21372
  /** Ms epoch of the last observation. Lets consumers reason about freshness. */
21364
21373
  lastUpdated: zod.z.number(),
21365
21374
  /**
21375
+ * Ms epoch of the last time the device PROVED it was reachable — a
21376
+ * completed firmware round-trip, an observed wake, or an inbound push
21377
+ * (firmware event, email). `0`/absent = never since this slice was born.
21378
+ *
21379
+ * This is the ONLY input that separates "asleep" from "gone", and it is
21380
+ * fed exclusively by PASSIVE signals: nothing may write it by reaching
21381
+ * for the radio, because a poll that confirms reachability is the same
21382
+ * poll that drains the battery. See {@link deriveBatteryPresence} — the
21383
+ * single derivation every consumer must use; no surface computes its own.
21384
+ *
21385
+ * It is deliberately NOT a clock in the
21386
+ * `scripts/check-runtime-state-durability.ts` sense: it is the
21387
+ * observation itself, and it is the only thing a 30-hour silence is
21388
+ * visible in. Writers quantise it (see `CONTACT_WRITE_QUANTUM_MS` in the
21389
+ * Reolink provider) so a value that means "recently" cannot cost a
21390
+ * SQLite commit per round-trip.
21391
+ */
21392
+ lastContactAt: zod.z.number().optional(),
21393
+ /**
21366
21394
  * True when the source is a BINARY low-battery indicator (HA
21367
21395
  * `binary_sensor` device_class=battery / `LOW_BAT`) that has no real
21368
21396
  * charge level — `percentage` is then a coarse stand-in (100 = normal,
@@ -28335,13 +28363,63 @@ var CamStreamDescriptorSchema = zod.z.object({
28335
28363
  * set of stream descriptors it can offer for the device, synchronously, so the
28336
28364
  * broker can reconcile its registry against the authoritative provider state.
28337
28365
  */
28366
+ /**
28367
+ * The catalog as a DURABLE fact rather than a live answer.
28368
+ *
28369
+ * A battery camera's descriptors are profile-stable — they change when the
28370
+ * operator rewrites an encoder profile, not minute to minute — but building
28371
+ * them costs a Baichuan login, which on a sleeping Argus IS a wake. So the
28372
+ * provider is allowed to build them exactly once per profile and must serve
28373
+ * every later pull from a cache.
28374
+ *
28375
+ * Holding that cache only in RAM is what turned a restart into an outage. The
28376
+ * runner comes back with the camera asleep, `buildStreamCatalogUncached`
28377
+ * correctly refuses to wake it, the pull answers `[]`, the broker has no
28378
+ * cam-stream entry to build a broker from, and `webrtcSession.handleOffer`
28379
+ * fails with a flat "No broker for stream" — for as long as the camera sleeps,
28380
+ * which on a battery cam is most of the day. The camera was fine. The stream
28381
+ * was unreachable because the process had forgotten what the camera offers.
28382
+ *
28383
+ * Declaring it here puts it in `device-runtime-state`, the kernel's canonical
28384
+ * declared collection, with the same `restored` durability `battery` uses for
28385
+ * the same reason: the last known value is the only value there is while the
28386
+ * device is asleep. The broker's brokers are therefore always DEFINABLE — it
28387
+ * is the DIAL that wakes a camera, never the catalog (D173).
28388
+ */
28389
+ var StreamCatalogStateSchema = zod.z.object({
28390
+ /** The descriptors as last built from a real camera response. Never a guess:
28391
+ * a failed or refused build writes NOTHING, so a restored catalog is always
28392
+ * one the camera itself once produced. */
28393
+ descriptors: zod.z.array(CamStreamDescriptorSchema),
28394
+ /** Ms epoch of the build that produced {@link descriptors}. Lets the wake
28395
+ * path decide whether the camera's own awake window is worth spending on a
28396
+ * re-read. */
28397
+ lastFetchedAt: zod.z.number()
28398
+ });
28338
28399
  var streamCatalogCapability = {
28339
28400
  name: "stream-catalog",
28340
28401
  scope: "device",
28341
28402
  deviceNative: true,
28342
28403
  mode: "singleton",
28343
28404
  deviceTypes: [require_sleep.DeviceType.Camera],
28344
- methods: { getCatalog: require_sleep.method(zod.z.object({ deviceId: zod.z.number().int().nonnegative() }), zod.z.array(CamStreamDescriptorSchema).readonly()) }
28405
+ methods: { getCatalog: require_sleep.method(zod.z.object({ deviceId: zod.z.number().int().nonnegative() }), zod.z.array(CamStreamDescriptorSchema).readonly()) },
28406
+ runtimeState: StreamCatalogStateSchema,
28407
+ /**
28408
+ * Runtime-state durability: **restored** — see the schema doc. A cold
28409
+ * catalog on a sleeping battery camera is not a slow first frame, it is a
28410
+ * camera that cannot be watched at all until it happens to wake.
28411
+ *
28412
+ * Churn is nil by construction: the slice is written only by a SUCCESSFUL
28413
+ * build, and a build only runs when there is no cached copy (or the copy is
28414
+ * a day old and the camera is awake anyway).
28415
+ *
28416
+ * See `RuntimeStateDurability`. Enforced by
28417
+ * `scripts/check-runtime-state-durability.ts`.
28418
+ */
28419
+ durability: "restored",
28420
+ /** Clock field: written, but excluded from the compare that decides whether
28421
+ * persisting is worth a SQLite commit — the descriptors are the value. */
28422
+ volatileStateFields: ["lastFetchedAt"]
28345
28423
  };
28346
28424
  //#endregion
28347
28425
  //#region src/capabilities/stream-params.cap.ts
@@ -30572,6 +30650,7 @@ var DEVICE_LOCAL_STATE_CAPS = {
30572
30650
  sceneMonitor: sceneMonitorCapability,
30573
30651
  scriptRunner: scriptRunnerCapability,
30574
30652
  smoke: smokeCapability,
30653
+ streamCatalog: streamCatalogCapability,
30575
30654
  streamParams: streamParamsCapability,
30576
30655
  switch: switchCapability,
30577
30656
  tamper: tamperCapability,
@@ -31795,6 +31874,47 @@ function resolveDeviceProfile(features) {
31795
31874
  return null;
31796
31875
  }
31797
31876
  //#endregion
31877
+ //#region src/device/battery-presence.ts
31878
+ /**
31879
+ * Default silence budget before a sleeping battery camera is called gone.
31880
+ *
31881
+ * Sized off the mechanism that produces contact, not off taste: a battery cam
31882
+ * on this deployment surfaces a firmware push (battery level, sleep/wake, or a
31883
+ * motion email) on the order of hours even with no visitors, and the snapshot
31884
+ * wrapper's own battery window is 1 hour. Six hours is therefore several
31885
+ * missed opportunities, not one — so a single quiet night does not raise a
31886
+ * fault, and a genuinely flat camera is named well inside a day.
31887
+ */
31888
+ var BATTERY_UNREACHABLE_AFTER_MS = 360 * 6e4;
31889
+ /**
31890
+ * THE derivation. One crop rectangle, one presence verdict — see D52 for why
31891
+ * this repo insists a derived value has exactly one implementation.
31892
+ *
31893
+ * `undefined` status ⇒ `sleeping`. A device with no slice has made no claim,
31894
+ * and the caller decides separately whether it is even battery-operated
31895
+ * (`DeviceFeature.BatteryOperated`); this function never answers that
31896
+ * question, only what a battery device is doing.
31897
+ */
31898
+ function deriveBatteryPresence(input) {
31899
+ const status = input.status;
31900
+ if (!status) return "sleeping";
31901
+ if (status.sleeping !== true) return "awake";
31902
+ const lastContactAt = status.lastContactAt;
31903
+ if (typeof lastContactAt !== "number" || lastContactAt <= 0) return "sleeping";
31904
+ const budget = input.unreachableAfterMs ?? 216e5;
31905
+ return input.nowMs - lastContactAt > budget ? "unreachable" : "sleeping";
31906
+ }
31907
+ /**
31908
+ * Is this presence a FAULT the operator should be told about?
31909
+ *
31910
+ * Exists so no surface has to re-decide it — the whole point of the third
31911
+ * state is that `sleeping` stops being rendered as breakage, and a caller that
31912
+ * writes `presence !== 'awake'` has silently undone that.
31913
+ */
31914
+ function isBatteryPresenceFault(presence) {
31915
+ return presence === "unreachable";
31916
+ }
31917
+ //#endregion
31798
31918
  //#region src/device/path-util.ts
31799
31919
  /** Returns true when `x` is a non-null, non-array plain object. */
31800
31920
  function isRecord(x) {
@@ -41562,7 +41682,7 @@ function getCapsByProviderKind(kind) {
41562
41682
  //#region src/generated/runtime-state-durability.ts
41563
41683
  /**
41564
41684
  * Per-cap runtime-state policy, projected from every `*.cap.ts` that declares
41565
- * `runtimeState`. 63 caps: 33 `restored`, 30 `session`.
41685
+ * `runtimeState`. 64 caps: 34 `restored`, 30 `session`.
41566
41686
  *
41567
41687
  * A cap absent from this map has no runtime-state slice at all. A cap PRESENT
41568
41688
  * with `durability: 'session'` has one and has decided not to keep it.
@@ -41768,6 +41888,10 @@ var RUNTIME_STATE_POLICY = {
41768
41888
  durability: "restored",
41769
41889
  volatileFields: ["lastChangedAt"]
41770
41890
  },
41891
+ "stream-catalog": {
41892
+ durability: "restored",
41893
+ volatileFields: ["lastFetchedAt"]
41894
+ },
41771
41895
  "stream-params": {
41772
41896
  durability: "restored",
41773
41897
  volatileFields: ["lastFetchedAt"]
@@ -41868,6 +41992,7 @@ var RESTORED_CAP_NAMES = [
41868
41992
  "pressure-sensor",
41869
41993
  "privacy-mask",
41870
41994
  "smoke",
41995
+ "stream-catalog",
41871
41996
  "stream-params",
41872
41997
  "switch",
41873
41998
  "tamper",
@@ -45595,6 +45720,7 @@ exports.AvailableIntegrationTypeSchema = AvailableIntegrationTypeSchema;
45595
45720
  exports.BACKEND_TO_FORMAT = BACKEND_TO_FORMAT;
45596
45721
  exports.BASE_LIVE_EGRESS_PROFILE = BASE_LIVE_EGRESS_PROFILE;
45597
45722
  exports.BATTERY_DEVICE_PROFILE = BATTERY_DEVICE_PROFILE;
45723
+ exports.BATTERY_UNREACHABLE_AFTER_MS = BATTERY_UNREACHABLE_AFTER_MS;
45598
45724
  exports.BOOT_RECOVERY_BACKOFF_MS = require_sleep.BOOT_RECOVERY_BACKOFF_MS;
45599
45725
  exports.BacklightModeSchema = BacklightModeSchema;
45600
45726
  exports.BackupDestinationInfoSchema = BackupDestinationInfoSchema;
@@ -46522,6 +46648,7 @@ exports.decodeVectorBase64 = decodeVectorBase64;
46522
46648
  exports.decoderCapability = decoderCapability;
46523
46649
  exports.defaultDeviceFor = defaultDeviceFor;
46524
46650
  exports.defineCustomActions = defineCustomActions;
46651
+ exports.deriveBatteryPresence = deriveBatteryPresence;
46525
46652
  exports.deriveCameraSwitches = deriveCameraSwitches;
46526
46653
  exports.deriveDetailCropRect = deriveDetailCropRect;
46527
46654
  exports.deriveRecordingMode = deriveRecordingMode;
@@ -46591,6 +46718,7 @@ exports.isAgentOnlyPlacement = isAgentOnlyPlacement;
46591
46718
  exports.isArrayOutputSchema = isArrayOutputSchema;
46592
46719
  exports.isAudioLabelSelected = isAudioLabelSelected;
46593
46720
  exports.isBaseConditionKey = isBaseConditionKey;
46721
+ exports.isBatteryPresenceFault = isBatteryPresenceFault;
46594
46722
  exports.isCollectionArrayMethod = isCollectionArrayMethod;
46595
46723
  exports.isDeployableToAgent = isDeployableToAgent;
46596
46724
  exports.isDetectionMacroClass = isDetectionMacroClass;
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { t as EventCategory } from "./event-category-Bxo5yJjt.mjs";
2
- import { $ as EncodedPacketSchema, A as expandCapMethods, B as ReadinessTimeoutError, C as DeviceRole, Ct as WELL_KNOWN_TABS, D as DEVICE_SETTINGS_CONTRIBUTION_METHODS, Dt as hydrateSchema, E as DEFAULT_RUNTIME_STATE_DURABILITY, Et as collectHydratedFieldValues, F as CAP_NODE_PIN_CONTEXT_KEY, G as BrokerStatusSchema, H as readinessKey, I as nodePin, J as CamStreamKindSchema, K as CAM_PROFILE_ORDER, L as readNodePin, M as method, N as resolveCapMount, O as DEVICE_STATUS_METHOD, Ot as resolveHydratedFieldValue, P as systemMethod, Q as DecodedFrameSchema, R as toNodeId, S as DeviceFeature, St as isEvent, T as adminUiCapability, Tt as collectHydratedFieldEntries, U as scopeKey, V as emitDownForOwnedCaps, W as BrokerStatsSchema, X as CameraStreamSchema, Y as CamStreamResolutionSchema, Z as DecodedAudioChunkSchema, _ as createSliceHandle, _t as BaseAddon, a as asJsonObject, at as StreamSourceEntrySchema, b as viewerUiCapability, bt as createEvent, c as parseJsonArray, ct as SubscribeAudioChunksResultSchema, d as BOOT_RECOVERY_BACKOFF_MS, dt as makeProfileBrokerId, et as FrameHandleFormatSchema, f as DEVICE_SCOPED_CAPS, ft as makeSourceBrokerId, g as createMirrorSource, gt as DisposerChain, h as createLazyTrpcSource, ht as DATAPLANE_SECRET_HEADER, i as asJsonArray, it as ProfileSlotStatusSchema, j as isDeviceConfigCap, k as event, l as parseJsonObject, lt as SubscribeFramesInputSchema, m as createDeviceProxy, mt as selectAssignedProfileSlots, n as sleepCancellable, nt as ProfileRtspEntrySchema, o as asNumber, ot as StreamSourceSchema, p as isDeviceScopedCap, pt as parseProfileBrokerId, q as CamProfileSchema, r as asBoolean, rt as ProfileSlotSchema, s as asString, st as SubscribeAudioChunksInputSchema, t as sleep, tt as FrameHandleSchema, u as parseJsonUnknown, ut as SubscribeFramesResultSchema, v as RawStateResultSchema, vt as normalizeAddonInitResult, w as DeviceType, wt as WELL_KNOWN_TAB_MAP, x as ChargingStatus, xt as emitReadiness, y as deviceOpsCapability, yt as createDurableState, z as ReadinessRegistry } from "./sleep-BfRjZ3C3.mjs";
2
+ import { $ as EncodedPacketSchema, A as expandCapMethods, B as ReadinessTimeoutError, C as DeviceRole, Ct as WELL_KNOWN_TABS, D as DEVICE_SETTINGS_CONTRIBUTION_METHODS, Dt as hydrateSchema, E as DEFAULT_RUNTIME_STATE_DURABILITY, Et as collectHydratedFieldValues, F as CAP_NODE_PIN_CONTEXT_KEY, G as BrokerStatusSchema, H as readinessKey, I as nodePin, J as CamStreamKindSchema, K as CAM_PROFILE_ORDER, L as readNodePin, M as method, N as resolveCapMount, O as DEVICE_STATUS_METHOD, Ot as resolveHydratedFieldValue, P as systemMethod, Q as DecodedFrameSchema, R as toNodeId, S as DeviceFeature, St as isEvent, T as adminUiCapability, Tt as collectHydratedFieldEntries, U as scopeKey, V as emitDownForOwnedCaps, W as BrokerStatsSchema, X as CameraStreamSchema, Y as CamStreamResolutionSchema, Z as DecodedAudioChunkSchema, _ as createSliceHandle, _t as BaseAddon, a as asJsonObject, at as StreamSourceEntrySchema, b as viewerUiCapability, bt as createEvent, c as parseJsonArray, ct as SubscribeAudioChunksResultSchema, d as BOOT_RECOVERY_BACKOFF_MS, dt as makeProfileBrokerId, et as FrameHandleFormatSchema, f as DEVICE_SCOPED_CAPS, ft as makeSourceBrokerId, g as createMirrorSource, gt as DisposerChain, h as createLazyTrpcSource, ht as DATAPLANE_SECRET_HEADER, i as asJsonArray, it as ProfileSlotStatusSchema, j as isDeviceConfigCap, k as event, l as parseJsonObject, lt as SubscribeFramesInputSchema, m as createDeviceProxy, mt as selectAssignedProfileSlots, n as sleepCancellable, nt as ProfileRtspEntrySchema, o as asNumber, ot as StreamSourceSchema, p as isDeviceScopedCap, pt as parseProfileBrokerId, q as CamProfileSchema, r as asBoolean, rt as ProfileSlotSchema, s as asString, st as SubscribeAudioChunksInputSchema, t as sleep, tt as FrameHandleSchema, u as parseJsonUnknown, ut as SubscribeFramesResultSchema, v as RawStateResultSchema, vt as normalizeAddonInitResult, w as DeviceType, wt as WELL_KNOWN_TAB_MAP, x as ChargingStatus, xt as emitReadiness, y as deviceOpsCapability, yt as createDurableState, z as ReadinessRegistry } from "./sleep-DlC2kJYf.mjs";
3
3
  import { a as buildAudioArgs, c as buildVideoArgs, d as logBannerArgs, f as pickVideoEncoder, i as audioPlanFromEncodeProfile, l as invocationFromEncodeProfile, n as Fmp4BoxSplitter, o as buildFfmpegArgs, r as AUDIO_PRESETS, s as buildInputArgs, t as canonicalHash, u as isSoftwareDecode } from "./canonical-hash-rO1sRmEK.mjs";
4
4
  import { EventSourceType } from "./enums.mjs";
5
5
  import { t as errMsg } from "./err-msg-IQTHeDzc.mjs";
@@ -19096,7 +19096,16 @@ targets: z.array(z.object({
19096
19096
  /** A sleeping battery camera: the frame is deliberately stale and will
19097
19097
  * NOT refresh in the background. A surface should say so rather than
19098
19098
  * present it as current. */
19099
- sleeping: z.boolean()
19099
+ sleeping: z.boolean(),
19100
+ /** Current device state rendered over the cached frame. State images
19101
+ * remain authoritative even when their photographic background is
19102
+ * old; null means the link must carry a current camera frame. */
19103
+ stateReason: z.enum([
19104
+ "disabled",
19105
+ "sleeping",
19106
+ "unreachable",
19107
+ "waking"
19108
+ ]).nullable()
19100
19109
  })))
19101
19110
  },
19102
19111
  status: {
@@ -21362,6 +21371,25 @@ var BatteryStatusSchema = z.object({
21362
21371
  /** Ms epoch of the last observation. Lets consumers reason about freshness. */
21363
21372
  lastUpdated: z.number(),
21364
21373
  /**
21374
+ * Ms epoch of the last time the device PROVED it was reachable — a
21375
+ * completed firmware round-trip, an observed wake, or an inbound push
21376
+ * (firmware event, email). `0`/absent = never since this slice was born.
21377
+ *
21378
+ * This is the ONLY input that separates "asleep" from "gone", and it is
21379
+ * fed exclusively by PASSIVE signals: nothing may write it by reaching
21380
+ * for the radio, because a poll that confirms reachability is the same
21381
+ * poll that drains the battery. See {@link deriveBatteryPresence} — the
21382
+ * single derivation every consumer must use; no surface computes its own.
21383
+ *
21384
+ * It is deliberately NOT a clock in the
21385
+ * `scripts/check-runtime-state-durability.ts` sense: it is the
21386
+ * observation itself, and it is the only thing a 30-hour silence is
21387
+ * visible in. Writers quantise it (see `CONTACT_WRITE_QUANTUM_MS` in the
21388
+ * Reolink provider) so a value that means "recently" cannot cost a
21389
+ * SQLite commit per round-trip.
21390
+ */
21391
+ lastContactAt: z.number().optional(),
21392
+ /**
21365
21393
  * True when the source is a BINARY low-battery indicator (HA
21366
21394
  * `binary_sensor` device_class=battery / `LOW_BAT`) that has no real
21367
21395
  * charge level — `percentage` is then a coarse stand-in (100 = normal,
@@ -28334,13 +28362,63 @@ var CamStreamDescriptorSchema = z.object({
28334
28362
  * set of stream descriptors it can offer for the device, synchronously, so the
28335
28363
  * broker can reconcile its registry against the authoritative provider state.
28336
28364
  */
28365
+ /**
28366
+ * The catalog as a DURABLE fact rather than a live answer.
28367
+ *
28368
+ * A battery camera's descriptors are profile-stable — they change when the
28369
+ * operator rewrites an encoder profile, not minute to minute — but building
28370
+ * them costs a Baichuan login, which on a sleeping Argus IS a wake. So the
28371
+ * provider is allowed to build them exactly once per profile and must serve
28372
+ * every later pull from a cache.
28373
+ *
28374
+ * Holding that cache only in RAM is what turned a restart into an outage. The
28375
+ * runner comes back with the camera asleep, `buildStreamCatalogUncached`
28376
+ * correctly refuses to wake it, the pull answers `[]`, the broker has no
28377
+ * cam-stream entry to build a broker from, and `webrtcSession.handleOffer`
28378
+ * fails with a flat "No broker for stream" — for as long as the camera sleeps,
28379
+ * which on a battery cam is most of the day. The camera was fine. The stream
28380
+ * was unreachable because the process had forgotten what the camera offers.
28381
+ *
28382
+ * Declaring it here puts it in `device-runtime-state`, the kernel's canonical
28383
+ * declared collection, with the same `restored` durability `battery` uses for
28384
+ * the same reason: the last known value is the only value there is while the
28385
+ * device is asleep. The broker's brokers are therefore always DEFINABLE — it
28386
+ * is the DIAL that wakes a camera, never the catalog (D173).
28387
+ */
28388
+ var StreamCatalogStateSchema = z.object({
28389
+ /** The descriptors as last built from a real camera response. Never a guess:
28390
+ * a failed or refused build writes NOTHING, so a restored catalog is always
28391
+ * one the camera itself once produced. */
28392
+ descriptors: z.array(CamStreamDescriptorSchema),
28393
+ /** Ms epoch of the build that produced {@link descriptors}. Lets the wake
28394
+ * path decide whether the camera's own awake window is worth spending on a
28395
+ * re-read. */
28396
+ lastFetchedAt: z.number()
28397
+ });
28337
28398
  var streamCatalogCapability = {
28338
28399
  name: "stream-catalog",
28339
28400
  scope: "device",
28340
28401
  deviceNative: true,
28341
28402
  mode: "singleton",
28342
28403
  deviceTypes: [DeviceType.Camera],
28343
- methods: { getCatalog: method(z.object({ deviceId: z.number().int().nonnegative() }), z.array(CamStreamDescriptorSchema).readonly()) }
28404
+ methods: { getCatalog: method(z.object({ deviceId: z.number().int().nonnegative() }), z.array(CamStreamDescriptorSchema).readonly()) },
28405
+ runtimeState: StreamCatalogStateSchema,
28406
+ /**
28407
+ * Runtime-state durability: **restored** — see the schema doc. A cold
28408
+ * catalog on a sleeping battery camera is not a slow first frame, it is a
28409
+ * camera that cannot be watched at all until it happens to wake.
28410
+ *
28411
+ * Churn is nil by construction: the slice is written only by a SUCCESSFUL
28412
+ * build, and a build only runs when there is no cached copy (or the copy is
28413
+ * a day old and the camera is awake anyway).
28414
+ *
28415
+ * See `RuntimeStateDurability`. Enforced by
28416
+ * `scripts/check-runtime-state-durability.ts`.
28417
+ */
28418
+ durability: "restored",
28419
+ /** Clock field: written, but excluded from the compare that decides whether
28420
+ * persisting is worth a SQLite commit — the descriptors are the value. */
28421
+ volatileStateFields: ["lastFetchedAt"]
28344
28422
  };
28345
28423
  //#endregion
28346
28424
  //#region src/capabilities/stream-params.cap.ts
@@ -30571,6 +30649,7 @@ var DEVICE_LOCAL_STATE_CAPS = {
30571
30649
  sceneMonitor: sceneMonitorCapability,
30572
30650
  scriptRunner: scriptRunnerCapability,
30573
30651
  smoke: smokeCapability,
30652
+ streamCatalog: streamCatalogCapability,
30574
30653
  streamParams: streamParamsCapability,
30575
30654
  switch: switchCapability,
30576
30655
  tamper: tamperCapability,
@@ -31794,6 +31873,47 @@ function resolveDeviceProfile(features) {
31794
31873
  return null;
31795
31874
  }
31796
31875
  //#endregion
31876
+ //#region src/device/battery-presence.ts
31877
+ /**
31878
+ * Default silence budget before a sleeping battery camera is called gone.
31879
+ *
31880
+ * Sized off the mechanism that produces contact, not off taste: a battery cam
31881
+ * on this deployment surfaces a firmware push (battery level, sleep/wake, or a
31882
+ * motion email) on the order of hours even with no visitors, and the snapshot
31883
+ * wrapper's own battery window is 1 hour. Six hours is therefore several
31884
+ * missed opportunities, not one — so a single quiet night does not raise a
31885
+ * fault, and a genuinely flat camera is named well inside a day.
31886
+ */
31887
+ var BATTERY_UNREACHABLE_AFTER_MS = 360 * 6e4;
31888
+ /**
31889
+ * THE derivation. One crop rectangle, one presence verdict — see D52 for why
31890
+ * this repo insists a derived value has exactly one implementation.
31891
+ *
31892
+ * `undefined` status ⇒ `sleeping`. A device with no slice has made no claim,
31893
+ * and the caller decides separately whether it is even battery-operated
31894
+ * (`DeviceFeature.BatteryOperated`); this function never answers that
31895
+ * question, only what a battery device is doing.
31896
+ */
31897
+ function deriveBatteryPresence(input) {
31898
+ const status = input.status;
31899
+ if (!status) return "sleeping";
31900
+ if (status.sleeping !== true) return "awake";
31901
+ const lastContactAt = status.lastContactAt;
31902
+ if (typeof lastContactAt !== "number" || lastContactAt <= 0) return "sleeping";
31903
+ const budget = input.unreachableAfterMs ?? 216e5;
31904
+ return input.nowMs - lastContactAt > budget ? "unreachable" : "sleeping";
31905
+ }
31906
+ /**
31907
+ * Is this presence a FAULT the operator should be told about?
31908
+ *
31909
+ * Exists so no surface has to re-decide it — the whole point of the third
31910
+ * state is that `sleeping` stops being rendered as breakage, and a caller that
31911
+ * writes `presence !== 'awake'` has silently undone that.
31912
+ */
31913
+ function isBatteryPresenceFault(presence) {
31914
+ return presence === "unreachable";
31915
+ }
31916
+ //#endregion
31797
31917
  //#region src/device/path-util.ts
31798
31918
  /** Returns true when `x` is a non-null, non-array plain object. */
31799
31919
  function isRecord(x) {
@@ -41561,7 +41681,7 @@ function getCapsByProviderKind(kind) {
41561
41681
  //#region src/generated/runtime-state-durability.ts
41562
41682
  /**
41563
41683
  * Per-cap runtime-state policy, projected from every `*.cap.ts` that declares
41564
- * `runtimeState`. 63 caps: 33 `restored`, 30 `session`.
41684
+ * `runtimeState`. 64 caps: 34 `restored`, 30 `session`.
41565
41685
  *
41566
41686
  * A cap absent from this map has no runtime-state slice at all. A cap PRESENT
41567
41687
  * with `durability: 'session'` has one and has decided not to keep it.
@@ -41767,6 +41887,10 @@ var RUNTIME_STATE_POLICY = {
41767
41887
  durability: "restored",
41768
41888
  volatileFields: ["lastChangedAt"]
41769
41889
  },
41890
+ "stream-catalog": {
41891
+ durability: "restored",
41892
+ volatileFields: ["lastFetchedAt"]
41893
+ },
41770
41894
  "stream-params": {
41771
41895
  durability: "restored",
41772
41896
  volatileFields: ["lastFetchedAt"]
@@ -41867,6 +41991,7 @@ var RESTORED_CAP_NAMES = [
41867
41991
  "pressure-sensor",
41868
41992
  "privacy-mask",
41869
41993
  "smoke",
41994
+ "stream-catalog",
41870
41995
  "stream-params",
41871
41996
  "switch",
41872
41997
  "tamper",
@@ -45521,4 +45646,4 @@ function enumerateInferenceDevices(hw) {
45521
45646
  return out;
45522
45647
  }
45523
45648
  //#endregion
45524
- export { ACCESSORY_LABEL, ACCESS_ROLES, ALEXA_EGRESS_PROFILE, ALL_CAPABILITY_DEFINITIONS, APPLE_SA_TO_MACRO, AUDIO_ANALYSIS_CAP_NAME, AUDIO_BACKEND_CHOICES, AUDIO_MACRO_LABELS, AUDIO_PRESETS, AccessoriesStatusSchema, AccessoryKind, AddBrokerInputSchema, AddonAutoUpdateSchema, AddonListItemSchema, AddonPageDeclarationSchema, AddonPageInfoSchema, AdoptInputSchema as AdoptionAdoptInputSchema, AdoptResultSchema as AdoptionAdoptResultSchema, AdoptionCandidateResultSchema, AdoptionFilterSchema, GetCandidateInputSchema as AdoptionGetCandidateInputSchema, AdoptionJobSchema, AdoptionJobStateSchema, ListCandidatesInputSchema as AdoptionListCandidatesInputSchema, ListCandidatesOutputSchema as AdoptionListCandidatesOutputSchema, AdoptionOutcomeSchema, ReleaseInputSchema as AdoptionReleaseInputSchema, AdoptionStatusSchema, AgentLoadSummarySchema, AirQualitySensorStatusSchema, AlarmArmModeSchema, AlarmPanelStatusSchema, AlarmStateSchema, AlertSchema, AlertSeveritySchema, AlertSourceSchema, AlertStatusSchema, AmbientLightSensorStatusSchema, ApiKeyRecordSchema, ApiKeySummarySchema, ArchiveEntrySchema, ArchiveManifestSchema, AttachmentMediaTypeSchema, AttachmentSchema, AudioAnalysisResultSchema, AudioAnalysisSettingsSchema, AudioChunkInputSchema, AudioClassSummarySchema, AudioClassificationLabelSchema, AudioClassificationResultSchema, AudioCodecInfoSchema, AudioDecodeSessionConfigSchema, AudioEncodeSchema, AudioEncodeSessionConfigSchema, AudioEncodedChunkSchema, AudioEventSchema, AudioLevelSchema, AudioMetricsHistoryPointSchema, AudioMetricsHistorySchema, AudioMetricsSnapshotSchema, AudioPcmChunkSchema, AuthResultSchema, AutoUpdateSettingsSchema, AutomationActionSchema, AutomationConditionOperatorSchema, AutomationConditionSchema, AutomationControlStatusSchema, AutomationRecipeSchema, AutomationTriggerSchema, AvailableIntegrationTypeSchema, BACKEND_TO_FORMAT, BASE_LIVE_EGRESS_PROFILE, BATTERY_DEVICE_PROFILE, BOOT_RECOVERY_BACKOFF_MS, BacklightModeSchema, BackupDestinationInfoSchema, BackupEntrySchema, BaseAddon, BaseDevice, BaseDeviceProvider, BatteryStatusSchema, BinaryStatusSchema, BoundingBoxSchema, BrightnessStatusSchema, AddInputSchema as BrokerAddInputSchema, BrokerAudioClientSchema, BrokerClientsSchema, BrokerConnectionDetailsSchema, BrokerConsumerAttributionSchema, BrokerConsumerKindSchema, BrokerDecodedClientSchema, BrokerEncodedClientSchema, GetStateInputSchema as BrokerGetStateInputSchema, BrokerInfoSchema, BrokerProviderInfoSchema, PublishInputSchema as BrokerPublishInputSchema, RegistryStatusSchema as BrokerRegistryStatusSchema, BrokerRtspClientSchema, BrokerStatsSchema, BrokerStatusEnum, BrokerStatusSchema, SubscribeInputSchema as BrokerSubscribeInputSchema, SubscribeResultSchema as BrokerSubscribeResultSchema, TestConnectionResultSchema as BrokerTestConnectionResultSchema, UnsubscribeInputSchema as BrokerUnsubscribeInputSchema, CAMERA_SWITCH_CATALOG, CAMERA_SWITCH_ORDER, CAM_PROFILE_ORDER, CAPABILITY_NAMES, CAPABILITY_ROUTER_KEYS, CAP_NAMES_WITH_STATUS, CAP_NODE_PIN_CONTEXT_KEY, CAP_PROVIDER_KIND_MAP, COCO_80_LABELS, COCO_TO_MACRO, CONNECTION_TEST_TIMEOUT_MS, CORE_BLOCKS_ADDON_ID, CORE_BLOCK_ADDON_PREFIX, CamProfileSchema, CamStreamDescriptorSchema, CamStreamKindSchema, CamStreamResolutionSchema, CameraAssignmentStatusSchema, CameraAudioStatusSchema, CameraBrokerProfileSchema, CameraBrokerStatusSchema, CameraCredentialsSchema, CameraCredentialsStatusSchema, CameraDecoderShmSchema, CameraDecoderStatusSchema, CameraDetectionPhaseSchema, CameraDetectionProvisioningSchema, CameraDetectionProvisioningStateSchema, CameraDetectionStatusSchema, CameraMetricsSchema, CameraMetricsWithDeviceIdSchema, CameraMotionStatusSchema, CameraRecordingModeSchema, CameraRecordingStatusSchema, CameraSourceStatusSchema, CameraSourceStreamSchema, CameraStatusDegradationReasonSchema, CameraStatusDegradationSchema, CameraStatusSchema, CameraStatusStageSchema, CameraStreamSchema, CameraSwitchAuthoritySchema, CameraSwitchGroupSchema, CameraSwitchIdSchema, CameraSwitchSchema, CameraSwitchUnavailableReasonSchema, CandidateQueryFilterSchema, CapScopeSchema, CapabilityBindingsSchema, CarbonMonoxideStatusSchema, ChargingStatus, ClientNetworkStatsSchema, ClimateControlStatusSchema, ClipPlaybackSchema, ClipSchema, ClusterAddonNodeDeploymentSchema, ClusterAddonStatusEntrySchema, CollectionColumnSchema, CollectionIndexSchema, ColorStatusSchema, ConfigEntrySchema, ConfigSectionWithValuesSchema, ConfigTabDeclarationSchema, ConnectionTestDescriptorSchema, ConnectionTestInputSchema, ConnectionTestOutcomeSchema, ConnectivityStatusSchema, ConsumableItemSchema, ConsumablesStatusSchema, ContactStatusSchema, ControlKindSchema, ControlStatusSchema, ConvertArtifactSchema, ConvertResultSchema, ConvertTargetSchema, CoreBlockCompileResultSchema, CoreBlockInputSchema, CoreBlockPlacementSchema, CoreBlockSchema, CoreBlockStatusSchema, CoverStateSchema, CoverStatusSchema, CreateApiKeyInputSchema, CreateApiKeyResultSchema, CreateIntegrationInputSchema, CreateScopedTokenInputSchema, CreateScopedTokenResultSchema, CreateUserInputSchema, CustomActionInputSchema, CustomModelDescriptorSchema, DATAPLANE_SECRET_HEADER, DECLARED_DEVICE_SWEEP_LIMIT, DECLARED_INTEGRATION_FIXED_KEY, DEFAULT_ADDON_PLACEMENT, DEFAULT_AUDIO_ANALYZER_CONFIG, DEFAULT_DECODER_HWACCEL_CONFIG, DEFAULT_DETAIL_CROP_CONVENTION, DEFAULT_EVENTS_BAND_BUFFER_SEC, DEFAULT_EVENT_COLOR, DEFAULT_FEATURES, DEFAULT_NATIVE_LEASE_SETTINGS, DEFAULT_RETENTION, DEFAULT_RUNTIME_STATE_DURABILITY, DEFAULT_SCRUB_THUMBNAIL_PRESET, DEFAULT_TIMELAPSE_PREVIEW_TEXT, DETAIL_CROP_PADDING_FIELD, DETAIL_CROP_PADDING_KEY, DETAIL_CROP_SECTION_ID, DETAIL_CROP_SQUARE_KEY, DETECTION_MACRO_CLASSES, DETECTION_PIPELINE_CAP_NAME, DEVICE_BACKEND_TO_FORMAT, DEVICE_CAP_NAMES, DEVICE_PROFILES, DEVICE_SCOPED_CAPS, DEVICE_SETTINGS_CONTRIBUTION_METHODS, DEVICE_STATE_READERS, DEVICE_STATUS_METHOD, DEVICE_TYPE_CONTROL_KIND, DEVICE_TYPE_INFO, EngineInfoSchema as DataStoreEngineInfoSchema, DayNightModeSchema, DayNightOptionsSchema, DayNightSettingsPatchSchema, DayNightStatusSchema, DeclaredDevices, DecodedAudioChunkSchema, DecodedFrameSchema, DecoderSessionConfigSchema, DecoderStatsSchema, DeleteIntegrationResultSchema, DetailCropConventionSchema, DetectionSourceSchema, DeviceCodeSeveritySchema, DeviceConfig, DeviceDiscoveryStatusSchema, ExposeInputSchema as DeviceExportExposeInputSchema, DeviceExportStatusSchema, UnexposeInputSchema as DeviceExportUnexposeInputSchema, DeviceFeature, DeviceInfoSchema, DeviceNetworkStatsSchema, DeviceRole, DeviceRuntimeState, DeviceSelectorSchema, DeviceStatusSchema, DeviceType, DiscoveredChildDeviceSchema, DiscoveredChildStatusSchema, DiscoveredDeviceSchema, DiscoveredTargetSchema, DisposerChain, DoorbellPressEventSchema, DoorbellStatusSchema, EVENTFUL_CAP_NAMES, EVENT_KIND_BY_CAP, EVENT_PAD_MS, EVENT_TAXONOMY, EXPORT_DENSE_MAX_RANGES, EXPRESSION_BUILTINS, EXPRESSION_BUILTIN_NAMES, EXPRESSION_COMPILE_CACHE_CAPACITY, EXPRESSION_IDENTIFIER_RE, EXPRESSION_INJECTED_NOW, EgressEncodeSchema, EgressRateControlSchema, EgressTranscodeRequestSchema, EgressTranscodeSchema, ElementConfigStore, EmbeddingInfoSchema, EmbeddingResultSchema, EncodeProfileSchema, EncodedPacketSchema, EnrichedWidgetMetadataSchema, EnumSensorDateTimeFormatSchema, EnumSensorStatusSchema, EventCategory, EventEmitterStatusSchema, EventFireSchema, EventItemSchema, EventKindCategorySchema, EventKindDescriptorSchema, EventKindIconSchema, EventKindSchema, EventKindsForDeviceSchema, EventMediaArtifactSchema, EventMediaCoverageSchema, EventMediaKindSchema, EventMediaProductionSchema, EventSourceType, ExportBytesSchema, ExportDenseRangeSchema, ExportDenseSchema, ExportDownloadSchema, ExportOptionsSchema, ExportRecordSchema, ExportSetupFieldSchema, ExportSetupSchema, ExportSpeedSchema, ExportStateSchema, ExportTimelapseSchema, ExposedDeviceSchema, ExposureModeSchema, ExpressionBindingSourceSchema, ExpressionEvalError, ExpressionFieldBindingSchema, ExpressionGlobalBindingSchema, ExpressionLiteralBindingSchema, ExpressionParseError, ExpressionSourceSchema, FanControlStatusSchema, FanDirectionSchema, FeatureManifestSchema, FeatureProbeStatusSchema, FloodStatusSchema, Fmp4BoxSplitter, FrameHandleFormatSchema, FrameHandleSchema, FrameInputSchema, GasStatusSchema, GetStreamWithCodecInputSchema, GlobalMetricsSchema, HAP_AUDIO_BASE, HAP_AUDIO_BITRATE_KBPS, HAP_AUDIO_VBV_KBITS, HAP_KEYFRAME_INTERVAL_SEC, HF_BASE_URL, HF_REPO, HWACCEL_OPTIONS, HealthStatusSchema, HfModelResolutionSchema, HistoryPointSchema, HistoryResolutionEnum, HumidifierStatusSchema, HumiditySensorStatusSchema, HvacModeSchema, ImageContractSchema, ImageContractStateSchema, ImageRotateSchema, ImageSettingsOptionsSchema, ImageSettingsPatchSchema, ImageSettingsStatusSchema, ImageStatusSchema, IngestOwnerSchema, InstalledPackageSchema, IntegrationLiteSchema, IntegrationWithStateSchema, IntercomAbilitySchema, IntercomStatusSchema, KNOWN_CAP_NAMES, KeyEventSchema, LOG_LEVEL_RANK, LabelAttributionSchema, LabelDefinitionSchema, LabelTierSchema, LawnMowerActivitySchema, LawnMowerControlStatusSchema, LinkedDeviceSchema, LinkedDevicesModeSchema, LlmDefaultSchema, LlmDefaultSelectorSchema, LlmDownloadProgressSchema, LlmErrorCodeSchema, LlmGenerateBaseInputSchema, LlmGenerateErrSchema, LlmGenerateOkSchema, LlmGenerateResultSchema, LlmImageSchema, LlmNodeModelSchema, LlmProfileKindDescriptorSchema, LlmProfileKindSchema, LlmProfileSchema, LlmRetryPolicySchema, LlmRuntimeCompleteInputSchema, LlmRuntimeDiskUsageSchema, LlmRuntimeNodeSchema, LlmRuntimeStatusSchema, LlmTimeoutDefaults, LlmUsageRollupSchema, LlmUsageSchema, LocateSegmentResultSchema, LocationStatSchema, LockControlStatusSchema, LockStateSchema, LogEntrySchema, LogLevelSchema, LogStreamEntrySchema, LoginMethodContributionSchema, LoginStageEnum, MACRO_LABELS, MAX_CONDITION_DEPTH, MAX_CONDITION_LEAVES, MAX_EXPRESSION_AST_NODES, MAX_EXPRESSION_BINDINGS, MAX_EXPRESSION_CALL_ARGS, MAX_EXPRESSION_EVAL_STEPS, MAX_EXPRESSION_SOURCE_LENGTH, METHOD_ACCESS_MAP, METHOD_DEVICE_SELECTORS, MODEL_FORMATS, MOTION_TRIGGER_FEATURE, ManagedModelCatalogEntrySchema, ManagedModelExtraFileSchema, ManagedModelRefSchema, ManagedRuntimeConfigSchema, MaskGridDimsSchema, MaskGridShapeSchema, MaskLineShapeSchema, MaskPointSchema, MaskPolygonShapeSchema, MaskPolygonVerticesSchema, MaskRectShapeSchema, MaskShapeKindSchema, MaskShapeSchema, MediaFileInfoSchema, MediaFileSchema, MediaPlayerRepeatSchema, MediaPlayerStateSchema, MediaPlayerStatusSchema, MeshPeerSchema, MeshStatusSchema, MethodAccessSchema, ModelCatalogEntrySchema, ModelConvertInputSchema, ModelConvertMetadataSchema, ModelDistributeInputSchema, ModelDistributeResultSchema, ModelExtraFileSchema, ModelFormatEntrySchema, ModelFormatsSchema, ModelSubstitutionSchema, ModelVariantGroupSchema, MotionAnalysisResultSchema, MotionEventSchema, MotionOnMotionChangedDataSchema, MotionRegionSchema, MotionSourceEnum, MotionSourcesSchema, MotionStatusSchema, MotionTriggerRuntimeStateSchema, MotionTriggerStatusSchema, MotionZoneOptionsSchema, MotionZonePatchSchema, MotionZoneRegionSchema, MotionZoneStatusSchema, StatusSchema as MqttBrokerStatusSchema, MutationFilterSchema, NATIVE_LEASE_ACTIVITY_FIELD, NATIVE_LEASE_ACTIVITY_KEY, NATIVE_LEASE_ADMISSION_FIELD, NATIVE_LEASE_ADMISSION_KEY, NATIVE_LEASE_BUDGET_FIELD, NATIVE_LEASE_BUDGET_KEY, NATIVE_LEASE_HOLD_FIELD, NATIVE_LEASE_HOLD_KEY, NATIVE_LEASE_SECTION_ID, NATIVE_LEASE_TILE_BUDGET_FIELD, NATIVE_LEASE_TILE_BUDGET_KEY, NC_ALARM_SYSTEM_EVENT_KINDS, NC_AUDIO_DBFS_FLOOR, NC_AUDIO_DB_MAX, NC_AUDIO_DB_MIN, NC_AUDIO_DB_OFFERED, NC_AUDIO_DB_STEP, NC_AUDIO_DEFAULTS, NC_AUDIO_HIT_PERCENT_MAX, NC_AUDIO_HIT_PERCENT_MIN, NC_AUDIO_SAMPLING_MAX_SEC, NC_AUDIO_SAMPLING_MIN_SEC, NC_AUTHORABLE_SYSTEM_EVENT_KINDS, NC_BASE_CONDITION_KEYS, NC_CONDITION_CATALOG, NC_CONFIRM_DEFAULT_MAX_IMAGE_PX, NC_CONFIRM_DEFAULT_TIMEOUT_MS, NC_CONFIRM_MAX_TIMEOUT_MS, NC_CONFIRM_MIN_TIMEOUT_MS, NC_DEFAULT_SNOOZE_MINUTES, NC_HISTORY_LIMIT_DEFAULT, NC_HISTORY_LIMIT_MAX, NC_MAX_PER_TRACK_IMMEDIATE, NC_SNOOZE_MAX_MINUTES, NC_TAXONOMY, NativeCropBboxSchema, NativeCropRefSchema, NativeCropResultSchema, NativeDetectionSchema, NativeLeaseAdmissionSchema, NativeLeaseSettingsSchema, NativeObjectClassEnum, NativeObjectDetectionRuntimeStateSchema, NativeObjectDetectionStatusSchema, NcAlarmConfigSchema, NcAlarmModeCoverageSchema, NcAlarmSettingsPatchSchema, NcAlarmSettingsSchema, NcAlarmSkipReasonSchema, NcAlarmSkippedDeviceSchema, NcAudioConditionSchema, NcConditionDescriptorSchema, NcConditionsSchema, NcConfirmExpectSchema, NcConfirmSchema, NcCrossingSchema, NcDeliverySchema, NcDeviceStateConditionSchema, NcHistoryEntrySchema, NcHistoryFilterSchema, NcHistoryRecordKindSchema, NcHistoryStatusSchema, NcHistorySubjectSchema, NcMediaFrameSchema, NcMediaPolicySchema, NcOccupancyConditionSchema, NcPlateMatcherSchema, NcRuleActionSchema, NcRuleActionSequenceSchema, NcRuleActionsSchema, NcRuleInputSchema, NcRuleNotificationButtonSchema, NcRulePatchSchema, NcRuleSchema, NcRuleTargetSchema, NcSceneConditionSchema, NcScheduleSchema, NcScheduleWindowSchema, NcSnoozeInputSchema, NcSnoozeSchema, NcSnoozeScopeSchema, NcSnoozeSuppressedSchema, NcSystemEventConditionSchema, NcSystemEventKindSchema, NcTaxonomyEntrySchema, NcTaxonomySchema, NcTestResultSchema, NcThrottleGranularitySchema, NcThrottleSchema, NcZoneConditionSchema, NetworkAccessStatusSchema, NetworkAddressSchema, NetworkEndpointSchema, NotificationActionIconSchema, NotificationActionSchema, NotificationFormatSchema, NotificationSchema, NotifierStatusSchema, NumericSensorStatusSchema, OPS_LOG_DEFAULT_LIMIT, OPS_LOG_RING_DEFAULT_MAX, OauthIntegrationDescriptorSchema, ObjectEventSchema, OpsLogDomainSchema, OpsLogEntrySchema, OpsLogOpSchema, OpsLogQueryInputSchema, OpsLogReasonSchema, OrchestratorMetricsSchema, OsdOverlayKindEnum, OsdOverlayPatchSchema, OsdOverlaySchema, OsdPositionEnum, OsdRenderOutcomeEnum, OsdRenderResultSchema, OsdSlotBindingSchema, OsdSlotViewSchema, OsdSourceOptionSchema, OsdSourceSchema, OsdSourceValueTypeEnum, OsdStatusSchema, PET_FEEDER_MANUAL_FEED_MAX, PET_FEEDER_MANUAL_FEED_MIN, PIPELINE_FLOW_CAPABILITY_NAMES, PIPELINE_OWNER_CAPABILITY_NAMES, PRIVACY_MASK_CAP_NAME, PROVIDER_KIND_CAP_NAMES, PYTHON_SCRIPT, PackageUpdateSchema, PackageVersionInfoSchema, PasskeyLoginMethodSchema, PasskeySummarySchema, PcmSampleFormatSchema, PerScopeBreakdownSchema, PetFeederStatusSchema, PickStreamPreferencesSchema, PickStreamRequirementsSchema, PickedCamStreamSchema, PipelineAssignmentSchema, PipelineDefaultStepSchema, PipelineEngineChoiceSchema, PipelineRunResultBridge, PipelineStepInputSchema, PipelineValidationIssueSchema, PipelineValidationResultSchema, PlaceholderReasonSchema, PolygonPointSchema, PowerMeterStatusSchema, PresenceStatusSchema, PressureSensorStatusSchema, PrivacyMaskOptionsSchema, PrivacyMaskPatchSchema, PrivacyMaskRegionSchema, PrivacyMaskShapeSchema, PrivacyMaskStatusSchema, ProfileRtspEntrySchema, ProfileSlotSchema, ProfileSlotStatusSchema, ProviderStatusSchema, PtzAutotrackRuntimeStateSchema, PtzAutotrackSettingsSchema, PtzAutotrackStatusSchema, PtzAutotrackTargetOptionSchema, PtzMoveCommandSchema, PtzOptionsSchema, PtzPositionSchema, PtzPresetSchema, PtzStatusSchema, QueryFilterSchema, RATE_CONTROL_RELAXED, RATE_CONTROL_TIGHT, REACHABILITY_FAILURES_TO_OFFLINE, REACHABILITY_POLL_INTERVAL_MS, REACHABILITY_PROBE_TIMEOUT_MS, RECOGNITION_TYPES, RECORDING_EXPORT_MAX_READ_BYTES, RESERVED_BINDING_NAMES, RESTORED_CAP_NAMES, RUNTIME_DEFAULTS, RUNTIME_STATE_POLICY, RUNTIME_TO_FORMAT, RawStateResultSchema, ReadGopBytesResultSchema, ReadSegmentBytesResultSchema, ReadinessRegistry, ReadinessTimeoutError, RecentTracksPageSchema, RecentTracksQueryInput, RecordingAvailabilitySchema, RecordingBandModeSchema, RecordingBandSchema, RecordingBandTriggersSchema, RecordingConfigSchema, RecordingDaysSchema, RecordingDeviceUsageSchema, RecordingLocationUsageSchema, RecordingManifestSchema, RecordingRangeSchema, RecordingRebalanceInputSchema, RecordingRebalanceMoveSchema, RecordingRebalancePlanSchema, RecordingRebalanceSkipReasonSchema, RecordingRebalanceSkipSchema, RecordingRetentionSchema, RecordingStatusSchema, RecordingStorageModeSchema, RecordingStorageUsageSchema, RecordingTriggersSchema, RecordingWeekdaySchema, RedirectLoginMethodSchema, RelocateFootageClassSchema, RelocateFootageInputSchema, RelocateJobSchema, RelocateJobStateSchema, RelocateMediaInputSchema, RenderedAsSchema, ReportMotionInputSchema, RetrainAnnotationDraftSchema, RetrainAnnotationKindSchema, RetrainAnnotationSchema, RetrainAnnotationSourceSchema, RetrainAssistResultSchema, RetrainAssistSubjectSchema, RetrainCopyRefusalSchema, RetrainFrameCandidateSchema, RetrainFrameListSchema, RetrainFrameSchema, RetrainFrameSelectionSchema, RetrainMacroClassSchema, RetrainStatusSchema, RetrainTrackSchema, RetrainTransitionResultSchema, RingBuffer, RtpSourceSchema, RtspRestreamEntrySchema, RunnerCameraConfigSchema, RunnerCameraDeviceUIFields, RunnerFrameSourceSchema, RunnerInferenceDeviceSchema, RunnerLocalLoadSchema, RunnerLocalMetricsSchema, SCENE_CONDITIONS, SCENE_CONFIRM_DEFAULT_MAX_IMAGE_PX, SCENE_CONFIRM_DEFAULT_TIMEOUT_MS, SCENE_DEFAULT_ANCHOR_THRESHOLD, SCENE_DEFAULT_CHECK_INTERVAL_SEC, SCENE_DEFAULT_OBSERVATION_SPACING_SEC, SCENE_DEFAULT_QUIET_SECONDS, SCENE_DEFAULT_UNCOVERED_POLICY, SCENE_DIVERGED, SCENE_RESET_RECAPTURES, SCOPE_PRESETS, SCRUB_THUMBNAIL_PRESETS, SCRUB_THUMBNAIL_PRESET_LABELS, SCRUB_THUMBNAIL_PRESET_ORDER, SENSOR_FEATURES, SENSOR_MAP, SOURCE_INFO_METADATA_KEY, STREAM_PROFILE_META, STREAM_QUALITY_LABELS, SUB_DETECTION_TYPES, SYSTEM_CAP_NAMES, SYSTEM_SCOPE_DEVICE_METHODS, SceneCheckSchema, SceneConditionSchema, SceneConfirmSchema, SceneMonitorSchema, SceneMonitorStateSchema, SceneMonitorStatusSchema, SceneReferenceSchema, SceneUnavailableSchema, SceneUncoveredPolicySchema, SceneVerdictSchema, ScopedTokenSchema, ScopedTokenSummarySchema, ScoredObjectEventSchema, ScriptRunnerStatusSchema, ScrubThumbnailPresetSchema, SearchResultSchema, SendEmailInputSchema, SendEmailResultSchema, SendResultSchema, SensorEventSchema, ServerBootModeSchema, ServerPackageStatusSchema, ServerRollbackInfoSchema, ServerUpdateActionResultSchema, ServerUpdateCheckResultSchema, ServerUpdateStateSchema, SetSiteLocationInputSchema, SettingsPatchSchema, SettingsRecordSchema, SettingsSchemaWithValuesSchema, SettingsUpdateResultSchema, ShmRingStatsSchema, SiteLocationSchema, SiteLocationSourceSchema, SiteLocationStatusSchema, SmokeStatusSchema, SmtpStatusSchema, SnapshotImageSchema, SourceInfoSchema, SpatialDetectionSchema, SsoBridgeClaimsSchema, StartEmbeddedInputSchema, StationaryObjectSchema, AbortUploadInputSchema as StorageAbortUploadInputSchema, BeginDownloadInputSchema as StorageBeginDownloadInputSchema, BeginDownloadResultSchema as StorageBeginDownloadResultSchema, BeginUploadInputSchema as StorageBeginUploadInputSchema, BeginUploadResultSchema as StorageBeginUploadResultSchema, EndDownloadInputSchema as StorageEndDownloadInputSchema, FinalizeUploadInputSchema as StorageFinalizeUploadInputSchema, StorageLocationDeclarationSchema, StorageLocationRefSchema, StorageLocationSchema, StorageLocationTypeSchema, StorageMigrationClassSchema, StorageMigrationDestinationsSchema, StorageMigrationFootageMoveInputSchema, StorageMigrationInputSchema, StorageMigrationJobSchema, StorageMigrationLeaseInputSchema, StorageMigrationMediaMoveInputSchema, StorageMigrationMoveSchema, StorageMigrationParticipantSchema, StorageMigrationPhaseSchema, StorageMigrationPlanSchema, ProviderInfoSchema as StorageProviderInfoSchema, ReadChunkInputSchema as StorageReadChunkInputSchema, TestLocationResultSchema as StorageTestLocationResultSchema, WriteChunkInputSchema as StorageWriteChunkInputSchema, StreamCodecSchema, StreamFormatSchema, StreamNetworkStatsSchema, StreamParamsOptionsSchema, StreamParamsStatusSchema, StreamProfileConfigSchema, StreamProfileOptionsSchema, StreamProfilePatchSchema, StreamProfileSchema, StreamSourceEntrySchema, StreamSourceSchema, SubscribeAudioChunksInputSchema, SubscribeAudioChunksResultSchema, SubscribeFramesInputSchema, SubscribeFramesResultSchema, SwitchStatusSchema, SystemMetricsSchema, SystemMirror, TAXONOMY_COLORS, TIMELAPSE_DENSE_FLOOR_SEC, TIMEZONES, TRANSCODE_DOWN_MAX_BITRATE_KBPS, TRANSCODE_DOWN_MAX_HEIGHT, TamperStatusSchema, TankStatusSchema, TargetKindCapsSchema, TargetKindLevelSchema, TargetKindSchema, TargetSchema, TemperatureSensorStatusSchema, TerminalInstanceInfoSchema, TerminalLegacyCameraSchema, TerminalOutputBatchSchema, TerminalOutputEventSchema, TerminalProfileInfoSchema, TerminalSessionInfoSchema, TestConnectionResultSchema$1 as TestConnectionResultSchema, TestConnectionStatusEnum, TestResultSchema, TimelapseRuleInputSchema, TimelapseRulePatchSchema, TimelapseRuleSchema, TimelapseTemplateSchema, ToastSchema, TokenScopeSchema, TopologyNodeSchema, TopologyProcessSchema, TopologyServiceSchema, TrackCascadeCountsSchema, TrackEnvelopeSchema, TrackFlagsPatchSchema, TrackFlagsSchema, TrackProjectionSchema, TrackSchema, TrackSourceSchema, TrackStateSchema, TrackZoneFilterSchema, TrackedDetectionSchema, TrainingExportDeviceTotalsSchema, TrainingExportSummarySchema, TurnServerSchema, UNIT_TABLE, BrokerInfoSchema$1 as UnifiedBrokerInfoSchema, UnitConversionError, UpdateIntegrationInputSchema, UpdateStatusSchema, UpdateUserInputSchema, UserRecordSchema, UserSummarySchema, VacuumControlStatusSchema, VacuumStateSchema, ValveStateSchema, ValveStatusSchema, VectorDeclareIndexInputSchema, VectorDeleteByFilterInputSchema, VectorDeleteInputSchema, VectorDeleteResultSchema, VectorFilterSchema, VectorGetInputSchema, VectorGetResultSchema, VectorItemSchema, VectorMatchSchema, VectorMetadataSchema, VectorMetricSchema, VectorQueryInputSchema, VectorQueryResultSchema, VectorStatsInputSchema, VectorStatsResultSchema, VectorUpsertInputSchema, VectorUpsertResultSchema, VibrationStatusSchema, VideoEncodeSchema, WEBRTC_EGRESS_PROFILE, WELL_KNOWN_TABS, WELL_KNOWN_TAB_MAP, WaterHeaterStatusSchema, WeatherStatusSchema, WebrtcStreamChoiceSchema, WebrtcStreamTargetSchema, WhiteBalanceModeSchema, WidgetHostEnum, WidgetLoginMethodSchema, WidgetMetadataSchema, WidgetRemoteSchema, WidgetSizeEnum, YAMNET_TO_MACRO, ZoneCrossingDirectionSchema, ZoneCrossingSchema, ZoneKindEnum, ZoneRuleModeEnum, ZoneRuleSchema, ZoneRuleStageEnum, ZoneRulesArraySchema, ZoneSchema, ZoneScopeBreakdownSchema, accessoriesCapability, accessoryStableId, addonPagesCapability, addonPagesSourceCapability, addonRoutesCapability, addonSettingsCapability, addonWidgetsCapability, addonWidgetsSourceCapability, addonsCapability, adminUiCapability, airQualitySensorCapability, alarmPanelCapability, alertsCapability, ambientLightSensorCapability, asBoolean, asJsonArray, asJsonObject, asNumber, asString, assertTimelapseCadences, audioAnalysisCapability, audioAnalyzerCapability, audioCodecCapability, audioIsFailClosed, audioLabelChoices, audioMetricsCapability, audioModeOf, audioOrDefaults, audioPlanFromEncodeProfile, authProviderCapability, autoAssignProfiles, automationControlCapability, backupCapability, bareAddonId, batteryCapability, bestLocationMatch, binaryCapability, bindAddonActions, brightnessCapability, brokerCapability, buildAddonRouteProvider, buildAudioArgs, buildEventKindDescriptor, buildFfmpegArgs, buildInputArgs, buildModelVariantGroups, buildNcTaxonomy, buildRoleScopes, buildStreamParamsConfigSchema, buildVideoArgs, buttonCapability, cameraCredentialsCapability, cameraPipelineConfigCapability, cameraStreamsCapability, canConvertUnit, canonicalEgressPlan, carbonMonoxideCapability, cellsToRects, classifyBearerPrincipal, classifyStream, classifyStreams, climateControlCapability, collectHydratedFieldEntries, collectHydratedFieldValues, colorCapability, colorForKind, compileExpression, compileExpressionSafe, composeSwitchedOff, conditionDepth, connectionTestCapability, connectivityCapability, consumablesCapability, contactCapability, controlCapability, convertUnit, coreBlockAddonId, coreBlockIdFromAddonId, coreBlocksCapability, cosineSimilarity, countConditionLeaves, coverCapability, createDeviceProxy, createDurableState, createEvent, createExpressionScope, createHwAccelCache, createLazyTrpcSource, createMirrorSource, createRuntimeStateBridge, createSliceHandle, createSystemProxy, customAction, customModelRegistryCapability, dataStoreProviderCapability, dayNightCapability, declarationOwnerNodeId, decodeVectorBase64, decoderCapability, defaultDeviceFor, defineCustomActions, deriveCameraSwitches, deriveDetailCropRect, deriveRecordingMode, describeModelVariant, detectAccessRole, detectionPipelineCapability, deviceAdoptionCapability, deviceBackendToFormat, deviceCustomAction, deviceDiscoveryCapability, deviceExportCapability, deviceManagerCapability, deviceMatchesProfile, deviceOpsCapability, deviceProviderCapability, deviceSelectorMatches, deviceStateCapability, deviceStatusCapability, doorbellCapability, egressTranscodeSharingKey, egressTransportFromRequest, embeddingEncoderCapability, emitDownForOwnedCaps, emitReadiness, encodeProfileFromStreamShape, encodeVectorBase64, enumSensorCapability, enumerateInferenceDevices, enumerateItemArrayFields, enumerateSchemaFields, errMsg, evaluateAst, evaluateExpressionSource, evaluateZoneRules, event, eventEmitterCapability, eventsCapability, expandCapMethods, extractNestedAddonId, extractSourceInfoFromMetadata, faceGalleryCapability, fanControlCapability, featureProbeCapability, filesystemBrowseCapability, findTimezone, floodCapability, formatForBackend, formatForRuntime, gasCapability, generateAutomationBlock, getAudioMacroClassIds, getByPath, getCapsByProviderKind, getTaxonomyEntry, hasMotionTrigger, hfModelUrl, htmlToText, humidifierCapability, humiditySensorCapability, hydrateSchema, imageCapability, imageSettingsCapability, integrationsCapability, intercomCapability, invocationFromEncodeProfile, isAgentOnlyPlacement, isArrayOutputSchema, isAudioLabelSelected, isBaseConditionKey, isCollectionArrayMethod, isDeployableToAgent, isDetectionMacroClass, isDeviceConfigCap, isDeviceScopedCap, isEvent, isIsolatedBuiltin, isNode, isObjectInput, isRestoredCap, isSameAddonId, isScheduleActive, isSoftwareDecode, isVoidInput, jobKindSchema, kebabToCamel, knownValues, lawnMowerControlCapability, lifecycleJobSchema, lifecycleJobScopeSchema, lifecycleJobStateSchema, lifecycleTaskSchema, llmCapability, llmRuntimeCapability, localNetworkCapability, locationSimilarity, lockControlCapability, logBannerArgs, logDestinationCapability, logLevelAtMost, loginMethodCapability, looseSchema, makeProfileBrokerId, makeSourceBrokerId, mapAudioLabelToMacro, markdownToHtmlLite, markdownToText, maskUrlCredentials, mediaPlayerCapability, mergeSourceInfo, meshNetworkCapability, method, methodAccessForHttpMethod, metricsProviderCapability, modelConvertCapability, modelDistributorCapability, modelFormatForRuntime, motionCapability, motionDetectionCapability, motionTriggerCapability, motionZonesCapability, mqttBrokerCapability, nativeObjectDetectionCapability, networkAccessCapability, networkQualityCapability, nodePin, nodesCapability, normalizeAddonInitResult, normalizeAudioLabel, normalizeTokenScopes, normalizeUnit, notificationOutputCapability, notificationRulesCapability, notifierCapability, numericSensorCapability, oauthIntegrationCapability, objectInputDeclaresAddonId, osdCapability, osdManagerCapability, parseCameraStreamConfig, parseExpression, parseJsonArray, parseJsonObject, parseJsonUnknown, parseProfileBrokerId, parseStreamParamsFormPatch, patchAudio, petFeederCapability, pickAccessoryControl, pickDetailCropConvention, pickNativeLeaseOverride, pickPreferredRtspEntry, pickVideoEncoder, pickerForCondition, pipelineAnalyticsCapability, pipelineExecutorCapability, pipelineOrchestratorCapability, pipelineRunnerCapability, plateGalleryCapability, platformProbeCapability, powerMeterCapability, prepareNotification, presenceCapability, pressureSensorCapability, principalMayReachAddon, privacyMaskCapability, procedureAuthKey, ptzAutotrackCapability, ptzCapability, pythonScriptForBackend, readDetailCropConvention, readDeviceStateFrom, readNativeLeaseOverride, readNodePin, readTimelapseGeneratedAt, readinessKey, rebootCapability, recordingCapability, recordingExportCapability, rectsToCells, requiresPython, resolveAddonExecution, resolveAddonGroup, resolveAddonPlacement, resolveAddonRuntime, resolveCapMount, resolveDetectionRuntime, resolveDeviceControlKind, resolveDeviceProfile, resolveEgressDecodeHwAccel, resolveFormat, resolveHydratedFieldValue, resolveModelFormat, resolveMutate, resolveRunnerId, resolveScrubThumbnailGeometry, resolveVariantModelId, resolveViewableDeviceIds, roleSpec, runInferenceStep, runtimeDevices, runtimeStatePolicyFor, sceneMonitorCapability, scopeInherits, scopeKey, scopesAllowAddon, scopesAllowDeviceCap, scoreRuntimes, scriptRunnerCapability, selectAssignedProfileSlots, serverManagementCapability, setByPath, settingsStoreCapability, sleep, sleepCancellable, smokeCapability, smtpProviderCapability, snapshotCapability, ssoBridgeCapability, startReachabilityPoll, stateVocabularyFor, storageCapability, storageEvictableCapability, storageMigrationCapability, storageProviderCapability, streamBrokerCapability, streamCatalogCapability, streamParamsCapability, streamPixels, streamQualityLabel, subKindsOf, summarisePrivacyAudio, summarizeEffectiveScope, supportedRuntimes, switchCapability, switchedOffIds, synthesizeSourceInfo, systemCapability, tamperCapability, taskLogEntrySchema, taskPhaseSchema, taskTargetSchema, temperatureSensorCapability, terminalSessionCapability, textToHtml, toDeviceSummary, toExpressionValue, toNodeId, toStreamSourceEntry, toastCapability, toggleAudioLabel, tokenize, transcodeBody, tryConvertUnit, turnProviderCapability, unitDimension, unitsForDimension, updateCapability, userManagementCapability, userPasskeysCapability, vacuumControlCapability, validateExpressionSource, validateRecipeBounds, valveCapability, vectorDimFromBase64, vectorStoreCapability, vibrationCapability, videoclipsCapability, viewerUiCapability, waterHeaterCapability, weatherCapability, webrtcClientHintsSchema, webrtcSessionCapability, wiringAddonHealthSchema, wiringHealthSnapshotSchema, wiringNodeHealthSchema, wiringProbeKindSchema, wiringProbeResultSchema, zodEntriesToConfigUI, zoneAnalyticsCapability, zoneRulesCapability, zonesCapability };
45649
+ export { ACCESSORY_LABEL, ACCESS_ROLES, ALEXA_EGRESS_PROFILE, ALL_CAPABILITY_DEFINITIONS, APPLE_SA_TO_MACRO, AUDIO_ANALYSIS_CAP_NAME, AUDIO_BACKEND_CHOICES, AUDIO_MACRO_LABELS, AUDIO_PRESETS, AccessoriesStatusSchema, AccessoryKind, AddBrokerInputSchema, AddonAutoUpdateSchema, AddonListItemSchema, AddonPageDeclarationSchema, AddonPageInfoSchema, AdoptInputSchema as AdoptionAdoptInputSchema, AdoptResultSchema as AdoptionAdoptResultSchema, AdoptionCandidateResultSchema, AdoptionFilterSchema, GetCandidateInputSchema as AdoptionGetCandidateInputSchema, AdoptionJobSchema, AdoptionJobStateSchema, ListCandidatesInputSchema as AdoptionListCandidatesInputSchema, ListCandidatesOutputSchema as AdoptionListCandidatesOutputSchema, AdoptionOutcomeSchema, ReleaseInputSchema as AdoptionReleaseInputSchema, AdoptionStatusSchema, AgentLoadSummarySchema, AirQualitySensorStatusSchema, AlarmArmModeSchema, AlarmPanelStatusSchema, AlarmStateSchema, AlertSchema, AlertSeveritySchema, AlertSourceSchema, AlertStatusSchema, AmbientLightSensorStatusSchema, ApiKeyRecordSchema, ApiKeySummarySchema, ArchiveEntrySchema, ArchiveManifestSchema, AttachmentMediaTypeSchema, AttachmentSchema, AudioAnalysisResultSchema, AudioAnalysisSettingsSchema, AudioChunkInputSchema, AudioClassSummarySchema, AudioClassificationLabelSchema, AudioClassificationResultSchema, AudioCodecInfoSchema, AudioDecodeSessionConfigSchema, AudioEncodeSchema, AudioEncodeSessionConfigSchema, AudioEncodedChunkSchema, AudioEventSchema, AudioLevelSchema, AudioMetricsHistoryPointSchema, AudioMetricsHistorySchema, AudioMetricsSnapshotSchema, AudioPcmChunkSchema, AuthResultSchema, AutoUpdateSettingsSchema, AutomationActionSchema, AutomationConditionOperatorSchema, AutomationConditionSchema, AutomationControlStatusSchema, AutomationRecipeSchema, AutomationTriggerSchema, AvailableIntegrationTypeSchema, BACKEND_TO_FORMAT, BASE_LIVE_EGRESS_PROFILE, BATTERY_DEVICE_PROFILE, BATTERY_UNREACHABLE_AFTER_MS, BOOT_RECOVERY_BACKOFF_MS, BacklightModeSchema, BackupDestinationInfoSchema, BackupEntrySchema, BaseAddon, BaseDevice, BaseDeviceProvider, BatteryStatusSchema, BinaryStatusSchema, BoundingBoxSchema, BrightnessStatusSchema, AddInputSchema as BrokerAddInputSchema, BrokerAudioClientSchema, BrokerClientsSchema, BrokerConnectionDetailsSchema, BrokerConsumerAttributionSchema, BrokerConsumerKindSchema, BrokerDecodedClientSchema, BrokerEncodedClientSchema, GetStateInputSchema as BrokerGetStateInputSchema, BrokerInfoSchema, BrokerProviderInfoSchema, PublishInputSchema as BrokerPublishInputSchema, RegistryStatusSchema as BrokerRegistryStatusSchema, BrokerRtspClientSchema, BrokerStatsSchema, BrokerStatusEnum, BrokerStatusSchema, SubscribeInputSchema as BrokerSubscribeInputSchema, SubscribeResultSchema as BrokerSubscribeResultSchema, TestConnectionResultSchema as BrokerTestConnectionResultSchema, UnsubscribeInputSchema as BrokerUnsubscribeInputSchema, CAMERA_SWITCH_CATALOG, CAMERA_SWITCH_ORDER, CAM_PROFILE_ORDER, CAPABILITY_NAMES, CAPABILITY_ROUTER_KEYS, CAP_NAMES_WITH_STATUS, CAP_NODE_PIN_CONTEXT_KEY, CAP_PROVIDER_KIND_MAP, COCO_80_LABELS, COCO_TO_MACRO, CONNECTION_TEST_TIMEOUT_MS, CORE_BLOCKS_ADDON_ID, CORE_BLOCK_ADDON_PREFIX, CamProfileSchema, CamStreamDescriptorSchema, CamStreamKindSchema, CamStreamResolutionSchema, CameraAssignmentStatusSchema, CameraAudioStatusSchema, CameraBrokerProfileSchema, CameraBrokerStatusSchema, CameraCredentialsSchema, CameraCredentialsStatusSchema, CameraDecoderShmSchema, CameraDecoderStatusSchema, CameraDetectionPhaseSchema, CameraDetectionProvisioningSchema, CameraDetectionProvisioningStateSchema, CameraDetectionStatusSchema, CameraMetricsSchema, CameraMetricsWithDeviceIdSchema, CameraMotionStatusSchema, CameraRecordingModeSchema, CameraRecordingStatusSchema, CameraSourceStatusSchema, CameraSourceStreamSchema, CameraStatusDegradationReasonSchema, CameraStatusDegradationSchema, CameraStatusSchema, CameraStatusStageSchema, CameraStreamSchema, CameraSwitchAuthoritySchema, CameraSwitchGroupSchema, CameraSwitchIdSchema, CameraSwitchSchema, CameraSwitchUnavailableReasonSchema, CandidateQueryFilterSchema, CapScopeSchema, CapabilityBindingsSchema, CarbonMonoxideStatusSchema, ChargingStatus, ClientNetworkStatsSchema, ClimateControlStatusSchema, ClipPlaybackSchema, ClipSchema, ClusterAddonNodeDeploymentSchema, ClusterAddonStatusEntrySchema, CollectionColumnSchema, CollectionIndexSchema, ColorStatusSchema, ConfigEntrySchema, ConfigSectionWithValuesSchema, ConfigTabDeclarationSchema, ConnectionTestDescriptorSchema, ConnectionTestInputSchema, ConnectionTestOutcomeSchema, ConnectivityStatusSchema, ConsumableItemSchema, ConsumablesStatusSchema, ContactStatusSchema, ControlKindSchema, ControlStatusSchema, ConvertArtifactSchema, ConvertResultSchema, ConvertTargetSchema, CoreBlockCompileResultSchema, CoreBlockInputSchema, CoreBlockPlacementSchema, CoreBlockSchema, CoreBlockStatusSchema, CoverStateSchema, CoverStatusSchema, CreateApiKeyInputSchema, CreateApiKeyResultSchema, CreateIntegrationInputSchema, CreateScopedTokenInputSchema, CreateScopedTokenResultSchema, CreateUserInputSchema, CustomActionInputSchema, CustomModelDescriptorSchema, DATAPLANE_SECRET_HEADER, DECLARED_DEVICE_SWEEP_LIMIT, DECLARED_INTEGRATION_FIXED_KEY, DEFAULT_ADDON_PLACEMENT, DEFAULT_AUDIO_ANALYZER_CONFIG, DEFAULT_DECODER_HWACCEL_CONFIG, DEFAULT_DETAIL_CROP_CONVENTION, DEFAULT_EVENTS_BAND_BUFFER_SEC, DEFAULT_EVENT_COLOR, DEFAULT_FEATURES, DEFAULT_NATIVE_LEASE_SETTINGS, DEFAULT_RETENTION, DEFAULT_RUNTIME_STATE_DURABILITY, DEFAULT_SCRUB_THUMBNAIL_PRESET, DEFAULT_TIMELAPSE_PREVIEW_TEXT, DETAIL_CROP_PADDING_FIELD, DETAIL_CROP_PADDING_KEY, DETAIL_CROP_SECTION_ID, DETAIL_CROP_SQUARE_KEY, DETECTION_MACRO_CLASSES, DETECTION_PIPELINE_CAP_NAME, DEVICE_BACKEND_TO_FORMAT, DEVICE_CAP_NAMES, DEVICE_PROFILES, DEVICE_SCOPED_CAPS, DEVICE_SETTINGS_CONTRIBUTION_METHODS, DEVICE_STATE_READERS, DEVICE_STATUS_METHOD, DEVICE_TYPE_CONTROL_KIND, DEVICE_TYPE_INFO, EngineInfoSchema as DataStoreEngineInfoSchema, DayNightModeSchema, DayNightOptionsSchema, DayNightSettingsPatchSchema, DayNightStatusSchema, DeclaredDevices, DecodedAudioChunkSchema, DecodedFrameSchema, DecoderSessionConfigSchema, DecoderStatsSchema, DeleteIntegrationResultSchema, DetailCropConventionSchema, DetectionSourceSchema, DeviceCodeSeveritySchema, DeviceConfig, DeviceDiscoveryStatusSchema, ExposeInputSchema as DeviceExportExposeInputSchema, DeviceExportStatusSchema, UnexposeInputSchema as DeviceExportUnexposeInputSchema, DeviceFeature, DeviceInfoSchema, DeviceNetworkStatsSchema, DeviceRole, DeviceRuntimeState, DeviceSelectorSchema, DeviceStatusSchema, DeviceType, DiscoveredChildDeviceSchema, DiscoveredChildStatusSchema, DiscoveredDeviceSchema, DiscoveredTargetSchema, DisposerChain, DoorbellPressEventSchema, DoorbellStatusSchema, EVENTFUL_CAP_NAMES, EVENT_KIND_BY_CAP, EVENT_PAD_MS, EVENT_TAXONOMY, EXPORT_DENSE_MAX_RANGES, EXPRESSION_BUILTINS, EXPRESSION_BUILTIN_NAMES, EXPRESSION_COMPILE_CACHE_CAPACITY, EXPRESSION_IDENTIFIER_RE, EXPRESSION_INJECTED_NOW, EgressEncodeSchema, EgressRateControlSchema, EgressTranscodeRequestSchema, EgressTranscodeSchema, ElementConfigStore, EmbeddingInfoSchema, EmbeddingResultSchema, EncodeProfileSchema, EncodedPacketSchema, EnrichedWidgetMetadataSchema, EnumSensorDateTimeFormatSchema, EnumSensorStatusSchema, EventCategory, EventEmitterStatusSchema, EventFireSchema, EventItemSchema, EventKindCategorySchema, EventKindDescriptorSchema, EventKindIconSchema, EventKindSchema, EventKindsForDeviceSchema, EventMediaArtifactSchema, EventMediaCoverageSchema, EventMediaKindSchema, EventMediaProductionSchema, EventSourceType, ExportBytesSchema, ExportDenseRangeSchema, ExportDenseSchema, ExportDownloadSchema, ExportOptionsSchema, ExportRecordSchema, ExportSetupFieldSchema, ExportSetupSchema, ExportSpeedSchema, ExportStateSchema, ExportTimelapseSchema, ExposedDeviceSchema, ExposureModeSchema, ExpressionBindingSourceSchema, ExpressionEvalError, ExpressionFieldBindingSchema, ExpressionGlobalBindingSchema, ExpressionLiteralBindingSchema, ExpressionParseError, ExpressionSourceSchema, FanControlStatusSchema, FanDirectionSchema, FeatureManifestSchema, FeatureProbeStatusSchema, FloodStatusSchema, Fmp4BoxSplitter, FrameHandleFormatSchema, FrameHandleSchema, FrameInputSchema, GasStatusSchema, GetStreamWithCodecInputSchema, GlobalMetricsSchema, HAP_AUDIO_BASE, HAP_AUDIO_BITRATE_KBPS, HAP_AUDIO_VBV_KBITS, HAP_KEYFRAME_INTERVAL_SEC, HF_BASE_URL, HF_REPO, HWACCEL_OPTIONS, HealthStatusSchema, HfModelResolutionSchema, HistoryPointSchema, HistoryResolutionEnum, HumidifierStatusSchema, HumiditySensorStatusSchema, HvacModeSchema, ImageContractSchema, ImageContractStateSchema, ImageRotateSchema, ImageSettingsOptionsSchema, ImageSettingsPatchSchema, ImageSettingsStatusSchema, ImageStatusSchema, IngestOwnerSchema, InstalledPackageSchema, IntegrationLiteSchema, IntegrationWithStateSchema, IntercomAbilitySchema, IntercomStatusSchema, KNOWN_CAP_NAMES, KeyEventSchema, LOG_LEVEL_RANK, LabelAttributionSchema, LabelDefinitionSchema, LabelTierSchema, LawnMowerActivitySchema, LawnMowerControlStatusSchema, LinkedDeviceSchema, LinkedDevicesModeSchema, LlmDefaultSchema, LlmDefaultSelectorSchema, LlmDownloadProgressSchema, LlmErrorCodeSchema, LlmGenerateBaseInputSchema, LlmGenerateErrSchema, LlmGenerateOkSchema, LlmGenerateResultSchema, LlmImageSchema, LlmNodeModelSchema, LlmProfileKindDescriptorSchema, LlmProfileKindSchema, LlmProfileSchema, LlmRetryPolicySchema, LlmRuntimeCompleteInputSchema, LlmRuntimeDiskUsageSchema, LlmRuntimeNodeSchema, LlmRuntimeStatusSchema, LlmTimeoutDefaults, LlmUsageRollupSchema, LlmUsageSchema, LocateSegmentResultSchema, LocationStatSchema, LockControlStatusSchema, LockStateSchema, LogEntrySchema, LogLevelSchema, LogStreamEntrySchema, LoginMethodContributionSchema, LoginStageEnum, MACRO_LABELS, MAX_CONDITION_DEPTH, MAX_CONDITION_LEAVES, MAX_EXPRESSION_AST_NODES, MAX_EXPRESSION_BINDINGS, MAX_EXPRESSION_CALL_ARGS, MAX_EXPRESSION_EVAL_STEPS, MAX_EXPRESSION_SOURCE_LENGTH, METHOD_ACCESS_MAP, METHOD_DEVICE_SELECTORS, MODEL_FORMATS, MOTION_TRIGGER_FEATURE, ManagedModelCatalogEntrySchema, ManagedModelExtraFileSchema, ManagedModelRefSchema, ManagedRuntimeConfigSchema, MaskGridDimsSchema, MaskGridShapeSchema, MaskLineShapeSchema, MaskPointSchema, MaskPolygonShapeSchema, MaskPolygonVerticesSchema, MaskRectShapeSchema, MaskShapeKindSchema, MaskShapeSchema, MediaFileInfoSchema, MediaFileSchema, MediaPlayerRepeatSchema, MediaPlayerStateSchema, MediaPlayerStatusSchema, MeshPeerSchema, MeshStatusSchema, MethodAccessSchema, ModelCatalogEntrySchema, ModelConvertInputSchema, ModelConvertMetadataSchema, ModelDistributeInputSchema, ModelDistributeResultSchema, ModelExtraFileSchema, ModelFormatEntrySchema, ModelFormatsSchema, ModelSubstitutionSchema, ModelVariantGroupSchema, MotionAnalysisResultSchema, MotionEventSchema, MotionOnMotionChangedDataSchema, MotionRegionSchema, MotionSourceEnum, MotionSourcesSchema, MotionStatusSchema, MotionTriggerRuntimeStateSchema, MotionTriggerStatusSchema, MotionZoneOptionsSchema, MotionZonePatchSchema, MotionZoneRegionSchema, MotionZoneStatusSchema, StatusSchema as MqttBrokerStatusSchema, MutationFilterSchema, NATIVE_LEASE_ACTIVITY_FIELD, NATIVE_LEASE_ACTIVITY_KEY, NATIVE_LEASE_ADMISSION_FIELD, NATIVE_LEASE_ADMISSION_KEY, NATIVE_LEASE_BUDGET_FIELD, NATIVE_LEASE_BUDGET_KEY, NATIVE_LEASE_HOLD_FIELD, NATIVE_LEASE_HOLD_KEY, NATIVE_LEASE_SECTION_ID, NATIVE_LEASE_TILE_BUDGET_FIELD, NATIVE_LEASE_TILE_BUDGET_KEY, NC_ALARM_SYSTEM_EVENT_KINDS, NC_AUDIO_DBFS_FLOOR, NC_AUDIO_DB_MAX, NC_AUDIO_DB_MIN, NC_AUDIO_DB_OFFERED, NC_AUDIO_DB_STEP, NC_AUDIO_DEFAULTS, NC_AUDIO_HIT_PERCENT_MAX, NC_AUDIO_HIT_PERCENT_MIN, NC_AUDIO_SAMPLING_MAX_SEC, NC_AUDIO_SAMPLING_MIN_SEC, NC_AUTHORABLE_SYSTEM_EVENT_KINDS, NC_BASE_CONDITION_KEYS, NC_CONDITION_CATALOG, NC_CONFIRM_DEFAULT_MAX_IMAGE_PX, NC_CONFIRM_DEFAULT_TIMEOUT_MS, NC_CONFIRM_MAX_TIMEOUT_MS, NC_CONFIRM_MIN_TIMEOUT_MS, NC_DEFAULT_SNOOZE_MINUTES, NC_HISTORY_LIMIT_DEFAULT, NC_HISTORY_LIMIT_MAX, NC_MAX_PER_TRACK_IMMEDIATE, NC_SNOOZE_MAX_MINUTES, NC_TAXONOMY, NativeCropBboxSchema, NativeCropRefSchema, NativeCropResultSchema, NativeDetectionSchema, NativeLeaseAdmissionSchema, NativeLeaseSettingsSchema, NativeObjectClassEnum, NativeObjectDetectionRuntimeStateSchema, NativeObjectDetectionStatusSchema, NcAlarmConfigSchema, NcAlarmModeCoverageSchema, NcAlarmSettingsPatchSchema, NcAlarmSettingsSchema, NcAlarmSkipReasonSchema, NcAlarmSkippedDeviceSchema, NcAudioConditionSchema, NcConditionDescriptorSchema, NcConditionsSchema, NcConfirmExpectSchema, NcConfirmSchema, NcCrossingSchema, NcDeliverySchema, NcDeviceStateConditionSchema, NcHistoryEntrySchema, NcHistoryFilterSchema, NcHistoryRecordKindSchema, NcHistoryStatusSchema, NcHistorySubjectSchema, NcMediaFrameSchema, NcMediaPolicySchema, NcOccupancyConditionSchema, NcPlateMatcherSchema, NcRuleActionSchema, NcRuleActionSequenceSchema, NcRuleActionsSchema, NcRuleInputSchema, NcRuleNotificationButtonSchema, NcRulePatchSchema, NcRuleSchema, NcRuleTargetSchema, NcSceneConditionSchema, NcScheduleSchema, NcScheduleWindowSchema, NcSnoozeInputSchema, NcSnoozeSchema, NcSnoozeScopeSchema, NcSnoozeSuppressedSchema, NcSystemEventConditionSchema, NcSystemEventKindSchema, NcTaxonomyEntrySchema, NcTaxonomySchema, NcTestResultSchema, NcThrottleGranularitySchema, NcThrottleSchema, NcZoneConditionSchema, NetworkAccessStatusSchema, NetworkAddressSchema, NetworkEndpointSchema, NotificationActionIconSchema, NotificationActionSchema, NotificationFormatSchema, NotificationSchema, NotifierStatusSchema, NumericSensorStatusSchema, OPS_LOG_DEFAULT_LIMIT, OPS_LOG_RING_DEFAULT_MAX, OauthIntegrationDescriptorSchema, ObjectEventSchema, OpsLogDomainSchema, OpsLogEntrySchema, OpsLogOpSchema, OpsLogQueryInputSchema, OpsLogReasonSchema, OrchestratorMetricsSchema, OsdOverlayKindEnum, OsdOverlayPatchSchema, OsdOverlaySchema, OsdPositionEnum, OsdRenderOutcomeEnum, OsdRenderResultSchema, OsdSlotBindingSchema, OsdSlotViewSchema, OsdSourceOptionSchema, OsdSourceSchema, OsdSourceValueTypeEnum, OsdStatusSchema, PET_FEEDER_MANUAL_FEED_MAX, PET_FEEDER_MANUAL_FEED_MIN, PIPELINE_FLOW_CAPABILITY_NAMES, PIPELINE_OWNER_CAPABILITY_NAMES, PRIVACY_MASK_CAP_NAME, PROVIDER_KIND_CAP_NAMES, PYTHON_SCRIPT, PackageUpdateSchema, PackageVersionInfoSchema, PasskeyLoginMethodSchema, PasskeySummarySchema, PcmSampleFormatSchema, PerScopeBreakdownSchema, PetFeederStatusSchema, PickStreamPreferencesSchema, PickStreamRequirementsSchema, PickedCamStreamSchema, PipelineAssignmentSchema, PipelineDefaultStepSchema, PipelineEngineChoiceSchema, PipelineRunResultBridge, PipelineStepInputSchema, PipelineValidationIssueSchema, PipelineValidationResultSchema, PlaceholderReasonSchema, PolygonPointSchema, PowerMeterStatusSchema, PresenceStatusSchema, PressureSensorStatusSchema, PrivacyMaskOptionsSchema, PrivacyMaskPatchSchema, PrivacyMaskRegionSchema, PrivacyMaskShapeSchema, PrivacyMaskStatusSchema, ProfileRtspEntrySchema, ProfileSlotSchema, ProfileSlotStatusSchema, ProviderStatusSchema, PtzAutotrackRuntimeStateSchema, PtzAutotrackSettingsSchema, PtzAutotrackStatusSchema, PtzAutotrackTargetOptionSchema, PtzMoveCommandSchema, PtzOptionsSchema, PtzPositionSchema, PtzPresetSchema, PtzStatusSchema, QueryFilterSchema, RATE_CONTROL_RELAXED, RATE_CONTROL_TIGHT, REACHABILITY_FAILURES_TO_OFFLINE, REACHABILITY_POLL_INTERVAL_MS, REACHABILITY_PROBE_TIMEOUT_MS, RECOGNITION_TYPES, RECORDING_EXPORT_MAX_READ_BYTES, RESERVED_BINDING_NAMES, RESTORED_CAP_NAMES, RUNTIME_DEFAULTS, RUNTIME_STATE_POLICY, RUNTIME_TO_FORMAT, RawStateResultSchema, ReadGopBytesResultSchema, ReadSegmentBytesResultSchema, ReadinessRegistry, ReadinessTimeoutError, RecentTracksPageSchema, RecentTracksQueryInput, RecordingAvailabilitySchema, RecordingBandModeSchema, RecordingBandSchema, RecordingBandTriggersSchema, RecordingConfigSchema, RecordingDaysSchema, RecordingDeviceUsageSchema, RecordingLocationUsageSchema, RecordingManifestSchema, RecordingRangeSchema, RecordingRebalanceInputSchema, RecordingRebalanceMoveSchema, RecordingRebalancePlanSchema, RecordingRebalanceSkipReasonSchema, RecordingRebalanceSkipSchema, RecordingRetentionSchema, RecordingStatusSchema, RecordingStorageModeSchema, RecordingStorageUsageSchema, RecordingTriggersSchema, RecordingWeekdaySchema, RedirectLoginMethodSchema, RelocateFootageClassSchema, RelocateFootageInputSchema, RelocateJobSchema, RelocateJobStateSchema, RelocateMediaInputSchema, RenderedAsSchema, ReportMotionInputSchema, RetrainAnnotationDraftSchema, RetrainAnnotationKindSchema, RetrainAnnotationSchema, RetrainAnnotationSourceSchema, RetrainAssistResultSchema, RetrainAssistSubjectSchema, RetrainCopyRefusalSchema, RetrainFrameCandidateSchema, RetrainFrameListSchema, RetrainFrameSchema, RetrainFrameSelectionSchema, RetrainMacroClassSchema, RetrainStatusSchema, RetrainTrackSchema, RetrainTransitionResultSchema, RingBuffer, RtpSourceSchema, RtspRestreamEntrySchema, RunnerCameraConfigSchema, RunnerCameraDeviceUIFields, RunnerFrameSourceSchema, RunnerInferenceDeviceSchema, RunnerLocalLoadSchema, RunnerLocalMetricsSchema, SCENE_CONDITIONS, SCENE_CONFIRM_DEFAULT_MAX_IMAGE_PX, SCENE_CONFIRM_DEFAULT_TIMEOUT_MS, SCENE_DEFAULT_ANCHOR_THRESHOLD, SCENE_DEFAULT_CHECK_INTERVAL_SEC, SCENE_DEFAULT_OBSERVATION_SPACING_SEC, SCENE_DEFAULT_QUIET_SECONDS, SCENE_DEFAULT_UNCOVERED_POLICY, SCENE_DIVERGED, SCENE_RESET_RECAPTURES, SCOPE_PRESETS, SCRUB_THUMBNAIL_PRESETS, SCRUB_THUMBNAIL_PRESET_LABELS, SCRUB_THUMBNAIL_PRESET_ORDER, SENSOR_FEATURES, SENSOR_MAP, SOURCE_INFO_METADATA_KEY, STREAM_PROFILE_META, STREAM_QUALITY_LABELS, SUB_DETECTION_TYPES, SYSTEM_CAP_NAMES, SYSTEM_SCOPE_DEVICE_METHODS, SceneCheckSchema, SceneConditionSchema, SceneConfirmSchema, SceneMonitorSchema, SceneMonitorStateSchema, SceneMonitorStatusSchema, SceneReferenceSchema, SceneUnavailableSchema, SceneUncoveredPolicySchema, SceneVerdictSchema, ScopedTokenSchema, ScopedTokenSummarySchema, ScoredObjectEventSchema, ScriptRunnerStatusSchema, ScrubThumbnailPresetSchema, SearchResultSchema, SendEmailInputSchema, SendEmailResultSchema, SendResultSchema, SensorEventSchema, ServerBootModeSchema, ServerPackageStatusSchema, ServerRollbackInfoSchema, ServerUpdateActionResultSchema, ServerUpdateCheckResultSchema, ServerUpdateStateSchema, SetSiteLocationInputSchema, SettingsPatchSchema, SettingsRecordSchema, SettingsSchemaWithValuesSchema, SettingsUpdateResultSchema, ShmRingStatsSchema, SiteLocationSchema, SiteLocationSourceSchema, SiteLocationStatusSchema, SmokeStatusSchema, SmtpStatusSchema, SnapshotImageSchema, SourceInfoSchema, SpatialDetectionSchema, SsoBridgeClaimsSchema, StartEmbeddedInputSchema, StationaryObjectSchema, AbortUploadInputSchema as StorageAbortUploadInputSchema, BeginDownloadInputSchema as StorageBeginDownloadInputSchema, BeginDownloadResultSchema as StorageBeginDownloadResultSchema, BeginUploadInputSchema as StorageBeginUploadInputSchema, BeginUploadResultSchema as StorageBeginUploadResultSchema, EndDownloadInputSchema as StorageEndDownloadInputSchema, FinalizeUploadInputSchema as StorageFinalizeUploadInputSchema, StorageLocationDeclarationSchema, StorageLocationRefSchema, StorageLocationSchema, StorageLocationTypeSchema, StorageMigrationClassSchema, StorageMigrationDestinationsSchema, StorageMigrationFootageMoveInputSchema, StorageMigrationInputSchema, StorageMigrationJobSchema, StorageMigrationLeaseInputSchema, StorageMigrationMediaMoveInputSchema, StorageMigrationMoveSchema, StorageMigrationParticipantSchema, StorageMigrationPhaseSchema, StorageMigrationPlanSchema, ProviderInfoSchema as StorageProviderInfoSchema, ReadChunkInputSchema as StorageReadChunkInputSchema, TestLocationResultSchema as StorageTestLocationResultSchema, WriteChunkInputSchema as StorageWriteChunkInputSchema, StreamCodecSchema, StreamFormatSchema, StreamNetworkStatsSchema, StreamParamsOptionsSchema, StreamParamsStatusSchema, StreamProfileConfigSchema, StreamProfileOptionsSchema, StreamProfilePatchSchema, StreamProfileSchema, StreamSourceEntrySchema, StreamSourceSchema, SubscribeAudioChunksInputSchema, SubscribeAudioChunksResultSchema, SubscribeFramesInputSchema, SubscribeFramesResultSchema, SwitchStatusSchema, SystemMetricsSchema, SystemMirror, TAXONOMY_COLORS, TIMELAPSE_DENSE_FLOOR_SEC, TIMEZONES, TRANSCODE_DOWN_MAX_BITRATE_KBPS, TRANSCODE_DOWN_MAX_HEIGHT, TamperStatusSchema, TankStatusSchema, TargetKindCapsSchema, TargetKindLevelSchema, TargetKindSchema, TargetSchema, TemperatureSensorStatusSchema, TerminalInstanceInfoSchema, TerminalLegacyCameraSchema, TerminalOutputBatchSchema, TerminalOutputEventSchema, TerminalProfileInfoSchema, TerminalSessionInfoSchema, TestConnectionResultSchema$1 as TestConnectionResultSchema, TestConnectionStatusEnum, TestResultSchema, TimelapseRuleInputSchema, TimelapseRulePatchSchema, TimelapseRuleSchema, TimelapseTemplateSchema, ToastSchema, TokenScopeSchema, TopologyNodeSchema, TopologyProcessSchema, TopologyServiceSchema, TrackCascadeCountsSchema, TrackEnvelopeSchema, TrackFlagsPatchSchema, TrackFlagsSchema, TrackProjectionSchema, TrackSchema, TrackSourceSchema, TrackStateSchema, TrackZoneFilterSchema, TrackedDetectionSchema, TrainingExportDeviceTotalsSchema, TrainingExportSummarySchema, TurnServerSchema, UNIT_TABLE, BrokerInfoSchema$1 as UnifiedBrokerInfoSchema, UnitConversionError, UpdateIntegrationInputSchema, UpdateStatusSchema, UpdateUserInputSchema, UserRecordSchema, UserSummarySchema, VacuumControlStatusSchema, VacuumStateSchema, ValveStateSchema, ValveStatusSchema, VectorDeclareIndexInputSchema, VectorDeleteByFilterInputSchema, VectorDeleteInputSchema, VectorDeleteResultSchema, VectorFilterSchema, VectorGetInputSchema, VectorGetResultSchema, VectorItemSchema, VectorMatchSchema, VectorMetadataSchema, VectorMetricSchema, VectorQueryInputSchema, VectorQueryResultSchema, VectorStatsInputSchema, VectorStatsResultSchema, VectorUpsertInputSchema, VectorUpsertResultSchema, VibrationStatusSchema, VideoEncodeSchema, WEBRTC_EGRESS_PROFILE, WELL_KNOWN_TABS, WELL_KNOWN_TAB_MAP, WaterHeaterStatusSchema, WeatherStatusSchema, WebrtcStreamChoiceSchema, WebrtcStreamTargetSchema, WhiteBalanceModeSchema, WidgetHostEnum, WidgetLoginMethodSchema, WidgetMetadataSchema, WidgetRemoteSchema, WidgetSizeEnum, YAMNET_TO_MACRO, ZoneCrossingDirectionSchema, ZoneCrossingSchema, ZoneKindEnum, ZoneRuleModeEnum, ZoneRuleSchema, ZoneRuleStageEnum, ZoneRulesArraySchema, ZoneSchema, ZoneScopeBreakdownSchema, accessoriesCapability, accessoryStableId, addonPagesCapability, addonPagesSourceCapability, addonRoutesCapability, addonSettingsCapability, addonWidgetsCapability, addonWidgetsSourceCapability, addonsCapability, adminUiCapability, airQualitySensorCapability, alarmPanelCapability, alertsCapability, ambientLightSensorCapability, asBoolean, asJsonArray, asJsonObject, asNumber, asString, assertTimelapseCadences, audioAnalysisCapability, audioAnalyzerCapability, audioCodecCapability, audioIsFailClosed, audioLabelChoices, audioMetricsCapability, audioModeOf, audioOrDefaults, audioPlanFromEncodeProfile, authProviderCapability, autoAssignProfiles, automationControlCapability, backupCapability, bareAddonId, batteryCapability, bestLocationMatch, binaryCapability, bindAddonActions, brightnessCapability, brokerCapability, buildAddonRouteProvider, buildAudioArgs, buildEventKindDescriptor, buildFfmpegArgs, buildInputArgs, buildModelVariantGroups, buildNcTaxonomy, buildRoleScopes, buildStreamParamsConfigSchema, buildVideoArgs, buttonCapability, cameraCredentialsCapability, cameraPipelineConfigCapability, cameraStreamsCapability, canConvertUnit, canonicalEgressPlan, carbonMonoxideCapability, cellsToRects, classifyBearerPrincipal, classifyStream, classifyStreams, climateControlCapability, collectHydratedFieldEntries, collectHydratedFieldValues, colorCapability, colorForKind, compileExpression, compileExpressionSafe, composeSwitchedOff, conditionDepth, connectionTestCapability, connectivityCapability, consumablesCapability, contactCapability, controlCapability, convertUnit, coreBlockAddonId, coreBlockIdFromAddonId, coreBlocksCapability, cosineSimilarity, countConditionLeaves, coverCapability, createDeviceProxy, createDurableState, createEvent, createExpressionScope, createHwAccelCache, createLazyTrpcSource, createMirrorSource, createRuntimeStateBridge, createSliceHandle, createSystemProxy, customAction, customModelRegistryCapability, dataStoreProviderCapability, dayNightCapability, declarationOwnerNodeId, decodeVectorBase64, decoderCapability, defaultDeviceFor, defineCustomActions, deriveBatteryPresence, deriveCameraSwitches, deriveDetailCropRect, deriveRecordingMode, describeModelVariant, detectAccessRole, detectionPipelineCapability, deviceAdoptionCapability, deviceBackendToFormat, deviceCustomAction, deviceDiscoveryCapability, deviceExportCapability, deviceManagerCapability, deviceMatchesProfile, deviceOpsCapability, deviceProviderCapability, deviceSelectorMatches, deviceStateCapability, deviceStatusCapability, doorbellCapability, egressTranscodeSharingKey, egressTransportFromRequest, embeddingEncoderCapability, emitDownForOwnedCaps, emitReadiness, encodeProfileFromStreamShape, encodeVectorBase64, enumSensorCapability, enumerateInferenceDevices, enumerateItemArrayFields, enumerateSchemaFields, errMsg, evaluateAst, evaluateExpressionSource, evaluateZoneRules, event, eventEmitterCapability, eventsCapability, expandCapMethods, extractNestedAddonId, extractSourceInfoFromMetadata, faceGalleryCapability, fanControlCapability, featureProbeCapability, filesystemBrowseCapability, findTimezone, floodCapability, formatForBackend, formatForRuntime, gasCapability, generateAutomationBlock, getAudioMacroClassIds, getByPath, getCapsByProviderKind, getTaxonomyEntry, hasMotionTrigger, hfModelUrl, htmlToText, humidifierCapability, humiditySensorCapability, hydrateSchema, imageCapability, imageSettingsCapability, integrationsCapability, intercomCapability, invocationFromEncodeProfile, isAgentOnlyPlacement, isArrayOutputSchema, isAudioLabelSelected, isBaseConditionKey, isBatteryPresenceFault, isCollectionArrayMethod, isDeployableToAgent, isDetectionMacroClass, isDeviceConfigCap, isDeviceScopedCap, isEvent, isIsolatedBuiltin, isNode, isObjectInput, isRestoredCap, isSameAddonId, isScheduleActive, isSoftwareDecode, isVoidInput, jobKindSchema, kebabToCamel, knownValues, lawnMowerControlCapability, lifecycleJobSchema, lifecycleJobScopeSchema, lifecycleJobStateSchema, lifecycleTaskSchema, llmCapability, llmRuntimeCapability, localNetworkCapability, locationSimilarity, lockControlCapability, logBannerArgs, logDestinationCapability, logLevelAtMost, loginMethodCapability, looseSchema, makeProfileBrokerId, makeSourceBrokerId, mapAudioLabelToMacro, markdownToHtmlLite, markdownToText, maskUrlCredentials, mediaPlayerCapability, mergeSourceInfo, meshNetworkCapability, method, methodAccessForHttpMethod, metricsProviderCapability, modelConvertCapability, modelDistributorCapability, modelFormatForRuntime, motionCapability, motionDetectionCapability, motionTriggerCapability, motionZonesCapability, mqttBrokerCapability, nativeObjectDetectionCapability, networkAccessCapability, networkQualityCapability, nodePin, nodesCapability, normalizeAddonInitResult, normalizeAudioLabel, normalizeTokenScopes, normalizeUnit, notificationOutputCapability, notificationRulesCapability, notifierCapability, numericSensorCapability, oauthIntegrationCapability, objectInputDeclaresAddonId, osdCapability, osdManagerCapability, parseCameraStreamConfig, parseExpression, parseJsonArray, parseJsonObject, parseJsonUnknown, parseProfileBrokerId, parseStreamParamsFormPatch, patchAudio, petFeederCapability, pickAccessoryControl, pickDetailCropConvention, pickNativeLeaseOverride, pickPreferredRtspEntry, pickVideoEncoder, pickerForCondition, pipelineAnalyticsCapability, pipelineExecutorCapability, pipelineOrchestratorCapability, pipelineRunnerCapability, plateGalleryCapability, platformProbeCapability, powerMeterCapability, prepareNotification, presenceCapability, pressureSensorCapability, principalMayReachAddon, privacyMaskCapability, procedureAuthKey, ptzAutotrackCapability, ptzCapability, pythonScriptForBackend, readDetailCropConvention, readDeviceStateFrom, readNativeLeaseOverride, readNodePin, readTimelapseGeneratedAt, readinessKey, rebootCapability, recordingCapability, recordingExportCapability, rectsToCells, requiresPython, resolveAddonExecution, resolveAddonGroup, resolveAddonPlacement, resolveAddonRuntime, resolveCapMount, resolveDetectionRuntime, resolveDeviceControlKind, resolveDeviceProfile, resolveEgressDecodeHwAccel, resolveFormat, resolveHydratedFieldValue, resolveModelFormat, resolveMutate, resolveRunnerId, resolveScrubThumbnailGeometry, resolveVariantModelId, resolveViewableDeviceIds, roleSpec, runInferenceStep, runtimeDevices, runtimeStatePolicyFor, sceneMonitorCapability, scopeInherits, scopeKey, scopesAllowAddon, scopesAllowDeviceCap, scoreRuntimes, scriptRunnerCapability, selectAssignedProfileSlots, serverManagementCapability, setByPath, settingsStoreCapability, sleep, sleepCancellable, smokeCapability, smtpProviderCapability, snapshotCapability, ssoBridgeCapability, startReachabilityPoll, stateVocabularyFor, storageCapability, storageEvictableCapability, storageMigrationCapability, storageProviderCapability, streamBrokerCapability, streamCatalogCapability, streamParamsCapability, streamPixels, streamQualityLabel, subKindsOf, summarisePrivacyAudio, summarizeEffectiveScope, supportedRuntimes, switchCapability, switchedOffIds, synthesizeSourceInfo, systemCapability, tamperCapability, taskLogEntrySchema, taskPhaseSchema, taskTargetSchema, temperatureSensorCapability, terminalSessionCapability, textToHtml, toDeviceSummary, toExpressionValue, toNodeId, toStreamSourceEntry, toastCapability, toggleAudioLabel, tokenize, transcodeBody, tryConvertUnit, turnProviderCapability, unitDimension, unitsForDimension, updateCapability, userManagementCapability, userPasskeysCapability, vacuumControlCapability, validateExpressionSource, validateRecipeBounds, valveCapability, vectorDimFromBase64, vectorStoreCapability, vibrationCapability, videoclipsCapability, viewerUiCapability, waterHeaterCapability, weatherCapability, webrtcClientHintsSchema, webrtcSessionCapability, wiringAddonHealthSchema, wiringHealthSnapshotSchema, wiringNodeHealthSchema, wiringProbeKindSchema, wiringProbeResultSchema, zodEntriesToConfigUI, zoneAnalyticsCapability, zoneRulesCapability, zonesCapability };
@@ -2920,6 +2920,7 @@ function createDeviceProxy(api, binding, opts) {
2920
2920
  sceneMonitor: createSliceHandle(stateSource, binding.deviceId, "scene-monitor"),
2921
2921
  scriptRunner: createSliceHandle(stateSource, binding.deviceId, "script-runner"),
2922
2922
  smoke: createSliceHandle(stateSource, binding.deviceId, "smoke"),
2923
+ streamCatalog: createSliceHandle(stateSource, binding.deviceId, "stream-catalog"),
2923
2924
  streamParams: createSliceHandle(stateSource, binding.deviceId, "stream-params"),
2924
2925
  switch: createSliceHandle(stateSource, binding.deviceId, "switch"),
2925
2926
  tamper: createSliceHandle(stateSource, binding.deviceId, "tamper"),
@@ -2920,6 +2920,7 @@ function createDeviceProxy(api, binding, opts) {
2920
2920
  sceneMonitor: createSliceHandle(stateSource, binding.deviceId, "scene-monitor"),
2921
2921
  scriptRunner: createSliceHandle(stateSource, binding.deviceId, "script-runner"),
2922
2922
  smoke: createSliceHandle(stateSource, binding.deviceId, "smoke"),
2923
+ streamCatalog: createSliceHandle(stateSource, binding.deviceId, "stream-catalog"),
2923
2924
  streamParams: createSliceHandle(stateSource, binding.deviceId, "stream-params"),
2924
2925
  switch: createSliceHandle(stateSource, binding.deviceId, "switch"),
2925
2926
  tamper: createSliceHandle(stateSource, binding.deviceId, "tamper"),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/types",
3
- "version": "1.2.76",
3
+ "version": "1.2.78",
4
4
  "description": "Shared types, interfaces, and model catalogs for the CamStack detection ecosystem",
5
5
  "keywords": [
6
6
  "camstack",