import { BinaryFeatureCollection } from '@loaders.gl/schema'; import { GeoDaModule, PolygonCollection, PointCollection, LineCollection, GeometryCollection } from '@geoda/common'; /** * Defines the geometry types supported in binary format. See DeckGlGeoTypes in kepler.gl/layers * @typedef {Object} BinaryGeometryType * @property {boolean} point - Whether the geometry contains point features * @property {boolean} line - Whether the geometry contains line features * @property {boolean} polygon - Whether the geometry contains polygon features */ export type BinaryGeometryType = { point: boolean; line: boolean; polygon: boolean; }; /** * Creates a GeoDa GeometryCollection from binary geometry features * @param {BinaryGeometryType} geometryType - The type of geometry to create * @param {BinaryFeatureCollection[]} binaryFeaturesChunks - Array of binary feature collections. See BinaryFeatureCollection in `@loaders.gl/schema` * @param {GeoDaModule} wasm - The initialized GeoDa WASM module * @returns {Promise} A GeoDa geometry collection * @throws {Error} If WASM module is not initialized or geometry type is unknown */ export declare function getGeometryCollectionFromBinaryGeometries(geometryType: BinaryGeometryType, binaryFeaturesChunks: BinaryFeatureCollection[], wasm: GeoDaModule, fixPolygon?: boolean, convertToUTM?: boolean): Promise; /** * Creates a GeoDa PointCollection from binary point features * @param {Array} pointsArray - Array of binary point features from GeoArrow chunks * @param {GeoDaModule} wasm - The initialized GeoDa WASM module * @returns {PointCollection} A GeoDa point collection */ export declare function createPointCollectionFromBinaryFeatures(pointsArray: Array, wasm: GeoDaModule, convertToUTM?: boolean): PointCollection; /** * Creates a GeoDa LineCollection from binary line features * @param {Array} linesArray - Array of binary line features from GeoArrow chunks * @param {GeoDaModule} wasm - The initialized GeoDa WASM module * @returns {LineCollection} A GeoDa line collection */ export declare function createLineCollectionFromBinaryFeatures(linesArray: Array, wasm: GeoDaModule, convertToUTM?: boolean): LineCollection; /** * Creates a GeoDa PolygonCollection from binary polygon features * @param {Array} polygonsArray - Array of binary polygon features from GeoArrow chunks * @param {GeoDaModule} wasm - The initialized GeoDa WASM module * @returns {PolygonCollection} A GeoDa polygon collection */ export declare function createPolygonCollectionFromBinaryFeatures(polygonsArray: Array, wasm: GeoDaModule, fixPolygon?: boolean, convertToUTM?: boolean): PolygonCollection;