diff options
Diffstat (limited to 'web/frontend/types.d.ts')
| -rw-r--r-- | web/frontend/types.d.ts | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/web/frontend/types.d.ts b/web/frontend/types.d.ts index a933d7d..a97d07d 100644 --- a/web/frontend/types.d.ts +++ b/web/frontend/types.d.ts @@ -2,6 +2,25 @@ export type ProfileBand = "downhill" | "0-3" | "3-6" | "6-9" | "9-plus"; export type BoundaryTarget = "start" | "end"; export type BoundarySource = "profile" | "map"; +// ProfileSectionPayload is one step of a climb profile as the server cuts it. +export interface ProfileSectionPayload { + startKm: number; + endKm: number; + startElevationM: number; + endElevationM: number; + slopePercent: number; +} + +// OfficialProfileSection is that step tagged with the colour band its slope falls in. +export interface OfficialProfileSection { + startDistanceKm: number; + endDistanceKm: number; + startElevation: number; + endElevation: number; + slopePercent: number; + band: ProfileBand; +} + export interface ProfilePoint { distanceKm: number; elevationM: number; @@ -14,6 +33,7 @@ export interface RideProfilePoint extends ProfilePoint { } export interface RideProfileClimb { + index: number; startKm: number; endKm: number; topKm: number; @@ -27,6 +47,7 @@ export interface RideProfileClimb { officialName?: string; startIndex: number; endIndex: number; + sections?: ProfileSectionPayload[]; } export interface RideProfileCrossing { |
