@utiliread/primitives 1.0.0-147 → 1.0.0-148

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 (123) hide show
  1. package/dist/index.js +120 -25
  2. package/dist/index.js.map +1 -1
  3. package/dist/index.mjs +120 -25
  4. package/dist/index.mjs.map +1 -1
  5. package/dist/precision-number.d.ts +10 -0
  6. package/package.json +9 -6
  7. package/src/aggregate-id.ts +2 -9
  8. package/src/breakdown-rule.spec.ts +61 -61
  9. package/src/breakdown-rule.ts +58 -58
  10. package/src/csv.spec.ts +42 -42
  11. package/src/csv.ts +8 -9
  12. package/src/cursor-navigation-state.spec.ts +194 -194
  13. package/src/cursor-navigation-state.ts +168 -168
  14. package/src/index.ts +61 -61
  15. package/src/measure-id.ts +17 -17
  16. package/src/measures/duration.ts +11 -11
  17. package/src/measures/energy.ts +13 -13
  18. package/src/measures/humidity.ts +3 -3
  19. package/src/measures/infocode.ts +3 -3
  20. package/src/measures/mass-flow.ts +19 -19
  21. package/src/measures/mass.ts +10 -10
  22. package/src/measures/noise.ts +5 -5
  23. package/src/measures/power.ts +23 -23
  24. package/src/measures/pressure.ts +9 -9
  25. package/src/measures/reactive-energy.ts +7 -7
  26. package/src/measures/reactive-power.ts +3 -3
  27. package/src/measures/temperature.ts +9 -9
  28. package/src/measures/time.ts +3 -3
  29. package/src/measures/volume-flow.ts +25 -25
  30. package/src/measures/volume.ts +3 -3
  31. package/src/medium.spec.ts +12 -12
  32. package/src/medium.ts +47 -47
  33. package/src/number-formatter.spec.ts +570 -570
  34. package/src/number-formatter.ts +126 -126
  35. package/src/optional.ts +1 -1
  36. package/src/precision-number.spec.ts +382 -382
  37. package/src/precision-number.ts +229 -229
  38. package/src/register-convention.spec.ts +52 -52
  39. package/src/register-convention.ts +70 -70
  40. package/src/register-definition.ts +23 -23
  41. package/src/register-id.ts +288 -288
  42. package/src/register-library.spec.ts +41 -41
  43. package/src/register-library.ts +64 -64
  44. package/src/register-pack.ts +5 -5
  45. package/src/register-utils.ts +6 -6
  46. package/src/registers/acoustic-noise.ts +52 -52
  47. package/src/registers/ambient-temperature.ts +52 -52
  48. package/src/registers/axioma-infocode.ts +16 -16
  49. package/src/registers/consumer.ts +17 -17
  50. package/src/registers/cooling-energy-inlet.ts +23 -23
  51. package/src/registers/cooling-energy-outlet.ts +23 -23
  52. package/src/registers/cooling-energy.ts +23 -23
  53. package/src/registers/cooling.ts +113 -113
  54. package/src/registers/device-addresses-kamdraft.ts +14 -14
  55. package/src/registers/device-addresses-msisdn.ts +14 -14
  56. package/src/registers/device-addresses-tchlr.ts +14 -14
  57. package/src/registers/device-addresses-wmbus.ts +17 -17
  58. package/src/registers/device-date-time.ts +9 -9
  59. package/src/registers/device-date.ts +9 -9
  60. package/src/registers/device-nominal-diameter.ts +9 -9
  61. package/src/registers/device-permanent-volume-flow.ts +9 -9
  62. package/src/registers/device-registers.ts +9 -9
  63. package/src/registers/device-samples.ts +37 -37
  64. package/src/registers/device-software-version.ts +8 -8
  65. package/src/registers/device-time.ts +9 -9
  66. package/src/registers/device.ts +16 -16
  67. package/src/registers/diehl-infocode.ts +44 -44
  68. package/src/registers/electrical-energy.ts +23 -23
  69. package/src/registers/energy-inlet.ts +23 -23
  70. package/src/registers/energy-outlet.ts +23 -23
  71. package/src/registers/error-operating-time.ts +23 -23
  72. package/src/registers/flow-temperature-aux.ts +52 -52
  73. package/src/registers/flow-temperature-inlet.ts +52 -52
  74. package/src/registers/flow-temperature-outlet.ts +52 -52
  75. package/src/registers/flow-temperature.ts +52 -52
  76. package/src/registers/heat-energy-inlet.ts +65 -65
  77. package/src/registers/heat-energy-outlet.ts +65 -65
  78. package/src/registers/heat-energy.ts +65 -65
  79. package/src/registers/index.ts +71 -71
  80. package/src/registers/infocode.ts +70 -70
  81. package/src/registers/kamstrup-module-type.ts +8 -8
  82. package/src/registers/kamstrup-multical-infocode.ts +58 -58
  83. package/src/registers/landis-gyr-infocode.ts +23 -23
  84. package/src/registers/landis-gyr-mbus-status.ts +23 -23
  85. package/src/registers/mass-flow-inlet.ts +52 -52
  86. package/src/registers/mass-flow-outlet.ts +52 -52
  87. package/src/registers/mass-flow.ts +52 -52
  88. package/src/registers/mass-inlet.ts +23 -23
  89. package/src/registers/mass-outlet.ts +23 -23
  90. package/src/registers/mass.ts +23 -23
  91. package/src/registers/mbus-format-string-signature.ts +8 -8
  92. package/src/registers/none.ts +8 -8
  93. package/src/registers/operating-time.ts +23 -23
  94. package/src/registers/place.ts +31 -31
  95. package/src/registers/power-inlet.ts +52 -52
  96. package/src/registers/power-outlet.ts +52 -52
  97. package/src/registers/power.ts +52 -52
  98. package/src/registers/pressure-inlet.ts +52 -52
  99. package/src/registers/pressure-outlet.ts +52 -52
  100. package/src/registers/pressure.ts +52 -52
  101. package/src/registers/radiator-temperature.ts +52 -52
  102. package/src/registers/reactive-energy.ts +23 -23
  103. package/src/registers/relative-humidity.ts +8 -8
  104. package/src/registers/remaining-battery-time.ts +23 -23
  105. package/src/registers/time-last-exact-overhearing-arrived.ts +19 -19
  106. package/src/registers/time-last-installation-mounted.ts +19 -19
  107. package/src/registers/time-last-possible-candidate-overhearing-arrived.ts +21 -21
  108. package/src/registers/time-last-sampled.ts +19 -19
  109. package/src/registers/time.ts +45 -45
  110. package/src/registers/volume-flow-inlet.ts +52 -52
  111. package/src/registers/volume-flow-outlet.ts +52 -52
  112. package/src/registers/volume-flow.ts +52 -52
  113. package/src/registers/volume-inlet.ts +23 -23
  114. package/src/registers/volume-outlet.ts +23 -23
  115. package/src/registers/volume-pulse-input-a.ts +23 -23
  116. package/src/registers/volume-pulse-input-b.ts +23 -23
  117. package/src/registers/volume.ts +23 -23
  118. package/src/repository.spec.ts +30 -30
  119. package/src/repository.ts +26 -26
  120. package/src/step.spec.ts +37 -37
  121. package/src/step.ts +45 -45
  122. package/src/time-or-rule.ts +42 -42
  123. package/src/unit-id.ts +108 -108
@@ -1,64 +1,64 @@
1
- import type { RegisterDefinition } from "./register-definition";
2
- import type { RegisterId } from "./register-id";
3
- import { RegisterPack } from "./register-pack";
4
-
5
- class Library {
6
- private definitions: Partial<{ [id in RegisterId]: RegisterDefinition }> =
7
- {};
8
-
9
- public add(...definitions: (RegisterDefinition | RegisterPack)[]) {
10
- for (const definition of definitions) {
11
- if (isDefinition(definition)) {
12
- this.tryAdd(definition);
13
- } else {
14
- for (const definitionInPack of Object.values(definition)) {
15
- this.tryAdd(definitionInPack);
16
- }
17
- }
18
- }
19
- }
20
-
21
- private tryAdd(definition: RegisterDefinition) {
22
- if (!this.definitions[definition.id]) {
23
- this.definitions[definition.id] = definition;
24
- return true;
25
- }
26
- return false;
27
- }
28
-
29
- public has(id: RegisterId) {
30
- return !!this.definitions[id];
31
- }
32
-
33
- public tryGet(id: RegisterId) {
34
- return this.definitions[id];
35
- }
36
-
37
- public get(id: RegisterId) {
38
- const definition = this.definitions[id];
39
- if (!definition) {
40
- throw new Error(`Defintion was not loaded for register ${id}`);
41
- }
42
- return definition;
43
- }
44
-
45
- public all() {
46
- return Object.values(this.definitions).map((x) => x!);
47
- }
48
-
49
- public reset() {
50
- this.definitions = {};
51
- }
52
- }
53
-
54
- function isDefinition(
55
- definitionOrPack: RegisterDefinition | RegisterPack,
56
- ): definitionOrPack is RegisterDefinition {
57
- return !!(
58
- definitionOrPack.id &&
59
- definitionOrPack.aggregate &&
60
- definitionOrPack.units
61
- );
62
- }
63
-
64
- export const RegisterLibrary = new Library();
1
+ import type { RegisterDefinition } from "./register-definition";
2
+ import type { RegisterId } from "./register-id";
3
+ import { RegisterPack } from "./register-pack";
4
+
5
+ class Library {
6
+ private definitions: Partial<{ [id in RegisterId]: RegisterDefinition }> =
7
+ {};
8
+
9
+ public add(...definitions: (RegisterDefinition | RegisterPack)[]) {
10
+ for (const definition of definitions) {
11
+ if (isDefinition(definition)) {
12
+ this.tryAdd(definition);
13
+ } else {
14
+ for (const definitionInPack of Object.values(definition)) {
15
+ this.tryAdd(definitionInPack);
16
+ }
17
+ }
18
+ }
19
+ }
20
+
21
+ private tryAdd(definition: RegisterDefinition) {
22
+ if (!this.definitions[definition.id]) {
23
+ this.definitions[definition.id] = definition;
24
+ return true;
25
+ }
26
+ return false;
27
+ }
28
+
29
+ public has(id: RegisterId) {
30
+ return !!this.definitions[id];
31
+ }
32
+
33
+ public tryGet(id: RegisterId) {
34
+ return this.definitions[id];
35
+ }
36
+
37
+ public get(id: RegisterId) {
38
+ const definition = this.definitions[id];
39
+ if (!definition) {
40
+ throw new Error(`Defintion was not loaded for register ${id}`);
41
+ }
42
+ return definition;
43
+ }
44
+
45
+ public all() {
46
+ return Object.values(this.definitions).map((x) => x!);
47
+ }
48
+
49
+ public reset() {
50
+ this.definitions = {};
51
+ }
52
+ }
53
+
54
+ function isDefinition(
55
+ definitionOrPack: RegisterDefinition | RegisterPack,
56
+ ): definitionOrPack is RegisterDefinition {
57
+ return !!(
58
+ definitionOrPack.id &&
59
+ definitionOrPack.aggregate &&
60
+ definitionOrPack.units
61
+ );
62
+ }
63
+
64
+ export const RegisterLibrary = new Library();
@@ -1,5 +1,5 @@
1
- import type { RegisterDefinition } from "./register-definition";
2
-
3
- export interface RegisterPack {
4
- [key: string]: RegisterDefinition;
5
- }
1
+ import type { RegisterDefinition } from "./register-definition";
2
+
3
+ export interface RegisterPack {
4
+ [key: string]: RegisterDefinition;
5
+ }
@@ -1,6 +1,6 @@
1
- import type { RegisterDefinition } from "./register-definition";
2
- import type { RegisterId } from "./register-id";
3
-
4
- export function getRegisterId(register: RegisterId | RegisterDefinition) {
5
- return typeof register === "string" ? register : register.id;
6
- }
1
+ import type { RegisterDefinition } from "./register-definition";
2
+ import type { RegisterId } from "./register-id";
3
+
4
+ export function getRegisterId(register: RegisterId | RegisterDefinition) {
5
+ return typeof register === "string" ? register : register.id;
6
+ }
@@ -1,52 +1,52 @@
1
- import { sqUnits, units } from "../measures/noise";
2
-
3
- import type { RegisterDefinition } from "../register-definition";
4
-
5
- export const acousticNoise: RegisterDefinition = {
6
- id: "acousticNoise",
7
- measure: "noise",
8
- aggregate: "instant",
9
- units,
10
- };
11
-
12
- export const minAcousticNoise: RegisterDefinition = {
13
- id: "minAcousticNoise",
14
- measure: "noise",
15
- aggregate: "min",
16
- units,
17
- };
18
-
19
- export const maxAcousticNoise: RegisterDefinition = {
20
- id: "maxAcousticNoise",
21
- measure: "noise",
22
- aggregate: "max",
23
- units,
24
- };
25
-
26
- export const avgAcousticNoise: RegisterDefinition = {
27
- id: "avgAcousticNoise",
28
- measure: "noise",
29
- aggregate: "avg",
30
- units,
31
- };
32
-
33
- export const sumAcousticNoise: RegisterDefinition = {
34
- id: "sumAcousticNoise",
35
- measure: "noise",
36
- aggregate: "sum",
37
- units,
38
- };
39
-
40
- export const cntAcousticNoise: RegisterDefinition = {
41
- id: "cntAcousticNoise",
42
- measure: "noise",
43
- aggregate: "cnt",
44
- units: ["unitless"],
45
- };
46
-
47
- export const ssqAcousticNoise: RegisterDefinition = {
48
- id: "ssqAcousticNoise",
49
- measure: "noise",
50
- aggregate: "ssq",
51
- units: sqUnits,
52
- };
1
+ import { sqUnits, units } from "../measures/noise";
2
+
3
+ import type { RegisterDefinition } from "../register-definition";
4
+
5
+ export const acousticNoise: RegisterDefinition = {
6
+ id: "acousticNoise",
7
+ measure: "noise",
8
+ aggregate: "instant",
9
+ units,
10
+ };
11
+
12
+ export const minAcousticNoise: RegisterDefinition = {
13
+ id: "minAcousticNoise",
14
+ measure: "noise",
15
+ aggregate: "min",
16
+ units,
17
+ };
18
+
19
+ export const maxAcousticNoise: RegisterDefinition = {
20
+ id: "maxAcousticNoise",
21
+ measure: "noise",
22
+ aggregate: "max",
23
+ units,
24
+ };
25
+
26
+ export const avgAcousticNoise: RegisterDefinition = {
27
+ id: "avgAcousticNoise",
28
+ measure: "noise",
29
+ aggregate: "avg",
30
+ units,
31
+ };
32
+
33
+ export const sumAcousticNoise: RegisterDefinition = {
34
+ id: "sumAcousticNoise",
35
+ measure: "noise",
36
+ aggregate: "sum",
37
+ units,
38
+ };
39
+
40
+ export const cntAcousticNoise: RegisterDefinition = {
41
+ id: "cntAcousticNoise",
42
+ measure: "noise",
43
+ aggregate: "cnt",
44
+ units: ["unitless"],
45
+ };
46
+
47
+ export const ssqAcousticNoise: RegisterDefinition = {
48
+ id: "ssqAcousticNoise",
49
+ measure: "noise",
50
+ aggregate: "ssq",
51
+ units: sqUnits,
52
+ };
@@ -1,52 +1,52 @@
1
- import { sqUnits, units } from "../measures/temperature";
2
-
3
- import type { RegisterDefinition } from "../register-definition";
4
-
5
- export const ambientTemperature: RegisterDefinition = {
6
- id: "ambientTemperature",
7
- measure: "temperature",
8
- aggregate: "instant",
9
- units,
10
- };
11
-
12
- export const minAmbientTemperature: RegisterDefinition = {
13
- id: "minAmbientTemperature",
14
- measure: "temperature",
15
- aggregate: "min",
16
- units,
17
- };
18
-
19
- export const maxAmbientTemperature: RegisterDefinition = {
20
- id: "maxAmbientTemperature",
21
- measure: "temperature",
22
- aggregate: "max",
23
- units,
24
- };
25
-
26
- export const avgAmbientTemperature: RegisterDefinition = {
27
- id: "avgAmbientTemperature",
28
- measure: "temperature",
29
- aggregate: "avg",
30
- units,
31
- };
32
-
33
- export const sumAmbientTemperature: RegisterDefinition = {
34
- id: "sumAmbientTemperature",
35
- measure: "temperature",
36
- aggregate: "sum",
37
- units,
38
- };
39
-
40
- export const cntAmbientTemperature: RegisterDefinition = {
41
- id: "cntAmbientTemperature",
42
- measure: "temperature",
43
- aggregate: "cnt",
44
- units: ["unitless"],
45
- };
46
-
47
- export const ssqAmbientTemperature: RegisterDefinition = {
48
- id: "ssqAmbientTemperature",
49
- measure: "temperature",
50
- aggregate: "ssq",
51
- units: sqUnits,
52
- };
1
+ import { sqUnits, units } from "../measures/temperature";
2
+
3
+ import type { RegisterDefinition } from "../register-definition";
4
+
5
+ export const ambientTemperature: RegisterDefinition = {
6
+ id: "ambientTemperature",
7
+ measure: "temperature",
8
+ aggregate: "instant",
9
+ units,
10
+ };
11
+
12
+ export const minAmbientTemperature: RegisterDefinition = {
13
+ id: "minAmbientTemperature",
14
+ measure: "temperature",
15
+ aggregate: "min",
16
+ units,
17
+ };
18
+
19
+ export const maxAmbientTemperature: RegisterDefinition = {
20
+ id: "maxAmbientTemperature",
21
+ measure: "temperature",
22
+ aggregate: "max",
23
+ units,
24
+ };
25
+
26
+ export const avgAmbientTemperature: RegisterDefinition = {
27
+ id: "avgAmbientTemperature",
28
+ measure: "temperature",
29
+ aggregate: "avg",
30
+ units,
31
+ };
32
+
33
+ export const sumAmbientTemperature: RegisterDefinition = {
34
+ id: "sumAmbientTemperature",
35
+ measure: "temperature",
36
+ aggregate: "sum",
37
+ units,
38
+ };
39
+
40
+ export const cntAmbientTemperature: RegisterDefinition = {
41
+ id: "cntAmbientTemperature",
42
+ measure: "temperature",
43
+ aggregate: "cnt",
44
+ units: ["unitless"],
45
+ };
46
+
47
+ export const ssqAmbientTemperature: RegisterDefinition = {
48
+ id: "ssqAmbientTemperature",
49
+ measure: "temperature",
50
+ aggregate: "ssq",
51
+ units: sqUnits,
52
+ };
@@ -1,16 +1,16 @@
1
- import type { RegisterDefinition } from "../register-definition";
2
- import { units } from "../measures/infocode";
3
-
4
- export const axiomaInfocode: RegisterDefinition = {
5
- id: "axiomaInfocode",
6
- measure: "none",
7
- aggregate: "instant",
8
- units,
9
- };
10
-
11
- export const axiomaInfocodeType1: RegisterDefinition = {
12
- id: "axiomaInfocodeType1",
13
- measure: "none",
14
- aggregate: "instant",
15
- units,
16
- };
1
+ import type { RegisterDefinition } from "../register-definition";
2
+ import { units } from "../measures/infocode";
3
+
4
+ export const axiomaInfocode: RegisterDefinition = {
5
+ id: "axiomaInfocode",
6
+ measure: "none",
7
+ aggregate: "instant",
8
+ units,
9
+ };
10
+
11
+ export const axiomaInfocodeType1: RegisterDefinition = {
12
+ id: "axiomaInfocodeType1",
13
+ measure: "none",
14
+ aggregate: "instant",
15
+ units,
16
+ };
@@ -1,17 +1,17 @@
1
- import type { RegisterDefinition } from "../register-definition";
2
-
3
- export const consumer: RegisterDefinition = {
4
- id: "consumer",
5
- measure: "none",
6
- aggregate: "instant",
7
- units: ["unitless"],
8
- immediate: true,
9
- };
10
-
11
- export interface Consumer {
12
- id: number;
13
- name: string;
14
- consumerNumber: string;
15
- emailAddress: string;
16
- phoneNumber: string;
17
- }
1
+ import type { RegisterDefinition } from "../register-definition";
2
+
3
+ export const consumer: RegisterDefinition = {
4
+ id: "consumer",
5
+ measure: "none",
6
+ aggregate: "instant",
7
+ units: ["unitless"],
8
+ immediate: true,
9
+ };
10
+
11
+ export interface Consumer {
12
+ id: number;
13
+ name: string;
14
+ consumerNumber: string;
15
+ emailAddress: string;
16
+ phoneNumber: string;
17
+ }
@@ -1,23 +1,23 @@
1
- import type { RegisterDefinition } from "../register-definition";
2
- import { units } from "../measures/energy";
3
-
4
- export const coolingEnergyVolumeInInlet: RegisterDefinition = {
5
- id: "coolingEnergyVolumeInInlet",
6
- measure: "energy",
7
- aggregate: "instant",
8
- units,
9
- };
10
-
11
- export const diffCoolingEnergyVolumeInInlet: RegisterDefinition = {
12
- id: "diffCoolingEnergyVolumeInInlet",
13
- measure: "energy",
14
- aggregate: "diff",
15
- units,
16
- };
17
-
18
- export const cntCoolingEnergyVolumeInInlet: RegisterDefinition = {
19
- id: "cntCoolingEnergyVolumeInInlet",
20
- measure: "energy",
21
- aggregate: "cnt",
22
- units: ["unitless"],
23
- };
1
+ import type { RegisterDefinition } from "../register-definition";
2
+ import { units } from "../measures/energy";
3
+
4
+ export const coolingEnergyVolumeInInlet: RegisterDefinition = {
5
+ id: "coolingEnergyVolumeInInlet",
6
+ measure: "energy",
7
+ aggregate: "instant",
8
+ units,
9
+ };
10
+
11
+ export const diffCoolingEnergyVolumeInInlet: RegisterDefinition = {
12
+ id: "diffCoolingEnergyVolumeInInlet",
13
+ measure: "energy",
14
+ aggregate: "diff",
15
+ units,
16
+ };
17
+
18
+ export const cntCoolingEnergyVolumeInInlet: RegisterDefinition = {
19
+ id: "cntCoolingEnergyVolumeInInlet",
20
+ measure: "energy",
21
+ aggregate: "cnt",
22
+ units: ["unitless"],
23
+ };
@@ -1,23 +1,23 @@
1
- import type { RegisterDefinition } from "../register-definition";
2
- import { units } from "../measures/energy";
3
-
4
- export const coolingEnergyVolumeInOutlet: RegisterDefinition = {
5
- id: "coolingEnergyVolumeInOutlet",
6
- measure: "energy",
7
- aggregate: "instant",
8
- units,
9
- };
10
-
11
- export const diffCoolingEnergyVolumeInOutlet: RegisterDefinition = {
12
- id: "diffCoolingEnergyVolumeInOutlet",
13
- measure: "energy",
14
- aggregate: "diff",
15
- units,
16
- };
17
-
18
- export const cntCoolingEnergyVolumeInOutlet: RegisterDefinition = {
19
- id: "cntCoolingEnergyVolumeInOutlet",
20
- measure: "energy",
21
- aggregate: "cnt",
22
- units: ["unitless"],
23
- };
1
+ import type { RegisterDefinition } from "../register-definition";
2
+ import { units } from "../measures/energy";
3
+
4
+ export const coolingEnergyVolumeInOutlet: RegisterDefinition = {
5
+ id: "coolingEnergyVolumeInOutlet",
6
+ measure: "energy",
7
+ aggregate: "instant",
8
+ units,
9
+ };
10
+
11
+ export const diffCoolingEnergyVolumeInOutlet: RegisterDefinition = {
12
+ id: "diffCoolingEnergyVolumeInOutlet",
13
+ measure: "energy",
14
+ aggregate: "diff",
15
+ units,
16
+ };
17
+
18
+ export const cntCoolingEnergyVolumeInOutlet: RegisterDefinition = {
19
+ id: "cntCoolingEnergyVolumeInOutlet",
20
+ measure: "energy",
21
+ aggregate: "cnt",
22
+ units: ["unitless"],
23
+ };
@@ -1,23 +1,23 @@
1
- import type { RegisterDefinition } from "../register-definition";
2
- import { units } from "../measures/energy";
3
-
4
- export const coolingEnergy: RegisterDefinition = {
5
- id: "coolingEnergy",
6
- measure: "energy",
7
- aggregate: "instant",
8
- units,
9
- };
10
-
11
- export const diffCoolingEnergy: RegisterDefinition = {
12
- id: "diffCoolingEnergy",
13
- measure: "energy",
14
- aggregate: "diff",
15
- units,
16
- };
17
-
18
- export const cntCoolingEnergy: RegisterDefinition = {
19
- id: "cntCoolingEnergy",
20
- measure: "energy",
21
- aggregate: "cnt",
22
- units: ["unitless"],
23
- };
1
+ import type { RegisterDefinition } from "../register-definition";
2
+ import { units } from "../measures/energy";
3
+
4
+ export const coolingEnergy: RegisterDefinition = {
5
+ id: "coolingEnergy",
6
+ measure: "energy",
7
+ aggregate: "instant",
8
+ units,
9
+ };
10
+
11
+ export const diffCoolingEnergy: RegisterDefinition = {
12
+ id: "diffCoolingEnergy",
13
+ measure: "energy",
14
+ aggregate: "diff",
15
+ units,
16
+ };
17
+
18
+ export const cntCoolingEnergy: RegisterDefinition = {
19
+ id: "cntCoolingEnergy",
20
+ measure: "energy",
21
+ aggregate: "cnt",
22
+ units: ["unitless"],
23
+ };