UNPKG

flight-planner

Version:
52 lines (51 loc) 2.12 kB
import { Wind } from './metar.types.js'; import { FrequencyType, Runway, RunwayWindVector, Waypoint } from './waypoint.types.js'; /** * Calculates the distance from one waypoint to another. * * @param from The starting waypoint. * @param to The destination waypoint. * @returns The distance in nautical miles. */ export declare const waypointDistance: (from: Waypoint, to: Waypoint) => number; /** * Calculates the heading from one waypoint to another. * * @param from The starting waypoint. * @param to The destination waypoint. * @returns The heading in degrees. */ export declare const waypointHeading: (from: Waypoint, to: Waypoint) => number; /** * Converts a numeric frequency type to its enum value * * @param type The numeric value of the frequency type * @returns The corresponding FrequencyType enum value */ export declare const validateFrequencyType: (type: number) => FrequencyType; /** * Calculates the QFE (atmospheric pressure at waypoint elevation) value. * * @param waypoint The waypoint. For QFE calculation, this waypoint must have an 'elevation' * and provide a QNH value (typically via an associated 'metarStation' property * if the waypoint is an aerodrome or similar). * @returns The QFE value in hPa (hectopascals), rounded to 2 decimal places, * or undefined if the waypoint's elevation or QNH data is not available. */ export declare const waypointQFE: (waypoint: Waypoint) => number | undefined; /** * Creates a Waypoint object from a longitude and latitude. * * @param location - The location as a [longitude, latitude] tuple. * @param name - Optional name for the waypoint. * @returns A Waypoint object. */ export declare const createWaypoint: (location: [number, number], name?: string) => Waypoint; /** * Calculates the wind vector for a specific runway. * * @param runway The runway to calculate the wind vector for. * @param wind The current wind data from METAR. * @returns The calculated runway wind vector. */ export declare const calculateRunwayWindVector: (runway: Runway, wind: Wind) => RunwayWindVector;