Skip to content

RoutePoint — @gj-kit/expo-workouts

A public interface from @gj-kit/expo-workouts. The signature below is taken directly from the 0.1.1 release declaration.

import { RoutePoint } from '@gj-kit/expo-workouts';
/**
* One GPS fix. SI units, unit in the field name.
*
* Negative CoreLocation sentinels (`-1`) are mapped to `undefined` for `hAccM`, `vAccM`, `speedMps`
* and `courseDeg`; an explicit `0` is PRESERVED as `0`, because HealthKit preserves it.
* `altM` is passed through verbatim — a negative altitude is a legal value (Dead Sea), not a
* sentinel; `vAccM` is the actual validity flag for it.
*/
interface RoutePoint {
/** Epoch MILLISECONDS. Strictly increasing after our normalisation. */
readonly t: number;
/** WGS84 degrees, -90..90. Out of range is `invalidArgument` on BOTH platforms. */
readonly lat: number;
/** WGS84 degrees, -180..180. */
readonly lon: number;
readonly altM?: number | undefined;
/** Horizontal accuracy, metres. */
readonly hAccM?: number | undefined;
/** Vertical accuracy, metres. */
readonly vAccM?: number | undefined;
/** iOS only — Health Connect's `ExerciseRoute.Location` has no speed field. */
readonly speedMps?: number | undefined;
/** iOS only. */
readonly courseDeg?: number | undefined;
}

This declaration is the source of truth for parameters, optionality, generics, return values, and public union/type contracts. Check the package golden path and this subpath’s import conditions for required environment, permission, and error boundaries before calling it.

  • Package: @gj-kit/expo-workouts
  • Version: 0.1.1
  • Public entry: .
  • Source: GitHub