export interface DistanceResult {
    /** Great-circle distance in km */
    distanceKm: number;
    /** Distance in miles */
    distanceMiles: number;
    /** Initial bearing in degrees from north */
    bearingDegrees: number;
    /** 16-point compass direction (e.g. "NE") */
    compassDirection: string;
    /** Estimated flight time in minutes */
    flightTimeMinutes: number;
}
export interface MidpointResult {
    latitude: number;
    longitude: number;
}
/**
 * Full distance + bearing + flight time between two airports by IATA code.
 * Uses airport-data-js for coordinates; haversine math via geolib.
 * Returns null if either airport is not found.
 */
export declare function airportDistanceDetailed(code1: string, code2: string): Promise<DistanceResult | null>;
/**
 * Initial bearing from airport code1 to code2 in degrees.
 * Returns null if either airport is not found.
 */
export declare function airportBearing(code1: string, code2: string): Promise<number | null>;
/**
 * Geographic midpoint between two airports.
 * Returns null if either airport is not found.
 */
export declare function airportMidpoint(code1: string, code2: string): Promise<MidpointResult | null>;
/**
 * Generate points along the great-circle arc between two airports.
 * Useful for rendering flight paths on maps.
 * Returns null if either airport is not found.
 */
export declare function airportArcPoints(code1: string, code2: string, numPoints?: number): Promise<Array<{
    latitude: number;
    longitude: number;
}> | null>;
/**
 * Check if two airports are in the same country (domestic route).
 * Returns null if either airport is not found.
 */
export declare function isDomesticRoute(code1: string, code2: string): Promise<boolean | null>;
//# sourceMappingURL=geo.d.ts.map