import * as arrow from 'apache-arrow'; import type { WorkerOptions } from '@loaders.gl/worker-utils'; import type { GeoArrowEncoding } from '@loaders.gl/geoarrow'; import { BinaryDataFromGeoArrow } from '@loaders.gl/gis'; export type TriangulationWorkerInput = ({ operation: 'triangulate'; } & TriangulateInput) | ParseGeoArrowInput | { operation: 'test'; data: any; }; export type TriangulationWorkerOutput = ({ operation: 'triangulate'; } & TriangulateResult) | ({ operation: 'parse-geoarrow'; } & ParseGeoArrowResult) | { operation: 'test'; data: any; }; type GeoArrowChunkData = { type: arrow.DataType; offset: number; length: number; nullCount: number; buffers: any; children: arrow.Data[]; dictionary?: arrow.Vector; }; export type ParseGeoArrowInput = { operation: 'parse-geoarrow'; chunkData: GeoArrowChunkData; chunkIndex: number; chunkOffset: number; geometryEncoding: GeoArrowEncoding; calculateMeanCenters: boolean; triangle: boolean; }; export type ParseGeoArrowResult = { chunkIndex: number; binaryDataFromGeoArrow: BinaryDataFromGeoArrow | null; }; /** Input data for operation: 'triangulate' */ export type TriangulateInput = { polygonIndices: Uint16Array; primitivePolygonIndices: Int32Array; flatCoordinateArray: Float64Array; nDim: number; }; /** Result type for operation: 'triangulate' */ export type TriangulateResult = TriangulateInput & { triangleIndices?: Uint32Array; }; /** * Worker for tessellating geometries. Normally called through triangulateOnWorker */ export declare const TriangulationWorker: { id: string; name: string; module: string; version: any; options: {}; }; /** * Triangulate a set of polygons on worker, type safe API */ export declare function triangulateOnWorker(data: TriangulateInput, options?: WorkerOptions): Promise; /** * Parse GeoArrow geometry colum on worker, type safe API */ export declare function parseGeoArrowOnWorker(data: ParseGeoArrowInput, options?: WorkerOptions): Promise; export {}; //# sourceMappingURL=triangulate-on-worker.d.ts.map