expo-running-kit
Version:
Expo native module for tracking running and walking workouts — GPS, pace, cadence, auto-pause, and laps.
63 lines • 1.67 kB
TypeScript
export type WorkoutType = "running" | "walking";
export type SessionState = "idle" | "active" | "paused" | "auto-paused" | "stopped";
export type GpsQuality = "excellent" | "good" | "fair" | "poor";
export type Units = "metric" | "imperial";
export type LocationUpdatePayload = {
latitude: number;
longitude: number;
altitude: number;
speed: number;
accuracy: number;
timestamp: number;
};
export type StepUpdatePayload = {
steps: number;
cadence: number;
};
export type SessionStatePayload = {
state: SessionState;
};
export type RunningKitEvents = {
onLocationUpdate: (payload: LocationUpdatePayload) => void;
onStepUpdate: (payload: StepUpdatePayload) => void;
onSessionStateChange: (payload: SessionStatePayload) => void;
};
export type SpeedStats = {
current: number;
avg: number;
max: number;
};
export type PaceStats = {
current: string | null;
avg: string | null;
best: string | null;
};
export type Lap = {
number: number;
duration: number;
distance: number;
avgSpeed: number;
avgPace: string | null;
};
export type RunningKitConfig = {
units?: Units;
autoPause?: boolean;
autoPauseDelay?: number;
resumeThreshold?: number;
speedSmoothingWindow?: number;
};
export type PermissionStatus = "granted" | "denied" | "undetermined";
export type PermissionsResult = {
location: PermissionStatus;
motion: PermissionStatus;
};
export type SessionSummary = {
duration: number;
distance: number;
steps: number;
speed: SpeedStats;
pace: PaceStats;
calories: number;
laps: Lap[];
};
//# sourceMappingURL=RunningKit.types.d.ts.map