@camstack/types 1.2.416 → 1.2.417

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 (54) hide show
  1. package/dist/addon.js +1 -1
  2. package/dist/addon.mjs +1 -1
  3. package/dist/capabilities/air-quality-sensor.cap.d.ts +2 -8
  4. package/dist/capabilities/ambient-light-sensor.cap.d.ts +3 -14
  5. package/dist/capabilities/battery.cap.d.ts +9 -2
  6. package/dist/capabilities/binary.cap.d.ts +0 -5
  7. package/dist/capabilities/capability-definition.d.ts +6 -6
  8. package/dist/capabilities/consumables.cap.d.ts +30 -41
  9. package/dist/capabilities/control.cap.d.ts +3 -25
  10. package/dist/capabilities/core-blocks.cap.d.ts +1 -0
  11. package/dist/capabilities/customize-catalog.d.ts +0 -8
  12. package/dist/capabilities/customize-spec.d.ts +2 -3
  13. package/dist/capabilities/device-manager.cap.d.ts +79 -0
  14. package/dist/capabilities/device-provider.cap.d.ts +36 -0
  15. package/dist/capabilities/enum-sensor.cap.d.ts +5 -17
  16. package/dist/capabilities/humidity-sensor.cap.d.ts +3 -14
  17. package/dist/capabilities/index.d.ts +1 -1
  18. package/dist/capabilities/motion.cap.d.ts +1 -1
  19. package/dist/capabilities/numeric-sensor.cap.d.ts +8 -16
  20. package/dist/capabilities/pet-feeder.cap.d.ts +1 -1
  21. package/dist/capabilities/power-meter.cap.d.ts +0 -11
  22. package/dist/capabilities/pressure-sensor.cap.d.ts +3 -9
  23. package/dist/capabilities/running-state.cap.d.ts +1 -2
  24. package/dist/capabilities/runtime-field-unit.d.ts +1 -0
  25. package/dist/capabilities/runtime-field-units.d.ts +8 -0
  26. package/dist/capabilities/switch.cap.d.ts +0 -5
  27. package/dist/capabilities/temperature-sensor.cap.d.ts +5 -20
  28. package/dist/capabilities/weather.cap.d.ts +4 -13
  29. package/dist/client.d.ts +2 -1
  30. package/dist/client.js +54 -5
  31. package/dist/client.mjs +52 -6
  32. package/dist/composition/composition-report.d.ts +8 -3
  33. package/dist/composition/state-fields.d.ts +1 -1
  34. package/dist/composition/validate-composition.d.ts +3 -2
  35. package/dist/device/cap-vocabulary/types.d.ts +2 -2
  36. package/dist/device/schema-fields.d.ts +3 -0
  37. package/dist/device/source-info.d.ts +12 -6
  38. package/dist/generated/addon-cap-facts.d.ts +1 -1
  39. package/dist/generated/customize-catalog.d.ts +11 -87
  40. package/dist/generated/history-catalog.d.ts +1 -1
  41. package/dist/index.d.ts +3 -1
  42. package/dist/index.js +755 -490
  43. package/dist/index.mjs +738 -490
  44. package/dist/{sleep-BErAxhul.mjs → sleep-CARd6wZF.mjs} +161 -128
  45. package/dist/{sleep-BPQ2ZyaI.js → sleep-gtskVoMw.js} +214 -127
  46. package/dist/units/convert.d.ts +5 -0
  47. package/dist/units/format-reading.d.ts +15 -0
  48. package/dist/units/index.d.ts +8 -1
  49. package/dist/units/ingest-reading.d.ts +21 -0
  50. package/dist/units/quantity.d.ts +47 -0
  51. package/dist/units/threshold.d.ts +6 -0
  52. package/dist/units/unit-table.d.ts +2 -228
  53. package/package.json +1 -1
  54. package/dist/capabilities/advanced-parameters.d.ts +0 -17
@@ -80,6 +80,12 @@ export declare const DeviceInfoSchema: z.ZodObject<{
80
80
  id: z.ZodString;
81
81
  system: z.ZodString;
82
82
  uniqueId: z.ZodOptional<z.ZodString>;
83
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
84
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
85
+ date: "date";
86
+ datetime: "datetime";
87
+ time: "time";
88
+ }>>;
83
89
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
84
90
  }, z.core.$strip>>;
85
91
  integrationId: z.ZodOptional<z.ZodString>;
@@ -257,6 +263,12 @@ export declare const DeviceMetaSchema: z.ZodObject<{
257
263
  id: z.ZodString;
258
264
  system: z.ZodString;
259
265
  uniqueId: z.ZodOptional<z.ZodString>;
266
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
267
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
268
+ date: "date";
269
+ datetime: "datetime";
270
+ time: "time";
271
+ }>>;
260
272
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
261
273
  }, z.core.$strip>>;
262
274
  integrationId: z.ZodOptional<z.ZodString>;
@@ -556,6 +568,12 @@ export declare const deviceManagerCapability: {
556
568
  id: z.ZodString;
557
569
  system: z.ZodString;
558
570
  uniqueId: z.ZodOptional<z.ZodString>;
571
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
572
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
573
+ date: "date";
574
+ datetime: "datetime";
575
+ time: "time";
576
+ }>>;
559
577
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
560
578
  }, z.core.$strip>>;
561
579
  integrationId: z.ZodOptional<z.ZodString>;
@@ -703,6 +721,7 @@ export declare const deviceManagerCapability: {
703
721
  }>;
704
722
  enumValues: z.ZodOptional<z.ZodArray<z.ZodString>>;
705
723
  item: z.ZodOptional<z.ZodBoolean>;
724
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
706
725
  }, z.core.$strip>>>;
707
726
  itemArray: z.ZodOptional<z.ZodObject<{
708
727
  path: z.ZodString;
@@ -972,6 +991,12 @@ export declare const deviceManagerCapability: {
972
991
  id: z.ZodString;
973
992
  system: z.ZodString;
974
993
  uniqueId: z.ZodOptional<z.ZodString>;
994
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
995
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
996
+ date: "date";
997
+ datetime: "datetime";
998
+ time: "time";
999
+ }>>;
975
1000
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
976
1001
  }, z.core.$strip>>;
977
1002
  integrationId: z.ZodOptional<z.ZodString>;
@@ -1019,6 +1044,12 @@ export declare const deviceManagerCapability: {
1019
1044
  id: z.ZodString;
1020
1045
  system: z.ZodString;
1021
1046
  uniqueId: z.ZodOptional<z.ZodString>;
1047
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
1048
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
1049
+ date: "date";
1050
+ datetime: "datetime";
1051
+ time: "time";
1052
+ }>>;
1022
1053
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1023
1054
  }, z.core.$strip>>;
1024
1055
  integrationId: z.ZodOptional<z.ZodString>;
@@ -1066,6 +1097,12 @@ export declare const deviceManagerCapability: {
1066
1097
  id: z.ZodString;
1067
1098
  system: z.ZodString;
1068
1099
  uniqueId: z.ZodOptional<z.ZodString>;
1100
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
1101
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
1102
+ date: "date";
1103
+ datetime: "datetime";
1104
+ time: "time";
1105
+ }>>;
1069
1106
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1070
1107
  }, z.core.$strip>>;
1071
1108
  integrationId: z.ZodOptional<z.ZodString>;
@@ -1144,6 +1181,12 @@ export declare const deviceManagerCapability: {
1144
1181
  id: z.ZodString;
1145
1182
  system: z.ZodString;
1146
1183
  uniqueId: z.ZodOptional<z.ZodString>;
1184
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
1185
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
1186
+ date: "date";
1187
+ datetime: "datetime";
1188
+ time: "time";
1189
+ }>>;
1147
1190
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1148
1191
  }, z.core.$strip>>;
1149
1192
  integrationId: z.ZodOptional<z.ZodString>;
@@ -1709,6 +1752,12 @@ export declare const deviceManagerCapability: {
1709
1752
  id: z.ZodString;
1710
1753
  system: z.ZodString;
1711
1754
  uniqueId: z.ZodOptional<z.ZodString>;
1755
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
1756
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
1757
+ date: "date";
1758
+ datetime: "datetime";
1759
+ time: "time";
1760
+ }>>;
1712
1761
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1713
1762
  }, z.core.$strip>>;
1714
1763
  alreadyOnboarded: z.ZodOptional<z.ZodBoolean>;
@@ -1727,6 +1776,12 @@ export declare const deviceManagerCapability: {
1727
1776
  id: z.ZodString;
1728
1777
  system: z.ZodString;
1729
1778
  uniqueId: z.ZodOptional<z.ZodString>;
1779
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
1780
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
1781
+ date: "date";
1782
+ datetime: "datetime";
1783
+ time: "time";
1784
+ }>>;
1730
1785
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1731
1786
  }, z.core.$strip>>;
1732
1787
  alreadyOnboarded: z.ZodOptional<z.ZodBoolean>;
@@ -1748,6 +1803,12 @@ export declare const deviceManagerCapability: {
1748
1803
  id: z.ZodString;
1749
1804
  system: z.ZodString;
1750
1805
  uniqueId: z.ZodOptional<z.ZodString>;
1806
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
1807
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
1808
+ date: "date";
1809
+ datetime: "datetime";
1810
+ time: "time";
1811
+ }>>;
1751
1812
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1752
1813
  }, z.core.$strip>>;
1753
1814
  }, z.core.$strip>, "mutation">;
@@ -1779,6 +1840,12 @@ export declare const deviceManagerCapability: {
1779
1840
  id: z.ZodString;
1780
1841
  system: z.ZodString;
1781
1842
  uniqueId: z.ZodOptional<z.ZodString>;
1843
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
1844
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
1845
+ date: "date";
1846
+ datetime: "datetime";
1847
+ time: "time";
1848
+ }>>;
1782
1849
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1783
1850
  }, z.core.$strip>>;
1784
1851
  }, z.core.$strip>, "mutation">;
@@ -1972,6 +2039,12 @@ export declare const deviceManagerCapability: {
1972
2039
  id: z.ZodString;
1973
2040
  system: z.ZodString;
1974
2041
  uniqueId: z.ZodOptional<z.ZodString>;
2042
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
2043
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
2044
+ date: "date";
2045
+ datetime: "datetime";
2046
+ time: "time";
2047
+ }>>;
1975
2048
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1976
2049
  }, z.core.$strip>>;
1977
2050
  alreadyOnboarded: z.ZodOptional<z.ZodBoolean>;
@@ -1996,6 +2069,12 @@ export declare const deviceManagerCapability: {
1996
2069
  id: z.ZodString;
1997
2070
  system: z.ZodString;
1998
2071
  uniqueId: z.ZodOptional<z.ZodString>;
2072
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
2073
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
2074
+ date: "date";
2075
+ datetime: "datetime";
2076
+ time: "time";
2077
+ }>>;
1999
2078
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2000
2079
  }, z.core.$strip>>;
2001
2080
  alreadyOnboarded: z.ZodOptional<z.ZodBoolean>;
@@ -27,6 +27,12 @@ declare const DiscoveryCandidateSchema: z.ZodObject<{
27
27
  id: z.ZodString;
28
28
  system: z.ZodString;
29
29
  uniqueId: z.ZodOptional<z.ZodString>;
30
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
31
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
32
+ date: "date";
33
+ datetime: "datetime";
34
+ time: "time";
35
+ }>>;
30
36
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
31
37
  }, z.core.$strip>>;
32
38
  alreadyOnboarded: z.ZodOptional<z.ZodBoolean>;
@@ -52,6 +58,12 @@ declare const DeviceSummarySchema: z.ZodObject<{
52
58
  id: z.ZodString;
53
59
  system: z.ZodString;
54
60
  uniqueId: z.ZodOptional<z.ZodString>;
61
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
62
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
63
+ date: "date";
64
+ datetime: "datetime";
65
+ time: "time";
66
+ }>>;
55
67
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
56
68
  }, z.core.$strip>>;
57
69
  }, z.core.$strip>;
@@ -135,6 +147,12 @@ export declare const deviceProviderCapability: {
135
147
  id: z.ZodString;
136
148
  system: z.ZodString;
137
149
  uniqueId: z.ZodOptional<z.ZodString>;
150
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
151
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
152
+ date: "date";
153
+ datetime: "datetime";
154
+ time: "time";
155
+ }>>;
138
156
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
139
157
  }, z.core.$strip>>;
140
158
  alreadyOnboarded: z.ZodOptional<z.ZodBoolean>;
@@ -167,6 +185,12 @@ export declare const deviceProviderCapability: {
167
185
  id: z.ZodString;
168
186
  system: z.ZodString;
169
187
  uniqueId: z.ZodOptional<z.ZodString>;
188
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
189
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
190
+ date: "date";
191
+ datetime: "datetime";
192
+ time: "time";
193
+ }>>;
170
194
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
171
195
  }, z.core.$strip>>;
172
196
  alreadyOnboarded: z.ZodOptional<z.ZodBoolean>;
@@ -187,6 +211,12 @@ export declare const deviceProviderCapability: {
187
211
  id: z.ZodString;
188
212
  system: z.ZodString;
189
213
  uniqueId: z.ZodOptional<z.ZodString>;
214
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
215
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
216
+ date: "date";
217
+ datetime: "datetime";
218
+ time: "time";
219
+ }>>;
190
220
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
191
221
  }, z.core.$strip>>;
192
222
  }, z.core.$strip>, "mutation">;
@@ -217,6 +247,12 @@ export declare const deviceProviderCapability: {
217
247
  id: z.ZodString;
218
248
  system: z.ZodString;
219
249
  uniqueId: z.ZodOptional<z.ZodString>;
250
+ quantity: z.ZodOptional<z.ZodType<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown, z.core.$ZodTypeInternals<"angle" | "apparent-power" | "area" | "bitrate" | "colour-temperature" | "concentration-mass" | "concentration-ppb" | "concentration-volume" | "count" | "current" | "device" | "duration" | "duration-ms" | "energy" | "humidity" | "illuminance" | "index" | "information" | "irradiance" | "length" | "mass" | "none" | "percentage" | "power" | "precipitation" | "precipitation-rate" | "pressure" | "rate" | "ratio" | "signal-level" | "sound-level" | "speed" | "temperature" | "voltage" | "volume", unknown>>>;
251
+ dateTimeShape: z.ZodOptional<z.ZodEnum<{
252
+ date: "date";
253
+ datetime: "datetime";
254
+ time: "time";
255
+ }>>;
220
256
  raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
221
257
  }, z.core.$strip>>;
222
258
  }, z.core.$strip>, "mutation">;
@@ -19,11 +19,7 @@ export declare const EnumSensorDateTimeFormatSchema: z.ZodEnum<{
19
19
  export type EnumSensorDateTimeFormat = z.infer<typeof EnumSensorDateTimeFormatSchema>;
20
20
  export declare const EnumSensorStatusSchema: z.ZodObject<{
21
21
  value: z.ZodString;
22
- format: z.ZodOptional<z.ZodEnum<{
23
- date: "date";
24
- datetime: "datetime";
25
- time: "time";
26
- }>>;
22
+ timestamp: z.ZodOptional<z.ZodBoolean>;
27
23
  lastFetchedAt: z.ZodNumber;
28
24
  }, z.core.$strip>;
29
25
  export type EnumSensorStatus = z.infer<typeof EnumSensorStatusSchema>;
@@ -37,22 +33,14 @@ export declare const enumSensorCapability: {
37
33
  readonly status: {
38
34
  readonly schema: z.ZodObject<{
39
35
  value: z.ZodString;
40
- format: z.ZodOptional<z.ZodEnum<{
41
- date: "date";
42
- datetime: "datetime";
43
- time: "time";
44
- }>>;
36
+ timestamp: z.ZodOptional<z.ZodBoolean>;
45
37
  lastFetchedAt: z.ZodNumber;
46
38
  }, z.core.$strip>;
47
39
  readonly kind: 'push';
48
40
  };
49
41
  readonly runtimeState: z.ZodObject<{
50
42
  value: z.ZodString;
51
- format: z.ZodOptional<z.ZodEnum<{
52
- date: "date";
53
- datetime: "datetime";
54
- time: "time";
55
- }>>;
43
+ timestamp: z.ZodOptional<z.ZodBoolean>;
56
44
  lastFetchedAt: z.ZodNumber;
57
45
  }, z.core.$strip>;
58
46
  /**
@@ -66,13 +54,13 @@ export declare const enumSensorCapability: {
66
54
  * History (D850): the value as an `enum` series (an appliance's program or
67
55
  * operation state, an HVAC action). The option set is per device, so the
68
56
  * value list is LEARNED as values are first seen (bounded). A sensor with a
69
- * `format` carries a timestamp, not a state, and is not recorded.
57
+ * `timestamp` carries a clock, not a state, and is not recorded.
70
58
  */
71
59
  readonly history: {
72
60
  readonly fields: {
73
61
  readonly value: {
74
62
  readonly kind: 'enum';
75
- readonly skipWhenSet: 'format';
63
+ readonly skipWhenSet: 'timestamp';
76
64
  };
77
65
  };
78
66
  };
@@ -10,10 +10,8 @@ import { DeviceType } from '../device/device-type.js';
10
10
  * `sourceInfo`.
11
11
  */
12
12
  export declare const HumiditySensorStatusSchema: z.ZodObject<{
13
- percent: z.ZodNumber;
13
+ percent: z.ZodNullable<z.ZodNumber>;
14
14
  lastFetchedAt: z.ZodNumber;
15
- unit: z.ZodOptional<z.ZodString>;
16
- precision: z.ZodOptional<z.ZodNumber>;
17
15
  }, z.core.$strip>;
18
16
  export type HumiditySensorStatus = z.infer<typeof HumiditySensorStatusSchema>;
19
17
  export declare const humiditySensorCapability: {
@@ -25,18 +23,14 @@ export declare const humiditySensorCapability: {
25
23
  readonly methods: {};
26
24
  readonly status: {
27
25
  readonly schema: z.ZodObject<{
28
- percent: z.ZodNumber;
26
+ percent: z.ZodNullable<z.ZodNumber>;
29
27
  lastFetchedAt: z.ZodNumber;
30
- unit: z.ZodOptional<z.ZodString>;
31
- precision: z.ZodOptional<z.ZodNumber>;
32
28
  }, z.core.$strip>;
33
29
  readonly kind: 'push';
34
30
  };
35
31
  readonly runtimeState: z.ZodObject<{
36
- percent: z.ZodNumber;
32
+ percent: z.ZodNullable<z.ZodNumber>;
37
33
  lastFetchedAt: z.ZodNumber;
38
- unit: z.ZodOptional<z.ZodString>;
39
- precision: z.ZodOptional<z.ZodNumber>;
40
34
  }, z.core.$strip>;
41
35
  /**
42
36
  * Runtime-state durability: **restored** — as `numeric-sensor` (67 of 75 writes were the clock alone).
@@ -60,10 +54,5 @@ export declare const humiditySensorCapability: {
60
54
  /** Clock fields: written, but excluded from the compare that decides
61
55
  * whether persisting is worth a SQLite commit. */
62
56
  readonly volatileStateFields: readonly ["lastFetchedAt"];
63
- readonly customize: {
64
- readonly version: 1;
65
- readonly advanced: 'derive';
66
- readonly targets: readonly [];
67
- };
68
57
  };
69
58
  export type IHumiditySensorProvider = InferProvider<typeof humiditySensorCapability>;
@@ -167,7 +167,7 @@ export { type ClimateControlStatus, ClimateControlStatusSchema, climateControlCa
167
167
  export { type ColorHsvTriplet, type ColorInput, type ColorRgbTriplet, type ColorStatus, ColorStatusSchema, colorCapability, type IColorProvider, } from './color.cap.js';
168
168
  export { CONNECTION_TEST_TIMEOUT_MS, ConnectionTestDescriptorSchema, ConnectionTestInputSchema, type ConnectionTestOutcome, ConnectionTestOutcomeSchema, connectionTestCapability, type IConnectionTestProvider, } from './connection-test.cap.js';
169
169
  export { type ConnectivityStatus, ConnectivityStatusSchema, connectivityCapability, type IConnectivityProvider, } from './connectivity.cap.js';
170
- export { type ConsumableItem, ConsumableItemSchema, type ConsumableForm, ConsumableFormSchema, consumableFormOf, type ConsumableKind, ConsumableKindSchema, type ConsumableLevel, ConsumableLevelSchema, type ConsumableStatus, ConsumableStatusSchema, consumableKindOf, type ConsumableRemaining, ConsumableRemainingSchema, type ConsumableRemainingUnit, ConsumableRemainingUnitSchema, type ConsumablesStatus, ConsumablesStatusSchema, consumablesCapability, type IConsumablesProvider, } from './consumables.cap.js';
170
+ export { type ConsumableItem, ConsumableItemSchema, type ConsumableForm, ConsumableFormSchema, consumableFormOf, type ConsumableKind, ConsumableKindSchema, type ConsumableLevel, ConsumableLevelSchema, type ConsumableStatus, ConsumableStatusSchema, consumableKindOf, type ConsumableRemaining, ConsumableRemainingSchema, type ConsumableRemainingKind, ConsumableRemainingKindSchema, type ConsumablesStatus, ConsumablesStatusSchema, consumablesCapability, type IConsumablesProvider, } from './consumables.cap.js';
171
171
  export { type ContactStatus, ContactStatusSchema, contactCapability, type IContactProvider, } from './contact.cap.js';
172
172
  export { type ControlKind, ControlKindSchema, type ControlSetValueInput, type ControlStatus, ControlStatusSchema, controlCapability, type IControlProvider, } from './control.cap.js';
173
173
  export { type CoverState, CoverStateSchema, type CoverStatus, CoverStatusSchema, coverCapability, type ICoverProvider, } from './cover.cap.js';
@@ -196,7 +196,7 @@ export declare const motionCapability: {
196
196
  readonly eventName: 'onMotionChanged';
197
197
  };
198
198
  readonly deviceTypes: readonly [DeviceType.Camera];
199
- readonly apply: 'replace';
199
+ readonly apply: 'add';
200
200
  readonly applyAuthority: {
201
201
  readonly kind: 'camera-sensors';
202
202
  readonly timeoutField: 'motionCooldownMs';
@@ -6,11 +6,9 @@ import { DeviceType } from '../device/device-type.js';
6
6
  * cap fits (HA `sensor` whose `device_class` we don't have a typed cap
7
7
  * for: water flow, distance, weight, frequency, signal strength, …).
8
8
  *
9
- * The `unit` and `precision` fields carry the live display metadata that
10
- * the upstream source provides with each state push (HA
11
- * `attributes.unit_of_measurement` / `attributes.suggested_display_precision`).
12
- * The UI reads them directly from the slice — they are the single source
13
- * of truth for generic numeric rendering and do NOT live on `sourceInfo`.
9
+ * The quantity is not on this slice. It is chosen when the device is
10
+ * adopted and stored once on `SourceInfo.quantity` (D944). `value` is in
11
+ * that quantity's base unit. `null` is a refused sample (D393).
14
12
  *
15
13
  * Prefer the typed alternatives (`temperature-sensor`, `humidity-sensor`,
16
14
  * `ambient-light-sensor`, `pressure-sensor`, `power-meter`,
@@ -19,9 +17,7 @@ import { DeviceType } from '../device/device-type.js';
19
17
  * numeric values land here.
20
18
  */
21
19
  export declare const NumericSensorStatusSchema: z.ZodObject<{
22
- value: z.ZodNumber;
23
- unit: z.ZodOptional<z.ZodString>;
24
- precision: z.ZodOptional<z.ZodNumber>;
20
+ value: z.ZodNullable<z.ZodNumber>;
25
21
  lastFetchedAt: z.ZodNumber;
26
22
  }, z.core.$strip>;
27
23
  export type NumericSensorStatus = z.infer<typeof NumericSensorStatusSchema>;
@@ -34,17 +30,13 @@ export declare const numericSensorCapability: {
34
30
  readonly methods: {};
35
31
  readonly status: {
36
32
  readonly schema: z.ZodObject<{
37
- value: z.ZodNumber;
38
- unit: z.ZodOptional<z.ZodString>;
39
- precision: z.ZodOptional<z.ZodNumber>;
33
+ value: z.ZodNullable<z.ZodNumber>;
40
34
  lastFetchedAt: z.ZodNumber;
41
35
  }, z.core.$strip>;
42
36
  readonly kind: 'push';
43
37
  };
44
38
  readonly runtimeState: z.ZodObject<{
45
- value: z.ZodNumber;
46
- unit: z.ZodOptional<z.ZodString>;
47
- precision: z.ZodOptional<z.ZodNumber>;
39
+ value: z.ZodNullable<z.ZodNumber>;
48
40
  lastFetchedAt: z.ZodNumber;
49
41
  }, z.core.$strip>;
50
42
  /**
@@ -55,13 +47,13 @@ export declare const numericSensorCapability: {
55
47
  */
56
48
  readonly durability: 'restored';
57
49
  /**
58
- * History (D850): recorded series. The unit is per device, read from the sibling `unit` field.
50
+ * History (D850): recorded series. The unit is the device quantity's base,
51
+ * resolved when the series is read — the cap has no single unit.
59
52
  */
60
53
  readonly history: {
61
54
  readonly fields: {
62
55
  readonly value: {
63
56
  readonly kind: 'gauge';
64
- readonly unitFrom: 'unit';
65
57
  readonly minIntervalMs: 30000;
66
58
  };
67
59
  };
@@ -209,7 +209,7 @@ export declare const petFeederCapability: {
209
209
  };
210
210
  readonly desiccantLeftDays: {
211
211
  readonly kind: 'gauge';
212
- readonly unit: 'days';
212
+ readonly unit: 's';
213
213
  };
214
214
  };
215
215
  };
@@ -24,8 +24,6 @@ export declare const PowerMeterStatusSchema: z.ZodObject<{
24
24
  va: z.ZodOptional<z.ZodNumber>;
25
25
  powerFactor: z.ZodOptional<z.ZodNumber>;
26
26
  lastFetchedAt: z.ZodNumber;
27
- unit: z.ZodOptional<z.ZodString>;
28
- precision: z.ZodOptional<z.ZodNumber>;
29
27
  }, z.core.$strip>;
30
28
  export type PowerMeterStatus = z.infer<typeof PowerMeterStatusSchema>;
31
29
  export declare const powerMeterCapability: {
@@ -44,8 +42,6 @@ export declare const powerMeterCapability: {
44
42
  va: z.ZodOptional<z.ZodNumber>;
45
43
  powerFactor: z.ZodOptional<z.ZodNumber>;
46
44
  lastFetchedAt: z.ZodNumber;
47
- unit: z.ZodOptional<z.ZodString>;
48
- precision: z.ZodOptional<z.ZodNumber>;
49
45
  }, z.core.$strip>;
50
46
  readonly kind: 'push';
51
47
  };
@@ -57,8 +53,6 @@ export declare const powerMeterCapability: {
57
53
  va: z.ZodOptional<z.ZodNumber>;
58
54
  powerFactor: z.ZodOptional<z.ZodNumber>;
59
55
  lastFetchedAt: z.ZodNumber;
60
- unit: z.ZodOptional<z.ZodString>;
61
- precision: z.ZodOptional<z.ZodNumber>;
62
56
  }, z.core.$strip>;
63
57
  /**
64
58
  * Runtime-state durability: **restored** — as `numeric-sensor`; `kwhTotal` is an accumulator whose restored value is the baseline.
@@ -113,10 +107,5 @@ export declare const powerMeterCapability: {
113
107
  /** Clock fields: written, but excluded from the compare that decides
114
108
  * whether persisting is worth a SQLite commit. */
115
109
  readonly volatileStateFields: readonly ["lastFetchedAt"];
116
- readonly customize: {
117
- readonly version: 1;
118
- readonly advanced: 'derive';
119
- readonly targets: readonly [];
120
- };
121
110
  };
122
111
  export type IPowerMeterProvider = InferProvider<typeof powerMeterCapability>;
@@ -10,10 +10,8 @@ import { DeviceType } from '../device/device-type.js';
10
10
  * `sourceInfo`.
11
11
  */
12
12
  export declare const PressureSensorStatusSchema: z.ZodObject<{
13
- hpa: z.ZodNumber;
13
+ hpa: z.ZodNullable<z.ZodNumber>;
14
14
  lastFetchedAt: z.ZodNumber;
15
- unit: z.ZodOptional<z.ZodString>;
16
- precision: z.ZodOptional<z.ZodNumber>;
17
15
  }, z.core.$strip>;
18
16
  export type PressureSensorStatus = z.infer<typeof PressureSensorStatusSchema>;
19
17
  export declare const pressureSensorCapability: {
@@ -25,18 +23,14 @@ export declare const pressureSensorCapability: {
25
23
  readonly methods: {};
26
24
  readonly status: {
27
25
  readonly schema: z.ZodObject<{
28
- hpa: z.ZodNumber;
26
+ hpa: z.ZodNullable<z.ZodNumber>;
29
27
  lastFetchedAt: z.ZodNumber;
30
- unit: z.ZodOptional<z.ZodString>;
31
- precision: z.ZodOptional<z.ZodNumber>;
32
28
  }, z.core.$strip>;
33
29
  readonly kind: 'push';
34
30
  };
35
31
  readonly runtimeState: z.ZodObject<{
36
- hpa: z.ZodNumber;
32
+ hpa: z.ZodNullable<z.ZodNumber>;
37
33
  lastFetchedAt: z.ZodNumber;
38
- unit: z.ZodOptional<z.ZodString>;
39
- precision: z.ZodOptional<z.ZodNumber>;
40
34
  }, z.core.$strip>;
41
35
  /**
42
36
  * Runtime-state durability: **restored** — as `numeric-sensor`.
@@ -74,7 +74,6 @@ export declare const runningStateCapability: {
74
74
  readonly volatileStateFields: readonly ["lastFetchedAt"];
75
75
  readonly customize: {
76
76
  readonly version: 1;
77
- readonly advanced: 'derive';
78
77
  readonly targets: readonly [{
79
78
  readonly id: 'running';
80
79
  readonly cardinality: 'scalar';
@@ -83,7 +82,7 @@ export declare const runningStateCapability: {
83
82
  readonly stateField: 'running';
84
83
  };
85
84
  readonly deviceTypes: readonly [DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.MediaPlayer, DeviceType.WaterHeater, DeviceType.Humidifier, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.PetFeeder];
86
- readonly apply: 'add-or-replace';
85
+ readonly apply: 'add';
87
86
  readonly path: 'running';
88
87
  readonly sources: readonly [{
89
88
  readonly kind: 'switch';
@@ -0,0 +1 @@
1
+ export declare function runtimeFieldUnit(cap: string, path: string): string | undefined;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Unit meta on a runtime-state field (D941 convert-unit). Not an override list.
3
+ * The lookup of the generated map lives in `runtime-field-unit.ts` so codegen
4
+ * can import this walker without loading the file it is about to rewrite.
5
+ */
6
+ import { z } from 'zod';
7
+ /** Top-level runtime paths that declare a unit. */
8
+ export declare function runtimeFieldUnits(schema: z.ZodType): Readonly<Record<string, string>>;
@@ -82,10 +82,5 @@ export declare const switchCapability: {
82
82
  };
83
83
  }];
84
84
  };
85
- readonly customize: {
86
- readonly version: 1;
87
- readonly advanced: 'derive';
88
- readonly targets: readonly [];
89
- };
90
85
  };
91
86
  export type ISwitchProvider = InferProvider<typeof switchCapability>;