UNPKG

@sports-alliance/sports-lib

Version:

A Library to for importing / exporting and processing GPX, TCX, FIT and JSON files from services such as Strava, Movescount, Garmin, Polar etc

55 lines (54 loc) 2.2 kB
import { TrainingStressScoreMethod } from '../../../data/data.training-stress-score-method'; export interface TssSample { duration: number; power?: number | null; speed?: number | null; verticalSpeed?: number | null; grade?: number | null; hr?: number | null; } export interface TssInput { totalDurationWithoutPauses: number; functionalThresholdPower?: number; normalizedPower?: number; functionalThresholdPace?: number; lactateThresholdHR?: number; maxHeartRate?: number; restingHeartRate?: number; swimSpeed?: number; thresholdSwimSpeed?: number; metScore?: number; thresholdMet?: number; gender?: string; samples: TssSample[]; } export interface TssCalculationResult { calculationMethod: typeof TrainingStressScoreMethod.POWER | typeof TrainingStressScoreMethod.HR | typeof TrainingStressScoreMethod.PACE | typeof TrainingStressScoreMethod.SWIM_PACE | typeof TrainingStressScoreMethod.MET; trainingStressScore: number; intensityFactor?: number; normalizedPower?: number; averageGradeAdjustedPace?: number; } export declare class TssCalculator { private static readonly TSS_MIN; private static readonly TSS_MAX; static estimateMetScore(energyConsumption: number, userWeight: number, totalDurationWithoutPauses: number): number; static calculatePowerTss(input: TssInput): TssCalculationResult | null; static calculatePaceTss(input: TssInput): TssCalculationResult | null; static calculateHrTss(input: TssInput): TssCalculationResult | null; static calculateSwimTss(input: TssInput): TssCalculationResult | null; static calculateMetTss(input: TssInput): TssCalculationResult | null; private static calculateBanisterHrTss; private static calculateEdwardsHrTss; private static accumulateSampleLoad; private static resolveBanisterThresholdDhr; private static resolveEdwardsThresholdRatio; private static edwardsZoneWeight; private static resolveSampleGrade; private static runningCostMinetti; private static isFemale; private static applyRangeCheck; private static average; private static positive; private static clamp; }