@stuartshay/otel-data-types 1.0.514 → 1.0.523

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.
Files changed (2) hide show
  1. package/index.d.ts +189 -0
  2. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -436,6 +436,33 @@ export type paths = {
436
436
  patch?: never;
437
437
  trace?: never;
438
438
  };
439
+ "/api/v1/garmin/segment-efforts": {
440
+ parameters: {
441
+ query?: never;
442
+ header?: never;
443
+ path?: never;
444
+ cookie?: never;
445
+ };
446
+ /**
447
+ * List Segment Efforts
448
+ * @description Rank activity efforts over an ad-hoc segment defined by start/end coordinates.
449
+ *
450
+ * Matches raw GPS track points with PostGIS: an activity qualifies when its
451
+ * route passes within ``tolerance_meters`` of the start point and, later in
452
+ * time, within tolerance of the end point (same direction of travel). For each
453
+ * activity the shortest such start→end traversal is used, and efforts are
454
+ * ranked fastest-first. Stateless (no stored segment) — the coordinate pair can
455
+ * be sourced from a detected climb or lap.
456
+ */
457
+ get: operations["list_segment_efforts_api_v1_garmin_segment_efforts_get"];
458
+ put?: never;
459
+ post?: never;
460
+ delete?: never;
461
+ options?: never;
462
+ head?: never;
463
+ patch?: never;
464
+ trace?: never;
465
+ };
439
466
  "/api/v1/gps/unified": {
440
467
  parameters: {
441
468
  query?: never;
@@ -3117,6 +3144,118 @@ export type components = {
3117
3144
  */
3118
3145
  description?: string | null;
3119
3146
  };
3147
+ /**
3148
+ * SegmentDefinition
3149
+ * @description The ad-hoc segment queried for efforts (a start→end corridor).
3150
+ */
3151
+ SegmentDefinition: {
3152
+ /**
3153
+ * Start Lat
3154
+ * @description Segment start latitude
3155
+ */
3156
+ start_lat: number;
3157
+ /**
3158
+ * Start Lon
3159
+ * @description Segment start longitude
3160
+ */
3161
+ start_lon: number;
3162
+ /**
3163
+ * End Lat
3164
+ * @description Segment end latitude
3165
+ */
3166
+ end_lat: number;
3167
+ /**
3168
+ * End Lon
3169
+ * @description Segment end longitude
3170
+ */
3171
+ end_lon: number;
3172
+ /**
3173
+ * Tolerance Meters
3174
+ * @description Corridor radius around the start/end points in meters
3175
+ */
3176
+ tolerance_meters: number;
3177
+ };
3178
+ /**
3179
+ * SegmentEffort
3180
+ * @description A single activity's best traversal of a segment, for cross-activity comparison.
3181
+ */
3182
+ SegmentEffort: {
3183
+ /**
3184
+ * Rank
3185
+ * @description 1-based rank by elapsed time (1 = fastest)
3186
+ */
3187
+ rank: number;
3188
+ /**
3189
+ * Activity Id
3190
+ * @description Garmin activity identifier
3191
+ */
3192
+ activity_id: string;
3193
+ /**
3194
+ * Sport
3195
+ * @description Sport type (e.g. cycling)
3196
+ */
3197
+ sport?: string | null;
3198
+ /**
3199
+ * Activity Start Time
3200
+ * @description UTC start time of the parent activity
3201
+ */
3202
+ activity_start_time?: string | null;
3203
+ /**
3204
+ * Effort Start
3205
+ * Format: date-time
3206
+ * @description UTC timestamp entering the segment start corridor
3207
+ */
3208
+ effort_start: string;
3209
+ /**
3210
+ * Effort End
3211
+ * Format: date-time
3212
+ * @description UTC timestamp reaching the segment end corridor
3213
+ */
3214
+ effort_end: string;
3215
+ /**
3216
+ * Elapsed Seconds
3217
+ * @description Segment elapsed time in seconds
3218
+ */
3219
+ elapsed_seconds: number;
3220
+ /**
3221
+ * Distance Km
3222
+ * @description Distance covered across the segment in km
3223
+ */
3224
+ distance_km?: number | null;
3225
+ /**
3226
+ * Avg Speed Kmh
3227
+ * @description Average speed across the segment in km/h
3228
+ */
3229
+ avg_speed_kmh?: number | null;
3230
+ /**
3231
+ * Avg Heart Rate
3232
+ * @description Average heart rate across the segment in bpm
3233
+ */
3234
+ avg_heart_rate?: number | null;
3235
+ /**
3236
+ * Max Heart Rate
3237
+ * @description Maximum heart rate across the segment in bpm
3238
+ */
3239
+ max_heart_rate?: number | null;
3240
+ };
3241
+ /**
3242
+ * SegmentEffortsResponse
3243
+ * @description Ranked efforts for a segment across all matching activities.
3244
+ */
3245
+ SegmentEffortsResponse: {
3246
+ /** @description The queried segment definition */
3247
+ segment: components["schemas"]["SegmentDefinition"];
3248
+ /**
3249
+ * Total
3250
+ * @description Number of matching efforts returned
3251
+ */
3252
+ total: number;
3253
+ /**
3254
+ * Items
3255
+ * @description Efforts ordered fastest-first
3256
+ */
3257
+ items: components["schemas"]["SegmentEffort"][];
3258
+ };
3120
3259
  /**
3121
3260
  * SportInfo
3122
3261
  * @description Sport type with its activity count.
@@ -4026,6 +4165,56 @@ export interface operations {
4026
4165
  };
4027
4166
  };
4028
4167
  };
4168
+ list_segment_efforts_api_v1_garmin_segment_efforts_get: {
4169
+ parameters: {
4170
+ query: {
4171
+ /** @description Segment start latitude */
4172
+ start_lat: number;
4173
+ /** @description Segment start longitude */
4174
+ start_lon: number;
4175
+ /** @description Segment end latitude */
4176
+ end_lat: number;
4177
+ /** @description Segment end longitude */
4178
+ end_lon: number;
4179
+ /** @description Corridor radius around the start/end points in meters */
4180
+ tolerance_meters?: number;
4181
+ /** @description Filter by sport type; pass an empty value to include all sports */
4182
+ sport?: string | null;
4183
+ /** @description Filter from date (YYYY-MM-DD) on activity start_time */
4184
+ date_from?: string | null;
4185
+ /** @description Filter to date (YYYY-MM-DD) on activity start_time */
4186
+ date_to?: string | null;
4187
+ /** @description Ignore traversals longer than this (filters loop/return mismatches) */
4188
+ max_effort_seconds?: number;
4189
+ /** @description Maximum number of efforts to return */
4190
+ limit?: number;
4191
+ };
4192
+ header?: never;
4193
+ path?: never;
4194
+ cookie?: never;
4195
+ };
4196
+ requestBody?: never;
4197
+ responses: {
4198
+ /** @description Successful Response */
4199
+ 200: {
4200
+ headers: {
4201
+ [name: string]: unknown;
4202
+ };
4203
+ content: {
4204
+ "application/json": components["schemas"]["SegmentEffortsResponse"];
4205
+ };
4206
+ };
4207
+ /** @description Validation Error */
4208
+ 422: {
4209
+ headers: {
4210
+ [name: string]: unknown;
4211
+ };
4212
+ content: {
4213
+ "application/json": components["schemas"]["HTTPValidationError"];
4214
+ };
4215
+ };
4216
+ };
4217
+ };
4029
4218
  list_unified_gps_api_v1_gps_unified_get: {
4030
4219
  parameters: {
4031
4220
  query?: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stuartshay/otel-data-types",
3
- "version": "1.0.514",
3
+ "version": "1.0.523",
4
4
  "description": "TypeScript types for otel-data-api — Auto-generated from OpenAPI 3.1 specification",
5
5
  "types": "index.d.ts",
6
6
  "exports": {