@texturehq/device 1.15.0 → 1.17.0

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.
@@ -46,6 +46,8 @@ export declare const BatteryStateSchema: z.ZodObject<{
46
46
  }>>;
47
47
  gridPower: z.ZodOptional<z.ZodNumber>;
48
48
  gridEnergy: z.ZodOptional<z.ZodNumber>;
49
+ loadPower: z.ZodOptional<z.ZodNumber>;
50
+ loadEnergy: z.ZodOptional<z.ZodNumber>;
49
51
  }, z.core.$strip>;
50
52
  export type BatteryState = z.infer<typeof BatteryStateSchema>;
51
53
  export declare const BatteryStaticStateSchema: z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"battery.d.ts","sourceRoot":"","sources":["../../src/deviceState/battery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAG3B,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;iBA6DjC,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAA2D,CAAC;AAC3F,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,wBAAwB;;;;;iBAiBnC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
1
+ {"version":3,"file":"battery.d.ts","sourceRoot":"","sources":["../../src/deviceState/battery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAG3B,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;iBA6DjC,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAEK,CAAC;AACrC,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,wBAAwB;;;;;iBAiBnC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
@@ -63,7 +63,9 @@ exports.CoreBatteryStateSchema = v4_1.z.object({
63
63
  */
64
64
  strategy: common_1.BatteryStrategiesEnum.optional(),
65
65
  });
66
- exports.BatteryStateSchema = exports.CoreBatteryStateSchema.extend(common_1.CoreGridStateSchema.shape);
66
+ exports.BatteryStateSchema = exports.CoreBatteryStateSchema
67
+ .extend(common_1.CoreGridStateSchema.shape)
68
+ .extend(common_1.CoreLoadStateSchema.shape);
67
69
  exports.BatteryStaticStateSchema = v4_1.z.object({
68
70
  /**
69
71
  * The rated maximum capacity of the battery in watt-hours (Wh).
@@ -1 +1 @@
1
- {"version":3,"file":"battery.js","sourceRoot":"","sources":["../../src/deviceState/battery.ts"],"names":[],"mappings":";;;AAAA,+BAA2B;AAC3B,qCAAgG;AAEnF,QAAA,sBAAsB,GAAG,MAAC,CAAC,MAAM,CAAC;IAC7C;;;OAGG;IACH,aAAa,EAAE,iCAAwB;IACvC;;;OAGG;IACH,MAAM,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;IACpF;;;OAGG;IACH,gBAAgB,EAAE,MAAC;SAChB,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,GAAG,CAAC;SACR,QAAQ,CAAC,+FAA+F,CAAC;IAC5G;;;;;;;;;OASG;IACH,UAAU,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAClG;;;;OAIG;IACH,aAAa,EAAE,MAAC;SACb,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,GAAG,CAAC;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,4GAA4G,CAC7G;IACH;;;;OAIG;IACH,iBAAiB,EAAE,MAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;IACzG;;;;OAIG;IACH,kBAAkB,EAAE,MAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;IAClG;;;OAGG;IACH,QAAQ,EAAE,8BAAqB,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAEU,QAAA,kBAAkB,GAAG,8BAAsB,CAAC,MAAM,CAAC,4BAAmB,CAAC,KAAK,CAAC,CAAC;AAG9E,QAAA,wBAAwB,GAAG,MAAC,CAAC,MAAM,CAAC;IAC/C;;OAEG;IACH,QAAQ,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+DAA+D,CAAC;IAC9F;;OAEG;IACH,aAAa,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;IAC3G;;OAEG;IACH,gBAAgB,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+DAA+D,CAAC;IACjH;;OAEG;IACH,iBAAiB,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;CAC7G,CAAC,CAAC"}
1
+ {"version":3,"file":"battery.js","sourceRoot":"","sources":["../../src/deviceState/battery.ts"],"names":[],"mappings":";;;AAAA,+BAA2B;AAC3B,qCAAqH;AAExG,QAAA,sBAAsB,GAAG,MAAC,CAAC,MAAM,CAAC;IAC7C;;;OAGG;IACH,aAAa,EAAE,iCAAwB;IACvC;;;OAGG;IACH,MAAM,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;IACpF;;;OAGG;IACH,gBAAgB,EAAE,MAAC;SAChB,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,GAAG,CAAC;SACR,QAAQ,CAAC,+FAA+F,CAAC;IAC5G;;;;;;;;;OASG;IACH,UAAU,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAClG;;;;OAIG;IACH,aAAa,EAAE,MAAC;SACb,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,GAAG,CAAC;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,4GAA4G,CAC7G;IACH;;;;OAIG;IACH,iBAAiB,EAAE,MAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;IACzG;;;;OAIG;IACH,kBAAkB,EAAE,MAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;IAClG;;;OAGG;IACH,QAAQ,EAAE,8BAAqB,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAEU,QAAA,kBAAkB,GAAG,8BAAsB;KACrD,MAAM,CAAC,4BAAmB,CAAC,KAAK,CAAC;KACjC,MAAM,CAAC,4BAAmB,CAAC,KAAK,CAAC,CAAC;AAGxB,QAAA,wBAAwB,GAAG,MAAC,CAAC,MAAM,CAAC;IAC/C;;OAEG;IACH,QAAQ,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+DAA+D,CAAC;IAC9F;;OAEG;IACH,aAAa,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;IAC3G;;OAEG;IACH,gBAAgB,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+DAA+D,CAAC;IACjH;;OAEG;IACH,iBAAiB,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;CAC7G,CAAC,CAAC"}
@@ -59,4 +59,24 @@ export declare const CoreGridStateSchema: z.ZodObject<{
59
59
  gridPower: z.ZodOptional<z.ZodNumber>;
60
60
  gridEnergy: z.ZodOptional<z.ZodNumber>;
61
61
  }, z.core.$strip>;
62
+ /**
63
+ * The instantaneous or average load power consumed by the home during this measurement interval in Watts (W).
64
+ * Represents the measured or projected power consumption for the measurement interval.
65
+ * @example 3500
66
+ */
67
+ export declare const LoadPower: z.ZodNumber;
68
+ /**
69
+ * The measured or projected energy usage for the home load during the measurement interval in Watt-hours (Wh).
70
+ * Represents the measured or projected energy usage for the measurement interval.
71
+ * @example 2500
72
+ */
73
+ export declare const LoadEnergy: z.ZodNumber;
74
+ /**
75
+ * Core schema for load-related state fields.
76
+ * Shared by inverter and battery devices to track home energy consumption.
77
+ */
78
+ export declare const CoreLoadStateSchema: z.ZodObject<{
79
+ loadPower: z.ZodOptional<z.ZodNumber>;
80
+ loadEnergy: z.ZodOptional<z.ZodNumber>;
81
+ }, z.core.$strip>;
62
82
  //# sourceMappingURL=common.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/deviceState/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B;;;;GAIG;AACH,eAAO,MAAM,YAAY,wDAAyD,CAAC;AACnF,eAAO,MAAM,cAAc;;;;;EAEkD,CAAC;AAC9E,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAExD;;;;GAIG;AACH,eAAO,MAAM,SAAS,aAKnB,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,UAAU,aAAsF,CAAC;AAE9G;;;GAGG;AACH,eAAO,MAAM,oBAAoB,yDAA0D,CAAC;AAC5F,eAAO,MAAM,wBAAwB;;;;;EAIlC,CAAC;AACJ,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE5E;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,mEAWpB,CAAC;AACX,eAAO,MAAM,qBAAqB;;;;;GAGsC,CAAC;AACzE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,mBAAmB;;;;;;;;;iBAiB9B,CAAC"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/deviceState/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B;;;;GAIG;AACH,eAAO,MAAM,YAAY,wDAAyD,CAAC;AACnF,eAAO,MAAM,cAAc;;;;;EAEkD,CAAC;AAC9E,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAExD;;;;GAIG;AACH,eAAO,MAAM,SAAS,aAKnB,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,UAAU,aAAsF,CAAC;AAE9G;;;GAGG;AACH,eAAO,MAAM,oBAAoB,yDAA0D,CAAC;AAC5F,eAAO,MAAM,wBAAwB;;;;;EAIlC,CAAC;AACJ,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE5E;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,mEAWpB,CAAC;AACX,eAAO,MAAM,qBAAqB;;;;;GAGsC,CAAC;AACzE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,mBAAmB;;;;;;;;;iBAiB9B,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,SAAS,aAA4I,CAAC;AAEnK;;;;GAIG;AACH,eAAO,MAAM,UAAU,aAKpB,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;iBAW9B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CoreGridStateSchema = exports.BatteryStrategiesEnum = exports.BatteryStrategies = exports.BatteryChargingStateEnum = exports.BatteryChargingState = exports.GridEnergy = exports.GridPower = exports.GridStatusEnum = exports.GridStatuses = void 0;
3
+ exports.CoreLoadStateSchema = exports.LoadEnergy = exports.LoadPower = exports.CoreGridStateSchema = exports.BatteryStrategiesEnum = exports.BatteryStrategies = exports.BatteryChargingStateEnum = exports.BatteryChargingState = exports.GridEnergy = exports.GridPower = exports.GridStatusEnum = exports.GridStatuses = void 0;
4
4
  const v4_1 = require("zod/v4");
5
5
  /**
6
6
  * The grid status.
@@ -73,4 +73,35 @@ exports.CoreGridStateSchema = v4_1.z.object({
73
73
  // */
74
74
  gridEnergy: exports.GridEnergy.optional(),
75
75
  });
76
+ /**
77
+ * The instantaneous or average load power consumed by the home during this measurement interval in Watts (W).
78
+ * Represents the measured or projected power consumption for the measurement interval.
79
+ * @example 3500
80
+ */
81
+ exports.LoadPower = v4_1.z.number().min(0).describe("The measured or projected power consumption for the home load during the measurement interval in Watts (W).");
82
+ /**
83
+ * The measured or projected energy usage for the home load during the measurement interval in Watt-hours (Wh).
84
+ * Represents the measured or projected energy usage for the measurement interval.
85
+ * @example 2500
86
+ */
87
+ exports.LoadEnergy = v4_1.z
88
+ .number()
89
+ .min(0)
90
+ .describe("The measured or projected energy usage for the home load during the measurement interval in Watt-hours (Wh).");
91
+ /**
92
+ * Core schema for load-related state fields.
93
+ * Shared by inverter and battery devices to track home energy consumption.
94
+ */
95
+ exports.CoreLoadStateSchema = v4_1.z.object({
96
+ // /**
97
+ // * The instantaneous or average load power consumed by the home during this measurement interval in Watts (W).
98
+ // * @example 3500
99
+ // */
100
+ loadPower: exports.LoadPower.optional(),
101
+ // /**
102
+ // * The energy consumed by the home load during the measurement interval in Watt-hours (Wh).
103
+ // * @example 2500
104
+ // */
105
+ loadEnergy: exports.LoadEnergy.optional(),
106
+ });
76
107
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/deviceState/common.ts"],"names":[],"mappings":";;;AAAA,+BAA2B;AAE3B;;;;GAIG;AACU,QAAA,YAAY,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,CAAU,CAAC;AACtE,QAAA,cAAc,GAAG,MAAC;KAC5B,IAAI,CAAC,oBAAY,CAAC;KAClB,QAAQ,CAAC,gEAAgE,CAAC,CAAC;AAG9E;;;;GAIG;AACU,QAAA,SAAS,GAAG,MAAC;KACvB,MAAM,EAAE;KACR,GAAG,EAAE;KACL,QAAQ,CACP,sKAAsK,CACvK,CAAC;AAEJ;;;GAGG;AACU,QAAA,UAAU,GAAG,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC,CAAC;AAE9G;;;GAGG;AACU,QAAA,oBAAoB,GAAG,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,CAAU,CAAC;AAC/E,QAAA,wBAAwB,GAAG,MAAC;KACtC,IAAI,CAAC,4BAAoB,CAAC;KAC1B,QAAQ,CACP,4GAA4G,CAC7G,CAAC;AAGJ;;;;;GAKG;AACU,QAAA,iBAAiB,GAAG;IAC/B,oFAAoF;IACpF,SAAS;IACT,6FAA6F;IAC7F,uFAAuF;IACvF,kBAAkB;IAClB,4HAA4H;IAC5H,sHAAsH;IACtH,aAAa;IACb,0IAA0I;IAC1I,QAAQ;CACA,CAAC;AACE,QAAA,qBAAqB,GAAG,MAAC;KACnC,IAAI,CAAC,yBAAiB,CAAC;KACvB,OAAO,CAAC,SAAS,CAAC;KAClB,QAAQ,CAAC,2DAA2D,CAAC,CAAC;AAG5D,QAAA,mBAAmB,GAAG,MAAC,CAAC,MAAM,CAAC;IAC1C,MAAM;IACN,oEAAoE;IACpE,0BAA0B;IAC1B,MAAM;IACN,UAAU,EAAE,sBAAc,CAAC,QAAQ,EAAE;IACrC,MAAM;IACN,wEAAwE;IACxE,uGAAuG;IACvG,mBAAmB;IACnB,MAAM;IACN,SAAS,EAAE,iBAAS,CAAC,QAAQ,EAAE;IAC/B,MAAM;IACN,4DAA4D;IAC5D,mBAAmB;IACnB,MAAM;IACN,UAAU,EAAE,kBAAU,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/deviceState/common.ts"],"names":[],"mappings":";;;AAAA,+BAA2B;AAE3B;;;;GAIG;AACU,QAAA,YAAY,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,CAAU,CAAC;AACtE,QAAA,cAAc,GAAG,MAAC;KAC5B,IAAI,CAAC,oBAAY,CAAC;KAClB,QAAQ,CAAC,gEAAgE,CAAC,CAAC;AAG9E;;;;GAIG;AACU,QAAA,SAAS,GAAG,MAAC;KACvB,MAAM,EAAE;KACR,GAAG,EAAE;KACL,QAAQ,CACP,sKAAsK,CACvK,CAAC;AAEJ;;;GAGG;AACU,QAAA,UAAU,GAAG,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC,CAAC;AAE9G;;;GAGG;AACU,QAAA,oBAAoB,GAAG,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,CAAU,CAAC;AAC/E,QAAA,wBAAwB,GAAG,MAAC;KACtC,IAAI,CAAC,4BAAoB,CAAC;KAC1B,QAAQ,CACP,4GAA4G,CAC7G,CAAC;AAGJ;;;;;GAKG;AACU,QAAA,iBAAiB,GAAG;IAC/B,oFAAoF;IACpF,SAAS;IACT,6FAA6F;IAC7F,uFAAuF;IACvF,kBAAkB;IAClB,4HAA4H;IAC5H,sHAAsH;IACtH,aAAa;IACb,0IAA0I;IAC1I,QAAQ;CACA,CAAC;AACE,QAAA,qBAAqB,GAAG,MAAC;KACnC,IAAI,CAAC,yBAAiB,CAAC;KACvB,OAAO,CAAC,SAAS,CAAC;KAClB,QAAQ,CAAC,2DAA2D,CAAC,CAAC;AAG5D,QAAA,mBAAmB,GAAG,MAAC,CAAC,MAAM,CAAC;IAC1C,MAAM;IACN,oEAAoE;IACpE,0BAA0B;IAC1B,MAAM;IACN,UAAU,EAAE,sBAAc,CAAC,QAAQ,EAAE;IACrC,MAAM;IACN,wEAAwE;IACxE,uGAAuG;IACvG,mBAAmB;IACnB,MAAM;IACN,SAAS,EAAE,iBAAS,CAAC,QAAQ,EAAE;IAC/B,MAAM;IACN,4DAA4D;IAC5D,mBAAmB;IACnB,MAAM;IACN,UAAU,EAAE,kBAAU,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC;AAEH;;;;GAIG;AACU,QAAA,SAAS,GAAG,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,6GAA6G,CAAC,CAAC;AAEnK;;;;GAIG;AACU,QAAA,UAAU,GAAG,MAAC;KACxB,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,QAAQ,CACP,8GAA8G,CAC/G,CAAC;AAEJ;;;GAGG;AACU,QAAA,mBAAmB,GAAG,MAAC,CAAC,MAAM,CAAC;IAC1C,MAAM;IACN,iHAAiH;IACjH,mBAAmB;IACnB,MAAM;IACN,SAAS,EAAE,iBAAS,CAAC,QAAQ,EAAE;IAC/B,MAAM;IACN,8FAA8F;IAC9F,mBAAmB;IACnB,MAAM;IACN,UAAU,EAAE,kBAAU,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC"}
@@ -1,6 +1,8 @@
1
1
  import { z } from "zod/v4";
2
2
  export declare const InverterStateSchema: z.ZodObject<{
3
3
  power: z.ZodNumber;
4
+ generatedEnergy: z.ZodOptional<z.ZodNumber>;
5
+ lifetimeEnergyGenerated: z.ZodOptional<z.ZodNumber>;
4
6
  batteryState: z.ZodOptional<z.ZodObject<{
5
7
  chargingState: z.ZodEnum<{
6
8
  unknown: "unknown";
@@ -29,6 +31,8 @@ export declare const InverterStateSchema: z.ZodObject<{
29
31
  }>>;
30
32
  gridPower: z.ZodOptional<z.ZodNumber>;
31
33
  gridEnergy: z.ZodOptional<z.ZodNumber>;
34
+ loadPower: z.ZodOptional<z.ZodNumber>;
35
+ loadEnergy: z.ZodOptional<z.ZodNumber>;
32
36
  }, z.core.$strip>;
33
37
  export type InverterState = z.infer<typeof InverterStateSchema>;
34
38
  export declare const InverterStaticStateSchema: z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"inverter.d.ts","sourceRoot":"","sources":["../../src/deviceState/inverter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAI3B,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAeI,CAAC;AACrC,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,yBAAyB;;iBAMpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
1
+ {"version":3,"file":"inverter.d.ts","sourceRoot":"","sources":["../../src/deviceState/inverter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAI3B,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA2CI,CAAC;AACrC,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,yBAAyB;;iBAMpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
@@ -11,6 +11,28 @@ exports.InverterStateSchema = v4_1.z
11
11
  * @example 5000
12
12
  */
13
13
  power: v4_1.z.number().min(0).max(10_000_000).describe("The power output of the inverter in watts (W)."),
14
+ /**
15
+ * The energy generated by the inverter during the measurement interval in watt-hours (Wh).
16
+ * Represents the measured or projected energy production for the measurement interval.
17
+ * @example 4200
18
+ * @optional
19
+ */
20
+ generatedEnergy: v4_1.z
21
+ .number()
22
+ .min(0)
23
+ .optional()
24
+ .describe("The energy generated by the inverter during the measurement interval in watt-hours (Wh)."),
25
+ /**
26
+ * The cumulative energy generated by the inverter over its lifetime in watt-hours (Wh).
27
+ * This is a monotonically increasing counter that represents total production at this point in time.
28
+ * @example 125000000
29
+ * @optional
30
+ */
31
+ lifetimeEnergyGenerated: v4_1.z
32
+ .number()
33
+ .min(0)
34
+ .optional()
35
+ .describe("The cumulative energy generated by the inverter over its lifetime in watt-hours (Wh)."),
14
36
  /**
15
37
  * The current state of the battery (mostly for hybrid inverters with battery backup support).
16
38
  * @optional
@@ -19,7 +41,9 @@ exports.InverterStateSchema = v4_1.z
19
41
  batteryState: battery_1.CoreBatteryStateSchema.optional(),
20
42
  })
21
43
  // attach grid state to inverter state
22
- .extend(common_1.CoreGridStateSchema.shape);
44
+ .extend(common_1.CoreGridStateSchema.shape)
45
+ // attach load state to inverter state
46
+ .extend(common_1.CoreLoadStateSchema.shape);
23
47
  exports.InverterStaticStateSchema = v4_1.z.object({
24
48
  /**
25
49
  * The maximum power output of the inverter in watts (W).
@@ -1 +1 @@
1
- {"version":3,"file":"inverter.js","sourceRoot":"","sources":["../../src/deviceState/inverter.ts"],"names":[],"mappings":";;;AAAA,+BAA2B;AAC3B,uCAAmD;AACnD,qCAA+C;AAElC,QAAA,mBAAmB,GAAG,MAAC;KACjC,MAAM,CAAC;IACN;;;OAGG;IACH,KAAK,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,gDAAgD,CAAC;IACnG;;;;OAIG;IACH,YAAY,EAAE,gCAAsB,CAAC,QAAQ,EAAE;CAChD,CAAC;IACF,sCAAsC;KACrC,MAAM,CAAC,4BAAmB,CAAC,KAAK,CAAC,CAAC;AAGxB,QAAA,yBAAyB,GAAG,MAAC,CAAC,MAAM,CAAC;IAChD;;;OAGG;IACH,KAAK,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,wDAAwD,CAAC;CAC5G,CAAC,CAAC"}
1
+ {"version":3,"file":"inverter.js","sourceRoot":"","sources":["../../src/deviceState/inverter.ts"],"names":[],"mappings":";;;AAAA,+BAA2B;AAC3B,uCAAmD;AACnD,qCAAoE;AAEvD,QAAA,mBAAmB,GAAG,MAAC;KACjC,MAAM,CAAC;IACN;;;OAGG;IACH,KAAK,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,gDAAgD,CAAC;IACnG;;;;;OAKG;IACH,eAAe,EAAE,MAAC;SACf,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,0FAA0F,CAC3F;IACH;;;;;OAKG;IACH,uBAAuB,EAAE,MAAC;SACvB,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,uFAAuF,CACxF;IACH;;;;OAIG;IACH,YAAY,EAAE,gCAAsB,CAAC,QAAQ,EAAE;CAChD,CAAC;IACF,sCAAsC;KACrC,MAAM,CAAC,4BAAmB,CAAC,KAAK,CAAC;IAClC,sCAAsC;KACrC,MAAM,CAAC,4BAAmB,CAAC,KAAK,CAAC,CAAC;AAGxB,QAAA,yBAAyB,GAAG,MAAC,CAAC,MAAM,CAAC;IAChD;;;OAGG;IACH,KAAK,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,wDAAwD,CAAC;CAC5G,CAAC,CAAC"}
@@ -47,6 +47,27 @@ export declare const ThermostatStateSchema: z.ZodObject<{
47
47
  }>;
48
48
  }, z.core.$strip>;
49
49
  export type ThermostatState = z.infer<typeof ThermostatStateSchema>;
50
- export declare const ThermostatStaticStateSchema: z.ZodObject<{}, z.core.$strip>;
50
+ export declare const ThermostatStaticStateSchema: z.ZodObject<{
51
+ allowedModes: z.ZodArray<z.ZodEnum<{
52
+ auto: "auto";
53
+ off: "off";
54
+ unknown: "unknown";
55
+ heat: "heat";
56
+ cool: "cool";
57
+ eco: "eco";
58
+ }>>;
59
+ minHeatSetpoint: z.ZodOptional<z.ZodNumber>;
60
+ maxHeatSetpoint: z.ZodOptional<z.ZodNumber>;
61
+ minCoolSetpoint: z.ZodOptional<z.ZodNumber>;
62
+ maxCoolSetpoint: z.ZodOptional<z.ZodNumber>;
63
+ allowedFanModes: z.ZodArray<z.ZodEnum<{
64
+ auto: "auto";
65
+ off: "off";
66
+ unknown: "unknown";
67
+ on: "on";
68
+ circulate: "circulate";
69
+ }>>;
70
+ extendedCapabilities: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
71
+ }, z.core.$strip>;
51
72
  export type ThermostatStaticState = z.infer<typeof ThermostatStaticStateSchema>;
52
73
  //# sourceMappingURL=thermostat.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"thermostat.d.ts","sourceRoot":"","sources":["../../src/deviceState/thermostat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B;;;GAGG;AACH,eAAO,MAAM,uBAAuB,4DAA6D,CAAC;AAClG,eAAO,MAAM,2BAA2B;;;;;;;EAAkC,CAAC;AAC3E,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAElF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,wDAAyD,CAAC;AACxF,eAAO,MAAM,qBAAqB;;;;;;EAA4B,CAAC;AAC/D,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEtE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;iBAgChC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,2BAA2B,gCAAe,CAAC;AACxD,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
1
+ {"version":3,"file":"thermostat.d.ts","sourceRoot":"","sources":["../../src/deviceState/thermostat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B;;;GAGG;AACH,eAAO,MAAM,uBAAuB,4DAA6D,CAAC;AAClG,eAAO,MAAM,2BAA2B;;;;;;;EAAkC,CAAC;AAC3E,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAElF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,wDAAyD,CAAC;AACxF,eAAO,MAAM,qBAAqB;;;;;;EAA4B,CAAC;AAC/D,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEtE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;iBAgChC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;iBAoCtC,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
@@ -47,5 +47,41 @@ exports.ThermostatStateSchema = v4_1.z.object({
47
47
  **/
48
48
  fanMode: exports.ThermostatFanModeEnum,
49
49
  });
50
- exports.ThermostatStaticStateSchema = v4_1.z.object({});
50
+ exports.ThermostatStaticStateSchema = v4_1.z.object({
51
+ /**
52
+ * Operating modes supported by this thermostat.
53
+ * @example ["heat", "cool", "auto", "off"]
54
+ */
55
+ allowedModes: v4_1.z.array(exports.ThermostatOperatingModeEnum),
56
+ /**
57
+ * Minimum heat setpoint temperature in Fahrenheit.
58
+ * @example 50
59
+ */
60
+ minHeatSetpoint: v4_1.z.number().int().optional(),
61
+ /**
62
+ * Maximum heat setpoint temperature in Fahrenheit.
63
+ * @example 90
64
+ */
65
+ maxHeatSetpoint: v4_1.z.number().int().optional(),
66
+ /**
67
+ * Minimum cool setpoint temperature in Fahrenheit.
68
+ * @example 50
69
+ */
70
+ minCoolSetpoint: v4_1.z.number().int().optional(),
71
+ /**
72
+ * Maximum cool setpoint temperature in Fahrenheit.
73
+ * @example 90
74
+ */
75
+ maxCoolSetpoint: v4_1.z.number().int().optional(),
76
+ /**
77
+ * Supported fan modes.
78
+ * @example ["auto", "on", "circulate"]
79
+ */
80
+ allowedFanModes: v4_1.z.array(exports.ThermostatFanModeEnum),
81
+ /**
82
+ * Extended capabilities for additional features (scheduling, deadband, mode-specific constraints, etc.).
83
+ * Flexible structure for future expansion without schema migrations.
84
+ */
85
+ extendedCapabilities: v4_1.z.record(v4_1.z.string(), v4_1.z.unknown()).optional(),
86
+ });
51
87
  //# sourceMappingURL=thermostat.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"thermostat.js","sourceRoot":"","sources":["../../src/deviceState/thermostat.ts"],"names":[],"mappings":";;;AAAA,+BAA2B;AAE3B;;;GAGG;AACU,QAAA,uBAAuB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAU,CAAC;AACrF,QAAA,2BAA2B,GAAG,MAAC,CAAC,IAAI,CAAC,+BAAuB,CAAC,CAAC;AAG3E;;;GAGG;AACU,QAAA,iBAAiB,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,CAAU,CAAC;AAC3E,QAAA,qBAAqB,GAAG,MAAC,CAAC,IAAI,CAAC,yBAAiB,CAAC,CAAC;AAGlD,QAAA,qBAAqB,GAAG,MAAC,CAAC,MAAM,CAAC;IAC5C;;;OAGG;IACH,kBAAkB,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;IACzF;;;OAGG;IACH,aAAa,EAAE,mCAA2B;IAC1C;;;OAGG;IACH,UAAU,EAAE,MAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,gFAAgF,CAAC;IAC7F;;;OAGG;IACH,UAAU,EAAE,MAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,gFAAgF,CAAC;IAC7F;;;QAGI;IACJ,OAAO,EAAE,6BAAqB;CAC/B,CAAC,CAAC;AAGU,QAAA,2BAA2B,GAAG,MAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"thermostat.js","sourceRoot":"","sources":["../../src/deviceState/thermostat.ts"],"names":[],"mappings":";;;AAAA,+BAA2B;AAE3B;;;GAGG;AACU,QAAA,uBAAuB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAU,CAAC;AACrF,QAAA,2BAA2B,GAAG,MAAC,CAAC,IAAI,CAAC,+BAAuB,CAAC,CAAC;AAG3E;;;GAGG;AACU,QAAA,iBAAiB,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,CAAU,CAAC;AAC3E,QAAA,qBAAqB,GAAG,MAAC,CAAC,IAAI,CAAC,yBAAiB,CAAC,CAAC;AAGlD,QAAA,qBAAqB,GAAG,MAAC,CAAC,MAAM,CAAC;IAC5C;;;OAGG;IACH,kBAAkB,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;IACzF;;;OAGG;IACH,aAAa,EAAE,mCAA2B;IAC1C;;;OAGG;IACH,UAAU,EAAE,MAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,gFAAgF,CAAC;IAC7F;;;OAGG;IACH,UAAU,EAAE,MAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,gFAAgF,CAAC;IAC7F;;;QAGI;IACJ,OAAO,EAAE,6BAAqB;CAC/B,CAAC,CAAC;AAGU,QAAA,2BAA2B,GAAG,MAAC,CAAC,MAAM,CAAC;IAClD;;;OAGG;IACH,YAAY,EAAE,MAAC,CAAC,KAAK,CAAC,mCAA2B,CAAC;IAClD;;;OAGG;IACH,eAAe,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC5C;;;OAGG;IACH,eAAe,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC5C;;;OAGG;IACH,eAAe,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC5C;;;OAGG;IACH,eAAe,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC5C;;;OAGG;IACH,eAAe,EAAE,MAAC,CAAC,KAAK,CAAC,6BAAqB,CAAC;IAC/C;;;OAGG;IACH,oBAAoB,EAAE,MAAC,CAAC,MAAM,CAAC,MAAC,CAAC,MAAM,EAAE,EAAE,MAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;CACnE,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@texturehq/device",
3
- "version": "1.15.0",
3
+ "version": "1.17.0",
4
4
  "author": "Will Laeri <will@texture.energy>",
5
5
  "description": "A type-safe client for validating device data",
6
6
  "main": "dist/index.js",