@camstack/types 1.2.162 → 1.2.164

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/dist/addon.js +4 -3
  2. package/dist/addon.mjs +4 -3
  3. package/dist/capabilities/alerts.cap.d.ts +5 -5
  4. package/dist/capabilities/index.d.ts +7 -5
  5. package/dist/capabilities/motion.cap.d.ts +2 -0
  6. package/dist/capabilities/notifier.cap.d.ts +3 -3
  7. package/dist/capabilities/pet-feeder.cap.d.ts +4 -4
  8. package/dist/capabilities/pipeline-runner.cap.d.ts +19 -0
  9. package/dist/capabilities/snapshot.cap.d.ts +2 -2
  10. package/dist/capabilities/storage-occupancy.cap.d.ts +72 -0
  11. package/dist/capabilities/storage-provider.cap.d.ts +110 -0
  12. package/dist/capabilities/storage.cap.d.ts +43 -0
  13. package/dist/capabilities/stream-broker.cap.d.ts +1 -1
  14. package/dist/device/device-profile.d.ts +1 -1
  15. package/dist/enums/event-category.d.ts +13 -0
  16. package/dist/enums.js +1 -1
  17. package/dist/enums.mjs +1 -1
  18. package/dist/{event-category-b8kBSOTT.js → event-category-BVo6ta6_.js} +13 -0
  19. package/dist/{event-category-zAv7pMUz.mjs → event-category-CnLqLOKs.mjs} +13 -0
  20. package/dist/generated/addon-api.d.ts +22 -0
  21. package/dist/generated/capability-router-map.d.ts +5 -2
  22. package/dist/generated/collection-array-methods.d.ts +1 -1
  23. package/dist/generated/method-access-map.d.ts +1 -1
  24. package/dist/generated/system-proxy.d.ts +1 -1
  25. package/dist/index.d.ts +4 -2
  26. package/dist/index.js +914 -561
  27. package/dist/index.mjs +895 -562
  28. package/dist/interfaces/event-bus.d.ts +23 -2
  29. package/dist/interfaces/storage-location-mode.d.ts +135 -0
  30. package/dist/interfaces/storage-location.d.ts +54 -6
  31. package/dist/interfaces/stream-broker.d.ts +15 -0
  32. package/dist/node.d.ts +13 -11
  33. package/dist/node.js +935 -876
  34. package/dist/node.mjs +936 -879
  35. package/dist/{sleep-DDIFZGbc.js → sleep-BZtO-eFY.js} +1 -1
  36. package/dist/{sleep-Cfij6Jj9.mjs → sleep-Bd-Y4RUt.mjs} +1 -1
  37. package/dist/storage/physical-root.d.ts +25 -0
  38. package/package.json +1 -1
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
- import { t as EventCategory } from "./event-category-zAv7pMUz.mjs";
2
- import { $ as DecodedAudioChunkSchema, A as DEVICE_STATUS_METHOD, At as hydrateSchema, B as toNodeId, C as ChargingStatus, Ct as createEvent, D as adminUiCapability, Dt as WELL_KNOWN_TAB_MAP, E as DeviceType, Et as WELL_KNOWN_TABS, F as resolveCapMount, G as scopeKey, H as ReadinessTimeoutError, I as systemMethod, J as CAM_PROFILE_ORDER, K as BrokerStatsSchema, L as CAP_NODE_PIN_CONTEXT_KEY, M as expandCapMethods, N as isDeviceConfigCap, O as DEFAULT_RUNTIME_STATE_DURABILITY, Ot as collectHydratedFieldEntries, P as method, Q as CameraStreamSchema, R as nodePin, S as DEVICE_CHILDREN_BATCH_MAX, St as createDurableState, T as DeviceRole, Tt as isEvent, U as emitDownForOwnedCaps, V as ReadinessRegistry, W as readinessKey, X as CamStreamKindSchema, Y as CamProfileSchema, Z as CamStreamResolutionSchema, _ as createMirrorSource, _t as DATAPLANE_SECRET_HEADER, a as asJsonObject, at as ProfileSlotSchema, b as deviceOpsCapability, bt as BaseAddon, c as parseJsonArray, ct as StreamSourceSchema, d as BOOT_RECOVERY_BACKOFF_MS, dt as SubscribeFramesInputSchema, et as DecodedFrameSchema, f as DEVICE_SCOPED_CAPS, ft as SubscribeFramesResultSchema, g as createLazyTrpcSource, gt as selectAssignedProfileSlots, h as createEventBusSliceSource, ht as parseProfileBrokerId, i as asJsonArray, it as ProfileRtspEntrySchema, j as event, jt as resolveHydratedFieldValue, k as DEVICE_SETTINGS_CONTRIBUTION_METHODS, kt as collectHydratedFieldValues, l as parseJsonObject, lt as SubscribeAudioChunksInputSchema, m as createDeviceProxy, mt as makeSourceBrokerId, n as sleepCancellable, nt as FrameHandleFormatSchema, o as asNumber, ot as ProfileSlotStatusSchema, p as isDeviceScopedCap, pt as makeProfileBrokerId, q as BrokerStatusSchema, r as asBoolean, rt as FrameHandleSchema, s as asString, st as StreamSourceEntrySchema, t as sleep, tt as EncodedPacketSchema, u as parseJsonUnknown, ut as SubscribeAudioChunksResultSchema, v as createSliceHandle, vt as SHARE_VIEW_KINDS, w as DeviceFeature, wt as emitReadiness, x as viewerUiCapability, xt as normalizeAddonInitResult, y as RawStateResultSchema, yt as DisposerChain, z as readNodePin } from "./sleep-Cfij6Jj9.mjs";
1
+ import { t as EventCategory } from "./event-category-CnLqLOKs.mjs";
2
+ import { $ as DecodedAudioChunkSchema, A as DEVICE_STATUS_METHOD, At as hydrateSchema, B as toNodeId, C as ChargingStatus, Ct as createEvent, D as adminUiCapability, Dt as WELL_KNOWN_TAB_MAP, E as DeviceType, Et as WELL_KNOWN_TABS, F as resolveCapMount, G as scopeKey, H as ReadinessTimeoutError, I as systemMethod, J as CAM_PROFILE_ORDER, K as BrokerStatsSchema, L as CAP_NODE_PIN_CONTEXT_KEY, M as expandCapMethods, N as isDeviceConfigCap, O as DEFAULT_RUNTIME_STATE_DURABILITY, Ot as collectHydratedFieldEntries, P as method, Q as CameraStreamSchema, R as nodePin, S as DEVICE_CHILDREN_BATCH_MAX, St as createDurableState, T as DeviceRole, Tt as isEvent, U as emitDownForOwnedCaps, V as ReadinessRegistry, W as readinessKey, X as CamStreamKindSchema, Y as CamProfileSchema, Z as CamStreamResolutionSchema, _ as createMirrorSource, _t as DATAPLANE_SECRET_HEADER, a as asJsonObject, at as ProfileSlotSchema, b as deviceOpsCapability, bt as BaseAddon, c as parseJsonArray, ct as StreamSourceSchema, d as BOOT_RECOVERY_BACKOFF_MS, dt as SubscribeFramesInputSchema, et as DecodedFrameSchema, f as DEVICE_SCOPED_CAPS, ft as SubscribeFramesResultSchema, g as createLazyTrpcSource, gt as selectAssignedProfileSlots, h as createEventBusSliceSource, ht as parseProfileBrokerId, i as asJsonArray, it as ProfileRtspEntrySchema, j as event, jt as resolveHydratedFieldValue, k as DEVICE_SETTINGS_CONTRIBUTION_METHODS, kt as collectHydratedFieldValues, l as parseJsonObject, lt as SubscribeAudioChunksInputSchema, m as createDeviceProxy, mt as makeSourceBrokerId, n as sleepCancellable, nt as FrameHandleFormatSchema, o as asNumber, ot as ProfileSlotStatusSchema, p as isDeviceScopedCap, pt as makeProfileBrokerId, q as BrokerStatusSchema, r as asBoolean, rt as FrameHandleSchema, s as asString, st as StreamSourceEntrySchema, t as sleep, tt as EncodedPacketSchema, u as parseJsonUnknown, ut as SubscribeAudioChunksResultSchema, v as createSliceHandle, vt as SHARE_VIEW_KINDS, w as DeviceFeature, wt as emitReadiness, x as viewerUiCapability, xt as normalizeAddonInitResult, y as RawStateResultSchema, yt as DisposerChain, z as readNodePin } from "./sleep-Bd-Y4RUt.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";
@@ -2642,6 +2642,158 @@ var RECOGNITION_TYPES = [
2642
2642
  "custom"
2643
2643
  ];
2644
2644
  //#endregion
2645
+ //#region src/interfaces/storage-location-mode.ts
2646
+ /**
2647
+ * The storage-location STATE MODEL (D385) — one typed state, one policy module.
2648
+ *
2649
+ * A location's state used to be split across two authorities: the typed
2650
+ * `enabled` field (THE write switch since D383) and an untyped `config.readOnly`
2651
+ * key. They did not mean the same thing — `enabled: false` was still evicted
2652
+ * under disk pressure while `config.readOnly` was deliberately excluded — and
2653
+ * neither name said which. Every consumer re-derived the difference, and the
2654
+ * three questions that actually matter were answered in six places.
2655
+ *
2656
+ * This module is the ONLY place in the repo allowed to interpret the state. It
2657
+ * answers three questions and nothing else:
2658
+ *
2659
+ * - may this location be WRITTEN to? {@link modeMayWrite}
2660
+ * - may this location be READ? {@link modeMayRead}
2661
+ * - what is its eviction policy? {@link evictionPolicyForMode}
2662
+ *
2663
+ * | mode | write | read | eviction |
2664
+ * | ---------- | ----- | ---- | ------------------------------ |
2665
+ * | `active` | yes | yes | `normal` (pressure + usage cap) |
2666
+ * | `readonly` | no | yes | `never` |
2667
+ * | `drain` | no | yes | `drain` (paced, until empty) |
2668
+ * | `disabled` | no | no | `never` |
2669
+ *
2670
+ * `scripts/check-storage-location-mode-single-owner.ts` fails the build when
2671
+ * anything outside this module reads `config['readOnly']` or compares `enabled`
2672
+ * directly. A rule nothing checks has already been broken somewhere.
2673
+ */
2674
+ var STORAGE_LOCATION_MODES = [
2675
+ "active",
2676
+ "readonly",
2677
+ "drain",
2678
+ "disabled"
2679
+ ];
2680
+ /**
2681
+ * The one typed state of a storage location. Authoritative Zod schema — the TS
2682
+ * alias below is `z.infer<>` of it, never a second spelling.
2683
+ */
2684
+ var StorageLocationModeSchema = z.enum(STORAGE_LOCATION_MODES);
2685
+ /**
2686
+ * What disk-pressure and usage-cap relief may do to a location.
2687
+ *
2688
+ * - `normal` — the existing behaviour: free-percent guard plus `maxUsedGb`.
2689
+ * - `never` — excluded entirely. A retiring disk the operator is copying off
2690
+ * must not race the relocate mover, and a disabled one is not the
2691
+ * system's to erase.
2692
+ * - `drain` — a monotonically descending effective usage cap, paced to what
2693
+ * the ACTIVE locations of the same class gained (D386). This is
2694
+ * the only policy that shrinks a location the system is not
2695
+ * writing to.
2696
+ */
2697
+ var StorageEvictionPolicySchema = z.enum([
2698
+ "normal",
2699
+ "never",
2700
+ "drain"
2701
+ ]);
2702
+ /**
2703
+ * The legacy untyped drain key. Named ONCE, here, so the guard has exactly one
2704
+ * sanctioned reader and the string never appears anywhere else.
2705
+ */
2706
+ var LEGACY_READ_ONLY_CONFIG_KEY = "readOnly";
2707
+ /** Is this mode a write target? Only `active` is. */
2708
+ function modeMayWrite(mode) {
2709
+ return mode === "active";
2710
+ }
2711
+ /** May this mode be read (playback, timeline, scrub, relocate source)? */
2712
+ function modeMayRead(mode) {
2713
+ return mode !== "disabled";
2714
+ }
2715
+ /** What eviction may do here. See {@link StorageEvictionPolicy}. */
2716
+ function evictionPolicyForMode(mode) {
2717
+ switch (mode) {
2718
+ case "active": return "normal";
2719
+ case "drain": return "drain";
2720
+ case "readonly":
2721
+ case "disabled": return "never";
2722
+ }
2723
+ }
2724
+ /**
2725
+ * The mode a LEGACY row implies, or `null` when it implies nothing — the row is
2726
+ * already stamped, or it carried neither flag.
2727
+ *
2728
+ * Both legacy flags fold to `readonly`, which is the CONSERVATIVE direction: a
2729
+ * state change must never start deleting footage on its own, and it must never
2730
+ * make footage that was still being served disappear. `enabled: false` used to
2731
+ * leave the location evictable under pressure; folding it to `readonly` stops
2732
+ * that, which is a strictly safer answer than the one it replaces.
2733
+ */
2734
+ function legacyModeOf(location) {
2735
+ if (location.mode !== void 0) return null;
2736
+ if (location.config["readOnly"] === true) return "readonly";
2737
+ if (location.enabled === false) return "readonly";
2738
+ return null;
2739
+ }
2740
+ /**
2741
+ * The state of a location, stamped or folded. THE one interpretation: a row
2742
+ * that predates D385 is never ambiguous, and a stamped `mode` always wins over
2743
+ * whatever the legacy pair still says.
2744
+ */
2745
+ function resolveLocationMode(location) {
2746
+ return (isStorageLocationMode(location.mode) ? location.mode : void 0) ?? legacyModeOf(location) ?? "active";
2747
+ }
2748
+ /** Is this one of the four states? The stamped value crosses a wire, and a
2749
+ * value nobody defined must not be rendered as if it were a state. */
2750
+ function isStorageLocationMode(value) {
2751
+ return STORAGE_LOCATION_MODES.some((mode) => mode === value);
2752
+ }
2753
+ /** May this location be written to? */
2754
+ function mayWriteToLocation(location) {
2755
+ return modeMayWrite(resolveLocationMode(location));
2756
+ }
2757
+ /** May this location be read? A `disabled` one may not — and that is an
2758
+ * operator CHOICE, which callers must report as unavailable rather than as an
2759
+ * unknown-location fault. */
2760
+ function mayReadLocation(location) {
2761
+ return modeMayRead(resolveLocationMode(location));
2762
+ }
2763
+ /** What eviction may do to this location. */
2764
+ function evictionPolicyOfLocation(location) {
2765
+ return evictionPolicyForMode(resolveLocationMode(location));
2766
+ }
2767
+ /**
2768
+ * The config blob with the retired drain key removed. Returns the SAME object
2769
+ * when there was nothing to strip, so a caller can tell "changed" from
2770
+ * "unchanged" by identity and skip a pointless persist.
2771
+ */
2772
+ function strippedOfLegacyReadOnly(config) {
2773
+ if (!("readOnly" in config)) return config;
2774
+ const next = { ...config };
2775
+ delete next[LEGACY_READ_ONLY_CONFIG_KEY];
2776
+ return next;
2777
+ }
2778
+ /**
2779
+ * Set a location's mode, and with it everything that must agree with it.
2780
+ *
2781
+ * `enabled` stays readable for one release as a DERIVED value (`mode ===
2782
+ * 'active'`) so consumers that have not moved yet keep working, and the legacy
2783
+ * `config.readOnly` key is DELETED. This function is the only way to write
2784
+ * either, which is what makes it impossible for the two to disagree.
2785
+ *
2786
+ * Returns a new object — the input is never mutated.
2787
+ */
2788
+ function withLocationMode(location, mode) {
2789
+ return {
2790
+ ...location,
2791
+ mode,
2792
+ enabled: modeMayWrite(mode),
2793
+ config: strippedOfLegacyReadOnly(location.config)
2794
+ };
2795
+ }
2796
+ //#endregion
2645
2797
  //#region src/interfaces/storage-location.ts
2646
2798
  /**
2647
2799
  * `StorageLocationType` — an addon-declared id that identifies the *kind* of
@@ -2709,6 +2861,21 @@ var StorageLocationSchema = z.object({
2709
2861
  * stops existing rather than being re-derived on every read.
2710
2862
  */
2711
2863
  enabled: z.boolean().optional(),
2864
+ /**
2865
+ * THE state of this location (D385), and the only authority on what may be
2866
+ * written, read or evicted here. Interpreted in exactly one place —
2867
+ * `storage-location-mode.ts` — which also folds the legacy
2868
+ * `enabled` / `config.readOnly` pair into a mode so an old row is never
2869
+ * ambiguous.
2870
+ *
2871
+ * OPTIONAL only for the wire and for rows written before D385: absence is
2872
+ * resolved by `resolveLocationMode`, and the orchestrator stamps every
2873
+ * unstamped row ONCE at hydrate so absence stops existing rather than being
2874
+ * re-derived on every read. `enabled` survives one release as a DERIVED
2875
+ * mirror (`mode === 'active'`); `withLocationMode` is the only writer of
2876
+ * either, so the two cannot disagree.
2877
+ */
2878
+ mode: StorageLocationModeSchema.optional(),
2712
2879
  /** COMPUTED at read time by the orchestrator (statfs of the backing volume
2713
2880
  * for node-local locations it can reach) — never persisted, absent when the
2714
2881
  * volume is remote/unreachable. The single capacity truth every UI reads. */
@@ -2716,6 +2883,25 @@ var StorageLocationSchema = z.object({
2716
2883
  totalBytes: z.number(),
2717
2884
  availableBytes: z.number()
2718
2885
  }).nullable().optional(),
2886
+ /**
2887
+ * How much of that volume CamStack ITSELF holds on this location (D388) —
2888
+ * COMPUTED at read time from the `storage-occupancy` providers' own figures,
2889
+ * never persisted, never a filesystem walk.
2890
+ *
2891
+ * **ABSENT MEANS UNKNOWN, never zero.** No provider has reported for this
2892
+ * location yet — nobody stores here, the owning addon is down, or the first
2893
+ * refresh has not completed. A UI must omit the segment rather than draw it
2894
+ * at zero, which would claim we occupy nothing (D315). It is an OBJECT and
2895
+ * not a bare number precisely so that a `?? 0` on the consuming side has to
2896
+ * be spelled out loud instead of appearing by accident.
2897
+ *
2898
+ * `measuredAtMs` is the OLDEST contributing measurement, so it is honest
2899
+ * about the whole figure rather than about its freshest part.
2900
+ */
2901
+ owned: z.object({
2902
+ bytes: z.number().int().nonnegative(),
2903
+ measuredAtMs: z.number().int().nonnegative()
2904
+ }).optional(),
2719
2905
  createdAt: z.number(),
2720
2906
  updatedAt: z.number()
2721
2907
  });
@@ -2731,16 +2917,45 @@ var StorageLocationSchema = z.object({
2731
2917
  * the repo may read it; `scripts/check-no-storage-default.ts` enforces that.
2732
2918
  */
2733
2919
  var LegacyStorageLocationDefaultSchema = z.object({ isDefault: z.boolean().optional() });
2920
+ function isLocationEnabled(location) {
2921
+ return mayWriteToLocation({
2922
+ ...location,
2923
+ config: location.config ?? {}
2924
+ });
2925
+ }
2734
2926
  /**
2735
- * Is this location a write target? THE one place that decides what an absent
2736
- * `enabled` means on a persisted row — legacy rows predate the flag and were
2737
- * active, so absence is enabled. Every consumer asks here rather than spelling
2738
- * `enabled !== false` again, so the tri-state has exactly one interpretation.
2927
+ * Bytes in one GB, for every storage figure an operator types.
2928
+ *
2929
+ * BINARY (1024³), everywhere. The repo had both: the orchestrator's
2930
+ * `maxUsedGb` → bytes conversion used 1024³ while the recorder's placement
2931
+ * headroom used 10⁹ for the SAME stored key, so a location with a cap set was
2932
+ * silently 7.4% off depending on which side of the pipe asked. The persisted
2933
+ * values were entered against the binary unit and the admin UI reads it, so
2934
+ * that is the one that stays. Every GB knob — `maxUsedGb`, `minFreeGb` —
2935
+ * converts through {@link gbToBytes} and nowhere else.
2739
2936
  */
2740
- function isLocationEnabled(location) {
2741
- return location.enabled !== false;
2937
+ var STORAGE_BYTES_PER_GB = 1024 ** 3;
2938
+ /** GB → bytes, binary. Fractional GB is admitted and floored. */
2939
+ function gbToBytes(gb) {
2940
+ return Math.floor(gb * STORAGE_BYTES_PER_GB);
2742
2941
  }
2743
2942
  /**
2943
+ * How far a `drain` has got (D386) — the read a UI renders, and nothing more.
2944
+ *
2945
+ * `estimatedEmptyAtMs` is derived from the growth the ratchet has actually
2946
+ * OBSERVED and is `null` when it has observed none. Never a fabricated date: a
2947
+ * drain with no observed growth has no honest ETA, and inventing one is how an
2948
+ * operator learns not to believe the screen.
2949
+ */
2950
+ var StorageDrainProgressSchema = z.object({
2951
+ locationId: z.string(),
2952
+ startedAtMs: z.number(),
2953
+ startBytes: z.number(),
2954
+ bytesRemaining: z.number(),
2955
+ drained: z.boolean(),
2956
+ estimatedEmptyAtMs: z.number().nullable()
2957
+ });
2958
+ /**
2744
2959
  * Reference accepted by consumer-facing `api.storage.*` calls.
2745
2960
  * Either:
2746
2961
  * - a `StorageLocationType` (e.g. `'backups'`) → the sole location of that type
@@ -20723,8 +20938,25 @@ var occupancyRecheckFramesField = {
20723
20938
  * (analyzer attaches detected `regions[]`; onboard does not — the
20724
20939
  * camera typically only reports a binary signal plus an optional
20725
20940
  * channel/AI class which lives in dedicated event channels).
20726
- */
20727
- var MotionSourceEnum = z.enum(["onboard", "analyzer"]);
20941
+ *
20942
+ * - `onboard` — the camera's firmware said something moved.
20943
+ * - `analyzer` — this runner's frame-diff said so, and attaches `regions[]`.
20944
+ * - `device-activity` — the DEVICE said it is doing its job: the
20945
+ * `recording-signal` LEVEL the same device raises for the recorder
20946
+ * ([D380](../../../../docs/decisions/adr-0380-a-device-decided-recording-is-a-mode-with-no-schedule-seeded-once.md)),
20947
+ * republished as a motion source. It attaches **nothing** — no regions, no
20948
+ * class: the only fact it carries is that the device is active, and a robot
20949
+ * vacuum that is itself the moving object has no region worth sending. It is
20950
+ * a LEVEL, so unlike `onboard` it has a real falling edge, and unlike
20951
+ * `analyzer` it must not open the frame-diff side-channel — the runner's
20952
+ * `handleOnboardMotionAnalyzer` gate is `source === 'onboard'` and stays that
20953
+ * way ([D392](../../../../docs/decisions/adr-0392-a-device-that-says-it-is-working-is-a-motion-source-of-its-own.md)).
20954
+ */
20955
+ var MotionSourceEnum = z.enum([
20956
+ "onboard",
20957
+ "analyzer",
20958
+ "device-activity"
20959
+ ]);
20728
20960
  /**
20729
20961
  * List of motion sources active on a camera. Empty array is valid:
20730
20962
  * "no source" — happens for battery cams without firmware motion when
@@ -20988,13 +21220,20 @@ var RunnerCameraDeviceUIFields = [
20988
21220
  type: "multiselect",
20989
21221
  label: "Motion Sources",
20990
21222
  default: ["analyzer"],
20991
- options: [{
20992
- value: "analyzer",
20993
- label: "Frame-diff Analyzer (motion addon)"
20994
- }, {
20995
- value: "onboard",
20996
- label: "Camera Onboard Sensor"
20997
- }]
21223
+ options: [
21224
+ {
21225
+ value: "analyzer",
21226
+ label: "Frame-diff Analyzer (motion addon)"
21227
+ },
21228
+ {
21229
+ value: "onboard",
21230
+ label: "Camera Onboard Sensor"
21231
+ },
21232
+ {
21233
+ value: "device-activity",
21234
+ label: "Device activity (the device says it is working)"
21235
+ }
21236
+ ]
20998
21237
  },
20999
21238
  {
21000
21239
  key: "motionFps",
@@ -23200,6 +23439,12 @@ var storageCapability = {
23200
23439
  kind: "mutation",
23201
23440
  auth: "admin"
23202
23441
  }),
23442
+ /**
23443
+ * How far each draining location has got (D386). A pure READ of what the
23444
+ * last pressure sweep computed — it starts no work, and a location that is
23445
+ * not draining simply does not appear.
23446
+ */
23447
+ listDrainProgress: method(z.void(), z.array(StorageDrainProgressSchema).readonly()),
23203
23448
  testLocation: method(z.object({ id: z.string() }), z.object({
23204
23449
  ok: z.boolean(),
23205
23450
  error: z.string().optional()
@@ -23352,6 +23597,73 @@ var storageMigrationCapability = {
23352
23597
  }
23353
23598
  };
23354
23599
  //#endregion
23600
+ //#region src/capabilities/storage-occupancy.cap.ts
23601
+ /**
23602
+ * `storage-occupancy` — how many bytes an addon actually HOLDS on a storage
23603
+ * location (D388).
23604
+ *
23605
+ * ## Why this is not `storage-evictable`
23606
+ *
23607
+ * `storage-evictable.getEvictableUsage` looks like the same question and is
23608
+ * not, in two ways that both matter and both bite hardest on the locations an
23609
+ * operator most wants a figure for:
23610
+ *
23611
+ * - it reports the whole eviction DOMAIN, not the location. `recordings:default`
23612
+ * and `recordingsLow:default` deliberately share one root and evict as one
23613
+ * oldest-first pool, so both answer with the SAME combined total. As an
23614
+ * occupancy figure that double-counts the disk.
23615
+ * - it reports ZERO for a location whose eviction policy is `never` (D385) —
23616
+ * a `readonly` or `disabled` disk. Those are exactly the disks an operator
23617
+ * is retiring and staring at.
23618
+ *
23619
+ * So this is its own contract with its own quantity, and the quantity is
23620
+ * OCCUPIED: every byte the addon holds on that location, whether or not it
23621
+ * would ever be willing to delete it. A provider that can only answer
23622
+ * "evictable" must not register here — a number that silently means different
23623
+ * things per class is worse than no number.
23624
+ *
23625
+ * ## Absence is an answer
23626
+ *
23627
+ * A location nobody reports for is UNKNOWN, never zero (D315). The orchestrator
23628
+ * stamps `StorageLocation.owned` only for locations it has a report for, and
23629
+ * the field is an OBJECT rather than a bare number so that a `?? 0` on the
23630
+ * consuming side has to be written out loud instead of appearing by accident.
23631
+ *
23632
+ * `internal: true` — consumed by the orchestrator's `listLocations` stamp, never
23633
+ * a public client surface. Clients read the stamped `StorageLocation.owned`.
23634
+ */
23635
+ /** One provider's occupancy answer for one location. */
23636
+ var StorageOccupancyReportSchema = z.object({
23637
+ locationId: z.string(),
23638
+ /** Bytes this provider holds on THAT location — not its eviction domain, and
23639
+ * not net of what it is willing to delete. */
23640
+ ownedBytes: z.number().int().nonnegative(),
23641
+ /** When the provider last actually measured this. The orchestrator carries it
23642
+ * through so a UI can say how old the figure is instead of implying "now". */
23643
+ measuredAtMs: z.number().int().nonnegative()
23644
+ });
23645
+ var storageOccupancyCapability = {
23646
+ name: "storage-occupancy",
23647
+ scope: "system",
23648
+ mode: "collection",
23649
+ internal: true,
23650
+ methods: {
23651
+ /**
23652
+ * Occupancy for the given locations, in ONE round trip.
23653
+ *
23654
+ * A provider answers only for the locations it actually holds bytes on and
23655
+ * OMITS the rest — an omitted location is "I hold nothing measurable here",
23656
+ * which the orchestrator merges as a contribution of nothing rather than as
23657
+ * a claim that the location is empty. Only a location no provider reports
23658
+ * at all stays unknown.
23659
+ *
23660
+ * This must be CHEAP and must never walk a filesystem: it is on the admin
23661
+ * UI's `listLocations` path. The owner keeps its own figure fresh (D224) and
23662
+ * answers from what it already has.
23663
+ */
23664
+ getOccupancy: method(z.object({ locationIds: z.array(z.string()).readonly() }), z.array(StorageOccupancyReportSchema).readonly(), { auth: "admin" }) }
23665
+ };
23666
+ //#endregion
23355
23667
  //#region src/capabilities/storage-provider.cap.ts
23356
23668
  var ProviderInfoSchema = z.discriminatedUnion("shouldSaveDiskSpace", [z.object({
23357
23669
  providerId: z.string().min(1),
@@ -25768,125 +26080,6 @@ onStatusChanged: { data: z.object({
25768
26080
  volatileStateFields: ["lastUpdated"]
25769
26081
  };
25770
26082
  //#endregion
25771
- //#region src/capabilities/network-link.cap.ts
25772
- /**
25773
- * How a device reaches the network, and how well.
25774
- *
25775
- * NOT `connectivity`: that cap is an UPSTREAM system's binary view of whether
25776
- * an entity is reachable (a Home Assistant `binary_sensor` with
25777
- * `device_class: connectivity`). This one is the device's OWN link — the
25778
- * medium it is on and the signal it sees — the way `battery` is the device's
25779
- * own charge.
25780
- *
25781
- * `'wifi'`, `'ethernet'` and `'cellular'` are links the firmware actually
25782
- * reported. `'unknown'` is the ABSENCE of an answer — the provider has
25783
- * registered the capability but has not read the link yet (D315: unknown is
25784
- * not empty). Consumers skip it rather than draw a wire or a bar.
25785
- */
25786
- var NETWORK_LINK_TYPES = [
25787
- "wifi",
25788
- "ethernet",
25789
- "cellular",
25790
- "unknown"
25791
- ];
25792
- /**
25793
- * Network-link snapshot. Same shape for every provider (a Reolink wifi
25794
- * camera, a Home Assistant device with a signal-strength sensor, a Tapo
25795
- * plug): one slice under `device.runtimeState['network-link']`, one badge,
25796
- * one Home Assistant projection.
25797
- */
25798
- var NetworkLinkStatusSchema = z.object({
25799
- /** The link the device is on. `'unknown'` = not read yet, not "no link". */
25800
- type: z.enum(NETWORK_LINK_TYPES),
25801
- /**
25802
- * Link quality, 0..100 inclusive, normalised by the provider from whatever
25803
- * the firmware reports (bars, RSSI, a vendor scale). **`null` means NOT
25804
- * KNOWN or NOT APPLICABLE** — a wired link has no signal, and a wireless
25805
- * one whose reading has not landed must not be drawn at 0 %. Consumers
25806
- * SKIP a null rather than coerce it.
25807
- */
25808
- signalPercent: z.number().min(0).max(100).nullable(),
25809
- /** Raw received signal strength in dBm, when the firmware reports one. */
25810
- rssiDbm: z.number().optional(),
25811
- /** Network name of a wireless link, when the firmware reports it. */
25812
- ssid: z.string().optional(),
25813
- /** Ms epoch of the last observation. Lets consumers reason about freshness. */
25814
- lastUpdated: z.number()
25815
- });
25816
- /** The slice a provider seeds before its first read: nothing is known yet. */
25817
- var NETWORK_LINK_UNKNOWN = {
25818
- type: "unknown",
25819
- signalPercent: null,
25820
- lastUpdated: 0
25821
- };
25822
- /**
25823
- * Normalise a signal the firmware reports as BARS (0..`maxBars`) to 0..100.
25824
- * Out-of-range or non-finite input is not a reading: `null`.
25825
- */
25826
- function signalPercentFromBars(bars, maxBars) {
25827
- if (bars === void 0 || !Number.isFinite(bars) || maxBars <= 0) return null;
25828
- if (bars < 0 || bars > maxBars) return null;
25829
- return Math.round(bars / maxBars * 100);
25830
- }
25831
- /**
25832
- * Normalise an RSSI in dBm to 0..100 on the usual wifi scale: -100 dBm and
25833
- * below is 0 %, -50 dBm and above is 100 %, linear between. Non-finite or
25834
- * positive input is not an RSSI: `null`.
25835
- */
25836
- function signalPercentFromRssi(rssiDbm) {
25837
- if (rssiDbm === void 0 || !Number.isFinite(rssiDbm) || rssiDbm > 0) return null;
25838
- return Math.round((Math.min(-50, Math.max(-100, rssiDbm)) + 100) * 2);
25839
- }
25840
- var networkLinkCapability = {
25841
- name: "network-link",
25842
- scope: "device",
25843
- deviceNative: true,
25844
- mode: "singleton",
25845
- deviceTypes: [
25846
- DeviceType.Camera,
25847
- DeviceType.Sensor,
25848
- DeviceType.Button,
25849
- DeviceType.Switch,
25850
- DeviceType.Light,
25851
- DeviceType.Lock,
25852
- DeviceType.Siren
25853
- ],
25854
- methods: {},
25855
- events: {
25856
- /**
25857
- * Emitted whenever the cached status changes (a link switch, a signal
25858
- * reading that moved). Mirrored on the parent chain by the
25859
- * DeviceEventPropagator like `battery.onStatusChanged`.
25860
- */
25861
- onStatusChanged: { data: z.object({
25862
- deviceId: z.number(),
25863
- status: NetworkLinkStatusSchema
25864
- }) } },
25865
- status: {
25866
- schema: NetworkLinkStatusSchema,
25867
- kind: "push",
25868
- empty: NETWORK_LINK_UNKNOWN
25869
- },
25870
- /**
25871
- * Runtime-state slice — every provider stores the same shape under
25872
- * `device.runtimeState['network-link']`, read once by the badge and the
25873
- * Home Assistant projector regardless of the driver.
25874
- */
25875
- runtimeState: NetworkLinkStatusSchema,
25876
- /**
25877
- * Runtime-state durability: **restored** — a link reading is slow to
25878
- * change and a sleeping battery camera may not report for hours; the
25879
- * restored slice is what the badge shows until the next read.
25880
- *
25881
- * See `RuntimeStateDurability`. Enforced by
25882
- * `scripts/check-runtime-state-durability.ts`.
25883
- */
25884
- durability: "restored",
25885
- /** Clock fields: written, but excluded from the compare that decides
25886
- * whether persisting is worth a SQLite commit. */
25887
- volatileStateFields: ["lastUpdated"]
25888
- };
25889
- //#endregion
25890
26083
  //#region src/capabilities/binary.cap.ts
25891
26084
  /**
25892
26085
  * Generic boolean sensor — last-resort fallback when no domain-
@@ -29896,6 +30089,550 @@ var nativeObjectDetectionCapability = {
29896
30089
  volatileStateFields: ["lastFetchedAt"]
29897
30090
  };
29898
30091
  //#endregion
30092
+ //#region src/capabilities/navigation.cap.ts
30093
+ /**
30094
+ * `navigation` — a device-scoped capability that natively expresses the FULL
30095
+ * navigation / action surface of a robot that DRIVES ITSELF and carries an
30096
+ * on-board camera (the Dreame robot-vacuum camera is the first provider).
30097
+ *
30098
+ * Why a NEW cap rather than overloading `ptz`:
30099
+ * - `ptz` moves a *gimbal* on a fixed camera (pan/tilt/zoom of the lens). A
30100
+ * robot vacuum has no gimbal — the whole chassis drives, turns and spins.
30101
+ * The two are different physical models: PTZ is absolute-position + presets,
30102
+ * navigation is momentary drive nudges + discrete robot ACTIONS
30103
+ * (dock / spot-clean / follow-pet / go-to-point / …).
30104
+ * - This cap is the SOURCE OF TRUTH. Two consumers adapt from it rather than
30105
+ * the reverse:
30106
+ * 1. a native CamStack navigation panel (data-driven from `listActions`
30107
+ * / `getOptions`), and
30108
+ * 2. the PTZ surface — a thin adapter mimics `ptz` from `navigation` so a
30109
+ * robot camera shows up in the existing PTZ control path without every
30110
+ * PTZ provider learning about robots. The mapping lives in the adapter,
30111
+ * not here (see the addon design note):
30112
+ * ptz.continuousMove({pan,tilt}) → navigation.move({pan,tilt})
30113
+ * ptz.stop() → navigation.stop()
30114
+ * ptz.goHome() → navigation.runAction('goHome')
30115
+ * ptz.getPresets() → navigation.listActions() (id→preset)
30116
+ * ptz.goToPreset(id) → navigation.runAction(id)
30117
+ *
30118
+ * ## Continuous drive
30119
+ *
30120
+ * `move` is MOMENTARY. Fluid navigation comes from the UI (or the PTZ adapter)
30121
+ * sending `move({pan,tilt})` REPEATEDLY at ~1 Hz while a direction is held, and
30122
+ * one `stop()` on release — exactly like the robot app's remote-drive joystick.
30123
+ * The provider forwards EACH `move` to one drive write; it must NOT debounce or
30124
+ * coalesce them. The UI owns the cadence.
30125
+ *
30126
+ * ## The action dictionary
30127
+ *
30128
+ * The discrete controls (dock / locate / spot-clean / follow / flash / sounds)
30129
+ * are a DATA-DRIVEN dictionary the cap exposes via `listActions()`. Each entry
30130
+ * carries `{ id, kind, label, icon }` (plus `soundId` for sound entries) so the
30131
+ * native panel AND the PTZ mimic render buttons WITHOUT hardcoding a
30132
+ * vendor-specific list. `kind: 'action'` entries are triggered with
30133
+ * `runAction({ actionId })`; `kind: 'sound'` entries with `playSound({ soundId })`
30134
+ * (the entry carries the `soundId` to pass). The general primitives — `move`,
30135
+ * `stop`, `goToPoint` — stay as first-class methods, not dictionary entries.
30136
+ *
30137
+ * NOTE (provider wiring): the first provider (Dreame) drives this with the RAW
30138
+ * `callAction(siid,aiid,in)` / `setProperty({siid,piid,value})` MIoT primitives
30139
+ * that the currently-published `@apocaliss92/nodedreame` already exposes on
30140
+ * every device handle. A future nodedreame publish adds a typed
30141
+ * `DreameCameraController` (drive / playPetSound / spotClean / findPet / …); the
30142
+ * provider can then swap the raw calls for the typed methods with no change to
30143
+ * THIS contract.
30144
+ */
30145
+ /**
30146
+ * A momentary drive nudge. The robot MOVES (no gimbal) for as long as the caller
30147
+ * keeps sending nudges (~1 Hz); an explicit `stop` (or letting the nudges lapse)
30148
+ * halts it.
30149
+ *
30150
+ * - `pan` — turn: negative = left, positive = right, 0 = straight.
30151
+ * - `tilt` — throttle: positive = forward, negative = spin / turn-around.
30152
+ * - `speed` — optional intensity hint [0, 1]; the provider may scale the drive
30153
+ * vector by it (drivers without proportional drive ignore it).
30154
+ *
30155
+ * `pan` / `tilt` are normalized [-1, 1]. Both optional so a caller can nudge one
30156
+ * axis alone; an all-undefined nudge is a no-op.
30157
+ */
30158
+ var NavigationMoveCommandSchema = z.object({
30159
+ pan: z.number().min(-1).max(1).optional(),
30160
+ tilt: z.number().min(-1).max(1).optional(),
30161
+ speed: z.number().min(0).max(1).optional()
30162
+ });
30163
+ /**
30164
+ * The enumerated discrete actions a navigation-capable robot can perform via
30165
+ * `runAction`. This is the CLOSED vocabulary; a given device advertises the
30166
+ * subset it supports through `listActions`. Sounds are NOT here — they go through
30167
+ * `playSound` (see the `sound` dictionary entries).
30168
+ */
30169
+ var NavigationActionIdSchema = z.enum([
30170
+ "goHome",
30171
+ "locate",
30172
+ "spotClean",
30173
+ "findPet",
30174
+ "personFollow",
30175
+ "stop",
30176
+ "startClean",
30177
+ "pauseClean",
30178
+ "dockWash",
30179
+ "autoEmpty",
30180
+ "flashOn",
30181
+ "flashOff"
30182
+ ]);
30183
+ /** Whether a dictionary entry is a `runAction` action or a `playSound` sound. */
30184
+ var NavigationEntryKindSchema = z.enum(["action", "sound"]);
30185
+ /**
30186
+ * One entry in the navigation action dictionary — the DATA-DRIVEN unit both the
30187
+ * native panel and the PTZ mimic render as a button.
30188
+ *
30189
+ * - `id` — stable id. For `kind:'action'` it is a {@link NavigationActionId}
30190
+ * (pass to `runAction`); for `kind:'sound'` it is a namespaced id
30191
+ * (`sound:meow`) whose `soundId` is passed to `playSound`.
30192
+ * - `icon` — icon HINT (lucide-style name; the UI maps it to its own set).
30193
+ * - `label` — operator-facing English label.
30194
+ * - `soundId` — wire sound id, present only on `kind:'sound'` entries.
30195
+ * - `enabled` — per-device FEATURE FLAG. `listActions` reports it so the UI /
30196
+ * PTZ render ONLY enabled entries. Data-driven: the provider
30197
+ * flips it from config, never by editing code.
30198
+ */
30199
+ var NavigationActionEntrySchema = z.object({
30200
+ id: z.string(),
30201
+ kind: NavigationEntryKindSchema,
30202
+ label: z.string(),
30203
+ icon: z.string(),
30204
+ /** Present only on `kind:'sound'` entries — the id to pass to `playSound`. */
30205
+ soundId: z.number().int().optional(),
30206
+ /** Per-device feature flag — render this entry only when true. */
30207
+ enabled: z.boolean()
30208
+ });
30209
+ /**
30210
+ * Canonical dictionary of every navigation control (discrete actions + sounds)
30211
+ * with its default label + icon hint. A provider filters this to the subset a
30212
+ * device supports (and may override a label). Exported so the provider AND the
30213
+ * UI share ONE list instead of re-deriving labels / ids independently.
30214
+ *
30215
+ * Icons are lucide-style hints; the viewer maps them to its own icon set. Every
30216
+ * catalog default is `enabled: true`; a provider overrides per-device from
30217
+ * config (data-driven — enabling / disabling one later is a config change, not a
30218
+ * code change).
30219
+ */
30220
+ var NAVIGATION_ACTION_CATALOG = [
30221
+ {
30222
+ id: "startClean",
30223
+ kind: "action",
30224
+ label: "Start cleaning",
30225
+ icon: "play",
30226
+ enabled: true
30227
+ },
30228
+ {
30229
+ id: "pauseClean",
30230
+ kind: "action",
30231
+ label: "Pause cleaning",
30232
+ icon: "pause",
30233
+ enabled: true
30234
+ },
30235
+ {
30236
+ id: "stop",
30237
+ kind: "action",
30238
+ label: "Stop",
30239
+ icon: "hand",
30240
+ enabled: true
30241
+ },
30242
+ {
30243
+ id: "goHome",
30244
+ kind: "action",
30245
+ label: "Return to dock",
30246
+ icon: "home",
30247
+ enabled: true
30248
+ },
30249
+ {
30250
+ id: "locate",
30251
+ kind: "action",
30252
+ label: "Locate",
30253
+ icon: "bell",
30254
+ enabled: true
30255
+ },
30256
+ {
30257
+ id: "spotClean",
30258
+ kind: "action",
30259
+ label: "Spot clean here",
30260
+ icon: "crosshair",
30261
+ enabled: true
30262
+ },
30263
+ {
30264
+ id: "findPet",
30265
+ kind: "action",
30266
+ label: "Find pet",
30267
+ icon: "paw-print",
30268
+ enabled: true
30269
+ },
30270
+ {
30271
+ id: "personFollow",
30272
+ kind: "action",
30273
+ label: "Follow me",
30274
+ icon: "footprints",
30275
+ enabled: true
30276
+ },
30277
+ {
30278
+ id: "dockWash",
30279
+ kind: "action",
30280
+ label: "Wash mop",
30281
+ icon: "droplets",
30282
+ enabled: true
30283
+ },
30284
+ {
30285
+ id: "autoEmpty",
30286
+ kind: "action",
30287
+ label: "Empty dustbin",
30288
+ icon: "trash-2",
30289
+ enabled: true
30290
+ },
30291
+ {
30292
+ id: "flashOn",
30293
+ kind: "action",
30294
+ label: "Flash on",
30295
+ icon: "flashlight",
30296
+ enabled: true
30297
+ },
30298
+ {
30299
+ id: "flashOff",
30300
+ kind: "action",
30301
+ label: "Flash off",
30302
+ icon: "flashlight-off",
30303
+ enabled: true
30304
+ },
30305
+ {
30306
+ id: "sound:meow",
30307
+ kind: "sound",
30308
+ label: "Meow",
30309
+ icon: "cat",
30310
+ soundId: 684,
30311
+ enabled: true
30312
+ },
30313
+ {
30314
+ id: "sound:bark",
30315
+ kind: "sound",
30316
+ label: "Woof",
30317
+ icon: "dog",
30318
+ soundId: 685,
30319
+ enabled: true
30320
+ },
30321
+ {
30322
+ id: "sound:footsteps",
30323
+ kind: "sound",
30324
+ label: "Footsteps",
30325
+ icon: "footprints",
30326
+ soundId: 686,
30327
+ enabled: true
30328
+ },
30329
+ {
30330
+ id: "sound:purring",
30331
+ kind: "sound",
30332
+ label: "Purring",
30333
+ icon: "cat",
30334
+ soundId: 687,
30335
+ enabled: true
30336
+ },
30337
+ {
30338
+ id: "sound:tickTock",
30339
+ kind: "sound",
30340
+ label: "Tick-tock",
30341
+ icon: "clock",
30342
+ soundId: 688,
30343
+ enabled: true
30344
+ }
30345
+ ];
30346
+ /** Coordinates for `goToPoint` — a point on the robot's live map. */
30347
+ var NavigationPointSchema = z.object({
30348
+ x: z.number(),
30349
+ y: z.number()
30350
+ });
30351
+ /**
30352
+ * Per-device FEATURE-FLAG report for the general (non-dictionary) primitives.
30353
+ * The cap reports which are enabled so the UI / PTZ render only the controls
30354
+ * that are turned on for THIS device. Data-driven: the provider derives these
30355
+ * from config + probe, never hardcoded in the UI. The per-DICTIONARY-entry flags
30356
+ * live on {@link NavigationActionEntrySchema.enabled}; these gate the primitives
30357
+ * that are not dictionary entries.
30358
+ *
30359
+ * - `move` / `stop` — the momentary drive joystick.
30360
+ * - `goToPoint` — send-to-map-coordinate. Ships OFF on Dreame until the
30361
+ * map-coordinate plumbing is wired.
30362
+ * - `runAction` — the discrete action buttons (dictionary `kind:'action'`).
30363
+ * - `playSound` — the sound buttons (dictionary `kind:'sound'`).
30364
+ * - `light` — the on/off fill-light toggle (works anytime).
30365
+ * - `lightMode` — the auto/manual selector + manual level slider (a
30366
+ * camera-service control; needs an active stream).
30367
+ */
30368
+ var NavigationFeaturesSchema = z.object({
30369
+ move: z.boolean(),
30370
+ stop: z.boolean(),
30371
+ goToPoint: z.boolean(),
30372
+ runAction: z.boolean(),
30373
+ playSound: z.boolean(),
30374
+ light: z.boolean(),
30375
+ lightMode: z.boolean()
30376
+ });
30377
+ /** Light mode: `auto` lets the camera choose brightness; `manual` uses `level`. */
30378
+ var NavigationLightModeSchema = z.enum(["auto", "manual"]);
30379
+ /** Manual fill-light level bounds (the camera-service accepts 40..100). */
30380
+ var NAVIGATION_LIGHT_LEVEL_MIN = 40;
30381
+ var NAVIGATION_LIGHT_LEVEL_MAX = 100;
30382
+ /** Coarse work mode the robot reports — drives the UI's active-state chips. */
30383
+ var NavigationModeSchema = z.enum([
30384
+ "idle",
30385
+ "cleaning",
30386
+ "spot",
30387
+ "following",
30388
+ "goto",
30389
+ "returning",
30390
+ "paused",
30391
+ "unknown"
30392
+ ]);
30393
+ /**
30394
+ * Live navigation state so the UI can reflect what the robot is doing:
30395
+ * - `mode` — coarse activity (idle / cleaning / following / …).
30396
+ * - `following` — person/pet follow is currently armed.
30397
+ * - `flash` — the on-camera fill light is on.
30398
+ * - `lightMode` — auto vs manual fill-light mode.
30399
+ * - `lightLevel` — manual fill-light level (40..100); meaningful when
30400
+ * `lightMode === 'manual'`.
30401
+ */
30402
+ var NavigationStatusSchema = z.object({
30403
+ mode: NavigationModeSchema,
30404
+ following: z.boolean(),
30405
+ flash: z.boolean(),
30406
+ lightMode: NavigationLightModeSchema,
30407
+ lightLevel: z.number().min(40).max(100),
30408
+ /** Ms epoch when the slice was last updated. */
30409
+ lastChangedAt: z.number()
30410
+ });
30411
+ /**
30412
+ * Runtime-state slice owned by this cap (kernel-managed: validated, mirrored,
30413
+ * observable). Adds `lastFetchedAt` on top of the status shape per the
30414
+ * convention.
30415
+ */
30416
+ var NavigationRuntimeStateSchema = NavigationStatusSchema.extend({ lastFetchedAt: z.number() });
30417
+ var navigationCapability = {
30418
+ name: "navigation",
30419
+ scope: "device",
30420
+ deviceNative: true,
30421
+ mode: "singleton",
30422
+ deviceTypes: [DeviceType.Camera],
30423
+ deviceConfig: { ui: {
30424
+ kind: "widget",
30425
+ widgetId: "host/navigation-panel",
30426
+ tab: "navigation",
30427
+ topTab: true,
30428
+ label: "Navigation",
30429
+ order: 0
30430
+ } },
30431
+ methods: {
30432
+ /**
30433
+ * Momentary drive nudge (the robot moves). `protected` — mirrors
30434
+ * `ptz.continuousMove` so the Viewer navigation panel (and the PTZ-mimic
30435
+ * path) works for any authenticated user, not admin-only. The UI sends
30436
+ * these at ~1 Hz while a control is held; the provider forwards each one to
30437
+ * a single drive write WITHOUT debouncing.
30438
+ */
30439
+ move: method(NavigationMoveCommandSchema.extend({ deviceId: z.number() }), z.void(), { kind: "mutation" }),
30440
+ /** Halt all motion immediately (zero drive vector). */
30441
+ stop: method(z.object({ deviceId: z.number() }), z.void(), { kind: "mutation" }),
30442
+ /** Send the robot to a point on its live map. */
30443
+ goToPoint: method(NavigationPointSchema.extend({ deviceId: z.number() }), z.void(), { kind: "mutation" }),
30444
+ /**
30445
+ * Enumerate the discrete controls THIS device supports (data-driven UI +
30446
+ * PTZ mimic). Camera-probed subset of {@link NAVIGATION_ACTION_CATALOG}.
30447
+ */
30448
+ listActions: method(z.object({ deviceId: z.number() }), z.array(NavigationActionEntrySchema)),
30449
+ /**
30450
+ * Run one discrete action (a `kind:'action'` dictionary entry). Invalid /
30451
+ * unsupported action ids are rejected by the provider.
30452
+ */
30453
+ runAction: method(z.object({
30454
+ deviceId: z.number(),
30455
+ actionId: NavigationActionIdSchema
30456
+ }), z.void(), { kind: "mutation" }),
30457
+ /** Play a sound by its wire id (the `soundId` of a `kind:'sound'` entry). */
30458
+ playSound: method(z.object({
30459
+ deviceId: z.number(),
30460
+ soundId: z.number().int()
30461
+ }), z.void(), { kind: "mutation" }),
30462
+ /**
30463
+ * Turn the on-camera fill light on / off (the `OpenFullLight` control —
30464
+ * works anytime, no active stream required).
30465
+ */
30466
+ setLightOn: method(z.object({
30467
+ deviceId: z.number(),
30468
+ on: z.boolean()
30469
+ }), z.void(), { kind: "mutation" }),
30470
+ /**
30471
+ * Set the fill-light mode (auto vs manual). `manual` optionally carries the
30472
+ * initial `level`. The auto/manual + level control is a CAMERA-service
30473
+ * action that generally needs an active camera stream/monitor session — the
30474
+ * UI shows the manual level slider ONLY when `mode === 'manual'`.
30475
+ */
30476
+ setLightMode: method(z.object({
30477
+ deviceId: z.number(),
30478
+ mode: NavigationLightModeSchema,
30479
+ level: z.number().min(40).max(100).optional()
30480
+ }), z.void(), { kind: "mutation" }),
30481
+ /** Set the MANUAL fill-light level (40..100). Implies `manual` mode. */
30482
+ setLightLevel: method(z.object({
30483
+ deviceId: z.number(),
30484
+ level: z.number().min(40).max(100)
30485
+ }), z.void(), { kind: "mutation" }),
30486
+ /**
30487
+ * Per-device FEATURE-FLAG report for the general primitives — drives which
30488
+ * controls the UI shows (the per-entry flags for the dictionary come back on
30489
+ * `listActions`).
30490
+ */
30491
+ getFeatures: method(z.object({ deviceId: z.number() }), NavigationFeaturesSchema)
30492
+ },
30493
+ events: { onStatusChanged: { data: z.object({
30494
+ deviceId: z.number(),
30495
+ status: NavigationStatusSchema
30496
+ }) } },
30497
+ status: {
30498
+ schema: NavigationStatusSchema,
30499
+ kind: "push"
30500
+ },
30501
+ /**
30502
+ * Runtime-state slice mirrored by the kernel. The navigation panel watches it
30503
+ * for live mode / follow / flash changes.
30504
+ */
30505
+ runtimeState: NavigationRuntimeStateSchema,
30506
+ /**
30507
+ * Runtime-state durability: **session** — like `vacuum-control`, a restored
30508
+ * `mode: cleaning` / `following: true` is a robot that is not actually doing
30509
+ * that. The live handle re-publishes on connect.
30510
+ *
30511
+ * See `RuntimeStateDurability`. Enforced by
30512
+ * `scripts/check-runtime-state-durability.ts`.
30513
+ */
30514
+ durability: "session"
30515
+ };
30516
+ //#endregion
30517
+ //#region src/capabilities/network-link.cap.ts
30518
+ /**
30519
+ * How a device reaches the network, and how well.
30520
+ *
30521
+ * NOT `connectivity`: that cap is an UPSTREAM system's binary view of whether
30522
+ * an entity is reachable (a Home Assistant `binary_sensor` with
30523
+ * `device_class: connectivity`). This one is the device's OWN link — the
30524
+ * medium it is on and the signal it sees — the way `battery` is the device's
30525
+ * own charge.
30526
+ *
30527
+ * `'wifi'`, `'ethernet'` and `'cellular'` are links the firmware actually
30528
+ * reported. `'unknown'` is the ABSENCE of an answer — the provider has
30529
+ * registered the capability but has not read the link yet (D315: unknown is
30530
+ * not empty). Consumers skip it rather than draw a wire or a bar.
30531
+ */
30532
+ var NETWORK_LINK_TYPES = [
30533
+ "wifi",
30534
+ "ethernet",
30535
+ "cellular",
30536
+ "unknown"
30537
+ ];
30538
+ /**
30539
+ * Network-link snapshot. Same shape for every provider (a Reolink wifi
30540
+ * camera, a Home Assistant device with a signal-strength sensor, a Tapo
30541
+ * plug): one slice under `device.runtimeState['network-link']`, one badge,
30542
+ * one Home Assistant projection.
30543
+ */
30544
+ var NetworkLinkStatusSchema = z.object({
30545
+ /** The link the device is on. `'unknown'` = not read yet, not "no link". */
30546
+ type: z.enum(NETWORK_LINK_TYPES),
30547
+ /**
30548
+ * Link quality, 0..100 inclusive, normalised by the provider from whatever
30549
+ * the firmware reports (bars, RSSI, a vendor scale). **`null` means NOT
30550
+ * KNOWN or NOT APPLICABLE** — a wired link has no signal, and a wireless
30551
+ * one whose reading has not landed must not be drawn at 0 %. Consumers
30552
+ * SKIP a null rather than coerce it.
30553
+ */
30554
+ signalPercent: z.number().min(0).max(100).nullable(),
30555
+ /** Raw received signal strength in dBm, when the firmware reports one. */
30556
+ rssiDbm: z.number().optional(),
30557
+ /** Network name of a wireless link, when the firmware reports it. */
30558
+ ssid: z.string().optional(),
30559
+ /** Ms epoch of the last observation. Lets consumers reason about freshness. */
30560
+ lastUpdated: z.number()
30561
+ });
30562
+ /** The slice a provider seeds before its first read: nothing is known yet. */
30563
+ var NETWORK_LINK_UNKNOWN = {
30564
+ type: "unknown",
30565
+ signalPercent: null,
30566
+ lastUpdated: 0
30567
+ };
30568
+ /**
30569
+ * Normalise a signal the firmware reports as BARS (0..`maxBars`) to 0..100.
30570
+ * Out-of-range or non-finite input is not a reading: `null`.
30571
+ */
30572
+ function signalPercentFromBars(bars, maxBars) {
30573
+ if (bars === void 0 || !Number.isFinite(bars) || maxBars <= 0) return null;
30574
+ if (bars < 0 || bars > maxBars) return null;
30575
+ return Math.round(bars / maxBars * 100);
30576
+ }
30577
+ /**
30578
+ * Normalise an RSSI in dBm to 0..100 on the usual wifi scale: -100 dBm and
30579
+ * below is 0 %, -50 dBm and above is 100 %, linear between. Non-finite or
30580
+ * positive input is not an RSSI: `null`.
30581
+ */
30582
+ function signalPercentFromRssi(rssiDbm) {
30583
+ if (rssiDbm === void 0 || !Number.isFinite(rssiDbm) || rssiDbm > 0) return null;
30584
+ return Math.round((Math.min(-50, Math.max(-100, rssiDbm)) + 100) * 2);
30585
+ }
30586
+ var networkLinkCapability = {
30587
+ name: "network-link",
30588
+ scope: "device",
30589
+ deviceNative: true,
30590
+ mode: "singleton",
30591
+ deviceTypes: [
30592
+ DeviceType.Camera,
30593
+ DeviceType.Sensor,
30594
+ DeviceType.Button,
30595
+ DeviceType.Switch,
30596
+ DeviceType.Light,
30597
+ DeviceType.Lock,
30598
+ DeviceType.Siren
30599
+ ],
30600
+ methods: {},
30601
+ events: {
30602
+ /**
30603
+ * Emitted whenever the cached status changes (a link switch, a signal
30604
+ * reading that moved). Mirrored on the parent chain by the
30605
+ * DeviceEventPropagator like `battery.onStatusChanged`.
30606
+ */
30607
+ onStatusChanged: { data: z.object({
30608
+ deviceId: z.number(),
30609
+ status: NetworkLinkStatusSchema
30610
+ }) } },
30611
+ status: {
30612
+ schema: NetworkLinkStatusSchema,
30613
+ kind: "push",
30614
+ empty: NETWORK_LINK_UNKNOWN
30615
+ },
30616
+ /**
30617
+ * Runtime-state slice — every provider stores the same shape under
30618
+ * `device.runtimeState['network-link']`, read once by the badge and the
30619
+ * Home Assistant projector regardless of the driver.
30620
+ */
30621
+ runtimeState: NetworkLinkStatusSchema,
30622
+ /**
30623
+ * Runtime-state durability: **restored** — a link reading is slow to
30624
+ * change and a sleeping battery camera may not report for hours; the
30625
+ * restored slice is what the badge shows until the next read.
30626
+ *
30627
+ * See `RuntimeStateDurability`. Enforced by
30628
+ * `scripts/check-runtime-state-durability.ts`.
30629
+ */
30630
+ durability: "restored",
30631
+ /** Clock fields: written, but excluded from the compare that decides
30632
+ * whether persisting is worth a SQLite commit. */
30633
+ volatileStateFields: ["lastUpdated"]
30634
+ };
30635
+ //#endregion
29899
30636
  //#region src/capabilities/network-quality.cap.ts
29900
30637
  /**
29901
30638
  * network-quality — system-scoped singleton capability tracking RTT,
@@ -31828,431 +32565,6 @@ var ptzAutotrackCapability = {
31828
32565
  durability: "session"
31829
32566
  };
31830
32567
  //#endregion
31831
- //#region src/capabilities/navigation.cap.ts
31832
- /**
31833
- * `navigation` — a device-scoped capability that natively expresses the FULL
31834
- * navigation / action surface of a robot that DRIVES ITSELF and carries an
31835
- * on-board camera (the Dreame robot-vacuum camera is the first provider).
31836
- *
31837
- * Why a NEW cap rather than overloading `ptz`:
31838
- * - `ptz` moves a *gimbal* on a fixed camera (pan/tilt/zoom of the lens). A
31839
- * robot vacuum has no gimbal — the whole chassis drives, turns and spins.
31840
- * The two are different physical models: PTZ is absolute-position + presets,
31841
- * navigation is momentary drive nudges + discrete robot ACTIONS
31842
- * (dock / spot-clean / follow-pet / go-to-point / …).
31843
- * - This cap is the SOURCE OF TRUTH. Two consumers adapt from it rather than
31844
- * the reverse:
31845
- * 1. a native CamStack navigation panel (data-driven from `listActions`
31846
- * / `getOptions`), and
31847
- * 2. the PTZ surface — a thin adapter mimics `ptz` from `navigation` so a
31848
- * robot camera shows up in the existing PTZ control path without every
31849
- * PTZ provider learning about robots. The mapping lives in the adapter,
31850
- * not here (see the addon design note):
31851
- * ptz.continuousMove({pan,tilt}) → navigation.move({pan,tilt})
31852
- * ptz.stop() → navigation.stop()
31853
- * ptz.goHome() → navigation.runAction('goHome')
31854
- * ptz.getPresets() → navigation.listActions() (id→preset)
31855
- * ptz.goToPreset(id) → navigation.runAction(id)
31856
- *
31857
- * ## Continuous drive
31858
- *
31859
- * `move` is MOMENTARY. Fluid navigation comes from the UI (or the PTZ adapter)
31860
- * sending `move({pan,tilt})` REPEATEDLY at ~1 Hz while a direction is held, and
31861
- * one `stop()` on release — exactly like the robot app's remote-drive joystick.
31862
- * The provider forwards EACH `move` to one drive write; it must NOT debounce or
31863
- * coalesce them. The UI owns the cadence.
31864
- *
31865
- * ## The action dictionary
31866
- *
31867
- * The discrete controls (dock / locate / spot-clean / follow / flash / sounds)
31868
- * are a DATA-DRIVEN dictionary the cap exposes via `listActions()`. Each entry
31869
- * carries `{ id, kind, label, icon }` (plus `soundId` for sound entries) so the
31870
- * native panel AND the PTZ mimic render buttons WITHOUT hardcoding a
31871
- * vendor-specific list. `kind: 'action'` entries are triggered with
31872
- * `runAction({ actionId })`; `kind: 'sound'` entries with `playSound({ soundId })`
31873
- * (the entry carries the `soundId` to pass). The general primitives — `move`,
31874
- * `stop`, `goToPoint` — stay as first-class methods, not dictionary entries.
31875
- *
31876
- * NOTE (provider wiring): the first provider (Dreame) drives this with the RAW
31877
- * `callAction(siid,aiid,in)` / `setProperty({siid,piid,value})` MIoT primitives
31878
- * that the currently-published `@apocaliss92/nodedreame` already exposes on
31879
- * every device handle. A future nodedreame publish adds a typed
31880
- * `DreameCameraController` (drive / playPetSound / spotClean / findPet / …); the
31881
- * provider can then swap the raw calls for the typed methods with no change to
31882
- * THIS contract.
31883
- */
31884
- /**
31885
- * A momentary drive nudge. The robot MOVES (no gimbal) for as long as the caller
31886
- * keeps sending nudges (~1 Hz); an explicit `stop` (or letting the nudges lapse)
31887
- * halts it.
31888
- *
31889
- * - `pan` — turn: negative = left, positive = right, 0 = straight.
31890
- * - `tilt` — throttle: positive = forward, negative = spin / turn-around.
31891
- * - `speed` — optional intensity hint [0, 1]; the provider may scale the drive
31892
- * vector by it (drivers without proportional drive ignore it).
31893
- *
31894
- * `pan` / `tilt` are normalized [-1, 1]. Both optional so a caller can nudge one
31895
- * axis alone; an all-undefined nudge is a no-op.
31896
- */
31897
- var NavigationMoveCommandSchema = z.object({
31898
- pan: z.number().min(-1).max(1).optional(),
31899
- tilt: z.number().min(-1).max(1).optional(),
31900
- speed: z.number().min(0).max(1).optional()
31901
- });
31902
- /**
31903
- * The enumerated discrete actions a navigation-capable robot can perform via
31904
- * `runAction`. This is the CLOSED vocabulary; a given device advertises the
31905
- * subset it supports through `listActions`. Sounds are NOT here — they go through
31906
- * `playSound` (see the `sound` dictionary entries).
31907
- */
31908
- var NavigationActionIdSchema = z.enum([
31909
- "goHome",
31910
- "locate",
31911
- "spotClean",
31912
- "findPet",
31913
- "personFollow",
31914
- "stop",
31915
- "startClean",
31916
- "pauseClean",
31917
- "dockWash",
31918
- "autoEmpty",
31919
- "flashOn",
31920
- "flashOff"
31921
- ]);
31922
- /** Whether a dictionary entry is a `runAction` action or a `playSound` sound. */
31923
- var NavigationEntryKindSchema = z.enum(["action", "sound"]);
31924
- /**
31925
- * One entry in the navigation action dictionary — the DATA-DRIVEN unit both the
31926
- * native panel and the PTZ mimic render as a button.
31927
- *
31928
- * - `id` — stable id. For `kind:'action'` it is a {@link NavigationActionId}
31929
- * (pass to `runAction`); for `kind:'sound'` it is a namespaced id
31930
- * (`sound:meow`) whose `soundId` is passed to `playSound`.
31931
- * - `icon` — icon HINT (lucide-style name; the UI maps it to its own set).
31932
- * - `label` — operator-facing English label.
31933
- * - `soundId` — wire sound id, present only on `kind:'sound'` entries.
31934
- * - `enabled` — per-device FEATURE FLAG. `listActions` reports it so the UI /
31935
- * PTZ render ONLY enabled entries. Data-driven: the provider
31936
- * flips it from config, never by editing code.
31937
- */
31938
- var NavigationActionEntrySchema = z.object({
31939
- id: z.string(),
31940
- kind: NavigationEntryKindSchema,
31941
- label: z.string(),
31942
- icon: z.string(),
31943
- /** Present only on `kind:'sound'` entries — the id to pass to `playSound`. */
31944
- soundId: z.number().int().optional(),
31945
- /** Per-device feature flag — render this entry only when true. */
31946
- enabled: z.boolean()
31947
- });
31948
- /**
31949
- * Canonical dictionary of every navigation control (discrete actions + sounds)
31950
- * with its default label + icon hint. A provider filters this to the subset a
31951
- * device supports (and may override a label). Exported so the provider AND the
31952
- * UI share ONE list instead of re-deriving labels / ids independently.
31953
- *
31954
- * Icons are lucide-style hints; the viewer maps them to its own icon set. Every
31955
- * catalog default is `enabled: true`; a provider overrides per-device from
31956
- * config (data-driven — enabling / disabling one later is a config change, not a
31957
- * code change).
31958
- */
31959
- var NAVIGATION_ACTION_CATALOG = [
31960
- {
31961
- id: "startClean",
31962
- kind: "action",
31963
- label: "Start cleaning",
31964
- icon: "play",
31965
- enabled: true
31966
- },
31967
- {
31968
- id: "pauseClean",
31969
- kind: "action",
31970
- label: "Pause cleaning",
31971
- icon: "pause",
31972
- enabled: true
31973
- },
31974
- {
31975
- id: "stop",
31976
- kind: "action",
31977
- label: "Stop",
31978
- icon: "hand",
31979
- enabled: true
31980
- },
31981
- {
31982
- id: "goHome",
31983
- kind: "action",
31984
- label: "Return to dock",
31985
- icon: "home",
31986
- enabled: true
31987
- },
31988
- {
31989
- id: "locate",
31990
- kind: "action",
31991
- label: "Locate",
31992
- icon: "bell",
31993
- enabled: true
31994
- },
31995
- {
31996
- id: "spotClean",
31997
- kind: "action",
31998
- label: "Spot clean here",
31999
- icon: "crosshair",
32000
- enabled: true
32001
- },
32002
- {
32003
- id: "findPet",
32004
- kind: "action",
32005
- label: "Find pet",
32006
- icon: "paw-print",
32007
- enabled: true
32008
- },
32009
- {
32010
- id: "personFollow",
32011
- kind: "action",
32012
- label: "Follow me",
32013
- icon: "footprints",
32014
- enabled: true
32015
- },
32016
- {
32017
- id: "dockWash",
32018
- kind: "action",
32019
- label: "Wash mop",
32020
- icon: "droplets",
32021
- enabled: true
32022
- },
32023
- {
32024
- id: "autoEmpty",
32025
- kind: "action",
32026
- label: "Empty dustbin",
32027
- icon: "trash-2",
32028
- enabled: true
32029
- },
32030
- {
32031
- id: "flashOn",
32032
- kind: "action",
32033
- label: "Flash on",
32034
- icon: "flashlight",
32035
- enabled: true
32036
- },
32037
- {
32038
- id: "flashOff",
32039
- kind: "action",
32040
- label: "Flash off",
32041
- icon: "flashlight-off",
32042
- enabled: true
32043
- },
32044
- {
32045
- id: "sound:meow",
32046
- kind: "sound",
32047
- label: "Meow",
32048
- icon: "cat",
32049
- soundId: 684,
32050
- enabled: true
32051
- },
32052
- {
32053
- id: "sound:bark",
32054
- kind: "sound",
32055
- label: "Woof",
32056
- icon: "dog",
32057
- soundId: 685,
32058
- enabled: true
32059
- },
32060
- {
32061
- id: "sound:footsteps",
32062
- kind: "sound",
32063
- label: "Footsteps",
32064
- icon: "footprints",
32065
- soundId: 686,
32066
- enabled: true
32067
- },
32068
- {
32069
- id: "sound:purring",
32070
- kind: "sound",
32071
- label: "Purring",
32072
- icon: "cat",
32073
- soundId: 687,
32074
- enabled: true
32075
- },
32076
- {
32077
- id: "sound:tickTock",
32078
- kind: "sound",
32079
- label: "Tick-tock",
32080
- icon: "clock",
32081
- soundId: 688,
32082
- enabled: true
32083
- }
32084
- ];
32085
- /** Coordinates for `goToPoint` — a point on the robot's live map. */
32086
- var NavigationPointSchema = z.object({
32087
- x: z.number(),
32088
- y: z.number()
32089
- });
32090
- /**
32091
- * Per-device FEATURE-FLAG report for the general (non-dictionary) primitives.
32092
- * The cap reports which are enabled so the UI / PTZ render only the controls
32093
- * that are turned on for THIS device. Data-driven: the provider derives these
32094
- * from config + probe, never hardcoded in the UI. The per-DICTIONARY-entry flags
32095
- * live on {@link NavigationActionEntrySchema.enabled}; these gate the primitives
32096
- * that are not dictionary entries.
32097
- *
32098
- * - `move` / `stop` — the momentary drive joystick.
32099
- * - `goToPoint` — send-to-map-coordinate. Ships OFF on Dreame until the
32100
- * map-coordinate plumbing is wired.
32101
- * - `runAction` — the discrete action buttons (dictionary `kind:'action'`).
32102
- * - `playSound` — the sound buttons (dictionary `kind:'sound'`).
32103
- * - `light` — the on/off fill-light toggle (works anytime).
32104
- * - `lightMode` — the auto/manual selector + manual level slider (a
32105
- * camera-service control; needs an active stream).
32106
- */
32107
- var NavigationFeaturesSchema = z.object({
32108
- move: z.boolean(),
32109
- stop: z.boolean(),
32110
- goToPoint: z.boolean(),
32111
- runAction: z.boolean(),
32112
- playSound: z.boolean(),
32113
- light: z.boolean(),
32114
- lightMode: z.boolean()
32115
- });
32116
- /** Light mode: `auto` lets the camera choose brightness; `manual` uses `level`. */
32117
- var NavigationLightModeSchema = z.enum(["auto", "manual"]);
32118
- /** Manual fill-light level bounds (the camera-service accepts 40..100). */
32119
- var NAVIGATION_LIGHT_LEVEL_MIN = 40;
32120
- var NAVIGATION_LIGHT_LEVEL_MAX = 100;
32121
- /** Coarse work mode the robot reports — drives the UI's active-state chips. */
32122
- var NavigationModeSchema = z.enum([
32123
- "idle",
32124
- "cleaning",
32125
- "spot",
32126
- "following",
32127
- "goto",
32128
- "returning",
32129
- "paused",
32130
- "unknown"
32131
- ]);
32132
- /**
32133
- * Live navigation state so the UI can reflect what the robot is doing:
32134
- * - `mode` — coarse activity (idle / cleaning / following / …).
32135
- * - `following` — person/pet follow is currently armed.
32136
- * - `flash` — the on-camera fill light is on.
32137
- * - `lightMode` — auto vs manual fill-light mode.
32138
- * - `lightLevel` — manual fill-light level (40..100); meaningful when
32139
- * `lightMode === 'manual'`.
32140
- */
32141
- var NavigationStatusSchema = z.object({
32142
- mode: NavigationModeSchema,
32143
- following: z.boolean(),
32144
- flash: z.boolean(),
32145
- lightMode: NavigationLightModeSchema,
32146
- lightLevel: z.number().min(40).max(100),
32147
- /** Ms epoch when the slice was last updated. */
32148
- lastChangedAt: z.number()
32149
- });
32150
- /**
32151
- * Runtime-state slice owned by this cap (kernel-managed: validated, mirrored,
32152
- * observable). Adds `lastFetchedAt` on top of the status shape per the
32153
- * convention.
32154
- */
32155
- var NavigationRuntimeStateSchema = NavigationStatusSchema.extend({ lastFetchedAt: z.number() });
32156
- var navigationCapability = {
32157
- name: "navigation",
32158
- scope: "device",
32159
- deviceNative: true,
32160
- mode: "singleton",
32161
- deviceTypes: [DeviceType.Camera],
32162
- deviceConfig: { ui: {
32163
- kind: "widget",
32164
- widgetId: "host/navigation-panel",
32165
- tab: "navigation",
32166
- topTab: true,
32167
- label: "Navigation",
32168
- order: 0
32169
- } },
32170
- methods: {
32171
- /**
32172
- * Momentary drive nudge (the robot moves). `protected` — mirrors
32173
- * `ptz.continuousMove` so the Viewer navigation panel (and the PTZ-mimic
32174
- * path) works for any authenticated user, not admin-only. The UI sends
32175
- * these at ~1 Hz while a control is held; the provider forwards each one to
32176
- * a single drive write WITHOUT debouncing.
32177
- */
32178
- move: method(NavigationMoveCommandSchema.extend({ deviceId: z.number() }), z.void(), { kind: "mutation" }),
32179
- /** Halt all motion immediately (zero drive vector). */
32180
- stop: method(z.object({ deviceId: z.number() }), z.void(), { kind: "mutation" }),
32181
- /** Send the robot to a point on its live map. */
32182
- goToPoint: method(NavigationPointSchema.extend({ deviceId: z.number() }), z.void(), { kind: "mutation" }),
32183
- /**
32184
- * Enumerate the discrete controls THIS device supports (data-driven UI +
32185
- * PTZ mimic). Camera-probed subset of {@link NAVIGATION_ACTION_CATALOG}.
32186
- */
32187
- listActions: method(z.object({ deviceId: z.number() }), z.array(NavigationActionEntrySchema)),
32188
- /**
32189
- * Run one discrete action (a `kind:'action'` dictionary entry). Invalid /
32190
- * unsupported action ids are rejected by the provider.
32191
- */
32192
- runAction: method(z.object({
32193
- deviceId: z.number(),
32194
- actionId: NavigationActionIdSchema
32195
- }), z.void(), { kind: "mutation" }),
32196
- /** Play a sound by its wire id (the `soundId` of a `kind:'sound'` entry). */
32197
- playSound: method(z.object({
32198
- deviceId: z.number(),
32199
- soundId: z.number().int()
32200
- }), z.void(), { kind: "mutation" }),
32201
- /**
32202
- * Turn the on-camera fill light on / off (the `OpenFullLight` control —
32203
- * works anytime, no active stream required).
32204
- */
32205
- setLightOn: method(z.object({
32206
- deviceId: z.number(),
32207
- on: z.boolean()
32208
- }), z.void(), { kind: "mutation" }),
32209
- /**
32210
- * Set the fill-light mode (auto vs manual). `manual` optionally carries the
32211
- * initial `level`. The auto/manual + level control is a CAMERA-service
32212
- * action that generally needs an active camera stream/monitor session — the
32213
- * UI shows the manual level slider ONLY when `mode === 'manual'`.
32214
- */
32215
- setLightMode: method(z.object({
32216
- deviceId: z.number(),
32217
- mode: NavigationLightModeSchema,
32218
- level: z.number().min(40).max(100).optional()
32219
- }), z.void(), { kind: "mutation" }),
32220
- /** Set the MANUAL fill-light level (40..100). Implies `manual` mode. */
32221
- setLightLevel: method(z.object({
32222
- deviceId: z.number(),
32223
- level: z.number().min(40).max(100)
32224
- }), z.void(), { kind: "mutation" }),
32225
- /**
32226
- * Per-device FEATURE-FLAG report for the general primitives — drives which
32227
- * controls the UI shows (the per-entry flags for the dictionary come back on
32228
- * `listActions`).
32229
- */
32230
- getFeatures: method(z.object({ deviceId: z.number() }), NavigationFeaturesSchema)
32231
- },
32232
- events: { onStatusChanged: { data: z.object({
32233
- deviceId: z.number(),
32234
- status: NavigationStatusSchema
32235
- }) } },
32236
- status: {
32237
- schema: NavigationStatusSchema,
32238
- kind: "push"
32239
- },
32240
- /**
32241
- * Runtime-state slice mirrored by the kernel. The navigation panel watches it
32242
- * for live mode / follow / flash changes.
32243
- */
32244
- runtimeState: NavigationRuntimeStateSchema,
32245
- /**
32246
- * Runtime-state durability: **session** — like `vacuum-control`, a restored
32247
- * `mode: cleaning` / `following: true` is a robot that is not actually doing
32248
- * that. The live handle re-publishes on connect.
32249
- *
32250
- * See `RuntimeStateDurability`. Enforced by
32251
- * `scripts/check-runtime-state-durability.ts`.
32252
- */
32253
- durability: "session"
32254
- };
32255
- //#endregion
32256
32568
  //#region src/capabilities/reboot.cap.ts
32257
32569
  /**
32258
32570
  * reboot — device-scoped capability for "soft" device reboots (firmware
@@ -39906,6 +40218,7 @@ var CAPABILITY_NAMES = {
39906
40218
  storage: "storage",
39907
40219
  storageEvictable: "storage-evictable",
39908
40220
  storageMigration: "storage-migration",
40221
+ storageOccupancy: "storage-occupancy",
39909
40222
  storageProvider: "storage-provider",
39910
40223
  streamBroker: "stream-broker",
39911
40224
  streamCatalog: "stream-catalog",
@@ -40451,6 +40764,10 @@ var CAPABILITY_ROUTER_KEYS = [
40451
40764
  key: "storageMigration",
40452
40765
  name: "storage-migration"
40453
40766
  },
40767
+ {
40768
+ key: "storageOccupancy",
40769
+ name: "storage-occupancy"
40770
+ },
40454
40771
  {
40455
40772
  key: "storageProvider",
40456
40773
  name: "storage-provider"
@@ -40695,6 +41012,7 @@ var ALL_CAPABILITY_DEFINITIONS = [
40695
41012
  storageCapability,
40696
41013
  storageEvictableCapability,
40697
41014
  storageMigrationCapability,
41015
+ storageOccupancyCapability,
40698
41016
  storageProviderCapability,
40699
41017
  streamBrokerCapability,
40700
41018
  streamCatalogCapability,
@@ -45669,6 +45987,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
45669
45987
  addonId: null,
45670
45988
  access: "view"
45671
45989
  },
45990
+ "storage.listDrainProgress": {
45991
+ capName: "storage",
45992
+ capScope: "system",
45993
+ addonId: null,
45994
+ access: "view"
45995
+ },
45672
45996
  "storage.listLocationDeclarations": {
45673
45997
  capName: "storage",
45674
45998
  capScope: "system",
@@ -45813,6 +46137,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
45813
46137
  addonId: null,
45814
46138
  access: "view"
45815
46139
  },
46140
+ "storageOccupancy.getOccupancy": {
46141
+ capName: "storage-occupancy",
46142
+ capScope: "system",
46143
+ addonId: null,
46144
+ access: "view"
46145
+ },
45816
46146
  "storageProvider.abortUpload": {
45817
46147
  capName: "storage-provider",
45818
46148
  capScope: "system",
@@ -46948,6 +47278,7 @@ var KNOWN_CAP_NAMES = [
46948
47278
  "storage",
46949
47279
  "storage-evictable",
46950
47280
  "storage-migration",
47281
+ "storage-occupancy",
46951
47282
  "storage-provider",
46952
47283
  "stream-broker",
46953
47284
  "stream-catalog",
@@ -47094,6 +47425,7 @@ var SYSTEM_CAP_NAMES = [
47094
47425
  "storage",
47095
47426
  "storage-evictable",
47096
47427
  "storage-migration",
47428
+ "storage-occupancy",
47097
47429
  "storage-provider",
47098
47430
  "stream-broker",
47099
47431
  "system",
@@ -50093,6 +50425,7 @@ function createSystemProxy(api) {
50093
50425
  listLocationDeclarations: (input) => dispatch("storage", "listLocationDeclarations", "query", input),
50094
50426
  upsertLocation: (input) => dispatch("storage", "upsertLocation", "mutation", input),
50095
50427
  deleteLocation: (input) => dispatch("storage", "deleteLocation", "mutation", input),
50428
+ listDrainProgress: (input) => dispatch("storage", "listDrainProgress", "query", input),
50096
50429
  testLocation: (input) => dispatch("storage", "testLocation", "query", input),
50097
50430
  listProviders: (input) => dispatch("storage", "listProviders", "query", input),
50098
50431
  testConfig: (input) => dispatch("storage", "testConfig", "query", input)
@@ -54146,4 +54479,4 @@ function enumerateInferenceDevices(hw) {
54146
54479
  return out;
54147
54480
  }
54148
54481
  //#endregion
54149
- 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, BackupRunPhaseSchema, BackupRunSchema, BackupRunStateSchema, BackupTriggerResultSchema, 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, BulkRecordSchema, 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, CLASS_MAP_MACRO_TARGETS, CLUSTER_MODEL_SCOPED_STEPS, CLUSTER_MODEL_SECTION_ID, CLUSTER_STEP_SETTING_FIELDS, COCO_80_LABELS, COCO_TO_MACRO, CONNECTION_TEST_TIMEOUT_MS, CONTAINER_CHILD_PRIORITY, 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, CameraOccupancySnapshotForDeviceSchema, 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_CLUSTER_STEP_MODELS, DEFAULT_CLUSTER_STEP_SETTINGS, DEFAULT_DECODER_HWACCEL_CONFIG, DEFAULT_DETAIL_CROP_CONVENTION, DEFAULT_EVENTS_BAND_BUFFER_SEC, DEFAULT_EVENT_COLOR, DEFAULT_FEATURES, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS, DEFAULT_MIN_LANDMARK_FACE_SIZE_PX, DEFAULT_NATIVE_LEASE_SETTINGS, DEFAULT_POOL_MEMORY_POLICY, DEFAULT_RECORDING_PROFILES, DEFAULT_RETENTION, DEFAULT_RUNTIME_STATE_DURABILITY, DEFAULT_TIMELAPSE_PREVIEW_TEXT, DEFAULT_TOKEN_EXPIRY, 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_CHILDREN_BATCH_MAX, DEVICE_PROFILES, DEVICE_RESTORE_RETRY_CONCURRENCY, DEVICE_RESTORE_RETRY_DELAYS_MS, 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, DetectionCatalogClassMapSchema, DetectionSourceSchema, DeviceCodeSeveritySchema, DeviceConfig, DeviceDiscoveryStatusSchema, ExposeInputSchema as DeviceExportExposeInputSchema, DeviceExportStatusSchema, UnexposeInputSchema as DeviceExportUnexposeInputSchema, DeviceFeature, DeviceInfoSchema, DeviceNetworkStatsSchema, DeviceRestoreRetryScheduler, DeviceRole, DeviceRuntimeState, DeviceSelectorSchema, DeviceStatusSchema, DeviceType, DiagnosticIdSchema, DiagnosticWindowPatchSchema, DiagnosticWindowSchema, DiscoveredChildDeviceSchema, DiscoveredChildStatusSchema, DiscoveredDeviceSchema, DiscoveredTargetSchema, DiskReconcileJobSchema, DisposerChain, DoorbellPressEventSchema, DoorbellStatusSchema, EVENTFUL_CAP_NAMES, EVENT_DENSITY_BATCH_MAX, 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, EventDensityBucketSchema, EventDensityForDeviceSchema, 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, FIRST_LEVEL_MACRO_CLASSES, FULL_IMAGE_BBOX, FailureContributionSchema, FailureCounters, FailureReasonCountSchema, FanControlStatusSchema, FanDirectionSchema, FeatureManifestSchema, FeatureProbeStatusSchema, FloodStatusSchema, Fmp4BoxSplitter, FrameHandleFormatSchema, FrameHandleSchema, FrameInputSchema, FrameLazyCountersSchema, FrameLazyMetricsSchema, GasStatusSchema, GetLoggingSettingsInputSchema, 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, INFERENCE_DEVICE_EXCLUSION_REASONS, ImageContractSchema, ImageContractStateSchema, ImageRotateSchema, ImageSettingsOptionsSchema, ImageSettingsPatchSchema, ImageSettingsStatusSchema, ImageStatusSchema, InferenceDeviceExclusionReasonSchema, IngestOwnerSchema, InstalledPackageSchema, IntegrationLiteSchema, IntegrationWithStateSchema, IntercomAbilitySchema, IntercomStatusSchema, KNOWN_CAP_NAMES, KeyEventSchema, LOAD_CONTRIBUTION_ATTRIBUTIONS, LOAD_CONTRIBUTION_ROLES, LOG_CHANNEL_TICK_MS, LOG_LEVEL_RANK, LabelAttributionSchema, LabelDefinitionSchema, LabelTierSchema, LawnMowerActivitySchema, LawnMowerControlStatusSchema, LedgerWalkDeviceReportSchema, LedgerWalkInputSchema, LedgerWalkRefusalSchema, LedgerWalkReportSchema, LedgerWalkSkipCountsSchema, LedgerWalkSkipReasonSchema, LegacyStorageLocationDefaultSchema, LinkedDeviceSchema, LinkedDevicesModeSchema, LlmDefaultSchema, LlmDefaultSelectorSchema, LlmDownloadProgressSchema, LlmErrorCodeSchema, LlmGenerateBaseInputSchema, LlmGenerateErrSchema, LlmGenerateOkSchema, LlmGenerateResultSchema, LlmImageSchema, LlmNodeModelSchema, LlmProfileKindDescriptorSchema, LlmProfileKindSchema, LlmProfileSchema, LlmRetryPolicySchema, LlmRuntimeCompleteInputSchema, LlmRuntimeDiskUsageSchema, LlmRuntimeNodeSchema, LlmRuntimeStatusSchema, LlmTimeoutDefaults, LlmUsageRollupSchema, LlmUsageSchema, LoadContributionSchema, LocateSegmentResultSchema, LocationStatSchema, LockControlStatusSchema, LockStateSchema, LogChannelApplyResultSchema, LogChannelDescriptorSchema, LogChannelGate, LogChannelLevelSchema, LogChannelRegistry, LogChannelWindowPatchSchema, LogChannelWindowSchema, LogChannelWindowStateSchema, LogEntrySchema, LogLevelSchema, LogStreamEntrySchema, LoggingEffectiveSchema, LoggingExplicitSchema, LoggingLevelLayerSchema, LoggingLevelSourceSchema, LoggingScopeKindSchema, LoggingSettingsPatchSchema, LoggingSettingsStateSchema, LoginMethodContributionSchema, LoginStageEnum, MACRO_LABELS, MAX_CLIP_EVENT_IDS, MAX_CLIP_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, MAX_KEYS, MAX_REASONS_PER_KEY, MAX_SENSOR_TRIGGER_DEVICES, MAX_TRACK_DEBUG_NOTE_LEN, METHOD_ACCESS_MAP, METHOD_DEVICE_SELECTORS, MODEL_FORMATS, MODEL_PROVIDER_IDS, MOTION_TRIGGER_FEATURE, ManagedModelCatalogEntrySchema, ManagedModelExtraFileSchema, ManagedModelRefSchema, ManagedRuntimeConfigSchema, MaskGridDimsSchema, MaskGridShapeSchema, MaskLineShapeSchema, MaskPointSchema, MaskPolygonShapeSchema, MaskPolygonVerticesSchema, MaskRectShapeSchema, MaskShapeKindSchema, MaskShapeSchema, MediaFileInfoSchema, MediaFileKindEnum, MediaFileRefSchema, MediaFileSchema, MediaPlayerRepeatSchema, MediaPlayerStateSchema, MediaPlayerStatusSchema, MediaRelocateModeSchema, MeshPeerSchema, MeshStatusSchema, MethodAccessSchema, MigrateDeviceResultSchema, MigrateSwitchOutcomeSchema, MigrateSwitchReportSchema, ModelCatalogEntrySchema, ModelConvertInputSchema, ModelConvertMetadataSchema, ModelDistributeInputSchema, ModelDistributeResultSchema, ModelExtraFileSchema, ModelFormatEntrySchema, ModelFormatsSchema, ModelProviderIdSchema, 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_SCENE_BUDGET_FIELD, NATIVE_LEASE_SCENE_BUDGET_KEY, NATIVE_LEASE_SECTION_ID, NATIVE_LEASE_TILE_BUDGET_FIELD, NATIVE_LEASE_TILE_BUDGET_KEY, NAVIGATION_ACTION_CATALOG, NAVIGATION_LIGHT_LEVEL_MAX, NAVIGATION_LIGHT_LEVEL_MIN, NC_ALARM_SYSTEM_EVENT_KINDS, NC_AUDIO_CONFIRM_HITS_DEFAULT, NC_AUDIO_CONFIRM_HITS_MAX, NC_AUDIO_CONFIRM_HITS_MIN, NC_AUDIO_CONFIRM_WINDOW_MAX_SEC, NC_AUDIO_CONFIRM_WINDOW_MIN_SEC, NC_AUDIO_CONFIRM_WINDOW_SEC_DEFAULT, 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_AUDIO_SEED, 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_OCCUPANCY_DEFAULTS, NC_RULE_EDITOR_SECTION_ORDER, NC_RULE_KIND_SPECS, NC_RULE_SECTIONS, NC_SNOOZE_MAX_MINUTES, NC_SYSTEM_DELIVERY, NC_SYSTEM_EVENT_FILTER_KEYS, NC_TAXONOMY, NETWORK_LINK_TYPES, NETWORK_LINK_UNKNOWN, NativeCropBboxSchema, NativeCropRefSchema, NativeCropResultSchema, NativeDetectionSchema, NativeLeaseAdmissionSchema, NativeLeaseSettingsSchema, NativeObjectClassEnum, NativeObjectDetectionRuntimeStateSchema, NativeObjectDetectionStatusSchema, NavigationActionEntrySchema, NavigationActionIdSchema, NavigationEntryKindSchema, NavigationFeaturesSchema, NavigationLightModeSchema, NavigationModeSchema, NavigationMoveCommandSchema, NavigationPointSchema, NavigationRuntimeStateSchema, NavigationStatusSchema, 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, NetworkLinkStatusSchema, NotificationActionIconSchema, NotificationActionSchema, NotificationFormatSchema, NotificationSchema, NotifierStatusSchema, NumericSensorStatusSchema, OPERATOR_WRITTEN_STALE_MS, OPS_LOG_DEFAULT_LIMIT, OPS_LOG_RING_DEFAULT_MAX, OVERFLOW_REASON, 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, PoolMemoryWatchdog, 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, RECORDING_TIMELINE_BATCH_MAX, REDACTED_SECRET, RESERVED_BINDING_NAMES, RESTORED_CAP_NAMES, ROOT_BUCKET_KEY, RUNTIME_DEFAULTS, RUNTIME_STATE_POLICY, RUNTIME_STATE_REFRESH_MISS_COOLDOWN_MS, RUNTIME_TO_FORMAT, RawStateResultSchema, ReadGopBytesResultSchema, ReadSegmentBytesResultSchema, ReadWindowBytesResultSchema, ReadinessRegistry, ReadinessTimeoutError, RecentTracksPageSchema, RecentTracksQueryInput, RecordingAvailabilityForDeviceSchema, RecordingAvailabilitySchema, RecordingBandModeSchema, RecordingBandSchema, RecordingBandTriggersSchema, RecordingConfigSchema, RecordingDaysForDeviceSchema, RecordingDaysSchema, RecordingDeviceUsageSchema, RecordingLocationUsageSchema, RecordingManifestSchema, RecordingObjectTriggerClassSchema, RecordingRangeSchema, RecordingRebalanceInputSchema, RecordingRebalanceMoveSchema, RecordingRebalancePlanSchema, RecordingRebalanceSkipReasonSchema, RecordingRebalanceSkipSchema, RecordingRetentionSchema, RecordingSignalRuntimeStateSchema, RecordingSignalStatusSchema, RecordingStatusSchema, RecordingStorageModeSchema, RecordingStorageUsageSchema, RecordingTriggersSchema, RecordingWeekdaySchema, RedirectLoginMethodSchema, RelocatableMediaCountInputSchema, RelocatableMediaCountSchema, RelocateFootageClassSchema, RelocateFootageInputSchema, RelocateJobSchema, RelocateJobStateSchema, RelocateMediaInputSchema, RelocateResidueInputSchema, RelocateResidueSchema, RenderedAsSchema, ReportMotionInputSchema, ReportedFailureContributionSchema, ReportedLoadContributionSchema, RequestCensusGroupSchema, RequestCensusProcedureSchema, RequestCensusSnapshotSchema, RequestCensusStatusSchema, 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, SENSOR_FEATURES, SENSOR_MAP, SHARE_VIEW_KINDS, SOURCE_CAPS, SOURCE_CAP_ACTIVE_FIELD, SOURCE_CAP_CHANGED_AT_FIELD, SOURCE_DEVICE_TYPES, SOURCE_INFO_METADATA_KEY, STORAGE_ACCESS_FALLBACK, STREAM_PROFILE_META, STREAM_QUALITY_LABELS, SUB_DETECTION_TYPES, SUMMARIES_DEFAULT_LIMIT, SUMMARIES_MAX_LIMIT, SYSTEM_CAP_NAMES, SYSTEM_SCOPE_DEVICE_METHODS, SceneCheckSchema, SceneConditionSchema, SceneConfirmSchema, SceneMonitorSchema, SceneMonitorStateSchema, SceneMonitorStatusForDeviceSchema, SceneMonitorStatusSchema, SceneReferenceSchema, SceneUnavailableSchema, SceneUncoveredPolicySchema, SceneVerdictSchema, ScopedTokenSchema, ScopedTokenSummarySchema, ScoredObjectEventSchema, ScriptRunnerStatusSchema, SearchResultSchema, SendEmailInputSchema, SendEmailResultSchema, SendResultSchema, SensorEventSchema, ServerBootModeSchema, ServerPackageStatusSchema, ServerRollbackInfoSchema, ServerUpdateActionResultSchema, ServerUpdateCheckResultSchema, ServerUpdateStateSchema, SetLoggingSettingsInputSchema, SetSiteLocationInputSchema, SettingsPatchSchema, SettingsRecordSchema, SettingsSchemaWithValuesSchema, SettingsUpdateResultSchema, ShmRingStatsSchema, SiteLocationSchema, SiteLocationSourceSchema, SiteLocationStatusSchema, SmokeStatusSchema, SmtpStatusSchema, SnapshotImageSchema, SourceInfoSchema, SpatialDetectionSchema, SsoBridgeClaimsSchema, StartEmbeddedInputSchema, StationaryObjectSchema, AbortUploadInputSchema as StorageAbortUploadInputSchema, StorageAccessSchema, BeginDownloadInputSchema as StorageBeginDownloadInputSchema, BeginDownloadResultSchema as StorageBeginDownloadResultSchema, BeginUploadInputSchema as StorageBeginUploadInputSchema, BeginUploadResultSchema as StorageBeginUploadResultSchema, StorageCleanupInputSchema, StorageCleanupJobSchema, StorageCleanupPhaseSchema, StorageCleanupStatusInputSchema, EndDownloadInputSchema as StorageEndDownloadInputSchema, FinalizeUploadInputSchema as StorageFinalizeUploadInputSchema, StorageLocationDeclarationSchema, StorageLocationRefSchema, StorageLocationSchema, StorageLocationTypeSchema, StorageMigrationClassSchema, StorageMigrationDestinationsSchema, StorageMigrationDrainInputSchema, StorageMigrationFindingCodeSchema, StorageMigrationFindingSchema, StorageMigrationFootageMoveInputSchema, StorageMigrationInputSchema, StorageMigrationJobSchema, StorageMigrationLaneSchema, StorageMigrationLeaseInputSchema, StorageMigrationMediaMoveInputSchema, StorageMigrationModeSchema, StorageMigrationMoveProgressSchema, StorageMigrationMoveSchema, StorageMigrationMoverSchema, StorageMigrationParticipantSchema, StorageMigrationPhaseSchema, StorageMigrationPlanSchema, StorageMigrationResidueSchema, StorageMigrationSourcesSchema, 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, SummarySchema, 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, TransportPlaneCountsSchema, TransportPlaneSchema, TurnServerSchema, UNATTRIBUTED_BUCKET_KEY, UNIT_TABLE, BrokerInfoSchema$1 as UnifiedBrokerInfoSchema, UnitConversionError, UnstampedEventMediaCountSchema, UnstampedRowsSchema, UpdateIntegrationInputSchema, UpdateStatusSchema, UpdateUserInputSchema, UserRecordSchema, UserSummarySchema, VISIT_MERGE_GAP_MS, 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, __resetLogChannelRegistryForTests, accessoriesCapability, accessoryStableId, addonPagesCapability, addonPagesSourceCapability, addonRoutesCapability, addonSettingsCapability, addonWidgetsCapability, addonWidgetsSourceCapability, addonsCapability, adminUiCapability, airQualitySensorCapability, alarmPanelCapability, alertsCapability, ambientLightSensorCapability, asBoolean, asJsonArray, asJsonObject, asNumber, asString, assertTimelapseCadences, audioAnalysisCapability, audioAnalyzerCapability, audioCodecCapability, audioIsFailClosed, audioKindId, 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, clusterModelSettingKey, clusterStepSettingFieldsFor, clusterStepSettingKey, collectHydratedFieldEntries, collectHydratedFieldValues, collectSecretConfigKeys, colorCapability, colorForKind, commitWatchdogRestart, compileExpression, compileExpressionSafe, composeSwitchedOff, conditionDepth, conditionExclusionReason, conditionVisibleForKind, connectionTestCapability, connectivityCapability, consumablesCapability, contactCapability, controlCapability, convertUnit, coreBlockAddonId, coreBlockIdFromAddonId, coreBlocksCapability, cosineSimilarity, countConditionLeaves, coverCapability, createDeviceProxy, createDurableState, createEvent, createEventBusSliceSource, createExpressionScope, createHwAccelCache, createLazyTrpcSource, createLogChannelsProvider, createMirrorSource, createRuntimeStateBridge, createSliceHandle, createSystemProxy, customAction, customModelRegistryCapability, dataStoreProviderCapability, dayNightCapability, declarationOwnerNodeId, declareLogChannel, decodeVectorBase64, decoderCapability, defaultDeliveryForSection, defaultDeviceFor, defineCustomActions, deriveBatteryPresence, deriveCameraSwitches, deriveDetailCropRect, deriveRecordingMode, describeModelVariant, detectAccessRole, detectionPipelineCapability, deviceAdoptionCapability, deviceBackendToFormat, deviceCustomAction, deviceDiscoveryCapability, deviceExportCapability, deviceManagerCapability, deviceMatchesProfile, deviceOpsCapability, deviceProviderCapability, deviceSelectorMatches, deviceStateCapability, deviceStatusCapability, doorbellCapability, droppedConditionsForKind, egressTranscodeSharingKey, egressTransportFromRequest, embeddingEncoderCapability, emitDownForOwnedCaps, emitReadiness, encodeProfileFromStreamShape, encodeVectorBase64, enumSensorCapability, enumerateInferenceDevices, enumerateItemArrayFields, enumerateSchemaFields, errMsg, evaluateAst, evaluateExpressionSource, evaluatePoolMemory, evaluateSensorEdge, evaluateZoneRules, event, eventEmitterCapability, eventsCapability, expandCapMethods, extractNestedAddonId, extractSourceInfoFromMetadata, faceGalleryCapability, failureContributionCapability, failureRate, fanControlCapability, featureProbeCapability, filesystemBrowseCapability, findTimezone, floodCapability, foldSnapshotByFunction, formatForBackend, formatForRuntime, gasCapability, generateAutomationBlock, getAudioMacroClassIds, getByPath, getCapsByProviderKind, getLogChannelRegistry, getTaxonomyEntry, hasMotionTrigger, hfModelUrl, htmlToText, humidifierCapability, humiditySensorCapability, hydrateSchema, imageCapability, imageSettingsCapability, inferModelProvider, initialPoolMemoryState, integrationsCapability, intercomCapability, invocationFromEncodeProfile, isAgentOnlyPlacement, isArrayOutputSchema, isAudioLabelSelected, isAudioRule, isBaseConditionKey, isBatteryPresenceFault, isClusterScopedStep, isCollectionArrayMethod, isDeployableToAgent, isDetectionMacroClass, isDeviceConfigCap, isDeviceScopedCap, isEvent, isFirstLevelMacroClass, isIsolatedBuiltin, isLocationEnabled, isNode, isObjectInput, isOccupancyRule, isRestoredCap, isSameAddonId, isScheduleActive, isSecretConfigField, isSoftwareDecode, isSourceCap, isSystemDelivery, isVoidInput, jobKindSchema, kebabToCamel, knownValues, lawnMowerControlCapability, lifecycleJobSchema, lifecycleJobScopeSchema, lifecycleJobStateSchema, lifecycleTaskSchema, llmCapability, llmRuntimeCapability, loadContributionCapability, localNetworkCapability, locationSimilarity, lockControlCapability, logBannerArgs, logChannelsCapability, logDestinationCapability, logLevelAtMost, loginMethodCapability, looseSchema, makeProfileBrokerId, makeSourceBrokerId, mapAudioLabelToMacro, markdownToHtmlLite, markdownToText, maskUrlCredentials, mediaPlayerCapability, mergeSourceInfo, meshNetworkCapability, method, methodAccessForHttpMethod, metricsProviderCapability, migrateLegacyDeviceSignalConfig, modelConvertCapability, modelDistributorCapability, modelFormatForRuntime, motionCapability, motionDetectionCapability, motionTriggerCapability, motionZonesCapability, mqttBrokerCapability, nativeObjectDetectionCapability, navigationCapability, networkAccessCapability, networkLinkCapability, networkQualityCapability, nodePin, nodesCapability, normalizeAddonInitResult, normalizeAudioLabel, normalizeTokenScopes, normalizeUnit, notificationOutputCapability, notificationRulesCapability, notifierCapability, numericSensorCapability, oauthIntegrationCapability, objectInputDeclaresAddonId, osdCapability, osdManagerCapability, overlayClusterStepSettings, parseCameraStreamConfig, parseExpression, parseJsonArray, parseJsonObject, parseJsonUnknown, parseProcStatus, parseProfileBrokerId, parseRuleSection, parseStreamParamsFormPatch, patchAudio, petFeederCapability, pickAccessoryControl, pickClusterStepModels, pickClusterStepSettings, pickDetailCropConvention, pickNativeLeaseOverride, pickPreferredRtspEntry, pickRestartCandidate, pickVideoEncoder, pickerForCondition, pipelineAnalyticsCapability, pipelineExecutorCapability, pipelineOrchestratorCapability, pipelineRunnerCapability, plateGalleryCapability, platformProbeCapability, poolMemoryThreshold, powerMeterCapability, prepareNotification, presenceCapability, pressureSensorCapability, principalMayReachAddon, privacyMaskCapability, procedureAuthKey, ptzAutotrackCapability, ptzCapability, pythonScriptForBackend, readClusterStepModels, readClusterStepSettings, readDetailCropConvention, readDeviceStateFrom, readNativeLeaseOverride, readNodePin, readTimelapseGeneratedAt, readinessKey, rebootCapability, recordingCapability, recordingExportCapability, recordingSignalCapability, rectsToCells, reducePoints, requiresPython, resetPoolBaseline, resolveAddonExecution, resolveAddonGroup, resolveAddonPlacement, resolveAddonRuntime, resolveBucketMs, resolveCapMount, resolveClusterStepModelId, resolveContainerPrimaryChild, resolveDetectionRuntime, resolveDeviceControlKind, resolveDeviceProfile, resolveEgressDecodeHwAccel, resolveFormat, resolveHydratedFieldValue, resolveMethodAuth, resolveModelFormat, resolveMutate, resolvePoolMemoryPolicy, resolveRecordingProfiles, resolveRunnerId, resolveVariantModelId, resolveViewableDeviceIds, roleSpec, ruleEditorSectionsForKind, ruleKindOf, ruleKindSpec, ruleMatchesSection, ruleSection, ruleSectionOf, ruleSeedForSection, runInferenceStep, runtimeDevices, runtimeStatePolicyFor, sceneMonitorCapability, schemaDeclaresAnyField, scopeInherits, scopeKey, scopesAllowAddon, scopesAllowDeviceCap, scoreRuntimes, scriptRunnerCapability, selectAssignedProfileSlots, serverManagementCapability, setByPath, settingsStoreCapability, signalPercentFromBars, signalPercentFromRssi, sleep, sleepCancellable, sliceActiveValue, sliceChangedAt, smokeCapability, smtpProviderCapability, snapshotCapability, ssoBridgeCapability, startReachabilityPoll, stateVocabularyFor, storageCapability, storageEvictableCapability, storageMigrationCapability, storageProviderCapability, streamBrokerCapability, streamCatalogCapability, streamParamsCapability, streamPixels, streamQualityLabel, stripRetiredBandPreBufferSec, subKindsOf, summarisePrivacyAudio, summarizeEffectiveScope, supportedRuntimes, switchCapability, switchedOffIds, synthesizeSourceInfo, systemCapability, systemEventFilterApplies, systemEventFilterAppliesToAnyKind, 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 };
54482
+ 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, BackupRunPhaseSchema, BackupRunSchema, BackupRunStateSchema, BackupTriggerResultSchema, 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, BulkRecordSchema, 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, CLASS_MAP_MACRO_TARGETS, CLUSTER_MODEL_SCOPED_STEPS, CLUSTER_MODEL_SECTION_ID, CLUSTER_STEP_SETTING_FIELDS, COCO_80_LABELS, COCO_TO_MACRO, CONNECTION_TEST_TIMEOUT_MS, CONTAINER_CHILD_PRIORITY, 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, CameraOccupancySnapshotForDeviceSchema, 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_CLUSTER_STEP_MODELS, DEFAULT_CLUSTER_STEP_SETTINGS, DEFAULT_DECODER_HWACCEL_CONFIG, DEFAULT_DETAIL_CROP_CONVENTION, DEFAULT_EVENTS_BAND_BUFFER_SEC, DEFAULT_EVENT_COLOR, DEFAULT_FEATURES, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS, DEFAULT_MIN_LANDMARK_FACE_SIZE_PX, DEFAULT_NATIVE_LEASE_SETTINGS, DEFAULT_POOL_MEMORY_POLICY, DEFAULT_RECORDING_PROFILES, DEFAULT_RETENTION, DEFAULT_RUNTIME_STATE_DURABILITY, DEFAULT_TIMELAPSE_PREVIEW_TEXT, DEFAULT_TOKEN_EXPIRY, 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_CHILDREN_BATCH_MAX, DEVICE_PROFILES, DEVICE_RESTORE_RETRY_CONCURRENCY, DEVICE_RESTORE_RETRY_DELAYS_MS, 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, DetectionCatalogClassMapSchema, DetectionSourceSchema, DeviceCodeSeveritySchema, DeviceConfig, DeviceDiscoveryStatusSchema, ExposeInputSchema as DeviceExportExposeInputSchema, DeviceExportStatusSchema, UnexposeInputSchema as DeviceExportUnexposeInputSchema, DeviceFeature, DeviceInfoSchema, DeviceNetworkStatsSchema, DeviceRestoreRetryScheduler, DeviceRole, DeviceRuntimeState, DeviceSelectorSchema, DeviceStatusSchema, DeviceType, DiagnosticIdSchema, DiagnosticWindowPatchSchema, DiagnosticWindowSchema, DiscoveredChildDeviceSchema, DiscoveredChildStatusSchema, DiscoveredDeviceSchema, DiscoveredTargetSchema, DiskReconcileJobSchema, DisposerChain, DoorbellPressEventSchema, DoorbellStatusSchema, EVENTFUL_CAP_NAMES, EVENT_DENSITY_BATCH_MAX, 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, EventDensityBucketSchema, EventDensityForDeviceSchema, 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, FIRST_LEVEL_MACRO_CLASSES, FULL_IMAGE_BBOX, FailureContributionSchema, FailureCounters, FailureReasonCountSchema, FanControlStatusSchema, FanDirectionSchema, FeatureManifestSchema, FeatureProbeStatusSchema, FloodStatusSchema, Fmp4BoxSplitter, FrameHandleFormatSchema, FrameHandleSchema, FrameInputSchema, FrameLazyCountersSchema, FrameLazyMetricsSchema, GasStatusSchema, GetLoggingSettingsInputSchema, 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, INFERENCE_DEVICE_EXCLUSION_REASONS, ImageContractSchema, ImageContractStateSchema, ImageRotateSchema, ImageSettingsOptionsSchema, ImageSettingsPatchSchema, ImageSettingsStatusSchema, ImageStatusSchema, InferenceDeviceExclusionReasonSchema, IngestOwnerSchema, InstalledPackageSchema, IntegrationLiteSchema, IntegrationWithStateSchema, IntercomAbilitySchema, IntercomStatusSchema, KNOWN_CAP_NAMES, KeyEventSchema, LEGACY_READ_ONLY_CONFIG_KEY, LOAD_CONTRIBUTION_ATTRIBUTIONS, LOAD_CONTRIBUTION_ROLES, LOG_CHANNEL_TICK_MS, LOG_LEVEL_RANK, LabelAttributionSchema, LabelDefinitionSchema, LabelTierSchema, LawnMowerActivitySchema, LawnMowerControlStatusSchema, LedgerWalkDeviceReportSchema, LedgerWalkInputSchema, LedgerWalkRefusalSchema, LedgerWalkReportSchema, LedgerWalkSkipCountsSchema, LedgerWalkSkipReasonSchema, LegacyStorageLocationDefaultSchema, LinkedDeviceSchema, LinkedDevicesModeSchema, LlmDefaultSchema, LlmDefaultSelectorSchema, LlmDownloadProgressSchema, LlmErrorCodeSchema, LlmGenerateBaseInputSchema, LlmGenerateErrSchema, LlmGenerateOkSchema, LlmGenerateResultSchema, LlmImageSchema, LlmNodeModelSchema, LlmProfileKindDescriptorSchema, LlmProfileKindSchema, LlmProfileSchema, LlmRetryPolicySchema, LlmRuntimeCompleteInputSchema, LlmRuntimeDiskUsageSchema, LlmRuntimeNodeSchema, LlmRuntimeStatusSchema, LlmTimeoutDefaults, LlmUsageRollupSchema, LlmUsageSchema, LoadContributionSchema, LocateSegmentResultSchema, LocationStatSchema, LockControlStatusSchema, LockStateSchema, LogChannelApplyResultSchema, LogChannelDescriptorSchema, LogChannelGate, LogChannelLevelSchema, LogChannelRegistry, LogChannelWindowPatchSchema, LogChannelWindowSchema, LogChannelWindowStateSchema, LogEntrySchema, LogLevelSchema, LogStreamEntrySchema, LoggingEffectiveSchema, LoggingExplicitSchema, LoggingLevelLayerSchema, LoggingLevelSourceSchema, LoggingScopeKindSchema, LoggingSettingsPatchSchema, LoggingSettingsStateSchema, LoginMethodContributionSchema, LoginStageEnum, MACRO_LABELS, MAX_CLIP_EVENT_IDS, MAX_CLIP_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, MAX_KEYS, MAX_REASONS_PER_KEY, MAX_SENSOR_TRIGGER_DEVICES, MAX_TRACK_DEBUG_NOTE_LEN, METHOD_ACCESS_MAP, METHOD_DEVICE_SELECTORS, MODEL_FORMATS, MODEL_PROVIDER_IDS, MOTION_TRIGGER_FEATURE, ManagedModelCatalogEntrySchema, ManagedModelExtraFileSchema, ManagedModelRefSchema, ManagedRuntimeConfigSchema, MaskGridDimsSchema, MaskGridShapeSchema, MaskLineShapeSchema, MaskPointSchema, MaskPolygonShapeSchema, MaskPolygonVerticesSchema, MaskRectShapeSchema, MaskShapeKindSchema, MaskShapeSchema, MediaFileInfoSchema, MediaFileKindEnum, MediaFileRefSchema, MediaFileSchema, MediaPlayerRepeatSchema, MediaPlayerStateSchema, MediaPlayerStatusSchema, MediaRelocateModeSchema, MeshPeerSchema, MeshStatusSchema, MethodAccessSchema, MigrateDeviceResultSchema, MigrateSwitchOutcomeSchema, MigrateSwitchReportSchema, ModelCatalogEntrySchema, ModelConvertInputSchema, ModelConvertMetadataSchema, ModelDistributeInputSchema, ModelDistributeResultSchema, ModelExtraFileSchema, ModelFormatEntrySchema, ModelFormatsSchema, ModelProviderIdSchema, 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_SCENE_BUDGET_FIELD, NATIVE_LEASE_SCENE_BUDGET_KEY, NATIVE_LEASE_SECTION_ID, NATIVE_LEASE_TILE_BUDGET_FIELD, NATIVE_LEASE_TILE_BUDGET_KEY, NAVIGATION_ACTION_CATALOG, NAVIGATION_LIGHT_LEVEL_MAX, NAVIGATION_LIGHT_LEVEL_MIN, NC_ALARM_SYSTEM_EVENT_KINDS, NC_AUDIO_CONFIRM_HITS_DEFAULT, NC_AUDIO_CONFIRM_HITS_MAX, NC_AUDIO_CONFIRM_HITS_MIN, NC_AUDIO_CONFIRM_WINDOW_MAX_SEC, NC_AUDIO_CONFIRM_WINDOW_MIN_SEC, NC_AUDIO_CONFIRM_WINDOW_SEC_DEFAULT, 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_AUDIO_SEED, 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_OCCUPANCY_DEFAULTS, NC_RULE_EDITOR_SECTION_ORDER, NC_RULE_KIND_SPECS, NC_RULE_SECTIONS, NC_SNOOZE_MAX_MINUTES, NC_SYSTEM_DELIVERY, NC_SYSTEM_EVENT_FILTER_KEYS, NC_TAXONOMY, NETWORK_LINK_TYPES, NETWORK_LINK_UNKNOWN, NativeCropBboxSchema, NativeCropRefSchema, NativeCropResultSchema, NativeDetectionSchema, NativeLeaseAdmissionSchema, NativeLeaseSettingsSchema, NativeObjectClassEnum, NativeObjectDetectionRuntimeStateSchema, NativeObjectDetectionStatusSchema, NavigationActionEntrySchema, NavigationActionIdSchema, NavigationEntryKindSchema, NavigationFeaturesSchema, NavigationLightModeSchema, NavigationModeSchema, NavigationMoveCommandSchema, NavigationPointSchema, NavigationRuntimeStateSchema, NavigationStatusSchema, 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, NetworkLinkStatusSchema, NotificationActionIconSchema, NotificationActionSchema, NotificationFormatSchema, NotificationSchema, NotifierStatusSchema, NumericSensorStatusSchema, OPERATOR_WRITTEN_STALE_MS, OPS_LOG_DEFAULT_LIMIT, OPS_LOG_RING_DEFAULT_MAX, OVERFLOW_REASON, 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, PoolMemoryWatchdog, 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, RECORDING_TIMELINE_BATCH_MAX, REDACTED_SECRET, RESERVED_BINDING_NAMES, RESTORED_CAP_NAMES, ROOT_BUCKET_KEY, RUNTIME_DEFAULTS, RUNTIME_STATE_POLICY, RUNTIME_STATE_REFRESH_MISS_COOLDOWN_MS, RUNTIME_TO_FORMAT, RawStateResultSchema, ReadGopBytesResultSchema, ReadSegmentBytesResultSchema, ReadWindowBytesResultSchema, ReadinessRegistry, ReadinessTimeoutError, RecentTracksPageSchema, RecentTracksQueryInput, RecordingAvailabilityForDeviceSchema, RecordingAvailabilitySchema, RecordingBandModeSchema, RecordingBandSchema, RecordingBandTriggersSchema, RecordingConfigSchema, RecordingDaysForDeviceSchema, RecordingDaysSchema, RecordingDeviceUsageSchema, RecordingLocationUsageSchema, RecordingManifestSchema, RecordingObjectTriggerClassSchema, RecordingRangeSchema, RecordingRebalanceInputSchema, RecordingRebalanceMoveSchema, RecordingRebalancePlanSchema, RecordingRebalanceSkipReasonSchema, RecordingRebalanceSkipSchema, RecordingRetentionSchema, RecordingSignalRuntimeStateSchema, RecordingSignalStatusSchema, RecordingStatusSchema, RecordingStorageModeSchema, RecordingStorageUsageSchema, RecordingTriggersSchema, RecordingWeekdaySchema, RedirectLoginMethodSchema, RelocatableMediaCountInputSchema, RelocatableMediaCountSchema, RelocateFootageClassSchema, RelocateFootageInputSchema, RelocateJobSchema, RelocateJobStateSchema, RelocateMediaInputSchema, RelocateResidueInputSchema, RelocateResidueSchema, RenderedAsSchema, ReportMotionInputSchema, ReportedFailureContributionSchema, ReportedLoadContributionSchema, RequestCensusGroupSchema, RequestCensusProcedureSchema, RequestCensusSnapshotSchema, RequestCensusStatusSchema, 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, SENSOR_FEATURES, SENSOR_MAP, SHARE_VIEW_KINDS, SOURCE_CAPS, SOURCE_CAP_ACTIVE_FIELD, SOURCE_CAP_CHANGED_AT_FIELD, SOURCE_DEVICE_TYPES, SOURCE_INFO_METADATA_KEY, STORAGE_ACCESS_FALLBACK, STORAGE_BYTES_PER_GB, STORAGE_LOCATION_MODES, STREAM_PROFILE_META, STREAM_QUALITY_LABELS, SUB_DETECTION_TYPES, SUMMARIES_DEFAULT_LIMIT, SUMMARIES_MAX_LIMIT, SYSTEM_CAP_NAMES, SYSTEM_SCOPE_DEVICE_METHODS, SceneCheckSchema, SceneConditionSchema, SceneConfirmSchema, SceneMonitorSchema, SceneMonitorStateSchema, SceneMonitorStatusForDeviceSchema, SceneMonitorStatusSchema, SceneReferenceSchema, SceneUnavailableSchema, SceneUncoveredPolicySchema, SceneVerdictSchema, ScopedTokenSchema, ScopedTokenSummarySchema, ScoredObjectEventSchema, ScriptRunnerStatusSchema, SearchResultSchema, SendEmailInputSchema, SendEmailResultSchema, SendResultSchema, SensorEventSchema, ServerBootModeSchema, ServerPackageStatusSchema, ServerRollbackInfoSchema, ServerUpdateActionResultSchema, ServerUpdateCheckResultSchema, ServerUpdateStateSchema, SetLoggingSettingsInputSchema, SetSiteLocationInputSchema, SettingsPatchSchema, SettingsRecordSchema, SettingsSchemaWithValuesSchema, SettingsUpdateResultSchema, ShmRingStatsSchema, SiteLocationSchema, SiteLocationSourceSchema, SiteLocationStatusSchema, SmokeStatusSchema, SmtpStatusSchema, SnapshotImageSchema, SourceInfoSchema, SpatialDetectionSchema, SsoBridgeClaimsSchema, StartEmbeddedInputSchema, StationaryObjectSchema, AbortUploadInputSchema as StorageAbortUploadInputSchema, StorageAccessSchema, BeginDownloadInputSchema as StorageBeginDownloadInputSchema, BeginDownloadResultSchema as StorageBeginDownloadResultSchema, BeginUploadInputSchema as StorageBeginUploadInputSchema, BeginUploadResultSchema as StorageBeginUploadResultSchema, StorageCleanupInputSchema, StorageCleanupJobSchema, StorageCleanupPhaseSchema, StorageCleanupStatusInputSchema, StorageDrainProgressSchema, EndDownloadInputSchema as StorageEndDownloadInputSchema, StorageEvictionPolicySchema, FinalizeUploadInputSchema as StorageFinalizeUploadInputSchema, StorageLocationDeclarationSchema, StorageLocationModeSchema, StorageLocationRefSchema, StorageLocationSchema, StorageLocationTypeSchema, StorageMigrationClassSchema, StorageMigrationDestinationsSchema, StorageMigrationDrainInputSchema, StorageMigrationFindingCodeSchema, StorageMigrationFindingSchema, StorageMigrationFootageMoveInputSchema, StorageMigrationInputSchema, StorageMigrationJobSchema, StorageMigrationLaneSchema, StorageMigrationLeaseInputSchema, StorageMigrationMediaMoveInputSchema, StorageMigrationModeSchema, StorageMigrationMoveProgressSchema, StorageMigrationMoveSchema, StorageMigrationMoverSchema, StorageMigrationParticipantSchema, StorageMigrationPhaseSchema, StorageMigrationPlanSchema, StorageMigrationResidueSchema, StorageMigrationSourcesSchema, StorageOccupancyReportSchema, 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, SummarySchema, 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, TransportPlaneCountsSchema, TransportPlaneSchema, TurnServerSchema, UNATTRIBUTED_BUCKET_KEY, UNIT_TABLE, BrokerInfoSchema$1 as UnifiedBrokerInfoSchema, UnitConversionError, UnstampedEventMediaCountSchema, UnstampedRowsSchema, UpdateIntegrationInputSchema, UpdateStatusSchema, UpdateUserInputSchema, UserRecordSchema, UserSummarySchema, VISIT_MERGE_GAP_MS, 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, __resetLogChannelRegistryForTests, accessoriesCapability, accessoryStableId, addonPagesCapability, addonPagesSourceCapability, addonRoutesCapability, addonSettingsCapability, addonWidgetsCapability, addonWidgetsSourceCapability, addonsCapability, adminUiCapability, airQualitySensorCapability, alarmPanelCapability, alertsCapability, ambientLightSensorCapability, asBoolean, asJsonArray, asJsonObject, asNumber, asString, assertTimelapseCadences, audioAnalysisCapability, audioAnalyzerCapability, audioCodecCapability, audioIsFailClosed, audioKindId, 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, clusterModelSettingKey, clusterStepSettingFieldsFor, clusterStepSettingKey, collectHydratedFieldEntries, collectHydratedFieldValues, collectSecretConfigKeys, colorCapability, colorForKind, commitWatchdogRestart, compileExpression, compileExpressionSafe, composeSwitchedOff, conditionDepth, conditionExclusionReason, conditionVisibleForKind, connectionTestCapability, connectivityCapability, consumablesCapability, contactCapability, controlCapability, convertUnit, coreBlockAddonId, coreBlockIdFromAddonId, coreBlocksCapability, cosineSimilarity, countConditionLeaves, coverCapability, createDeviceProxy, createDurableState, createEvent, createEventBusSliceSource, createExpressionScope, createHwAccelCache, createLazyTrpcSource, createLogChannelsProvider, createMirrorSource, createRuntimeStateBridge, createSliceHandle, createSystemProxy, customAction, customModelRegistryCapability, dataStoreProviderCapability, dayNightCapability, declarationOwnerNodeId, declareLogChannel, decodeVectorBase64, decoderCapability, defaultDeliveryForSection, defaultDeviceFor, defineCustomActions, deriveBatteryPresence, deriveCameraSwitches, deriveDetailCropRect, deriveRecordingMode, describeModelVariant, detectAccessRole, detectionPipelineCapability, deviceAdoptionCapability, deviceBackendToFormat, deviceCustomAction, deviceDiscoveryCapability, deviceExportCapability, deviceManagerCapability, deviceMatchesProfile, deviceOpsCapability, deviceProviderCapability, deviceSelectorMatches, deviceStateCapability, deviceStatusCapability, doorbellCapability, droppedConditionsForKind, egressTranscodeSharingKey, egressTransportFromRequest, embeddingEncoderCapability, emitDownForOwnedCaps, emitReadiness, encodeProfileFromStreamShape, encodeVectorBase64, enumSensorCapability, enumerateInferenceDevices, enumerateItemArrayFields, enumerateSchemaFields, errMsg, evaluateAst, evaluateExpressionSource, evaluatePoolMemory, evaluateSensorEdge, evaluateZoneRules, event, eventEmitterCapability, eventsCapability, evictionPolicyForMode, evictionPolicyOfLocation, expandCapMethods, extractNestedAddonId, extractSourceInfoFromMetadata, faceGalleryCapability, failureContributionCapability, failureRate, fanControlCapability, featureProbeCapability, filesystemBrowseCapability, findTimezone, floodCapability, foldSnapshotByFunction, formatForBackend, formatForRuntime, gasCapability, gbToBytes, generateAutomationBlock, getAudioMacroClassIds, getByPath, getCapsByProviderKind, getLogChannelRegistry, getTaxonomyEntry, hasMotionTrigger, hfModelUrl, htmlToText, humidifierCapability, humiditySensorCapability, hydrateSchema, imageCapability, imageSettingsCapability, inferModelProvider, initialPoolMemoryState, integrationsCapability, intercomCapability, invocationFromEncodeProfile, isAgentOnlyPlacement, isArrayOutputSchema, isAudioLabelSelected, isAudioRule, isBaseConditionKey, isBatteryPresenceFault, isClusterScopedStep, isCollectionArrayMethod, isDeployableToAgent, isDetectionMacroClass, isDeviceConfigCap, isDeviceScopedCap, isEvent, isFirstLevelMacroClass, isIsolatedBuiltin, isLocationEnabled, isNode, isObjectInput, isOccupancyRule, isRestoredCap, isSameAddonId, isScheduleActive, isSecretConfigField, isSoftwareDecode, isSourceCap, isStorageLocationMode, isSystemDelivery, isVoidInput, jobKindSchema, kebabToCamel, knownValues, lawnMowerControlCapability, legacyModeOf, lifecycleJobSchema, lifecycleJobScopeSchema, lifecycleJobStateSchema, lifecycleTaskSchema, llmCapability, llmRuntimeCapability, loadContributionCapability, localNetworkCapability, locationSimilarity, lockControlCapability, logBannerArgs, logChannelsCapability, logDestinationCapability, logLevelAtMost, loginMethodCapability, looseSchema, makeProfileBrokerId, makeSourceBrokerId, mapAudioLabelToMacro, markdownToHtmlLite, markdownToText, maskUrlCredentials, mayReadLocation, mayWriteToLocation, mediaPlayerCapability, mergeSourceInfo, meshNetworkCapability, method, methodAccessForHttpMethod, metricsProviderCapability, migrateLegacyDeviceSignalConfig, modeMayRead, modeMayWrite, modelConvertCapability, modelDistributorCapability, modelFormatForRuntime, motionCapability, motionDetectionCapability, motionTriggerCapability, motionZonesCapability, mqttBrokerCapability, nativeObjectDetectionCapability, navigationCapability, networkAccessCapability, networkLinkCapability, networkQualityCapability, nodePin, nodesCapability, normalizeAddonInitResult, normalizeAudioLabel, normalizeTokenScopes, normalizeUnit, notificationOutputCapability, notificationRulesCapability, notifierCapability, numericSensorCapability, oauthIntegrationCapability, objectInputDeclaresAddonId, osdCapability, osdManagerCapability, overlayClusterStepSettings, parseCameraStreamConfig, parseExpression, parseJsonArray, parseJsonObject, parseJsonUnknown, parseProcStatus, parseProfileBrokerId, parseRuleSection, parseStreamParamsFormPatch, patchAudio, petFeederCapability, pickAccessoryControl, pickClusterStepModels, pickClusterStepSettings, pickDetailCropConvention, pickNativeLeaseOverride, pickPreferredRtspEntry, pickRestartCandidate, pickVideoEncoder, pickerForCondition, pipelineAnalyticsCapability, pipelineExecutorCapability, pipelineOrchestratorCapability, pipelineRunnerCapability, plateGalleryCapability, platformProbeCapability, poolMemoryThreshold, powerMeterCapability, prepareNotification, presenceCapability, pressureSensorCapability, principalMayReachAddon, privacyMaskCapability, procedureAuthKey, ptzAutotrackCapability, ptzCapability, pythonScriptForBackend, readClusterStepModels, readClusterStepSettings, readDetailCropConvention, readDeviceStateFrom, readNativeLeaseOverride, readNodePin, readTimelapseGeneratedAt, readinessKey, rebootCapability, recordingCapability, recordingExportCapability, recordingSignalCapability, rectsToCells, reducePoints, requiresPython, resetPoolBaseline, resolveAddonExecution, resolveAddonGroup, resolveAddonPlacement, resolveAddonRuntime, resolveBucketMs, resolveCapMount, resolveClusterStepModelId, resolveContainerPrimaryChild, resolveDetectionRuntime, resolveDeviceControlKind, resolveDeviceProfile, resolveEgressDecodeHwAccel, resolveFormat, resolveHydratedFieldValue, resolveLocationMode, resolveMethodAuth, resolveModelFormat, resolveMutate, resolvePoolMemoryPolicy, resolveRecordingProfiles, resolveRunnerId, resolveVariantModelId, resolveViewableDeviceIds, roleSpec, ruleEditorSectionsForKind, ruleKindOf, ruleKindSpec, ruleMatchesSection, ruleSection, ruleSectionOf, ruleSeedForSection, runInferenceStep, runtimeDevices, runtimeStatePolicyFor, sceneMonitorCapability, schemaDeclaresAnyField, scopeInherits, scopeKey, scopesAllowAddon, scopesAllowDeviceCap, scoreRuntimes, scriptRunnerCapability, selectAssignedProfileSlots, serverManagementCapability, setByPath, settingsStoreCapability, signalPercentFromBars, signalPercentFromRssi, sleep, sleepCancellable, sliceActiveValue, sliceChangedAt, smokeCapability, smtpProviderCapability, snapshotCapability, ssoBridgeCapability, startReachabilityPoll, stateVocabularyFor, storageCapability, storageEvictableCapability, storageMigrationCapability, storageOccupancyCapability, storageProviderCapability, streamBrokerCapability, streamCatalogCapability, streamParamsCapability, streamPixels, streamQualityLabel, stripRetiredBandPreBufferSec, strippedOfLegacyReadOnly, subKindsOf, summarisePrivacyAudio, summarizeEffectiveScope, supportedRuntimes, switchCapability, switchedOffIds, synthesizeSourceInfo, systemCapability, systemEventFilterApplies, systemEventFilterAppliesToAnyKind, 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, withLocationMode, zodEntriesToConfigUI, zoneAnalyticsCapability, zoneRulesCapability, zonesCapability };