glutamatt's picture
glutamatt HF Staff
some fixes
fcc9f70 verified
raw
history blame
2.06 kB
export interface Activity {
date: Date;
activityType?: string;
title?: string;
distance?: number; // in kilometers
duration?: number; // in minutes
trainingStressScore?: number;
calories?: number;
averageHR?: number;
maxHR?: number;
totalAscent?: number; // in meters
}
export interface ProcessedData {
activities: Activity[];
dates: string[];
distances: (number | null)[];
durations: (number | null)[];
tss: (number | null)[];
}
export interface MetricACWRData {
dates: string[];
values: (number | null)[]; // Daily sum values
average7d: (number | null)[]; // 7-day rolling average
average28d: (number | null)[]; // 28-day rolling average
acwr: (number | null)[]; // ACWR based on this metric
targetTomorrowValue?: number | null; // Value needed tomorrow to reach target ACWR of 1.3
targetACWR?: number; // The target ACWR value used for calculation
restTomorrowACWR?: number | null; // What ACWR would be with a rest day tomorrow
todayValue?: number | null; // Today's value for reference
activitiesByDate?: Map<string, Activity[]>; // Activities grouped by date
// Future predictions (filtered - only significant activities)
futureDates?: string[]; // Dates for future predictions (filtered)
futureValues?: (number | null)[]; // Optimal activity values for future days (filtered)
futureAverage7d?: (number | null)[]; // Predicted 7-day rolling average (filtered)
futureAverage28d?: (number | null)[]; // Predicted 28-day rolling average (filtered)
futureAcwr?: (number | null)[]; // Predicted ACWR values (filtered)
// Complete future predictions (including rest days for ACWR curve continuity)
allFutureDates?: string[]; // All future dates including rest days
allFutureValues?: number[]; // All future values including low values
allFutureAverage7d?: number[]; // All 7-day averages
allFutureAverage28d?: number[]; // All 28-day averages
allFutureAcwr?: number[]; // All ACWR values for curve continuity
}