@camstack/types 1.2.414 → 1.2.415

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 (62) hide show
  1. package/dist/addon.js +4 -1798
  2. package/dist/addon.mjs +2 -1796
  3. package/dist/capabilities/camera-grid-layout.cap.d.ts +1 -1
  4. package/dist/capabilities/device-history.cap.d.ts +1 -1
  5. package/dist/capabilities/device-manager.cap.d.ts +2 -2
  6. package/dist/capabilities/notification-rules.cap.d.ts +2 -2
  7. package/dist/capabilities/osd-manager.cap.d.ts +1 -1
  8. package/dist/capabilities/pipeline-analytics.cap.d.ts +1 -1
  9. package/dist/capabilities/pipeline-runner.cap.d.ts +1 -1
  10. package/dist/capabilities/ptz.cap.d.ts +3 -3
  11. package/dist/capabilities/recording-export.cap.d.ts +1 -1
  12. package/dist/capabilities/scene-monitor.cap.d.ts +1 -1
  13. package/dist/capabilities/stream-signals.cap.d.ts +1 -1
  14. package/dist/capabilities/videoclips.cap.d.ts +2 -2
  15. package/dist/capabilities/viewer-ui.cap.d.ts +1 -1
  16. package/dist/catalogs/index.d.ts +1 -1
  17. package/dist/catalogs/{frigate-plus-classmap.d.ts → plus-catalog-classmap.d.ts} +25 -25
  18. package/dist/catalogs/root-model-supply.d.ts +3 -3
  19. package/dist/client.js +22 -22
  20. package/dist/client.mjs +22 -22
  21. package/dist/composition/cards/__fixtures__/stored-compositions.d.ts +2 -2
  22. package/dist/composition/customize/__fixtures__/refs.d.ts +1 -1
  23. package/dist/{composition-CSLSFGTO.js → composition-DsmkwP9-.js} +1 -1
  24. package/dist/{composition-BJ8iAZb3.mjs → composition-kEl9mevu.mjs} +1 -1
  25. package/dist/device/base-device-provider.d.ts +1 -1
  26. package/dist/device/device-state-handle.d.ts +1 -1
  27. package/dist/device/location-icon.d.ts +1 -1
  28. package/dist/device/site-zone.d.ts +2 -2
  29. package/dist/enums/event-category.d.ts +1 -1
  30. package/dist/enums.js +1 -1
  31. package/dist/enums.mjs +1 -1
  32. package/dist/{event-category-Ceif8n-v.mjs → event-category-DHXxB8t9.mjs} +1 -1
  33. package/dist/{event-category-DG6Vir8Z.js → event-category-DXZ3f9Q5.js} +1 -1
  34. package/dist/ffmpeg/fmp4-fragment-plane.d.ts +1 -1
  35. package/dist/ffmpeg/gif-derive.d.ts +1 -1
  36. package/dist/ffmpeg/process.d.ts +1 -1
  37. package/dist/generated/addon-cap-facts.d.ts +2 -0
  38. package/dist/geometry/subject-path.d.ts +1 -1
  39. package/dist/index.d.ts +1 -1
  40. package/dist/index.js +1516 -1516
  41. package/dist/index.mjs +1510 -1510
  42. package/dist/interfaces/addon-peer-bytes.d.ts +1 -1
  43. package/dist/interfaces/agent.d.ts +1 -1
  44. package/dist/interfaces/birth-decision-ledger.d.ts +1 -1
  45. package/dist/interfaces/debug-note-archive.d.ts +1 -1
  46. package/dist/interfaces/inference-engine.d.ts +1 -1
  47. package/dist/interfaces/logging.d.ts +1 -1
  48. package/dist/metrics/failure-counters.d.ts +2 -2
  49. package/dist/node.js +2 -2
  50. package/dist/node.mjs +2 -2
  51. package/dist/notification/timelapse-rule.d.ts +1 -1
  52. package/dist/pipeline/root-face-crop.d.ts +1 -1
  53. package/dist/pipeline/second-pass/motion-crop-plan.d.ts +1 -1
  54. package/dist/pipeline/second-pass/small-subject-recovery.d.ts +4 -4
  55. package/dist/process/child-cost-registry.d.ts +1 -1
  56. package/dist/{sleep-CYfIZzGv.mjs → sleep-BErAxhul.mjs} +1982 -4
  57. package/dist/{sleep-UP964hNP.js → sleep-BPQ2ZyaI.js} +1999 -3
  58. package/dist/types/detection.d.ts +2 -2
  59. package/dist/types/models.d.ts +3 -3
  60. package/dist/types/overlay-layer.d.ts +1 -1
  61. package/dist/utils/addon-id.d.ts +1 -1
  62. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- const require_event_category = require("./event-category-DG6Vir8Z.js");
1
+ const require_event_category = require("./event-category-DXZ3f9Q5.js");
2
2
  let zod = require("zod");
3
3
  //#region src/audio/audio-chunk-format.ts
4
4
  /**
@@ -6368,7 +6368,7 @@ var viewerUiCapability = {
6368
6368
  * `getStaticDir` leaks a hub filesystem path.
6369
6369
  *
6370
6370
  * ⚠ Checked before gating: the VIEWER app IS used by a non-admin user
6371
- * (`roberta`), but it never calls `viewerUi.*` over tRPC. The static SPA
6371
+ * (`bob`), but it never calls `viewerUi.*` over tRPC. The static SPA
6372
6372
  * it loads is served by the plain `GET /viewer/*` Fastify route in
6373
6373
  * `main.ts`, which reads `staticDir`/`indexPath` from a module-level
6374
6374
  * cache populated ONCE at boot via `capRegistry.getSingletonForNode`
@@ -6505,6 +6505,1984 @@ var deviceOpsCapability = {
6505
6505
  }
6506
6506
  };
6507
6507
  //#endregion
6508
+ //#region src/generated/addon-cap-facts.ts
6509
+ /** cap name -> the numeric state field whose strict advance IS the cap's one-shot event. */
6510
+ var CAP_ADVANCE_FIELDS = Object.freeze({ "doorbell": "lastPressedAt" });
6511
+ /** Every capability name, so addon code can check a name without the schema graph. */
6512
+ var CAP_NAMES = Object.freeze([
6513
+ "accessories",
6514
+ "addon-pages",
6515
+ "addon-pages-source",
6516
+ "addon-routes",
6517
+ "addon-settings",
6518
+ "addon-widgets",
6519
+ "addon-widgets-source",
6520
+ "addons",
6521
+ "admin-ui",
6522
+ "air-quality-sensor",
6523
+ "alarm-panel",
6524
+ "alerts",
6525
+ "ambient-light-sensor",
6526
+ "audio-analysis",
6527
+ "audio-analyzer",
6528
+ "audio-codec",
6529
+ "audio-metrics",
6530
+ "auth-provider",
6531
+ "automation-control",
6532
+ "backup",
6533
+ "battery",
6534
+ "binary",
6535
+ "brightness",
6536
+ "broker",
6537
+ "button",
6538
+ "calendar-source",
6539
+ "calendars",
6540
+ "camera-credentials",
6541
+ "camera-grid-layout",
6542
+ "camera-pipeline-config",
6543
+ "camera-streams",
6544
+ "carbon-monoxide",
6545
+ "climate-control",
6546
+ "color",
6547
+ "composer",
6548
+ "connection-test",
6549
+ "connectivity",
6550
+ "consumables",
6551
+ "contact",
6552
+ "control",
6553
+ "core-blocks",
6554
+ "cover",
6555
+ "custom-model-registry",
6556
+ "data-store-provider",
6557
+ "database-snapshot",
6558
+ "day-night",
6559
+ "decoder",
6560
+ "detection-pipeline",
6561
+ "device-admin-link",
6562
+ "device-adoption",
6563
+ "device-credentials",
6564
+ "device-discovery",
6565
+ "device-export",
6566
+ "device-extension",
6567
+ "device-history",
6568
+ "device-manager",
6569
+ "device-ops",
6570
+ "device-provider",
6571
+ "device-removal-hook",
6572
+ "device-state",
6573
+ "device-status",
6574
+ "dishwasher",
6575
+ "display-palette",
6576
+ "doorbell",
6577
+ "embedding-encoder",
6578
+ "enum-sensor",
6579
+ "event-emitter",
6580
+ "face-gallery",
6581
+ "failure-contribution",
6582
+ "fan-control",
6583
+ "feature-probe",
6584
+ "filesystem-browse",
6585
+ "flood",
6586
+ "gas",
6587
+ "heating-valve",
6588
+ "humidifier",
6589
+ "humidity-sensor",
6590
+ "image",
6591
+ "image-settings",
6592
+ "integrations",
6593
+ "intercom",
6594
+ "keychain",
6595
+ "keychain-admin",
6596
+ "lawn-mower-control",
6597
+ "llm",
6598
+ "llm-runtime",
6599
+ "load-contribution",
6600
+ "local-network",
6601
+ "lock-control",
6602
+ "log-channels",
6603
+ "log-destination",
6604
+ "login-method",
6605
+ "media-player",
6606
+ "mesh-network",
6607
+ "metrics-provider",
6608
+ "model-convert",
6609
+ "model-distributor",
6610
+ "motion",
6611
+ "motion-detection",
6612
+ "motion-trigger",
6613
+ "motion-zones",
6614
+ "mqtt-broker",
6615
+ "native-object-detection",
6616
+ "navigation",
6617
+ "network-access",
6618
+ "network-link",
6619
+ "network-quality",
6620
+ "node-certificates",
6621
+ "nodes",
6622
+ "notification-output",
6623
+ "notification-rules",
6624
+ "notifier",
6625
+ "numeric-sensor",
6626
+ "oauth-integration",
6627
+ "oidc-connections",
6628
+ "osd",
6629
+ "osd-manager",
6630
+ "pet-feeder",
6631
+ "pipeline-analytics",
6632
+ "pipeline-executor",
6633
+ "pipeline-orchestrator",
6634
+ "pipeline-runner",
6635
+ "plate-gallery",
6636
+ "platform-probe",
6637
+ "power-meter",
6638
+ "presence",
6639
+ "pressure-sensor",
6640
+ "privacy-mask",
6641
+ "ptz",
6642
+ "ptz-autotrack",
6643
+ "reboot",
6644
+ "record-entries",
6645
+ "recording",
6646
+ "recording-archive",
6647
+ "recording-export",
6648
+ "recording-onboard",
6649
+ "recording-signal",
6650
+ "records",
6651
+ "running-state",
6652
+ "scene-monitor",
6653
+ "script-runner",
6654
+ "server-management",
6655
+ "settings-store",
6656
+ "smoke",
6657
+ "smtp-provider",
6658
+ "snapshot",
6659
+ "sso-bridge",
6660
+ "storage",
6661
+ "storage-admin",
6662
+ "storage-evictable",
6663
+ "storage-migration",
6664
+ "storage-occupancy",
6665
+ "storage-provider",
6666
+ "stream-broker",
6667
+ "stream-catalog",
6668
+ "stream-params",
6669
+ "stream-signals",
6670
+ "switch",
6671
+ "system",
6672
+ "tamper",
6673
+ "temperature-sensor",
6674
+ "terminal-session",
6675
+ "toast",
6676
+ "training",
6677
+ "training-provider",
6678
+ "turn-provider",
6679
+ "update",
6680
+ "user-management",
6681
+ "user-passkeys",
6682
+ "vacuum-control",
6683
+ "valve",
6684
+ "vector-store",
6685
+ "vibration",
6686
+ "videoclips",
6687
+ "viewer-ui",
6688
+ "water-heater",
6689
+ "weather",
6690
+ "webrtc-session",
6691
+ "zone-analytics",
6692
+ "zone-rules",
6693
+ "zones"
6694
+ ]);
6695
+ /** cap name -> the bindable leaves of its runtime state (absent: none). */
6696
+ var CAP_STATE_LEAVES = Object.freeze({
6697
+ "air-quality-sensor": [
6698
+ {
6699
+ "path": "co2Ppm",
6700
+ "valueType": "number"
6701
+ },
6702
+ {
6703
+ "path": "vocPpb",
6704
+ "valueType": "number"
6705
+ },
6706
+ {
6707
+ "path": "pm25",
6708
+ "valueType": "number"
6709
+ },
6710
+ {
6711
+ "path": "pm10",
6712
+ "valueType": "number"
6713
+ },
6714
+ {
6715
+ "path": "aqi",
6716
+ "valueType": "number"
6717
+ },
6718
+ {
6719
+ "path": "unit",
6720
+ "valueType": "string"
6721
+ },
6722
+ {
6723
+ "path": "precision",
6724
+ "valueType": "number"
6725
+ }
6726
+ ],
6727
+ "alarm-panel": [
6728
+ {
6729
+ "path": "state",
6730
+ "valueType": "enum",
6731
+ "enumValues": [
6732
+ "disarmed",
6733
+ "armed_home",
6734
+ "armed_away",
6735
+ "armed_night",
6736
+ "armed_vacation",
6737
+ "armed_custom_bypass",
6738
+ "arming",
6739
+ "disarming",
6740
+ "pending",
6741
+ "triggered"
6742
+ ]
6743
+ },
6744
+ {
6745
+ "path": "targetMode",
6746
+ "valueType": "enum",
6747
+ "enumValues": [
6748
+ "home",
6749
+ "away",
6750
+ "night",
6751
+ "vacation",
6752
+ "custom_bypass"
6753
+ ]
6754
+ },
6755
+ {
6756
+ "path": "requiresCode",
6757
+ "valueType": "boolean"
6758
+ }
6759
+ ],
6760
+ "ambient-light-sensor": [
6761
+ {
6762
+ "path": "lux",
6763
+ "valueType": "number"
6764
+ },
6765
+ {
6766
+ "path": "unit",
6767
+ "valueType": "string"
6768
+ },
6769
+ {
6770
+ "path": "precision",
6771
+ "valueType": "number"
6772
+ }
6773
+ ],
6774
+ "audio-metrics": [
6775
+ {
6776
+ "path": "ts",
6777
+ "valueType": "number"
6778
+ },
6779
+ {
6780
+ "path": "windowSec",
6781
+ "valueType": "number"
6782
+ },
6783
+ {
6784
+ "path": "level.rms",
6785
+ "valueType": "number"
6786
+ },
6787
+ {
6788
+ "path": "level.dbfs",
6789
+ "valueType": "number"
6790
+ },
6791
+ {
6792
+ "path": "peakDbfs",
6793
+ "valueType": "number"
6794
+ },
6795
+ {
6796
+ "path": "avgDbfs",
6797
+ "valueType": "number"
6798
+ },
6799
+ {
6800
+ "path": "current.className",
6801
+ "valueType": "string"
6802
+ },
6803
+ {
6804
+ "path": "current.score",
6805
+ "valueType": "number"
6806
+ },
6807
+ {
6808
+ "path": "current.timestamp",
6809
+ "valueType": "number"
6810
+ }
6811
+ ],
6812
+ "automation-control": [
6813
+ {
6814
+ "path": "enabled",
6815
+ "valueType": "boolean"
6816
+ },
6817
+ {
6818
+ "path": "isRunning",
6819
+ "valueType": "boolean"
6820
+ },
6821
+ {
6822
+ "path": "lastTriggeredAt",
6823
+ "valueType": "number"
6824
+ },
6825
+ {
6826
+ "path": "lastError",
6827
+ "valueType": "string"
6828
+ }
6829
+ ],
6830
+ "battery": [
6831
+ {
6832
+ "path": "percentage",
6833
+ "valueType": "number"
6834
+ },
6835
+ {
6836
+ "path": "charging",
6837
+ "valueType": "enum",
6838
+ "enumValues": [
6839
+ "dc",
6840
+ "solar",
6841
+ "none",
6842
+ "unknown"
6843
+ ]
6844
+ },
6845
+ {
6846
+ "path": "sleeping",
6847
+ "valueType": "boolean"
6848
+ },
6849
+ {
6850
+ "path": "lastUpdated",
6851
+ "valueType": "number"
6852
+ },
6853
+ {
6854
+ "path": "lastContactAt",
6855
+ "valueType": "number"
6856
+ },
6857
+ {
6858
+ "path": "lastFullRefreshAt",
6859
+ "valueType": "number"
6860
+ },
6861
+ {
6862
+ "path": "binary",
6863
+ "valueType": "boolean"
6864
+ }
6865
+ ],
6866
+ "binary": [{
6867
+ "path": "on",
6868
+ "valueType": "boolean"
6869
+ }],
6870
+ "brightness": [{
6871
+ "path": "percentage",
6872
+ "valueType": "number"
6873
+ }],
6874
+ "broker": [{
6875
+ "path": "brokerCount",
6876
+ "valueType": "number"
6877
+ }, {
6878
+ "path": "connectedCount",
6879
+ "valueType": "number"
6880
+ }],
6881
+ "camera-credentials": [
6882
+ {
6883
+ "path": "host",
6884
+ "valueType": "string"
6885
+ },
6886
+ {
6887
+ "path": "port",
6888
+ "valueType": "number"
6889
+ },
6890
+ {
6891
+ "path": "onvifPort",
6892
+ "valueType": "number"
6893
+ },
6894
+ {
6895
+ "path": "rtspPort",
6896
+ "valueType": "number"
6897
+ },
6898
+ {
6899
+ "path": "https",
6900
+ "valueType": "boolean"
6901
+ },
6902
+ {
6903
+ "path": "hasUsername",
6904
+ "valueType": "boolean"
6905
+ },
6906
+ {
6907
+ "path": "hasPassword",
6908
+ "valueType": "boolean"
6909
+ },
6910
+ {
6911
+ "path": "onvifProfile",
6912
+ "valueType": "string"
6913
+ }
6914
+ ],
6915
+ "camera-streams": [
6916
+ {
6917
+ "path": "online",
6918
+ "valueType": "boolean"
6919
+ },
6920
+ {
6921
+ "path": "slotStatuses.high",
6922
+ "valueType": "enum",
6923
+ "enumValues": [
6924
+ "unassigned",
6925
+ "idle",
6926
+ "connecting",
6927
+ "streaming",
6928
+ "error"
6929
+ ]
6930
+ },
6931
+ {
6932
+ "path": "slotStatuses.mid",
6933
+ "valueType": "enum",
6934
+ "enumValues": [
6935
+ "unassigned",
6936
+ "idle",
6937
+ "connecting",
6938
+ "streaming",
6939
+ "error"
6940
+ ]
6941
+ },
6942
+ {
6943
+ "path": "slotStatuses.low",
6944
+ "valueType": "enum",
6945
+ "enumValues": [
6946
+ "unassigned",
6947
+ "idle",
6948
+ "connecting",
6949
+ "streaming",
6950
+ "error"
6951
+ ]
6952
+ },
6953
+ {
6954
+ "path": "slotErrors.high",
6955
+ "valueType": "string"
6956
+ },
6957
+ {
6958
+ "path": "slotErrors.mid",
6959
+ "valueType": "string"
6960
+ },
6961
+ {
6962
+ "path": "slotErrors.low",
6963
+ "valueType": "string"
6964
+ }
6965
+ ],
6966
+ "carbon-monoxide": [{
6967
+ "path": "detected",
6968
+ "valueType": "boolean"
6969
+ }],
6970
+ "climate-control": [
6971
+ {
6972
+ "path": "mode",
6973
+ "valueType": "enum",
6974
+ "enumValues": [
6975
+ "off",
6976
+ "heat",
6977
+ "cool",
6978
+ "auto",
6979
+ "heat_cool",
6980
+ "fan_only",
6981
+ "dry"
6982
+ ]
6983
+ },
6984
+ {
6985
+ "path": "fanMode",
6986
+ "valueType": "string"
6987
+ },
6988
+ {
6989
+ "path": "preset",
6990
+ "valueType": "string"
6991
+ },
6992
+ {
6993
+ "path": "target",
6994
+ "valueType": "number"
6995
+ },
6996
+ {
6997
+ "path": "targetHigh",
6998
+ "valueType": "number"
6999
+ },
7000
+ {
7001
+ "path": "targetLow",
7002
+ "valueType": "number"
7003
+ },
7004
+ {
7005
+ "path": "targetHumidity",
7006
+ "valueType": "number"
7007
+ },
7008
+ {
7009
+ "path": "currentTemp",
7010
+ "valueType": "number"
7011
+ },
7012
+ {
7013
+ "path": "currentHumidity",
7014
+ "valueType": "number"
7015
+ },
7016
+ {
7017
+ "path": "swingVertical",
7018
+ "valueType": "boolean"
7019
+ },
7020
+ {
7021
+ "path": "swingHorizontal",
7022
+ "valueType": "boolean"
7023
+ },
7024
+ {
7025
+ "path": "minTemp",
7026
+ "valueType": "number"
7027
+ },
7028
+ {
7029
+ "path": "maxTemp",
7030
+ "valueType": "number"
7031
+ },
7032
+ {
7033
+ "path": "tempStep",
7034
+ "valueType": "number"
7035
+ }
7036
+ ],
7037
+ "color": [
7038
+ {
7039
+ "path": "mode",
7040
+ "valueType": "enum",
7041
+ "enumValues": [
7042
+ "rgb",
7043
+ "hsv",
7044
+ "mired"
7045
+ ]
7046
+ },
7047
+ {
7048
+ "path": "rgb.r",
7049
+ "valueType": "number"
7050
+ },
7051
+ {
7052
+ "path": "rgb.g",
7053
+ "valueType": "number"
7054
+ },
7055
+ {
7056
+ "path": "rgb.b",
7057
+ "valueType": "number"
7058
+ },
7059
+ {
7060
+ "path": "hsv.h",
7061
+ "valueType": "number"
7062
+ },
7063
+ {
7064
+ "path": "hsv.s",
7065
+ "valueType": "number"
7066
+ },
7067
+ {
7068
+ "path": "hsv.v",
7069
+ "valueType": "number"
7070
+ },
7071
+ {
7072
+ "path": "mireds",
7073
+ "valueType": "number"
7074
+ }
7075
+ ],
7076
+ "connectivity": [{
7077
+ "path": "connected",
7078
+ "valueType": "boolean"
7079
+ }],
7080
+ "contact": [{
7081
+ "path": "entryOpen",
7082
+ "valueType": "boolean"
7083
+ }],
7084
+ "control": [
7085
+ {
7086
+ "path": "kind",
7087
+ "valueType": "enum",
7088
+ "enumValues": [
7089
+ "numeric",
7090
+ "select",
7091
+ "text",
7092
+ "datetime"
7093
+ ]
7094
+ },
7095
+ {
7096
+ "path": "unit",
7097
+ "valueType": "string"
7098
+ },
7099
+ {
7100
+ "path": "min",
7101
+ "valueType": "number"
7102
+ },
7103
+ {
7104
+ "path": "max",
7105
+ "valueType": "number"
7106
+ },
7107
+ {
7108
+ "path": "step",
7109
+ "valueType": "number"
7110
+ },
7111
+ {
7112
+ "path": "precision",
7113
+ "valueType": "number"
7114
+ },
7115
+ {
7116
+ "path": "format",
7117
+ "valueType": "enum",
7118
+ "enumValues": [
7119
+ "date",
7120
+ "time",
7121
+ "datetime"
7122
+ ]
7123
+ }
7124
+ ],
7125
+ "cover": [
7126
+ {
7127
+ "path": "state",
7128
+ "valueType": "enum",
7129
+ "enumValues": [
7130
+ "open",
7131
+ "opening",
7132
+ "closing",
7133
+ "closed",
7134
+ "stopped"
7135
+ ]
7136
+ },
7137
+ {
7138
+ "path": "position",
7139
+ "valueType": "number"
7140
+ },
7141
+ {
7142
+ "path": "tiltPosition",
7143
+ "valueType": "number"
7144
+ }
7145
+ ],
7146
+ "day-night": [
7147
+ {
7148
+ "path": "mode",
7149
+ "valueType": "enum",
7150
+ "enumValues": [
7151
+ "auto",
7152
+ "day",
7153
+ "night",
7154
+ "schedule"
7155
+ ]
7156
+ },
7157
+ {
7158
+ "path": "sensitivity",
7159
+ "valueType": "number"
7160
+ },
7161
+ {
7162
+ "path": "switchDelaySec",
7163
+ "valueType": "number"
7164
+ }
7165
+ ],
7166
+ "device-adoption": [
7167
+ {
7168
+ "path": "lastDiscoveryAt",
7169
+ "valueType": "number"
7170
+ },
7171
+ {
7172
+ "path": "candidateCount",
7173
+ "valueType": "number"
7174
+ },
7175
+ {
7176
+ "path": "adoptedCount",
7177
+ "valueType": "number"
7178
+ },
7179
+ {
7180
+ "path": "lastError",
7181
+ "valueType": "string"
7182
+ }
7183
+ ],
7184
+ "device-discovery": [{
7185
+ "path": "lastDiscoveryAt",
7186
+ "valueType": "number"
7187
+ }, {
7188
+ "path": "lastError",
7189
+ "valueType": "string"
7190
+ }],
7191
+ "device-export": [
7192
+ {
7193
+ "path": "linkState",
7194
+ "valueType": "enum",
7195
+ "enumValues": [
7196
+ "unlinked",
7197
+ "linked",
7198
+ "error"
7199
+ ]
7200
+ },
7201
+ {
7202
+ "path": "exposedDeviceCount",
7203
+ "valueType": "number"
7204
+ },
7205
+ {
7206
+ "path": "error",
7207
+ "valueType": "string"
7208
+ },
7209
+ {
7210
+ "path": "setup.qr",
7211
+ "valueType": "string"
7212
+ },
7213
+ {
7214
+ "path": "setup.note",
7215
+ "valueType": "string"
7216
+ }
7217
+ ],
7218
+ "device-status": [{
7219
+ "path": "online",
7220
+ "valueType": "boolean"
7221
+ }],
7222
+ "dishwasher": [
7223
+ {
7224
+ "path": "availability",
7225
+ "valueType": "enum",
7226
+ "enumValues": [
7227
+ "available",
7228
+ "offline",
7229
+ "description-missing"
7230
+ ]
7231
+ },
7232
+ {
7233
+ "path": "state",
7234
+ "valueType": "enum",
7235
+ "enumValues": [
7236
+ "idle",
7237
+ "running",
7238
+ "paused",
7239
+ "finished",
7240
+ "error",
7241
+ "unavailable"
7242
+ ]
7243
+ },
7244
+ {
7245
+ "path": "operationState",
7246
+ "valueType": "enum",
7247
+ "enumValues": [
7248
+ "Inactive",
7249
+ "Ready",
7250
+ "DelayedStart",
7251
+ "Run",
7252
+ "Pause",
7253
+ "ActionRequired",
7254
+ "Finished",
7255
+ "Error",
7256
+ "Aborting"
7257
+ ]
7258
+ },
7259
+ {
7260
+ "path": "program",
7261
+ "valueType": "string"
7262
+ },
7263
+ {
7264
+ "path": "selectedProgram",
7265
+ "valueType": "string"
7266
+ },
7267
+ {
7268
+ "path": "remainingSeconds",
7269
+ "valueType": "number"
7270
+ },
7271
+ {
7272
+ "path": "delayedStartSeconds",
7273
+ "valueType": "number"
7274
+ },
7275
+ {
7276
+ "path": "progressPercent",
7277
+ "valueType": "number"
7278
+ },
7279
+ {
7280
+ "path": "doorOpen",
7281
+ "valueType": "boolean"
7282
+ },
7283
+ {
7284
+ "path": "doorLocked",
7285
+ "valueType": "boolean"
7286
+ },
7287
+ {
7288
+ "path": "remoteStartAllowed",
7289
+ "valueType": "boolean"
7290
+ },
7291
+ {
7292
+ "path": "remoteControlActive",
7293
+ "valueType": "boolean"
7294
+ },
7295
+ {
7296
+ "path": "localControlActive",
7297
+ "valueType": "boolean"
7298
+ },
7299
+ {
7300
+ "path": "powerOn",
7301
+ "valueType": "boolean"
7302
+ },
7303
+ {
7304
+ "path": "powerState",
7305
+ "valueType": "string"
7306
+ },
7307
+ {
7308
+ "path": "filterCleaningDue",
7309
+ "valueType": "boolean"
7310
+ },
7311
+ {
7312
+ "path": "machineCareDue",
7313
+ "valueType": "boolean"
7314
+ },
7315
+ {
7316
+ "path": "machineCareRemainingRuns",
7317
+ "valueType": "number"
7318
+ },
7319
+ {
7320
+ "path": "halfLoad",
7321
+ "valueType": "boolean"
7322
+ },
7323
+ {
7324
+ "path": "hygienePlus",
7325
+ "valueType": "boolean"
7326
+ },
7327
+ {
7328
+ "path": "extraDry",
7329
+ "valueType": "boolean"
7330
+ },
7331
+ {
7332
+ "path": "intensiveZone",
7333
+ "valueType": "boolean"
7334
+ },
7335
+ {
7336
+ "path": "varioSpeedPlus",
7337
+ "valueType": "boolean"
7338
+ },
7339
+ {
7340
+ "path": "childLock",
7341
+ "valueType": "boolean"
7342
+ },
7343
+ {
7344
+ "path": "errorCode",
7345
+ "valueType": "number"
7346
+ },
7347
+ {
7348
+ "path": "errorLabel",
7349
+ "valueType": "string"
7350
+ }
7351
+ ],
7352
+ "doorbell": [{
7353
+ "path": "lastPressedAt",
7354
+ "valueType": "number"
7355
+ }, {
7356
+ "path": "pressCountSinceStart",
7357
+ "valueType": "number"
7358
+ }],
7359
+ "enum-sensor": [{
7360
+ "path": "value",
7361
+ "valueType": "string"
7362
+ }, {
7363
+ "path": "format",
7364
+ "valueType": "enum",
7365
+ "enumValues": [
7366
+ "date",
7367
+ "time",
7368
+ "datetime"
7369
+ ]
7370
+ }],
7371
+ "event-emitter": [
7372
+ {
7373
+ "path": "lastEvent.deviceId",
7374
+ "valueType": "number"
7375
+ },
7376
+ {
7377
+ "path": "lastEvent.eventType",
7378
+ "valueType": "string"
7379
+ },
7380
+ {
7381
+ "path": "lastEvent.timestamp",
7382
+ "valueType": "number"
7383
+ },
7384
+ {
7385
+ "path": "lastEvent.seq",
7386
+ "valueType": "number"
7387
+ },
7388
+ {
7389
+ "path": "eventCountSinceStart",
7390
+ "valueType": "number"
7391
+ }
7392
+ ],
7393
+ "fan-control": [
7394
+ {
7395
+ "path": "percentage",
7396
+ "valueType": "number"
7397
+ },
7398
+ {
7399
+ "path": "percentageStep",
7400
+ "valueType": "number"
7401
+ },
7402
+ {
7403
+ "path": "preset",
7404
+ "valueType": "string"
7405
+ },
7406
+ {
7407
+ "path": "direction",
7408
+ "valueType": "enum",
7409
+ "enumValues": ["forward", "reverse"]
7410
+ },
7411
+ {
7412
+ "path": "oscillating",
7413
+ "valueType": "boolean"
7414
+ }
7415
+ ],
7416
+ "feature-probe": [
7417
+ {
7418
+ "path": "deviceType",
7419
+ "valueType": "string"
7420
+ },
7421
+ {
7422
+ "path": "model",
7423
+ "valueType": "string"
7424
+ },
7425
+ {
7426
+ "path": "channelCount",
7427
+ "valueType": "number"
7428
+ },
7429
+ {
7430
+ "path": "lastProbedAt",
7431
+ "valueType": "number"
7432
+ }
7433
+ ],
7434
+ "flood": [{
7435
+ "path": "flooded",
7436
+ "valueType": "boolean"
7437
+ }],
7438
+ "gas": [{
7439
+ "path": "detected",
7440
+ "valueType": "boolean"
7441
+ }],
7442
+ "heating-valve": [{
7443
+ "path": "position",
7444
+ "valueType": "number"
7445
+ }],
7446
+ "humidifier": [
7447
+ {
7448
+ "path": "on",
7449
+ "valueType": "boolean"
7450
+ },
7451
+ {
7452
+ "path": "currentHumidity",
7453
+ "valueType": "number"
7454
+ },
7455
+ {
7456
+ "path": "targetHumidity",
7457
+ "valueType": "number"
7458
+ },
7459
+ {
7460
+ "path": "mode",
7461
+ "valueType": "string"
7462
+ },
7463
+ {
7464
+ "path": "action",
7465
+ "valueType": "string"
7466
+ },
7467
+ {
7468
+ "path": "minHumidity",
7469
+ "valueType": "number"
7470
+ },
7471
+ {
7472
+ "path": "maxHumidity",
7473
+ "valueType": "number"
7474
+ }
7475
+ ],
7476
+ "humidity-sensor": [
7477
+ {
7478
+ "path": "percent",
7479
+ "valueType": "number"
7480
+ },
7481
+ {
7482
+ "path": "unit",
7483
+ "valueType": "string"
7484
+ },
7485
+ {
7486
+ "path": "precision",
7487
+ "valueType": "number"
7488
+ }
7489
+ ],
7490
+ "image": [{
7491
+ "path": "url",
7492
+ "valueType": "string"
7493
+ }, {
7494
+ "path": "lastUpdated",
7495
+ "valueType": "number"
7496
+ }],
7497
+ "image-settings": [
7498
+ {
7499
+ "path": "brightness",
7500
+ "valueType": "number"
7501
+ },
7502
+ {
7503
+ "path": "contrast",
7504
+ "valueType": "number"
7505
+ },
7506
+ {
7507
+ "path": "saturation",
7508
+ "valueType": "number"
7509
+ },
7510
+ {
7511
+ "path": "sharpness",
7512
+ "valueType": "number"
7513
+ },
7514
+ {
7515
+ "path": "mirror",
7516
+ "valueType": "boolean"
7517
+ },
7518
+ {
7519
+ "path": "flip",
7520
+ "valueType": "boolean"
7521
+ },
7522
+ {
7523
+ "path": "rotate",
7524
+ "valueType": "enum",
7525
+ "enumValues": [
7526
+ "0",
7527
+ "90",
7528
+ "180",
7529
+ "270"
7530
+ ]
7531
+ },
7532
+ {
7533
+ "path": "whiteBalance",
7534
+ "valueType": "enum",
7535
+ "enumValues": ["auto", "manual"]
7536
+ },
7537
+ {
7538
+ "path": "warmth",
7539
+ "valueType": "number"
7540
+ },
7541
+ {
7542
+ "path": "exposureMode",
7543
+ "valueType": "enum",
7544
+ "enumValues": ["auto", "manual"]
7545
+ },
7546
+ {
7547
+ "path": "backlightMode",
7548
+ "valueType": "enum",
7549
+ "enumValues": [
7550
+ "off",
7551
+ "blc",
7552
+ "wdr",
7553
+ "hlc"
7554
+ ]
7555
+ }
7556
+ ],
7557
+ "intercom": [
7558
+ {
7559
+ "path": "talking",
7560
+ "valueType": "boolean"
7561
+ },
7562
+ {
7563
+ "path": "lastSessionAt",
7564
+ "valueType": "number"
7565
+ },
7566
+ {
7567
+ "path": "ability.sampleRate",
7568
+ "valueType": "number"
7569
+ },
7570
+ {
7571
+ "path": "ability.duplex",
7572
+ "valueType": "enum",
7573
+ "enumValues": ["half", "full"]
7574
+ },
7575
+ {
7576
+ "path": "ability.maxBacklogMs",
7577
+ "valueType": "number"
7578
+ }
7579
+ ],
7580
+ "lawn-mower-control": [
7581
+ {
7582
+ "path": "activity",
7583
+ "valueType": "enum",
7584
+ "enumValues": [
7585
+ "idle",
7586
+ "mowing",
7587
+ "paused",
7588
+ "docked",
7589
+ "error"
7590
+ ]
7591
+ },
7592
+ {
7593
+ "path": "batteryLevel",
7594
+ "valueType": "number"
7595
+ },
7596
+ {
7597
+ "path": "progressPercent",
7598
+ "valueType": "number"
7599
+ },
7600
+ {
7601
+ "path": "currentCode",
7602
+ "valueType": "number"
7603
+ },
7604
+ {
7605
+ "path": "currentCodeLabel",
7606
+ "valueType": "string"
7607
+ },
7608
+ {
7609
+ "path": "severity",
7610
+ "valueType": "enum",
7611
+ "enumValues": [
7612
+ "info",
7613
+ "warning",
7614
+ "error"
7615
+ ]
7616
+ }
7617
+ ],
7618
+ "lock-control": [{
7619
+ "path": "state",
7620
+ "valueType": "enum",
7621
+ "enumValues": [
7622
+ "locked",
7623
+ "unlocked",
7624
+ "locking",
7625
+ "unlocking",
7626
+ "jammed"
7627
+ ]
7628
+ }],
7629
+ "media-player": [
7630
+ {
7631
+ "path": "state",
7632
+ "valueType": "enum",
7633
+ "enumValues": [
7634
+ "off",
7635
+ "on",
7636
+ "idle",
7637
+ "playing",
7638
+ "paused",
7639
+ "buffering",
7640
+ "standby"
7641
+ ]
7642
+ },
7643
+ {
7644
+ "path": "volumeLevel",
7645
+ "valueType": "number"
7646
+ },
7647
+ {
7648
+ "path": "isMuted",
7649
+ "valueType": "boolean"
7650
+ },
7651
+ {
7652
+ "path": "source",
7653
+ "valueType": "string"
7654
+ },
7655
+ {
7656
+ "path": "currentMedia.type",
7657
+ "valueType": "string"
7658
+ },
7659
+ {
7660
+ "path": "currentMedia.title",
7661
+ "valueType": "string"
7662
+ },
7663
+ {
7664
+ "path": "currentMedia.artist",
7665
+ "valueType": "string"
7666
+ },
7667
+ {
7668
+ "path": "currentMedia.album",
7669
+ "valueType": "string"
7670
+ },
7671
+ {
7672
+ "path": "currentMedia.imageUrl",
7673
+ "valueType": "string"
7674
+ },
7675
+ {
7676
+ "path": "positionMs",
7677
+ "valueType": "number"
7678
+ },
7679
+ {
7680
+ "path": "durationMs",
7681
+ "valueType": "number"
7682
+ },
7683
+ {
7684
+ "path": "shuffle",
7685
+ "valueType": "boolean"
7686
+ },
7687
+ {
7688
+ "path": "repeat",
7689
+ "valueType": "enum",
7690
+ "enumValues": [
7691
+ "off",
7692
+ "all",
7693
+ "one"
7694
+ ]
7695
+ }
7696
+ ],
7697
+ "motion": [
7698
+ {
7699
+ "path": "detected",
7700
+ "valueType": "boolean"
7701
+ },
7702
+ {
7703
+ "path": "lastDetectedAt",
7704
+ "valueType": "number"
7705
+ },
7706
+ {
7707
+ "path": "autoClearAfterMs",
7708
+ "valueType": "number"
7709
+ }
7710
+ ],
7711
+ "motion-trigger": [{
7712
+ "path": "enabled",
7713
+ "valueType": "boolean"
7714
+ }],
7715
+ "motion-zones": [{
7716
+ "path": "enabled",
7717
+ "valueType": "boolean"
7718
+ }, {
7719
+ "path": "sensitivity",
7720
+ "valueType": "number"
7721
+ }],
7722
+ "mqtt-broker": [{
7723
+ "path": "brokerCount",
7724
+ "valueType": "number"
7725
+ }, {
7726
+ "path": "embeddedRunning",
7727
+ "valueType": "boolean"
7728
+ }],
7729
+ "native-object-detection": [{
7730
+ "path": "enabled",
7731
+ "valueType": "boolean"
7732
+ }],
7733
+ "navigation": [
7734
+ {
7735
+ "path": "mode",
7736
+ "valueType": "enum",
7737
+ "enumValues": [
7738
+ "idle",
7739
+ "cleaning",
7740
+ "spot",
7741
+ "following",
7742
+ "goto",
7743
+ "returning",
7744
+ "paused",
7745
+ "unknown"
7746
+ ]
7747
+ },
7748
+ {
7749
+ "path": "following",
7750
+ "valueType": "boolean"
7751
+ },
7752
+ {
7753
+ "path": "flash",
7754
+ "valueType": "boolean"
7755
+ },
7756
+ {
7757
+ "path": "lightMode",
7758
+ "valueType": "enum",
7759
+ "enumValues": ["auto", "manual"]
7760
+ },
7761
+ {
7762
+ "path": "lightLevel",
7763
+ "valueType": "number"
7764
+ }
7765
+ ],
7766
+ "network-link": [
7767
+ {
7768
+ "path": "type",
7769
+ "valueType": "enum",
7770
+ "enumValues": [
7771
+ "wifi",
7772
+ "ethernet",
7773
+ "cellular",
7774
+ "unknown"
7775
+ ]
7776
+ },
7777
+ {
7778
+ "path": "signalPercent",
7779
+ "valueType": "number"
7780
+ },
7781
+ {
7782
+ "path": "rssiDbm",
7783
+ "valueType": "number"
7784
+ },
7785
+ {
7786
+ "path": "ssid",
7787
+ "valueType": "string"
7788
+ },
7789
+ {
7790
+ "path": "lastUpdated",
7791
+ "valueType": "number"
7792
+ }
7793
+ ],
7794
+ "notifier": [
7795
+ {
7796
+ "path": "lastSentAt",
7797
+ "valueType": "number"
7798
+ },
7799
+ {
7800
+ "path": "lastError",
7801
+ "valueType": "string"
7802
+ },
7803
+ {
7804
+ "path": "queueDepth",
7805
+ "valueType": "number"
7806
+ },
7807
+ {
7808
+ "path": "supports.image",
7809
+ "valueType": "boolean"
7810
+ },
7811
+ {
7812
+ "path": "supports.priority",
7813
+ "valueType": "boolean"
7814
+ },
7815
+ {
7816
+ "path": "supports.data",
7817
+ "valueType": "boolean"
7818
+ },
7819
+ {
7820
+ "path": "supports.actions",
7821
+ "valueType": "boolean"
7822
+ },
7823
+ {
7824
+ "path": "supports.recipients",
7825
+ "valueType": "boolean"
7826
+ }
7827
+ ],
7828
+ "numeric-sensor": [
7829
+ {
7830
+ "path": "value",
7831
+ "valueType": "number"
7832
+ },
7833
+ {
7834
+ "path": "unit",
7835
+ "valueType": "string"
7836
+ },
7837
+ {
7838
+ "path": "precision",
7839
+ "valueType": "number"
7840
+ }
7841
+ ],
7842
+ "pet-feeder": [
7843
+ {
7844
+ "path": "foodLevel",
7845
+ "valueType": "number"
7846
+ },
7847
+ {
7848
+ "path": "food1",
7849
+ "valueType": "number"
7850
+ },
7851
+ {
7852
+ "path": "food2",
7853
+ "valueType": "number"
7854
+ },
7855
+ {
7856
+ "path": "lowFood",
7857
+ "valueType": "boolean"
7858
+ },
7859
+ {
7860
+ "path": "batteryPower",
7861
+ "valueType": "number"
7862
+ },
7863
+ {
7864
+ "path": "desiccantLeftDays",
7865
+ "valueType": "number"
7866
+ },
7867
+ {
7868
+ "path": "feeding",
7869
+ "valueType": "boolean"
7870
+ },
7871
+ {
7872
+ "path": "status",
7873
+ "valueType": "enum",
7874
+ "enumValues": [
7875
+ "normal",
7876
+ "offline",
7877
+ "on_batteries"
7878
+ ]
7879
+ },
7880
+ {
7881
+ "path": "error",
7882
+ "valueType": "string"
7883
+ },
7884
+ {
7885
+ "path": "errorCode",
7886
+ "valueType": "number"
7887
+ },
7888
+ {
7889
+ "path": "isDualHopper",
7890
+ "valueType": "boolean"
7891
+ },
7892
+ {
7893
+ "path": "childLock",
7894
+ "valueType": "boolean"
7895
+ },
7896
+ {
7897
+ "path": "indicatorLight",
7898
+ "valueType": "boolean"
7899
+ },
7900
+ {
7901
+ "path": "feedSound",
7902
+ "valueType": "boolean"
7903
+ },
7904
+ {
7905
+ "path": "volume",
7906
+ "valueType": "number"
7907
+ }
7908
+ ],
7909
+ "power-meter": [
7910
+ {
7911
+ "path": "watts",
7912
+ "valueType": "number"
7913
+ },
7914
+ {
7915
+ "path": "kwhTotal",
7916
+ "valueType": "number"
7917
+ },
7918
+ {
7919
+ "path": "volts",
7920
+ "valueType": "number"
7921
+ },
7922
+ {
7923
+ "path": "amps",
7924
+ "valueType": "number"
7925
+ },
7926
+ {
7927
+ "path": "va",
7928
+ "valueType": "number"
7929
+ },
7930
+ {
7931
+ "path": "powerFactor",
7932
+ "valueType": "number"
7933
+ },
7934
+ {
7935
+ "path": "unit",
7936
+ "valueType": "string"
7937
+ },
7938
+ {
7939
+ "path": "precision",
7940
+ "valueType": "number"
7941
+ }
7942
+ ],
7943
+ "presence": [
7944
+ {
7945
+ "path": "state",
7946
+ "valueType": "string"
7947
+ },
7948
+ {
7949
+ "path": "location",
7950
+ "valueType": "string"
7951
+ },
7952
+ {
7953
+ "path": "gps.latitude",
7954
+ "valueType": "number"
7955
+ },
7956
+ {
7957
+ "path": "gps.longitude",
7958
+ "valueType": "number"
7959
+ },
7960
+ {
7961
+ "path": "gps.accuracyMeters",
7962
+ "valueType": "number"
7963
+ },
7964
+ {
7965
+ "path": "batteryPercent",
7966
+ "valueType": "number"
7967
+ }
7968
+ ],
7969
+ "pressure-sensor": [
7970
+ {
7971
+ "path": "hpa",
7972
+ "valueType": "number"
7973
+ },
7974
+ {
7975
+ "path": "unit",
7976
+ "valueType": "string"
7977
+ },
7978
+ {
7979
+ "path": "precision",
7980
+ "valueType": "number"
7981
+ }
7982
+ ],
7983
+ "privacy-mask": [{
7984
+ "path": "enabled",
7985
+ "valueType": "boolean"
7986
+ }, {
7987
+ "path": "audioEnabled",
7988
+ "valueType": "boolean"
7989
+ }],
7990
+ "ptz": [
7991
+ {
7992
+ "path": "pan",
7993
+ "valueType": "number"
7994
+ },
7995
+ {
7996
+ "path": "tilt",
7997
+ "valueType": "number"
7998
+ },
7999
+ {
8000
+ "path": "zoom",
8001
+ "valueType": "number"
8002
+ },
8003
+ {
8004
+ "path": "autofocus",
8005
+ "valueType": "boolean"
8006
+ }
8007
+ ],
8008
+ "ptz-autotrack": [
8009
+ {
8010
+ "path": "enabled",
8011
+ "valueType": "boolean"
8012
+ },
8013
+ {
8014
+ "path": "currentSettings.targetType",
8015
+ "valueType": "string"
8016
+ },
8017
+ {
8018
+ "path": "currentSettings.stopDelaySeconds",
8019
+ "valueType": "number"
8020
+ },
8021
+ {
8022
+ "path": "currentSettings.disappearDelaySeconds",
8023
+ "valueType": "number"
8024
+ }
8025
+ ],
8026
+ "recording-archive": [
8027
+ {
8028
+ "path": "deviceId",
8029
+ "valueType": "number"
8030
+ },
8031
+ {
8032
+ "path": "enabled",
8033
+ "valueType": "boolean"
8034
+ },
8035
+ {
8036
+ "path": "activeMode",
8037
+ "valueType": "enum",
8038
+ "enumValues": [
8039
+ "off",
8040
+ "events",
8041
+ "continuous",
8042
+ "on-device-decision"
8043
+ ]
8044
+ },
8045
+ {
8046
+ "path": "nodeId",
8047
+ "valueType": "string"
8048
+ },
8049
+ {
8050
+ "path": "storageBytes",
8051
+ "valueType": "number"
8052
+ }
8053
+ ],
8054
+ "recording-onboard": [
8055
+ {
8056
+ "path": "primaryTrackId",
8057
+ "valueType": "string"
8058
+ },
8059
+ {
8060
+ "path": "enabled",
8061
+ "valueType": "boolean"
8062
+ },
8063
+ {
8064
+ "path": "overwriteWhenFull",
8065
+ "valueType": "boolean"
8066
+ },
8067
+ {
8068
+ "path": "preRecordSec",
8069
+ "valueType": "number"
8070
+ },
8071
+ {
8072
+ "path": "postRecordSec",
8073
+ "valueType": "number"
8074
+ },
8075
+ {
8076
+ "path": "segmentMinutes",
8077
+ "valueType": "number"
8078
+ },
8079
+ {
8080
+ "path": "unreadableWindows",
8081
+ "valueType": "number"
8082
+ },
8083
+ {
8084
+ "path": "recordingToNowhere",
8085
+ "valueType": "boolean"
8086
+ }
8087
+ ],
8088
+ "recording-signal": [{
8089
+ "path": "active",
8090
+ "valueType": "boolean"
8091
+ }, {
8092
+ "path": "reason",
8093
+ "valueType": "string"
8094
+ }],
8095
+ "running-state": [
8096
+ {
8097
+ "path": "running",
8098
+ "valueType": "boolean"
8099
+ },
8100
+ {
8101
+ "path": "since",
8102
+ "valueType": "number"
8103
+ },
8104
+ {
8105
+ "path": "source",
8106
+ "valueType": "enum",
8107
+ "enumValues": ["native", "assigned"]
8108
+ },
8109
+ {
8110
+ "path": "phase",
8111
+ "valueType": "string"
8112
+ }
8113
+ ],
8114
+ "script-runner": [
8115
+ {
8116
+ "path": "isRunning",
8117
+ "valueType": "boolean"
8118
+ },
8119
+ {
8120
+ "path": "lastRunAt",
8121
+ "valueType": "number"
8122
+ },
8123
+ {
8124
+ "path": "lastRunSuccess",
8125
+ "valueType": "boolean"
8126
+ },
8127
+ {
8128
+ "path": "lastError",
8129
+ "valueType": "string"
8130
+ }
8131
+ ],
8132
+ "smoke": [{
8133
+ "path": "detected",
8134
+ "valueType": "boolean"
8135
+ }],
8136
+ "snapshot": [
8137
+ {
8138
+ "path": "lastCapturedAt",
8139
+ "valueType": "number"
8140
+ },
8141
+ {
8142
+ "path": "cacheAgeMs",
8143
+ "valueType": "number"
8144
+ },
8145
+ {
8146
+ "path": "lastBytes",
8147
+ "valueType": "number"
8148
+ },
8149
+ {
8150
+ "path": "lastStreamId",
8151
+ "valueType": "string"
8152
+ }
8153
+ ],
8154
+ "stream-params": [
8155
+ {
8156
+ "path": "main.width",
8157
+ "valueType": "number"
8158
+ },
8159
+ {
8160
+ "path": "main.height",
8161
+ "valueType": "number"
8162
+ },
8163
+ {
8164
+ "path": "main.codec",
8165
+ "valueType": "enum",
8166
+ "enumValues": ["h264", "h265"]
8167
+ },
8168
+ {
8169
+ "path": "main.framerate",
8170
+ "valueType": "number"
8171
+ },
8172
+ {
8173
+ "path": "main.bitrate",
8174
+ "valueType": "number"
8175
+ },
8176
+ {
8177
+ "path": "main.bitrateMode",
8178
+ "valueType": "enum",
8179
+ "enumValues": ["vbr", "cbr"]
8180
+ },
8181
+ {
8182
+ "path": "main.encoderProfile",
8183
+ "valueType": "enum",
8184
+ "enumValues": [
8185
+ "high",
8186
+ "main",
8187
+ "baseline"
8188
+ ]
8189
+ },
8190
+ {
8191
+ "path": "main.gop",
8192
+ "valueType": "number"
8193
+ },
8194
+ {
8195
+ "path": "main.audio",
8196
+ "valueType": "boolean"
8197
+ },
8198
+ {
8199
+ "path": "sub.width",
8200
+ "valueType": "number"
8201
+ },
8202
+ {
8203
+ "path": "sub.height",
8204
+ "valueType": "number"
8205
+ },
8206
+ {
8207
+ "path": "sub.codec",
8208
+ "valueType": "enum",
8209
+ "enumValues": ["h264", "h265"]
8210
+ },
8211
+ {
8212
+ "path": "sub.framerate",
8213
+ "valueType": "number"
8214
+ },
8215
+ {
8216
+ "path": "sub.bitrate",
8217
+ "valueType": "number"
8218
+ },
8219
+ {
8220
+ "path": "sub.bitrateMode",
8221
+ "valueType": "enum",
8222
+ "enumValues": ["vbr", "cbr"]
8223
+ },
8224
+ {
8225
+ "path": "sub.encoderProfile",
8226
+ "valueType": "enum",
8227
+ "enumValues": [
8228
+ "high",
8229
+ "main",
8230
+ "baseline"
8231
+ ]
8232
+ },
8233
+ {
8234
+ "path": "sub.gop",
8235
+ "valueType": "number"
8236
+ },
8237
+ {
8238
+ "path": "sub.audio",
8239
+ "valueType": "boolean"
8240
+ },
8241
+ {
8242
+ "path": "ext.width",
8243
+ "valueType": "number"
8244
+ },
8245
+ {
8246
+ "path": "ext.height",
8247
+ "valueType": "number"
8248
+ },
8249
+ {
8250
+ "path": "ext.codec",
8251
+ "valueType": "enum",
8252
+ "enumValues": ["h264", "h265"]
8253
+ },
8254
+ {
8255
+ "path": "ext.framerate",
8256
+ "valueType": "number"
8257
+ },
8258
+ {
8259
+ "path": "ext.bitrate",
8260
+ "valueType": "number"
8261
+ },
8262
+ {
8263
+ "path": "ext.bitrateMode",
8264
+ "valueType": "enum",
8265
+ "enumValues": ["vbr", "cbr"]
8266
+ },
8267
+ {
8268
+ "path": "ext.encoderProfile",
8269
+ "valueType": "enum",
8270
+ "enumValues": [
8271
+ "high",
8272
+ "main",
8273
+ "baseline"
8274
+ ]
8275
+ },
8276
+ {
8277
+ "path": "ext.gop",
8278
+ "valueType": "number"
8279
+ },
8280
+ {
8281
+ "path": "ext.audio",
8282
+ "valueType": "boolean"
8283
+ }
8284
+ ],
8285
+ "switch": [{
8286
+ "path": "on",
8287
+ "valueType": "boolean"
8288
+ }],
8289
+ "tamper": [{
8290
+ "path": "tampered",
8291
+ "valueType": "boolean"
8292
+ }],
8293
+ "temperature-sensor": [
8294
+ {
8295
+ "path": "celsius",
8296
+ "valueType": "number"
8297
+ },
8298
+ {
8299
+ "path": "unit",
8300
+ "valueType": "string"
8301
+ },
8302
+ {
8303
+ "path": "precision",
8304
+ "valueType": "number"
8305
+ }
8306
+ ],
8307
+ "update": [
8308
+ {
8309
+ "path": "currentVersion",
8310
+ "valueType": "string"
8311
+ },
8312
+ {
8313
+ "path": "availableVersion",
8314
+ "valueType": "string"
8315
+ },
8316
+ {
8317
+ "path": "updatable",
8318
+ "valueType": "boolean"
8319
+ },
8320
+ {
8321
+ "path": "state",
8322
+ "valueType": "string"
8323
+ },
8324
+ {
8325
+ "path": "inProgress",
8326
+ "valueType": "boolean"
8327
+ }
8328
+ ],
8329
+ "vacuum-control": [
8330
+ {
8331
+ "path": "state",
8332
+ "valueType": "enum",
8333
+ "enumValues": [
8334
+ "idle",
8335
+ "cleaning",
8336
+ "paused",
8337
+ "returning",
8338
+ "docked",
8339
+ "drying",
8340
+ "error"
8341
+ ]
8342
+ },
8343
+ {
8344
+ "path": "batteryLevel",
8345
+ "valueType": "number"
8346
+ },
8347
+ {
8348
+ "path": "fanSpeed",
8349
+ "valueType": "string"
8350
+ },
8351
+ {
8352
+ "path": "progressPercent",
8353
+ "valueType": "number"
8354
+ },
8355
+ {
8356
+ "path": "errorCode",
8357
+ "valueType": "number"
8358
+ },
8359
+ {
8360
+ "path": "errorLabel",
8361
+ "valueType": "string"
8362
+ }
8363
+ ],
8364
+ "valve": [{
8365
+ "path": "state",
8366
+ "valueType": "enum",
8367
+ "enumValues": [
8368
+ "open",
8369
+ "opening",
8370
+ "closing",
8371
+ "closed",
8372
+ "stopped"
8373
+ ]
8374
+ }, {
8375
+ "path": "position",
8376
+ "valueType": "number"
8377
+ }],
8378
+ "vibration": [{
8379
+ "path": "detected",
8380
+ "valueType": "boolean"
8381
+ }],
8382
+ "water-heater": [
8383
+ {
8384
+ "path": "currentTemp",
8385
+ "valueType": "number"
8386
+ },
8387
+ {
8388
+ "path": "targetTemp",
8389
+ "valueType": "number"
8390
+ },
8391
+ {
8392
+ "path": "operationMode",
8393
+ "valueType": "string"
8394
+ },
8395
+ {
8396
+ "path": "away",
8397
+ "valueType": "boolean"
8398
+ },
8399
+ {
8400
+ "path": "minTemp",
8401
+ "valueType": "number"
8402
+ },
8403
+ {
8404
+ "path": "maxTemp",
8405
+ "valueType": "number"
8406
+ }
8407
+ ],
8408
+ "weather": [
8409
+ {
8410
+ "path": "condition",
8411
+ "valueType": "string"
8412
+ },
8413
+ {
8414
+ "path": "temperature",
8415
+ "valueType": "number"
8416
+ },
8417
+ {
8418
+ "path": "temperatureUnit",
8419
+ "valueType": "string"
8420
+ },
8421
+ {
8422
+ "path": "humidity",
8423
+ "valueType": "number"
8424
+ },
8425
+ {
8426
+ "path": "pressure",
8427
+ "valueType": "number"
8428
+ },
8429
+ {
8430
+ "path": "pressureUnit",
8431
+ "valueType": "string"
8432
+ },
8433
+ {
8434
+ "path": "windSpeed",
8435
+ "valueType": "number"
8436
+ },
8437
+ {
8438
+ "path": "windSpeedUnit",
8439
+ "valueType": "string"
8440
+ },
8441
+ {
8442
+ "path": "windBearing",
8443
+ "valueType": "number"
8444
+ }
8445
+ ],
8446
+ "zone-analytics": [
8447
+ {
8448
+ "path": "ts",
8449
+ "valueType": "number"
8450
+ },
8451
+ {
8452
+ "path": "frameWidth",
8453
+ "valueType": "number"
8454
+ },
8455
+ {
8456
+ "path": "frameHeight",
8457
+ "valueType": "number"
8458
+ },
8459
+ {
8460
+ "path": "frame.totalObjects",
8461
+ "valueType": "number"
8462
+ },
8463
+ {
8464
+ "path": "frame.standingObjects",
8465
+ "valueType": "number"
8466
+ },
8467
+ {
8468
+ "path": "frame.transientObjects",
8469
+ "valueType": "number"
8470
+ },
8471
+ {
8472
+ "path": "unzoned.totalObjects",
8473
+ "valueType": "number"
8474
+ },
8475
+ {
8476
+ "path": "unzoned.standingObjects",
8477
+ "valueType": "number"
8478
+ },
8479
+ {
8480
+ "path": "unzoned.transientObjects",
8481
+ "valueType": "number"
8482
+ }
8483
+ ]
8484
+ });
8485
+ //#endregion
6508
8486
  //#region src/constants.ts
6509
8487
  var HF_REPO = "camstack/camstack-models";
6510
8488
  var HF_BASE_URL = `https://huggingface.co/${HF_REPO}/resolve/main`;
@@ -6650,7 +8628,7 @@ function createLazyTrpcSource(api) {
6650
8628
  * populates `RegisterMessage.eventPatterns`, which is what the parent's
6651
8629
  * `broadcastEventToChildren` filters on. Without it the child never
6652
8630
  * declares interest and the 30 s `refresh()` timer was the only path a
6653
- * zone edit took to analytics (live, device 617, 2026-07-16).
8631
+ * zone edit took to analytics (live, device 102, 2026-07-16).
6654
8632
  */
6655
8633
  function createEventBusSliceSource(deps) {
6656
8634
  const { eventBus, api } = deps;
@@ -8247,12 +10225,30 @@ Object.defineProperty(exports, "CAM_PROFILE_ORDER", {
8247
10225
  return CAM_PROFILE_ORDER;
8248
10226
  }
8249
10227
  });
10228
+ Object.defineProperty(exports, "CAP_ADVANCE_FIELDS", {
10229
+ enumerable: true,
10230
+ get: function() {
10231
+ return CAP_ADVANCE_FIELDS;
10232
+ }
10233
+ });
10234
+ Object.defineProperty(exports, "CAP_NAMES", {
10235
+ enumerable: true,
10236
+ get: function() {
10237
+ return CAP_NAMES;
10238
+ }
10239
+ });
8250
10240
  Object.defineProperty(exports, "CAP_NODE_PIN_CONTEXT_KEY", {
8251
10241
  enumerable: true,
8252
10242
  get: function() {
8253
10243
  return CAP_NODE_PIN_CONTEXT_KEY;
8254
10244
  }
8255
10245
  });
10246
+ Object.defineProperty(exports, "CAP_STATE_LEAVES", {
10247
+ enumerable: true,
10248
+ get: function() {
10249
+ return CAP_STATE_LEAVES;
10250
+ }
10251
+ });
8256
10252
  Object.defineProperty(exports, "CamProfileSchema", {
8257
10253
  enumerable: true,
8258
10254
  get: function() {