@sunsteel/contracts 0.66.1 → 0.68.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -51,6 +51,11 @@ __export(index_exports, {
51
51
  DELOAD_MAX_DAYS: () => DELOAD_MAX_DAYS,
52
52
  DELOAD_NOT_LIGHTER: () => DELOAD_NOT_LIGHTER,
53
53
  DELOAD_SET_MODES: () => DELOAD_SET_MODES,
54
+ DELOAD_SUGGESTION_COOLDOWN_DAYS: () => DELOAD_SUGGESTION_COOLDOWN_DAYS,
55
+ DELOAD_SUGGESTION_EARLIER_DAYS: () => DELOAD_SUGGESTION_EARLIER_DAYS,
56
+ DELOAD_SUGGESTION_MIN_MARKED_TODAY: () => DELOAD_SUGGESTION_MIN_MARKED_TODAY,
57
+ DELOAD_SUGGESTION_ROUTINE_DAYS: () => DELOAD_SUGGESTION_ROUTINE_DAYS,
58
+ DELOAD_SUGGESTION_SIGNALS: () => DELOAD_SUGGESTION_SIGNALS,
54
59
  EXERCISE_EQUIPMENT: () => EXERCISE_EQUIPMENT,
55
60
  EXERCISE_MECHANICS: () => EXERCISE_MECHANICS,
56
61
  FEATURED_PROFILE_ITEMS_MAX: () => FEATURED_PROFILE_ITEMS_MAX,
@@ -151,6 +156,17 @@ __export(index_exports, {
151
156
  TRAINING_PARTNER_ENCOURAGEMENT_KINDS: () => TRAINING_PARTNER_ENCOURAGEMENT_KINDS,
152
157
  TRAINING_PARTNER_PERMISSION_KEYS: () => TRAINING_PARTNER_PERMISSION_KEYS,
153
158
  TRAINING_PARTNER_REQUESTS_PER_DAY_MAX: () => TRAINING_PARTNER_REQUESTS_PER_DAY_MAX,
159
+ TRAINING_SIGNAL_DECLINES_MAX: () => TRAINING_SIGNAL_DECLINES_MAX,
160
+ TRAINING_SIGNAL_DECLINE_SESSIONS: () => TRAINING_SIGNAL_DECLINE_SESSIONS,
161
+ TRAINING_SIGNAL_MIN_DECLINE: () => TRAINING_SIGNAL_MIN_DECLINE,
162
+ TRAINING_SIGNAL_MIN_RPE_SETS: () => TRAINING_SIGNAL_MIN_RPE_SETS,
163
+ TRAINING_SIGNAL_MIN_SHORT_SETS: () => TRAINING_SIGNAL_MIN_SHORT_SETS,
164
+ TRAINING_SIGNAL_MIN_TARGET_SETS: () => TRAINING_SIGNAL_MIN_TARGET_SETS,
165
+ TRAINING_SIGNAL_PERIOD_DAYS: () => TRAINING_SIGNAL_PERIOD_DAYS,
166
+ TRAINING_SIGNAL_RPE_RISE: () => TRAINING_SIGNAL_RPE_RISE,
167
+ TRAINING_SIGNAL_SHORT_LIFTS_MAX: () => TRAINING_SIGNAL_SHORT_LIFTS_MAX,
168
+ TRAINING_SIGNAL_SHORT_POINTS_RISE: () => TRAINING_SIGNAL_SHORT_POINTS_RISE,
169
+ TRAINING_SIGNAL_WORKOUT_DROP: () => TRAINING_SIGNAL_WORKOUT_DROP,
154
170
  USERNAME_MAX_LENGTH: () => USERNAME_MAX_LENGTH,
155
171
  USERNAME_MIN_LENGTH: () => USERNAME_MIN_LENGTH,
156
172
  USERNAME_PATTERN_SOURCE: () => USERNAME_PATTERN_SOURCE,
@@ -648,6 +664,17 @@ function deloadLengthDays(startDate, endDate) {
648
664
  return Math.round((ms(endDate) - ms(startDate)) / 864e5) + 1;
649
665
  }
650
666
 
667
+ // src/deload-suggestions.ts
668
+ var DELOAD_SUGGESTION_EARLIER_DAYS = 7;
669
+ var DELOAD_SUGGESTION_MIN_MARKED_TODAY = 2;
670
+ var DELOAD_SUGGESTION_COOLDOWN_DAYS = 21;
671
+ var DELOAD_SUGGESTION_ROUTINE_DAYS = 14;
672
+ var DELOAD_SUGGESTION_SIGNALS = [
673
+ "EFFORT",
674
+ "REP_TARGETS",
675
+ "DECLINES"
676
+ ];
677
+
651
678
  // src/routine-sharing.ts
652
679
  var ROUTINE_VISIBILITY_VALUES = [
653
680
  "PRIVATE",
@@ -777,6 +804,19 @@ var PLATEAU_RECENT_DAYS = 21;
777
804
  var PLATEAU_MIN_SESSIONS_MIN = 3;
778
805
  var PLATEAU_MIN_SESSIONS_MAX = 8;
779
806
 
807
+ // src/training-signals.ts
808
+ var TRAINING_SIGNAL_PERIOD_DAYS = 14;
809
+ var TRAINING_SIGNAL_MIN_RPE_SETS = 10;
810
+ var TRAINING_SIGNAL_RPE_RISE = 0.5;
811
+ var TRAINING_SIGNAL_MIN_TARGET_SETS = 10;
812
+ var TRAINING_SIGNAL_SHORT_POINTS_RISE = 10;
813
+ var TRAINING_SIGNAL_MIN_SHORT_SETS = 3;
814
+ var TRAINING_SIGNAL_SHORT_LIFTS_MAX = 3;
815
+ var TRAINING_SIGNAL_DECLINE_SESSIONS = 3;
816
+ var TRAINING_SIGNAL_MIN_DECLINE = 0.025;
817
+ var TRAINING_SIGNAL_DECLINES_MAX = 5;
818
+ var TRAINING_SIGNAL_WORKOUT_DROP = 2;
819
+
780
820
  // src/notifications.ts
781
821
  var NOTIFICATION_KINDS = [
782
822
  "ACHIEVEMENT",
@@ -901,6 +941,11 @@ function accountExportFileName(username, exportedAt) {
901
941
  DELOAD_MAX_DAYS,
902
942
  DELOAD_NOT_LIGHTER,
903
943
  DELOAD_SET_MODES,
944
+ DELOAD_SUGGESTION_COOLDOWN_DAYS,
945
+ DELOAD_SUGGESTION_EARLIER_DAYS,
946
+ DELOAD_SUGGESTION_MIN_MARKED_TODAY,
947
+ DELOAD_SUGGESTION_ROUTINE_DAYS,
948
+ DELOAD_SUGGESTION_SIGNALS,
904
949
  EXERCISE_EQUIPMENT,
905
950
  EXERCISE_MECHANICS,
906
951
  FEATURED_PROFILE_ITEMS_MAX,
@@ -1001,6 +1046,17 @@ function accountExportFileName(username, exportedAt) {
1001
1046
  TRAINING_PARTNER_ENCOURAGEMENT_KINDS,
1002
1047
  TRAINING_PARTNER_PERMISSION_KEYS,
1003
1048
  TRAINING_PARTNER_REQUESTS_PER_DAY_MAX,
1049
+ TRAINING_SIGNAL_DECLINES_MAX,
1050
+ TRAINING_SIGNAL_DECLINE_SESSIONS,
1051
+ TRAINING_SIGNAL_MIN_DECLINE,
1052
+ TRAINING_SIGNAL_MIN_RPE_SETS,
1053
+ TRAINING_SIGNAL_MIN_SHORT_SETS,
1054
+ TRAINING_SIGNAL_MIN_TARGET_SETS,
1055
+ TRAINING_SIGNAL_PERIOD_DAYS,
1056
+ TRAINING_SIGNAL_RPE_RISE,
1057
+ TRAINING_SIGNAL_SHORT_LIFTS_MAX,
1058
+ TRAINING_SIGNAL_SHORT_POINTS_RISE,
1059
+ TRAINING_SIGNAL_WORKOUT_DROP,
1004
1060
  USERNAME_MAX_LENGTH,
1005
1061
  USERNAME_MIN_LENGTH,
1006
1062
  USERNAME_PATTERN_SOURCE,
package/dist/index.d.cts CHANGED
@@ -2074,6 +2074,71 @@ interface PersonalGoalsResponse {
2074
2074
  goals: PersonalGoalProgress[];
2075
2075
  }
2076
2076
 
2077
+ /**
2078
+ * INTEL-02: a lighter period proposed from the signals `PROG-10` states. The
2079
+ * suggestion acts on evidence only -- it names what was marked and when, never
2080
+ * a cause -- and nothing changes until the member saves the deload it opens.
2081
+ *
2082
+ * The signals are evaluated twice, today and as they stood
2083
+ * `DELOAD_SUGGESTION_EARLIER_DAYS` ago. A suggestion needs one load signal
2084
+ * (effort, rep targets or declining lifts) marked in both, or at least
2085
+ * `DELOAD_SUGGESTION_MIN_MARKED_TODAY` of them marked today. The workouts
2086
+ * signal never triggers one: training less is not a reason to train lighter.
2087
+ */
2088
+ declare const DELOAD_SUGGESTION_EARLIER_DAYS = 7;
2089
+ declare const DELOAD_SUGGESTION_MIN_MARKED_TODAY = 2;
2090
+ /** No suggestion while a deload ended less than this many days ago. */
2091
+ declare const DELOAD_SUGGESTION_COOLDOWN_DAYS = 21;
2092
+ /** The suggested routine is the active one trained most in these days. */
2093
+ declare const DELOAD_SUGGESTION_ROUTINE_DAYS = 14;
2094
+ declare const DELOAD_SUGGESTION_SIGNALS: readonly ["EFFORT", "REP_TARGETS", "DECLINES"];
2095
+ type DeloadSuggestionSignal = (typeof DELOAD_SUGGESTION_SIGNALS)[number];
2096
+ /** Why nothing is suggested; the page shows nothing in every case. */
2097
+ type DeloadSuggestionUnavailableReason =
2098
+ /** No load signal is sustained. */
2099
+ "NOT_SUSTAINED"
2100
+ /** A deload is in force or planned on any routine. */
2101
+ | "DELOAD_SCHEDULED"
2102
+ /** A deload ended within the cooldown. */
2103
+ | "RECENT_DELOAD"
2104
+ /** No active routine was trained in the routine window. */
2105
+ | "NO_ROUTINE"
2106
+ /** The routine plans nothing on the suggested dates. */
2107
+ | "NOTHING_PLANNED";
2108
+ interface DeloadSuggestionEvidence {
2109
+ signal: DeloadSuggestionSignal;
2110
+ markedNow: boolean;
2111
+ markedEarlier: boolean;
2112
+ }
2113
+ interface DeloadSuggestion {
2114
+ routineId: string;
2115
+ routineName: string;
2116
+ /** Owner-local calendar dates, inclusive, as a deload stores them. */
2117
+ startDate: string;
2118
+ endDate: string;
2119
+ lengthDays: number;
2120
+ /** The ROUT-16 defaults; the dialog lets the member change both. */
2121
+ loadReductionPercent: DeloadLoadReduction;
2122
+ setMode: DeloadSetMode;
2123
+ /** The training block the dates fall in, when one is in force. */
2124
+ trainingBlockName: string | null;
2125
+ }
2126
+ /** Stable successful response of GET /workouts/progress/deload-suggestion. */
2127
+ interface DeloadSuggestionResponse {
2128
+ asOf: IsoDateString;
2129
+ thresholds: {
2130
+ earlierDays: number;
2131
+ minMarkedToday: number;
2132
+ cooldownDays: number;
2133
+ routineDays: number;
2134
+ lengthDays: number;
2135
+ };
2136
+ /** One entry per load signal, in `DELOAD_SUGGESTION_SIGNALS` order. */
2137
+ evidence: DeloadSuggestionEvidence[];
2138
+ suggestion: DeloadSuggestion | null;
2139
+ unavailable: DeloadSuggestionUnavailableReason | null;
2140
+ }
2141
+
2077
2142
  /** Owner-declared, both optional. Undeclared is not a default, it is unknown. */
2078
2143
  interface RoutineClassification {
2079
2144
  goal?: TrainingGoal | null;
@@ -2583,6 +2648,141 @@ declare function sessionCorrectionWindow(input: {
2583
2648
  /** Whether two sets of values differ in anything a correction records. */
2584
2649
  declare function setLogValuesDiffer(a: SetLogValues, b: SetLogValues): boolean;
2585
2650
 
2651
+ /**
2652
+ * PROG-10: four measures from the owner's logged workouts, the last
2653
+ * `TRAINING_SIGNAL_PERIOD_DAYS` days beside the same number of days before.
2654
+ * They state what changed and never why: nothing here names a cause, and a
2655
+ * marked signal is a threshold crossed, not a conclusion.
2656
+ *
2657
+ * Every half is placed by when a workout ended, as `PROG-09` does. Deload
2658
+ * workouts (`ROUT-16`) are left out of effort, rep targets and declines,
2659
+ * because their lighter loads are planned; the workout count names them.
2660
+ */
2661
+ declare const TRAINING_SIGNAL_PERIOD_DAYS = 14;
2662
+ /** Effort: RPE sets needed in each half, on lifts logged with RPE in both. */
2663
+ declare const TRAINING_SIGNAL_MIN_RPE_SETS = 10;
2664
+ /** Effort is marked when the average RPE rises by at least this much. */
2665
+ declare const TRAINING_SIGNAL_RPE_RISE = 0.5;
2666
+ /** Rep targets: completed sets with a target needed in each half. */
2667
+ declare const TRAINING_SIGNAL_MIN_TARGET_SETS = 10;
2668
+ /** Marked when the short share rises by at least this many points... */
2669
+ declare const TRAINING_SIGNAL_SHORT_POINTS_RISE = 10;
2670
+ /** ...and at least this many sets in the last period fell short. */
2671
+ declare const TRAINING_SIGNAL_MIN_SHORT_SETS = 3;
2672
+ /** The lifts most often short in the last period, at most this many. */
2673
+ declare const TRAINING_SIGNAL_SHORT_LIFTS_MAX = 3;
2674
+ /** Declines: a lift's latest sessions compared, oldest first. */
2675
+ declare const TRAINING_SIGNAL_DECLINE_SESSIONS = 3;
2676
+ /** Listed when each session fell and the total fall is at least this share. */
2677
+ declare const TRAINING_SIGNAL_MIN_DECLINE = 0.025;
2678
+ /** Largest fall first, at most this many lifts. */
2679
+ declare const TRAINING_SIGNAL_DECLINES_MAX = 5;
2680
+ /** Workouts are marked when there were at least this many fewer. */
2681
+ declare const TRAINING_SIGNAL_WORKOUT_DROP = 2;
2682
+ interface TrainingSignalPeriod {
2683
+ /** Exclusive. */
2684
+ from: IsoDateString;
2685
+ /** Inclusive. */
2686
+ to: IsoDateString;
2687
+ }
2688
+ interface EffortPeriod {
2689
+ /** Rounded to one decimal. */
2690
+ averageRpe: number;
2691
+ sets: number;
2692
+ }
2693
+ interface EffortSignal {
2694
+ /** Null when either half has fewer than the minimum RPE sets. */
2695
+ comparison: {
2696
+ recent: EffortPeriod;
2697
+ previous: EffortPeriod;
2698
+ /** recent minus previous, both rounded first. */
2699
+ difference: number;
2700
+ /** Lifts logged with RPE in both halves: the only ones counted. */
2701
+ lifts: number;
2702
+ } | null;
2703
+ /** RPE sets on shared lifts, so a missing comparison can say how far off. */
2704
+ recentSets: number;
2705
+ previousSets: number;
2706
+ marked: boolean;
2707
+ }
2708
+ interface RepTargetPeriod {
2709
+ /** Completed sets below their target's floor. */
2710
+ shortSets: number;
2711
+ /** Completed sets with a rep target in the workout's own prescription. */
2712
+ targetedSets: number;
2713
+ /** Whole percent of targeted sets that were short. */
2714
+ shortPercent: number;
2715
+ }
2716
+ interface RepTargetSignal {
2717
+ recent: RepTargetPeriod;
2718
+ previous: RepTargetPeriod;
2719
+ /** Both halves reached the minimum targeted sets. */
2720
+ comparable: boolean;
2721
+ /** Most short sets first, in the last period only. */
2722
+ mostOften: Array<{
2723
+ exerciseId: string;
2724
+ exerciseName: string;
2725
+ shortSets: number;
2726
+ }>;
2727
+ marked: boolean;
2728
+ }
2729
+ interface DecliningLiftSession {
2730
+ sessionId: string;
2731
+ performedAt: IsoDateString;
2732
+ /** The session's best estimated 1RM of the lift, and the set behind it. */
2733
+ estimated1rmKg: number;
2734
+ weightKg: number;
2735
+ reps: number;
2736
+ }
2737
+ interface DecliningLift {
2738
+ exerciseId: string;
2739
+ exerciseName: string;
2740
+ /** Oldest first; each lower than the one before. */
2741
+ sessions: DecliningLiftSession[];
2742
+ /** (first - last) / first, to three decimals. */
2743
+ declineRatio: number;
2744
+ }
2745
+ interface DeclineSignal {
2746
+ /** Lifts with at least the compared sessions across both halves. */
2747
+ checkedLifts: number;
2748
+ lifts: DecliningLift[];
2749
+ marked: boolean;
2750
+ }
2751
+ interface WorkoutPeriod {
2752
+ /** Finished and ended-early workouts. */
2753
+ workouts: number;
2754
+ endedEarly: number;
2755
+ deloads: number;
2756
+ }
2757
+ interface WorkoutSignal {
2758
+ recent: WorkoutPeriod;
2759
+ previous: WorkoutPeriod;
2760
+ marked: boolean;
2761
+ }
2762
+ /** Stable successful response of GET /workouts/progress/signals. */
2763
+ interface TrainingSignalsResponse {
2764
+ asOf: IsoDateString;
2765
+ periods: {
2766
+ recent: TrainingSignalPeriod;
2767
+ previous: TrainingSignalPeriod;
2768
+ };
2769
+ thresholds: {
2770
+ periodDays: number;
2771
+ minRpeSets: number;
2772
+ rpeRise: number;
2773
+ minTargetSets: number;
2774
+ shortPointsRise: number;
2775
+ minShortSets: number;
2776
+ declineSessions: number;
2777
+ minDecline: number;
2778
+ workoutDrop: number;
2779
+ };
2780
+ effort: EffortSignal;
2781
+ repTargets: RepTargetSignal;
2782
+ declines: DeclineSignal;
2783
+ workouts: WorkoutSignal;
2784
+ }
2785
+
2586
2786
  /** SOC-08: one explicit grant from a member to their active training partner. */
2587
2787
  interface TrainingPartnerPermissions {
2588
2788
  schedule: boolean;
@@ -3172,4 +3372,4 @@ interface AccountExportV1 {
3172
3372
  /** The file name a download of the export is saved under. */
3173
3373
  declare function accountExportFileName(username: string, exportedAt: string): string;
3174
3374
 
3175
- export { ACCOUNT_EXPORT_FORMAT, ACCOUNT_EXPORT_VERSION, ACHIEVEMENT_CATEGORIES, ACHIEVEMENT_DEFINITIONS, ACTIVITY_CAPS, ACTIVITY_COMMENTS_PAGE_SIZE, ACTIVITY_COMMENTS_PER_DAY_MAX, ACTIVITY_COMMENT_MAX_LENGTH, ACTIVITY_DEFAULT_AUDIENCE, ACTIVITY_ENTRY_ID_MAX_LENGTH, ACTIVITY_FEED_FOLLOWED_MAX, ACTIVITY_PAGE_DEFAULT_LIMIT, ACTIVITY_PAGE_MAX_LIMIT, ACTIVITY_PREVIEW_AUDIENCES, ACTIVITY_REACTIONS, ACTIVITY_TYPES, ACTIVITY_TYPE_SECTIONS, type AccountExportGoal, type AccountExportMember, type AccountExportPersonalRecord, type AccountExportRoutine, type AccountExportScheduleOverride, type AccountExportTrainingEvent, type AccountExportTrainingLocation, type AccountExportV1, type AchievementActivity, type AchievementCategory, type AchievementCategoryProgress, type AchievementDefinition, type AchievementNotification, type AchievementUnlockedEventPayload, type AchievementsResponse, type ActivityAudience, type ActivityCap, type ActivityComment, type ActivityCommentNotification, type ActivityCommentSummary, type ActivityCommentsQuery, type ActivityCommentsResponse, type ActivityEntry, type ActivityEntrySharing, type ActivityFeedResponse, type ActivityLink, type ActivityPage, type ActivityPageQuery, type ActivityPreviewAudience, type ActivityPreviewQuery, type ActivityReaction, type ActivityReactionSummary, type ActivitySection, type ActivitySharingSettings, type ActivityType, type AppNotification, BLOCKED_MEMBERS_MAX, type BlockedMember, type BlockedMembersResponse, type Brand, CLONE_ROUTINE_REFUSALS, COMEBACK_MIN_INACTIVE_DAYS, COMEBACK_RECOGNITION_LIMIT, COMEBACK_REQUIRED_ACTIVE_DAYS, COMEBACK_SESSION_LOOKBACK, COMEBACK_WINDOW_DAYS, type CalendarDate, type CloneRoutineRefusal, type CloneRoutineRequest, type ComebackActivity, type ComebackRecognition, type ComebackRecognitionSummary, type CorrectSessionRequest, type CorrectSessionResponse, type CorrectSessionSetRequest, type CreateActivityCommentRequest, type CreateActivityCommentResponse, type CreateDeloadRequest, type CreateReportRequest, type CreateReportResponse, type CreateRoutineDayInput, type CreateRoutineExerciseInput, type CreateRoutineRequest, type CreateRoutineVersionRequest, type CreateSessionShareRequest, DELOAD_DEFAULT_DAYS, DELOAD_DEFAULT_LOAD_REDUCTION, DELOAD_DEFAULT_SET_MODE, DELOAD_LOAD_REDUCTIONS, DELOAD_MAX_DAYS, DELOAD_NOT_LIGHTER, DELOAD_SET_MODES, type DeleteAccountRequest, type DeleteAccountResponse, type DeleteActivityCommentResponse, type DeletePushSubscriptionRequest, type DeloadLoadReduction, type DeloadOptions, type DeloadSetMode, type DiscoverableRoutine, EXERCISE_EQUIPMENT, EXERCISE_MECHANICS, type EarnedAchievement, type EarnedPersonalRecord, type Exercise, type ExerciseEquipment, type ExerciseId, type ExerciseMechanic, type ExercisePerformanceHistoryQuery, type ExercisePerformanceHistoryResponse, type ExercisePerformancePrescription, type ExercisePerformancePrescriptionSet, type ExercisePerformanceSession, type ExercisePerformanceSet, type ExercisePerformanceSummary, type ExercisePlateau, type ExerciseStrengthSummary, type ExerciseStrengthTrendPoint, type ExerciseStrengthTrendQuery, type ExerciseStrengthTrendResponse, FEATURED_PROFILE_ITEMS_MAX, FEATURED_PROFILE_ITEM_KINDS, FEATURED_PROFILE_REFERENCE_MAX_LENGTH, FOLLOW_SUGGESTIONS_DEFAULT_LIMIT, FOLLOW_SUGGESTIONS_MAX_LIMIT, FOLLOW_SUGGESTION_REASONS, type FeaturedProfileAchievementItem, type FeaturedProfileItem, type FeaturedProfileItemKind, type FeaturedProfileRankItem, type FeaturedProfileRecordItem, type FeaturedProfileRoutineItem, type FeaturedProfileSelection, type FeaturedProfileSelectionInput, type FeaturedProfileSelectionsResponse, type FinishStatus, type FinishWorkoutRequest, type FinishWorkoutResponse, type FollowSuggestion, type FollowSuggestionReason, type FollowSuggestionsResponse, type IsoDateString, type ListSessionsParams, MEASURABLE_GOALS_MAX, MEASURABLE_GOAL_DIRECTIONS, MEASURABLE_GOAL_TYPES, MINUTES_IN_DAY, MODERATION_ACTION_KINDS, MODERATION_HISTORY_PAGE_SIZE, MODERATION_NOTE_MAX_LENGTH, MODERATION_QUEUE_PAGE_SIZE, MOVEMENT_PATTERNS, MUSCLE_GROUPS, type MarkNotificationsReadRequest, type MarkNotificationsReadResponse, type MeasurableGoal, type MeasurableGoalDirection, type MeasurableGoalExercise, type MeasurableGoalInput, type MeasurableGoalType, type MemberActivityResponse, type MemberModerationState, type MemberRoutinesResponse, type ModerationActionKind, type ModerationActionRecord, type ModerationHistoryQuery, type ModerationHistoryResponse, type ModerationQueueQuery, type ModerationQueueResponse, type ModerationReport, type ModeratorState, type MoveOccurrenceRequest, type MovementPattern, type MuscleGroup, type MuscleGroupHeatmapQuery, type MuscleGroupHeatmapResponse, type MuscleGroupHeatmapValue, type MuscleGroupHeatmapWeek, type MuscleVolumeTrendSeries, NOTIFICATIONS_LIST_LIMIT, NOTIFICATIONS_LOOKBACK_DAYS, NOTIFICATIONS_RETENTION_DAYS, NOTIFICATION_CATEGORIES, NOTIFICATION_KINDS, type NewFollowerNotification, type NotificationCategory, type NotificationKind, type NotificationPreferences, type NotificationPreferencesResponse, type NotificationsResponse, type OwnActivityEntry, type OwnActivityResponse, PLATEAU_MIN_DAYS_SINCE_BEST, PLATEAU_MIN_SESSIONS, PLATEAU_MIN_SESSIONS_MAX, PLATEAU_MIN_SESSIONS_MIN, PLATEAU_RECENT_DAYS, PLATEAU_WINDOW_DAYS, PREFERRED_TRAINING_STYLE_VALUES, PROFILE_BIO_MAX_LENGTH, PROFILE_FAVORITE_EXERCISES_MAX, PROFILE_LOCATION_MAX_LENGTH, PROFILE_TRAINING_DISCIPLINES_MAX, PROFILE_TRAINING_GOALS_MAX, PROFILE_VISIBILITY_VALUES, PROGRESSION_SCHEMES, PROGRESS_TIMELINE_EVENT_TYPES, PUSH_PAYLOAD_KINDS, PUSH_SUBSCRIPTIONS_MAX, type PaginatedResponse, type PersonalGoalProgress, type PersonalGoalsResponse, type PersonalRecordActivity, type PersonalRecordEntry, type PersonalRecordKind, type PlannedReminder, type PlatePairInventory, type PlateauPreferences, type PlateauSet, type PlateausResponse, type PreferredTrainingStyle, type PreviousPerformanceResponse, type PreviousSessionRecap, type PreviousSetPerformance, type ProfileDiscoverySettings, type ProfileFavoriteExercise, type ProfilePrivacySettings, type ProfileViewerAccess, type ProfileVisibility, type ProgressTimelineEventType, type ProgressTimelineItem, type ProgressTimelinePersonalRecordItem, type ProgressTimelineProgressionItem, type ProgressTimelineQuery, type ProgressTimelineRecordPerformance, type ProgressTimelineRecordReason, type ProgressTimelineResponse, type ProgressTimelineSessionContext, type ProgressionActivity, type ProgressionChange, type ProgressionRule, type ProgressionScheme, type ProgressionSetChange, type PublicBodyMetrics, type PublicProfileAchievements, type PublicTrainingSummary, type PublicUserProfile, type PushPayload, type PushPayloadKind, type PushSubscriptionKeys, type PushSubscriptionSummary, type PushSubscriptionsResponse, type QuietHours, RELATIONSHIP_LIST_DEFAULT_LIMIT, RELATIONSHIP_LIST_KINDS, RELATIONSHIP_LIST_MAX_LIMIT, RENAISSANCE_RANK_DEFINITIONS, REPORTS_PER_DAY_MAX, REPORT_DETAILS_MAX_LENGTH, REPORT_REASONS, REPORT_STATUSES, REPORT_SUBJECT_KINDS, REP_TYPES, RESERVED_USERNAMES, REST_ALERT_MAX_LEAD_SECONDS, REST_ALERT_MIN_LEAD_SECONDS, REST_ALERT_REFUSALS, ROUTINE_DAYS_MAX, ROUTINE_DAY_NAME_MAX, ROUTINE_DISCOVERY_DEFAULT_LIMIT, ROUTINE_DISCOVERY_MAX_LIMIT, ROUTINE_DISCOVERY_SCAN_LIMIT, ROUTINE_DURATION_BANDS, ROUTINE_DURATION_BAND_MAX_MINUTES, ROUTINE_SCHEDULE_MODES, ROUTINE_SHARE_MAX_ACTIVE_LINKS, ROUTINE_TRAINING_BLOCKS_MAX, ROUTINE_TRAINING_BLOCK_NAME_MAX, ROUTINE_TRAINING_BLOCK_REVISIONS_MAX, ROUTINE_TRAINING_BLOCK_SOURCE_KINDS, ROUTINE_TRAINING_BLOCK_STATES, ROUTINE_VERSIONS_MAX, ROUTINE_VERSION_KINDS, ROUTINE_VERSION_NAME_MAX, ROUTINE_VISIBILITY_VALUES, type RecentActivityEntry, type RegisterPushSubscriptionRequest, type RelationshipListKind, type RelationshipListQuery, type RelationshipListResponse, type RelationshipMember, type RenaissanceRankDefinition, type RenaissanceRankProgress, type RepType, type ReplaceFeaturedProfileItemsRequest, type ReplaceMeasurableGoalsRequest, type ReplaceTrainingLocationsRequest, type ReportReason, type ReportStatus, type ReportSubjectKind, type ReportSubjectPreview, type ResolvedRoutinePlan, type RestAlertPushPayload, type RestAlertRefusal, type RestoreRoutineVersionResponse, type ReviewReportRequest, type ReviewReportResponse, type Routine, type RoutineClassification, type RoutineDay, type RoutineDayId, type RoutineDiscoveryQuery, type RoutineDiscoveryResponse, type RoutineDurationBand, type RoutineExercise, type RoutineFacets, type RoutineId, type RoutineLineage, type RoutinePlanSource, type RoutineScheduleMode, type RoutineSet, type RoutineShare, type RoutineShareListResponse, type RoutineSharedActivity, type RoutineTemporaryOverride, type RoutineTemporaryOverridePlan, type RoutineTemporaryOverridesResponse, type RoutineTrainingBlock, type RoutineTrainingBlockPlan, type RoutineTrainingBlockRevision, type RoutineTrainingBlockRevisionsResponse, type RoutineTrainingBlockSource, type RoutineTrainingBlockSourceKind, type RoutineTrainingBlockState, type RoutineTrainingBlocksResponse, type RoutineVersion, type RoutineVersionDay, type RoutineVersionExercise, type RoutineVersionKind, type RoutineVersionSetup, type RoutineVersionsResponse, type RoutineVisibility, SCHEDULE_MOVE_MAX_DAYS, SCHEDULE_OVERRIDES_MAX_RANGE_DAYS, SCHEDULE_OVERRIDE_KINDS, SCHEDULE_SKIP_PAST_DAYS, SESSION_CORRECTIONS_MAX, SESSION_CORRECTION_LIMITS, SESSION_CORRECTION_WINDOW_HOURS, SESSION_EXERCISE_NOTE_MAX_LENGTH, SESSION_NOTE_MAX_LENGTH, SESSION_SHARE_DEFAULT_FIELDS, SESSION_SHARE_FIELDS, SESSION_SHARE_MAX_ACTIVE_LINKS, SEXES, SHARED_ROUTINE_SOURCES, STARRED_EXERCISES_MAX, STREAK_MAX_GAP_DAYS, type ScheduleOverride, type ScheduleOverrideKind, type ScheduleOverridesQuery, type ScheduleOverridesResponse, type ScheduleRestAlertRequest, type ScheduleRestAlertResponse, type SendTrainingPartnerEncouragementRequest, type SendTrainingPartnerEncouragementResponse, type SessionComparisonExercise, type SessionComparisonQuery, type SessionComparisonResponse, type SessionComparisonRoutineDay, type SessionComparisonSession, type SessionComparisonSet, type SessionCompletedActivity, type SessionCorrection, type SessionCorrectionClosedReason, type SessionCorrectionWindow, type SessionCorrectionsResponse, type SessionExerciseNote, type SessionExerciseSubstitution, type SessionProgressNotification, type SessionRecapExerciseNote, type SessionRecapRecord, type SessionSetCorrection, type SessionShare, type SessionShareField, type SessionShareListResponse, type SessionTemporaryOverride, type SessionTrainingBlock, type SetAccountTimeZoneRequest, type SetActivityEntryAudienceRequest, type SetActivityEntryAudienceResponse, type SetActivityReactionRequest, type SetActivityReactionResponse, type SetLog, type SetLogValues, type Sex, type SharedRoutine, type SharedRoutineOwner, type SharedRoutineSource, type SharedRoutineSummary, type SharedSessionOwner, type SharedSessionRecap, type SkipOccurrenceRequest, type StarredExercise, type StarredExercisesResponse, type StartWorkoutRequest, type StartWorkoutResponse, type StreakAtRiskPushPayload, type StreakMilestoneActivity, type StreakMilestoneEventPayload, type SubstituteSessionExerciseRequest, type SubstituteSessionExerciseResponse, type SupabaseAuthResponse, type SupabaseAuthUser, type SupabaseMigrationResponse, TEMPORARY_OVERRIDE_KINDS, TEMPORARY_OVERRIDE_SOURCE_KINDS, TRAINING_DISCIPLINE_VALUES, TRAINING_EVENT_TYPES, TRAINING_EXPERIENCE_LEVEL_VALUES, TRAINING_GOAL_VALUES, TRAINING_PARTNERSHIP_STATUSES, TRAINING_PARTNERS_MAX, TRAINING_PARTNER_ENCOURAGEMENTS_PER_24_HOURS_MAX, TRAINING_PARTNER_ENCOURAGEMENT_KINDS, TRAINING_PARTNER_PERMISSION_KEYS, TRAINING_PARTNER_REQUESTS_PER_DAY_MAX, type TemporaryOverrideKind, type TemporaryOverrideSource, type TemporaryOverrideSourceKind, type TrainingDiscipline, type TrainingEventType, type TrainingExperienceLevel, type TrainingGoal, type TrainingIdentity, type TrainingLocationPreference, type TrainingLocationPreferenceInput, type TrainingPartnerAchievementNotification, type TrainingPartnerAchievementPushPayload, type TrainingPartnerEncouragementKind, type TrainingPartnerEncouragementNotification, type TrainingPartnerPermissions, type TrainingPartnerScheduleDay, type TrainingPartnerScheduleResponse, type TrainingPartnerSessionNotification, type TrainingPartnerSessionPushPayload, type TrainingPartnership, type TrainingPartnershipStatus, type TrainingPartnershipsResponse, type TrainingReminderPreference, type TrainingReminderPushPayload, USERNAME_MAX_LENGTH, USERNAME_MIN_LENGTH, USERNAME_PATTERN_SOURCE, type UpdateActivitySharingRequest, type UpdateNotificationPreferencesRequest, type UpdateProfileDiscoveryRequest, type UpdateProfilePrivacyRequest, type UpdateProfileRequest, type UpdateRoutineRequest, type UpdateRoutineVisibilityRequest, type UpdateSessionNotesRequest, type UpdateSessionNotesResponse, type UpdateTrainingPartnerPermissionsRequest, type UpsertRoutineTrainingBlockRequest, type UpsertSetLogRequest, type UpsertSetLogResponse, type UserId, type UserProfile, type UserSearchResponse, type VolumeTrendPoint, type VolumeTrendQuery, type VolumeTrendResponse, type VolumeTrendSeries, WEIGHT_UNITS, WORKOUT_SESSION_STATUSES, type WeightUnit, type WorkoutAnalyticsStatus, type WorkoutProgressQuery, type WorkoutProgressResponse, type WorkoutSession, type WorkoutSessionId, type WorkoutSessionListResponse, type WorkoutSessionRecap, type WorkoutSessionSnapshotV1, type WorkoutSessionStatus, type WorkoutSessionSummary, type WorkoutStatsQuery, type WorkoutStatsResponse, accountExportFileName, applyDeload, deloadLengthDays, isWithinQuietHours, matchesDeletionConfirmation, resolveActiveTrainingBlock, resolveRoutinePlan, routineDayLabel, sessionCorrectionWindow, setLogValuesDiffer, trainingBlockCovers };
3375
+ export { ACCOUNT_EXPORT_FORMAT, ACCOUNT_EXPORT_VERSION, ACHIEVEMENT_CATEGORIES, ACHIEVEMENT_DEFINITIONS, ACTIVITY_CAPS, ACTIVITY_COMMENTS_PAGE_SIZE, ACTIVITY_COMMENTS_PER_DAY_MAX, ACTIVITY_COMMENT_MAX_LENGTH, ACTIVITY_DEFAULT_AUDIENCE, ACTIVITY_ENTRY_ID_MAX_LENGTH, ACTIVITY_FEED_FOLLOWED_MAX, ACTIVITY_PAGE_DEFAULT_LIMIT, ACTIVITY_PAGE_MAX_LIMIT, ACTIVITY_PREVIEW_AUDIENCES, ACTIVITY_REACTIONS, ACTIVITY_TYPES, ACTIVITY_TYPE_SECTIONS, type AccountExportGoal, type AccountExportMember, type AccountExportPersonalRecord, type AccountExportRoutine, type AccountExportScheduleOverride, type AccountExportTrainingEvent, type AccountExportTrainingLocation, type AccountExportV1, type AchievementActivity, type AchievementCategory, type AchievementCategoryProgress, type AchievementDefinition, type AchievementNotification, type AchievementUnlockedEventPayload, type AchievementsResponse, type ActivityAudience, type ActivityCap, type ActivityComment, type ActivityCommentNotification, type ActivityCommentSummary, type ActivityCommentsQuery, type ActivityCommentsResponse, type ActivityEntry, type ActivityEntrySharing, type ActivityFeedResponse, type ActivityLink, type ActivityPage, type ActivityPageQuery, type ActivityPreviewAudience, type ActivityPreviewQuery, type ActivityReaction, type ActivityReactionSummary, type ActivitySection, type ActivitySharingSettings, type ActivityType, type AppNotification, BLOCKED_MEMBERS_MAX, type BlockedMember, type BlockedMembersResponse, type Brand, CLONE_ROUTINE_REFUSALS, COMEBACK_MIN_INACTIVE_DAYS, COMEBACK_RECOGNITION_LIMIT, COMEBACK_REQUIRED_ACTIVE_DAYS, COMEBACK_SESSION_LOOKBACK, COMEBACK_WINDOW_DAYS, type CalendarDate, type CloneRoutineRefusal, type CloneRoutineRequest, type ComebackActivity, type ComebackRecognition, type ComebackRecognitionSummary, type CorrectSessionRequest, type CorrectSessionResponse, type CorrectSessionSetRequest, type CreateActivityCommentRequest, type CreateActivityCommentResponse, type CreateDeloadRequest, type CreateReportRequest, type CreateReportResponse, type CreateRoutineDayInput, type CreateRoutineExerciseInput, type CreateRoutineRequest, type CreateRoutineVersionRequest, type CreateSessionShareRequest, DELOAD_DEFAULT_DAYS, DELOAD_DEFAULT_LOAD_REDUCTION, DELOAD_DEFAULT_SET_MODE, DELOAD_LOAD_REDUCTIONS, DELOAD_MAX_DAYS, DELOAD_NOT_LIGHTER, DELOAD_SET_MODES, DELOAD_SUGGESTION_COOLDOWN_DAYS, DELOAD_SUGGESTION_EARLIER_DAYS, DELOAD_SUGGESTION_MIN_MARKED_TODAY, DELOAD_SUGGESTION_ROUTINE_DAYS, DELOAD_SUGGESTION_SIGNALS, type DeclineSignal, type DecliningLift, type DecliningLiftSession, type DeleteAccountRequest, type DeleteAccountResponse, type DeleteActivityCommentResponse, type DeletePushSubscriptionRequest, type DeloadLoadReduction, type DeloadOptions, type DeloadSetMode, type DeloadSuggestion, type DeloadSuggestionEvidence, type DeloadSuggestionResponse, type DeloadSuggestionSignal, type DeloadSuggestionUnavailableReason, type DiscoverableRoutine, EXERCISE_EQUIPMENT, EXERCISE_MECHANICS, type EarnedAchievement, type EarnedPersonalRecord, type EffortPeriod, type EffortSignal, type Exercise, type ExerciseEquipment, type ExerciseId, type ExerciseMechanic, type ExercisePerformanceHistoryQuery, type ExercisePerformanceHistoryResponse, type ExercisePerformancePrescription, type ExercisePerformancePrescriptionSet, type ExercisePerformanceSession, type ExercisePerformanceSet, type ExercisePerformanceSummary, type ExercisePlateau, type ExerciseStrengthSummary, type ExerciseStrengthTrendPoint, type ExerciseStrengthTrendQuery, type ExerciseStrengthTrendResponse, FEATURED_PROFILE_ITEMS_MAX, FEATURED_PROFILE_ITEM_KINDS, FEATURED_PROFILE_REFERENCE_MAX_LENGTH, FOLLOW_SUGGESTIONS_DEFAULT_LIMIT, FOLLOW_SUGGESTIONS_MAX_LIMIT, FOLLOW_SUGGESTION_REASONS, type FeaturedProfileAchievementItem, type FeaturedProfileItem, type FeaturedProfileItemKind, type FeaturedProfileRankItem, type FeaturedProfileRecordItem, type FeaturedProfileRoutineItem, type FeaturedProfileSelection, type FeaturedProfileSelectionInput, type FeaturedProfileSelectionsResponse, type FinishStatus, type FinishWorkoutRequest, type FinishWorkoutResponse, type FollowSuggestion, type FollowSuggestionReason, type FollowSuggestionsResponse, type IsoDateString, type ListSessionsParams, MEASURABLE_GOALS_MAX, MEASURABLE_GOAL_DIRECTIONS, MEASURABLE_GOAL_TYPES, MINUTES_IN_DAY, MODERATION_ACTION_KINDS, MODERATION_HISTORY_PAGE_SIZE, MODERATION_NOTE_MAX_LENGTH, MODERATION_QUEUE_PAGE_SIZE, MOVEMENT_PATTERNS, MUSCLE_GROUPS, type MarkNotificationsReadRequest, type MarkNotificationsReadResponse, type MeasurableGoal, type MeasurableGoalDirection, type MeasurableGoalExercise, type MeasurableGoalInput, type MeasurableGoalType, type MemberActivityResponse, type MemberModerationState, type MemberRoutinesResponse, type ModerationActionKind, type ModerationActionRecord, type ModerationHistoryQuery, type ModerationHistoryResponse, type ModerationQueueQuery, type ModerationQueueResponse, type ModerationReport, type ModeratorState, type MoveOccurrenceRequest, type MovementPattern, type MuscleGroup, type MuscleGroupHeatmapQuery, type MuscleGroupHeatmapResponse, type MuscleGroupHeatmapValue, type MuscleGroupHeatmapWeek, type MuscleVolumeTrendSeries, NOTIFICATIONS_LIST_LIMIT, NOTIFICATIONS_LOOKBACK_DAYS, NOTIFICATIONS_RETENTION_DAYS, NOTIFICATION_CATEGORIES, NOTIFICATION_KINDS, type NewFollowerNotification, type NotificationCategory, type NotificationKind, type NotificationPreferences, type NotificationPreferencesResponse, type NotificationsResponse, type OwnActivityEntry, type OwnActivityResponse, PLATEAU_MIN_DAYS_SINCE_BEST, PLATEAU_MIN_SESSIONS, PLATEAU_MIN_SESSIONS_MAX, PLATEAU_MIN_SESSIONS_MIN, PLATEAU_RECENT_DAYS, PLATEAU_WINDOW_DAYS, PREFERRED_TRAINING_STYLE_VALUES, PROFILE_BIO_MAX_LENGTH, PROFILE_FAVORITE_EXERCISES_MAX, PROFILE_LOCATION_MAX_LENGTH, PROFILE_TRAINING_DISCIPLINES_MAX, PROFILE_TRAINING_GOALS_MAX, PROFILE_VISIBILITY_VALUES, PROGRESSION_SCHEMES, PROGRESS_TIMELINE_EVENT_TYPES, PUSH_PAYLOAD_KINDS, PUSH_SUBSCRIPTIONS_MAX, type PaginatedResponse, type PersonalGoalProgress, type PersonalGoalsResponse, type PersonalRecordActivity, type PersonalRecordEntry, type PersonalRecordKind, type PlannedReminder, type PlatePairInventory, type PlateauPreferences, type PlateauSet, type PlateausResponse, type PreferredTrainingStyle, type PreviousPerformanceResponse, type PreviousSessionRecap, type PreviousSetPerformance, type ProfileDiscoverySettings, type ProfileFavoriteExercise, type ProfilePrivacySettings, type ProfileViewerAccess, type ProfileVisibility, type ProgressTimelineEventType, type ProgressTimelineItem, type ProgressTimelinePersonalRecordItem, type ProgressTimelineProgressionItem, type ProgressTimelineQuery, type ProgressTimelineRecordPerformance, type ProgressTimelineRecordReason, type ProgressTimelineResponse, type ProgressTimelineSessionContext, type ProgressionActivity, type ProgressionChange, type ProgressionRule, type ProgressionScheme, type ProgressionSetChange, type PublicBodyMetrics, type PublicProfileAchievements, type PublicTrainingSummary, type PublicUserProfile, type PushPayload, type PushPayloadKind, type PushSubscriptionKeys, type PushSubscriptionSummary, type PushSubscriptionsResponse, type QuietHours, RELATIONSHIP_LIST_DEFAULT_LIMIT, RELATIONSHIP_LIST_KINDS, RELATIONSHIP_LIST_MAX_LIMIT, RENAISSANCE_RANK_DEFINITIONS, REPORTS_PER_DAY_MAX, REPORT_DETAILS_MAX_LENGTH, REPORT_REASONS, REPORT_STATUSES, REPORT_SUBJECT_KINDS, REP_TYPES, RESERVED_USERNAMES, REST_ALERT_MAX_LEAD_SECONDS, REST_ALERT_MIN_LEAD_SECONDS, REST_ALERT_REFUSALS, ROUTINE_DAYS_MAX, ROUTINE_DAY_NAME_MAX, ROUTINE_DISCOVERY_DEFAULT_LIMIT, ROUTINE_DISCOVERY_MAX_LIMIT, ROUTINE_DISCOVERY_SCAN_LIMIT, ROUTINE_DURATION_BANDS, ROUTINE_DURATION_BAND_MAX_MINUTES, ROUTINE_SCHEDULE_MODES, ROUTINE_SHARE_MAX_ACTIVE_LINKS, ROUTINE_TRAINING_BLOCKS_MAX, ROUTINE_TRAINING_BLOCK_NAME_MAX, ROUTINE_TRAINING_BLOCK_REVISIONS_MAX, ROUTINE_TRAINING_BLOCK_SOURCE_KINDS, ROUTINE_TRAINING_BLOCK_STATES, ROUTINE_VERSIONS_MAX, ROUTINE_VERSION_KINDS, ROUTINE_VERSION_NAME_MAX, ROUTINE_VISIBILITY_VALUES, type RecentActivityEntry, type RegisterPushSubscriptionRequest, type RelationshipListKind, type RelationshipListQuery, type RelationshipListResponse, type RelationshipMember, type RenaissanceRankDefinition, type RenaissanceRankProgress, type RepTargetPeriod, type RepTargetSignal, type RepType, type ReplaceFeaturedProfileItemsRequest, type ReplaceMeasurableGoalsRequest, type ReplaceTrainingLocationsRequest, type ReportReason, type ReportStatus, type ReportSubjectKind, type ReportSubjectPreview, type ResolvedRoutinePlan, type RestAlertPushPayload, type RestAlertRefusal, type RestoreRoutineVersionResponse, type ReviewReportRequest, type ReviewReportResponse, type Routine, type RoutineClassification, type RoutineDay, type RoutineDayId, type RoutineDiscoveryQuery, type RoutineDiscoveryResponse, type RoutineDurationBand, type RoutineExercise, type RoutineFacets, type RoutineId, type RoutineLineage, type RoutinePlanSource, type RoutineScheduleMode, type RoutineSet, type RoutineShare, type RoutineShareListResponse, type RoutineSharedActivity, type RoutineTemporaryOverride, type RoutineTemporaryOverridePlan, type RoutineTemporaryOverridesResponse, type RoutineTrainingBlock, type RoutineTrainingBlockPlan, type RoutineTrainingBlockRevision, type RoutineTrainingBlockRevisionsResponse, type RoutineTrainingBlockSource, type RoutineTrainingBlockSourceKind, type RoutineTrainingBlockState, type RoutineTrainingBlocksResponse, type RoutineVersion, type RoutineVersionDay, type RoutineVersionExercise, type RoutineVersionKind, type RoutineVersionSetup, type RoutineVersionsResponse, type RoutineVisibility, SCHEDULE_MOVE_MAX_DAYS, SCHEDULE_OVERRIDES_MAX_RANGE_DAYS, SCHEDULE_OVERRIDE_KINDS, SCHEDULE_SKIP_PAST_DAYS, SESSION_CORRECTIONS_MAX, SESSION_CORRECTION_LIMITS, SESSION_CORRECTION_WINDOW_HOURS, SESSION_EXERCISE_NOTE_MAX_LENGTH, SESSION_NOTE_MAX_LENGTH, SESSION_SHARE_DEFAULT_FIELDS, SESSION_SHARE_FIELDS, SESSION_SHARE_MAX_ACTIVE_LINKS, SEXES, SHARED_ROUTINE_SOURCES, STARRED_EXERCISES_MAX, STREAK_MAX_GAP_DAYS, type ScheduleOverride, type ScheduleOverrideKind, type ScheduleOverridesQuery, type ScheduleOverridesResponse, type ScheduleRestAlertRequest, type ScheduleRestAlertResponse, type SendTrainingPartnerEncouragementRequest, type SendTrainingPartnerEncouragementResponse, type SessionComparisonExercise, type SessionComparisonQuery, type SessionComparisonResponse, type SessionComparisonRoutineDay, type SessionComparisonSession, type SessionComparisonSet, type SessionCompletedActivity, type SessionCorrection, type SessionCorrectionClosedReason, type SessionCorrectionWindow, type SessionCorrectionsResponse, type SessionExerciseNote, type SessionExerciseSubstitution, type SessionProgressNotification, type SessionRecapExerciseNote, type SessionRecapRecord, type SessionSetCorrection, type SessionShare, type SessionShareField, type SessionShareListResponse, type SessionTemporaryOverride, type SessionTrainingBlock, type SetAccountTimeZoneRequest, type SetActivityEntryAudienceRequest, type SetActivityEntryAudienceResponse, type SetActivityReactionRequest, type SetActivityReactionResponse, type SetLog, type SetLogValues, type Sex, type SharedRoutine, type SharedRoutineOwner, type SharedRoutineSource, type SharedRoutineSummary, type SharedSessionOwner, type SharedSessionRecap, type SkipOccurrenceRequest, type StarredExercise, type StarredExercisesResponse, type StartWorkoutRequest, type StartWorkoutResponse, type StreakAtRiskPushPayload, type StreakMilestoneActivity, type StreakMilestoneEventPayload, type SubstituteSessionExerciseRequest, type SubstituteSessionExerciseResponse, type SupabaseAuthResponse, type SupabaseAuthUser, type SupabaseMigrationResponse, TEMPORARY_OVERRIDE_KINDS, TEMPORARY_OVERRIDE_SOURCE_KINDS, TRAINING_DISCIPLINE_VALUES, TRAINING_EVENT_TYPES, TRAINING_EXPERIENCE_LEVEL_VALUES, TRAINING_GOAL_VALUES, TRAINING_PARTNERSHIP_STATUSES, TRAINING_PARTNERS_MAX, TRAINING_PARTNER_ENCOURAGEMENTS_PER_24_HOURS_MAX, TRAINING_PARTNER_ENCOURAGEMENT_KINDS, TRAINING_PARTNER_PERMISSION_KEYS, TRAINING_PARTNER_REQUESTS_PER_DAY_MAX, TRAINING_SIGNAL_DECLINES_MAX, TRAINING_SIGNAL_DECLINE_SESSIONS, TRAINING_SIGNAL_MIN_DECLINE, TRAINING_SIGNAL_MIN_RPE_SETS, TRAINING_SIGNAL_MIN_SHORT_SETS, TRAINING_SIGNAL_MIN_TARGET_SETS, TRAINING_SIGNAL_PERIOD_DAYS, TRAINING_SIGNAL_RPE_RISE, TRAINING_SIGNAL_SHORT_LIFTS_MAX, TRAINING_SIGNAL_SHORT_POINTS_RISE, TRAINING_SIGNAL_WORKOUT_DROP, type TemporaryOverrideKind, type TemporaryOverrideSource, type TemporaryOverrideSourceKind, type TrainingDiscipline, type TrainingEventType, type TrainingExperienceLevel, type TrainingGoal, type TrainingIdentity, type TrainingLocationPreference, type TrainingLocationPreferenceInput, type TrainingPartnerAchievementNotification, type TrainingPartnerAchievementPushPayload, type TrainingPartnerEncouragementKind, type TrainingPartnerEncouragementNotification, type TrainingPartnerPermissions, type TrainingPartnerScheduleDay, type TrainingPartnerScheduleResponse, type TrainingPartnerSessionNotification, type TrainingPartnerSessionPushPayload, type TrainingPartnership, type TrainingPartnershipStatus, type TrainingPartnershipsResponse, type TrainingReminderPreference, type TrainingReminderPushPayload, type TrainingSignalPeriod, type TrainingSignalsResponse, USERNAME_MAX_LENGTH, USERNAME_MIN_LENGTH, USERNAME_PATTERN_SOURCE, type UpdateActivitySharingRequest, type UpdateNotificationPreferencesRequest, type UpdateProfileDiscoveryRequest, type UpdateProfilePrivacyRequest, type UpdateProfileRequest, type UpdateRoutineRequest, type UpdateRoutineVisibilityRequest, type UpdateSessionNotesRequest, type UpdateSessionNotesResponse, type UpdateTrainingPartnerPermissionsRequest, type UpsertRoutineTrainingBlockRequest, type UpsertSetLogRequest, type UpsertSetLogResponse, type UserId, type UserProfile, type UserSearchResponse, type VolumeTrendPoint, type VolumeTrendQuery, type VolumeTrendResponse, type VolumeTrendSeries, WEIGHT_UNITS, WORKOUT_SESSION_STATUSES, type WeightUnit, type WorkoutAnalyticsStatus, type WorkoutPeriod, type WorkoutProgressQuery, type WorkoutProgressResponse, type WorkoutSession, type WorkoutSessionId, type WorkoutSessionListResponse, type WorkoutSessionRecap, type WorkoutSessionSnapshotV1, type WorkoutSessionStatus, type WorkoutSessionSummary, type WorkoutSignal, type WorkoutStatsQuery, type WorkoutStatsResponse, accountExportFileName, applyDeload, deloadLengthDays, isWithinQuietHours, matchesDeletionConfirmation, resolveActiveTrainingBlock, resolveRoutinePlan, routineDayLabel, sessionCorrectionWindow, setLogValuesDiffer, trainingBlockCovers };
package/dist/index.d.ts CHANGED
@@ -2074,6 +2074,71 @@ interface PersonalGoalsResponse {
2074
2074
  goals: PersonalGoalProgress[];
2075
2075
  }
2076
2076
 
2077
+ /**
2078
+ * INTEL-02: a lighter period proposed from the signals `PROG-10` states. The
2079
+ * suggestion acts on evidence only -- it names what was marked and when, never
2080
+ * a cause -- and nothing changes until the member saves the deload it opens.
2081
+ *
2082
+ * The signals are evaluated twice, today and as they stood
2083
+ * `DELOAD_SUGGESTION_EARLIER_DAYS` ago. A suggestion needs one load signal
2084
+ * (effort, rep targets or declining lifts) marked in both, or at least
2085
+ * `DELOAD_SUGGESTION_MIN_MARKED_TODAY` of them marked today. The workouts
2086
+ * signal never triggers one: training less is not a reason to train lighter.
2087
+ */
2088
+ declare const DELOAD_SUGGESTION_EARLIER_DAYS = 7;
2089
+ declare const DELOAD_SUGGESTION_MIN_MARKED_TODAY = 2;
2090
+ /** No suggestion while a deload ended less than this many days ago. */
2091
+ declare const DELOAD_SUGGESTION_COOLDOWN_DAYS = 21;
2092
+ /** The suggested routine is the active one trained most in these days. */
2093
+ declare const DELOAD_SUGGESTION_ROUTINE_DAYS = 14;
2094
+ declare const DELOAD_SUGGESTION_SIGNALS: readonly ["EFFORT", "REP_TARGETS", "DECLINES"];
2095
+ type DeloadSuggestionSignal = (typeof DELOAD_SUGGESTION_SIGNALS)[number];
2096
+ /** Why nothing is suggested; the page shows nothing in every case. */
2097
+ type DeloadSuggestionUnavailableReason =
2098
+ /** No load signal is sustained. */
2099
+ "NOT_SUSTAINED"
2100
+ /** A deload is in force or planned on any routine. */
2101
+ | "DELOAD_SCHEDULED"
2102
+ /** A deload ended within the cooldown. */
2103
+ | "RECENT_DELOAD"
2104
+ /** No active routine was trained in the routine window. */
2105
+ | "NO_ROUTINE"
2106
+ /** The routine plans nothing on the suggested dates. */
2107
+ | "NOTHING_PLANNED";
2108
+ interface DeloadSuggestionEvidence {
2109
+ signal: DeloadSuggestionSignal;
2110
+ markedNow: boolean;
2111
+ markedEarlier: boolean;
2112
+ }
2113
+ interface DeloadSuggestion {
2114
+ routineId: string;
2115
+ routineName: string;
2116
+ /** Owner-local calendar dates, inclusive, as a deload stores them. */
2117
+ startDate: string;
2118
+ endDate: string;
2119
+ lengthDays: number;
2120
+ /** The ROUT-16 defaults; the dialog lets the member change both. */
2121
+ loadReductionPercent: DeloadLoadReduction;
2122
+ setMode: DeloadSetMode;
2123
+ /** The training block the dates fall in, when one is in force. */
2124
+ trainingBlockName: string | null;
2125
+ }
2126
+ /** Stable successful response of GET /workouts/progress/deload-suggestion. */
2127
+ interface DeloadSuggestionResponse {
2128
+ asOf: IsoDateString;
2129
+ thresholds: {
2130
+ earlierDays: number;
2131
+ minMarkedToday: number;
2132
+ cooldownDays: number;
2133
+ routineDays: number;
2134
+ lengthDays: number;
2135
+ };
2136
+ /** One entry per load signal, in `DELOAD_SUGGESTION_SIGNALS` order. */
2137
+ evidence: DeloadSuggestionEvidence[];
2138
+ suggestion: DeloadSuggestion | null;
2139
+ unavailable: DeloadSuggestionUnavailableReason | null;
2140
+ }
2141
+
2077
2142
  /** Owner-declared, both optional. Undeclared is not a default, it is unknown. */
2078
2143
  interface RoutineClassification {
2079
2144
  goal?: TrainingGoal | null;
@@ -2583,6 +2648,141 @@ declare function sessionCorrectionWindow(input: {
2583
2648
  /** Whether two sets of values differ in anything a correction records. */
2584
2649
  declare function setLogValuesDiffer(a: SetLogValues, b: SetLogValues): boolean;
2585
2650
 
2651
+ /**
2652
+ * PROG-10: four measures from the owner's logged workouts, the last
2653
+ * `TRAINING_SIGNAL_PERIOD_DAYS` days beside the same number of days before.
2654
+ * They state what changed and never why: nothing here names a cause, and a
2655
+ * marked signal is a threshold crossed, not a conclusion.
2656
+ *
2657
+ * Every half is placed by when a workout ended, as `PROG-09` does. Deload
2658
+ * workouts (`ROUT-16`) are left out of effort, rep targets and declines,
2659
+ * because their lighter loads are planned; the workout count names them.
2660
+ */
2661
+ declare const TRAINING_SIGNAL_PERIOD_DAYS = 14;
2662
+ /** Effort: RPE sets needed in each half, on lifts logged with RPE in both. */
2663
+ declare const TRAINING_SIGNAL_MIN_RPE_SETS = 10;
2664
+ /** Effort is marked when the average RPE rises by at least this much. */
2665
+ declare const TRAINING_SIGNAL_RPE_RISE = 0.5;
2666
+ /** Rep targets: completed sets with a target needed in each half. */
2667
+ declare const TRAINING_SIGNAL_MIN_TARGET_SETS = 10;
2668
+ /** Marked when the short share rises by at least this many points... */
2669
+ declare const TRAINING_SIGNAL_SHORT_POINTS_RISE = 10;
2670
+ /** ...and at least this many sets in the last period fell short. */
2671
+ declare const TRAINING_SIGNAL_MIN_SHORT_SETS = 3;
2672
+ /** The lifts most often short in the last period, at most this many. */
2673
+ declare const TRAINING_SIGNAL_SHORT_LIFTS_MAX = 3;
2674
+ /** Declines: a lift's latest sessions compared, oldest first. */
2675
+ declare const TRAINING_SIGNAL_DECLINE_SESSIONS = 3;
2676
+ /** Listed when each session fell and the total fall is at least this share. */
2677
+ declare const TRAINING_SIGNAL_MIN_DECLINE = 0.025;
2678
+ /** Largest fall first, at most this many lifts. */
2679
+ declare const TRAINING_SIGNAL_DECLINES_MAX = 5;
2680
+ /** Workouts are marked when there were at least this many fewer. */
2681
+ declare const TRAINING_SIGNAL_WORKOUT_DROP = 2;
2682
+ interface TrainingSignalPeriod {
2683
+ /** Exclusive. */
2684
+ from: IsoDateString;
2685
+ /** Inclusive. */
2686
+ to: IsoDateString;
2687
+ }
2688
+ interface EffortPeriod {
2689
+ /** Rounded to one decimal. */
2690
+ averageRpe: number;
2691
+ sets: number;
2692
+ }
2693
+ interface EffortSignal {
2694
+ /** Null when either half has fewer than the minimum RPE sets. */
2695
+ comparison: {
2696
+ recent: EffortPeriod;
2697
+ previous: EffortPeriod;
2698
+ /** recent minus previous, both rounded first. */
2699
+ difference: number;
2700
+ /** Lifts logged with RPE in both halves: the only ones counted. */
2701
+ lifts: number;
2702
+ } | null;
2703
+ /** RPE sets on shared lifts, so a missing comparison can say how far off. */
2704
+ recentSets: number;
2705
+ previousSets: number;
2706
+ marked: boolean;
2707
+ }
2708
+ interface RepTargetPeriod {
2709
+ /** Completed sets below their target's floor. */
2710
+ shortSets: number;
2711
+ /** Completed sets with a rep target in the workout's own prescription. */
2712
+ targetedSets: number;
2713
+ /** Whole percent of targeted sets that were short. */
2714
+ shortPercent: number;
2715
+ }
2716
+ interface RepTargetSignal {
2717
+ recent: RepTargetPeriod;
2718
+ previous: RepTargetPeriod;
2719
+ /** Both halves reached the minimum targeted sets. */
2720
+ comparable: boolean;
2721
+ /** Most short sets first, in the last period only. */
2722
+ mostOften: Array<{
2723
+ exerciseId: string;
2724
+ exerciseName: string;
2725
+ shortSets: number;
2726
+ }>;
2727
+ marked: boolean;
2728
+ }
2729
+ interface DecliningLiftSession {
2730
+ sessionId: string;
2731
+ performedAt: IsoDateString;
2732
+ /** The session's best estimated 1RM of the lift, and the set behind it. */
2733
+ estimated1rmKg: number;
2734
+ weightKg: number;
2735
+ reps: number;
2736
+ }
2737
+ interface DecliningLift {
2738
+ exerciseId: string;
2739
+ exerciseName: string;
2740
+ /** Oldest first; each lower than the one before. */
2741
+ sessions: DecliningLiftSession[];
2742
+ /** (first - last) / first, to three decimals. */
2743
+ declineRatio: number;
2744
+ }
2745
+ interface DeclineSignal {
2746
+ /** Lifts with at least the compared sessions across both halves. */
2747
+ checkedLifts: number;
2748
+ lifts: DecliningLift[];
2749
+ marked: boolean;
2750
+ }
2751
+ interface WorkoutPeriod {
2752
+ /** Finished and ended-early workouts. */
2753
+ workouts: number;
2754
+ endedEarly: number;
2755
+ deloads: number;
2756
+ }
2757
+ interface WorkoutSignal {
2758
+ recent: WorkoutPeriod;
2759
+ previous: WorkoutPeriod;
2760
+ marked: boolean;
2761
+ }
2762
+ /** Stable successful response of GET /workouts/progress/signals. */
2763
+ interface TrainingSignalsResponse {
2764
+ asOf: IsoDateString;
2765
+ periods: {
2766
+ recent: TrainingSignalPeriod;
2767
+ previous: TrainingSignalPeriod;
2768
+ };
2769
+ thresholds: {
2770
+ periodDays: number;
2771
+ minRpeSets: number;
2772
+ rpeRise: number;
2773
+ minTargetSets: number;
2774
+ shortPointsRise: number;
2775
+ minShortSets: number;
2776
+ declineSessions: number;
2777
+ minDecline: number;
2778
+ workoutDrop: number;
2779
+ };
2780
+ effort: EffortSignal;
2781
+ repTargets: RepTargetSignal;
2782
+ declines: DeclineSignal;
2783
+ workouts: WorkoutSignal;
2784
+ }
2785
+
2586
2786
  /** SOC-08: one explicit grant from a member to their active training partner. */
2587
2787
  interface TrainingPartnerPermissions {
2588
2788
  schedule: boolean;
@@ -3172,4 +3372,4 @@ interface AccountExportV1 {
3172
3372
  /** The file name a download of the export is saved under. */
3173
3373
  declare function accountExportFileName(username: string, exportedAt: string): string;
3174
3374
 
3175
- export { ACCOUNT_EXPORT_FORMAT, ACCOUNT_EXPORT_VERSION, ACHIEVEMENT_CATEGORIES, ACHIEVEMENT_DEFINITIONS, ACTIVITY_CAPS, ACTIVITY_COMMENTS_PAGE_SIZE, ACTIVITY_COMMENTS_PER_DAY_MAX, ACTIVITY_COMMENT_MAX_LENGTH, ACTIVITY_DEFAULT_AUDIENCE, ACTIVITY_ENTRY_ID_MAX_LENGTH, ACTIVITY_FEED_FOLLOWED_MAX, ACTIVITY_PAGE_DEFAULT_LIMIT, ACTIVITY_PAGE_MAX_LIMIT, ACTIVITY_PREVIEW_AUDIENCES, ACTIVITY_REACTIONS, ACTIVITY_TYPES, ACTIVITY_TYPE_SECTIONS, type AccountExportGoal, type AccountExportMember, type AccountExportPersonalRecord, type AccountExportRoutine, type AccountExportScheduleOverride, type AccountExportTrainingEvent, type AccountExportTrainingLocation, type AccountExportV1, type AchievementActivity, type AchievementCategory, type AchievementCategoryProgress, type AchievementDefinition, type AchievementNotification, type AchievementUnlockedEventPayload, type AchievementsResponse, type ActivityAudience, type ActivityCap, type ActivityComment, type ActivityCommentNotification, type ActivityCommentSummary, type ActivityCommentsQuery, type ActivityCommentsResponse, type ActivityEntry, type ActivityEntrySharing, type ActivityFeedResponse, type ActivityLink, type ActivityPage, type ActivityPageQuery, type ActivityPreviewAudience, type ActivityPreviewQuery, type ActivityReaction, type ActivityReactionSummary, type ActivitySection, type ActivitySharingSettings, type ActivityType, type AppNotification, BLOCKED_MEMBERS_MAX, type BlockedMember, type BlockedMembersResponse, type Brand, CLONE_ROUTINE_REFUSALS, COMEBACK_MIN_INACTIVE_DAYS, COMEBACK_RECOGNITION_LIMIT, COMEBACK_REQUIRED_ACTIVE_DAYS, COMEBACK_SESSION_LOOKBACK, COMEBACK_WINDOW_DAYS, type CalendarDate, type CloneRoutineRefusal, type CloneRoutineRequest, type ComebackActivity, type ComebackRecognition, type ComebackRecognitionSummary, type CorrectSessionRequest, type CorrectSessionResponse, type CorrectSessionSetRequest, type CreateActivityCommentRequest, type CreateActivityCommentResponse, type CreateDeloadRequest, type CreateReportRequest, type CreateReportResponse, type CreateRoutineDayInput, type CreateRoutineExerciseInput, type CreateRoutineRequest, type CreateRoutineVersionRequest, type CreateSessionShareRequest, DELOAD_DEFAULT_DAYS, DELOAD_DEFAULT_LOAD_REDUCTION, DELOAD_DEFAULT_SET_MODE, DELOAD_LOAD_REDUCTIONS, DELOAD_MAX_DAYS, DELOAD_NOT_LIGHTER, DELOAD_SET_MODES, type DeleteAccountRequest, type DeleteAccountResponse, type DeleteActivityCommentResponse, type DeletePushSubscriptionRequest, type DeloadLoadReduction, type DeloadOptions, type DeloadSetMode, type DiscoverableRoutine, EXERCISE_EQUIPMENT, EXERCISE_MECHANICS, type EarnedAchievement, type EarnedPersonalRecord, type Exercise, type ExerciseEquipment, type ExerciseId, type ExerciseMechanic, type ExercisePerformanceHistoryQuery, type ExercisePerformanceHistoryResponse, type ExercisePerformancePrescription, type ExercisePerformancePrescriptionSet, type ExercisePerformanceSession, type ExercisePerformanceSet, type ExercisePerformanceSummary, type ExercisePlateau, type ExerciseStrengthSummary, type ExerciseStrengthTrendPoint, type ExerciseStrengthTrendQuery, type ExerciseStrengthTrendResponse, FEATURED_PROFILE_ITEMS_MAX, FEATURED_PROFILE_ITEM_KINDS, FEATURED_PROFILE_REFERENCE_MAX_LENGTH, FOLLOW_SUGGESTIONS_DEFAULT_LIMIT, FOLLOW_SUGGESTIONS_MAX_LIMIT, FOLLOW_SUGGESTION_REASONS, type FeaturedProfileAchievementItem, type FeaturedProfileItem, type FeaturedProfileItemKind, type FeaturedProfileRankItem, type FeaturedProfileRecordItem, type FeaturedProfileRoutineItem, type FeaturedProfileSelection, type FeaturedProfileSelectionInput, type FeaturedProfileSelectionsResponse, type FinishStatus, type FinishWorkoutRequest, type FinishWorkoutResponse, type FollowSuggestion, type FollowSuggestionReason, type FollowSuggestionsResponse, type IsoDateString, type ListSessionsParams, MEASURABLE_GOALS_MAX, MEASURABLE_GOAL_DIRECTIONS, MEASURABLE_GOAL_TYPES, MINUTES_IN_DAY, MODERATION_ACTION_KINDS, MODERATION_HISTORY_PAGE_SIZE, MODERATION_NOTE_MAX_LENGTH, MODERATION_QUEUE_PAGE_SIZE, MOVEMENT_PATTERNS, MUSCLE_GROUPS, type MarkNotificationsReadRequest, type MarkNotificationsReadResponse, type MeasurableGoal, type MeasurableGoalDirection, type MeasurableGoalExercise, type MeasurableGoalInput, type MeasurableGoalType, type MemberActivityResponse, type MemberModerationState, type MemberRoutinesResponse, type ModerationActionKind, type ModerationActionRecord, type ModerationHistoryQuery, type ModerationHistoryResponse, type ModerationQueueQuery, type ModerationQueueResponse, type ModerationReport, type ModeratorState, type MoveOccurrenceRequest, type MovementPattern, type MuscleGroup, type MuscleGroupHeatmapQuery, type MuscleGroupHeatmapResponse, type MuscleGroupHeatmapValue, type MuscleGroupHeatmapWeek, type MuscleVolumeTrendSeries, NOTIFICATIONS_LIST_LIMIT, NOTIFICATIONS_LOOKBACK_DAYS, NOTIFICATIONS_RETENTION_DAYS, NOTIFICATION_CATEGORIES, NOTIFICATION_KINDS, type NewFollowerNotification, type NotificationCategory, type NotificationKind, type NotificationPreferences, type NotificationPreferencesResponse, type NotificationsResponse, type OwnActivityEntry, type OwnActivityResponse, PLATEAU_MIN_DAYS_SINCE_BEST, PLATEAU_MIN_SESSIONS, PLATEAU_MIN_SESSIONS_MAX, PLATEAU_MIN_SESSIONS_MIN, PLATEAU_RECENT_DAYS, PLATEAU_WINDOW_DAYS, PREFERRED_TRAINING_STYLE_VALUES, PROFILE_BIO_MAX_LENGTH, PROFILE_FAVORITE_EXERCISES_MAX, PROFILE_LOCATION_MAX_LENGTH, PROFILE_TRAINING_DISCIPLINES_MAX, PROFILE_TRAINING_GOALS_MAX, PROFILE_VISIBILITY_VALUES, PROGRESSION_SCHEMES, PROGRESS_TIMELINE_EVENT_TYPES, PUSH_PAYLOAD_KINDS, PUSH_SUBSCRIPTIONS_MAX, type PaginatedResponse, type PersonalGoalProgress, type PersonalGoalsResponse, type PersonalRecordActivity, type PersonalRecordEntry, type PersonalRecordKind, type PlannedReminder, type PlatePairInventory, type PlateauPreferences, type PlateauSet, type PlateausResponse, type PreferredTrainingStyle, type PreviousPerformanceResponse, type PreviousSessionRecap, type PreviousSetPerformance, type ProfileDiscoverySettings, type ProfileFavoriteExercise, type ProfilePrivacySettings, type ProfileViewerAccess, type ProfileVisibility, type ProgressTimelineEventType, type ProgressTimelineItem, type ProgressTimelinePersonalRecordItem, type ProgressTimelineProgressionItem, type ProgressTimelineQuery, type ProgressTimelineRecordPerformance, type ProgressTimelineRecordReason, type ProgressTimelineResponse, type ProgressTimelineSessionContext, type ProgressionActivity, type ProgressionChange, type ProgressionRule, type ProgressionScheme, type ProgressionSetChange, type PublicBodyMetrics, type PublicProfileAchievements, type PublicTrainingSummary, type PublicUserProfile, type PushPayload, type PushPayloadKind, type PushSubscriptionKeys, type PushSubscriptionSummary, type PushSubscriptionsResponse, type QuietHours, RELATIONSHIP_LIST_DEFAULT_LIMIT, RELATIONSHIP_LIST_KINDS, RELATIONSHIP_LIST_MAX_LIMIT, RENAISSANCE_RANK_DEFINITIONS, REPORTS_PER_DAY_MAX, REPORT_DETAILS_MAX_LENGTH, REPORT_REASONS, REPORT_STATUSES, REPORT_SUBJECT_KINDS, REP_TYPES, RESERVED_USERNAMES, REST_ALERT_MAX_LEAD_SECONDS, REST_ALERT_MIN_LEAD_SECONDS, REST_ALERT_REFUSALS, ROUTINE_DAYS_MAX, ROUTINE_DAY_NAME_MAX, ROUTINE_DISCOVERY_DEFAULT_LIMIT, ROUTINE_DISCOVERY_MAX_LIMIT, ROUTINE_DISCOVERY_SCAN_LIMIT, ROUTINE_DURATION_BANDS, ROUTINE_DURATION_BAND_MAX_MINUTES, ROUTINE_SCHEDULE_MODES, ROUTINE_SHARE_MAX_ACTIVE_LINKS, ROUTINE_TRAINING_BLOCKS_MAX, ROUTINE_TRAINING_BLOCK_NAME_MAX, ROUTINE_TRAINING_BLOCK_REVISIONS_MAX, ROUTINE_TRAINING_BLOCK_SOURCE_KINDS, ROUTINE_TRAINING_BLOCK_STATES, ROUTINE_VERSIONS_MAX, ROUTINE_VERSION_KINDS, ROUTINE_VERSION_NAME_MAX, ROUTINE_VISIBILITY_VALUES, type RecentActivityEntry, type RegisterPushSubscriptionRequest, type RelationshipListKind, type RelationshipListQuery, type RelationshipListResponse, type RelationshipMember, type RenaissanceRankDefinition, type RenaissanceRankProgress, type RepType, type ReplaceFeaturedProfileItemsRequest, type ReplaceMeasurableGoalsRequest, type ReplaceTrainingLocationsRequest, type ReportReason, type ReportStatus, type ReportSubjectKind, type ReportSubjectPreview, type ResolvedRoutinePlan, type RestAlertPushPayload, type RestAlertRefusal, type RestoreRoutineVersionResponse, type ReviewReportRequest, type ReviewReportResponse, type Routine, type RoutineClassification, type RoutineDay, type RoutineDayId, type RoutineDiscoveryQuery, type RoutineDiscoveryResponse, type RoutineDurationBand, type RoutineExercise, type RoutineFacets, type RoutineId, type RoutineLineage, type RoutinePlanSource, type RoutineScheduleMode, type RoutineSet, type RoutineShare, type RoutineShareListResponse, type RoutineSharedActivity, type RoutineTemporaryOverride, type RoutineTemporaryOverridePlan, type RoutineTemporaryOverridesResponse, type RoutineTrainingBlock, type RoutineTrainingBlockPlan, type RoutineTrainingBlockRevision, type RoutineTrainingBlockRevisionsResponse, type RoutineTrainingBlockSource, type RoutineTrainingBlockSourceKind, type RoutineTrainingBlockState, type RoutineTrainingBlocksResponse, type RoutineVersion, type RoutineVersionDay, type RoutineVersionExercise, type RoutineVersionKind, type RoutineVersionSetup, type RoutineVersionsResponse, type RoutineVisibility, SCHEDULE_MOVE_MAX_DAYS, SCHEDULE_OVERRIDES_MAX_RANGE_DAYS, SCHEDULE_OVERRIDE_KINDS, SCHEDULE_SKIP_PAST_DAYS, SESSION_CORRECTIONS_MAX, SESSION_CORRECTION_LIMITS, SESSION_CORRECTION_WINDOW_HOURS, SESSION_EXERCISE_NOTE_MAX_LENGTH, SESSION_NOTE_MAX_LENGTH, SESSION_SHARE_DEFAULT_FIELDS, SESSION_SHARE_FIELDS, SESSION_SHARE_MAX_ACTIVE_LINKS, SEXES, SHARED_ROUTINE_SOURCES, STARRED_EXERCISES_MAX, STREAK_MAX_GAP_DAYS, type ScheduleOverride, type ScheduleOverrideKind, type ScheduleOverridesQuery, type ScheduleOverridesResponse, type ScheduleRestAlertRequest, type ScheduleRestAlertResponse, type SendTrainingPartnerEncouragementRequest, type SendTrainingPartnerEncouragementResponse, type SessionComparisonExercise, type SessionComparisonQuery, type SessionComparisonResponse, type SessionComparisonRoutineDay, type SessionComparisonSession, type SessionComparisonSet, type SessionCompletedActivity, type SessionCorrection, type SessionCorrectionClosedReason, type SessionCorrectionWindow, type SessionCorrectionsResponse, type SessionExerciseNote, type SessionExerciseSubstitution, type SessionProgressNotification, type SessionRecapExerciseNote, type SessionRecapRecord, type SessionSetCorrection, type SessionShare, type SessionShareField, type SessionShareListResponse, type SessionTemporaryOverride, type SessionTrainingBlock, type SetAccountTimeZoneRequest, type SetActivityEntryAudienceRequest, type SetActivityEntryAudienceResponse, type SetActivityReactionRequest, type SetActivityReactionResponse, type SetLog, type SetLogValues, type Sex, type SharedRoutine, type SharedRoutineOwner, type SharedRoutineSource, type SharedRoutineSummary, type SharedSessionOwner, type SharedSessionRecap, type SkipOccurrenceRequest, type StarredExercise, type StarredExercisesResponse, type StartWorkoutRequest, type StartWorkoutResponse, type StreakAtRiskPushPayload, type StreakMilestoneActivity, type StreakMilestoneEventPayload, type SubstituteSessionExerciseRequest, type SubstituteSessionExerciseResponse, type SupabaseAuthResponse, type SupabaseAuthUser, type SupabaseMigrationResponse, TEMPORARY_OVERRIDE_KINDS, TEMPORARY_OVERRIDE_SOURCE_KINDS, TRAINING_DISCIPLINE_VALUES, TRAINING_EVENT_TYPES, TRAINING_EXPERIENCE_LEVEL_VALUES, TRAINING_GOAL_VALUES, TRAINING_PARTNERSHIP_STATUSES, TRAINING_PARTNERS_MAX, TRAINING_PARTNER_ENCOURAGEMENTS_PER_24_HOURS_MAX, TRAINING_PARTNER_ENCOURAGEMENT_KINDS, TRAINING_PARTNER_PERMISSION_KEYS, TRAINING_PARTNER_REQUESTS_PER_DAY_MAX, type TemporaryOverrideKind, type TemporaryOverrideSource, type TemporaryOverrideSourceKind, type TrainingDiscipline, type TrainingEventType, type TrainingExperienceLevel, type TrainingGoal, type TrainingIdentity, type TrainingLocationPreference, type TrainingLocationPreferenceInput, type TrainingPartnerAchievementNotification, type TrainingPartnerAchievementPushPayload, type TrainingPartnerEncouragementKind, type TrainingPartnerEncouragementNotification, type TrainingPartnerPermissions, type TrainingPartnerScheduleDay, type TrainingPartnerScheduleResponse, type TrainingPartnerSessionNotification, type TrainingPartnerSessionPushPayload, type TrainingPartnership, type TrainingPartnershipStatus, type TrainingPartnershipsResponse, type TrainingReminderPreference, type TrainingReminderPushPayload, USERNAME_MAX_LENGTH, USERNAME_MIN_LENGTH, USERNAME_PATTERN_SOURCE, type UpdateActivitySharingRequest, type UpdateNotificationPreferencesRequest, type UpdateProfileDiscoveryRequest, type UpdateProfilePrivacyRequest, type UpdateProfileRequest, type UpdateRoutineRequest, type UpdateRoutineVisibilityRequest, type UpdateSessionNotesRequest, type UpdateSessionNotesResponse, type UpdateTrainingPartnerPermissionsRequest, type UpsertRoutineTrainingBlockRequest, type UpsertSetLogRequest, type UpsertSetLogResponse, type UserId, type UserProfile, type UserSearchResponse, type VolumeTrendPoint, type VolumeTrendQuery, type VolumeTrendResponse, type VolumeTrendSeries, WEIGHT_UNITS, WORKOUT_SESSION_STATUSES, type WeightUnit, type WorkoutAnalyticsStatus, type WorkoutProgressQuery, type WorkoutProgressResponse, type WorkoutSession, type WorkoutSessionId, type WorkoutSessionListResponse, type WorkoutSessionRecap, type WorkoutSessionSnapshotV1, type WorkoutSessionStatus, type WorkoutSessionSummary, type WorkoutStatsQuery, type WorkoutStatsResponse, accountExportFileName, applyDeload, deloadLengthDays, isWithinQuietHours, matchesDeletionConfirmation, resolveActiveTrainingBlock, resolveRoutinePlan, routineDayLabel, sessionCorrectionWindow, setLogValuesDiffer, trainingBlockCovers };
3375
+ export { ACCOUNT_EXPORT_FORMAT, ACCOUNT_EXPORT_VERSION, ACHIEVEMENT_CATEGORIES, ACHIEVEMENT_DEFINITIONS, ACTIVITY_CAPS, ACTIVITY_COMMENTS_PAGE_SIZE, ACTIVITY_COMMENTS_PER_DAY_MAX, ACTIVITY_COMMENT_MAX_LENGTH, ACTIVITY_DEFAULT_AUDIENCE, ACTIVITY_ENTRY_ID_MAX_LENGTH, ACTIVITY_FEED_FOLLOWED_MAX, ACTIVITY_PAGE_DEFAULT_LIMIT, ACTIVITY_PAGE_MAX_LIMIT, ACTIVITY_PREVIEW_AUDIENCES, ACTIVITY_REACTIONS, ACTIVITY_TYPES, ACTIVITY_TYPE_SECTIONS, type AccountExportGoal, type AccountExportMember, type AccountExportPersonalRecord, type AccountExportRoutine, type AccountExportScheduleOverride, type AccountExportTrainingEvent, type AccountExportTrainingLocation, type AccountExportV1, type AchievementActivity, type AchievementCategory, type AchievementCategoryProgress, type AchievementDefinition, type AchievementNotification, type AchievementUnlockedEventPayload, type AchievementsResponse, type ActivityAudience, type ActivityCap, type ActivityComment, type ActivityCommentNotification, type ActivityCommentSummary, type ActivityCommentsQuery, type ActivityCommentsResponse, type ActivityEntry, type ActivityEntrySharing, type ActivityFeedResponse, type ActivityLink, type ActivityPage, type ActivityPageQuery, type ActivityPreviewAudience, type ActivityPreviewQuery, type ActivityReaction, type ActivityReactionSummary, type ActivitySection, type ActivitySharingSettings, type ActivityType, type AppNotification, BLOCKED_MEMBERS_MAX, type BlockedMember, type BlockedMembersResponse, type Brand, CLONE_ROUTINE_REFUSALS, COMEBACK_MIN_INACTIVE_DAYS, COMEBACK_RECOGNITION_LIMIT, COMEBACK_REQUIRED_ACTIVE_DAYS, COMEBACK_SESSION_LOOKBACK, COMEBACK_WINDOW_DAYS, type CalendarDate, type CloneRoutineRefusal, type CloneRoutineRequest, type ComebackActivity, type ComebackRecognition, type ComebackRecognitionSummary, type CorrectSessionRequest, type CorrectSessionResponse, type CorrectSessionSetRequest, type CreateActivityCommentRequest, type CreateActivityCommentResponse, type CreateDeloadRequest, type CreateReportRequest, type CreateReportResponse, type CreateRoutineDayInput, type CreateRoutineExerciseInput, type CreateRoutineRequest, type CreateRoutineVersionRequest, type CreateSessionShareRequest, DELOAD_DEFAULT_DAYS, DELOAD_DEFAULT_LOAD_REDUCTION, DELOAD_DEFAULT_SET_MODE, DELOAD_LOAD_REDUCTIONS, DELOAD_MAX_DAYS, DELOAD_NOT_LIGHTER, DELOAD_SET_MODES, DELOAD_SUGGESTION_COOLDOWN_DAYS, DELOAD_SUGGESTION_EARLIER_DAYS, DELOAD_SUGGESTION_MIN_MARKED_TODAY, DELOAD_SUGGESTION_ROUTINE_DAYS, DELOAD_SUGGESTION_SIGNALS, type DeclineSignal, type DecliningLift, type DecliningLiftSession, type DeleteAccountRequest, type DeleteAccountResponse, type DeleteActivityCommentResponse, type DeletePushSubscriptionRequest, type DeloadLoadReduction, type DeloadOptions, type DeloadSetMode, type DeloadSuggestion, type DeloadSuggestionEvidence, type DeloadSuggestionResponse, type DeloadSuggestionSignal, type DeloadSuggestionUnavailableReason, type DiscoverableRoutine, EXERCISE_EQUIPMENT, EXERCISE_MECHANICS, type EarnedAchievement, type EarnedPersonalRecord, type EffortPeriod, type EffortSignal, type Exercise, type ExerciseEquipment, type ExerciseId, type ExerciseMechanic, type ExercisePerformanceHistoryQuery, type ExercisePerformanceHistoryResponse, type ExercisePerformancePrescription, type ExercisePerformancePrescriptionSet, type ExercisePerformanceSession, type ExercisePerformanceSet, type ExercisePerformanceSummary, type ExercisePlateau, type ExerciseStrengthSummary, type ExerciseStrengthTrendPoint, type ExerciseStrengthTrendQuery, type ExerciseStrengthTrendResponse, FEATURED_PROFILE_ITEMS_MAX, FEATURED_PROFILE_ITEM_KINDS, FEATURED_PROFILE_REFERENCE_MAX_LENGTH, FOLLOW_SUGGESTIONS_DEFAULT_LIMIT, FOLLOW_SUGGESTIONS_MAX_LIMIT, FOLLOW_SUGGESTION_REASONS, type FeaturedProfileAchievementItem, type FeaturedProfileItem, type FeaturedProfileItemKind, type FeaturedProfileRankItem, type FeaturedProfileRecordItem, type FeaturedProfileRoutineItem, type FeaturedProfileSelection, type FeaturedProfileSelectionInput, type FeaturedProfileSelectionsResponse, type FinishStatus, type FinishWorkoutRequest, type FinishWorkoutResponse, type FollowSuggestion, type FollowSuggestionReason, type FollowSuggestionsResponse, type IsoDateString, type ListSessionsParams, MEASURABLE_GOALS_MAX, MEASURABLE_GOAL_DIRECTIONS, MEASURABLE_GOAL_TYPES, MINUTES_IN_DAY, MODERATION_ACTION_KINDS, MODERATION_HISTORY_PAGE_SIZE, MODERATION_NOTE_MAX_LENGTH, MODERATION_QUEUE_PAGE_SIZE, MOVEMENT_PATTERNS, MUSCLE_GROUPS, type MarkNotificationsReadRequest, type MarkNotificationsReadResponse, type MeasurableGoal, type MeasurableGoalDirection, type MeasurableGoalExercise, type MeasurableGoalInput, type MeasurableGoalType, type MemberActivityResponse, type MemberModerationState, type MemberRoutinesResponse, type ModerationActionKind, type ModerationActionRecord, type ModerationHistoryQuery, type ModerationHistoryResponse, type ModerationQueueQuery, type ModerationQueueResponse, type ModerationReport, type ModeratorState, type MoveOccurrenceRequest, type MovementPattern, type MuscleGroup, type MuscleGroupHeatmapQuery, type MuscleGroupHeatmapResponse, type MuscleGroupHeatmapValue, type MuscleGroupHeatmapWeek, type MuscleVolumeTrendSeries, NOTIFICATIONS_LIST_LIMIT, NOTIFICATIONS_LOOKBACK_DAYS, NOTIFICATIONS_RETENTION_DAYS, NOTIFICATION_CATEGORIES, NOTIFICATION_KINDS, type NewFollowerNotification, type NotificationCategory, type NotificationKind, type NotificationPreferences, type NotificationPreferencesResponse, type NotificationsResponse, type OwnActivityEntry, type OwnActivityResponse, PLATEAU_MIN_DAYS_SINCE_BEST, PLATEAU_MIN_SESSIONS, PLATEAU_MIN_SESSIONS_MAX, PLATEAU_MIN_SESSIONS_MIN, PLATEAU_RECENT_DAYS, PLATEAU_WINDOW_DAYS, PREFERRED_TRAINING_STYLE_VALUES, PROFILE_BIO_MAX_LENGTH, PROFILE_FAVORITE_EXERCISES_MAX, PROFILE_LOCATION_MAX_LENGTH, PROFILE_TRAINING_DISCIPLINES_MAX, PROFILE_TRAINING_GOALS_MAX, PROFILE_VISIBILITY_VALUES, PROGRESSION_SCHEMES, PROGRESS_TIMELINE_EVENT_TYPES, PUSH_PAYLOAD_KINDS, PUSH_SUBSCRIPTIONS_MAX, type PaginatedResponse, type PersonalGoalProgress, type PersonalGoalsResponse, type PersonalRecordActivity, type PersonalRecordEntry, type PersonalRecordKind, type PlannedReminder, type PlatePairInventory, type PlateauPreferences, type PlateauSet, type PlateausResponse, type PreferredTrainingStyle, type PreviousPerformanceResponse, type PreviousSessionRecap, type PreviousSetPerformance, type ProfileDiscoverySettings, type ProfileFavoriteExercise, type ProfilePrivacySettings, type ProfileViewerAccess, type ProfileVisibility, type ProgressTimelineEventType, type ProgressTimelineItem, type ProgressTimelinePersonalRecordItem, type ProgressTimelineProgressionItem, type ProgressTimelineQuery, type ProgressTimelineRecordPerformance, type ProgressTimelineRecordReason, type ProgressTimelineResponse, type ProgressTimelineSessionContext, type ProgressionActivity, type ProgressionChange, type ProgressionRule, type ProgressionScheme, type ProgressionSetChange, type PublicBodyMetrics, type PublicProfileAchievements, type PublicTrainingSummary, type PublicUserProfile, type PushPayload, type PushPayloadKind, type PushSubscriptionKeys, type PushSubscriptionSummary, type PushSubscriptionsResponse, type QuietHours, RELATIONSHIP_LIST_DEFAULT_LIMIT, RELATIONSHIP_LIST_KINDS, RELATIONSHIP_LIST_MAX_LIMIT, RENAISSANCE_RANK_DEFINITIONS, REPORTS_PER_DAY_MAX, REPORT_DETAILS_MAX_LENGTH, REPORT_REASONS, REPORT_STATUSES, REPORT_SUBJECT_KINDS, REP_TYPES, RESERVED_USERNAMES, REST_ALERT_MAX_LEAD_SECONDS, REST_ALERT_MIN_LEAD_SECONDS, REST_ALERT_REFUSALS, ROUTINE_DAYS_MAX, ROUTINE_DAY_NAME_MAX, ROUTINE_DISCOVERY_DEFAULT_LIMIT, ROUTINE_DISCOVERY_MAX_LIMIT, ROUTINE_DISCOVERY_SCAN_LIMIT, ROUTINE_DURATION_BANDS, ROUTINE_DURATION_BAND_MAX_MINUTES, ROUTINE_SCHEDULE_MODES, ROUTINE_SHARE_MAX_ACTIVE_LINKS, ROUTINE_TRAINING_BLOCKS_MAX, ROUTINE_TRAINING_BLOCK_NAME_MAX, ROUTINE_TRAINING_BLOCK_REVISIONS_MAX, ROUTINE_TRAINING_BLOCK_SOURCE_KINDS, ROUTINE_TRAINING_BLOCK_STATES, ROUTINE_VERSIONS_MAX, ROUTINE_VERSION_KINDS, ROUTINE_VERSION_NAME_MAX, ROUTINE_VISIBILITY_VALUES, type RecentActivityEntry, type RegisterPushSubscriptionRequest, type RelationshipListKind, type RelationshipListQuery, type RelationshipListResponse, type RelationshipMember, type RenaissanceRankDefinition, type RenaissanceRankProgress, type RepTargetPeriod, type RepTargetSignal, type RepType, type ReplaceFeaturedProfileItemsRequest, type ReplaceMeasurableGoalsRequest, type ReplaceTrainingLocationsRequest, type ReportReason, type ReportStatus, type ReportSubjectKind, type ReportSubjectPreview, type ResolvedRoutinePlan, type RestAlertPushPayload, type RestAlertRefusal, type RestoreRoutineVersionResponse, type ReviewReportRequest, type ReviewReportResponse, type Routine, type RoutineClassification, type RoutineDay, type RoutineDayId, type RoutineDiscoveryQuery, type RoutineDiscoveryResponse, type RoutineDurationBand, type RoutineExercise, type RoutineFacets, type RoutineId, type RoutineLineage, type RoutinePlanSource, type RoutineScheduleMode, type RoutineSet, type RoutineShare, type RoutineShareListResponse, type RoutineSharedActivity, type RoutineTemporaryOverride, type RoutineTemporaryOverridePlan, type RoutineTemporaryOverridesResponse, type RoutineTrainingBlock, type RoutineTrainingBlockPlan, type RoutineTrainingBlockRevision, type RoutineTrainingBlockRevisionsResponse, type RoutineTrainingBlockSource, type RoutineTrainingBlockSourceKind, type RoutineTrainingBlockState, type RoutineTrainingBlocksResponse, type RoutineVersion, type RoutineVersionDay, type RoutineVersionExercise, type RoutineVersionKind, type RoutineVersionSetup, type RoutineVersionsResponse, type RoutineVisibility, SCHEDULE_MOVE_MAX_DAYS, SCHEDULE_OVERRIDES_MAX_RANGE_DAYS, SCHEDULE_OVERRIDE_KINDS, SCHEDULE_SKIP_PAST_DAYS, SESSION_CORRECTIONS_MAX, SESSION_CORRECTION_LIMITS, SESSION_CORRECTION_WINDOW_HOURS, SESSION_EXERCISE_NOTE_MAX_LENGTH, SESSION_NOTE_MAX_LENGTH, SESSION_SHARE_DEFAULT_FIELDS, SESSION_SHARE_FIELDS, SESSION_SHARE_MAX_ACTIVE_LINKS, SEXES, SHARED_ROUTINE_SOURCES, STARRED_EXERCISES_MAX, STREAK_MAX_GAP_DAYS, type ScheduleOverride, type ScheduleOverrideKind, type ScheduleOverridesQuery, type ScheduleOverridesResponse, type ScheduleRestAlertRequest, type ScheduleRestAlertResponse, type SendTrainingPartnerEncouragementRequest, type SendTrainingPartnerEncouragementResponse, type SessionComparisonExercise, type SessionComparisonQuery, type SessionComparisonResponse, type SessionComparisonRoutineDay, type SessionComparisonSession, type SessionComparisonSet, type SessionCompletedActivity, type SessionCorrection, type SessionCorrectionClosedReason, type SessionCorrectionWindow, type SessionCorrectionsResponse, type SessionExerciseNote, type SessionExerciseSubstitution, type SessionProgressNotification, type SessionRecapExerciseNote, type SessionRecapRecord, type SessionSetCorrection, type SessionShare, type SessionShareField, type SessionShareListResponse, type SessionTemporaryOverride, type SessionTrainingBlock, type SetAccountTimeZoneRequest, type SetActivityEntryAudienceRequest, type SetActivityEntryAudienceResponse, type SetActivityReactionRequest, type SetActivityReactionResponse, type SetLog, type SetLogValues, type Sex, type SharedRoutine, type SharedRoutineOwner, type SharedRoutineSource, type SharedRoutineSummary, type SharedSessionOwner, type SharedSessionRecap, type SkipOccurrenceRequest, type StarredExercise, type StarredExercisesResponse, type StartWorkoutRequest, type StartWorkoutResponse, type StreakAtRiskPushPayload, type StreakMilestoneActivity, type StreakMilestoneEventPayload, type SubstituteSessionExerciseRequest, type SubstituteSessionExerciseResponse, type SupabaseAuthResponse, type SupabaseAuthUser, type SupabaseMigrationResponse, TEMPORARY_OVERRIDE_KINDS, TEMPORARY_OVERRIDE_SOURCE_KINDS, TRAINING_DISCIPLINE_VALUES, TRAINING_EVENT_TYPES, TRAINING_EXPERIENCE_LEVEL_VALUES, TRAINING_GOAL_VALUES, TRAINING_PARTNERSHIP_STATUSES, TRAINING_PARTNERS_MAX, TRAINING_PARTNER_ENCOURAGEMENTS_PER_24_HOURS_MAX, TRAINING_PARTNER_ENCOURAGEMENT_KINDS, TRAINING_PARTNER_PERMISSION_KEYS, TRAINING_PARTNER_REQUESTS_PER_DAY_MAX, TRAINING_SIGNAL_DECLINES_MAX, TRAINING_SIGNAL_DECLINE_SESSIONS, TRAINING_SIGNAL_MIN_DECLINE, TRAINING_SIGNAL_MIN_RPE_SETS, TRAINING_SIGNAL_MIN_SHORT_SETS, TRAINING_SIGNAL_MIN_TARGET_SETS, TRAINING_SIGNAL_PERIOD_DAYS, TRAINING_SIGNAL_RPE_RISE, TRAINING_SIGNAL_SHORT_LIFTS_MAX, TRAINING_SIGNAL_SHORT_POINTS_RISE, TRAINING_SIGNAL_WORKOUT_DROP, type TemporaryOverrideKind, type TemporaryOverrideSource, type TemporaryOverrideSourceKind, type TrainingDiscipline, type TrainingEventType, type TrainingExperienceLevel, type TrainingGoal, type TrainingIdentity, type TrainingLocationPreference, type TrainingLocationPreferenceInput, type TrainingPartnerAchievementNotification, type TrainingPartnerAchievementPushPayload, type TrainingPartnerEncouragementKind, type TrainingPartnerEncouragementNotification, type TrainingPartnerPermissions, type TrainingPartnerScheduleDay, type TrainingPartnerScheduleResponse, type TrainingPartnerSessionNotification, type TrainingPartnerSessionPushPayload, type TrainingPartnership, type TrainingPartnershipStatus, type TrainingPartnershipsResponse, type TrainingReminderPreference, type TrainingReminderPushPayload, type TrainingSignalPeriod, type TrainingSignalsResponse, USERNAME_MAX_LENGTH, USERNAME_MIN_LENGTH, USERNAME_PATTERN_SOURCE, type UpdateActivitySharingRequest, type UpdateNotificationPreferencesRequest, type UpdateProfileDiscoveryRequest, type UpdateProfilePrivacyRequest, type UpdateProfileRequest, type UpdateRoutineRequest, type UpdateRoutineVisibilityRequest, type UpdateSessionNotesRequest, type UpdateSessionNotesResponse, type UpdateTrainingPartnerPermissionsRequest, type UpsertRoutineTrainingBlockRequest, type UpsertSetLogRequest, type UpsertSetLogResponse, type UserId, type UserProfile, type UserSearchResponse, type VolumeTrendPoint, type VolumeTrendQuery, type VolumeTrendResponse, type VolumeTrendSeries, WEIGHT_UNITS, WORKOUT_SESSION_STATUSES, type WeightUnit, type WorkoutAnalyticsStatus, type WorkoutPeriod, type WorkoutProgressQuery, type WorkoutProgressResponse, type WorkoutSession, type WorkoutSessionId, type WorkoutSessionListResponse, type WorkoutSessionRecap, type WorkoutSessionSnapshotV1, type WorkoutSessionStatus, type WorkoutSessionSummary, type WorkoutSignal, type WorkoutStatsQuery, type WorkoutStatsResponse, accountExportFileName, applyDeload, deloadLengthDays, isWithinQuietHours, matchesDeletionConfirmation, resolveActiveTrainingBlock, resolveRoutinePlan, routineDayLabel, sessionCorrectionWindow, setLogValuesDiffer, trainingBlockCovers };
package/dist/index.js CHANGED
@@ -476,6 +476,17 @@ function deloadLengthDays(startDate, endDate) {
476
476
  return Math.round((ms(endDate) - ms(startDate)) / 864e5) + 1;
477
477
  }
478
478
 
479
+ // src/deload-suggestions.ts
480
+ var DELOAD_SUGGESTION_EARLIER_DAYS = 7;
481
+ var DELOAD_SUGGESTION_MIN_MARKED_TODAY = 2;
482
+ var DELOAD_SUGGESTION_COOLDOWN_DAYS = 21;
483
+ var DELOAD_SUGGESTION_ROUTINE_DAYS = 14;
484
+ var DELOAD_SUGGESTION_SIGNALS = [
485
+ "EFFORT",
486
+ "REP_TARGETS",
487
+ "DECLINES"
488
+ ];
489
+
479
490
  // src/routine-sharing.ts
480
491
  var ROUTINE_VISIBILITY_VALUES = [
481
492
  "PRIVATE",
@@ -605,6 +616,19 @@ var PLATEAU_RECENT_DAYS = 21;
605
616
  var PLATEAU_MIN_SESSIONS_MIN = 3;
606
617
  var PLATEAU_MIN_SESSIONS_MAX = 8;
607
618
 
619
+ // src/training-signals.ts
620
+ var TRAINING_SIGNAL_PERIOD_DAYS = 14;
621
+ var TRAINING_SIGNAL_MIN_RPE_SETS = 10;
622
+ var TRAINING_SIGNAL_RPE_RISE = 0.5;
623
+ var TRAINING_SIGNAL_MIN_TARGET_SETS = 10;
624
+ var TRAINING_SIGNAL_SHORT_POINTS_RISE = 10;
625
+ var TRAINING_SIGNAL_MIN_SHORT_SETS = 3;
626
+ var TRAINING_SIGNAL_SHORT_LIFTS_MAX = 3;
627
+ var TRAINING_SIGNAL_DECLINE_SESSIONS = 3;
628
+ var TRAINING_SIGNAL_MIN_DECLINE = 0.025;
629
+ var TRAINING_SIGNAL_DECLINES_MAX = 5;
630
+ var TRAINING_SIGNAL_WORKOUT_DROP = 2;
631
+
608
632
  // src/notifications.ts
609
633
  var NOTIFICATION_KINDS = [
610
634
  "ACHIEVEMENT",
@@ -728,6 +752,11 @@ export {
728
752
  DELOAD_MAX_DAYS,
729
753
  DELOAD_NOT_LIGHTER,
730
754
  DELOAD_SET_MODES,
755
+ DELOAD_SUGGESTION_COOLDOWN_DAYS,
756
+ DELOAD_SUGGESTION_EARLIER_DAYS,
757
+ DELOAD_SUGGESTION_MIN_MARKED_TODAY,
758
+ DELOAD_SUGGESTION_ROUTINE_DAYS,
759
+ DELOAD_SUGGESTION_SIGNALS,
731
760
  EXERCISE_EQUIPMENT,
732
761
  EXERCISE_MECHANICS,
733
762
  FEATURED_PROFILE_ITEMS_MAX,
@@ -828,6 +857,17 @@ export {
828
857
  TRAINING_PARTNER_ENCOURAGEMENT_KINDS,
829
858
  TRAINING_PARTNER_PERMISSION_KEYS,
830
859
  TRAINING_PARTNER_REQUESTS_PER_DAY_MAX,
860
+ TRAINING_SIGNAL_DECLINES_MAX,
861
+ TRAINING_SIGNAL_DECLINE_SESSIONS,
862
+ TRAINING_SIGNAL_MIN_DECLINE,
863
+ TRAINING_SIGNAL_MIN_RPE_SETS,
864
+ TRAINING_SIGNAL_MIN_SHORT_SETS,
865
+ TRAINING_SIGNAL_MIN_TARGET_SETS,
866
+ TRAINING_SIGNAL_PERIOD_DAYS,
867
+ TRAINING_SIGNAL_RPE_RISE,
868
+ TRAINING_SIGNAL_SHORT_LIFTS_MAX,
869
+ TRAINING_SIGNAL_SHORT_POINTS_RISE,
870
+ TRAINING_SIGNAL_WORKOUT_DROP,
831
871
  USERNAME_MAX_LENGTH,
832
872
  USERNAME_MIN_LENGTH,
833
873
  USERNAME_PATTERN_SOURCE,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sunsteel/contracts",
3
- "version": "0.66.1",
3
+ "version": "0.68.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/ezee969/sunsteel-contracts.git"