import { GeoJSONFeature } from '../types'; /** * Calculate the convex hull of a set of features * @param features - Array of features * @returns Convex hull polygon feature */ export declare const calculateConvexHull: (features: GeoJSONFeature[]) => GeoJSONFeature; /** * Calculate the minimum bounding circle of a feature * @param feature - The feature to analyze * @returns Circle feature representing the minimum bounding circle */ export declare const calculateMinimumBoundingCircle: (feature: GeoJSONFeature) => GeoJSONFeature; /** * Calculate the center of mass of a feature * @param feature - The feature to analyze * @returns Center of mass point feature */ export declare const calculateCenterOfMass: (feature: GeoJSONFeature) => GeoJSONFeature; /** * Calculate the envelope (bounding rectangle) of a feature * @param feature - The feature to analyze * @returns Envelope polygon feature */ export declare const calculateEnvelope: (feature: GeoJSONFeature) => GeoJSONFeature; /** * Calculate the minimum bounding rectangle of a feature (using envelope as approximation) * @param feature - The feature to analyze * @returns Minimum bounding rectangle polygon feature */ export declare const calculateMinimumBoundingRectangle: (feature: GeoJSONFeature) => GeoJSONFeature; /** * Calculate the nearest point on a line to a given point * @param point - The point feature * @param line - The line feature * @returns Nearest point on the line */ export declare const calculateNearestPointOnLine: (point: GeoJSONFeature, line: GeoJSONFeature) => GeoJSONFeature; /** * Calculate the nearest point to a given point from a set of points * @param targetPoint - The target point * @param points - Array of candidate points * @returns Nearest point from the array */ export declare const findNearestPoint: (targetPoint: GeoJSONFeature, points: GeoJSONFeature[]) => GeoJSONFeature; /** * Calculate the bearing between two points * @param point1 - First point feature * @param point2 - Second point feature * @returns Bearing in degrees */ export declare const calculateBearing: (point1: GeoJSONFeature, point2: GeoJSONFeature) => number; /** * Calculate the destination point given a starting point, distance, and bearing * @param startPoint - Starting point feature * @param distance - Distance in meters * @param bearing - Bearing in degrees * @returns Destination point feature */ export declare const calculateDestinationPoint: (startPoint: GeoJSONFeature, distance: number, bearing: number) => GeoJSONFeature; /** * Calculate the midpoint between two points * @param point1 - First point feature * @param point2 - Second point feature * @returns Midpoint feature */ export declare const calculateMidpoint: (point1: GeoJSONFeature, point2: GeoJSONFeature) => GeoJSONFeature; /** * Calculate the great circle distance between two points * @param point1 - First point feature * @param point2 - Second point feature * @param units - Units for distance (default: 'meters') * @returns Great circle distance */ export declare const calculateGreatCircleDistance: (point1: GeoJSONFeature, point2: GeoJSONFeature, units?: "meters" | "kilometers" | "miles" | "feet") => number; /** * Calculate the area of a polygon in square feet * @param polygon - The polygon feature * @returns Area in square feet */ export declare const calculateAreaInSquareFeet: (polygon: GeoJSONFeature) => number; /** * Calculate the area of a polygon in hectares * @param polygon - The polygon feature * @returns Area in hectares */ export declare const calculateAreaInHectares: (polygon: GeoJSONFeature) => number; /** * Calculate the area of a polygon in square kilometers * @param polygon - The polygon feature * @returns Area in square kilometers */ export declare const calculateAreaInSquareKilometers: (polygon: GeoJSONFeature) => number; /** * Calculate the perimeter of a polygon in feet * @param polygon - The polygon feature * @returns Perimeter in feet */ export declare const calculatePerimeterInFeet: (polygon: GeoJSONFeature) => number; /** * Calculate the perimeter of a polygon in miles * @param polygon - The polygon feature * @returns Perimeter in miles */ export declare const calculatePerimeterInMiles: (polygon: GeoJSONFeature) => number; /** * Check if a line intersects with a polygon * @param line - The line feature * @param polygon - The polygon feature * @returns True if line intersects polygon */ export declare const doesLineIntersectPolygon: (line: GeoJSONFeature, polygon: GeoJSONFeature) => boolean; /** * Calculate the length of a line feature * @param line - The line feature * @param units - Units for length (default: 'meters') * @returns Length in specified units */ export declare const calculateLineLength: (line: GeoJSONFeature, units?: "meters" | "kilometers" | "miles" | "feet") => number; /** * Create a buffer around a line feature * @param line - The line feature * @param distance - Buffer distance in meters * @returns Buffered polygon feature */ export declare const bufferLine: (line: GeoJSONFeature, distance: number) => GeoJSONFeature; /** * Simplify a line feature to reduce complexity * @param line - The line feature * @param tolerance - Simplification tolerance * @returns Simplified line feature */ export declare const simplifyLine: (line: GeoJSONFeature, tolerance?: number) => GeoJSONFeature;