/* * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved. * This file is licensed to you under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. You may obtain a copy * of the License at https://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software distributed under * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS * OF ANY KIND, either express or implied. See the License for the specific language * governing permissions and limitations under the License. */ import { CoordinateInput, CoordinateInternalValue, CoordinateObject, CoordinateTuple, LatLonTuple, LonLatTuple, isCoordinateObject, isCoordinateTuple, normalizeObjectToLatLon, tupleToLatLon } from "./normalize.js"; import { isFiniteNumber, validateNumericCoordinate, validateSignedRange } from "./validate.js"; //#region src/coordinates/latlon/internal/index.d.ts type Axes = 'LAT' | 'LON'; type Compass = 'N' | 'S' | 'E' | 'W'; type Errors = string[]; type Format = (typeof FORMATS)[number]; /** * Bearings are the consistent/explicit identifiers of directionality of a * coordinate component; this library has opted for these over implicit * indication by number sign not because there is an inherent superiority * but because something had to be chosen. * * NOTE: these arrays are position-important; negative values are [1] and * positive values are [0] so that they can be consistently indexed using * an `isNegative` boolean to reference the negative bearing of each axis */ declare const BEARINGS: { readonly LAT: readonly ["N", "S"]; readonly LON: readonly ["E", "W"]; readonly LATLON: readonly [readonly ["N", "S"], readonly ["E", "W"]]; readonly LONLAT: readonly [readonly ["E", "W"], readonly ["N", "S"]]; }; declare const FORMATS: readonly ["LATLON", "LONLAT"]; declare const FORMATS_DEFAULT: "LATLON"; declare const LIMITS: { readonly LATLON: readonly [90, 180]; readonly LONLAT: readonly [180, 90]; }; declare const SYMBOLS: { DEGREES: string; MINUTES: string; SECONDS: string; DIVIDER: string; }; declare const SYMBOL_PATTERNS: { readonly LAT: RegExp; readonly LON: RegExp; readonly NSEW: RegExp; readonly NEGATIVE_BEARINGS: RegExp; readonly NEGATIVE_SIGN: RegExp; readonly DEGREES: RegExp; readonly MINUTES: RegExp; readonly SECONDS: RegExp; readonly DIVIDER: RegExp; readonly DMS: RegExp; }; declare const PARTIAL_PATTERNS: { readonly ' ': RegExp; readonly '/': RegExp; readonly NS: RegExp; readonly EW: RegExp; readonly degLatDec: RegExp; readonly degLonDec: RegExp; readonly degLat: RegExp; readonly degLon: RegExp; readonly min: RegExp; readonly minDec: RegExp; readonly secDec: RegExp; }; //#endregion export { Axes, BEARINGS, Compass, type CoordinateInput, type CoordinateInternalValue, type CoordinateObject, type CoordinateTuple, Errors, FORMATS, FORMATS_DEFAULT, Format, LIMITS, type LatLonTuple, type LonLatTuple, PARTIAL_PATTERNS, SYMBOLS, SYMBOL_PATTERNS, isCoordinateObject, isCoordinateTuple, isFiniteNumber, normalizeObjectToLatLon, tupleToLatLon, validateNumericCoordinate, validateSignedRange }; //# sourceMappingURL=index.d.ts.map