import { Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon, FeatureCollection, Feature, GeometryObject, GeometryCollection, AllGeoJSON, Properties, Geometries, Lines, BBox, Id } from '@turf/helpers'; /** * http://turfjs.org/docs/#coordreduce */ export function coordReduce( geojson: AllGeoJSON, callback: (previousValue: Reducer, currentCoord: number[], coordIndex: number, featureIndex: number, multiFeatureIndex: number, geometryIndex: number) => Reducer, initialValue?: Reducer ): Reducer; /** * http://turfjs.org/docs/#coordeach */ export function coordEach( geojson: AllGeoJSON, callback: (currentCoord: number[], coordIndex: number, featureIndex: number, multiFeatureIndex: number, geometryIndex: number) => void ): void; /** * http://turfjs.org/docs/#propeach */ export function propEach( geojson: Feature | FeatureCollection | Feature, callback: (currentProperties: Props, featureIndex: number) => void ): void; /** * http://turfjs.org/docs/#propreduce */ export function propReduce( geojson: Feature | FeatureCollection | Geometries | GeometryCollection, callback: (previousValue: Reducer, currentProperties: P, featureIndex: number) => Reducer, initialValue?: Reducer ): Reducer; /** * http://turfjs.org/docs/#featurereduce */ export function featureReduce( geojson: Feature | FeatureCollection | Feature, callback: (previousValue: Reducer, currentFeature: Feature, featureIndex: number) => Reducer, initialValue?: Reducer ): Reducer; /** * http://turfjs.org/docs/#featureeach */ export function featureEach( geojson: Feature | FeatureCollection | Feature, callback: (currentFeature: Feature, featureIndex: number) => void ): void; /** * http://turfjs.org/docs/#coordall */ export function coordAll(geojson: AllGeoJSON): number[][]; /** * http://turfjs.org/docs/#geomreduce */ export function geomReduce( geojson: Feature | FeatureCollection | G | GeometryCollection | Feature, callback: (previousValue: Reducer, currentGeometry: G, featureIndex: number, featureProperties: P, featureBBox: BBox, featureId: Id) => Reducer, initialValue?: Reducer ): Reducer; /** * http://turfjs.org/docs/#geomeach */ export function geomEach( geojson: Feature | FeatureCollection | G | GeometryCollection | Feature, callback: (currentGeometry: G, featureIndex: number, featureProperties: P, featureBBox: BBox, featureId: Id) => void ): void; /** * http://turfjs.org/docs/#flattenreduce */ export function flattenReduce( geojson: Feature | FeatureCollection | G | GeometryCollection | Feature, callback: (previousValue: Reducer, currentFeature: Feature, featureIndex: number, multiFeatureIndex: number) => Reducer, initialValue?: Reducer ): Reducer; /** * http://turfjs.org/docs/#flatteneach */ export function flattenEach( geojson: Feature | FeatureCollection | G | GeometryCollection | Feature, callback: (currentFeature: Feature, featureIndex: number, multiFeatureIndex: number) => void ): void; /** * http://turfjs.org/docs/#segmentreduce */ export function segmentReduce( geojson: FeatureCollection | Feature | Lines | Feature | GeometryCollection, callback: (previousValue?: Reducer, currentSegment?: Feature, featureIndex?: number, multiFeatureIndex?: number, segmentIndex?: number, geometryIndex?: number) => Reducer, initialValue?: Reducer ): Reducer; /** * http://turfjs.org/docs/#segmenteach */ export function segmentEach

( geojson: AllGeoJSON, callback: (currentSegment?: Feature, featureIndex?: number, multiFeatureIndex?: number, segmentIndex?: number, geometryIndex?: number) => void ): void; /** * http://turfjs.org/docs/#linereduce */ export function lineReduce( geojson: FeatureCollection | Feature | Lines | Feature | GeometryCollection, callback: (previousValue?: Reducer, currentLine?: Feature, featureIndex?: number, multiFeatureIndex?: number, geometryIndex?: number) => Reducer, initialValue?: Reducer ): Reducer; /** * http://turfjs.org/docs/#lineeach */ export function lineEach

( geojson: FeatureCollection | Feature | Lines | Feature | GeometryCollection, callback: (currentLine?: Feature, featureIndex?: number, multiFeatureIndex?: number, geometryIndex?: number) => void ): void;