@open-charging-cloud/wwcp-poi 0.2.0 → 0.4.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.
Files changed (91) hide show
  1. package/CHANGELOG.md +658 -1
  2. package/README.md +106 -38
  3. package/dist/common.d.ts +11 -0
  4. package/dist/common.d.ts.map +1 -1
  5. package/dist/crypto/ber.d.ts +48 -0
  6. package/dist/crypto/ber.d.ts.map +1 -0
  7. package/dist/crypto/certificates.d.ts +21 -0
  8. package/dist/crypto/certificates.d.ts.map +1 -0
  9. package/dist/crypto/curves.d.ts +25 -0
  10. package/dist/crypto/curves.d.ts.map +1 -0
  11. package/dist/crypto/ecc.d.ts +34 -0
  12. package/dist/crypto/ecc.d.ts.map +1 -0
  13. package/dist/crypto/publicKeys.d.ts +51 -0
  14. package/dist/crypto/publicKeys.d.ts.map +1 -0
  15. package/dist/crypto/rsa.d.ts +30 -0
  16. package/dist/crypto/rsa.d.ts.map +1 -0
  17. package/dist/encoding/text.d.ts +9 -0
  18. package/dist/encoding/text.d.ts.map +1 -1
  19. package/dist/evTaler/amounts.d.ts +89 -0
  20. package/dist/evTaler/amounts.d.ts.map +1 -0
  21. package/dist/evTaler/contractTerms.d.ts +126 -0
  22. package/dist/evTaler/contractTerms.d.ts.map +1 -0
  23. package/dist/evTaler/meterValue.d.ts +65 -0
  24. package/dist/evTaler/meterValue.d.ts.map +1 -0
  25. package/dist/evTaler/payURI.d.ts +28 -0
  26. package/dist/evTaler/payURI.d.ts.map +1 -0
  27. package/dist/evTaler/settlement.d.ts +85 -0
  28. package/dist/evTaler/settlement.d.ts.map +1 -0
  29. package/dist/evTaler/step.d.ts +72 -0
  30. package/dist/evTaler/step.d.ts.map +1 -0
  31. package/dist/history/apply.d.ts +6 -1
  32. package/dist/history/apply.d.ts.map +1 -1
  33. package/dist/history/changeSet.d.ts +30 -4
  34. package/dist/history/changeSet.d.ts.map +1 -1
  35. package/dist/history/checkpoint.d.ts +7 -0
  36. package/dist/history/checkpoint.d.ts.map +1 -1
  37. package/dist/history/commit.d.ts +21 -3
  38. package/dist/history/commit.d.ts.map +1 -1
  39. package/dist/history/elements.d.ts +19 -0
  40. package/dist/history/elements.d.ts.map +1 -0
  41. package/dist/history/history.d.ts +46 -6
  42. package/dist/history/history.d.ts.map +1 -1
  43. package/dist/history/preconditions.d.ts +23 -0
  44. package/dist/history/preconditions.d.ts.map +1 -0
  45. package/dist/index.d.ts +11 -4
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +10170 -2047
  48. package/dist/index.js.map +1 -1
  49. package/dist/json/canonical.d.ts.map +1 -1
  50. package/dist/keys.d.ts.map +1 -1
  51. package/dist/network/certificates.d.ts +16 -4
  52. package/dist/network/certificates.d.ts.map +1 -1
  53. package/dist/network/countries.d.ts +16 -0
  54. package/dist/network/countries.d.ts.map +1 -0
  55. package/dist/network/evTaler.d.ts +7 -14
  56. package/dist/network/evTaler.d.ts.map +1 -1
  57. package/dist/network/identifications.d.ts +6 -6
  58. package/dist/network/identifications.d.ts.map +1 -1
  59. package/dist/network/measurementPublicKey.d.ts +7 -0
  60. package/dist/network/measurementPublicKey.d.ts.map +1 -0
  61. package/dist/network/offers.d.ts +53 -0
  62. package/dist/network/offers.d.ts.map +1 -0
  63. package/dist/network/partyKeys.d.ts +8 -5
  64. package/dist/network/partyKeys.d.ts.map +1 -1
  65. package/dist/network/poiJSON.d.ts +175 -0
  66. package/dist/network/poiJSON.d.ts.map +1 -0
  67. package/dist/network/poiValues.d.ts +55 -0
  68. package/dist/network/poiValues.d.ts.map +1 -0
  69. package/dist/network/reading.d.ts +58 -0
  70. package/dist/network/reading.d.ts.map +1 -0
  71. package/dist/network/references.d.ts +43 -0
  72. package/dist/network/references.d.ts.map +1 -0
  73. package/dist/network/roamingNetwork.d.ts +17 -12
  74. package/dist/network/roamingNetwork.d.ts.map +1 -1
  75. package/dist/network/timeZones.d.ts +8 -0
  76. package/dist/network/timeZones.d.ts.map +1 -0
  77. package/dist/network/tree.d.ts +14 -0
  78. package/dist/network/tree.d.ts.map +1 -1
  79. package/dist/network/versionTexts.d.ts +1 -7
  80. package/dist/network/versionTexts.d.ts.map +1 -1
  81. package/dist/network/writtenForm.d.ts +27 -1
  82. package/dist/network/writtenForm.d.ts.map +1 -1
  83. package/dist/proofs/keyStatement.d.ts.map +1 -1
  84. package/dist/proofs/priceStatement.d.ts.map +1 -1
  85. package/dist/verifier/checkpoints.d.ts +6 -0
  86. package/dist/verifier/checkpoints.d.ts.map +1 -1
  87. package/dist/verifier/grossRates.d.ts +11 -0
  88. package/dist/verifier/grossRates.d.ts.map +1 -0
  89. package/dist/verifier/sessionPrices.d.ts +3 -0
  90. package/dist/verifier/sessionPrices.d.ts.map +1 -1
  91. package/package.json +14 -13
@@ -0,0 +1,43 @@
1
+ import { type JSONObject } from '../json/value.ts';
2
+ import { type Checked } from './poiJSON.ts';
3
+ /**
4
+ * The given check of the network or of an operator, remembering what it found within it: nothing of a check before, as the
5
+ * content may be changed between two checks, e.g. by a change set, and nothing after it.
6
+ */
7
+ export declare function whileChecking<T>(check: () => T): T;
8
+ /**
9
+ * The error, as WWCP_POI3 words it after the last change of a change set, when a group of a charging station operator
10
+ * names a member it does not have, or an offer a group it does not have (`InvalidGroupOrOffer`), or a charging pool or a
11
+ * charging pool template of it the payment option EVTaler without an EV Taler merchant, or a charging pool as it is at
12
+ * runtime the payment option EVTaler without the authentication mode SecureDynamicQRCode (`InvalidPaymentOption`), or two of
13
+ * its charging tariff offers overlap at an EVSE (`OverlappingOffers`).
14
+ */
15
+ export declare const invalidGroupOrOffer: (operator: JSONObject) => string | undefined;
16
+ /**
17
+ * The error, when a charging pool or a charging pool template names the payment option EVTaler, but its operator has no
18
+ * merchant, or a charging pool as it is at runtime, with what its templates give it, names it without the authentication
19
+ * mode SecureDynamicQRCode (`InvalidPaymentOption`; decision D8 of concepts/EVTaler.md): every EV Taler session names the
20
+ * one-time password its EVSE gives right then. Templates themselves are not checked for the mode, only the pools.
21
+ */
22
+ export declare const invalidPaymentOption: (operator: JSONObject) => string | undefined;
23
+ /**
24
+ * What the constructor of a charging station operator of the given identification refuses of what it read, thrown as WWCP_POI3
25
+ * throws it, in its order: charging pools of another operator or given twice, charging stations, EVSEs and energy meters
26
+ * given twice in them; charging tariffs of another operator or given twice, tariffs of EVSEs and
27
+ * connectors unknown; groups and templates given twice or of another operator, tariffs and templates they name unknown;
28
+ * offers given twice or naming another operator; tariffs without a currency or elements, also of their templates; stations
29
+ * whose templates give them more power than their EVSEs have; members of groups and groups of offers unknown; the payment
30
+ * option EVTaler without a merchant. Of a version only: after a change set, WWCP_POI3 checks its groups, offers and payment
31
+ * options after the last change (`invalidGroupOrOffer`).
32
+ */
33
+ export declare function operatorConstruction(operator: JSONObject, id: string, of: 'version' | 'change set'): void;
34
+ /** What the constructor of the given charging station operator refuses, as its TryParse names it; undefined for nothing. */
35
+ export declare function checkOperator(operator: JSONObject, id: string, of?: 'version' | 'change set'): Checked;
36
+ /**
37
+ * The error, when the constructor of the roaming network refuses the parties of the given content, as WWCP_POI3 words it of a
38
+ * version, in its order, each as an argument of its parameter, or bare after the last change of a change set, in the order it
39
+ * checks them there; undefined for none. After a change set, a reference the version before the given one resolves names
40
+ * what the change set withdrew while another party still names it.
41
+ */
42
+ export declare const invalidReferences: (content: JSONObject, of: "version" | "change set", before?: JSONObject) => string | undefined;
43
+ //# sourceMappingURL=references.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"references.d.ts","sourceRoot":"","sources":["../../src/network/references.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAkC,KAAK,UAAU,EAAkB,MAAM,kBAAkB,CAAC;AACnG,OAAO,EAE+B,KAAK,OAAO,EAAW,MAAM,cAAc,CAAC;AAkJlF;;;GAGG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAgBlD;AAsUD;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,GAAI,UAAU,UAAU,KAAG,MAAM,GAAG,SAChB,CAAC;AA6UrD;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,GAAI,UAAU,UAAU,KAAG,MAAM,GAAG,SAChB,CAAC;AAoCtD;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,YAAY,GAAG,IAAI,CAEzG;AA6JD,4HAA4H;AAC5H,wBAAgB,aAAa,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,GAAE,SAAS,GAAG,YAAwB,GAAG,OAAO,CAUjH;AAmoBD;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAAI,SAAS,UAAU,EAAE,IAAI,SAAS,GAAG,YAAY,EAAE,SAAS,UAAU,KAAG,MAAM,GAAG,SACxD,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { type JSONObject, type JSONValue } from '../json/value.ts';
2
2
  import { type ETag } from '../etags.ts';
3
- import { type HashAlgorithm } from '../crypto/hash.ts';
3
+ import type { HashAlgorithm } from '../crypto/hash.ts';
4
4
  import type { POIPublicKey } from '../keys.ts';
5
5
  import { KeyStatement } from '../proofs/keyStatement.ts';
6
6
  import { SigningKeyCertificate } from '../proofs/signingKeyCertificate.ts';
@@ -31,6 +31,12 @@ export declare class RoamingNetworkOperator {
31
31
  */
32
32
  static parse(value: JSONValue | undefined, roamingNetworkId: string): RoamingNetworkOperator;
33
33
  }
34
+ /**
35
+ * The error, when WWCP_POI3 refuses the roaming network operator a change of a change set changed, as it reads it again right
36
+ * after the change (`TryApplyRegistryChange`): as `RoamingNetworkOperator.parse` reads it, but for what the roaming network
37
+ * refuses of it as it is made of it, after the last change. Undefined for none.
38
+ */
39
+ export declare function invalidRoamingNetworkOperator(json: JSONObject, roamingNetworkId: string): string | undefined;
34
40
  /**
35
41
  * A version of a roaming network (SPECIFICATION.md sections 2 and 3): its content and its ETags.
36
42
  */
@@ -45,23 +51,22 @@ export declare class RoamingNetwork {
45
51
  private constructor();
46
52
  /**
47
53
  * Reads a roaming network and refuses it unless it is a valid version: of its `@context`, with `eTags` that are those
48
- * of its content, where it lists any, without keys of its own, with a valid roaming network operator, and naming no
49
- * identification twice that WWCP_POI keeps unique within the roaming network (`duplicateIdentification`), nor a hardware
50
- * revision, firmware version or serial number WWCP_POI refuses (`invalidVersionText`), nor a certificate WWCP_POI
51
- * refuses to read (`invalidCertificates`), nor an EV Taler merchant or payment options it refuses (`invalidEVTaler`),
52
- * nor keys of a party it refuses (`invalidPartyKeys`),
53
- * nor what WWCP_POI takes and writes otherwise than the content holds it (`notWrittenAsHeld`),
54
- * also the version a change set leads to. Its `eTags` may be left out: what binds a version is the commit whose ETags it
55
- * has (`matchesCommitETags`).
54
+ * of its content, where it lists any, without keys of its own, with a valid roaming network operator, and nothing
55
+ * WWCP_POI3 refuses as it reads its parties (`invalidReading`), nor as it makes the roaming network of them, a reference
56
+ * it does not resolve or an identification it keeps unique given twice (`invalidReferences`), nor what WWCP_POI takes
57
+ * and writes otherwise than the content holds it (`notWrittenAsHeld`), also the version a change set leads to. Its
58
+ * `eTags` may be left out: what binds a version is the commit whose ETags it has (`matchesCommitETags`).
56
59
  */
57
60
  static parse(value: JSONValue | undefined): RoamingNetwork;
58
61
  /**
59
62
  * Reads the version the given change set leads to, its content after the last change, and refuses it as `parse`
60
63
  * does, but in the words WWCP_POI3 names what it refuses of the network there (RoamingNetwork.ChangeSets.cs): its
61
- * operator and the identifications it keeps unique within the roaming network bare, not as arguments of its
62
- * constructor.
64
+ * operator, the identifications it keeps unique within the roaming network and the references bare, not as arguments of
65
+ * its constructor, in its order there; a reference the given version before resolves as what the change set withdrew
66
+ * while it is still named. The groups, offers and payment options of its charging station operators it checks after
67
+ * the last change (`invalidGroupOrOffer`, `invalidPaymentOption`), before what it reads.
63
68
  */
64
- static afterChangeSet(content: JSONObject): RoamingNetwork;
69
+ static afterChangeSet(content: JSONObject, before?: JSONObject): RoamingNetwork;
65
70
  private static read;
66
71
  /** The effective content (8.1), calculated once. */
67
72
  get effectiveContent(): JSONObject;
@@ -1 +1 @@
1
- {"version":3,"file":"roamingNetwork.d.ts","sourceRoot":"","sources":["../../src/network/roamingNetwork.ts"],"names":[],"mappings":"AAkBA,OAAO,EAA2D,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC5H,OAAO,EAAmE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AACzG,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AASxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAc,YAAY,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAmB,2BAA2B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAU,oCAAoC,CAAC;AAI/E,eAAO,MAAM,uBAAuB,QAAuC,CAAC;AAgB5E,iFAAiF;AACjF,eAAO,MAAM,SAAS,GAAI,MAAM,SAAS,YAAY,EAAE,KAAG,GAAG,CAAC,MAAM,CACnB,CAAC;AAGlD;;;GAGG;AACH,qBAAa,sBAAsB;aAGX,EAAE,EAAuB,MAAM;aAC/B,YAAY,EAAa,SAAS,YAAY,EAAE;aAChD,YAAY,EAAa,MAAM;aAC/B,YAAY,EAAa,YAAY,GAAG,SAAS;aACjD,sBAAsB,EAAG,SAAS,qBAAqB,EAAE;aACzD,IAAI,EAAqB,UAAU;IANvD,OAAO;IASP,iDAAiD;IACjD,IAAW,WAAW,IAAI,YAAY,EAAE,CAKvC;IAGD;;;;;;;OAOG;WACW,KAAK,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,EAAE,gBAAgB,EAAE,MAAM,GAAG,sBAAsB;CAwHtG;AAGD;;GAEG;AACH,qBAAa,cAAc;aAMH,EAAE,EAAmB,MAAM;IAC3C,4FAA4F;aAC5E,OAAO,EAAc,UAAU;aAC/B,QAAQ,EAAa,sBAAsB,GAAG,SAAS;aACvD,kBAAkB,EAAG,SAAS,aAAa,EAAE;IARjE,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkC;IAE5D,OAAO;IASP;;;;;;;;;;OAUG;WACW,KAAK,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,cAAc;IAIjE;;;;;OAKG;WACW,cAAc,CAAC,OAAO,EAAE,UAAU,GAAG,cAAc;IAIjE,OAAO,CAAC,MAAM,CAAC,IAAI;IA0EnB,oDAAoD;IACpD,IAAW,gBAAgB,IAAI,UAAU,CAExC;IAED,kEAAkE;IAC3D,iBAAiB,CAAC,SAAS,EAAE,aAAa,GAAG,IAAI;IAaxD,kHAAkH;IAC3G,KAAK,IAAI,IAAI,EAAE;IAItB,+EAA+E;IACxE,cAAc,IAAI,IAAI,EAAE;IAI/B,6GAA6G;IACtG,kBAAkB,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,GAAG,OAAO;IAI1D,uCAAuC;IAChC,SAAS,IAAI,MAAM;IAI1B,IAAW,IAAI,IAAI,SAAS,GAAG,SAAS,CAEvC;IAED,IAAW,WAAW,IAAI,SAAS,GAAG,SAAS,CAE9C;IAED,qDAAqD;IAC9C,wBAAwB,IAAI,UAAU,EAAE;IAK/C,8EAA8E;IACvE,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;CAIrE"}
1
+ {"version":3,"file":"roamingNetwork.d.ts","sourceRoot":"","sources":["../../src/network/roamingNetwork.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAmD,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpH,OAAO,EAAmE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AACzG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AASvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAc,YAAY,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAmB,2BAA2B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAU,oCAAoC,CAAC;AAI/E,eAAO,MAAM,uBAAuB,QAAuC,CAAC;AAgB5E,iFAAiF;AACjF,eAAO,MAAM,SAAS,GAAI,MAAM,SAAS,YAAY,EAAE,KAAG,GAAG,CAAC,MAAM,CACnB,CAAC;AAGlD;;;GAGG;AACH,qBAAa,sBAAsB;aAGX,EAAE,EAAuB,MAAM;aAC/B,YAAY,EAAa,SAAS,YAAY,EAAE;aAChD,YAAY,EAAa,MAAM;aAC/B,YAAY,EAAa,YAAY,GAAG,SAAS;aACjD,sBAAsB,EAAG,SAAS,qBAAqB,EAAE;aACzD,IAAI,EAAqB,UAAU;IANvD,OAAO;IASP,iDAAiD;IACjD,IAAW,WAAW,IAAI,YAAY,EAAE,CAKvC;IAGD;;;;;;;OAOG;WACW,KAAK,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,EAAE,gBAAgB,EAAE,MAAM,GAAG,sBAAsB;CAoItG;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAc5G;AAGD;;GAEG;AACH,qBAAa,cAAc;aAMH,EAAE,EAAmB,MAAM;IAC3C,4FAA4F;aAC5E,OAAO,EAAc,UAAU;aAC/B,QAAQ,EAAa,sBAAsB,GAAG,SAAS;aACvD,kBAAkB,EAAG,SAAS,aAAa,EAAE;IARjE,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkC;IAE5D,OAAO;IASP;;;;;;;OAOG;WACW,KAAK,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,cAAc;IAIjE;;;;;;;OAOG;WACW,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,cAAc;IAItF,OAAO,CAAC,MAAM,CAAC,IAAI;IAgFnB,oDAAoD;IACpD,IAAW,gBAAgB,IAAI,UAAU,CAExC;IAED,kEAAkE;IAC3D,iBAAiB,CAAC,SAAS,EAAE,aAAa,GAAG,IAAI;IAaxD,kHAAkH;IAC3G,KAAK,IAAI,IAAI,EAAE;IAItB,+EAA+E;IACxE,cAAc,IAAI,IAAI,EAAE;IAI/B,6GAA6G;IACtG,kBAAkB,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,GAAG,OAAO;IAI1D,uCAAuC;IAChC,SAAS,IAAI,MAAM;IAI1B,IAAW,IAAI,IAAI,SAAS,GAAG,SAAS,CAEvC;IAED,IAAW,WAAW,IAAI,SAAS,GAAG,SAAS,CAE9C;IAED,qDAAqD;IAC9C,wBAAwB,IAAI,UAAU,EAAE;IAK/C,8EAA8E;IACvE,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;CAIrE"}
@@ -0,0 +1,8 @@
1
+ /** Whether the given time zone is one a charging pool may have and this platform knows it (`POITimeZones.TryFind`). */
2
+ export declare function knownTimeZone(name: string): boolean;
3
+ /**
4
+ * The error of the given time zone of a charging pool or a charging pool template (`POITimeZones.Known`), if it is none it
5
+ * may have or this platform does not know it.
6
+ */
7
+ export declare const unknownTimeZone: (name: string, of: string) => string | undefined;
8
+ //# sourceMappingURL=timeZones.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeZones.d.ts","sourceRoot":"","sources":["../../src/network/timeZones.ts"],"names":[],"mappings":"AA6DA,uHAAuH;AACvH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAanD;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,EAAE,IAAI,MAAM,KAAG,MAAM,GAAG,SACkF,CAAC"}
@@ -39,6 +39,20 @@ export declare function prunedDigest(entity: JSONObject, kind: TreeNodeKind, alg
39
39
  /** The root of a pruned roaming network and what it gives completely (8.4). */
40
40
  export declare function prunedTree(roamingNetwork: JSONObject, algorithm: HashAlgorithm): PrunedTree;
41
41
  /** The digest in hex, for messages. */
42
+ /**
43
+ * Whether a proof gives the given child array of the given entity completely, as `RoamingNetworkProof.GivesCompletely` of
44
+ * WWCP_POI d35c780 tells it (8.4, POI3-ISSUES.md S29): as an array, or none, as an entity without such children has.
45
+ * Pruned it gives none of them, partial some, as leaves: what an app shows of it is then not all the entity has, e.g. not
46
+ * every EVSE of a station, tariff of an EVSE or certificate of a model. Of an entity as the proof gives it, e.g. in
47
+ * `ChargingStationProof.roamingNetwork`, not as the verified station resolves it.
48
+ */
49
+ export declare const givesCompletely: (entity: JSONObject, childArray: string) => boolean;
50
+ /**
51
+ * How many children the given child array of the given entity of a proof has, also where it gives only some or none of
52
+ * them, as `RoamingNetworkProof.SizeOf` tells it: 0 where it gives none, the length of an array, the `@size` of a pruned
53
+ * or partial one; undefined where that is no whole number this platform holds exactly.
54
+ */
55
+ export declare const sizeOf: (entity: JSONObject, childArray: string) => number | undefined;
42
56
  export declare const hexDigest: (digest: Uint8Array) => string;
43
57
  export { without };
44
58
  //# sourceMappingURL=tree.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../src/network/tree.ts"],"names":[],"mappings":"AAkBA,OAAO,EAA+B,OAAO,EAAE,KAAK,UAAU,EAAkB,MAAM,kBAAkB,CAAC;AAGzG,OAAO,EAAiB,KAAK,aAAa,EAAE,MAAa,mBAAmB,CAAC;AAE7E,OAAO,KAAK,EAAE,IAAI,EAAE,MAAqC,aAAa,CAAC;AAIvE,8GAA8G;AAC9G,MAAM,MAAM,YAAY,GAClB,gBAAgB,GAChB,yBAAyB,GACzB,cAAc,GACd,iBAAiB,GACjB,mBAAmB,GACnB,cAAc,GACd,iBAAiB,GACjB,6BAA6B,GAC7B,yBAAyB,GACzB,kCAAkC,GAClC,0BAA0B,GAC1B,MAAM,CAAC;AAGb;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,CA8E/F,CAAC;AAGF;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,GAAG,UAAU,CAEzG;AAED,gEAAgE;AAChE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,GAAG,UAAU,CAyBrG;AAED,mGAAmG;AACnG,wBAAgB,iBAAiB,CAAC,gBAAgB,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,GAAG,IAAI,CAE9F;AAMD,yGAAyG;AACzG,MAAM,WAAW,UAAU;IACvB,8GAA8G;IAC9G,QAAQ,CAAC,IAAI,EAAO,UAAU,CAAC;IAC/B,iHAAiH;IACjH,QAAQ,CAAC,QAAQ,EAAG,UAAU,CAAC;CAClC;AAGD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,SAAM,GAAG;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,UAAU,CAAA;CAAE,CAwGvJ;AAGD,+EAA+E;AAC/E,wBAAgB,UAAU,CAAC,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,GAAG,UAAU,CAG3F;AAED,uCAAuC;AACvC,eAAO,MAAM,SAAS,GAAI,QAAQ,UAAU,KAAG,MAC9B,CAAC;AAElB,OAAO,EAAE,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../src/network/tree.ts"],"names":[],"mappings":"AAkBA,OAAO,EAA+B,OAAO,EAAE,KAAK,UAAU,EAAkB,MAAM,kBAAkB,CAAC;AAGzG,OAAO,EAAiB,KAAK,aAAa,EAAE,MAAa,mBAAmB,CAAC;AAE7E,OAAO,KAAK,EAAE,IAAI,EAAE,MAAqC,aAAa,CAAC;AAIvE,8GAA8G;AAC9G,MAAM,MAAM,YAAY,GAClB,gBAAgB,GAChB,yBAAyB,GACzB,cAAc,GACd,iBAAiB,GACjB,mBAAmB,GACnB,cAAc,GACd,iBAAiB,GACjB,6BAA6B,GAC7B,yBAAyB,GACzB,kCAAkC,GAClC,0BAA0B,GAC1B,MAAM,CAAC;AAGb;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,CA8E/F,CAAC;AAGF;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,GAAG,UAAU,CAEzG;AAED,gEAAgE;AAChE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,GAAG,UAAU,CAyBrG;AAED,mGAAmG;AACnG,wBAAgB,iBAAiB,CAAC,gBAAgB,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,GAAG,IAAI,CAE9F;AAMD,yGAAyG;AACzG,MAAM,WAAW,UAAU;IACvB,8GAA8G;IAC9G,QAAQ,CAAC,IAAI,EAAO,UAAU,CAAC;IAC/B,iHAAiH;IACjH,QAAQ,CAAC,QAAQ,EAAG,UAAU,CAAC;CAClC;AAGD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,SAAM,GAAG;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,UAAU,CAAA;CAAE,CAwGvJ;AAGD,+EAA+E;AAC/E,wBAAgB,UAAU,CAAC,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,GAAG,UAAU,CAG3F;AAED,uCAAuC;AACvC;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAAI,QAAQ,UAAU,EAAE,YAAY,MAAM,KAAG,OAGxE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,MAAM,GAAI,QAAQ,UAAU,EAAE,YAAY,MAAM,KAAG,MAAM,GAAG,SAQxE,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,QAAQ,UAAU,KAAG,MAC9B,CAAC;AAElB,OAAO,EAAE,OAAO,EAAE,CAAC"}
@@ -3,7 +3,7 @@ export declare const objectsOf: (value: JSONValue | undefined) => JSONObject[];
3
3
  /** Whether the given value is a text `TryParse` takes: not empty, neither beginning nor ending with whitespace. */
4
4
  export declare const isText: (value: JSONValue) => boolean;
5
5
  /** The given text as `String.Trim` gives it, as the identifications of WWCP_POI take it. */
6
- export declare const trimmed: (text: string) => string;
6
+ export declare function trimmed(text: string): string;
7
7
  export declare const MODEL_VERSIONS: {
8
8
  hardwareRevisions: string;
9
9
  firmwareVersions: string;
@@ -15,10 +15,4 @@ export declare const MODEL_VERSIONS: {
15
15
  * with, `whose` in words.
16
16
  */
17
17
  export declare function versionTwice(holder: JSONObject, whose: string): string | undefined;
18
- /**
19
- * The error, when the given content names a hardware revision, firmware version or serial number WWCP_POI refuses where it
20
- * reads it, as WWCP_POI says it, after what names it; undefined for none. The charging stations and energy meters, their
21
- * templates and the models of their manufacturers name them; the certificates `invalidCertificates` reads.
22
- */
23
- export declare function invalidVersionText(content: JSONObject): string | undefined;
24
18
  //# sourceMappingURL=versionTexts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"versionTexts.d.ts","sourceRoot":"","sources":["../../src/network/versionTexts.ts"],"names":[],"mappings":"AAiBA,OAAO,EAA0B,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAa3F,eAAO,MAAM,SAAS,GAAI,OAAO,SAAS,GAAG,SAAS,KAAG,UAAU,EACnB,CAAC;AAkBjD,mHAAmH;AACnH,eAAO,MAAM,MAAM,GAAI,OAAO,SAAS,KAAG,OACW,CAAC;AAEtD,4FAA4F;AAC5F,eAAO,MAAM,OAAO,GAAI,MAAM,MAAM,KAAG,MACT,CAAC;AAyB/B,eAAO,MAAM,cAAc;;;CAAmF,CAAC;AAE/G;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAUlF;AAgCD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAoB1E"}
1
+ {"version":3,"file":"versionTexts.d.ts","sourceRoot":"","sources":["../../src/network/versionTexts.ts"],"names":[],"mappings":"AAiBA,OAAO,EAA0B,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAY3F,eAAO,MAAM,SAAS,GAAI,OAAO,SAAS,GAAG,SAAS,KAAG,UAAU,EACnB,CAAC;AAYjD,mHAAmH;AACnH,eAAO,MAAM,MAAM,GAAI,OAAO,SAAS,KAAG,OACkG,CAAC;AAE7I,4FAA4F;AAC5F,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAa5C;AAED,eAAO,MAAM,cAAc;;;CAAmF,CAAC;AAE/G;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAUlF"}
@@ -1,14 +1,31 @@
1
1
  import { type JSONObject, type JSONValue } from '../json/value.ts';
2
2
  export declare const PROPERTIES_OF: Readonly<Record<string, readonly string[]>>;
3
+ /** The texts of a text in languages as Styx writes them, of the languages it reads (`languageOf`). */
4
+ export declare const textsOf: (text: JSONObject) => JSONObject;
5
+ /**
6
+ * A value as its canonical JSON, as WWCP_POI names it in a message (`POIJSON.ContentText`); a coordinate as its double;
7
+ * "absent" for none.
8
+ */
9
+ export declare const contentText: (value: JSONValue | undefined) => string;
3
10
  /**
4
11
  * The given value as WWCP_POI reads it, of an object of the given kind (`PROPERTIES_OF`): without the properties it does
5
12
  * not read, of the objects within it as well.
6
13
  */
7
14
  export declare function asRead(value: JSONValue, kind: string): JSONValue;
8
- /** Where a value is not written as the content holds it, e.g. "chargingPools[1].paymentOptions", and how it is held. */
15
+ /**
16
+ * Where a value is not written as the content holds it, e.g. "chargingPools[1].paymentOptions", and how it is held; where
17
+ * this library tells it, what the content holds there instead (`held`): at the given keys and indexes of the value, `undefined`
18
+ * for nothing, where the content leaves it out.
19
+ */
9
20
  export interface NotWritten {
10
21
  readonly path: string;
11
22
  readonly reason: string;
23
+ readonly held?: Held;
24
+ }
25
+ /** What the content holds at a place of a value: `undefined` for nothing. */
26
+ interface Held {
27
+ readonly at: readonly (string | number)[];
28
+ readonly value: JSONValue | undefined;
12
29
  }
13
30
  /**
14
31
  * Where the given value of the given property, at the given path, is not written as the content holds it; undefined where
@@ -16,9 +33,18 @@ export interface NotWritten {
16
33
  * version leaves an element given twice to what refuses it in the words of WWCP_POI.
17
34
  */
18
35
  export declare function notWritten(value: JSONValue, property: string | undefined, path: string, of: 'version' | 'new value'): NotWritten | undefined;
36
+ /**
37
+ * The given new value of the given property, or entity to add, as the content holds it, as far as this library tells it
38
+ * (`notWritten`): `{ value: undefined }` where the content does not hold it at all, e.g. an empty list; `undefined` where
39
+ * this library does not tell how the content holds it.
40
+ */
41
+ export declare function heldAs(value: JSONValue, property: string | undefined): {
42
+ readonly value: JSONValue | undefined;
43
+ } | undefined;
19
44
  /**
20
45
  * The error, as WWCP_POI3 words it since 3de830a, when the given content of a version is not written as the content holds
21
46
  * it, its own JSON-LD context aside; undefined where it is.
22
47
  */
23
48
  export declare function notWrittenAsHeld(content: JSONObject): string | undefined;
49
+ export {};
24
50
  //# sourceMappingURL=writtenForm.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"writtenForm.d.ts","sourceRoot":"","sources":["../../src/network/writtenForm.ts"],"names":[],"mappings":"AAkBA,OAAO,EAA6C,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAwQ9G,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAarE,CAAC;AAiIF;;;GAGG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAchE;AAGD,wHAAwH;AACxH,MAAM,WAAW,UAAU;IACvB,QAAQ,CAAC,IAAI,EAAK,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAG,MAAM,CAAC;CAC5B;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,CAoI5I;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CA2CxE"}
1
+ {"version":3,"file":"writtenForm.d.ts","sourceRoot":"","sources":["../../src/network/writtenForm.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAkF,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAqUnJ,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAoBrE,CAAC;AA6MF,sGAAsG;AACtG,eAAO,MAAM,OAAO,GAAI,MAAM,UAAU,KAAG,UAImE,CAAC;AAgF/G;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,OAAO,SAAS,GAAG,SAAS,KAAG,MAGyB,CAAC;AAGrF;;;GAGG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAchE;AAGD;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACvB,QAAQ,CAAC,IAAI,EAAK,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAG,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAI,IAAI,CAAC;CAC1B;AAED,6EAA6E;AAC7E,UAAU,IAAI;IACV,QAAQ,CAAC,EAAE,EAAM,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAC9C,QAAQ,CAAC,KAAK,EAAG,SAAS,GAAG,SAAS,CAAC;CAC1C;AAcD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,CAuL5I;AAGD;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,CAAA;CAAE,GAAG,SAAS,CA0B5H;AA0BD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAMxE"}
@@ -1 +1 @@
1
- {"version":3,"file":"keyStatement.d.ts","sourceRoot":"","sources":["../../src/proofs/keyStatement.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAmC,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEpG,OAAO,EAAE,YAAY,EAAE,MAAe,YAAY,CAAC;AAKnD,eAAO,MAAM,qBAAqB,QAAoD,CAAC;AAGvF,6DAA6D;AAC7D,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,SAAS,EAAG,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAO,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAO,MAAM,CAAC;CAC/B;AAGD;;;;GAIG;AACH,qBAAa,YAAY;aAGD,gBAAgB,EAAW,MAAM;aACjC,wBAAwB,EAAG,MAAM;aACjC,YAAY,EAAe,SAAS,YAAY,EAAE;aAClD,YAAY,EAAe,MAAM;aACjC,QAAQ,EAAmB,MAAM;aACjC,UAAU,EAAiB,MAAM;aACjC,UAAU,EAAiB,SAAS,qBAAqB,EAAE;aAC3D,IAAI,EAAuB,UAAU;IARzD,OAAO;IAYP;;;;;OAKG;WACW,KAAK,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,YAAY;IAmE/D,8GAA8G;IACvG,OAAO,IAAI,UAAU;IAY5B,0GAA0G;IACnG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU;IAIjE,0DAA0D;IACnD,eAAe,CAAC,SAAS,EAAE,qBAAqB,EAAE,WAAW,EAAE,YAAY,GAAG,IAAI;IASzF,wFAAwF;IACjF,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAKvC,mHAAmH;IACnH,IAAW,OAAO,IAAI,MAAM,EAAE,EAAE,CAS/B;IAGD;;;OAGG;IACI,MAAM,CAAC,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,EACvC,iBAAiB,GAAM,SAAS,YAAY,EAAO,EACnD,OAAO,GAAgB;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,GAAG,CAAC,MAAM,CAAC;IAM9F;;;;;;;;;;;OAWG;IACI,aAAa,CAAC,cAAc,EAAM,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,EAClD,iBAAiB,GAAG,SAAS,YAAY,EAAO,EAChD,OAAO,GAAa;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG;QAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE;CAkFlJ"}
1
+ {"version":3,"file":"keyStatement.d.ts","sourceRoot":"","sources":["../../src/proofs/keyStatement.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAmC,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEpG,OAAO,EAAE,YAAY,EAAE,MAAe,YAAY,CAAC;AAKnD,eAAO,MAAM,qBAAqB,QAAoD,CAAC;AAGvF,6DAA6D;AAC7D,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,SAAS,EAAG,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAO,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAO,MAAM,CAAC;CAC/B;AAGD;;;;GAIG;AACH,qBAAa,YAAY;aAGD,gBAAgB,EAAW,MAAM;aACjC,wBAAwB,EAAG,MAAM;aACjC,YAAY,EAAe,SAAS,YAAY,EAAE;aAClD,YAAY,EAAe,MAAM;aACjC,QAAQ,EAAmB,MAAM;aACjC,UAAU,EAAiB,MAAM;aACjC,UAAU,EAAiB,SAAS,qBAAqB,EAAE;aAC3D,IAAI,EAAuB,UAAU;IARzD,OAAO;IAYP;;;;;OAKG;WACW,KAAK,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,YAAY;IA2E/D,8GAA8G;IACvG,OAAO,IAAI,UAAU;IAY5B,0GAA0G;IACnG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU;IAIjE,0DAA0D;IACnD,eAAe,CAAC,SAAS,EAAE,qBAAqB,EAAE,WAAW,EAAE,YAAY,GAAG,IAAI;IASzF,wFAAwF;IACjF,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAKvC,mHAAmH;IACnH,IAAW,OAAO,IAAI,MAAM,EAAE,EAAE,CAS/B;IAGD;;;OAGG;IACI,MAAM,CAAC,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,EACvC,iBAAiB,GAAM,SAAS,YAAY,EAAO,EACnD,OAAO,GAAgB;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,GAAG,CAAC,MAAM,CAAC;IAM9F;;;;;;;;;;;OAWG;IACI,aAAa,CAAC,cAAc,EAAM,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,EAClD,iBAAiB,GAAG,SAAS,YAAY,EAAO,EAChD,OAAO,GAAa;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG;QAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE;CAkFlJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"priceStatement.d.ts","sourceRoot":"","sources":["../../src/proofs/priceStatement.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"priceStatement.d.ts","sourceRoot":"","sources":["../../src/proofs/priceStatement.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { type JSONValue } from '../json/value.ts';
2
2
  import { POIPublicKey } from '../keys.ts';
3
+ import { type RoleSignature } from '../history/commit.ts';
3
4
  import type { Checkpoint } from '../history/checkpoint.ts';
4
5
  import type { OperatorTrust } from './trust.ts';
5
6
  /** A witness a verifier trusts, with its key: trusted independently of the network (10.2), e.g. by configuration. */
@@ -17,6 +18,11 @@ export interface CheckpointSignatures {
17
18
  readonly witnessedBy: readonly string[];
18
19
  /** Signatures that did not count: by untrusted keys, in another role, or invalid. */
19
20
  readonly ignored: readonly string[];
21
+ /**
22
+ * The signatures that verified, in their order: those a history takes the checkpoint with (`verifyCheckpoint` of
23
+ * `HistoryOptions`, S39), the others left out.
24
+ */
25
+ readonly verified: readonly RoleSignature[];
20
26
  }
21
27
  /**
22
28
  * Verifies the signatures of a checkpoint a verifier requires (10.2): as the roaming network operator, by its trusted
@@ -1 +1 @@
1
- {"version":3,"file":"checkpoints.d.ts","sourceRoot":"","sources":["../../src/verifier/checkpoints.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAO,KAAK,SAAS,EAAE,MAAkB,kBAAkB,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAyB,YAAY,CAAC;AAE7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAsB,0BAA0B,CAAC;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAmB,YAAY,CAAC;AAI7D,qHAAqH;AACrH,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,OAAO,EAAG,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAO,YAAY,CAAC;CACnC;AAED,mHAAmH;AACnH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,GAAG,cAAc,EAAE,CAKxE;AAGD,2DAA2D;AAC3D,MAAM,WAAW,oBAAoB;IACjC,wFAAwF;IACxF,QAAQ,CAAC,QAAQ,EAAO,SAAS,MAAM,EAAE,CAAC;IAC1C,mEAAmE;IACnE,QAAQ,CAAC,WAAW,EAAI,SAAS,MAAM,EAAE,CAAC;IAC1C,qFAAqF;IACrF,QAAQ,CAAC,OAAO,EAAQ,SAAS,MAAM,EAAE,CAAC;CAC7C;AAGD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAG,UAAU,EACvB,KAAK,EAAQ,aAAa,EAC1B,OAAO,GAAM;IAAE,SAAS,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,oBAAoB,CAmExJ;AAGD,mIAAmI;AACnI,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI,CAoB7E"}
1
+ {"version":3,"file":"checkpoints.d.ts","sourceRoot":"","sources":["../../src/verifier/checkpoints.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAO,KAAK,SAAS,EAAE,MAAkB,kBAAkB,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAyB,YAAY,CAAC;AAC7D,OAAO,EAAkB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAsB,0BAA0B,CAAC;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAmB,YAAY,CAAC;AAI7D,qHAAqH;AACrH,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,OAAO,EAAG,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAO,YAAY,CAAC;CACnC;AAED,mHAAmH;AACnH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,GAAG,cAAc,EAAE,CAKxE;AAGD,2DAA2D;AAC3D,MAAM,WAAW,oBAAoB;IACjC,wFAAwF;IACxF,QAAQ,CAAC,QAAQ,EAAO,SAAS,MAAM,EAAE,CAAC;IAC1C,mEAAmE;IACnE,QAAQ,CAAC,WAAW,EAAI,SAAS,MAAM,EAAE,CAAC;IAC1C,qFAAqF;IACrF,QAAQ,CAAC,OAAO,EAAQ,SAAS,MAAM,EAAE,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAO,SAAS,aAAa,EAAE,CAAC;CACpD;AAGD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAG,UAAU,EACvB,KAAK,EAAQ,aAAa,EAC1B,OAAO,GAAM;IAAE,SAAS,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,oBAAoB,CAsExJ;AAGD,mIAAmI;AACnI,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI,CAoB7E"}
@@ -0,0 +1,11 @@
1
+ import { type JSONObject } from '../json/value.ts';
2
+ import type { SessionPriceVerification } from './sessionPrices.ts';
3
+ /** The unconditional gross rates of the simple profile, as their decimals are written. */
4
+ export type GrossRates = NonNullable<NonNullable<SessionPriceVerification['selected']>['rates']>;
5
+ /**
6
+ * The gross rates of the simple profile (chargy-gross-rates/v1): one element, without restrictions, of energy, flat or
7
+ * time components each once, with a price not negative, energy and time with a step size of at least one, a flat fee
8
+ * without any, as a FLAT price component has none; none otherwise. Internal: not exported by the package.
9
+ */
10
+ export declare function grossRates(currency: string, elements: readonly JSONObject[]): GrossRates | undefined;
11
+ //# sourceMappingURL=grossRates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grossRates.d.ts","sourceRoot":"","sources":["../../src/verifier/grossRates.ts"],"names":[],"mappings":"AAgBA,OAAO,EAA8B,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE/E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAEnE,0FAA0F;AAC1F,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC,WAAW,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;AAEjG;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,UAAU,EAAE,GAAE,UAAU,GAAC,SAAS,CAgB9F"}
@@ -6,6 +6,9 @@ import { type WitnessPublicationPolicy, type PricePublicationVerification } from
6
6
  export declare const SESSION_PRICE_EVIDENCE_CONTEXT = "https://open.charging.cloud/contexts/wwcp/sessionPriceEvidence/v1";
7
7
  export declare const SESSION_PRICE_AGREEMENT_CONTEXT = "https://open.charging.cloud/contexts/wwcp/sessionPriceAgreement/v1";
8
8
  export declare const SIMPLE_GROSS_PRICE_PROFILE = "chargy-gross-rates/v1";
9
+ /** The same gross rates of a session started through an e-mobility provider, of a contract with it (`contract`): the
10
+ * rates the CPO charges the provider, not those the provider charges its customer. */
11
+ export declare const CONTRACT_GROSS_PRICE_PROFILE = "chargy-contract-gross-rates/v1";
9
12
  /** Experimental CPO assertion, distinct from customer consent. */
10
13
  export declare class SessionPriceAgreement {
11
14
  readonly json: JSONObject;
@@ -1 +1 @@
1
- {"version":3,"file":"sessionPrices.d.ts","sourceRoot":"","sources":["../../src/verifier/sessionPrices.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sessionPrices.d.ts","sourceRoot":"","sources":["../../src/verifier/sessionPrices.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-charging-cloud/wwcp-poi",
3
- "version": "0.2.0",
3
+ "version": "0.4.0",
4
4
  "description": "Verifies WWCP/POI data in TypeScript: trust anchors, key statements, roaming networks and their ETags, commits, checkpoints, charging station proofs and price statements - so that an EV driver's app knows the charging station and its tariffs it shows are the ones the roaming network signed and published.",
5
5
  "keywords": [
6
6
  "wwcp",
@@ -69,26 +69,27 @@
69
69
  },
70
70
  "dependencies": {
71
71
  "@noble/hashes": "^2.4.0",
72
- "@vanaheimr/cose": "^0.12.0",
72
+ "@vanaheimr/cose": "^0.15.0",
73
73
  "@vanaheimr/metrological-cbor": "^0.12.0"
74
74
  },
75
75
  "devDependencies": {
76
76
  "@eslint/js": "^10.0.1",
77
- "@types/node": "^26.6.3",
78
- "@vitest/browser": "^5.0.5",
79
- "@vitest/browser-playwright": "^5.0.5",
80
- "@vitest/coverage-v8": "^5.0.5",
81
- "eslint": "^10.13.0",
82
- "globals": "^17.13.0",
83
- "playwright": "^1.64.1",
77
+ "@types/node": "^26.6.6",
78
+ "@vitest/browser": "^5.1.0",
79
+ "@vitest/browser-playwright": "^5.1.0",
80
+ "@vitest/coverage-v8": "^5.1.0",
81
+ "eslint": "^10.14.0",
82
+ "globals": "^17.14.0",
83
+ "playwright": "^1.65.0",
84
84
  "tsup": "^9.0.0",
85
85
  "tsx": "^4.23.15",
86
86
  "typescript": "^6.0.3",
87
- "typescript-eslint": "^8.72.0",
88
- "vite": "^8.3.5",
89
- "vitest": "^5.0.5"
87
+ "typescript-eslint": "^8.72.2",
88
+ "vite": "^8.3.7",
89
+ "vitest": "^5.1.0"
90
90
  },
91
91
  "overrides": {
92
- "esbuild": "^0.28.2"
92
+ "esbuild": "^0.28.2",
93
+ "minimatch": "^11.0.4"
93
94
  }
94
95
  }