import { GeoJSONFeature } from '../types'; /** * Calculate the area of a polygon in acres * @param polygon - The polygon feature * @returns Area in acres */ export declare const calculateAreaInAcres: (polygon: GeoJSONFeature) => number; /** * Calculate the area of a polygon in various units * @param polygon - The polygon feature * @returns Object with areas in different units */ export declare const calculateAreaInMultipleUnits: (polygon: GeoJSONFeature) => { squareMeters: number; acres: number; hectares: number; squareFeet: number; squareKilometers: number; }; /** * Calculate the area of a polygon using turf.area directly * @param polygon - The polygon feature * @returns Area in square meters */ export declare const calculateArea: (polygon: GeoJSONFeature) => number; /** * Calculate the area of multiple features * @param features - Array of polygon features * @returns Total area in square meters */ export declare const calculateTotalArea: (features: GeoJSONFeature[]) => number; /** * Check if a point is inside a polygon * @param point - The point feature * @param polygon - The polygon feature * @returns True if point is inside polygon */ export declare const isPointInPolygon: (point: GeoJSONFeature, polygon: GeoJSONFeature) => boolean; /** * Get the centroid of a polygon * @param polygon - The polygon feature * @returns Centroid point feature */ export declare const getPolygonCentroid: (polygon: GeoJSONFeature) => GeoJSONFeature; /** * Buffer a polygon by a specified distance * @param polygon - The polygon feature * @param distance - Distance in meters * @returns Buffered polygon feature */ export declare const bufferPolygon: (polygon: GeoJSONFeature, distance: number) => GeoJSONFeature; /** * Simplify a polygon to reduce complexity * @param polygon - The polygon feature * @param tolerance - Simplification tolerance * @returns Simplified polygon feature */ export declare const simplifyPolygon: (polygon: GeoJSONFeature, tolerance?: number) => GeoJSONFeature; /** * Calculate distance between two points * @param point1 - First point feature * @param point2 - Second point feature * @param units - Units for distance (default: 'meters') * @returns Distance in specified units */ export declare const calculateDistance: (point1: GeoJSONFeature, point2: GeoJSONFeature, units?: "meters" | "kilometers" | "miles" | "feet") => number; /** * Calculate the perimeter of a polygon * @param polygon - The polygon feature * @param units - Units for perimeter (default: 'meters') * @returns Perimeter in specified units */ export declare const calculatePerimeter: (polygon: GeoJSONFeature, units?: "meters" | "kilometers" | "miles" | "feet") => number; /** * Check if two polygons intersect * @param polygon1 - First polygon feature * @param polygon2 - Second polygon feature * @returns True if polygons intersect */ export declare const doPolygonsIntersect: (polygon1: GeoJSONFeature, polygon2: GeoJSONFeature) => boolean; /** * Calculate the intersection area between two polygons * @param polygon1 - First polygon feature * @param polygon2 - Second polygon feature * @returns Intersection area in square meters, or 0 if no intersection */ export declare const calculateIntersectionArea: (polygon1: GeoJSONFeature, polygon2: GeoJSONFeature) => number; /** * Calculate the union of two polygons * @param polygon1 - First polygon feature * @param polygon2 - Second polygon feature * @returns Union polygon feature */ export declare const unionPolygons: (polygon1: GeoJSONFeature, polygon2: GeoJSONFeature) => GeoJSONFeature; /** * Calculate the difference between two polygons * @param polygon1 - First polygon feature * @param polygon2 - Second polygon feature * @returns Difference polygon feature */ export declare const differencePolygons: (polygon1: GeoJSONFeature, polygon2: GeoJSONFeature) => GeoJSONFeature; /** * Get the bounding box of a feature or feature collection * @param feature - The feature or feature collection * @returns Bounding box as [minX, minY, maxX, maxY] */ export declare const getBoundingBox: (feature: GeoJSONFeature | GeoJSONFeature[]) => [number, number, number, number]; /** * Create a bounding box polygon from coordinates * @param bbox - Bounding box as [minX, minY, maxX, maxY] * @returns Bounding box polygon feature */ export declare const createBoundingBoxPolygon: (bbox: [number, number, number, number]) => GeoJSONFeature; /** * Check if a feature is within a bounding box * @param feature - The feature to check * @param bbox - Bounding box as [minX, minY, maxX, maxY] * @returns True if feature is within bbox */ export declare const isFeatureInBbox: (feature: GeoJSONFeature, bbox: [number, number, number, number]) => boolean; /** * Calculate the area-weighted centroid of multiple polygons * @param polygons - Array of polygon features * @returns Area-weighted centroid point feature */ export declare const calculateAreaWeightedCentroid: (polygons: GeoJSONFeature[]) => GeoJSONFeature; /** * Convert area from one unit to another * @param area - Area value * @param fromUnit - Current unit * @param toUnit - Target unit * @returns Converted area value */ export declare const convertArea: (area: number, fromUnit: "squareMeters" | "acres" | "hectares" | "squareFeet" | "squareKilometers", toUnit: "squareMeters" | "acres" | "hectares" | "squareFeet" | "squareKilometers") => number;