import { z } from "zod";
export declare const AirportInfoSchema: z.ZodObject<{
    iata: z.ZodString;
    icao: z.ZodString;
    name: z.ZodString;
    city: z.ZodOptional<z.ZodString>;
    country: z.ZodObject<{
        code: z.ZodString;
        name: z.ZodString;
    }, z.core.$strip>;
    continent: z.ZodString;
    timezone: z.ZodString;
    latitude: z.ZodNumber;
    longitude: z.ZodNumber;
    elevationFt: z.ZodOptional<z.ZodNumber>;
    type: z.ZodEnum<{
        closed: "closed";
        large_airport: "large_airport";
        medium_airport: "medium_airport";
        small_airport: "small_airport";
        heliport: "heliport";
        seaplane_base: "seaplane_base";
    }>;
    scheduledService: z.ZodBoolean;
}, z.core.$strip>;
export type AirportInfo = z.infer<typeof AirportInfoSchema>;
/**
 * Look up enriched airport data by IATA code.
 * Returns null if the airport is not found.
 */
export declare function getAirportInfo(code: string): Promise<AirportInfo | null>;
/**
 * Look up all airports in a given country.
 * Returns an array of AirportInfo objects.
 */
export declare function getAirportsByCountry(countryCode: string): Promise<AirportInfo[]>;
/**
 * Find airports near a given coordinate within a radius.
 * Delegates to airport-data-js findNearbyAirports, then computes
 * great-circle distance for each result (the library doesn't include it).
 */
export declare function findNearbyAirports(lat: number, lon: number, radiusKm?: number): Promise<Array<AirportInfo & {
    distanceKm: number;
}>>;
/**
 * Calculate great-circle distance between two airports by IATA code.
 * Uses geolib for haversine math (battle-tested, Vincenty-capable).
 * Returns distance in km, or null if either airport is not found.
 */
export declare function airportDistance(code1: string, code2: string): Promise<number | null>;
//# sourceMappingURL=enrichment.d.ts.map