@maplibre/mlt 0.0.1-alpha.6

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 (215) hide show
  1. package/README.md +28 -0
  2. package/dist/encodings/decodingUtils.d.ts +13 -0
  3. package/dist/encodings/decodingUtils.js +194 -0
  4. package/dist/encodings/decodingUtils.js.map +1 -0
  5. package/dist/encodings/doubleDecoder.d.ts +4 -0
  6. package/dist/encodings/doubleDecoder.js +22 -0
  7. package/dist/encodings/doubleDecoder.js.map +1 -0
  8. package/dist/encodings/fastpfor/bitpacking.d.ts +51 -0
  9. package/dist/encodings/fastpfor/bitpacking.js +4444 -0
  10. package/dist/encodings/fastpfor/bitpacking.js.map +1 -0
  11. package/dist/encodings/fastpfor/codec.d.ts +19 -0
  12. package/dist/encodings/fastpfor/codec.js +3 -0
  13. package/dist/encodings/fastpfor/codec.js.map +1 -0
  14. package/dist/encodings/fastpfor/fastpfor.d.ts +38 -0
  15. package/dist/encodings/fastpfor/fastpfor.js +123 -0
  16. package/dist/encodings/fastpfor/fastpfor.js.map +1 -0
  17. package/dist/encodings/fastpfor/index.d.ts +20 -0
  18. package/dist/encodings/fastpfor/index.js +47 -0
  19. package/dist/encodings/fastpfor/index.js.map +1 -0
  20. package/dist/encodings/fastpfor/util.d.ts +2 -0
  21. package/dist/encodings/fastpfor/util.js +16 -0
  22. package/dist/encodings/fastpfor/util.js.map +1 -0
  23. package/dist/encodings/fastpfor/varint.d.ts +18 -0
  24. package/dist/encodings/fastpfor/varint.js +125 -0
  25. package/dist/encodings/fastpfor/varint.js.map +1 -0
  26. package/dist/encodings/fsstDecoder.d.ts +9 -0
  27. package/dist/encodings/fsstDecoder.js +34 -0
  28. package/dist/encodings/fsstDecoder.js.map +1 -0
  29. package/dist/encodings/geometryDecoder.d.ts +5 -0
  30. package/dist/encodings/geometryDecoder.js +453 -0
  31. package/dist/encodings/geometryDecoder.js.map +1 -0
  32. package/dist/encodings/geometryScaling.d.ts +6 -0
  33. package/dist/encodings/geometryScaling.js +3 -0
  34. package/dist/encodings/geometryScaling.js.map +1 -0
  35. package/dist/encodings/intWrapper.d.ts +8 -0
  36. package/dist/encodings/intWrapper.js +22 -0
  37. package/dist/encodings/intWrapper.js.map +1 -0
  38. package/dist/encodings/integerDecodingUtils.d.ts +46 -0
  39. package/dist/encodings/integerDecodingUtils.js +703 -0
  40. package/dist/encodings/integerDecodingUtils.js.map +1 -0
  41. package/dist/encodings/integerStreamDecoder.d.ts +26 -0
  42. package/dist/encodings/integerStreamDecoder.js +254 -0
  43. package/dist/encodings/integerStreamDecoder.js.map +1 -0
  44. package/dist/encodings/propertyDecoder.d.ts +4 -0
  45. package/dist/encodings/propertyDecoder.js +194 -0
  46. package/dist/encodings/propertyDecoder.js.map +1 -0
  47. package/dist/encodings/stringDecoder.d.ts +11 -0
  48. package/dist/encodings/stringDecoder.js +148 -0
  49. package/dist/encodings/stringDecoder.js.map +1 -0
  50. package/dist/index.d.ts +8 -0
  51. package/dist/index.js +19 -0
  52. package/dist/index.js.map +1 -0
  53. package/dist/metadata/tile/dictionaryType.d.ts +8 -0
  54. package/dist/metadata/tile/dictionaryType.js +13 -0
  55. package/dist/metadata/tile/dictionaryType.js.map +1 -0
  56. package/dist/metadata/tile/lengthType.d.ts +9 -0
  57. package/dist/metadata/tile/lengthType.js +14 -0
  58. package/dist/metadata/tile/lengthType.js.map +1 -0
  59. package/dist/metadata/tile/logicalLevelTechnique.d.ts +8 -0
  60. package/dist/metadata/tile/logicalLevelTechnique.js +15 -0
  61. package/dist/metadata/tile/logicalLevelTechnique.js.map +1 -0
  62. package/dist/metadata/tile/logicalStreamType.d.ts +12 -0
  63. package/dist/metadata/tile/logicalStreamType.js +21 -0
  64. package/dist/metadata/tile/logicalStreamType.js.map +1 -0
  65. package/dist/metadata/tile/mortonEncodedStreamMetadata.d.ts +15 -0
  66. package/dist/metadata/tile/mortonEncodedStreamMetadata.js +29 -0
  67. package/dist/metadata/tile/mortonEncodedStreamMetadata.js.map +1 -0
  68. package/dist/metadata/tile/offsetType.d.ts +6 -0
  69. package/dist/metadata/tile/offsetType.js +11 -0
  70. package/dist/metadata/tile/offsetType.js.map +1 -0
  71. package/dist/metadata/tile/physicalLevelTechnique.d.ts +17 -0
  72. package/dist/metadata/tile/physicalLevelTechnique.js +22 -0
  73. package/dist/metadata/tile/physicalLevelTechnique.js.map +1 -0
  74. package/dist/metadata/tile/physicalStreamType.d.ts +6 -0
  75. package/dist/metadata/tile/physicalStreamType.js +11 -0
  76. package/dist/metadata/tile/physicalStreamType.js.map +1 -0
  77. package/dist/metadata/tile/rleEncodedStreamMetadata.d.ts +20 -0
  78. package/dist/metadata/tile/rleEncodedStreamMetadata.js +34 -0
  79. package/dist/metadata/tile/rleEncodedStreamMetadata.js.map +1 -0
  80. package/dist/metadata/tile/scalarType.d.ts +12 -0
  81. package/dist/metadata/tile/scalarType.js +17 -0
  82. package/dist/metadata/tile/scalarType.js.map +1 -0
  83. package/dist/metadata/tile/streamMetadata.d.ts +23 -0
  84. package/dist/metadata/tile/streamMetadata.js +71 -0
  85. package/dist/metadata/tile/streamMetadata.js.map +1 -0
  86. package/dist/metadata/tile/streamMetadataDecoder.d.ts +5 -0
  87. package/dist/metadata/tile/streamMetadataDecoder.js +24 -0
  88. package/dist/metadata/tile/streamMetadataDecoder.js.map +1 -0
  89. package/dist/metadata/tileset/embeddedTilesetMetadataDecoder.d.ts +10 -0
  90. package/dist/metadata/tileset/embeddedTilesetMetadataDecoder.js +112 -0
  91. package/dist/metadata/tileset/embeddedTilesetMetadataDecoder.js.map +1 -0
  92. package/dist/metadata/tileset/tilesetMetadata.g.d.ts +418 -0
  93. package/dist/metadata/tileset/tilesetMetadata.g.js +476 -0
  94. package/dist/metadata/tileset/tilesetMetadata.g.js.map +1 -0
  95. package/dist/metadata/tileset/typeMap.d.ts +38 -0
  96. package/dist/metadata/tileset/typeMap.js +185 -0
  97. package/dist/metadata/tileset/typeMap.js.map +1 -0
  98. package/dist/mltDecoder.d.ts +11 -0
  99. package/dist/mltDecoder.js +146 -0
  100. package/dist/mltDecoder.js.map +1 -0
  101. package/dist/mltMetadata.d.ts +40 -0
  102. package/dist/mltMetadata.js +34 -0
  103. package/dist/mltMetadata.js.map +1 -0
  104. package/dist/vector/constant/intConstVector.d.ts +19 -0
  105. package/dist/vector/constant/intConstVector.js +89 -0
  106. package/dist/vector/constant/intConstVector.js.map +1 -0
  107. package/dist/vector/constant/longConstVector.d.ts +19 -0
  108. package/dist/vector/constant/longConstVector.js +87 -0
  109. package/dist/vector/constant/longConstVector.js.map +1 -0
  110. package/dist/vector/dictionary/stringDictionaryVector.d.ts +22 -0
  111. package/dist/vector/dictionary/stringDictionaryVector.js +180 -0
  112. package/dist/vector/dictionary/stringDictionaryVector.js.map +1 -0
  113. package/dist/vector/featureTable.d.ts +29 -0
  114. package/dist/vector/featureTable.js +70 -0
  115. package/dist/vector/featureTable.js.map +1 -0
  116. package/dist/vector/filter/constSelectionVector.d.ts +0 -0
  117. package/dist/vector/filter/constSelectionVector.js +1 -0
  118. package/dist/vector/filter/constSelectionVector.js.map +1 -0
  119. package/dist/vector/filter/flatSelectionVector.d.ts +16 -0
  120. package/dist/vector/filter/flatSelectionVector.js +42 -0
  121. package/dist/vector/filter/flatSelectionVector.js.map +1 -0
  122. package/dist/vector/filter/selectionVector.d.ts +8 -0
  123. package/dist/vector/filter/selectionVector.js +3 -0
  124. package/dist/vector/filter/selectionVector.js.map +1 -0
  125. package/dist/vector/filter/selectionVectorUtils.d.ts +7 -0
  126. package/dist/vector/filter/selectionVectorUtils.js +44 -0
  127. package/dist/vector/filter/selectionVectorUtils.js.map +1 -0
  128. package/dist/vector/filter/sequenceSelectionVector.d.ts +0 -0
  129. package/dist/vector/filter/sequenceSelectionVector.js +1 -0
  130. package/dist/vector/filter/sequenceSelectionVector.js.map +1 -0
  131. package/dist/vector/fixedSizeVector.d.ts +5 -0
  132. package/dist/vector/fixedSizeVector.js +14 -0
  133. package/dist/vector/fixedSizeVector.js.map +1 -0
  134. package/dist/vector/flat/bitVector.d.ts +14 -0
  135. package/dist/vector/flat/bitVector.js +38 -0
  136. package/dist/vector/flat/bitVector.js.map +1 -0
  137. package/dist/vector/flat/booleanFlatVector.d.ts +20 -0
  138. package/dist/vector/flat/booleanFlatVector.js +55 -0
  139. package/dist/vector/flat/booleanFlatVector.js.map +1 -0
  140. package/dist/vector/flat/doubleFlatVector.d.ts +19 -0
  141. package/dist/vector/flat/doubleFlatVector.js +109 -0
  142. package/dist/vector/flat/doubleFlatVector.js.map +1 -0
  143. package/dist/vector/flat/floatFlatVector.d.ts +19 -0
  144. package/dist/vector/flat/floatFlatVector.js +109 -0
  145. package/dist/vector/flat/floatFlatVector.js.map +1 -0
  146. package/dist/vector/flat/intFlatVector.d.ts +19 -0
  147. package/dist/vector/flat/intFlatVector.js +123 -0
  148. package/dist/vector/flat/intFlatVector.js.map +1 -0
  149. package/dist/vector/flat/longFlatVector.d.ts +19 -0
  150. package/dist/vector/flat/longFlatVector.js +124 -0
  151. package/dist/vector/flat/longFlatVector.js.map +1 -0
  152. package/dist/vector/flat/stringFlatVector.d.ts +20 -0
  153. package/dist/vector/flat/stringFlatVector.js +165 -0
  154. package/dist/vector/flat/stringFlatVector.js.map +1 -0
  155. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.d.ts +27 -0
  156. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.js +115 -0
  157. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.js.map +1 -0
  158. package/dist/vector/geometry/constGeometryVector.d.ts +17 -0
  159. package/dist/vector/geometry/constGeometryVector.js +51 -0
  160. package/dist/vector/geometry/constGeometryVector.js.map +1 -0
  161. package/dist/vector/geometry/constGpuVector.d.ts +15 -0
  162. package/dist/vector/geometry/constGpuVector.js +66 -0
  163. package/dist/vector/geometry/constGpuVector.js.map +1 -0
  164. package/dist/vector/geometry/flatGeometryVector.d.ts +16 -0
  165. package/dist/vector/geometry/flatGeometryVector.js +64 -0
  166. package/dist/vector/geometry/flatGeometryVector.js.map +1 -0
  167. package/dist/vector/geometry/flatGpuVector.d.ts +14 -0
  168. package/dist/vector/geometry/flatGpuVector.js +67 -0
  169. package/dist/vector/geometry/flatGpuVector.js.map +1 -0
  170. package/dist/vector/geometry/geometryType.d.ts +13 -0
  171. package/dist/vector/geometry/geometryType.js +19 -0
  172. package/dist/vector/geometry/geometryType.js.map +1 -0
  173. package/dist/vector/geometry/geometryVector.d.ts +37 -0
  174. package/dist/vector/geometry/geometryVector.js +73 -0
  175. package/dist/vector/geometry/geometryVector.js.map +1 -0
  176. package/dist/vector/geometry/geometryVectorConverter.d.ts +2 -0
  177. package/dist/vector/geometry/geometryVectorConverter.js +302 -0
  178. package/dist/vector/geometry/geometryVectorConverter.js.map +1 -0
  179. package/dist/vector/geometry/gpuVector.d.ts +21 -0
  180. package/dist/vector/geometry/gpuVector.js +38 -0
  181. package/dist/vector/geometry/gpuVector.js.map +1 -0
  182. package/dist/vector/geometry/point.d.ts +195 -0
  183. package/dist/vector/geometry/point.js +283 -0
  184. package/dist/vector/geometry/point.js.map +1 -0
  185. package/dist/vector/geometry/spaceFillingCurve.d.ts +22 -0
  186. package/dist/vector/geometry/spaceFillingCurve.js +26 -0
  187. package/dist/vector/geometry/spaceFillingCurve.js.map +1 -0
  188. package/dist/vector/geometry/topologyVector.d.ts +9 -0
  189. package/dist/vector/geometry/topologyVector.js +21 -0
  190. package/dist/vector/geometry/topologyVector.js.map +1 -0
  191. package/dist/vector/geometry/zOrderCurve.d.ts +17 -0
  192. package/dist/vector/geometry/zOrderCurve.js +44 -0
  193. package/dist/vector/geometry/zOrderCurve.js.map +1 -0
  194. package/dist/vector/intVector.d.ts +8 -0
  195. package/dist/vector/intVector.js +3 -0
  196. package/dist/vector/intVector.js.map +1 -0
  197. package/dist/vector/sequence/intSequenceVector.d.ts +18 -0
  198. package/dist/vector/sequence/intSequenceVector.js +72 -0
  199. package/dist/vector/sequence/intSequenceVector.js.map +1 -0
  200. package/dist/vector/sequence/longSequenceVector.d.ts +18 -0
  201. package/dist/vector/sequence/longSequenceVector.js +57 -0
  202. package/dist/vector/sequence/longSequenceVector.js.map +1 -0
  203. package/dist/vector/sequence/sequenceVector.d.ts +5 -0
  204. package/dist/vector/sequence/sequenceVector.js +15 -0
  205. package/dist/vector/sequence/sequenceVector.js.map +1 -0
  206. package/dist/vector/variableSizeVector.d.ts +6 -0
  207. package/dist/vector/variableSizeVector.js +16 -0
  208. package/dist/vector/variableSizeVector.js.map +1 -0
  209. package/dist/vector/vector.d.ts +30 -0
  210. package/dist/vector/vector.js +73 -0
  211. package/dist/vector/vector.js.map +1 -0
  212. package/dist/vector/vectorType.d.ts +7 -0
  213. package/dist/vector/vectorType.js +12 -0
  214. package/dist/vector/vectorType.js.map +1 -0
  215. package/package.json +81 -0
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StreamMetadata = void 0;
4
+ const physicalStreamType_1 = require("./physicalStreamType");
5
+ const logicalStreamType_1 = require("./logicalStreamType");
6
+ const logicalLevelTechnique_1 = require("./logicalLevelTechnique");
7
+ const physicalLevelTechnique_1 = require("./physicalLevelTechnique");
8
+ const dictionaryType_1 = require("./dictionaryType");
9
+ const offsetType_1 = require("./offsetType");
10
+ const lengthType_1 = require("./lengthType");
11
+ const integerDecodingUtils_1 = require("../../encodings/integerDecodingUtils");
12
+ class StreamMetadata {
13
+ constructor(_physicalStreamType, _logicalStreamType, _logicalLevelTechnique1, _logicalLevelTechnique2, _physicalLevelTechnique, _numValues, _byteLength) {
14
+ this._physicalStreamType = _physicalStreamType;
15
+ this._logicalStreamType = _logicalStreamType;
16
+ this._logicalLevelTechnique1 = _logicalLevelTechnique1;
17
+ this._logicalLevelTechnique2 = _logicalLevelTechnique2;
18
+ this._physicalLevelTechnique = _physicalLevelTechnique;
19
+ this._numValues = _numValues;
20
+ this._byteLength = _byteLength;
21
+ }
22
+ static decode(tile, offset) {
23
+ const stream_type = tile[offset.get()];
24
+ const physicalStreamType = Object.values(physicalStreamType_1.PhysicalStreamType)[stream_type >> 4];
25
+ let logicalStreamType = null;
26
+ switch (physicalStreamType) {
27
+ case physicalStreamType_1.PhysicalStreamType.DATA:
28
+ logicalStreamType = new logicalStreamType_1.LogicalStreamType(Object.values(dictionaryType_1.DictionaryType)[stream_type & 0xf]);
29
+ break;
30
+ case physicalStreamType_1.PhysicalStreamType.OFFSET:
31
+ logicalStreamType = new logicalStreamType_1.LogicalStreamType(null, Object.values(offsetType_1.OffsetType)[stream_type & 0xf]);
32
+ break;
33
+ case physicalStreamType_1.PhysicalStreamType.LENGTH:
34
+ logicalStreamType = new logicalStreamType_1.LogicalStreamType(null, null, Object.values(lengthType_1.LengthType)[stream_type & 0xf]);
35
+ break;
36
+ }
37
+ offset.increment();
38
+ const encodings_header = tile[offset.get()];
39
+ const llt1 = Object.values(logicalLevelTechnique_1.LogicalLevelTechnique)[encodings_header >> 5];
40
+ const llt2 = Object.values(logicalLevelTechnique_1.LogicalLevelTechnique)[encodings_header >> 2 & 0x7];
41
+ const plt = Object.values(physicalLevelTechnique_1.PhysicalLevelTechnique)[encodings_header & 0x3];
42
+ offset.increment();
43
+ const sizeInfo = (0, integerDecodingUtils_1.decodeVarintInt32)(tile, offset, 2);
44
+ const numValues = sizeInfo[0];
45
+ const byteLength = sizeInfo[1];
46
+ return new StreamMetadata(physicalStreamType, logicalStreamType, llt1, llt2, plt, numValues, byteLength);
47
+ }
48
+ get physicalStreamType() {
49
+ return this._physicalStreamType;
50
+ }
51
+ get logicalStreamType() {
52
+ return this._logicalStreamType;
53
+ }
54
+ get logicalLevelTechnique1() {
55
+ return this._logicalLevelTechnique1;
56
+ }
57
+ get logicalLevelTechnique2() {
58
+ return this._logicalLevelTechnique2;
59
+ }
60
+ get physicalLevelTechnique() {
61
+ return this._physicalLevelTechnique;
62
+ }
63
+ get numValues() {
64
+ return this._numValues;
65
+ }
66
+ get byteLength() {
67
+ return this._byteLength;
68
+ }
69
+ }
70
+ exports.StreamMetadata = StreamMetadata;
71
+ //# sourceMappingURL=streamMetadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streamMetadata.js","sourceRoot":"","sources":["../../../src/metadata/tile/streamMetadata.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { StreamMetadata } from './streamMetadata';
2
+ import IntWrapper from "../../encodings/intWrapper";
3
+ export declare class StreamMetadataDecoder {
4
+ static decode(tile: Uint8Array, offset: IntWrapper): StreamMetadata;
5
+ }
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StreamMetadataDecoder = void 0;
4
+ const streamMetadata_1 = require("./streamMetadata");
5
+ const logicalLevelTechnique_1 = require("./logicalLevelTechnique");
6
+ const physicalLevelTechnique_1 = require("./physicalLevelTechnique");
7
+ const mortonEncodedStreamMetadata_1 = require("./mortonEncodedStreamMetadata");
8
+ const rleEncodedStreamMetadata_1 = require("./rleEncodedStreamMetadata");
9
+ class StreamMetadataDecoder {
10
+ static decode(tile, offset) {
11
+ const streamMetadata = streamMetadata_1.StreamMetadata.decode(tile, offset);
12
+ if (streamMetadata.logicalLevelTechnique1 === logicalLevelTechnique_1.LogicalLevelTechnique.MORTON) {
13
+ return mortonEncodedStreamMetadata_1.MortonEncodedStreamMetadata.decodePartial(streamMetadata, tile, offset);
14
+ }
15
+ if ((logicalLevelTechnique_1.LogicalLevelTechnique.RLE === streamMetadata.logicalLevelTechnique1 ||
16
+ logicalLevelTechnique_1.LogicalLevelTechnique.RLE === streamMetadata.logicalLevelTechnique2)
17
+ && physicalLevelTechnique_1.PhysicalLevelTechnique.NONE !== streamMetadata.physicalLevelTechnique) {
18
+ return rleEncodedStreamMetadata_1.RleEncodedStreamMetadata.decodePartial(streamMetadata, tile, offset);
19
+ }
20
+ return streamMetadata;
21
+ }
22
+ }
23
+ exports.StreamMetadataDecoder = StreamMetadataDecoder;
24
+ //# sourceMappingURL=streamMetadataDecoder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streamMetadataDecoder.js","sourceRoot":"","sources":["../../../src/metadata/tile/streamMetadataDecoder.ts"],"names":[],"mappings":";;;AAAA,qDAAkD;AAClD,mEAAgE;AAChE,qEAAkE;AAClE,+EAA4E;AAC5E,yEAAsE;AAGtE,MAAa,qBAAqB;IACvB,MAAM,CAAC,MAAM,CAAC,IAAgB,EAAE,MAAkB;QACrD,MAAM,cAAc,GAAG,+BAAc,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC3D,IAAI,cAAc,CAAC,sBAAsB,KAAK,6CAAqB,CAAC,MAAM,EAAE,CAAC;YACzE,OAAO,yDAA2B,CAAC,aAAa,CAAC,cAAc,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QACnF,CAAC;QAED,IACI,CAAC,6CAAqB,CAAC,GAAG,KAAK,cAAc,CAAC,sBAAsB;YAChE,6CAAqB,CAAC,GAAG,KAAK,cAAc,CAAC,sBAAsB,CAAC;eACrE,+CAAsB,CAAC,IAAI,KAAK,cAAc,CAAC,sBAAsB,EAC1E,CAAC;YACC,OAAO,mDAAwB,CAAC,aAAa,CAAC,cAAc,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAChF,CAAC;QAED,OAAO,cAAc,CAAC;IAC1B,CAAC;CACJ;AAjBD,sDAiBC"}
@@ -0,0 +1,10 @@
1
+ import IntWrapper from "../../encodings/intWrapper";
2
+ import { TileSetMetadata } from "./tilesetMetadata.g";
3
+ /**
4
+ * Top-level decoder for embedded tileset metadata.
5
+ * Reads exactly ONE FeatureTableSchema from the stream.
6
+ *
7
+ * @param bytes The byte array containing the metadata
8
+ * @param offset The current offset in the byte array (will be advanced)
9
+ */
10
+ export declare function decodeEmbeddedTileSetMetadata(bytes: Uint8Array, offset: IntWrapper): [TileSetMetadata, number];
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.decodeEmbeddedTileSetMetadata = decodeEmbeddedTileSetMetadata;
4
+ const integerDecodingUtils_1 = require("../../encodings/integerDecodingUtils");
5
+ const tilesetMetadata_g_1 = require("./tilesetMetadata.g");
6
+ const typeMap_1 = require("./typeMap");
7
+ const textDecoder = new TextDecoder();
8
+ /**
9
+ * Decodes a length-prefixed UTF-8 string.
10
+ * Layout: [len: varint32][bytes: len]
11
+ */
12
+ function decodeString(src, offset) {
13
+ const length = (0, integerDecodingUtils_1.decodeVarintInt32)(src, offset, 1)[0];
14
+ if (length === 0) {
15
+ return "";
16
+ }
17
+ const start = offset.get();
18
+ const end = start + length;
19
+ const view = src.subarray(start, end);
20
+ offset.add(length);
21
+ return textDecoder.decode(view);
22
+ }
23
+ /**
24
+ * Decodes a Field used as part of complex types (STRUCT children).
25
+ * Unlike Column, Field still uses the fieldOptions bitfield for flexibility.
26
+ */
27
+ function decodeField(src, offset) {
28
+ const fieldOptions = (0, integerDecodingUtils_1.decodeVarintInt32)(src, offset, 1)[0] >>> 0;
29
+ const isLogical = (fieldOptions & 4 /* FieldOptions.logicalType */) !== 0;
30
+ const isComplex = (fieldOptions & 2 /* FieldOptions.complexType */) !== 0;
31
+ const typeValue = (0, integerDecodingUtils_1.decodeVarintInt32)(src, offset, 1)[0] >>> 0;
32
+ const field = new tilesetMetadata_g_1.Field();
33
+ if ((fieldOptions & 1 /* FieldOptions.nullable */) !== 0) {
34
+ field.nullable = true;
35
+ }
36
+ if (isComplex) {
37
+ const complex = new tilesetMetadata_g_1.ComplexField();
38
+ complex.type = isLogical
39
+ ? { case: "logicalType", value: typeValue }
40
+ : { case: "physicalType", value: typeValue };
41
+ if ((fieldOptions & 8 /* FieldOptions.hasChildren */) !== 0) {
42
+ const childCount = (0, integerDecodingUtils_1.decodeVarintInt32)(src, offset, 1)[0] >>> 0;
43
+ complex.children = new Array(childCount);
44
+ for (let i = 0; i < childCount; i++) {
45
+ complex.children[i] = decodeField(src, offset);
46
+ }
47
+ }
48
+ field.type = { case: "complexField", value: complex };
49
+ }
50
+ else {
51
+ const scalar = new tilesetMetadata_g_1.ScalarField();
52
+ scalar.type = isLogical
53
+ ? { case: "logicalType", value: typeValue }
54
+ : { case: "physicalType", value: typeValue };
55
+ field.type = { case: "scalarField", value: scalar };
56
+ }
57
+ return field;
58
+ }
59
+ /**
60
+ * The typeCode encodes the column type, nullable flag, and whether it has name/children.
61
+ */
62
+ function decodeColumn(src, offset) {
63
+ const typeCode = (0, integerDecodingUtils_1.decodeVarintInt32)(src, offset, 1)[0] >>> 0;
64
+ const column = typeMap_1.TypeMap.decodeColumnType(typeCode);
65
+ if (!column) {
66
+ throw new Error(`Unsupported column type code: ${typeCode}`);
67
+ }
68
+ if (typeMap_1.TypeMap.columnTypeHasName(typeCode)) {
69
+ column.name = decodeString(src, offset);
70
+ }
71
+ else {
72
+ // ID and GEOMETRY columns have implicit names
73
+ if (typeCode >= 0 && typeCode <= 3) {
74
+ column.name = "id";
75
+ }
76
+ else if (typeCode === 4) {
77
+ column.name = "geometry";
78
+ }
79
+ }
80
+ if (typeMap_1.TypeMap.columnTypeHasChildren(typeCode)) {
81
+ // Only STRUCT (typeCode 30) has children
82
+ const childCount = (0, integerDecodingUtils_1.decodeVarintInt32)(src, offset, 1)[0] >>> 0;
83
+ const complexCol = column.type.value;
84
+ complexCol.children = new Array(childCount);
85
+ for (let i = 0; i < childCount; i++) {
86
+ complexCol.children[i] = decodeField(src, offset);
87
+ }
88
+ }
89
+ return column;
90
+ }
91
+ /**
92
+ * Top-level decoder for embedded tileset metadata.
93
+ * Reads exactly ONE FeatureTableSchema from the stream.
94
+ *
95
+ * @param bytes The byte array containing the metadata
96
+ * @param offset The current offset in the byte array (will be advanced)
97
+ */
98
+ function decodeEmbeddedTileSetMetadata(bytes, offset) {
99
+ const meta = new tilesetMetadata_g_1.TileSetMetadata();
100
+ meta.featureTables = [];
101
+ const table = new tilesetMetadata_g_1.FeatureTableSchema();
102
+ table.name = decodeString(bytes, offset);
103
+ const extent = (0, integerDecodingUtils_1.decodeVarintInt32)(bytes, offset, 1)[0] >>> 0;
104
+ const columnCount = (0, integerDecodingUtils_1.decodeVarintInt32)(bytes, offset, 1)[0] >>> 0;
105
+ table.columns = new Array(columnCount);
106
+ for (let j = 0; j < columnCount; j++) {
107
+ table.columns[j] = decodeColumn(bytes, offset);
108
+ }
109
+ meta.featureTables.push(table);
110
+ return [meta, extent];
111
+ }
112
+ //# sourceMappingURL=embeddedTilesetMetadataDecoder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embeddedTilesetMetadataDecoder.js","sourceRoot":"","sources":["../../../src/metadata/tileset/embeddedTilesetMetadataDecoder.ts"],"names":[],"mappings":";;AA6HA,sEAiBC;AA7ID,+EAAyE;AACzE,2DAY6B;AAC7B,uCAAoC;AASpC,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC;;;GAGG;AACH,SAAS,YAAY,CAAC,GAAe,EAAE,MAAkB;IACrD,MAAM,MAAM,GAAG,IAAA,wCAAiB,EAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;QACf,OAAO,EAAE,CAAC;IACd,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC;IAC3B,MAAM,GAAG,GAAG,KAAK,GAAG,MAAM,CAAC;IAC3B,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACtC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACnB,OAAO,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACpC,CAAC;AAED;;;GAGG;AACH,SAAS,WAAW,CAAC,GAAe,EAAE,MAAkB;IACpD,MAAM,YAAY,GAAG,IAAA,wCAAiB,EAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,CAAC,YAAY,mCAA2B,CAAC,KAAK,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,CAAC,YAAY,mCAA2B,CAAC,KAAK,CAAC,CAAC;IAElE,MAAM,SAAS,GAAG,IAAA,wCAAiB,EAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAE7D,MAAM,KAAK,GAAG,IAAI,yBAAK,EAAE,CAAC;IAC1B,IAAI,CAAC,YAAY,gCAAwB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,IAAI,SAAS,EAAE,CAAC;QACZ,MAAM,OAAO,GAAG,IAAI,gCAAY,EAAE,CAAC;QACnC,OAAO,CAAC,IAAI,GAAG,SAAS;YACpB,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,SAA0C,EAAE;YAC5E,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,SAAmC,EAAE,CAAC;QAE3E,IAAI,CAAC,YAAY,mCAA2B,CAAC,KAAK,CAAC,EAAE,CAAC;YAClD,MAAM,UAAU,GAAG,IAAA,wCAAiB,EAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAC9D,OAAO,CAAC,QAAQ,GAAG,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;gBAClC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YACnD,CAAC;QACL,CAAC;QACD,KAAK,CAAC,IAAI,GAAG,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IAC1D,CAAC;SAAM,CAAC;QACJ,MAAM,MAAM,GAAG,IAAI,+BAAW,EAAE,CAAC;QACjC,MAAM,CAAC,IAAI,GAAG,SAAS;YACnB,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,SAAyC,EAAE;YAC3E,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,SAAkC,EAAE,CAAC;QAC1E,KAAK,CAAC,IAAI,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IACxD,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,GAAe,EAAE,MAAkB;IACrD,MAAM,QAAQ,GAAG,IAAA,wCAAiB,EAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,iBAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAElD,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,iBAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtC,MAAM,CAAC,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC5C,CAAC;SAAM,CAAC;QACJ,8CAA8C;QAC9C,IAAI,QAAQ,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;YACjC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;QACvB,CAAC;aAAM,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC;QAC7B,CAAC;IACL,CAAC;IAED,IAAI,iBAAO,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1C,yCAAyC;QACzC,MAAM,UAAU,GAAG,IAAA,wCAAiB,EAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC9D,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAsB,CAAC;QACtD,UAAU,CAAC,QAAQ,GAAG,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;YAClC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACtD,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,6BAA6B,CAAC,KAAiB,EAAE,MAAkB;IAC/E,MAAM,IAAI,GAAG,IAAI,mCAAe,EAAE,CAAC;IACnC,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;IAExB,MAAM,KAAK,GAAG,IAAI,sCAAkB,EAAE,CAAC;IACvC,KAAK,CAAC,IAAI,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,IAAA,wCAAiB,EAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAE5D,MAAM,WAAW,GAAG,IAAA,wCAAiB,EAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACjE,KAAK,CAAC,OAAO,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;IACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAE/B,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC1B,CAAC"}
@@ -0,0 +1,418 @@
1
+ import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage } from "@bufbuild/protobuf";
2
+ import { Message, proto3 } from "@bufbuild/protobuf";
3
+ /**
4
+ * @generated from enum mlt.ColumnScope
5
+ */
6
+ export declare enum ColumnScope {
7
+ /**
8
+ * 1:1 Mapping of property and feature -> id and geometry
9
+ *
10
+ * @generated from enum value: FEATURE = 0;
11
+ */
12
+ FEATURE = 0,
13
+ /**
14
+ * For M-Values -> 1:1 Mapping for property and vertex
15
+ *
16
+ * @generated from enum value: VERTEX = 1;
17
+ */
18
+ VERTEX = 1
19
+ }
20
+ /**
21
+ * @generated from enum mlt.ScalarType
22
+ */
23
+ export declare enum ScalarType {
24
+ /**
25
+ * @generated from enum value: BOOLEAN = 0;
26
+ */
27
+ BOOLEAN = 0,
28
+ /**
29
+ * @generated from enum value: INT_8 = 1;
30
+ */
31
+ INT_8 = 1,
32
+ /**
33
+ * @generated from enum value: UINT_8 = 2;
34
+ */
35
+ UINT_8 = 2,
36
+ /**
37
+ * @generated from enum value: INT_32 = 3;
38
+ */
39
+ INT_32 = 3,
40
+ /**
41
+ * @generated from enum value: UINT_32 = 4;
42
+ */
43
+ UINT_32 = 4,
44
+ /**
45
+ * @generated from enum value: INT_64 = 5;
46
+ */
47
+ INT_64 = 5,
48
+ /**
49
+ * @generated from enum value: UINT_64 = 6;
50
+ */
51
+ UINT_64 = 6,
52
+ /**
53
+ * @generated from enum value: FLOAT = 7;
54
+ */
55
+ FLOAT = 7,
56
+ /**
57
+ * @generated from enum value: DOUBLE = 8;
58
+ */
59
+ DOUBLE = 8,
60
+ /**
61
+ * @generated from enum value: STRING = 9;
62
+ */
63
+ STRING = 9
64
+ }
65
+ /**
66
+ * @generated from enum mlt.ComplexType
67
+ */
68
+ export declare enum ComplexType {
69
+ /**
70
+ * @generated from enum value: GEOMETRY = 0;
71
+ */
72
+ GEOMETRY = 0,
73
+ /**
74
+ * @generated from enum value: STRUCT = 1;
75
+ */
76
+ STRUCT = 1
77
+ }
78
+ /**
79
+ * @generated from enum mlt.LogicalScalarType
80
+ */
81
+ export declare enum LogicalScalarType {
82
+ /**
83
+ * @generated from enum value: ID = 0;
84
+ */
85
+ ID = 0
86
+ }
87
+ /**
88
+ * @generated from enum mlt.LogicalComplexType
89
+ */
90
+ export declare enum LogicalComplexType {
91
+ /**
92
+ * physical type: list<UInt8>
93
+ *
94
+ * @generated from enum value: BINARY = 0;
95
+ */
96
+ BINARY = 0,
97
+ /**
98
+ * physical type: map<vec2<double, T>> -> special data structure which can be used for a efficient representation of linear referencing
99
+ *
100
+ * @generated from enum value: RANGE_MAP = 1;
101
+ */
102
+ RANGE_MAP = 1
103
+ }
104
+ /**
105
+ * @generated from message mlt.TileSetMetadata
106
+ */
107
+ export declare class TileSetMetadata extends Message<TileSetMetadata> {
108
+ /**
109
+ * @generated from field: int32 version = 1;
110
+ */
111
+ version: number;
112
+ /**
113
+ * @generated from field: repeated mlt.FeatureTableSchema featureTables = 2;
114
+ */
115
+ featureTables: FeatureTableSchema[];
116
+ /**
117
+ * @generated from field: optional string name = 3;
118
+ */
119
+ name?: string;
120
+ /**
121
+ * @generated from field: optional string description = 4;
122
+ */
123
+ description?: string;
124
+ /**
125
+ * @generated from field: optional string attribution = 5;
126
+ */
127
+ attribution?: string;
128
+ /**
129
+ * @generated from field: optional int32 minZoom = 6;
130
+ */
131
+ minZoom?: number;
132
+ /**
133
+ * @generated from field: optional int32 maxZoom = 7;
134
+ */
135
+ maxZoom?: number;
136
+ /**
137
+ * order left, bottom, right, top in WGS84
138
+ *
139
+ * @generated from field: repeated double bounds = 8;
140
+ */
141
+ bounds: number[];
142
+ /**
143
+ * order longitude, latitude in WGS84
144
+ *
145
+ * @generated from field: repeated double center = 9;
146
+ */
147
+ center: number[];
148
+ constructor(data?: PartialMessage<TileSetMetadata>);
149
+ static readonly runtime: typeof proto3;
150
+ static readonly typeName = "mlt.TileSetMetadata";
151
+ static readonly fields: FieldList;
152
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): TileSetMetadata;
153
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): TileSetMetadata;
154
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): TileSetMetadata;
155
+ static equals(a: TileSetMetadata | PlainMessage<TileSetMetadata> | undefined, b: TileSetMetadata | PlainMessage<TileSetMetadata> | undefined): boolean;
156
+ }
157
+ /**
158
+ * @generated from message mlt.FeatureTableSchema
159
+ */
160
+ export declare class FeatureTableSchema extends Message<FeatureTableSchema> {
161
+ /**
162
+ * @generated from field: string name = 1;
163
+ */
164
+ name: string;
165
+ /**
166
+ * @generated from field: repeated mlt.Column columns = 2;
167
+ */
168
+ columns: Column[];
169
+ constructor(data?: PartialMessage<FeatureTableSchema>);
170
+ static readonly runtime: typeof proto3;
171
+ static readonly typeName = "mlt.FeatureTableSchema";
172
+ static readonly fields: FieldList;
173
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): FeatureTableSchema;
174
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): FeatureTableSchema;
175
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): FeatureTableSchema;
176
+ static equals(a: FeatureTableSchema | PlainMessage<FeatureTableSchema> | undefined, b: FeatureTableSchema | PlainMessage<FeatureTableSchema> | undefined): boolean;
177
+ }
178
+ /**
179
+ * Column are top-level types in the schema
180
+ *
181
+ * @generated from message mlt.Column
182
+ */
183
+ export declare class Column extends Message<Column> {
184
+ /**
185
+ * @generated from field: string name = 1;
186
+ */
187
+ name: string;
188
+ /**
189
+ * specifies if the values are optional in the column and a present stream should be used
190
+ *
191
+ * @generated from field: bool nullable = 2;
192
+ */
193
+ nullable: boolean;
194
+ /**
195
+ * @generated from field: mlt.ColumnScope columnScope = 3;
196
+ */
197
+ columnScope: ColumnScope;
198
+ /**
199
+ * @generated from oneof mlt.Column.type
200
+ */
201
+ type: {
202
+ /**
203
+ * @generated from field: mlt.ScalarColumn scalarType = 4;
204
+ */
205
+ value: ScalarColumn;
206
+ case: "scalarType";
207
+ } | {
208
+ /**
209
+ * @generated from field: mlt.ComplexColumn complexType = 5;
210
+ */
211
+ value: ComplexColumn;
212
+ case: "complexType";
213
+ } | {
214
+ case: undefined;
215
+ value?: undefined;
216
+ };
217
+ constructor(data?: PartialMessage<Column>);
218
+ static readonly runtime: typeof proto3;
219
+ static readonly typeName = "mlt.Column";
220
+ static readonly fields: FieldList;
221
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): Column;
222
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): Column;
223
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): Column;
224
+ static equals(a: Column | PlainMessage<Column> | undefined, b: Column | PlainMessage<Column> | undefined): boolean;
225
+ }
226
+ /**
227
+ * @generated from message mlt.ScalarColumn
228
+ */
229
+ export declare class ScalarColumn extends Message<ScalarColumn> {
230
+ /**
231
+ * this belongs elsewhere, but is here for now
232
+ *
233
+ * @generated from field: bool longID = 1;
234
+ */
235
+ longID: boolean;
236
+ /**
237
+ * @generated from oneof mlt.ScalarColumn.type
238
+ */
239
+ type: {
240
+ /**
241
+ * @generated from field: mlt.ScalarType physicalType = 4;
242
+ */
243
+ value: ScalarType;
244
+ case: "physicalType";
245
+ } | {
246
+ /**
247
+ * @generated from field: mlt.LogicalScalarType logicalType = 5;
248
+ */
249
+ value: LogicalScalarType;
250
+ case: "logicalType";
251
+ } | {
252
+ case: undefined;
253
+ value?: undefined;
254
+ };
255
+ constructor(data?: PartialMessage<ScalarColumn>);
256
+ static readonly runtime: typeof proto3;
257
+ static readonly typeName = "mlt.ScalarColumn";
258
+ static readonly fields: FieldList;
259
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ScalarColumn;
260
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ScalarColumn;
261
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ScalarColumn;
262
+ static equals(a: ScalarColumn | PlainMessage<ScalarColumn> | undefined, b: ScalarColumn | PlainMessage<ScalarColumn> | undefined): boolean;
263
+ }
264
+ /**
265
+ * The type tree is flattened in to a list via a pre-order traversal
266
+ * Represents a column if it is a root (top-level) type or a child of a nested type
267
+ *
268
+ * @generated from message mlt.ComplexColumn
269
+ */
270
+ export declare class ComplexColumn extends Message<ComplexColumn> {
271
+ /**
272
+ * @generated from oneof mlt.ComplexColumn.type
273
+ */
274
+ type: {
275
+ /**
276
+ * @generated from field: mlt.ComplexType physicalType = 4;
277
+ */
278
+ value: ComplexType;
279
+ case: "physicalType";
280
+ } | {
281
+ /**
282
+ * @generated from field: mlt.LogicalComplexType logicalType = 5;
283
+ */
284
+ value: LogicalComplexType;
285
+ case: "logicalType";
286
+ } | {
287
+ case: undefined;
288
+ value?: undefined;
289
+ };
290
+ /**
291
+ * The complex type Geometry and the logical type BINARY have no children since there layout is implicit known.
292
+ * RangeMap has only one child specifying the type of the value since the key is always a vec2<double>.
293
+ *
294
+ * @generated from field: repeated mlt.Field children = 6;
295
+ */
296
+ children: Field[];
297
+ constructor(data?: PartialMessage<ComplexColumn>);
298
+ static readonly runtime: typeof proto3;
299
+ static readonly typeName = "mlt.ComplexColumn";
300
+ static readonly fields: FieldList;
301
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ComplexColumn;
302
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ComplexColumn;
303
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ComplexColumn;
304
+ static equals(a: ComplexColumn | PlainMessage<ComplexColumn> | undefined, b: ComplexColumn | PlainMessage<ComplexColumn> | undefined): boolean;
305
+ }
306
+ /**
307
+ * Fields define nested or leaf types in the schema as part of a complex type definition
308
+ *
309
+ * @generated from message mlt.Field
310
+ */
311
+ export declare class Field extends Message<Field> {
312
+ /**
313
+ * name and nullable are only needed in combination with a struct not for vec, list and map
314
+ * Map -> has the order key type, value type
315
+ *
316
+ * @generated from field: optional string name = 1;
317
+ */
318
+ name?: string;
319
+ /**
320
+ * @generated from field: optional bool nullable = 2;
321
+ */
322
+ nullable?: boolean;
323
+ /**
324
+ * @generated from oneof mlt.Field.type
325
+ */
326
+ type: {
327
+ /**
328
+ * @generated from field: mlt.ScalarField scalarField = 3;
329
+ */
330
+ value: ScalarField;
331
+ case: "scalarField";
332
+ } | {
333
+ /**
334
+ * @generated from field: mlt.ComplexField complexField = 4;
335
+ */
336
+ value: ComplexField;
337
+ case: "complexField";
338
+ } | {
339
+ case: undefined;
340
+ value?: undefined;
341
+ };
342
+ constructor(data?: PartialMessage<Field>);
343
+ static readonly runtime: typeof proto3;
344
+ static readonly typeName = "mlt.Field";
345
+ static readonly fields: FieldList;
346
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): Field;
347
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): Field;
348
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): Field;
349
+ static equals(a: Field | PlainMessage<Field> | undefined, b: Field | PlainMessage<Field> | undefined): boolean;
350
+ }
351
+ /**
352
+ * @generated from message mlt.ScalarField
353
+ */
354
+ export declare class ScalarField extends Message<ScalarField> {
355
+ /**
356
+ * @generated from oneof mlt.ScalarField.type
357
+ */
358
+ type: {
359
+ /**
360
+ * @generated from field: mlt.ScalarType physicalType = 1;
361
+ */
362
+ value: ScalarType;
363
+ case: "physicalType";
364
+ } | {
365
+ /**
366
+ * @generated from field: mlt.LogicalScalarType logicalType = 2;
367
+ */
368
+ value: LogicalScalarType;
369
+ case: "logicalType";
370
+ } | {
371
+ case: undefined;
372
+ value?: undefined;
373
+ };
374
+ constructor(data?: PartialMessage<ScalarField>);
375
+ static readonly runtime: typeof proto3;
376
+ static readonly typeName = "mlt.ScalarField";
377
+ static readonly fields: FieldList;
378
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ScalarField;
379
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ScalarField;
380
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ScalarField;
381
+ static equals(a: ScalarField | PlainMessage<ScalarField> | undefined, b: ScalarField | PlainMessage<ScalarField> | undefined): boolean;
382
+ }
383
+ /**
384
+ * @generated from message mlt.ComplexField
385
+ */
386
+ export declare class ComplexField extends Message<ComplexField> {
387
+ /**
388
+ * @generated from oneof mlt.ComplexField.type
389
+ */
390
+ type: {
391
+ /**
392
+ * @generated from field: mlt.ComplexType physicalType = 1;
393
+ */
394
+ value: ComplexType;
395
+ case: "physicalType";
396
+ } | {
397
+ /**
398
+ * @generated from field: mlt.LogicalComplexType logicalType = 2;
399
+ */
400
+ value: LogicalComplexType;
401
+ case: "logicalType";
402
+ } | {
403
+ case: undefined;
404
+ value?: undefined;
405
+ };
406
+ /**
407
+ * @generated from field: repeated mlt.Field children = 3;
408
+ */
409
+ children: Field[];
410
+ constructor(data?: PartialMessage<ComplexField>);
411
+ static readonly runtime: typeof proto3;
412
+ static readonly typeName = "mlt.ComplexField";
413
+ static readonly fields: FieldList;
414
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ComplexField;
415
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ComplexField;
416
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ComplexField;
417
+ static equals(a: ComplexField | PlainMessage<ComplexField> | undefined, b: ComplexField | PlainMessage<ComplexField> | undefined): boolean;
418
+ }