import { FeatureCollection, Feature, Point, Polygon, MultiLineString, LineString, MultiPolygon, MultiPoint, Position } from "geojson"; /** * Node & browser script to transform/project geojson coordinates * @copyright Alexander Milevski * @preserve * @license MIT */ type SingleGeometry = Point | MultiPoint | LineString | MultiLineString | Polygon | MultiPolygon; /** * Takes in GeoJSON and applies a function to each coordinate, * with a given context * * @param {Object} data GeoJSON * @param {Function} project * @param {*=} context * @return {Object} */ declare function geojsonProject(data: T, project: (coordinates: number[]) => number[], context?: unknown): T; declare namespace geojsonProject { var projectFeature: (feature: Feature, project: (coordinates: number[]) => number[], context?: unknown) => Feature; var projectCoords: (coords: T, levelsDeep: number, project: (c: Position) => Position, context?: unknown) => T; var projectGeometry: (geometry: SingleGeometry, project: (coordinates: Position) => Position, context?: unknown) => SingleGeometry; } export default geojsonProject;