@utiliread/primitives 1.0.0-127 → 1.0.0-129

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 (130) hide show
  1. package/dist/aggregate-id.d.ts +1 -0
  2. package/dist/breakdown-rule.d.ts +18 -0
  3. package/dist/breakdown-rule.spec.d.ts +1 -0
  4. package/dist/index.d.ts +20 -175
  5. package/dist/index.js +1189 -1666
  6. package/dist/index.js.map +1 -1
  7. package/dist/index.mjs +1177 -1651
  8. package/dist/index.mjs.map +1 -1
  9. package/{src/luxon-local.ts → dist/luxon-local.d.ts} +1 -2
  10. package/dist/measure-id.d.ts +1 -0
  11. package/dist/measures/duration.d.ts +2 -0
  12. package/dist/measures/energy.d.ts +2 -0
  13. package/dist/measures/humidity.d.ts +2 -0
  14. package/dist/measures/infocode.d.ts +2 -0
  15. package/dist/measures/mass-flow.d.ts +3 -0
  16. package/dist/measures/mass.d.ts +2 -0
  17. package/dist/measures/noise.d.ts +3 -0
  18. package/dist/measures/power.d.ts +3 -0
  19. package/dist/measures/pressure.d.ts +3 -0
  20. package/dist/measures/reactive-energy.d.ts +2 -0
  21. package/dist/measures/reactive-power.d.ts +2 -0
  22. package/dist/measures/temperature.d.ts +3 -0
  23. package/dist/measures/time.d.ts +2 -0
  24. package/dist/measures/volume-flow.d.ts +3 -0
  25. package/dist/measures/volume.d.ts +2 -0
  26. package/dist/medium.d.ts +7 -0
  27. package/dist/medium.spec.d.ts +1 -0
  28. package/dist/number-formatter.d.ts +17 -0
  29. package/dist/number-formatter.spec.d.ts +1 -0
  30. package/dist/optional.d.ts +1 -0
  31. package/dist/precision-number.d.ts +15 -0
  32. package/dist/precision-number.spec.d.ts +1 -0
  33. package/dist/register-convention.d.ts +14 -0
  34. package/dist/register-convention.spec.d.ts +1 -0
  35. package/dist/register-definition.d.ts +13 -0
  36. package/dist/{src/index.bef52b22.ts → register-id.d.ts} +0 -115
  37. package/dist/register-library.d.ts +15 -0
  38. package/dist/register-library.spec.d.ts +1 -0
  39. package/dist/register-pack.d.ts +4 -0
  40. package/dist/register-utils.d.ts +3 -0
  41. package/dist/registers/acoustic-noise.d.ts +8 -0
  42. package/dist/registers/ambient-temperature.d.ts +8 -0
  43. package/dist/registers/consumer.d.ts +9 -0
  44. package/dist/registers/cooling-energy-inlet.d.ts +4 -0
  45. package/dist/registers/cooling-energy-outlet.d.ts +4 -0
  46. package/dist/registers/cooling-energy.d.ts +4 -0
  47. package/dist/registers/cooling.d.ts +15 -0
  48. package/dist/registers/device-addresses-kamdraft.d.ts +6 -0
  49. package/dist/registers/device-addresses-msisdn.d.ts +6 -0
  50. package/dist/registers/device-addresses-tchlr.d.ts +6 -0
  51. package/dist/registers/device-addresses-wmbus.d.ts +9 -0
  52. package/dist/registers/device-date-time.d.ts +2 -0
  53. package/dist/registers/device-date.d.ts +2 -0
  54. package/dist/registers/device-nominal-diameter.d.ts +2 -0
  55. package/dist/registers/device-permanent-volume-flow.d.ts +2 -0
  56. package/dist/registers/device-registers.d.ts +2 -0
  57. package/dist/registers/device-samples.d.ts +14 -0
  58. package/dist/registers/device-software-version.d.ts +2 -0
  59. package/dist/registers/device-time.d.ts +2 -0
  60. package/dist/registers/device.d.ts +8 -0
  61. package/dist/registers/diehl-infocode.d.ts +6 -0
  62. package/dist/registers/electrical-energy.d.ts +4 -0
  63. package/dist/registers/energy-inlet.d.ts +4 -0
  64. package/dist/registers/energy-outlet.d.ts +4 -0
  65. package/dist/registers/error-operating-time.d.ts +4 -0
  66. package/dist/registers/flow-temperature-aux.d.ts +8 -0
  67. package/dist/registers/flow-temperature-inlet.d.ts +8 -0
  68. package/dist/registers/flow-temperature-outlet.d.ts +8 -0
  69. package/dist/registers/flow-temperature.d.ts +8 -0
  70. package/dist/registers/heat-energy-inlet.d.ts +10 -0
  71. package/dist/registers/heat-energy-outlet.d.ts +10 -0
  72. package/dist/registers/heat-energy.d.ts +10 -0
  73. package/dist/registers/index.d.ts +70 -0
  74. package/dist/registers/infocode.d.ts +2 -0
  75. package/dist/registers/kamstrup-module-type.d.ts +2 -0
  76. package/dist/registers/kamstrup-multical-infocode.d.ts +9 -0
  77. package/dist/registers/landis-gyr-infocode.d.ts +4 -0
  78. package/dist/registers/landis-gyr-mbus-status.d.ts +4 -0
  79. package/dist/registers/mass-flow-inlet.d.ts +8 -0
  80. package/dist/registers/mass-flow-outlet.d.ts +8 -0
  81. package/dist/registers/mass-flow.d.ts +8 -0
  82. package/dist/registers/mass-inlet.d.ts +4 -0
  83. package/dist/registers/mass-outlet.d.ts +4 -0
  84. package/dist/registers/mass.d.ts +4 -0
  85. package/dist/registers/mbus-format-string-signature.d.ts +2 -0
  86. package/dist/registers/none.d.ts +2 -0
  87. package/dist/registers/operating-time.d.ts +4 -0
  88. package/dist/registers/place.d.ts +16 -0
  89. package/dist/registers/power-inlet.d.ts +8 -0
  90. package/dist/registers/power-outlet.d.ts +8 -0
  91. package/dist/registers/power.d.ts +8 -0
  92. package/dist/registers/pressure-inlet.d.ts +8 -0
  93. package/dist/registers/pressure-outlet.d.ts +8 -0
  94. package/dist/registers/pressure.d.ts +8 -0
  95. package/dist/registers/radiator-temperature.d.ts +8 -0
  96. package/dist/registers/reactive-energy.d.ts +4 -0
  97. package/dist/registers/relative-humidity.d.ts +2 -0
  98. package/dist/registers/remaining-battery-time.d.ts +4 -0
  99. package/dist/registers/time-last-exact-overhearing-arrived.d.ts +3 -0
  100. package/dist/registers/time-last-installation-mounted.d.ts +3 -0
  101. package/dist/registers/time-last-possible-candidate-overhearing-arrived.d.ts +3 -0
  102. package/dist/registers/time-last-sampled.d.ts +3 -0
  103. package/dist/registers/time.d.ts +7 -0
  104. package/dist/registers/volume-flow-inlet.d.ts +8 -0
  105. package/dist/registers/volume-flow-outlet.d.ts +8 -0
  106. package/dist/registers/volume-flow.d.ts +8 -0
  107. package/dist/registers/volume-inlet.d.ts +4 -0
  108. package/dist/registers/volume-outlet.d.ts +4 -0
  109. package/dist/registers/volume-pulse-input-a.d.ts +4 -0
  110. package/dist/registers/volume-pulse-input-b.d.ts +4 -0
  111. package/dist/registers/volume.d.ts +4 -0
  112. package/dist/repository.d.ts +10 -0
  113. package/dist/repository.spec.d.ts +1 -0
  114. package/dist/step.d.ts +15 -0
  115. package/dist/step.spec.d.ts +1 -0
  116. package/dist/time-or-rule.d.ts +10 -0
  117. package/dist/types/index.d.ts +0 -5
  118. package/dist/types/step.d.ts +1 -2
  119. package/dist/unit-id.d.ts +1 -0
  120. package/package.json +9 -10
  121. package/rollup.config.mjs +31 -0
  122. package/src/index.ts +2 -26
  123. package/src/medium.spec.ts +2 -2
  124. package/src/precision-number.ts +5 -3
  125. package/src/repository.spec.ts +3 -2
  126. package/src/repository.ts +1 -4
  127. package/src/step.ts +1 -2
  128. package/tsconfig.json +6 -6
  129. package/dist/index.d.ts.map +0 -1
  130. package/dist/src/index.bef52b22.ts.map +0 -1
@@ -0,0 +1 @@
1
+ export type AggregateId = "instant" | "diff" | "min" | "max" | "avg" | "sum" | "cnt" | "ssq";
@@ -0,0 +1,18 @@
1
+ import { TimeOrRule } from "./time-or-rule";
2
+ export type BreakdownRule = string;
3
+ export type BreakdownPeriod = "hour" | "day" | "week" | "month" | "year";
4
+ interface BreakdownRuleInit {
5
+ origin: TimeOrRule;
6
+ count: number;
7
+ period: BreakdownPeriod;
8
+ }
9
+ export declare function BreakdownRule(init: BreakdownRuleInit): BreakdownRule;
10
+ export declare function BreakdownRule(origin: TimeOrRule, count: number, period: BreakdownPeriod): BreakdownRule;
11
+ export declare namespace BreakdownRule {
12
+ function split(rule: BreakdownRule): {
13
+ origin: TimeOrRule;
14
+ count: number;
15
+ period: BreakdownPeriod;
16
+ };
17
+ }
18
+ export {};
@@ -0,0 +1 @@
1
+ export {};
package/dist/index.d.ts CHANGED
@@ -1,178 +1,23 @@
1
- import { Duration, DateTime } from "luxon";
2
- export type Medium = "none" | "heat" | "water" | "cooling" | "electricity" | "infrastructure" | "all";
3
- export declare namespace Medium {
4
- function isMedium(input: string): input is Medium;
5
- function isMedium(input: string[]): input is Medium[];
6
- function isMeter(medium: Medium | Medium[]): boolean;
7
- function isFlowMeter(medium: Medium | Medium[]): boolean;
8
- }
9
- export type Repository = "some/repo";
10
- export function Repository(repo: string): Repository;
11
- export function Repository(team: string, name: string): Repository;
12
- export declare namespace Repository {
13
- function isRepository(input: string): input is Repository;
14
- function split(repo: Repository): {
15
- team: string;
16
- name: string;
17
- };
18
- }
19
- export type UnitId = "unitless" | "milliWattHour" | "wattHour" | "kiloWattHour" | "megaWattHour" | "gigaWattHour" | "calorie" | "kiloCalorie" | "megaCalorie" | "gigaCalorie" | "joule" | "kiloJoule" | "megaJoule" | "gigaJoule" | "liter" | "cubicMeter" | "fluidOunce" | "gallon" | "gram" | "kiloGram" | "tonne" | "ounce" | "pound" | "ton" | "second" | "minute" | "hour" | "day" | "week" | "month" | "year" | "milliWatt" | "milliWatt2" | "watt" | "watt2" | "kiloWatt" | "kiloWatt2" | "megaWatt" | "megaWatt2" | "gigaWatt" | "gigaWatt2" | "joulesPerSecond" | "joulesPerSecond2" | "joulesPerMinute" | "joulesPerMinute2" | "joulesPerHour" | "joulesPerHour2" | "litersPerSecond" | "litersPerSecond2" | "litersPerMinute" | "litersPerMinute2" | "litersPerHour" | "litersPerHour2" | "cubicMetersPerSecond" | "cubicMetersPerSecond2" | "cubicMetersPerMinute" | "cubicMetersPerMinute2" | "cubicMetersPerHour" | "cubicMetersPerHour2" | "fluidOuncesPerSecond" | "fluidOuncesPerSecond2" | "fluidOuncesPerMinute" | "fluidOuncesPerMinute2" | "fluidOuncesPerHour" | "fluidOuncesPerHour2" | "gallonsPerSecond" | "gallonsPerSecond2" | "gallonsPerMinute" | "gallonsPerMinute2" | "gallonsPerHour" | "gallonsPerHour2" | "gramsPerSecond" | "gramsPerSecond2" | "gramsPerMinute" | "gramsPerMinute2" | "gramsPerHour" | "gramsPerHour2" | "kiloGramsPerSecond" | "kiloGramsPerSecond2" | "kiloGramsPerMinute" | "kiloGramsPerMinute2" | "kiloGramsPerHour" | "kiloGramsPerHour2" | "celcius" | "celcius2" | "kelvin" | "kelvin2" | "fahrenheit" | "fahrenheit2" | "bar" | "bar2" | "pascal" | "pascal2" | "kiloPascal" | "kiloPascal2" | "decibel" | "decibel2" | "var" | "kiloVar" | "megaVar" | "varHour" | "kiloVarHour" | "megaVarHour" | "percentage" | "literCelcius" | "cubicMeterCelcius" | "json";
20
- export type AggregateId = "instant" | "diff" | "min" | "max" | "avg" | "sum" | "cnt" | "ssq";
21
- export type MeasureId = "none" | "duration" | "energy" | "humidity" | "mass" | "massFlow" | "noise" | "power" | "pressure" | "reactiveEnergy" | "reactivePower" | "temperature" | "time" | "volume" | "volumeFlow" | "infocode";
22
- export type RegisterId = "none" | "heatEnergy" | "diffHeatEnergy" | "cntHeatEnergy" | "heatEnergyVolumeInInlet" | "diffHeatEnergyVolumeInInlet" | "cntHeatEnergyVolumeInInlet" | "heatEnergyVolumeInOutlet" | "diffHeatEnergyVolumeInOutlet" | "cntHeatEnergyVolumeInOutlet" | "coolingEnergy" | "diffCoolingEnergy" | "cntCoolingEnergy" | "coolingEnergyVolumeInInlet" | "diffCoolingEnergyVolumeInInlet" | "cntCoolingEnergyVolumeInInlet" | "coolingEnergyVolumeInOutlet" | "diffCoolingEnergyVolumeInOutlet" | "cntCoolingEnergyVolumeInOutlet" | "electricalEnergy" | "diffElectricalEnergy" | "cntElectricalEnergy" | "reactiveEnergy" | "diffReactiveEnergy" | "cntReactiveEnergy" | "heatEnergyTariff1" | "diffHeatEnergyTariff1" | "cntHeatEnergyTariff1" | "heatEnergyTariff1VolumeInInlet" | "diffHeatEnergyTariff1VolumeInInlet" | "cntHeatEnergyTariff1VolumeInInlet" | "heatEnergyTariff1VolumeInOutlet" | "diffHeatEnergyTariff1VolumeInOutlet" | "cntHeatEnergyTariff1VolumeInOutlet" | "heatEnergyTariff2" | "diffHeatEnergyTariff2" | "cntHeatEnergyTariff2" | "heatEnergyTariff2VolumeInInlet" | "diffHeatEnergyTariff2VolumeInInlet" | "cntHeatEnergyTariff2VolumeInInlet" | "heatEnergyTariff2VolumeInOutlet" | "diffHeatEnergyTariff2VolumeInOutlet" | "cntHeatEnergyTariff2VolumeInOutlet" | "volume" | "diffVolume" | "cntVolume" | "inletVolume" | "diffInletVolume" | "cntInletVolume" | "outletVolume" | "diffOutletVolume" | "cntOutletVolume" | "pulseInputAVolume" | "diffPulseInputAVolume" | "cntPulseInputAVolume" | "pulseInputBVolume" | "diffPulseInputBVolume" | "cntPulseInputBVolume" | "mass" | "diffMass" | "cntMass" | "inletMass" | "diffInletMass" | "cntInletMass" | "outletMass" | "diffOutletMass" | "cntOutletMass" | "pressure" | "maxPressure" | "minPressure" | "avgPressure" | "sumPressure" | "cntPressure" | "ssqPressure" | "inletPressure" | "maxInletPressure" | "minInletPressure" | "avgInletPressure" | "sumInletPressure" | "cntInletPressure" | "ssqInletPressure" | "outletPressure" | "maxOutletPressure" | "minOutletPressure" | "avgOutletPressure" | "sumOutletPressure" | "cntOutletPressure" | "ssqOutletPressure" | "power" | "maxPower" | "minPower" | "avgPower" | "sumPower" | "cntPower" | "ssqPower" | "inletPower" | "maxInletPower" | "minInletPower" | "avgInletPower" | "sumInletPower" | "cntInletPower" | "ssqInletPower" | "outletPower" | "maxOutletPower" | "minOutletPower" | "avgOutletPower" | "sumOutletPower" | "cntOutletPower" | "ssqOutletPower" | "volumeFlow" | "maxVolumeFlow" | "minVolumeFlow" | "avgVolumeFlow" | "sumVolumeFlow" | "cntVolumeFlow" | "ssqVolumeFlow" | "inletVolumeFlow" | "maxInletVolumeFlow" | "minInletVolumeFlow" | "avgInletVolumeFlow" | "sumInletVolumeFlow" | "cntInletVolumeFlow" | "ssqInletVolumeFlow" | "outletVolumeFlow" | "maxOutletVolumeFlow" | "minOutletVolumeFlow" | "avgOutletVolumeFlow" | "sumOutletVolumeFlow" | "cntOutletVolumeFlow" | "ssqOutletVolumeFlow" | "massFlow" | "maxMassFlow" | "minMassFlow" | "avgMassFlow" | "sumMassFlow" | "cntMassFlow" | "ssqMassFlow" | "inletMassFlow" | "maxInletMassFlow" | "minInletMassFlow" | "avgInletMassFlow" | "sumInletMassFlow" | "cntInletMassFlow" | "ssqInletMassFlow" | "outletMassFlow" | "maxOutletMassFlow" | "minOutletMassFlow" | "avgOutletMassFlow" | "sumOutletMassFlow" | "cntOutletMassFlow" | "ssqOutletMassFlow" | "flowTemperature" | "maxFlowTemperature" | "minFlowTemperature" | "avgFlowTemperature" | "sumFlowTemperature" | "cntFlowTemperature" | "ssqFlowTemperature" | "inletFlowTemperature" | "maxInletFlowTemperature" | "minInletFlowTemperature" | "avgInletFlowTemperature" | "sumInletFlowTemperature" | "cntInletFlowTemperature" | "ssqInletFlowTemperature" | "outletFlowTemperature" | "maxOutletFlowTemperature" | "minOutletFlowTemperature" | "avgOutletFlowTemperature" | "sumOutletFlowTemperature" | "cntOutletFlowTemperature" | "ssqOutletFlowTemperature" | "inletMinusOutletFlowTemperatureDifference" | "maxInletMinusOutletFlowTemperatureDifference" | "minInletMinusOutletFlowTemperatureDifference" | "avgInletMinusOutletFlowTemperatureDifference" | "sumInletMinusOutletFlowTemperatureDifference" | "cntInletMinusOutletFlowTemperatureDifference" | "ssqInletMinusOutletFlowTemperatureDifference" | "outletMinusInletFlowTemperatureDifference" | "maxOutletMinusInletFlowTemperatureDifference" | "minOutletMinusInletFlowTemperatureDifference" | "avgOutletMinusInletFlowTemperatureDifference" | "sumOutletMinusInletFlowTemperatureDifference" | "cntOutletMinusInletFlowTemperatureDifference" | "ssqOutletMinusInletFlowTemperatureDifference" | "ambientTemperature" | "maxAmbientTemperature" | "minAmbientTemperature" | "avgAmbientTemperature" | "sumAmbientTemperature" | "cntAmbientTemperature" | "ssqAmbientTemperature" | "radiatorTemperature" | "maxRadiatorTemperature" | "minRadiatorTemperature" | "avgRadiatorTemperature" | "sumRadiatorTemperature" | "cntRadiatorTemperature" | "ssqRadiatorTemperature" | "auxFlowTemperature" | "maxAuxFlowTemperature" | "minAuxFlowTemperature" | "avgAuxFlowTemperature" | "sumAuxFlowTemperature" | "cntAuxFlowTemperature" | "ssqAuxFlowTemperature" | "acousticNoise" | "maxAcousticNoise" | "minAcousticNoise" | "avgAcousticNoise" | "sumAcousticNoise" | "cntAcousticNoise" | "ssqAcousticNoise" | "relativeHumidity" | "kamstrupE8Inlet" | "diffKamstrupE8Inlet" | "cntKamstrupE8Inlet" | "kamstrupE9Outlet" | "diffKamstrupE9Outlet" | "cntKamstrupE9Outlet" | "operatingTime" | "diffOperatingTime" | "cntOperatingTime" | "errorOperatingTime" | "diffErrorOperatingTime" | "cntErrorOperatingTime" | "remainingBatteryTime" | "diffRemainingBatteryTime" | "cntRemainingBatteryTime" | "deviceDate" | "deviceTime" | "deviceDateTime" | "timeSinceLastExactOverhearingArrived" | "timeAtLastExactOverhearingArrived" | "timeSinceLastPossibleCandidateOverhearingArrived" | "timeAtLastPossibleCandidateOverhearingArrived" | "timeSinceLastSampled" | "timeAtLastSampled" | "timeSinceLastInstallationMounted" | "timeAtLastInstallationMounted" | "basetime" | "instantTime" | "periodStartTime" | "periodEndTime" | "instantOrPeriodStartTime" | "instantOrPeriodEndTime" | "device" | "wMBusDeviceAddresses" | "kamdraftDeviceAddresses" | "tchlrDeviceAddresses" | "msisdnDeviceAddresses" | "deviceRegisters" | "devicePermanentVolumeFlow" | "deviceNominalDiameter" | "place" | "lastPlace" | "mBusFormatStringSignature" | "deviceSoftwareVersion" | "legacyDeviceSamples" | "deviceSamplesOnLastMount" | "deviceSamplesOnLastUnmount" | "consumer" | "kamstrupMulticalInfocodeType1" | "kamstrupMulticalInfocodeType2" | "kamstrupMulticalInfocodeType3" | "kamstrupMulticalInfocodeType4" | "kamstrupMulticalInfocodeType5" | "kamstrupMulticalInfocodeType6" | "kamstrupMulticalInfocodeType7" | "kamstrupMulticalInfocode" | "kamstrupModuleType" | "diehlInfocodeType1" | "diehlInfocodeType2" | "diehlInfocodeType3" | "diehlInfocodeType4" | "diehlInfocode" | "landisGyrMBusStatusType1" | "landisGyrMBusStatusType2" | "landisGyrMBusStatus" | "landisGyrInfocodeType1" | "landisGyrInfocodeType2" | "landisGyrInfocode" | "infocode";
23
- export interface RegisterDefinition {
24
- id: RegisterId;
25
- measure: MeasureId;
26
- aggregate: AggregateId;
27
- units: ReadonlyArray<UnitId>;
28
- immediate?: true;
29
- name?: string;
30
- description?: string;
31
- }
32
- interface Consumer {
33
- id: number;
34
- name: string;
35
- consumerNumber: string;
36
- emailAddress: string;
37
- phoneNumber: string;
38
- }
39
- interface KamdraftDeviceAddress {
40
- _t: "kamdraft";
41
- serialNumber: number;
42
- }
43
- interface MsisdnDeviceAddress {
44
- _t: "msisdn";
45
- msisdn: number;
46
- }
47
- interface TchlrDeviceAddress {
48
- _t: "tchlr";
49
- serialNumber: number;
50
- }
51
- interface WMBusDeviceAddress {
52
- _t: "wmbus";
53
- manufacturerCode: number;
54
- serialNumber: number;
55
- version: number;
56
- type: number;
57
- }
58
- interface Device {
59
- id: number;
60
- deviceNumber: string;
61
- manufacturerName: string;
62
- modelName: string;
63
- }
64
- interface DeviceSample {
65
- register: RegisterId;
66
- instantOrPeriodEnd: string;
67
- value: number;
68
- precision: number;
69
- unit: UnitId;
70
- }
71
- interface Place {
72
- id: number;
73
- name: string;
74
- placeNumber: string;
75
- longitude?: number;
76
- latitude?: number;
77
- address?: string;
78
- addressPlace?: string;
79
- addressPostalCode?: string;
80
- addressCity?: string;
81
- darAccessAddressId?: string;
82
- darAddressId?: string;
83
- }
84
- export type Step = "hour" | "day" | "week" | "month" | "year";
85
- export enum DayOfWeek {
86
- Monday = 1,
87
- Tuesday = 2,
88
- Wednesday = 3,
89
- Thursday = 4,
90
- Friday = 5,
91
- Saturday = 6,
92
- Sunday = 7
93
- }
94
- export declare namespace Step {
95
- function startOf(dateTime: DateTime, step: Step, firstDayOfWeek?: DayOfWeek): DateTime;
96
- function asDuration(step: Step, amount?: number): Duration;
97
- }
98
- export const invariantDecimalSeparator: string;
99
- export const localeDecimalSeparator: string;
100
- interface Parts {
101
- invariantPrecisionString: string;
102
- invariantCoefficientString: string;
103
- exponent: number;
104
- noOfCoefficientDecimals: number;
105
- }
106
- declare class Formatter {
107
- toPrecision(value: number, precision: number, maxDecimals?: number): string;
108
- toLocalePrecision(value: number, precision: number, maxDecimals?: number): string;
109
- toFixed(value: number, precision: number, maxDecimals?: number): string;
110
- toLocaleFixed(value: number, precision: number, maxDecimals?: number): string;
111
- getParts(value: number, precision: number, maxDecimals?: number): Parts;
112
- }
113
- export const NumberFormatter: Formatter;
114
- export type TimeOrRule = Date | DateTime<true> | string;
115
- export function TimeOrRule(timeOrRule: Date | DateTime<true> | string): TimeOrRule;
116
- export declare namespace TimeOrRule {
117
- function parse(input: string): TimeOrRule;
118
- function isTime(input: TimeOrRule): input is Date | DateTime<true>;
119
- function isRule(input: TimeOrRule): input is string;
120
- function asDateTime(input: TimeOrRule): DateTime<true> | undefined;
121
- function toJSON(input: TimeOrRule): string;
122
- }
123
- export type BreakdownRule = string;
124
- export type BreakdownPeriod = "hour" | "day" | "week" | "month" | "year";
125
- interface BreakdownRuleInit {
126
- origin: TimeOrRule;
127
- count: number;
128
- period: BreakdownPeriod;
129
- }
130
- export function BreakdownRule(init: BreakdownRuleInit): BreakdownRule;
131
- export function BreakdownRule(origin: TimeOrRule, count: number, period: BreakdownPeriod): BreakdownRule;
132
- export declare namespace BreakdownRule {
133
- function split(rule: BreakdownRule): {
134
- origin: TimeOrRule;
135
- count: number;
136
- period: BreakdownPeriod;
137
- };
138
- }
139
- export type Optional<T, K extends keyof T> = Pick<Partial<T>, K> & Omit<T, K>;
140
- export class PrecisionNumber {
141
- value: number;
142
- precision: number;
143
- constructor(value: number, precision?: number);
144
- static parse(input: string): PrecisionNumber;
145
- abs(): PrecisionNumber;
146
- plus(rhs: PrecisionNumber): PrecisionNumber;
147
- minus(rhs: PrecisionNumber): PrecisionNumber;
148
- valueOf(): number;
149
- toString(): string;
150
- toFixed(): string;
151
- toPrecision(): string;
152
- toLocaleFixed(): string;
153
- toLocalePrecision(): string;
154
- }
155
- declare class Convention {
156
- getAggregate(register: RegisterId | RegisterDefinition): AggregateId;
157
- toInstant(register: RegisterId | RegisterDefinition): RegisterId;
158
- toAggregate(register: RegisterId | RegisterDefinition, aggregate: AggregateId): RegisterId;
159
- }
160
- export const RegisterConvention: Convention;
161
- interface RegisterPack {
162
- [key: string]: RegisterDefinition;
163
- }
164
- declare class Library {
165
- add(...definitions: (RegisterDefinition | RegisterPack)[]): void;
166
- has(id: RegisterId): boolean;
167
- tryGet(id: RegisterId): RegisterDefinition | undefined;
168
- get(id: RegisterId): RegisterDefinition;
169
- all(): RegisterDefinition[];
170
- reset(): void;
171
- }
172
- export const RegisterLibrary: Library;
173
- export const registers: Record<RegisterId, RegisterDefinition>;
1
+ import type { Consumer, Device, DeviceSample, KamdraftDeviceAddress, MsisdnDeviceAddress, Place, TchlrDeviceAddress, WMBusDeviceAddress } from "./registers";
2
+ import type { RegisterDefinition } from "./register-definition";
3
+ import type { RegisterId } from "./register-id";
4
+ export { DayOfWeek, Step } from "./step";
5
+ export { NumberFormatter, invariantDecimalSeparator, localeDecimalSeparator, } from "./number-formatter";
6
+ export type { AggregateId } from "./aggregate-id";
7
+ export type { BreakdownPeriod } from "./breakdown-rule";
8
+ export { BreakdownRule } from "./breakdown-rule";
9
+ export type { MeasureId } from "./measure-id";
10
+ export { Medium } from "./medium";
11
+ export type { Optional } from "./optional";
12
+ export { PrecisionNumber } from "./precision-number";
13
+ export { RegisterConvention } from "./register-convention";
14
+ export type { RegisterDefinition } from "./register-definition";
15
+ export type { RegisterId } from "./register-id";
16
+ export { RegisterLibrary } from "./register-library";
17
+ export { Repository } from "./repository";
18
+ export { TimeOrRule } from "./time-or-rule";
19
+ export type { UnitId } from "./unit-id";
20
+ export declare const registers: Record<RegisterId, RegisterDefinition>;
174
21
  export declare namespace SampleValue {
175
22
  export type { Consumer, Device, DeviceSample, KamdraftDeviceAddress, MsisdnDeviceAddress, Place, TchlrDeviceAddress, WMBusDeviceAddress, };
176
23
  }
177
-
178
- //# sourceMappingURL=index.d.ts.map