cesr-ts 0.4.0 → 0.6.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 (204) hide show
  1. package/esm/src/adapters/async-iterable.js +8 -0
  2. package/esm/src/adapters/effection.js +6 -0
  3. package/esm/src/annotate/annotator.js +12 -0
  4. package/esm/src/annotate/cli.js +12 -0
  5. package/esm/src/annotate/comments.js +5 -1
  6. package/esm/src/annotate/denot.js +6 -0
  7. package/esm/src/annotate/render.js +15 -3
  8. package/esm/src/core/bytes.js +9 -0
  9. package/esm/src/core/errors.js +3 -0
  10. package/esm/src/core/parser-engine.js +1 -1
  11. package/esm/src/core/parser-frame-parser.js +22 -18
  12. package/esm/src/core/vocabulary.js +47 -0
  13. package/esm/src/index.js +5 -0
  14. package/esm/src/parser/attachment-parser.js +4 -0
  15. package/esm/src/parser/cold-start.js +6 -0
  16. package/esm/src/parser/group-dispatch.js +2 -2
  17. package/esm/src/primitives/aggor.js +374 -30
  18. package/esm/src/primitives/bexter.js +2 -3
  19. package/esm/src/primitives/blinder.js +6 -0
  20. package/esm/src/primitives/byte-like.js +19 -0
  21. package/esm/src/primitives/cigar.js +17 -3
  22. package/esm/src/primitives/cipher.js +91 -6
  23. package/esm/src/primitives/codex.js +39 -6
  24. package/esm/src/primitives/compactor.js +307 -3
  25. package/esm/src/primitives/counter.js +6 -2
  26. package/esm/src/primitives/dater.js +1 -2
  27. package/esm/src/primitives/decimer.js +7 -11
  28. package/esm/src/primitives/decrypter.js +123 -7
  29. package/esm/src/primitives/diger.js +57 -3
  30. package/esm/src/primitives/disclosure.js +300 -0
  31. package/esm/src/primitives/encrypter.js +130 -7
  32. package/esm/src/primitives/hydrate.js +49 -0
  33. package/esm/src/primitives/ilker.js +2 -3
  34. package/esm/src/primitives/indexer.js +21 -4
  35. package/esm/src/primitives/labeler.js +1 -2
  36. package/esm/src/primitives/mapper.js +612 -35
  37. package/esm/src/primitives/matter.js +133 -3
  38. package/esm/src/primitives/mediar.js +6 -0
  39. package/esm/src/primitives/noncer.js +2 -3
  40. package/esm/src/primitives/number.js +1 -2
  41. package/esm/src/primitives/pather.js +102 -5
  42. package/esm/src/primitives/prefixer.js +1 -2
  43. package/esm/src/primitives/primitive.js +14 -0
  44. package/esm/src/primitives/registry.js +2 -0
  45. package/esm/src/primitives/saider.js +80 -3
  46. package/esm/src/primitives/salter.js +96 -2
  47. package/esm/src/primitives/sealed-box.js +41 -0
  48. package/esm/src/primitives/seqner.js +1 -2
  49. package/esm/src/primitives/siger.js +58 -3
  50. package/esm/src/primitives/signer.js +243 -9
  51. package/esm/src/primitives/streamer.js +28 -0
  52. package/esm/src/primitives/structing.js +727 -0
  53. package/esm/src/primitives/structor.js +20 -0
  54. package/esm/src/primitives/tagger.js +1 -2
  55. package/esm/src/primitives/texter.js +1 -2
  56. package/esm/src/primitives/tholder.js +552 -10
  57. package/esm/src/primitives/traitor.js +2 -3
  58. package/esm/src/primitives/verfer.js +50 -6
  59. package/esm/src/primitives/verser.js +16 -6
  60. package/esm/src/router/router-stub.js +1 -0
  61. package/esm/src/serder/native.js +1326 -0
  62. package/esm/src/serder/serder.js +1558 -59
  63. package/esm/src/serder/serdery.js +92 -7
  64. package/esm/src/serder/smell.js +26 -1
  65. package/esm/src/tables/codex-utils.js +2 -0
  66. package/esm/src/tables/counter-codex.js +2 -0
  67. package/esm/src/tables/counter-groups.js +6 -0
  68. package/esm/src/tables/versions.js +4 -0
  69. package/esm/src/version.js +5 -2
  70. package/package.json +5 -2
  71. package/types/src/adapters/async-iterable.d.ts +8 -0
  72. package/types/src/adapters/async-iterable.d.ts.map +1 -1
  73. package/types/src/adapters/effection.d.ts +7 -0
  74. package/types/src/adapters/effection.d.ts.map +1 -1
  75. package/types/src/annotate/annotator.d.ts +12 -0
  76. package/types/src/annotate/annotator.d.ts.map +1 -1
  77. package/types/src/annotate/cli.d.ts +13 -0
  78. package/types/src/annotate/cli.d.ts.map +1 -1
  79. package/types/src/annotate/comments.d.ts +4 -0
  80. package/types/src/annotate/comments.d.ts.map +1 -1
  81. package/types/src/annotate/denot.d.ts +6 -0
  82. package/types/src/annotate/denot.d.ts.map +1 -1
  83. package/types/src/annotate/render.d.ts.map +1 -1
  84. package/types/src/annotate/types.d.ts +2 -0
  85. package/types/src/annotate/types.d.ts.map +1 -1
  86. package/types/src/bench/parser-benchmark.d.ts +3 -0
  87. package/types/src/bench/parser-benchmark.d.ts.map +1 -1
  88. package/types/src/core/bytes.d.ts +9 -0
  89. package/types/src/core/bytes.d.ts.map +1 -1
  90. package/types/src/core/errors.d.ts +3 -0
  91. package/types/src/core/errors.d.ts.map +1 -1
  92. package/types/src/core/parser-engine.d.ts +4 -0
  93. package/types/src/core/parser-engine.d.ts.map +1 -1
  94. package/types/src/core/parser-frame-parser.d.ts.map +1 -1
  95. package/types/src/core/types.d.ts +2 -0
  96. package/types/src/core/types.d.ts.map +1 -1
  97. package/types/src/core/vocabulary.d.ts +48 -0
  98. package/types/src/core/vocabulary.d.ts.map +1 -0
  99. package/types/src/index.d.ts +5 -0
  100. package/types/src/index.d.ts.map +1 -1
  101. package/types/src/parser/attachment-parser.d.ts +4 -0
  102. package/types/src/parser/attachment-parser.d.ts.map +1 -1
  103. package/types/src/parser/cold-start.d.ts +6 -0
  104. package/types/src/parser/cold-start.d.ts.map +1 -1
  105. package/types/src/parser/group-dispatch.d.ts.map +1 -1
  106. package/types/src/primitives/aggor.d.ts +100 -13
  107. package/types/src/primitives/aggor.d.ts.map +1 -1
  108. package/types/src/primitives/bexter.d.ts.map +1 -1
  109. package/types/src/primitives/blinder.d.ts +6 -0
  110. package/types/src/primitives/blinder.d.ts.map +1 -1
  111. package/types/src/primitives/byte-like.d.ts +7 -0
  112. package/types/src/primitives/byte-like.d.ts.map +1 -0
  113. package/types/src/primitives/cigar.d.ts +11 -1
  114. package/types/src/primitives/cigar.d.ts.map +1 -1
  115. package/types/src/primitives/cipher.d.ts +73 -2
  116. package/types/src/primitives/cipher.d.ts.map +1 -1
  117. package/types/src/primitives/codex.d.ts +34 -4
  118. package/types/src/primitives/codex.d.ts.map +1 -1
  119. package/types/src/primitives/compactor.d.ts +94 -2
  120. package/types/src/primitives/compactor.d.ts.map +1 -1
  121. package/types/src/primitives/counter.d.ts.map +1 -1
  122. package/types/src/primitives/dater.d.ts.map +1 -1
  123. package/types/src/primitives/decimer.d.ts.map +1 -1
  124. package/types/src/primitives/decrypter.d.ts +64 -3
  125. package/types/src/primitives/decrypter.d.ts.map +1 -1
  126. package/types/src/primitives/diger.d.ts +16 -0
  127. package/types/src/primitives/diger.d.ts.map +1 -1
  128. package/types/src/primitives/disclosure.d.ts +201 -0
  129. package/types/src/primitives/disclosure.d.ts.map +1 -0
  130. package/types/src/primitives/encrypter.d.ts +66 -4
  131. package/types/src/primitives/encrypter.d.ts.map +1 -1
  132. package/types/src/primitives/hydrate.d.ts +20 -0
  133. package/types/src/primitives/hydrate.d.ts.map +1 -0
  134. package/types/src/primitives/ilker.d.ts.map +1 -1
  135. package/types/src/primitives/indexer.d.ts.map +1 -1
  136. package/types/src/primitives/labeler.d.ts.map +1 -1
  137. package/types/src/primitives/mapper.d.ts +132 -11
  138. package/types/src/primitives/mapper.d.ts.map +1 -1
  139. package/types/src/primitives/matter.d.ts +33 -1
  140. package/types/src/primitives/matter.d.ts.map +1 -1
  141. package/types/src/primitives/mediar.d.ts +6 -0
  142. package/types/src/primitives/mediar.d.ts.map +1 -1
  143. package/types/src/primitives/noncer.d.ts.map +1 -1
  144. package/types/src/primitives/number.d.ts.map +1 -1
  145. package/types/src/primitives/pather.d.ts +21 -0
  146. package/types/src/primitives/pather.d.ts.map +1 -1
  147. package/types/src/primitives/prefixer.d.ts.map +1 -1
  148. package/types/src/primitives/primitive.d.ts +26 -0
  149. package/types/src/primitives/primitive.d.ts.map +1 -1
  150. package/types/src/primitives/registry.d.ts +3 -0
  151. package/types/src/primitives/registry.d.ts.map +1 -1
  152. package/types/src/primitives/saider.d.ts +41 -0
  153. package/types/src/primitives/saider.d.ts.map +1 -1
  154. package/types/src/primitives/salter.d.ts +56 -1
  155. package/types/src/primitives/salter.d.ts.map +1 -1
  156. package/types/src/primitives/sealed-box.d.ts +29 -0
  157. package/types/src/primitives/sealed-box.d.ts.map +1 -0
  158. package/types/src/primitives/seqner.d.ts.map +1 -1
  159. package/types/src/primitives/siger.d.ts +14 -0
  160. package/types/src/primitives/siger.d.ts.map +1 -1
  161. package/types/src/primitives/signer.d.ts +80 -4
  162. package/types/src/primitives/signer.d.ts.map +1 -1
  163. package/types/src/primitives/streamer.d.ts +31 -0
  164. package/types/src/primitives/streamer.d.ts.map +1 -0
  165. package/types/src/primitives/structing.d.ts +4114 -0
  166. package/types/src/primitives/structing.d.ts.map +1 -0
  167. package/types/src/primitives/structor.d.ts +6 -0
  168. package/types/src/primitives/structor.d.ts.map +1 -1
  169. package/types/src/primitives/tagger.d.ts.map +1 -1
  170. package/types/src/primitives/texter.d.ts.map +1 -1
  171. package/types/src/primitives/tholder.d.ts +150 -5
  172. package/types/src/primitives/tholder.d.ts.map +1 -1
  173. package/types/src/primitives/traitor.d.ts.map +1 -1
  174. package/types/src/primitives/unknown.d.ts +1 -0
  175. package/types/src/primitives/unknown.d.ts.map +1 -1
  176. package/types/src/primitives/verfer.d.ts +12 -0
  177. package/types/src/primitives/verfer.d.ts.map +1 -1
  178. package/types/src/primitives/verser.d.ts +14 -3
  179. package/types/src/primitives/verser.d.ts.map +1 -1
  180. package/types/src/router/router-stub.d.ts +3 -0
  181. package/types/src/router/router-stub.d.ts.map +1 -1
  182. package/types/src/serder/native.d.ts +115 -0
  183. package/types/src/serder/native.d.ts.map +1 -0
  184. package/types/src/serder/serder.d.ts +187 -9
  185. package/types/src/serder/serder.d.ts.map +1 -1
  186. package/types/src/serder/serdery.d.ts +42 -0
  187. package/types/src/serder/serdery.d.ts.map +1 -1
  188. package/types/src/serder/smell.d.ts +22 -0
  189. package/types/src/serder/smell.d.ts.map +1 -1
  190. package/types/src/tables/codex-utils.d.ts +3 -0
  191. package/types/src/tables/codex-utils.d.ts.map +1 -1
  192. package/types/src/tables/counter-codex.d.ts +4 -0
  193. package/types/src/tables/counter-codex.d.ts.map +1 -1
  194. package/types/src/tables/counter-groups.d.ts +6 -0
  195. package/types/src/tables/counter-groups.d.ts.map +1 -1
  196. package/types/src/tables/counter.tables.generated.d.ts.map +1 -1
  197. package/types/src/tables/indexer.codex.generated.d.ts.map +1 -1
  198. package/types/src/tables/matter.codex.generated.d.ts.map +1 -1
  199. package/types/src/tables/table-types.d.ts +6 -0
  200. package/types/src/tables/table-types.d.ts.map +1 -1
  201. package/types/src/tables/versions.d.ts +6 -0
  202. package/types/src/tables/versions.d.ts.map +1 -1
  203. package/types/src/version.d.ts +5 -2
  204. package/types/src/version.d.ts.map +1 -1
@@ -1,12 +1,97 @@
1
1
  import { ShortageError } from "../core/errors.js";
2
+ import { sniff } from "../parser/cold-start.js";
3
+ import { parseCounter } from "../primitives/counter.js";
4
+ import { parseLabeler } from "../primitives/labeler.js";
5
+ import { parseVerser } from "../primitives/verser.js";
6
+ import { CtrDexV2 } from "../tables/counter-codex.js";
7
+ import { Vrsn_2_0 } from "../tables/versions.js";
8
+ import { canonicalizeCesrNativeRaw } from "./native.js";
2
9
  import { parseSerder } from "./serder.js";
3
10
  import { smell } from "./smell.js";
4
- export function reapSerder(input) {
5
- const { smellage } = smell(input);
6
- if (input.length < smellage.size) {
7
- throw new ShortageError(smellage.size, input.length);
11
+ /**
12
+ * Protocol-aware serder factory, matching KERIpy's "reap one body from a
13
+ * stream head" role.
14
+ *
15
+ * Maintainer note:
16
+ * non-native bodies can still be `smell()`ed directly, but native body groups
17
+ * cannot. This class owns the small amount of native pre-read needed to derive
18
+ * smellage-equivalent metadata before delegating to `parseSerder`.
19
+ *
20
+ * Example:
21
+ *
22
+ * ```ts
23
+ * const { serder } = new Serdery().reap(
24
+ * new TextEncoder().encode("-FA50OKERICAACAXicp...")
25
+ * );
26
+ * // serder.kind === "CESR"
27
+ * // serder.ked?.t === "icp"
28
+ * ```
29
+ */
30
+ export class Serdery {
31
+ /**
32
+ * Reap one serder from the current head of `input`, consuming only its body span.
33
+ *
34
+ * For native bodies this means:
35
+ * 1. detect `FixBodyGroup` / `MapBodyGroup`
36
+ * 2. canonicalize qb2 to qb64 if needed
37
+ * 3. pre-read version metadata from compact native fields
38
+ * 4. delegate full hydration to `parseSerder`
39
+ *
40
+ * Maintainer note:
41
+ * "candidate native body-group code" is broader than "valid protocol
42
+ * message". For example, KERI top-level native messages must still be fixed
43
+ * field even though `MapBodyGroup` remains a valid native framing shape in
44
+ * the wider CESR/ACDC world. The protocol-specific decoder is responsible
45
+ * for that final acceptance decision.
46
+ */
47
+ reap(input) {
48
+ const cold = sniff(input);
49
+ if (cold === "txt" || cold === "bny") {
50
+ const counter = parseCounter(input, Vrsn_2_0, cold);
51
+ if (counter.code === CtrDexV2.FixBodyGroup
52
+ || counter.code === CtrDexV2.BigFixBodyGroup
53
+ || counter.code === CtrDexV2.MapBodyGroup
54
+ || counter.code === CtrDexV2.BigMapBodyGroup) {
55
+ const consumed = cold === "txt"
56
+ ? counter.fullSize + counter.count * 4
57
+ : counter.fullSizeB2 + counter.count * 3;
58
+ if (input.length < consumed) {
59
+ throw new ShortageError(consumed, input.length);
60
+ }
61
+ const raw = input.slice(0, consumed);
62
+ // Native qb2 bodies are canonicalized to qb64 text before hydration so
63
+ // the serder layer sees one stable native representation.
64
+ const textRaw = canonicalizeCesrNativeRaw(raw, Vrsn_2_0);
65
+ const textCounter = parseCounter(textRaw, Vrsn_2_0, "txt");
66
+ let offset = textCounter.fullSize;
67
+ if (textCounter.code === CtrDexV2.MapBodyGroup
68
+ || textCounter.code === CtrDexV2.BigMapBodyGroup) {
69
+ offset += parseLabeler(textRaw.slice(offset), "txt").fullSize;
70
+ }
71
+ const verser = parseVerser(textRaw.slice(offset), "txt");
72
+ const smellage = {
73
+ proto: verser.proto,
74
+ pvrsn: verser.pvrsn,
75
+ gvrsn: verser.gvrsn,
76
+ kind: "CESR",
77
+ size: textRaw.length,
78
+ };
79
+ return {
80
+ serder: parseSerder(textRaw, smellage),
81
+ consumed,
82
+ };
83
+ }
84
+ }
85
+ const { smellage } = smell(input);
86
+ if (input.length < smellage.size) {
87
+ throw new ShortageError(smellage.size, input.length);
88
+ }
89
+ const raw = input.slice(0, smellage.size);
90
+ const serder = parseSerder(raw, smellage);
91
+ return { serder, consumed: smellage.size };
8
92
  }
9
- const raw = input.slice(0, smellage.size);
10
- const serder = parseSerder(raw, smellage);
11
- return { serder, consumed: smellage.size };
93
+ }
94
+ /** Convenience wrapper for one-shot `Serdery.reap()` call sites. */
95
+ export function reapSerder(input) {
96
+ return new Serdery().reap(input);
12
97
  }
@@ -1,5 +1,6 @@
1
- import { b64ToInt } from "../core/bytes.js";
1
+ import { b64ToInt, intToB64 } from "../core/bytes.js";
2
2
  import { ShortageError, VersionError } from "../core/errors.js";
3
+ import { Vrsn_1_0 } from "../tables/versions.js";
3
4
  // KERIpy parity: allow version token to begin within the first 12 bytes.
4
5
  const MAXVSOFFSET = 12;
5
6
  const VER1 = /(?<proto1>[A-Z]{4})(?<major1>[0-9a-f])(?<minor1>[0-9a-f])(?<kind1>[A-Z]{4})(?<size1>[0-9a-f]{6})_/;
@@ -11,6 +12,30 @@ function byteWindowToText(raw) {
11
12
  }
12
13
  return out.join("");
13
14
  }
15
+ /**
16
+ * Build one CESR/KERI version string from its semantic parts.
17
+ *
18
+ * This is the serialize-side counterpart to `smell()`: callers that already
19
+ * know protocol, version, kind, and measured size can construct the embedded
20
+ * version token without reimplementing the encoding rules.
21
+ */
22
+ export function versify(opts) {
23
+ const { proto = "KERI", pvrsn = Vrsn_1_0, gvrsn = null, kind = "JSON", size, } = opts;
24
+ if (!Number.isInteger(size) || size < 0) {
25
+ throw new VersionError(`Invalid versioned size ${size}`);
26
+ }
27
+ if (pvrsn.major === 1) {
28
+ return `${proto}${pvrsn.major.toString(16)}${pvrsn.minor.toString(16)}${kind}${size.toString(16).padStart(6, "0")}_`;
29
+ }
30
+ const genv = gvrsn ?? { major: 0, minor: 0 };
31
+ return `${proto}${intToB64(pvrsn.major, 1)}${intToB64(pvrsn.minor, 2)}${intToB64(genv.major, 1)}${intToB64(genv.minor, 2)}${kind}${intToB64(size, 4)}.`;
32
+ }
33
+ /**
34
+ * Locate and decode the first version string in the stream head window.
35
+ *
36
+ * For non-native bodies this is the canonical pre-hydration metadata probe used
37
+ * by parser and serder layers before any protocol-specific decode occurs.
38
+ */
14
39
  export function smell(raw) {
15
40
  const txt = byteWindowToText(raw.slice(0, 256));
16
41
  const m2 = VER2.exec(txt);
@@ -1,6 +1,8 @@
1
+ /** Collect all codex code values as a set for validator membership checks. */
1
2
  export function codexValues(codex) {
2
3
  return new Set(Object.values(codex));
3
4
  }
5
+ /** Invert one generated codex to support `code -> name` projections. */
4
6
  export function invertCodex(codex) {
5
7
  return new Map(Object.entries(codex).map(([name, code]) => [
6
8
  code,
@@ -6,5 +6,7 @@ function invertCodeNames(map) {
6
6
  }
7
7
  return Object.freeze(out);
8
8
  }
9
+ /** Inverted v1 counter code table (`semantic name -> code`). */
9
10
  export const CtrDexV1 = invertCodeNames(COUNTER_CODE_NAMES_V1);
11
+ /** Inverted v2 counter code table (`semantic name -> code`). */
10
12
  export const CtrDexV2 = invertCodeNames(COUNTER_CODE_NAMES_V2);
@@ -1,4 +1,10 @@
1
1
  import { CtrDexV1, CtrDexV2 } from "./counter-codex.js";
2
+ /**
3
+ * Shared semantic counter families for structor/native-body helpers.
4
+ *
5
+ * These are grouped readability views over the counter codex, not another
6
+ * authority for code ownership.
7
+ */
2
8
  export const AGGOR_LIST_CODES = new Set([
3
9
  CtrDexV2.GenericGroup,
4
10
  CtrDexV2.BigGenericGroup,
@@ -1,11 +1,15 @@
1
+ /** Canonical KERI/ACDC protocol version constant for v1.0 surfaces. */
1
2
  export const Vrsn_1_0 = { major: 1, minor: 0 };
3
+ /** Canonical KERI/ACDC protocol version constant for v2.0 surfaces. */
2
4
  export const Vrsn_2_0 = { major: 2, minor: 0 };
5
+ /** Supported wire-kind literals used by serder and parser layers. */
3
6
  export const Kinds = {
4
7
  json: "JSON",
5
8
  cbor: "CBOR",
6
9
  mgpk: "MGPK",
7
10
  cesr: "CESR",
8
11
  };
12
+ /** Supported protocol literals used by version strings and serders. */
9
13
  export const Protocols = {
10
14
  keri: "KERI",
11
15
  acdc: "ACDC",
@@ -2,8 +2,11 @@
2
2
  * Generated by scripts/generate_versions.ts.
3
3
  * Do not edit by hand.
4
4
  */
5
- export const PACKAGE_VERSION = "0.4.0";
6
- export const BUILD_METADATA = "build.4.fb1cb78d";
5
+ /** Package semantic version copied from the owning package manifest. */
6
+ export const PACKAGE_VERSION = "0.6.0";
7
+ /** Optional build metadata stamp injected by release/CI workflows. */
8
+ export const BUILD_METADATA = "build.6.c50a787420c4ae8b5fa60e00a0987244c3e9b95c";
9
+ /** User-facing version string with build metadata appended when present. */
7
10
  export const DISPLAY_VERSION = BUILD_METADATA
8
11
  ? `${PACKAGE_VERSION}+${BUILD_METADATA}`
9
12
  : PACKAGE_VERSION;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cesr-ts",
3
- "version": "0.4.0",
3
+ "version": "0.6.0",
4
4
  "description": "CESR parser, primitives, and annotation tooling for TypeScript/JavaScript",
5
5
  "homepage": "https://github.com/kentbull/keri-ts/tree/main/packages/cesr",
6
6
  "repository": {
@@ -47,8 +47,11 @@
47
47
  },
48
48
  "dependencies": {
49
49
  "@msgpack/msgpack": "^3.1.2",
50
+ "@noble/curves": "1.9.7",
51
+ "@noble/hashes": "1.8.0",
50
52
  "cbor-x": "^1.6.0",
51
- "effection": "^3.6.0"
53
+ "effection": "^3.6.0",
54
+ "libsodium-wrappers": "^0.8.2"
52
55
  },
53
56
  "_generatedBy": "dnt@dev"
54
57
  }
@@ -1,4 +1,12 @@
1
1
  import { type ParserOptions } from "../core/parser-engine.js";
2
2
  import type { CesrMessage } from "../core/types.js";
3
+ /**
4
+ * Adapt an async byte stream into parsed CESR frames.
5
+ *
6
+ * Boundary contract:
7
+ * - chunks are fed in arrival order into one parser instance
8
+ * - emitted parser error events are rethrown as stream errors
9
+ * - yielded values are the historical `CesrMessage` frame payloads only
10
+ */
3
11
  export declare function toAsyncFrames(source: AsyncIterable<Uint8Array>, options?: ParserOptions): AsyncGenerator<CesrMessage>;
4
12
  //# sourceMappingURL=async-iterable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"async-iterable.d.ts","sourceRoot":"","sources":["../../../src/src/adapters/async-iterable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,wBAAuB,aAAa,CAClC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,EACjC,OAAO,GAAE,aAAkB,GAC1B,cAAc,CAAC,WAAW,CAAC,CAe7B"}
1
+ {"version":3,"file":"async-iterable.d.ts","sourceRoot":"","sources":["../../../src/src/adapters/async-iterable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;;;;;;GAOG;AACH,wBAAuB,aAAa,CAClC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,EACjC,OAAO,GAAE,aAAkB,GAC1B,cAAc,CAAC,WAAW,CAAC,CAe7B"}
@@ -1,8 +1,15 @@
1
1
  import { type Operation } from "effection";
2
2
  import type { ParserOptions } from "../core/parser-engine.js";
3
3
  import type { CesrMessage } from "../core/types.js";
4
+ /** Effection-facing handle for a parsed-frame async iterable. */
4
5
  export interface FrameChannel {
5
6
  readonly frames: AsyncIterable<CesrMessage>;
6
7
  }
8
+ /**
9
+ * Bridge the async-iterable parser adapter into an Effection operation.
10
+ *
11
+ * This stays intentionally thin so parser semantics continue to live in
12
+ * `toAsyncFrames()` rather than forking behavior in an Effection-only path.
13
+ */
7
14
  export declare function toEffectionFrames(source: AsyncIterable<Uint8Array>, options?: ParserOptions): Operation<FrameChannel>;
8
15
  //# sourceMappingURL=effection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"effection.d.ts","sourceRoot":"","sources":["../../../src/src/adapters/effection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGpD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;CAC7C;AAED,wBAAiB,iBAAiB,CAChC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,EACjC,OAAO,GAAE,aAAkB,GAC1B,SAAS,CAAC,YAAY,CAAC,CAOzB"}
1
+ {"version":3,"file":"effection.d.ts","sourceRoot":"","sources":["../../../src/src/adapters/effection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGpD,iEAAiE;AACjE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;CAC7C;AAED;;;;;GAKG;AACH,wBAAiB,iBAAiB,CAChC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,EACjC,OAAO,GAAE,aAAkB,GAC1B,SAAS,CAAC,YAAY,CAAC,CAOzB"}
@@ -1,4 +1,16 @@
1
1
  import type { AnnotatedFrame, AnnotateOptions } from "./types.js";
2
+ /**
3
+ * Parse input and return one annotation structure per emitted frame.
4
+ *
5
+ * Use this when callers want to inspect annotation lines programmatically
6
+ * instead of flattening the whole stream to one rendered string.
7
+ */
2
8
  export declare function annotateFrames(input: Uint8Array | string, options?: AnnotateOptions): AnnotatedFrame[];
9
+ /**
10
+ * Render one CESR stream into maintainer-oriented annotated text.
11
+ *
12
+ * Wrapper-aware rendering is attempted first so opaque wrapper payloads can be
13
+ * preserved faithfully before falling back to frame-by-frame annotation.
14
+ */
3
15
  export declare function annotate(input: Uint8Array | string, options?: AnnotateOptions): string;
4
16
  //# sourceMappingURL=annotator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"annotator.d.ts","sourceRoot":"","sources":["../../../src/src/annotate/annotator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA6BlE,wBAAgB,cAAc,CAC5B,KAAK,EAAE,UAAU,GAAG,MAAM,EAC1B,OAAO,CAAC,EAAE,eAAe,GACxB,cAAc,EAAE,CAKlB;AAED,wBAAgB,QAAQ,CACtB,KAAK,EAAE,UAAU,GAAG,MAAM,EAC1B,OAAO,CAAC,EAAE,eAAe,GACxB,MAAM,CASR"}
1
+ {"version":3,"file":"annotator.d.ts","sourceRoot":"","sources":["../../../src/src/annotate/annotator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA6BlE;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,UAAU,GAAG,MAAM,EAC1B,OAAO,CAAC,EAAE,eAAe,GACxB,cAAc,EAAE,CAKlB;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CACtB,KAAK,EAAE,UAAU,GAAG,MAAM,EAC1B,OAAO,CAAC,EAAE,eAAe,GACxB,MAAM,CASR"}
@@ -1,3 +1,4 @@
1
+ /** Runtime IO boundary for the standalone annotate CLI. */
1
2
  export interface CliIo {
2
3
  readFile(path: string): Promise<Uint8Array>;
3
4
  writeTextFile(path: string, text: string): Promise<void>;
@@ -5,6 +6,18 @@ export interface CliIo {
5
6
  writeStdout(text: string): Promise<void>;
6
7
  writeStderr(text: string): Promise<void>;
7
8
  }
9
+ /**
10
+ * Read a full `ReadableStream` into one contiguous byte buffer.
11
+ *
12
+ * This is the shared browser/runtime-neutral helper used by annotate CLI
13
+ * shims that expose stdin as a web stream instead of synchronous file APIs.
14
+ */
8
15
  export declare function readAllReadable(stream: ReadableStream<Uint8Array>): Promise<Uint8Array>;
16
+ /**
17
+ * Execute the standalone annotate CLI against the provided IO boundary.
18
+ *
19
+ * Error reporting is intentionally normalized here so runtime-specific entry
20
+ * points can stay as thin bootstraps.
21
+ */
9
22
  export declare function annotateCli(args: string[], io: CliIo): Promise<number>;
10
23
  //# sourceMappingURL=cli.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/src/annotate/cli.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC5C,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,SAAS,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;IACjC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1C;AAwCD,wBAAsB,eAAe,CACnC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,GACjC,OAAO,CAAC,UAAU,CAAC,CAwBrB;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CA0B5E"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/src/annotate/cli.ts"],"names":[],"mappings":"AASA,2DAA2D;AAC3D,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC5C,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,SAAS,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;IACjC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1C;AAwCD;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,GACjC,OAAO,CAAC,UAAU,CAAC,CAwBrB;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CA0B5E"}
@@ -1,6 +1,10 @@
1
1
  import type { Versionage } from "../tables/table-types.js";
2
+ /** Resolve a human-readable counter name against either known counter table. */
2
3
  export declare function counterCodeName(code: string): string;
4
+ /** Resolve a counter name against the registry selected for one protocol version. */
3
5
  export declare function counterCodeNameForVersion(code: string, version: Versionage): string;
6
+ /** Resolve a human-readable matter name from the generated matter code table. */
4
7
  export declare function matterCodeName(code: string): string;
8
+ /** Expand well-known native field labels for annotation comments when available. */
5
9
  export declare function nativeLabelName(label: string | null): string | null;
6
10
  //# sourceMappingURL=comments.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"comments.d.ts","sourceRoot":"","sources":["../../../src/src/annotate/comments.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAmB3D,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMpD;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,UAAU,GAClB,MAAM,CAGR;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAGnE"}
1
+ {"version":3,"file":"comments.d.ts","sourceRoot":"","sources":["../../../src/src/annotate/comments.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAmB3D,gFAAgF;AAChF,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMpD;AAED,qFAAqF;AACrF,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,UAAU,GAClB,MAAM,CAGR;AAED,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,oFAAoF;AACpF,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAGnE"}
@@ -1,2 +1,8 @@
1
+ /**
2
+ * Strip annotation comments/whitespace and rebuild the raw CESR text stream.
3
+ *
4
+ * This is the inverse of maintainer-facing annotation output, not a general
5
+ * parser: comment lines and inline `# ...` commentary are discarded.
6
+ */
1
7
  export declare function denot(annotated: string): Uint8Array;
2
8
  //# sourceMappingURL=denot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"denot.d.ts","sourceRoot":"","sources":["../../../src/src/annotate/denot.ts"],"names":[],"mappings":"AAEA,wBAAgB,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,CAcnD"}
1
+ {"version":3,"file":"denot.d.ts","sourceRoot":"","sources":["../../../src/src/annotate/denot.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,CAcnD"}
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../src/src/annotate/render.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAepD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA8dlE;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,QAAQ,CAAC,eAAe,CAAC,GACjC,MAAM,GAAG,IAAI,CAaf;AAED,iFAAiF;AACjF,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,WAAW,EAAE,EACrB,OAAO,EAAE,QAAQ,CAAC,eAAe,CAAC,GACjC,cAAc,EAAE,CAElB"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../src/src/annotate/render.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAUpD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAuelE;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,QAAQ,CAAC,eAAe,CAAC,GACjC,MAAM,GAAG,IAAI,CAaf;AAED,iFAAiF;AACjF,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,WAAW,EAAE,EACrB,OAAO,EAAE,QAAQ,CAAC,eAAe,CAAC,GACjC,cAAc,EAAE,CAElB"}
@@ -1,4 +1,5 @@
1
1
  import type { CesrMessage } from "../core/types.js";
2
+ /** Rendering options for maintainer-facing CESR annotation output. */
2
3
  export interface AnnotateOptions {
3
4
  commentMode?: "inline" | "above";
4
5
  indent?: number;
@@ -7,6 +8,7 @@ export interface AnnotateOptions {
7
8
  domainHint?: "txt" | "bny" | "auto";
8
9
  pretty?: boolean;
9
10
  }
11
+ /** Annotated line set for one parsed frame. */
10
12
  export interface AnnotatedFrame {
11
13
  index: number;
12
14
  frame: CesrMessage;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/src/annotate/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IACpC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,WAAW,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/src/annotate/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,sEAAsE;AACtE,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IACpC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,+CAA+C;AAC/C,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,WAAW,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB"}
@@ -25,8 +25,11 @@ export interface CesrParserBenchmarkOptions {
25
25
  */
26
26
  failOnParseError?: boolean;
27
27
  }
28
+ /** Per-run frame/error counts used to aggregate benchmark totals. */
28
29
  export interface CesrParseRunSummary {
30
+ /** Count of successfully emitted frame events for one run. */
29
31
  frameCount: number;
32
+ /** Count of emitted parser error events for one run. */
30
33
  errorCount: number;
31
34
  }
32
35
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"parser-benchmark.d.ts","sourceRoot":"","sources":["../../../src/src/bench/parser-benchmark.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAG5E;;;;;;GAMG;AACH,MAAM,WAAW,0BAA0B;IACzC,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,yBAAyB;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;CACtB;AAmED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,UAAU,EACjB,OAAO,GAAE,IAAI,CAAC,0BAA0B,EAAE,WAAW,GAAG,eAAe,CAAM,GAC5E,mBAAmB,CAcrB;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,UAAU,EACjB,OAAO,GAAE,0BAA+B,GACvC,yBAAyB,CA0D3B"}
1
+ {"version":3,"file":"parser-benchmark.d.ts","sourceRoot":"","sources":["../../../src/src/bench/parser-benchmark.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAG5E;;;;;;GAMG;AACH,MAAM,WAAW,0BAA0B;IACzC,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,qEAAqE;AACrE,MAAM,WAAW,mBAAmB;IAClC,8DAA8D;IAC9D,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,yBAAyB;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;CACtB;AAmED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,UAAU,EACjB,OAAO,GAAE,IAAI,CAAC,0BAA0B,EAAE,WAAW,GAAG,eAAe,CAAM,GAC5E,mBAAmB,CAcrB;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,UAAU,EACjB,OAAO,GAAE,0BAA+B,GACvC,yBAAyB,CA0D3B"}
@@ -1,4 +1,6 @@
1
+ /** Shared UTF-8 encoder used by CESR and DB byte helpers. */
1
2
  export declare const encoder: TextEncoder;
3
+ /** Shared UTF-8 decoder used by CESR and DB byte helpers. */
2
4
  export declare const decoder: TextDecoder;
3
5
  /**
4
6
  * Concatenates Uint8Array byte arrays into one byte array
@@ -7,17 +9,24 @@ export declare const decoder: TextDecoder;
7
9
  * @returns concatenated bytearray
8
10
  */
9
11
  export declare function concatBytes(...chunks: Uint8Array[]): Uint8Array;
12
+ /** Encode a non-negative integer into CESR's URL-safe base64 sextet text. */
10
13
  export declare function intToB64(value: number, length?: number): string;
14
+ /** Decode CESR URL-safe base64 sextet text into a non-negative integer. */
11
15
  export declare function b64ToInt(text: string): number;
16
+ /** Encode raw bytes to unpadded URL-safe base64 text. */
12
17
  export declare function encodeB64(data: Uint8Array): string;
18
+ /** Decode unpadded URL-safe base64 text into raw bytes. */
13
19
  export declare function decodeB64(text: string): Uint8Array;
14
20
  /**
15
21
  * Symmetric ceiling function
16
22
  * @param value
17
23
  */
18
24
  export declare function sceil(value: number): number;
25
+ /** Convert a CESR code string to the exact leading qb2 bytes that carry it. */
19
26
  export declare function codeB64ToB2(text: string): Uint8Array;
27
+ /** Convert leading qb2 bytes into the requested number of CESR sextets. */
20
28
  export declare function codeB2ToB64(bytes: Uint8Array, sextets: number): string;
29
+ /** Re-slice the first `sextets` worth of qb2 bytes for parser/code probing. */
21
30
  export declare function nabSextets(bytes: Uint8Array, sextets: number): Uint8Array;
22
31
  /** UTF-8 string -> bytes helper. */
23
32
  export declare const b: (t: string) => Uint8Array;
@@ -1 +1 @@
1
- {"version":3,"file":"bytes.d.ts","sourceRoot":"","sources":["../../../src/src/core/bytes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,aAAoB,CAAC;AACzC,eAAO,MAAM,OAAO,aAAoB,CAAC;AAGzC;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,CAS/D;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,SAAI,GAAG,MAAM,CAc1D;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAU7C;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAGlD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAQlD;AAED;;;GAGG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE3C;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAIpD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAMtE;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,CAEzE;AAED,oCAAoC;AACpC,eAAO,MAAM,CAAC,GAAI,GAAG,MAAM,KAAG,UAA+B,CAAC;AAC9D,oCAAoC;AACpC,eAAO,MAAM,CAAC,GAAI,GAAG,UAAU,KAAG,MAA2B,CAAC;AAE9D;;;GAGG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,CAKlD;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,KAAG,MAIzC,CAAC;AAEF,gEAAgE;AAChE,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAUvE;AAED,8EAA8E;AAC9E,wBAAgB,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAQlD"}
1
+ {"version":3,"file":"bytes.d.ts","sourceRoot":"","sources":["../../../src/src/core/bytes.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,eAAO,MAAM,OAAO,aAAoB,CAAC;AACzC,6DAA6D;AAC7D,eAAO,MAAM,OAAO,aAAoB,CAAC;AAGzC;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,CAS/D;AAED,6EAA6E;AAC7E,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,SAAI,GAAG,MAAM,CAc1D;AAED,2EAA2E;AAC3E,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAU7C;AAED,yDAAyD;AACzD,wBAAgB,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAGlD;AAED,2DAA2D;AAC3D,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAQlD;AAED;;;GAGG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE3C;AAED,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAIpD;AAED,2EAA2E;AAC3E,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAMtE;AAED,+EAA+E;AAC/E,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,CAEzE;AAED,oCAAoC;AACpC,eAAO,MAAM,CAAC,GAAI,GAAG,MAAM,KAAG,UAA+B,CAAC;AAC9D,oCAAoC;AACpC,eAAO,MAAM,CAAC,GAAI,GAAG,UAAU,KAAG,MAA2B,CAAC;AAE9D;;;GAGG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,CAKlD;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,KAAG,MAIzC,CAAC;AAEF,gEAAgE;AAChE,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAUvE;AAED,8EAA8E;AAC9E,wBAAgB,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAQlD"}
@@ -31,6 +31,9 @@ export declare class GroupSizeError extends ParserError {
31
31
  /** Qualified input could not be deserialized into a valid CESR payload. */
32
32
  export declare class DeserializeError extends ParserError {
33
33
  }
34
+ /** A CESR payload could not be serialized into a valid protocol representation. */
35
+ export declare class SerializeError extends ParserError {
36
+ }
34
37
  /** Failure while constructing syntax artifacts from token bytes. */
35
38
  export declare class SyntaxParseError extends ParserError {
36
39
  readonly cause?: Error | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/src/core/errors.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,qBAAa,WAAY,SAAQ,KAAK;aAGlB,MAAM,CAAC,EAAE,MAAM;aACf,OAAO,CAAC,EAAE,MAAM;gBAFhC,OAAO,EAAE,MAAM,EACC,MAAM,CAAC,EAAE,MAAM,YAAA,EACf,OAAO,CAAC,EAAE,MAAM,YAAA;CAKnC;AAED,mFAAmF;AACnF,qBAAa,aAAc,SAAQ,WAAW;aAE1B,MAAM,EAAE,MAAM;aACd,SAAS,EAAE,MAAM;gBADjB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjC,MAAM,CAAC,EAAE,MAAM;CAIlB;AAED,yDAAyD;AACzD,qBAAa,cAAe,SAAQ,WAAW;CAAG;AAClD,yDAAyD;AACzD,qBAAa,YAAa,SAAQ,WAAW;CAAG;AAChD,mEAAmE;AACnE,qBAAa,gBAAiB,SAAQ,WAAW;CAAG;AACpD,mEAAmE;AACnE,qBAAa,cAAe,SAAQ,WAAW;CAAG;AAClD,2EAA2E;AAC3E,qBAAa,gBAAiB,SAAQ,WAAW;CAAG;AACpD,oEAAoE;AACpE,qBAAa,gBAAiB,SAAQ,WAAW;aAGpB,KAAK,CAAC,EAAE,KAAK;gBADtC,OAAO,EAAE,MAAM,EACU,KAAK,CAAC,EAAE,KAAK,YAAA,EACtC,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM;CAInB;AACD,wEAAwE;AACxE,qBAAa,2BAA4B,SAAQ,WAAW;aAG/B,KAAK,CAAC,EAAE,KAAK;gBADtC,OAAO,EAAE,MAAM,EACU,KAAK,CAAC,EAAE,KAAK,YAAA,EACtC,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM;CAInB"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/src/core/errors.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,qBAAa,WAAY,SAAQ,KAAK;aAGlB,MAAM,CAAC,EAAE,MAAM;aACf,OAAO,CAAC,EAAE,MAAM;gBAFhC,OAAO,EAAE,MAAM,EACC,MAAM,CAAC,EAAE,MAAM,YAAA,EACf,OAAO,CAAC,EAAE,MAAM,YAAA;CAKnC;AAED,mFAAmF;AACnF,qBAAa,aAAc,SAAQ,WAAW;aAE1B,MAAM,EAAE,MAAM;aACd,SAAS,EAAE,MAAM;gBADjB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjC,MAAM,CAAC,EAAE,MAAM;CAIlB;AAED,yDAAyD;AACzD,qBAAa,cAAe,SAAQ,WAAW;CAAG;AAClD,yDAAyD;AACzD,qBAAa,YAAa,SAAQ,WAAW;CAAG;AAChD,mEAAmE;AACnE,qBAAa,gBAAiB,SAAQ,WAAW;CAAG;AACpD,mEAAmE;AACnE,qBAAa,cAAe,SAAQ,WAAW;CAAG;AAClD,2EAA2E;AAC3E,qBAAa,gBAAiB,SAAQ,WAAW;CAAG;AACpD,mFAAmF;AACnF,qBAAa,cAAe,SAAQ,WAAW;CAAG;AAClD,oEAAoE;AACpE,qBAAa,gBAAiB,SAAQ,WAAW;aAGpB,KAAK,CAAC,EAAE,KAAK;gBADtC,OAAO,EAAE,MAAM,EACU,KAAK,CAAC,EAAE,KAAK,YAAA,EACtC,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM;CAInB;AACD,wEAAwE;AACxE,qBAAa,2BAA4B,SAAQ,WAAW;aAG/B,KAAK,CAAC,EAAE,KAAK;gBADtC,OAAO,EAAE,MAAM,EACU,KAAK,CAAC,EAAE,KAAK,YAAA,EACtC,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM;CAInB"}
@@ -2,6 +2,10 @@ import { type AttachmentDispatchOptions, type AttachmentVersionFallbackPolicy, t
2
2
  import { type FrameBoundaryPolicy } from "./parser-policy.js";
3
3
  import { type RecoveryDiagnosticObserver } from "./recovery-diagnostics.js";
4
4
  import type { CesrFrame } from "./types.js";
5
+ /**
6
+ * Parser construction options spanning legacy compatibility knobs and the newer
7
+ * explicit policy seams.
8
+ */
5
9
  export interface ParserOptions {
6
10
  /** Legacy framed toggle; used only when `frameBoundaryPolicy` is not injected. */
7
11
  framed?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"parser-engine.d.ts","sourceRoot":"","sources":["../../../src/src/core/parser-engine.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,+BAA+B,EAEpC,KAAK,mBAAmB,EACzB,MAAM,6BAA6B,CAAC;AAMrC,OAAO,EAA6B,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzF,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,SAAS,EAAe,MAAM,YAAY,CAAC;AAEzD,MAAM,WAAW,aAAa;IAC5B,kFAAkF;IAClF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,sBAAsB,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC3D,4EAA4E;IAC5E,2BAA2B,CAAC,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAClE,+EAA+E;IAC/E,oBAAoB,CAAC,EAAE,0BAA0B,CAAC;IAClD,kFAAkF;IAClF,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C;;;;;OAKG;IACH,+BAA+B,CAAC,EAAE,+BAA+B,CAAC;CACnE;AAED;;;GAGG;AACH,qBAAa,UAAU;IACrB;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAsB;IAC1D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyB;IAClD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAsB;IAC1D,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAA6B;IAEzE;;;;;;OAMG;gBACS,OAAO,GAAE,aAAkB;IA+BvC,uDAAuD;IACvD,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,EAAE;IAKpC,4EAA4E;IAC5E,KAAK,IAAI,SAAS,EAAE;IAmBpB,KAAK,IAAI,IAAI;IAKb;;;;;OAKG;IACH,OAAO,CAAC,KAAK;CAoHd;AAED,oCAAoC;AACpC,wBAAgB,YAAY,CAAC,OAAO,GAAE,aAAkB,GAAG,UAAU,CAEpE;AAED,qDAAqD;AACrD,wBAAgB,UAAU,CACxB,KAAK,EAAE,UAAU,EACjB,OAAO,GAAE,aAAkB,GAC1B,SAAS,EAAE,CAGb"}
1
+ {"version":3,"file":"parser-engine.d.ts","sourceRoot":"","sources":["../../../src/src/core/parser-engine.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,+BAA+B,EAEpC,KAAK,mBAAmB,EACzB,MAAM,6BAA6B,CAAC;AAMrC,OAAO,EAA6B,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzF,OAAO,EAAqC,KAAK,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC/G,OAAO,KAAK,EAAE,SAAS,EAAe,MAAM,YAAY,CAAC;AAEzD;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,kFAAkF;IAClF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,sBAAsB,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC3D,4EAA4E;IAC5E,2BAA2B,CAAC,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAClE,+EAA+E;IAC/E,oBAAoB,CAAC,EAAE,0BAA0B,CAAC;IAClD,kFAAkF;IAClF,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C;;;;;OAKG;IACH,+BAA+B,CAAC,EAAE,+BAA+B,CAAC;CACnE;AAED;;;GAGG;AACH,qBAAa,UAAU;IACrB;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAsB;IAC1D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyB;IAClD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAsB;IAC1D,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAA6B;IAEzE;;;;;;OAMG;gBACS,OAAO,GAAE,aAAkB;IA8BvC,uDAAuD;IACvD,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,EAAE;IAKpC,4EAA4E;IAC5E,KAAK,IAAI,SAAS,EAAE;IAmBpB,KAAK,IAAI,IAAI;IAKb;;;;;OAKG;IACH,OAAO,CAAC,KAAK;CAoHd;AAED,oCAAoC;AACpC,wBAAgB,YAAY,CAAC,OAAO,GAAE,aAAkB,GAAG,UAAU,CAEpE;AAED,qDAAqD;AACrD,wBAAgB,UAAU,CACxB,KAAK,EAAE,UAAU,EACjB,OAAO,GAAE,aAAkB,GAC1B,SAAS,EAAE,CAGb"}
@@ -1 +1 @@
1
- {"version":3,"file":"parser-frame-parser.d.ts","sourceRoot":"","sources":["../../../src/src/core/parser-frame-parser.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAcnF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAyB3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,wEAAwE;AACxE,UAAU,kBAAkB;IAC1B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,+BAA+B,EAAE,+BAA+B,CAAC;IACjE,gBAAgB,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,IAAI,CAAC;IAClD,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;CACzD;AAED,4EAA4E;AAC5E,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,UAAU,CAAC;IACpB,aAAa,EAAE,UAAU,CAAC;CAC3B;AAoED;;;;;;;GAOG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAsB;IAC1D,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAkC;IAClF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;IACnE,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAA6B;gBAE7D,OAAO,EAAE,kBAAkB;IAOvC,0EAA0E;IAC1E,oBAAoB,CAClB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,KAAK,GAAG,KAAK,GAClB,OAAO;IAKV;;;OAGG;IACH,UAAU,CACR,KAAK,EAAE,UAAU,EACjB,gBAAgB,GAAE,UAA4B,GAC7C,gBAAgB;IAKnB;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IA4G7B,2EAA2E;IAC3E,OAAO,CAAC,yBAAyB;IA2FjC,qFAAqF;IACrF,OAAO,CAAC,4BAA4B;IA6BpC;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;IAkD/B,4EAA4E;IAC5E,OAAO,CAAC,oBAAoB;IAgD5B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAoCzB,0EAA0E;IAC1E,OAAO,CAAC,kBAAkB;IAuE1B,qFAAqF;IACrF,OAAO,CAAC,kBAAkB;IAqD1B,+EAA+E;IAC/E,OAAO,CAAC,oBAAoB;IAa5B,gFAAgF;IAChF,OAAO,CAAC,qBAAqB;IAoC7B,yEAAyE;IACzE,OAAO,CAAC,yBAAyB;IAuCjC,8EAA8E;IAC9E,OAAO,CAAC,6BAA6B;IAmBrC,iFAAiF;IACjF,OAAO,CAAC,sBAAsB;IA2D9B,mFAAmF;IACnF,OAAO,CAAC,0BAA0B;IAyClC,0EAA0E;IAC1E,OAAO,CAAC,kBAAkB;IAgB1B,8DAA8D;IAC9D,OAAO,CAAC,eAAe;IA6BvB,oFAAoF;IACpF,OAAO,CAAC,wBAAwB;CA8CjC"}
1
+ {"version":3,"file":"parser-frame-parser.d.ts","sourceRoot":"","sources":["../../../src/src/core/parser-frame-parser.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAUnF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAyB3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,wEAAwE;AACxE,UAAU,kBAAkB;IAC1B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,+BAA+B,EAAE,+BAA+B,CAAC;IACjE,gBAAgB,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,IAAI,CAAC;IAClD,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;CACzD;AAED,4EAA4E;AAC5E,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,UAAU,CAAC;IACpB,aAAa,EAAE,UAAU,CAAC;CAC3B;AAwED;;;;;;;GAOG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAsB;IAC1D,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAkC;IAClF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;IACnE,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAA6B;gBAE7D,OAAO,EAAE,kBAAkB;IAOvC,0EAA0E;IAC1E,oBAAoB,CAClB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,KAAK,GAAG,KAAK,GAClB,OAAO;IAKV;;;OAGG;IACH,UAAU,CACR,KAAK,EAAE,UAAU,EACjB,gBAAgB,GAAE,UAA4B,GAC7C,gBAAgB;IAKnB;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IA4G7B,2EAA2E;IAC3E,OAAO,CAAC,yBAAyB;IA2FjC,qFAAqF;IACrF,OAAO,CAAC,4BAA4B;IA6BpC;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;IAmD/B,4EAA4E;IAC5E,OAAO,CAAC,oBAAoB;IAuD5B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAoCzB,0EAA0E;IAC1E,OAAO,CAAC,kBAAkB;IAuE1B,qFAAqF;IACrF,OAAO,CAAC,kBAAkB;IAqD1B,+EAA+E;IAC/E,OAAO,CAAC,oBAAoB;IAa5B,gFAAgF;IAChF,OAAO,CAAC,qBAAqB;IAoC7B,yEAAyE;IACzE,OAAO,CAAC,yBAAyB;IAuCjC,8EAA8E;IAC9E,OAAO,CAAC,6BAA6B;IAmBrC,iFAAiF;IACjF,OAAO,CAAC,sBAAsB;IA2D9B,mFAAmF;IACnF,OAAO,CAAC,0BAA0B;IAyClC,0EAA0E;IAC1E,OAAO,CAAC,kBAAkB;IAgB1B,8DAA8D;IAC9D,OAAO,CAAC,eAAe;IA6BvB,oFAAoF;IACpF,OAAO,CAAC,wBAAwB;CA8CjC"}
@@ -1,6 +1,7 @@
1
1
  import type { CounterGroupLike, GroupEntry, Primitive } from "../primitives/primitive.js";
2
2
  import type { Versionage } from "../tables/table-types.js";
3
3
  import type { Kind, Protocol } from "../tables/versions.js";
4
+ /** Version metadata discovered from one version string or native pre-read. */
4
5
  export interface Smellage {
5
6
  proto: Protocol;
6
7
  pvrsn: Versionage;
@@ -8,6 +9,7 @@ export interface Smellage {
8
9
  size: number;
9
10
  gvrsn: Versionage | null;
10
11
  }
12
+ /** Parser cold-start domain classification for the next unread stream bytes. */
11
13
  export type ColdCode = "msg" | "txt" | "bny" | "ano";
12
14
  /** Body payload for one parsed CESR frame. */
13
15
  export interface CesrBody {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,QAAQ,CAAC;IAChB,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAErD,8CAA8C;AAC9C,MAAM,WAAW,QAAQ;IACvB,iCAAiC;IACjC,GAAG,EAAE,UAAU,CAAC;IAChB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACpC,sCAAsC;IACtC,IAAI,EAAE,IAAI,CAAC;IACX,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,gCAAgC;IAChC,KAAK,EAAE,QAAQ,CAAC;IAChB,wCAAwC;IACxC,KAAK,EAAE,UAAU,CAAC;IAClB,qCAAqC;IACrC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;IACzB,kCAAkC;IAClC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,4BAA4B;IAC5B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,qCAAqC;IACrC,MAAM,CAAC,EAAE;QACP,0CAA0C;QAC1C,QAAQ,EAAE,MAAM,CAAC;QACjB,mDAAmD;QACnD,MAAM,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;YAAC,SAAS,EAAE,SAAS,CAAA;SAAE,CAAC,CAAC;KAC/D,CAAC;CACH;AAED,yCAAyC;AACzC,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC;AAExC,2DAA2D;AAC3D,MAAM,WAAW,eAAgB,SAAQ,gBAAgB;CAAG;AAE5D;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,WAAW,EAAE,eAAe,EAAE,CAAC;CAChC;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,sEAAsE;AACtE,MAAM,MAAM,SAAS,GACjB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,WAAW,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAE5D,8EAA8E;AAC9E,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,QAAQ,CAAC;IAChB,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;CAC1B;AAED,gFAAgF;AAChF,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAErD,8CAA8C;AAC9C,MAAM,WAAW,QAAQ;IACvB,iCAAiC;IACjC,GAAG,EAAE,UAAU,CAAC;IAChB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACpC,sCAAsC;IACtC,IAAI,EAAE,IAAI,CAAC;IACX,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,gCAAgC;IAChC,KAAK,EAAE,QAAQ,CAAC;IAChB,wCAAwC;IACxC,KAAK,EAAE,UAAU,CAAC;IAClB,qCAAqC;IACrC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;IACzB,kCAAkC;IAClC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,4BAA4B;IAC5B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,qCAAqC;IACrC,MAAM,CAAC,EAAE;QACP,0CAA0C;QAC1C,QAAQ,EAAE,MAAM,CAAC;QACjB,mDAAmD;QACnD,MAAM,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;YAAC,SAAS,EAAE,SAAS,CAAA;SAAE,CAAC,CAAC;KAC/D,CAAC;CACH;AAED,yCAAyC;AACzC,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC;AAExC,2DAA2D;AAC3D,MAAM,WAAW,eAAgB,SAAQ,gBAAgB;CAAG;AAE5D;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,WAAW,EAAE,eAAe,EAAE,CAAC;CAChC;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,sEAAsE;AACtE,MAAM,MAAM,SAAS,GACjB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,WAAW,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC"}
@@ -0,0 +1,48 @@
1
+ /** KERI security tiers for deterministic secret derivation. */
2
+ export declare const Tiers: Readonly<{
3
+ readonly low: "low";
4
+ readonly med: "med";
5
+ readonly high: "high";
6
+ }>;
7
+ /** Security-tier union aligned to KERIpy's `Tiers`. */
8
+ export type Tier = (typeof Tiers)[keyof typeof Tiers];
9
+ /** Return true when the value is one of the supported KERI security tiers. */
10
+ export declare function isTier(value: string): value is Tier;
11
+ /** KERI/ACDC message ilks mirrored from KERIpy's `kering.Ilks`. */
12
+ export declare const Ilks: Readonly<{
13
+ readonly icp: "icp";
14
+ readonly rot: "rot";
15
+ readonly ixn: "ixn";
16
+ readonly dip: "dip";
17
+ readonly drt: "drt";
18
+ readonly rct: "rct";
19
+ readonly qry: "qry";
20
+ readonly rpy: "rpy";
21
+ readonly xip: "xip";
22
+ readonly exn: "exn";
23
+ readonly pro: "pro";
24
+ readonly bar: "bar";
25
+ readonly vcp: "vcp";
26
+ readonly vrt: "vrt";
27
+ readonly iss: "iss";
28
+ readonly rev: "rev";
29
+ readonly bis: "bis";
30
+ readonly brv: "brv";
31
+ readonly rip: "rip";
32
+ readonly bup: "bup";
33
+ readonly upd: "upd";
34
+ readonly acm: "acm";
35
+ readonly act: "act";
36
+ readonly acg: "acg";
37
+ readonly ace: "ace";
38
+ readonly sch: "sch";
39
+ readonly att: "att";
40
+ readonly agg: "agg";
41
+ readonly edg: "edg";
42
+ readonly rul: "rul";
43
+ }>;
44
+ /** Message-type union aligned to KERIpy's `Ilks`. */
45
+ export type Ilk = (typeof Ilks)[keyof typeof Ilks];
46
+ /** Return true when the value is one of the known KERI/ACDC ilks. */
47
+ export declare function isIlk(value: string): value is Ilk;
48
+ //# sourceMappingURL=vocabulary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vocabulary.d.ts","sourceRoot":"","sources":["../../../src/src/core/vocabulary.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,eAAO,MAAM,KAAK;;;;EAMjB,CAAC;AAEF,uDAAuD;AACvD,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,OAAO,KAAK,CAAC,CAAC;AAEtD,8EAA8E;AAC9E,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,IAAI,CAEnD;AAED,mEAAmE;AACnE,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiChB,CAAC;AAEF,qDAAqD;AACrD,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,OAAO,IAAI,CAAC,CAAC;AAEnD,qEAAqE;AACrE,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,GAAG,CAEjD"}
@@ -13,6 +13,7 @@ export * from "./core/parser-engine.js";
13
13
  export * from "./core/parser-policy.js";
14
14
  export * from "./core/recovery-diagnostics.js";
15
15
  export * from "./core/types.js";
16
+ export * from "./core/vocabulary.js";
16
17
  export * from "./parser/cold-start.js";
17
18
  export * from "./parser/group-dispatch.js";
18
19
  export * from "./primitives/aggor.js";
@@ -27,7 +28,9 @@ export * from "./primitives/dater.js";
27
28
  export * from "./primitives/decimer.js";
28
29
  export * from "./primitives/decrypter.js";
29
30
  export * from "./primitives/diger.js";
31
+ export * from "./primitives/disclosure.js";
30
32
  export * from "./primitives/encrypter.js";
33
+ export * from "./primitives/hydrate.js";
31
34
  export * from "./primitives/ilker.js";
32
35
  export * from "./primitives/indexer.js";
33
36
  export * from "./primitives/labeler.js";
@@ -46,6 +49,8 @@ export * from "./primitives/sealer.js";
46
49
  export * from "./primitives/seqner.js";
47
50
  export * from "./primitives/siger.js";
48
51
  export * from "./primitives/signer.js";
52
+ export * from "./primitives/streamer.js";
53
+ export * from "./primitives/structing.js";
49
54
  export * from "./primitives/structor.js";
50
55
  export * from "./primitives/tagger.js";
51
56
  export * from "./primitives/texter.js";