export interface HrZone { zone: number; name: string; low: number; high: number; } export interface PowerZone { zone: number; name: string; low: number; high: number; } export interface PaceZone { zone: string | number; name: string; pace: string; offset?: number; } export type Theme = "dark" | "light"; export interface Settings { theme: Theme; units: { swim: "meters" | "yards"; bike: "kilometers" | "miles"; run: "kilometers" | "miles"; }; firstDayOfWeek: "monday" | "sunday"; run: { lthr: number; hrZones: HrZone[]; thresholdPace: string; paceZones: PaceZone[]; }; bike: { lthr: number; hrZones: HrZone[]; ftp: number; powerZones: PowerZone[]; }; swim: { css: string; cssSeconds: number; paceZones: PaceZone[]; }; } export declare function loadSettings(): Settings; export declare function saveSettings(settings: Settings): void; export declare function paceToSeconds(pace: string): number; export declare function secondsToPace(seconds: number): string; export declare function recalculateHrZones(lthr: number): HrZone[]; export declare function recalculatePowerZones(ftp: number): PowerZone[]; export declare function recalculateRunPaceZones(thresholdPace: string): PaceZone[]; export declare function recalculateSwimPaceZones(css: string): PaceZone[];