@elaraai/east 0.0.1-beta.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 (251) hide show
  1. package/LICENSE.md +682 -0
  2. package/README.md +276 -0
  3. package/dist/src/analyze.d.ts +95 -0
  4. package/dist/src/analyze.d.ts.map +1 -0
  5. package/dist/src/analyze.js +1110 -0
  6. package/dist/src/analyze.js.map +1 -0
  7. package/dist/src/ast.d.ts +263 -0
  8. package/dist/src/ast.d.ts.map +1 -0
  9. package/dist/src/ast.js +151 -0
  10. package/dist/src/ast.js.map +1 -0
  11. package/dist/src/ast_to_ir.d.ts +24 -0
  12. package/dist/src/ast_to_ir.d.ts.map +1 -0
  13. package/dist/src/ast_to_ir.js +834 -0
  14. package/dist/src/ast_to_ir.js.map +1 -0
  15. package/dist/src/builtins.d.ts +18 -0
  16. package/dist/src/builtins.d.ts.map +1 -0
  17. package/dist/src/builtins.js +1105 -0
  18. package/dist/src/builtins.js.map +1 -0
  19. package/dist/src/comparison.d.ts +28 -0
  20. package/dist/src/comparison.d.ts.map +1 -0
  21. package/dist/src/comparison.js +1017 -0
  22. package/dist/src/comparison.js.map +1 -0
  23. package/dist/src/compile.d.ts +22 -0
  24. package/dist/src/compile.d.ts.map +1 -0
  25. package/dist/src/compile.js +3260 -0
  26. package/dist/src/compile.js.map +1 -0
  27. package/dist/src/containers/ref.d.ts +106 -0
  28. package/dist/src/containers/ref.d.ts.map +1 -0
  29. package/dist/src/containers/ref.js +100 -0
  30. package/dist/src/containers/ref.js.map +1 -0
  31. package/dist/src/containers/sortedmap.d.ts +165 -0
  32. package/dist/src/containers/sortedmap.d.ts.map +1 -0
  33. package/dist/src/containers/sortedmap.js +237 -0
  34. package/dist/src/containers/sortedmap.js.map +1 -0
  35. package/dist/src/containers/sortedset.d.ts +185 -0
  36. package/dist/src/containers/sortedset.d.ts.map +1 -0
  37. package/dist/src/containers/sortedset.js +312 -0
  38. package/dist/src/containers/sortedset.js.map +1 -0
  39. package/dist/src/containers/variant.d.ts +131 -0
  40. package/dist/src/containers/variant.d.ts.map +1 -0
  41. package/dist/src/containers/variant.js +68 -0
  42. package/dist/src/containers/variant.js.map +1 -0
  43. package/dist/src/datetime_format/parse.d.ts +50 -0
  44. package/dist/src/datetime_format/parse.d.ts.map +1 -0
  45. package/dist/src/datetime_format/parse.js +908 -0
  46. package/dist/src/datetime_format/parse.js.map +1 -0
  47. package/dist/src/datetime_format/print.d.ts +35 -0
  48. package/dist/src/datetime_format/print.d.ts.map +1 -0
  49. package/dist/src/datetime_format/print.js +157 -0
  50. package/dist/src/datetime_format/print.js.map +1 -0
  51. package/dist/src/datetime_format/tokenize.d.ts +76 -0
  52. package/dist/src/datetime_format/tokenize.d.ts.map +1 -0
  53. package/dist/src/datetime_format/tokenize.js +271 -0
  54. package/dist/src/datetime_format/tokenize.js.map +1 -0
  55. package/dist/src/datetime_format/types.d.ts +99 -0
  56. package/dist/src/datetime_format/types.d.ts.map +1 -0
  57. package/dist/src/datetime_format/types.js +103 -0
  58. package/dist/src/datetime_format/types.js.map +1 -0
  59. package/dist/src/datetime_format/validate.d.ts +51 -0
  60. package/dist/src/datetime_format/validate.d.ts.map +1 -0
  61. package/dist/src/datetime_format/validate.js +208 -0
  62. package/dist/src/datetime_format/validate.js.map +1 -0
  63. package/dist/src/default.d.ts +21 -0
  64. package/dist/src/default.d.ts.map +1 -0
  65. package/dist/src/default.js +82 -0
  66. package/dist/src/default.js.map +1 -0
  67. package/dist/src/eastir.d.ts +33 -0
  68. package/dist/src/eastir.d.ts.map +1 -0
  69. package/dist/src/eastir.js +92 -0
  70. package/dist/src/eastir.js.map +1 -0
  71. package/dist/src/error.d.ts +13 -0
  72. package/dist/src/error.d.ts.map +1 -0
  73. package/dist/src/error.js +8 -0
  74. package/dist/src/error.js.map +1 -0
  75. package/dist/src/expr/array.d.ts +1711 -0
  76. package/dist/src/expr/array.d.ts.map +1 -0
  77. package/dist/src/expr/array.js +1805 -0
  78. package/dist/src/expr/array.js.map +1 -0
  79. package/dist/src/expr/ast.d.ts +17 -0
  80. package/dist/src/expr/ast.d.ts.map +1 -0
  81. package/dist/src/expr/ast.js +302 -0
  82. package/dist/src/expr/ast.js.map +1 -0
  83. package/dist/src/expr/blob.d.ts +141 -0
  84. package/dist/src/expr/blob.d.ts.map +1 -0
  85. package/dist/src/expr/blob.js +198 -0
  86. package/dist/src/expr/blob.js.map +1 -0
  87. package/dist/src/expr/block.d.ts +201 -0
  88. package/dist/src/expr/block.d.ts.map +1 -0
  89. package/dist/src/expr/block.js +1505 -0
  90. package/dist/src/expr/block.js.map +1 -0
  91. package/dist/src/expr/boolean.d.ts +207 -0
  92. package/dist/src/expr/boolean.d.ts.map +1 -0
  93. package/dist/src/expr/boolean.js +261 -0
  94. package/dist/src/expr/boolean.js.map +1 -0
  95. package/dist/src/expr/datetime.d.ts +544 -0
  96. package/dist/src/expr/datetime.d.ts.map +1 -0
  97. package/dist/src/expr/datetime.js +980 -0
  98. package/dist/src/expr/datetime.js.map +1 -0
  99. package/dist/src/expr/dict.d.ts +1242 -0
  100. package/dist/src/expr/dict.d.ts.map +1 -0
  101. package/dist/src/expr/dict.js +1492 -0
  102. package/dist/src/expr/dict.js.map +1 -0
  103. package/dist/src/expr/expr.d.ts +95 -0
  104. package/dist/src/expr/expr.d.ts.map +1 -0
  105. package/dist/src/expr/expr.js +171 -0
  106. package/dist/src/expr/expr.js.map +1 -0
  107. package/dist/src/expr/float.d.ts +357 -0
  108. package/dist/src/expr/float.d.ts.map +1 -0
  109. package/dist/src/expr/float.js +637 -0
  110. package/dist/src/expr/float.js.map +1 -0
  111. package/dist/src/expr/function.d.ts +46 -0
  112. package/dist/src/expr/function.d.ts.map +1 -0
  113. package/dist/src/expr/function.js +58 -0
  114. package/dist/src/expr/function.js.map +1 -0
  115. package/dist/src/expr/index.d.ts +450 -0
  116. package/dist/src/expr/index.d.ts.map +1 -0
  117. package/dist/src/expr/index.js +423 -0
  118. package/dist/src/expr/index.js.map +1 -0
  119. package/dist/src/expr/integer.d.ts +256 -0
  120. package/dist/src/expr/integer.d.ts.map +1 -0
  121. package/dist/src/expr/integer.js +311 -0
  122. package/dist/src/expr/integer.js.map +1 -0
  123. package/dist/src/expr/libs/array.d.ts +106 -0
  124. package/dist/src/expr/libs/array.d.ts.map +1 -0
  125. package/dist/src/expr/libs/array.js +140 -0
  126. package/dist/src/expr/libs/array.js.map +1 -0
  127. package/dist/src/expr/libs/blob.d.ts +42 -0
  128. package/dist/src/expr/libs/blob.d.ts.map +1 -0
  129. package/dist/src/expr/libs/blob.js +70 -0
  130. package/dist/src/expr/libs/blob.js.map +1 -0
  131. package/dist/src/expr/libs/datetime.d.ts +479 -0
  132. package/dist/src/expr/libs/datetime.d.ts.map +1 -0
  133. package/dist/src/expr/libs/datetime.js +624 -0
  134. package/dist/src/expr/libs/datetime.js.map +1 -0
  135. package/dist/src/expr/libs/dict.d.ts +66 -0
  136. package/dist/src/expr/libs/dict.d.ts.map +1 -0
  137. package/dist/src/expr/libs/dict.js +77 -0
  138. package/dist/src/expr/libs/dict.js.map +1 -0
  139. package/dist/src/expr/libs/float.d.ts +299 -0
  140. package/dist/src/expr/libs/float.d.ts.map +1 -0
  141. package/dist/src/expr/libs/float.js +564 -0
  142. package/dist/src/expr/libs/float.js.map +1 -0
  143. package/dist/src/expr/libs/integer.d.ts +228 -0
  144. package/dist/src/expr/libs/integer.d.ts.map +1 -0
  145. package/dist/src/expr/libs/integer.js +398 -0
  146. package/dist/src/expr/libs/integer.js.map +1 -0
  147. package/dist/src/expr/libs/set.d.ts +59 -0
  148. package/dist/src/expr/libs/set.d.ts.map +1 -0
  149. package/dist/src/expr/libs/set.js +69 -0
  150. package/dist/src/expr/libs/set.js.map +1 -0
  151. package/dist/src/expr/libs/string.d.ts +71 -0
  152. package/dist/src/expr/libs/string.d.ts.map +1 -0
  153. package/dist/src/expr/libs/string.js +75 -0
  154. package/dist/src/expr/libs/string.js.map +1 -0
  155. package/dist/src/expr/never.d.ts +15 -0
  156. package/dist/src/expr/never.d.ts.map +1 -0
  157. package/dist/src/expr/never.js +12 -0
  158. package/dist/src/expr/never.js.map +1 -0
  159. package/dist/src/expr/null.d.ts +15 -0
  160. package/dist/src/expr/null.d.ts.map +1 -0
  161. package/dist/src/expr/null.js +12 -0
  162. package/dist/src/expr/null.js.map +1 -0
  163. package/dist/src/expr/ref.d.ts +103 -0
  164. package/dist/src/expr/ref.d.ts.map +1 -0
  165. package/dist/src/expr/ref.js +131 -0
  166. package/dist/src/expr/ref.js.map +1 -0
  167. package/dist/src/expr/regex_validation.d.ts +25 -0
  168. package/dist/src/expr/regex_validation.d.ts.map +1 -0
  169. package/dist/src/expr/regex_validation.js +130 -0
  170. package/dist/src/expr/regex_validation.js.map +1 -0
  171. package/dist/src/expr/set.d.ts +1071 -0
  172. package/dist/src/expr/set.d.ts.map +1 -0
  173. package/dist/src/expr/set.js +1137 -0
  174. package/dist/src/expr/set.js.map +1 -0
  175. package/dist/src/expr/string.d.ts +414 -0
  176. package/dist/src/expr/string.d.ts.map +1 -0
  177. package/dist/src/expr/string.js +683 -0
  178. package/dist/src/expr/string.js.map +1 -0
  179. package/dist/src/expr/struct.d.ts +48 -0
  180. package/dist/src/expr/struct.d.ts.map +1 -0
  181. package/dist/src/expr/struct.js +65 -0
  182. package/dist/src/expr/struct.js.map +1 -0
  183. package/dist/src/expr/types.d.ts +68 -0
  184. package/dist/src/expr/types.d.ts.map +1 -0
  185. package/dist/src/expr/types.js +6 -0
  186. package/dist/src/expr/types.js.map +1 -0
  187. package/dist/src/expr/variant.d.ts +137 -0
  188. package/dist/src/expr/variant.d.ts.map +1 -0
  189. package/dist/src/expr/variant.js +105 -0
  190. package/dist/src/expr/variant.js.map +1 -0
  191. package/dist/src/fuzz.d.ts +80 -0
  192. package/dist/src/fuzz.d.ts.map +1 -0
  193. package/dist/src/fuzz.js +300 -0
  194. package/dist/src/fuzz.js.map +1 -0
  195. package/dist/src/index.d.ts +21 -0
  196. package/dist/src/index.d.ts.map +1 -0
  197. package/dist/src/index.js +21 -0
  198. package/dist/src/index.js.map +1 -0
  199. package/dist/src/internal.d.ts +36 -0
  200. package/dist/src/internal.d.ts.map +1 -0
  201. package/dist/src/internal.js +11 -0
  202. package/dist/src/internal.js.map +1 -0
  203. package/dist/src/ir.d.ts +1571 -0
  204. package/dist/src/ir.d.ts.map +1 -0
  205. package/dist/src/ir.js +56 -0
  206. package/dist/src/ir.js.map +1 -0
  207. package/dist/src/location.d.ts +48 -0
  208. package/dist/src/location.d.ts.map +1 -0
  209. package/dist/src/location.js +62 -0
  210. package/dist/src/location.js.map +1 -0
  211. package/dist/src/platform.d.ts +21 -0
  212. package/dist/src/platform.d.ts.map +1 -0
  213. package/dist/src/platform.js +8 -0
  214. package/dist/src/platform.js.map +1 -0
  215. package/dist/src/serialization/beast.d.ts +39 -0
  216. package/dist/src/serialization/beast.d.ts.map +1 -0
  217. package/dist/src/serialization/beast.js +555 -0
  218. package/dist/src/serialization/beast.js.map +1 -0
  219. package/dist/src/serialization/beast2-stream.d.ts +38 -0
  220. package/dist/src/serialization/beast2-stream.d.ts.map +1 -0
  221. package/dist/src/serialization/beast2-stream.js +665 -0
  222. package/dist/src/serialization/beast2-stream.js.map +1 -0
  223. package/dist/src/serialization/beast2.d.ts +41 -0
  224. package/dist/src/serialization/beast2.d.ts.map +1 -0
  225. package/dist/src/serialization/beast2.js +489 -0
  226. package/dist/src/serialization/beast2.js.map +1 -0
  227. package/dist/src/serialization/binary-utils.d.ts +151 -0
  228. package/dist/src/serialization/binary-utils.d.ts.map +1 -0
  229. package/dist/src/serialization/binary-utils.js +929 -0
  230. package/dist/src/serialization/binary-utils.js.map +1 -0
  231. package/dist/src/serialization/east.d.ts +84 -0
  232. package/dist/src/serialization/east.d.ts.map +1 -0
  233. package/dist/src/serialization/east.js +1802 -0
  234. package/dist/src/serialization/east.js.map +1 -0
  235. package/dist/src/serialization/index.d.ts +11 -0
  236. package/dist/src/serialization/index.d.ts.map +1 -0
  237. package/dist/src/serialization/index.js +12 -0
  238. package/dist/src/serialization/index.js.map +1 -0
  239. package/dist/src/serialization/json.d.ts +36 -0
  240. package/dist/src/serialization/json.d.ts.map +1 -0
  241. package/dist/src/serialization/json.js +849 -0
  242. package/dist/src/serialization/json.js.map +1 -0
  243. package/dist/src/type_of_type.d.ts +115 -0
  244. package/dist/src/type_of_type.d.ts.map +1 -0
  245. package/dist/src/type_of_type.js +362 -0
  246. package/dist/src/type_of_type.js.map +1 -0
  247. package/dist/src/types.d.ts +648 -0
  248. package/dist/src/types.d.ts.map +1 -0
  249. package/dist/src/types.js +1631 -0
  250. package/dist/src/types.js.map +1 -0
  251. package/package.json +87 -0
@@ -0,0 +1,151 @@
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
+ export declare class BufferWriter {
6
+ private buffer;
7
+ private view;
8
+ private offset;
9
+ constructor(initialCapacity?: number);
10
+ private ensureCapacity;
11
+ writeUint8(value: number): void;
12
+ writeUint16LE(value: number): void;
13
+ writeUint16BE(value: number): void;
14
+ writeBytes(bytes: Uint8Array): void;
15
+ writeVarint(value: number): void;
16
+ writeZigzag(value: bigint): void;
17
+ writeInt64Twiddled(value: bigint): void;
18
+ writeFloat64LE(value: number): void;
19
+ private static _floatBuffer;
20
+ private static _uintBuffer;
21
+ writeFloat64Twiddled(value: number): void;
22
+ writeStringUtf8Varint(str: string): void;
23
+ writeStringUtf8Null(str: string): void;
24
+ get size(): number;
25
+ get currentOffset(): number;
26
+ /**
27
+ * Extract the current buffer contents and reset for reuse.
28
+ * Used by streaming encoders to generate chunks.
29
+ */
30
+ pop(): Uint8Array;
31
+ toUint8Array(): Uint8Array;
32
+ }
33
+ export declare function readVarint(buffer: Uint8Array, offset: number): [number, number];
34
+ export declare function readZigzag(buffer: Uint8Array, offset: number): [bigint, number];
35
+ export declare function readInt64Twiddled(view: DataView, offset: number): [bigint, number];
36
+ export declare function readFloat64LE(view: DataView, offset: number): number;
37
+ export declare function readFloat64Twiddled(view: DataView, offset: number): number;
38
+ export declare function readStringUtf8Varint(buffer: Uint8Array, offset: number): [string, number];
39
+ export declare function readStringUtf8Null(buffer: Uint8Array, offset: number): [string, number];
40
+ export declare function utf8EncodeInto(str: string, buffer: Uint8Array, offset: number): number;
41
+ export declare function utf8Decode(buffer: Uint8Array, offset: number, length: number): string;
42
+ /**
43
+ * StreamBufferReader - Helper for reading bytes from a Web Streams ReadableStream
44
+ * with lookahead support for parsing.
45
+ *
46
+ * Maintains an internal buffer of unconsumed bytes pulled from the underlying stream.
47
+ */
48
+ export declare class StreamBufferReader {
49
+ private reader;
50
+ private buffer;
51
+ private bufferOffset;
52
+ private done;
53
+ private totalBytesConsumed;
54
+ private tempBuffer8;
55
+ private tempView8;
56
+ private floatUintBuffer;
57
+ private floatBuffer;
58
+ constructor(stream: ReadableStream<Uint8Array>);
59
+ /**
60
+ * Get the current position in the stream (total bytes read so far).
61
+ */
62
+ get position(): number;
63
+ /**
64
+ * Ensure we have at least `count` bytes available in the buffer.
65
+ * Pulls from underlying stream as needed.
66
+ */
67
+ private ensureBytes;
68
+ /**
69
+ * Peek at the next byte without consuming it.
70
+ * Returns null if stream is done.
71
+ * Optimized to avoid promises unless necessary.
72
+ */
73
+ peekByte(): Promise<number | null> | number | null;
74
+ private peekByteAsync;
75
+ /**
76
+ * Read and consume the next byte.
77
+ * Returns synchronously if data is buffered, otherwise returns a Promise.
78
+ * Throws if stream is done.
79
+ * Optimized to avoid promises unless necessary.
80
+ */
81
+ readByte(): number | Promise<number>;
82
+ private readByteAsync;
83
+ /**
84
+ * Read exactly `buffer.length` bytes into the provided buffer.
85
+ * Throws if not enough bytes available.
86
+ * Optimized to avoid promises unless necessary.
87
+ */
88
+ readBytes(buffer: Uint8Array): void | Promise<void>;
89
+ private readBytesAsync;
90
+ /**
91
+ * Read bytes until the terminator byte is found (exclusive).
92
+ * Returns the bytes read (not including terminator).
93
+ * The terminator byte is consumed.
94
+ * Optimized to avoid promises unless necessary.
95
+ */
96
+ readUntilByte(terminator: number): Uint8Array | Promise<Uint8Array>;
97
+ private readUntilByteAsync;
98
+ /**
99
+ * Release the underlying reader.
100
+ * Should be called when done reading to release resources.
101
+ */
102
+ release(): Promise<void>;
103
+ /**
104
+ * Read a twiddled big-endian int64 (Beast v1 format).
105
+ * Uses sign-bit flip for total ordering.
106
+ * Optimized to avoid promises unless necessary.
107
+ */
108
+ readInt64Twiddled(): bigint | Promise<bigint>;
109
+ private readInt64TwiddledAsync;
110
+ /**
111
+ * Read a twiddled big-endian float64 (Beast v1 format).
112
+ * Uses bit-twiddling for total ordering.
113
+ */
114
+ readFloat64Twiddled(): number | Promise<number>;
115
+ private readFloat64TwiddledAsync;
116
+ /**
117
+ * Read a null-terminated UTF-8 string (Beast v1 format).
118
+ * Decodes UTF-8 while searching for null terminator in single pass.
119
+ * Optimized to avoid promises unless necessary.
120
+ */
121
+ readStringUtf8Null(): string | Promise<string>;
122
+ private readStringUtf8NullAsync;
123
+ /**
124
+ * Read an unsigned varint (LEB128) - Beast v2 format.
125
+ * Returns a number (safe for lengths/tags up to 2^53-1).
126
+ * Optimized to avoid promises unless necessary.
127
+ */
128
+ readVarint(): number | Promise<number>;
129
+ private readVarintAsync;
130
+ /**
131
+ * Read a zigzag-encoded signed integer (varint) - Beast v2 format.
132
+ * Returns a bigint.
133
+ * Optimized to avoid promises unless necessary.
134
+ */
135
+ readZigzag(): bigint | Promise<bigint>;
136
+ private readZigzagAsync;
137
+ /**
138
+ * Read a little-endian float64 - Beast v2 format.
139
+ * Validates NaN values are canonical.
140
+ * Optimized to avoid promises unless necessary.
141
+ */
142
+ readFloat64LE(): number | Promise<number>;
143
+ private readFloat64LEAsync;
144
+ /**
145
+ * Read a varint-length-prefixed UTF-8 string - Beast v2 format.
146
+ */
147
+ readStringUtf8Varint(): string | Promise<string>;
148
+ private readStringUtf8VarintAsync;
149
+ private readStringUtf8SizedAsync;
150
+ }
151
+ //# sourceMappingURL=binary-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binary-utils.d.ts","sourceRoot":"","sources":["../../../src/serialization/binary-utils.ts"],"names":[],"mappings":"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"}