@walkthru-earth/objex 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/LICENSE +5 -0
  2. package/README.md +20 -12
  3. package/dist/components/browser/FileTreeSidebar.svelte +32 -17
  4. package/dist/components/layout/AboutSheet.svelte +5 -2
  5. package/dist/components/layout/ConnectionDialog.svelte +1 -1
  6. package/dist/components/layout/SettingsSheet.svelte +237 -0
  7. package/dist/components/layout/SettingsSheet.svelte.d.ts +6 -0
  8. package/dist/components/layout/Sidebar.svelte +73 -6
  9. package/dist/components/layout/Sidebar.svelte.d.ts +4 -1
  10. package/dist/components/layout/StatusBar.svelte +1 -1
  11. package/dist/components/layout/TabBar.svelte +2 -2
  12. package/dist/components/ui/context-menu/context-menu-radio-group.svelte.d.ts +1 -1
  13. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-group.svelte.d.ts +1 -1
  14. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte.d.ts +1 -1
  15. package/dist/components/ui/input/input.svelte.d.ts +1 -1
  16. package/dist/components/ui/resizable/index.d.ts +1 -1
  17. package/dist/components/ui/resizable/index.js +2 -2
  18. package/dist/components/ui/slider/index.d.ts +3 -0
  19. package/dist/components/ui/slider/index.js +5 -0
  20. package/dist/components/ui/slider/range-slider.svelte +94 -0
  21. package/dist/components/ui/slider/range-slider.svelte.d.ts +21 -0
  22. package/dist/components/ui/slider/slider.svelte +83 -0
  23. package/dist/components/ui/slider/slider.svelte.d.ts +7 -0
  24. package/dist/components/viewers/ArchiveViewer.svelte +2 -2
  25. package/dist/components/viewers/CodeViewer.svelte +31 -22
  26. package/dist/components/viewers/CogControls.svelte +338 -184
  27. package/dist/components/viewers/CogControls.svelte.d.ts +33 -10
  28. package/dist/components/viewers/CogViewer.svelte +320 -119
  29. package/dist/components/viewers/CopcViewer.svelte +1 -1
  30. package/dist/components/viewers/FlatGeobufViewer.svelte +1 -1
  31. package/dist/components/viewers/GeoParquetMapViewer.svelte +6 -6
  32. package/dist/components/viewers/GeoParquetMapViewer.svelte.d.ts +1 -1
  33. package/dist/components/viewers/ImageViewer.svelte +2 -2
  34. package/dist/components/viewers/MarkdownViewer.svelte +12 -9
  35. package/dist/components/viewers/MediaViewer.svelte +2 -2
  36. package/dist/components/viewers/ModelViewer.svelte +1 -1
  37. package/dist/components/viewers/MultiCogViewer.svelte +467 -102
  38. package/dist/components/viewers/MultiCogViewer.svelte.d.ts +1 -1
  39. package/dist/components/viewers/NotebookViewer.svelte +6 -3
  40. package/dist/components/viewers/PdfViewer.svelte +2 -2
  41. package/dist/components/viewers/PmtilesViewer.svelte +3 -6
  42. package/dist/components/viewers/RawViewer.svelte +6 -3
  43. package/dist/components/viewers/StacMapViewer.svelte +10 -2
  44. package/dist/components/viewers/StacMosaicViewer.svelte +1800 -362
  45. package/dist/components/viewers/StacMosaicViewer.svelte.d.ts +1 -1
  46. package/dist/components/viewers/StacTabViewer.svelte +24 -13
  47. package/dist/components/viewers/StacTabViewer.svelte.d.ts +1 -1
  48. package/dist/components/viewers/TableGrid.svelte +4 -4
  49. package/dist/components/viewers/TableStatusBar.svelte +1 -1
  50. package/dist/components/viewers/TableToolbar.svelte +1 -1
  51. package/dist/components/viewers/TableViewer.svelte +25 -17
  52. package/dist/components/viewers/TableViewer.svelte.d.ts +1 -0
  53. package/dist/components/viewers/ViewerRouter.svelte +16 -8
  54. package/dist/components/viewers/ZarrMapViewer.svelte +11 -9
  55. package/dist/components/viewers/ZarrViewer.svelte +4 -4
  56. package/dist/components/viewers/cog/ChannelPicker.svelte +83 -0
  57. package/dist/components/viewers/cog/ChannelPicker.svelte.d.ts +13 -0
  58. package/dist/components/viewers/cog/PixelInspectorPanel.svelte +87 -0
  59. package/dist/components/viewers/cog/PixelInspectorPanel.svelte.d.ts +17 -0
  60. package/dist/components/viewers/cog/buildRgbLayer.d.ts +78 -0
  61. package/dist/components/viewers/cog/buildRgbLayer.js +176 -0
  62. package/dist/components/viewers/map/AttributeTable.svelte +1 -1
  63. package/dist/components/viewers/map/MapContainer.svelte +37 -11
  64. package/dist/components/viewers/pmtiles/PmtilesArchiveView.svelte +1 -1
  65. package/dist/components/viewers/pmtiles/PmtilesTileInspector.svelte +1 -1
  66. package/dist/components/viewers/stac/StacDatetimeBar.svelte +175 -0
  67. package/dist/components/viewers/stac/StacDatetimeBar.svelte.d.ts +10 -0
  68. package/dist/components/viewers/stac/StacFilterPanel.svelte +243 -0
  69. package/dist/components/viewers/stac/StacFilterPanel.svelte.d.ts +14 -0
  70. package/dist/components/viewers/stac/StacItemInspector.svelte +223 -0
  71. package/dist/components/viewers/stac/StacItemInspector.svelte.d.ts +10 -0
  72. package/dist/components/viewers/stac/StacItemStrip.svelte +228 -0
  73. package/dist/components/viewers/stac/StacItemStrip.svelte.d.ts +12 -0
  74. package/dist/file-icons/index.d.ts +1 -1
  75. package/dist/file-icons/index.js +1 -1
  76. package/dist/i18n/ar.js +110 -2
  77. package/dist/i18n/en.js +110 -2
  78. package/dist/index.d.ts +2 -28
  79. package/dist/index.js +7 -23
  80. package/dist/query/engine.d.ts +10 -0
  81. package/dist/query/source.js +1 -1
  82. package/dist/query/stac-source-factory.d.ts +65 -0
  83. package/dist/query/stac-source-factory.js +77 -0
  84. package/dist/query/stac-source-parquet.d.ts +135 -0
  85. package/dist/query/stac-source-parquet.js +465 -0
  86. package/dist/query/wasm.d.ts +8 -0
  87. package/dist/query/wasm.js +304 -2
  88. package/dist/storage/presign.js +1 -1
  89. package/dist/storage/providers.js +5 -5
  90. package/dist/stores/config.svelte.d.ts +15 -0
  91. package/dist/stores/config.svelte.js +46 -0
  92. package/dist/stores/connections.svelte.d.ts +2 -2
  93. package/dist/stores/connections.svelte.js +1 -2
  94. package/dist/stores/files.svelte.d.ts +1 -1
  95. package/dist/stores/files.svelte.js +1 -1
  96. package/dist/stores/query-history.svelte.js +1 -1
  97. package/dist/stores/settings.svelte.d.ts +16 -1
  98. package/dist/stores/settings.svelte.js +104 -48
  99. package/dist/stores/tabs.svelte.d.ts +3 -0
  100. package/dist/stores/tabs.svelte.js +17 -0
  101. package/dist/utils/cog-histogram.d.ts +121 -0
  102. package/dist/utils/cog-histogram.js +424 -0
  103. package/dist/utils/cog.d.ts +200 -60
  104. package/dist/utils/cog.js +377 -114
  105. package/dist/utils/colormap-sprite.d.ts +0 -9
  106. package/dist/utils/colormap-sprite.js +0 -21
  107. package/dist/utils/deck.d.ts +16 -12
  108. package/dist/utils/deck.js +10 -4
  109. package/dist/utils/pmtiles-tile.js +2 -2
  110. package/dist/utils/{url.d.ts → signed-url.d.ts} +15 -1
  111. package/dist/utils/{url.js → signed-url.js} +32 -10
  112. package/dist/utils/url-state.d.ts +36 -0
  113. package/dist/utils/url-state.js +72 -2
  114. package/dist/utils/zarr-tab.d.ts +1 -2
  115. package/dist/utils/zarr-tab.js +1 -2
  116. package/dist/utils/zarr.d.ts +0 -17
  117. package/dist/utils/zarr.js +1 -45
  118. package/package.json +55 -84
  119. package/dist/components/browser/Breadcrumb.svelte +0 -50
  120. package/dist/components/browser/Breadcrumb.svelte.d.ts +0 -7
  121. package/dist/components/browser/CreateFolderDialog.svelte +0 -98
  122. package/dist/components/browser/CreateFolderDialog.svelte.d.ts +0 -6
  123. package/dist/components/browser/DeleteConfirmDialog.svelte +0 -90
  124. package/dist/components/browser/DeleteConfirmDialog.svelte.d.ts +0 -8
  125. package/dist/components/browser/DropZone.svelte +0 -83
  126. package/dist/components/browser/DropZone.svelte.d.ts +0 -7
  127. package/dist/components/browser/FileBrowser.svelte +0 -252
  128. package/dist/components/browser/FileBrowser.svelte.d.ts +0 -3
  129. package/dist/components/browser/FileRow.svelte +0 -117
  130. package/dist/components/browser/FileRow.svelte.d.ts +0 -9
  131. package/dist/components/browser/RenameDialog.svelte +0 -101
  132. package/dist/components/browser/RenameDialog.svelte.d.ts +0 -8
  133. package/dist/components/browser/SearchBar.svelte +0 -40
  134. package/dist/components/browser/SearchBar.svelte.d.ts +0 -6
  135. package/dist/components/browser/UploadButton.svelte +0 -65
  136. package/dist/components/browser/UploadButton.svelte.d.ts +0 -3
  137. package/dist/query/stac-geoparquet.d.ts +0 -31
  138. package/dist/query/stac-geoparquet.js +0 -136
  139. package/dist/utils/clipboard.d.ts +0 -13
  140. package/dist/utils/clipboard.js +0 -38
  141. package/dist/utils/cloud-url.d.ts +0 -27
  142. package/dist/utils/cloud-url.js +0 -61
  143. package/dist/utils/column-types.d.ts +0 -5
  144. package/dist/utils/column-types.js +0 -137
  145. package/dist/utils/connection-identity.d.ts +0 -51
  146. package/dist/utils/connection-identity.js +0 -97
  147. package/dist/utils/error.d.ts +0 -8
  148. package/dist/utils/error.js +0 -12
  149. package/dist/utils/evidence-context.d.ts +0 -22
  150. package/dist/utils/evidence-context.js +0 -56
  151. package/dist/utils/export.d.ts +0 -22
  152. package/dist/utils/export.js +0 -76
  153. package/dist/utils/file-sort.d.ts +0 -20
  154. package/dist/utils/file-sort.js +0 -41
  155. package/dist/utils/format.d.ts +0 -24
  156. package/dist/utils/format.js +0 -78
  157. package/dist/utils/geoarrow.d.ts +0 -32
  158. package/dist/utils/geoarrow.js +0 -672
  159. package/dist/utils/geometry-type.d.ts +0 -52
  160. package/dist/utils/geometry-type.js +0 -76
  161. package/dist/utils/hex.d.ts +0 -10
  162. package/dist/utils/hex.js +0 -27
  163. package/dist/utils/host-detection.d.ts +0 -23
  164. package/dist/utils/host-detection.js +0 -95
  165. package/dist/utils/local-storage.d.ts +0 -16
  166. package/dist/utils/local-storage.js +0 -37
  167. package/dist/utils/markdown-sql.d.ts +0 -30
  168. package/dist/utils/markdown-sql.js +0 -72
  169. package/dist/utils/notebook.d.ts +0 -59
  170. package/dist/utils/notebook.js +0 -211
  171. package/dist/utils/parquet-metadata.d.ts +0 -64
  172. package/dist/utils/parquet-metadata.js +0 -262
  173. package/dist/utils/stac-geoparquet.d.ts +0 -90
  174. package/dist/utils/stac-geoparquet.js +0 -223
  175. package/dist/utils/stac-hydrate.d.ts +0 -38
  176. package/dist/utils/stac-hydrate.js +0 -243
  177. package/dist/utils/stac.d.ts +0 -136
  178. package/dist/utils/stac.js +0 -176
  179. package/dist/utils/storage-url.d.ts +0 -90
  180. package/dist/utils/storage-url.js +0 -568
  181. package/dist/utils/wkb.d.ts +0 -43
  182. package/dist/utils/wkb.js +0 -359
@@ -1,22 +0,0 @@
1
- /**
2
- * Escape a CSV field value per RFC 4180.
3
- */
4
- export declare function escapeCsvField(value: string): string;
5
- /**
6
- * Serialize column/row data to a CSV string.
7
- * Pure function — no browser APIs, works in Node.js.
8
- */
9
- export declare function serializeToCsv(columns: string[], rows: Record<string, unknown>[]): string;
10
- /**
11
- * Serialize column/row data to a formatted JSON string.
12
- * Pure function — no browser APIs, works in Node.js.
13
- */
14
- export declare function serializeToJson(columns: string[], rows: Record<string, unknown>[]): string;
15
- /**
16
- * Export data as CSV file (triggers browser download).
17
- */
18
- export declare function exportToCsv(columns: string[], rows: Record<string, unknown>[], filename: string): void;
19
- /**
20
- * Export data as JSON file (triggers browser download).
21
- */
22
- export declare function exportToJson(columns: string[], rows: Record<string, unknown>[], filename: string): void;
@@ -1,76 +0,0 @@
1
- import { jsonReplacerBigInt } from './format.js';
2
- function triggerDownload(content, filename, mimeType) {
3
- const blob = new Blob([content], { type: mimeType });
4
- const url = URL.createObjectURL(blob);
5
- const a = document.createElement('a');
6
- a.href = url;
7
- a.download = filename;
8
- document.body.appendChild(a);
9
- a.click();
10
- document.body.removeChild(a);
11
- URL.revokeObjectURL(url);
12
- }
13
- /** Format a cell value for export (empty string for null/undefined). */
14
- function formatCellValue(value) {
15
- if (value === null || value === undefined)
16
- return '';
17
- if (value instanceof Date)
18
- return value.toISOString();
19
- if (typeof value === 'bigint')
20
- return value.toString();
21
- if (typeof value === 'object')
22
- return JSON.stringify(value, jsonReplacerBigInt);
23
- return String(value);
24
- }
25
- /**
26
- * Escape a CSV field value per RFC 4180.
27
- */
28
- export function escapeCsvField(value) {
29
- if (value.includes(',') || value.includes('"') || value.includes('\n') || value.includes('\r')) {
30
- return `"${value.replace(/"/g, '""')}"`;
31
- }
32
- return value;
33
- }
34
- /**
35
- * Serialize column/row data to a CSV string.
36
- * Pure function — no browser APIs, works in Node.js.
37
- */
38
- export function serializeToCsv(columns, rows) {
39
- const header = columns.map(escapeCsvField).join(',');
40
- const body = rows
41
- .map((row) => columns.map((col) => escapeCsvField(formatCellValue(row[col]))).join(','))
42
- .join('\n');
43
- return `${header}\n${body}`;
44
- }
45
- /**
46
- * Serialize column/row data to a formatted JSON string.
47
- * Pure function — no browser APIs, works in Node.js.
48
- */
49
- export function serializeToJson(columns, rows) {
50
- const data = rows.map((row) => {
51
- const obj = {};
52
- for (const col of columns) {
53
- const val = row[col];
54
- if (val instanceof Date) {
55
- obj[col] = val.toISOString();
56
- }
57
- else {
58
- obj[col] = val ?? null;
59
- }
60
- }
61
- return obj;
62
- });
63
- return JSON.stringify(data, jsonReplacerBigInt, 2);
64
- }
65
- /**
66
- * Export data as CSV file (triggers browser download).
67
- */
68
- export function exportToCsv(columns, rows, filename) {
69
- triggerDownload(serializeToCsv(columns, rows), filename.endsWith('.csv') ? filename : `${filename}.csv`, 'text/csv;charset=utf-8;');
70
- }
71
- /**
72
- * Export data as JSON file (triggers browser download).
73
- */
74
- export function exportToJson(columns, rows, filename) {
75
- triggerDownload(serializeToJson(columns, rows), filename.endsWith('.json') ? filename : `${filename}.json`, 'application/json');
76
- }
@@ -1,20 +0,0 @@
1
- /**
2
- * Pure file entry sorting — framework-agnostic, works in Node.js.
3
- */
4
- import type { FileEntry } from '../types.js';
5
- export type SortField = 'name' | 'size' | 'modified' | 'extension';
6
- export type SortDirection = 'asc' | 'desc';
7
- export interface SortConfig {
8
- field: SortField;
9
- direction: SortDirection;
10
- }
11
- /**
12
- * Sort file entries by the given config.
13
- * Directories always sort before files regardless of sort field.
14
- * Returns a new array (does not mutate the input).
15
- */
16
- export declare function sortFileEntries(entries: FileEntry[], config: SortConfig): FileEntry[];
17
- /**
18
- * Toggle sort config: same field flips direction, new field starts ascending.
19
- */
20
- export declare function toggleSortField(current: SortConfig, field: SortField): SortConfig;
@@ -1,41 +0,0 @@
1
- /**
2
- * Pure file entry sorting — framework-agnostic, works in Node.js.
3
- */
4
- /**
5
- * Sort file entries by the given config.
6
- * Directories always sort before files regardless of sort field.
7
- * Returns a new array (does not mutate the input).
8
- */
9
- export function sortFileEntries(entries, config) {
10
- const sorted = [...entries];
11
- const dir = config.direction === 'asc' ? 1 : -1;
12
- sorted.sort((a, b) => {
13
- // Directories always come first
14
- if (a.is_dir && !b.is_dir)
15
- return -1;
16
- if (!a.is_dir && b.is_dir)
17
- return 1;
18
- switch (config.field) {
19
- case 'name':
20
- return dir * a.name.localeCompare(b.name, undefined, { sensitivity: 'base' });
21
- case 'size':
22
- return dir * (a.size - b.size);
23
- case 'modified':
24
- return dir * (a.modified - b.modified);
25
- case 'extension':
26
- return dir * a.extension.localeCompare(b.extension, undefined, { sensitivity: 'base' });
27
- default:
28
- return 0;
29
- }
30
- });
31
- return sorted;
32
- }
33
- /**
34
- * Toggle sort config: same field flips direction, new field starts ascending.
35
- */
36
- export function toggleSortField(current, field) {
37
- if (current.field === field) {
38
- return { field, direction: current.direction === 'asc' ? 'desc' : 'asc' };
39
- }
40
- return { field, direction: 'asc' };
41
- }
@@ -1,24 +0,0 @@
1
- /**
2
- * Formats a byte count into a human-readable string.
3
- */
4
- export declare function formatFileSize(bytes: number): string;
5
- /**
6
- * Formats a unix timestamp (milliseconds) to a human-readable date string.
7
- * Shows relative time for recent dates, absolute for older ones.
8
- */
9
- export declare function formatDate(timestamp: number): string;
10
- /**
11
- * Extracts the file extension from a filename, including the leading dot.
12
- * Returns an empty string if no extension is found.
13
- */
14
- export declare function getFileExtension(filename: string): string;
15
- /**
16
- * JSON replacer that converts BigInt values to strings.
17
- * Use with `JSON.stringify(value, jsonReplacerBigInt)`.
18
- */
19
- export declare function jsonReplacerBigInt(_key: string, value: unknown): unknown;
20
- /**
21
- * Format a value for display in tables, attribute panels, and exports.
22
- * Handles null, undefined, Date, BigInt, and objects uniformly.
23
- */
24
- export declare function formatValue(value: unknown): string;
@@ -1,78 +0,0 @@
1
- /**
2
- * Formats a byte count into a human-readable string.
3
- */
4
- export function formatFileSize(bytes) {
5
- if (bytes < 0)
6
- return '0 B';
7
- if (bytes === 0)
8
- return '0 B';
9
- const units = ['B', 'KB', 'MB', 'GB', 'TB'];
10
- const base = 1024;
11
- const exponent = Math.min(Math.floor(Math.log(bytes) / Math.log(base)), units.length - 1);
12
- const value = bytes / base ** exponent;
13
- // Use integer display for bytes, one decimal for everything else
14
- if (exponent === 0)
15
- return `${bytes} B`;
16
- return `${value.toFixed(1)} ${units[exponent]}`;
17
- }
18
- /**
19
- * Formats a unix timestamp (milliseconds) to a human-readable date string.
20
- * Shows relative time for recent dates, absolute for older ones.
21
- */
22
- export function formatDate(timestamp) {
23
- if (!timestamp || timestamp <= 0 || !Number.isFinite(timestamp))
24
- return '--';
25
- const date = new Date(timestamp);
26
- const now = Date.now();
27
- const diffMs = now - timestamp;
28
- const diffSeconds = Math.floor(diffMs / 1000);
29
- const diffMinutes = Math.floor(diffSeconds / 60);
30
- const diffHours = Math.floor(diffMinutes / 60);
31
- const diffDays = Math.floor(diffHours / 24);
32
- if (diffSeconds < 60)
33
- return 'Just now';
34
- if (diffMinutes < 60)
35
- return `${diffMinutes}m ago`;
36
- if (diffHours < 24)
37
- return `${diffHours}h ago`;
38
- if (diffDays < 7)
39
- return `${diffDays}d ago`;
40
- // For older dates, show absolute date
41
- return date.toLocaleDateString(undefined, {
42
- year: 'numeric',
43
- month: 'short',
44
- day: 'numeric'
45
- });
46
- }
47
- /**
48
- * Extracts the file extension from a filename, including the leading dot.
49
- * Returns an empty string if no extension is found.
50
- */
51
- export function getFileExtension(filename) {
52
- const lastDot = filename.lastIndexOf('.');
53
- if (lastDot <= 0)
54
- return '';
55
- return filename.slice(lastDot).toLowerCase();
56
- }
57
- /**
58
- * JSON replacer that converts BigInt values to strings.
59
- * Use with `JSON.stringify(value, jsonReplacerBigInt)`.
60
- */
61
- export function jsonReplacerBigInt(_key, value) {
62
- return typeof value === 'bigint' ? value.toString() : value;
63
- }
64
- /**
65
- * Format a value for display in tables, attribute panels, and exports.
66
- * Handles null, undefined, Date, BigInt, and objects uniformly.
67
- */
68
- export function formatValue(value) {
69
- if (value === null || value === undefined)
70
- return 'NULL';
71
- if (value instanceof Date)
72
- return value.toISOString();
73
- if (typeof value === 'bigint')
74
- return value.toString();
75
- if (typeof value === 'object')
76
- return JSON.stringify(value, jsonReplacerBigInt);
77
- return String(value);
78
- }
@@ -1,32 +0,0 @@
1
- /**
2
- * Direct WKB → GeoArrow bridge (zero-copy).
3
- *
4
- * Reads raw WKB binary directly into pre-allocated Arrow typed arrays
5
- * without any intermediate JS object allocation. No parseWKB(), no GeoJSON.
6
- *
7
- * Data flow: WKB Uint8Array[] → DataView binary reads → Float64Array/Int32Array
8
- * → arrow.makeData() → arrow.Table with ARROW:extension:name metadata
9
- */
10
- import { Table } from 'apache-arrow';
11
- export type GeoArrowGeomType = 'point' | 'linestring' | 'polygon' | 'multipoint' | 'multilinestring' | 'multipolygon';
12
- export interface GeoArrowResult {
13
- table: Table;
14
- geometryType: GeoArrowGeomType;
15
- bounds: [number, number, number, number];
16
- /** Maps local table row index → original WKB array index (for selection lookup). */
17
- sourceIndices: number[];
18
- }
19
- /** Map DuckDB ST_GeometryType output to our normalized type. */
20
- export declare function normalizeGeomType(raw: string): GeoArrowGeomType;
21
- /**
22
- * Build GeoArrow tables from raw WKB arrays, automatically splitting by geometry type.
23
- * Returns one GeoArrowResult per non-empty type group, with shared merged bounds.
24
- *
25
- * @param wkbArrays Raw WKB binary arrays from DuckDB
26
- * @param attributes Attribute columns (non-geometry)
27
- * @param knownGeomType If provided (e.g. from GeoParquet metadata), skip classification
28
- */
29
- export declare function buildGeoArrowTables(wkbArrays: Uint8Array[], attributes: Map<string, {
30
- values: any[];
31
- type: string;
32
- }>, knownGeomType?: GeoArrowGeomType): GeoArrowResult[];