@elaraai/east 1.0.45 → 1.0.47

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 (90) hide show
  1. package/dist/src/containers/sortedmap.d.ts +22 -0
  2. package/dist/src/containers/sortedmap.d.ts.map +1 -1
  3. package/dist/src/containers/sortedmap.js +31 -2
  4. package/dist/src/containers/sortedmap.js.map +1 -1
  5. package/dist/src/containers/sortedset.d.ts +22 -0
  6. package/dist/src/containers/sortedset.d.ts.map +1 -1
  7. package/dist/src/containers/sortedset.js +31 -2
  8. package/dist/src/containers/sortedset.js.map +1 -1
  9. package/dist/src/expr/blob.d.ts +6 -1
  10. package/dist/src/expr/blob.d.ts.map +1 -1
  11. package/dist/src/expr/blob.js +6 -1
  12. package/dist/src/expr/blob.js.map +1 -1
  13. package/dist/src/expr/libs/blob.d.ts +10 -1
  14. package/dist/src/expr/libs/blob.d.ts.map +1 -1
  15. package/dist/src/expr/libs/blob.js +10 -1
  16. package/dist/src/expr/libs/blob.js.map +1 -1
  17. package/dist/src/fuzz.d.ts.map +1 -1
  18. package/dist/src/fuzz.js +11 -2
  19. package/dist/src/fuzz.js.map +1 -1
  20. package/dist/src/serialization/beast2/index.d.ts +76 -22
  21. package/dist/src/serialization/beast2/index.d.ts.map +1 -1
  22. package/dist/src/serialization/beast2/index.js +87 -720
  23. package/dist/src/serialization/beast2/index.js.map +1 -1
  24. package/dist/src/serialization/beast2/index.spec.js +147 -4
  25. package/dist/src/serialization/beast2/index.spec.js.map +1 -1
  26. package/dist/src/serialization/beast2/shared.d.ts +79 -0
  27. package/dist/src/serialization/beast2/shared.d.ts.map +1 -0
  28. package/dist/src/serialization/beast2/shared.js +143 -0
  29. package/dist/src/serialization/beast2/shared.js.map +1 -0
  30. package/dist/src/serialization/beast2/v4/container.d.ts +67 -0
  31. package/dist/src/serialization/beast2/v4/container.d.ts.map +1 -0
  32. package/dist/src/serialization/beast2/v4/container.js +727 -0
  33. package/dist/src/serialization/beast2/v4/container.js.map +1 -0
  34. package/dist/src/serialization/beast2/{sourcemap-table.d.ts → v4/sourcemap-table.d.ts} +2 -2
  35. package/dist/src/serialization/beast2/v4/sourcemap-table.d.ts.map +1 -0
  36. package/dist/src/serialization/beast2/{sourcemap-table.js → v4/sourcemap-table.js} +2 -2
  37. package/dist/src/serialization/beast2/v4/sourcemap-table.js.map +1 -0
  38. package/dist/src/serialization/beast2/{string-table.d.ts → v4/string-table.d.ts} +1 -1
  39. package/dist/src/serialization/beast2/v4/string-table.d.ts.map +1 -0
  40. package/dist/src/serialization/beast2/{string-table.js → v4/string-table.js} +1 -1
  41. package/dist/src/serialization/beast2/v4/string-table.js.map +1 -0
  42. package/dist/src/serialization/beast2/{type-table.d.ts → v4/type-table.d.ts} +6 -4
  43. package/dist/src/serialization/beast2/v4/type-table.d.ts.map +1 -0
  44. package/dist/src/serialization/beast2/{type-table.js → v4/type-table.js} +103 -10
  45. package/dist/src/serialization/beast2/v4/type-table.js.map +1 -0
  46. package/dist/src/serialization/beast2/{value-table.d.ts → v4/value-table.d.ts} +2 -2
  47. package/dist/src/serialization/beast2/v4/value-table.d.ts.map +1 -0
  48. package/dist/src/serialization/beast2/{value-table.js → v4/value-table.js} +3 -3
  49. package/dist/src/serialization/beast2/v4/value-table.js.map +1 -0
  50. package/dist/src/serialization/beast2/v5/codec.d.ts +213 -0
  51. package/dist/src/serialization/beast2/v5/codec.d.ts.map +1 -0
  52. package/dist/src/serialization/beast2/v5/codec.js +954 -0
  53. package/dist/src/serialization/beast2/v5/codec.js.map +1 -0
  54. package/dist/src/serialization/beast2/v5/deflate.d.ts +16 -0
  55. package/dist/src/serialization/beast2/v5/deflate.d.ts.map +1 -0
  56. package/dist/src/serialization/beast2/v5/deflate.js +172 -0
  57. package/dist/src/serialization/beast2/v5/deflate.js.map +1 -0
  58. package/dist/src/serialization/beast2/v5/frames.d.ts +150 -0
  59. package/dist/src/serialization/beast2/v5/frames.d.ts.map +1 -0
  60. package/dist/src/serialization/beast2/v5/frames.js +284 -0
  61. package/dist/src/serialization/beast2/v5/frames.js.map +1 -0
  62. package/dist/src/serialization/beast2/v5/index.spec.d.ts +6 -0
  63. package/dist/src/serialization/beast2/v5/index.spec.d.ts.map +1 -0
  64. package/dist/src/serialization/beast2/v5/index.spec.js +484 -0
  65. package/dist/src/serialization/beast2/v5/index.spec.js.map +1 -0
  66. package/dist/src/serialization/beast2/v5/stream.d.ts +177 -0
  67. package/dist/src/serialization/beast2/v5/stream.d.ts.map +1 -0
  68. package/dist/src/serialization/beast2/v5/stream.js +447 -0
  69. package/dist/src/serialization/beast2/v5/stream.js.map +1 -0
  70. package/dist/src/serialization/beast2/v5/type-section.d.ts +81 -0
  71. package/dist/src/serialization/beast2/v5/type-section.d.ts.map +1 -0
  72. package/dist/src/serialization/beast2/v5/type-section.js +211 -0
  73. package/dist/src/serialization/beast2/v5/type-section.js.map +1 -0
  74. package/dist/src/serialization/beast2/version.d.ts +40 -0
  75. package/dist/src/serialization/beast2/version.d.ts.map +1 -0
  76. package/dist/src/serialization/beast2/version.js +23 -0
  77. package/dist/src/serialization/beast2/version.js.map +1 -0
  78. package/dist/src/serialization/index.d.ts +1 -1
  79. package/dist/src/serialization/index.d.ts.map +1 -1
  80. package/dist/src/serialization/index.js +1 -1
  81. package/dist/src/serialization/index.js.map +1 -1
  82. package/package.json +1 -1
  83. package/dist/src/serialization/beast2/sourcemap-table.d.ts.map +0 -1
  84. package/dist/src/serialization/beast2/sourcemap-table.js.map +0 -1
  85. package/dist/src/serialization/beast2/string-table.d.ts.map +0 -1
  86. package/dist/src/serialization/beast2/string-table.js.map +0 -1
  87. package/dist/src/serialization/beast2/type-table.d.ts.map +0 -1
  88. package/dist/src/serialization/beast2/type-table.js.map +0 -1
  89. package/dist/src/serialization/beast2/value-table.d.ts.map +0 -1
  90. package/dist/src/serialization/beast2/value-table.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../../../../src/serialization/beast2/v5/codec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ /**
6
+ * Compresses `src` to a raw DEFLATE stream, deterministically.
7
+ *
8
+ * The output is a pure function of the input — byte-identical to east-c's
9
+ * implementation of the same specified algorithm — and is ordinary RFC 1951
10
+ * DEFLATE, so any standard inflate reads it.
11
+ *
12
+ * @param src - the bytes to compress
13
+ * @returns a raw DEFLATE stream (no zlib header, no trailer)
14
+ */
15
+ export declare function deterministicDeflateRaw(src: Uint8Array): Uint8Array;
16
+ //# sourceMappingURL=deflate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deflate.d.ts","sourceRoot":"","sources":["../../../../../src/serialization/beast2/v5/deflate.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA+FH;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU,CAkEnE"}
@@ -0,0 +1,172 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ /**
6
+ * Deterministic DEFLATE encoder for beast2 v5 frames.
7
+ *
8
+ * **Why we ship our own encoder.** Inflate is universally interoperable — any
9
+ * valid RFC 1951 stream decodes identically under zlib, zlib-ng, miniz and the
10
+ * browser's `DecompressionStream`. Deflate is not: every library picks its own
11
+ * match finding and Huffman trees, so the same input compresses to different
12
+ * (all valid) bytes. Measured: miniz, node's zlib and CPython's zlib disagree
13
+ * three ways on identical input. Since e3 content-addresses beast2 bytes, an
14
+ * implementation-defined encoder would give one logical value several hashes
15
+ * depending on which runtime wrote it — splitting caches and duplicating
16
+ * objects.
17
+ *
18
+ * So beast2 pins the *encoder*, not the library: this algorithm is specified
19
+ * in v5/SPEC.md and implemented identically here and in east-c (east-py reaches
20
+ * it through the C bridge). Output is a pure function of the input. Decoders
21
+ * stay liberal and simply inflate, so nothing downstream needs porting.
22
+ *
23
+ * The three things implementations disagree on are all pinned here:
24
+ * - **Fixed Huffman blocks** (`BTYPE=01`) — no dynamic tree construction,
25
+ * which is the largest source of divergence.
26
+ * - **A specified match finder** — 3-byte hash of fixed width, chains bounded
27
+ * at {@link MAX_CHAIN}, greedy with a strictly-greater comparison so the
28
+ * shortest distance wins ties.
29
+ * - **Specified window and bit packing**, straight from RFC 1951.
30
+ *
31
+ * It compresses less than zlib (~1.6x larger) and that is the price of
32
+ * determinism; it still beats the uncompressed form by ~3.3x on real data.
33
+ */
34
+ const WINDOW = 32768;
35
+ const MIN_MATCH = 3;
36
+ const MAX_MATCH = 258;
37
+ const HASH_BITS = 15;
38
+ const HASH_SIZE = 1 << HASH_BITS;
39
+ const HASH_MASK = HASH_SIZE - 1;
40
+ /** Match-chain bound. Pinned by the format: it caps work AND fixes the output. */
41
+ const MAX_CHAIN = 32;
42
+ // RFC 1951 §3.2.5 length and distance tables.
43
+ const LEN_BASE = [3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258];
44
+ const LEN_EXTRA = [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0];
45
+ const DIST_BASE = [1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577];
46
+ const DIST_EXTRA = [0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13];
47
+ /** LSB-first bit sink, as DEFLATE requires. */
48
+ class BitWriter {
49
+ buf;
50
+ len = 0;
51
+ cur = 0;
52
+ bit = 0;
53
+ constructor(capacity) {
54
+ this.buf = new Uint8Array(Math.max(64, capacity));
55
+ }
56
+ push(byte) {
57
+ if (this.len === this.buf.length) {
58
+ const grown = new Uint8Array(this.buf.length * 2);
59
+ grown.set(this.buf);
60
+ this.buf = grown;
61
+ }
62
+ this.buf[this.len++] = byte;
63
+ }
64
+ /** Write `count` low bits of `value`, least-significant bit first. */
65
+ writeBits(value, count) {
66
+ for (let i = 0; i < count; i++) {
67
+ this.cur |= ((value >> i) & 1) << this.bit;
68
+ if (++this.bit === 8) {
69
+ this.push(this.cur);
70
+ this.cur = 0;
71
+ this.bit = 0;
72
+ }
73
+ }
74
+ }
75
+ /** Write a Huffman code, most-significant bit of the code first. */
76
+ writeCode(code, bits) {
77
+ for (let i = bits - 1; i >= 0; i--)
78
+ this.writeBits((code >> i) & 1, 1);
79
+ }
80
+ finish() {
81
+ if (this.bit > 0)
82
+ this.push(this.cur);
83
+ return this.buf.subarray(0, this.len);
84
+ }
85
+ }
86
+ /** Emit a literal/length symbol in the fixed code (RFC 1951 §3.2.6). */
87
+ function writeLitLen(bw, sym) {
88
+ if (sym <= 143)
89
+ bw.writeCode(0x30 + sym, 8);
90
+ else if (sym <= 255)
91
+ bw.writeCode(0x190 + sym - 144, 9);
92
+ else if (sym <= 279)
93
+ bw.writeCode(sym - 256, 7);
94
+ else
95
+ bw.writeCode(0xC0 + sym - 280, 8);
96
+ }
97
+ /**
98
+ * Compresses `src` to a raw DEFLATE stream, deterministically.
99
+ *
100
+ * The output is a pure function of the input — byte-identical to east-c's
101
+ * implementation of the same specified algorithm — and is ordinary RFC 1951
102
+ * DEFLATE, so any standard inflate reads it.
103
+ *
104
+ * @param src - the bytes to compress
105
+ * @returns a raw DEFLATE stream (no zlib header, no trailer)
106
+ */
107
+ export function deterministicDeflateRaw(src) {
108
+ const bw = new BitWriter(Math.max(64, src.length >> 1));
109
+ bw.writeBits(1, 1); // BFINAL — beast2 frames are a single block
110
+ bw.writeBits(1, 2); // BTYPE = 01, fixed Huffman
111
+ const head = new Int32Array(HASH_SIZE).fill(-1);
112
+ const prev = new Int32Array(src.length > 0 ? src.length : 1).fill(-1);
113
+ const n = src.length;
114
+ const hashAt = (i) => ((src[i] << 10) ^ (src[i + 1] << 5) ^ src[i + 2]) & HASH_MASK;
115
+ const insert = (i) => {
116
+ if (i + MIN_MATCH > n)
117
+ return;
118
+ const h = hashAt(i);
119
+ prev[i] = head[h];
120
+ head[h] = i;
121
+ };
122
+ let pos = 0;
123
+ while (pos < n) {
124
+ let bestLen = 0;
125
+ let bestDist = 0;
126
+ if (pos + MIN_MATCH <= n) {
127
+ let cand = head[hashAt(pos)];
128
+ let chain = 0;
129
+ const maxLen = Math.min(MAX_MATCH, n - pos);
130
+ while (cand >= 0 && chain++ < MAX_CHAIN) {
131
+ const dist = pos - cand;
132
+ if (dist > WINDOW)
133
+ break;
134
+ let len = 0;
135
+ while (len < maxLen && src[cand + len] === src[pos + len])
136
+ len++;
137
+ // Strictly greater: among equal-length matches the nearest wins,
138
+ // which is part of what makes the output reproducible.
139
+ if (len > bestLen) {
140
+ bestLen = len;
141
+ bestDist = dist;
142
+ if (len === maxLen)
143
+ break;
144
+ }
145
+ cand = prev[cand];
146
+ }
147
+ }
148
+ if (bestLen >= MIN_MATCH) {
149
+ let lc = 0;
150
+ while (lc < 28 && LEN_BASE[lc + 1] <= bestLen)
151
+ lc++;
152
+ writeLitLen(bw, 257 + lc);
153
+ bw.writeBits(bestLen - LEN_BASE[lc], LEN_EXTRA[lc]);
154
+ let dc = 0;
155
+ while (dc < 29 && DIST_BASE[dc + 1] <= bestDist)
156
+ dc++;
157
+ bw.writeCode(dc, 5);
158
+ bw.writeBits(bestDist - DIST_BASE[dc], DIST_EXTRA[dc]);
159
+ for (let i = 0; i < bestLen; i++)
160
+ insert(pos + i);
161
+ pos += bestLen;
162
+ }
163
+ else {
164
+ writeLitLen(bw, src[pos]);
165
+ insert(pos);
166
+ pos++;
167
+ }
168
+ }
169
+ writeLitLen(bw, 256); // end of block
170
+ return bw.finish();
171
+ }
172
+ //# sourceMappingURL=deflate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deflate.js","sourceRoot":"","sources":["../../../../../src/serialization/beast2/v5/deflate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,150 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ /**
6
+ * Beast2 v5 frame layer — the on-wire transport of the value stream.
7
+ *
8
+ * The v5 value stream is a sequence of frames; the concatenation of the
9
+ * decompressed frame payloads forms the logical value encoding. Each frame:
10
+ *
11
+ * varint(codec_id) varint(uncompressed_len) varint(payload_len) payload
12
+ *
13
+ * Codec 0 (`none`) stores the logical bytes raw (`payload_len` must equal
14
+ * `uncompressed_len`); codec 1 (`deflate`) stores a raw DEFLATE (RFC 1951)
15
+ * stream that must inflate to exactly `uncompressed_len` bytes. Codec 2 is
16
+ * reserved for zstd. Writers choose a codec per frame, so a blob may mix
17
+ * compressed and uncompressed frames.
18
+ *
19
+ * Deflate uses Node's zlib when available (loaded via
20
+ * `process.getBuiltinModule`, which browser bundlers ignore); browsers fall
21
+ * back to the async `CompressionStream`/`DecompressionStream` path used by
22
+ * the async decode entry points.
23
+ */
24
+ import { BufferWriter, BufferReader } from "../../binary-utils.js";
25
+ /** Codec id: store logical bytes uncompressed. */
26
+ export declare const CODEC_NONE = 0;
27
+ /** Codec id: raw DEFLATE (RFC 1951). The mandatory baseline codec. */
28
+ export declare const CODEC_DEFLATE = 1;
29
+ /** Codec id reserved for zstd — not yet implemented by any runtime. */
30
+ export declare const CODEC_ZSTD = 2;
31
+ /** Codec names accepted by the encode entry points. */
32
+ export type Beast2Codec = "none" | "deflate";
33
+ /** Frames with payloads below this size are stored uncompressed. */
34
+ export declare const COMPRESSION_THRESHOLD = 64;
35
+ /** Upper bound on a single frame's uncompressed length (1 GiB) — guards
36
+ * against decompression bombs and absurd allocations on corrupt input. */
37
+ export declare const MAX_FRAME_UNCOMPRESSED: number;
38
+ /** Resolves a codec name to its wire id. */
39
+ export declare function codecId(codec: Beast2Codec): number;
40
+ /**
41
+ * Compresses logical bytes with raw DEFLATE.
42
+ *
43
+ * Uses beast2's own specified encoder rather than the platform's zlib, so the
44
+ * bytes are identical in every runtime — see `./deflate.ts` for why that
45
+ * matters (content-addressing) and how the algorithm is pinned. It needs no
46
+ * platform support at all, so browsers can compress too.
47
+ *
48
+ * @param data - the logical bytes to compress
49
+ * @returns the raw DEFLATE stream
50
+ */
51
+ export declare function deflateRawSync(data: Uint8Array): Uint8Array;
52
+ /**
53
+ * Decompresses a raw DEFLATE frame payload synchronously.
54
+ *
55
+ * @param payload - the compressed frame payload
56
+ * @param uncompressedLen - the expected logical byte length from the frame header
57
+ * @returns the logical bytes
58
+ * @throws {Error} When zlib is unavailable (browsers — use the async decode
59
+ * entry points), the stream is corrupt, or the output length mismatches.
60
+ */
61
+ export declare function inflateRawSync(payload: Uint8Array, uncompressedLen: number): Uint8Array;
62
+ /**
63
+ * Decompresses a raw DEFLATE frame payload asynchronously via
64
+ * `DecompressionStream("deflate-raw")` — the browser path.
65
+ *
66
+ * @param payload - the compressed frame payload
67
+ * @param uncompressedLen - the expected logical byte length from the frame header
68
+ * @returns the logical bytes
69
+ * @throws {Error} When the stream is corrupt or the output length mismatches.
70
+ */
71
+ export declare function inflateRawAsync(payload: Uint8Array, uncompressedLen: number): Promise<Uint8Array>;
72
+ /**
73
+ * Writes one frame carrying the given logical bytes.
74
+ *
75
+ * Small payloads (below {@link COMPRESSION_THRESHOLD}) and payloads that
76
+ * deflate fails to shrink are stored with codec `none` regardless of the
77
+ * requested codec — the codec id is a per-frame writer choice.
78
+ *
79
+ * @param out - the wire-level writer to append the frame to
80
+ * @param logical - the logical bytes this frame carries
81
+ * @param codec - the requested codec for this frame
82
+ */
83
+ export declare function writeFrame(out: BufferWriter, logical: Uint8Array, codec: Beast2Codec): void;
84
+ /** A parsed frame header plus the payload's wire position. */
85
+ export interface FrameHeader {
86
+ codec: number;
87
+ uncompressedLen: number;
88
+ payloadLen: number;
89
+ /** Wire offset of the first payload byte. */
90
+ payloadOffset: number;
91
+ /** Wire offset of the byte after the payload (the next frame). */
92
+ endOffset: number;
93
+ }
94
+ /**
95
+ * Parses one frame header at `offset` and validates its bounds.
96
+ *
97
+ * @param data - the whole blob
98
+ * @param offset - wire offset of the frame's first byte
99
+ * @returns the parsed header
100
+ * @throws {Error} When the header is truncated, the codec is unknown, the
101
+ * lengths are inconsistent, or the payload runs past the end of input.
102
+ */
103
+ export declare function readFrameHeader(data: Uint8Array, offset: number): FrameHeader;
104
+ /**
105
+ * Sequential reader over the value stream's frames, yielding one
106
+ * {@link BufferReader} per logical chunk.
107
+ *
108
+ * The driver decides when to stop pulling frames — the logical value encoding
109
+ * is self-terminating, so bytes after the last consumed frame (the optional
110
+ * index and footer) are never touched by this reader.
111
+ */
112
+ export declare class FrameReader {
113
+ /** Wire offset of the next unread frame (after the last consumed one). */
114
+ wireOffset: number;
115
+ /** Wire offsets of each consumed frame's first byte, in order. */
116
+ readonly frameOffsets: number[];
117
+ private readonly data;
118
+ private readonly inflate;
119
+ /**
120
+ * @param data - the whole blob
121
+ * @param offset - wire offset of the first value-stream frame
122
+ * @param inflate - decompressor for deflate frames (defaults to the sync
123
+ * zlib binding; the async decode path pre-inflates and injects a lookup)
124
+ */
125
+ constructor(data: Uint8Array, offset: number, inflate?: FrameInflate);
126
+ /** Whether another frame could start here (any unread bytes remain). */
127
+ hasBytes(): boolean;
128
+ /**
129
+ * Consumes the next frame and returns a reader over its logical chunk.
130
+ *
131
+ * @returns a reader positioned at the chunk's first byte
132
+ * @throws {Error} When no bytes remain or the frame is malformed.
133
+ */
134
+ next(): BufferReader;
135
+ }
136
+ /** Decompressor signature used by {@link FrameReader}: receives the payload,
137
+ * the declared uncompressed length, and the frame's wire start offset. */
138
+ export type FrameInflate = (payload: Uint8Array, uncompressedLen: number, frameStart: number) => Uint8Array;
139
+ /**
140
+ * Pre-inflates every deflate frame from `offset` to the end of input
141
+ * asynchronously and returns an inflate lookup keyed by frame start offset —
142
+ * the browser decode path pairs this with a {@link FrameReader} and then runs
143
+ * the ordinary synchronous decode.
144
+ *
145
+ * @param data - the whole blob
146
+ * @param offset - wire offset of the first value-stream frame
147
+ * @returns an inflate function serving the precomputed chunks
148
+ */
149
+ export declare function preInflateFrames(data: Uint8Array, offset: number): Promise<FrameInflate>;
150
+ //# sourceMappingURL=frames.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frames.d.ts","sourceRoot":"","sources":["../../../../../src/serialization/beast2/v5/frames.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGnE,kDAAkD;AAClD,eAAO,MAAM,UAAU,IAAI,CAAC;AAC5B,sEAAsE;AACtE,eAAO,MAAM,aAAa,IAAI,CAAC;AAC/B,uEAAuE;AACvE,eAAO,MAAM,UAAU,IAAI,CAAC;AAE5B,uDAAuD;AACvD,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC;AAE7C,oEAAoE;AACpE,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC;2EAC2E;AAC3E,eAAO,MAAM,sBAAsB,QAAU,CAAC;AAE9C,4CAA4C;AAC5C,wBAAgB,OAAO,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAElD;AAgBD;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAE3D;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,GAAG,UAAU,CASvF;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAgCvG;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAe3F;AAMD,8DAA8D;AAC9D,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,aAAa,EAAE,MAAM,CAAC;IACtB,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,CAsB7E;AAED;;;;;;;GAOG;AACH,qBAAa,WAAW;IACtB,0EAA0E;IAC1E,UAAU,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,CAAM;IACrC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IAEvC;;;;;OAKG;gBACS,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,YAA6B;IAMpF,wEAAwE;IACxE,QAAQ,IAAI,OAAO;IAInB;;;;;OAKG;IACH,IAAI,IAAI,YAAY;CAcrB;AAED;2EAC2E;AAC3E,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,UAAU,CAAC;AAM5G;;;;;;;;;GASG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CA8B9F"}