@stuartshay/otel-data-types 1.0.506 → 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 +345 -0
  2. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -389,6 +389,30 @@ export type paths = {
389
389
  patch?: never;
390
390
  trace?: never;
391
391
  };
392
+ "/api/v1/garmin/laps": {
393
+ parameters: {
394
+ query?: never;
395
+ header?: never;
396
+ path?: never;
397
+ cookie?: never;
398
+ };
399
+ /**
400
+ * List Laps
401
+ * @description Batch laps across activities for cross-activity comparison.
402
+ *
403
+ * Returns activities (newest first) that have at least one lap, each with
404
+ * its laps ordered by ``lap_index`` ascending, so lap N can be compared
405
+ * across dates. Pagination applies to activities, not individual laps.
406
+ */
407
+ get: operations["list_laps_api_v1_garmin_laps_get"];
408
+ put?: never;
409
+ post?: never;
410
+ delete?: never;
411
+ options?: never;
412
+ head?: never;
413
+ patch?: never;
414
+ trace?: never;
415
+ };
392
416
  "/api/v1/garmin/activities/{activity_id}/addresses": {
393
417
  parameters: {
394
418
  query?: never;
@@ -412,6 +436,33 @@ export type paths = {
412
436
  patch?: never;
413
437
  trace?: never;
414
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
+ };
415
466
  "/api/v1/gps/unified": {
416
467
  parameters: {
417
468
  query?: never;
@@ -1518,6 +1569,19 @@ export type components = {
1518
1569
  */
1519
1570
  updated_at?: string | null;
1520
1571
  };
1572
+ /**
1573
+ * GarminActivityLapsGroup
1574
+ * @description Laps for a single activity within the batch laps response.
1575
+ */
1576
+ GarminActivityLapsGroup: {
1577
+ /** @description Parent activity summary */
1578
+ activity: components["schemas"]["GarminLapsActivity"];
1579
+ /**
1580
+ * Laps
1581
+ * @description Laps ordered by lap_index ascending
1582
+ */
1583
+ laps: components["schemas"]["GarminActivityLap"][];
1584
+ };
1521
1585
  /**
1522
1586
  * GarminActivityManualUpdate
1523
1587
  * @description Partial manual update payload for Garmin activity records.
@@ -1934,6 +1998,62 @@ export type components = {
1934
1998
  */
1935
1999
  activity_count: number;
1936
2000
  };
2001
+ /**
2002
+ * GarminLapsActivity
2003
+ * @description Activity summary metadata for a batch laps response item.
2004
+ */
2005
+ GarminLapsActivity: {
2006
+ /**
2007
+ * Activity Id
2008
+ * @description Garmin activity identifier
2009
+ */
2010
+ activity_id: string;
2011
+ /**
2012
+ * Sport
2013
+ * @description Sport type (e.g. cycling)
2014
+ */
2015
+ sport?: string | null;
2016
+ /**
2017
+ * Sub Sport
2018
+ * @description Sub-sport type (e.g. road)
2019
+ */
2020
+ sub_sport?: string | null;
2021
+ /**
2022
+ * Start Time
2023
+ * @description UTC activity start time
2024
+ */
2025
+ start_time?: string | null;
2026
+ /**
2027
+ * Distance Km
2028
+ * @description Total activity distance in kilometers
2029
+ */
2030
+ distance_km?: number | null;
2031
+ /**
2032
+ * Duration Seconds
2033
+ * @description Total activity duration in seconds
2034
+ */
2035
+ duration_seconds?: number | null;
2036
+ /**
2037
+ * Avg Speed Kmh
2038
+ * @description Average activity speed in km/h
2039
+ */
2040
+ avg_speed_kmh?: number | null;
2041
+ /**
2042
+ * Avg Heart Rate
2043
+ * @description Average activity heart rate in bpm
2044
+ */
2045
+ avg_heart_rate?: number | null;
2046
+ /**
2047
+ * Max Heart Rate
2048
+ * @description Maximum activity heart rate in bpm
2049
+ */
2050
+ max_heart_rate?: number | null;
2051
+ /**
2052
+ * Total Ascent M
2053
+ * @description Total activity elevation gain in meters
2054
+ */
2055
+ total_ascent_m?: number | null;
2056
+ };
1937
2057
  /**
1938
2058
  * GarminSyncResponse
1939
2059
  * @description Response payload for Garmin on-demand sync trigger requests.
@@ -2751,6 +2871,29 @@ export type components = {
2751
2871
  */
2752
2872
  offset: number;
2753
2873
  };
2874
+ /** PaginatedResponse[GarminActivityLapsGroup] */
2875
+ PaginatedResponse_GarminActivityLapsGroup_: {
2876
+ /**
2877
+ * Items
2878
+ * @description List of items in the current page
2879
+ */
2880
+ items: components["schemas"]["GarminActivityLapsGroup"][];
2881
+ /**
2882
+ * Total
2883
+ * @description Total number of items matching the query
2884
+ */
2885
+ total: number;
2886
+ /**
2887
+ * Limit
2888
+ * @description Maximum number of items per page
2889
+ */
2890
+ limit: number;
2891
+ /**
2892
+ * Offset
2893
+ * @description Number of items skipped from the start
2894
+ */
2895
+ offset: number;
2896
+ };
2754
2897
  /** PaginatedResponse[GarminActivity] */
2755
2898
  PaginatedResponse_GarminActivity_: {
2756
2899
  /**
@@ -3001,6 +3144,118 @@ export type components = {
3001
3144
  */
3002
3145
  description?: string | null;
3003
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
+ };
3004
3259
  /**
3005
3260
  * SportInfo
3006
3261
  * @description Sport type with its activity count.
@@ -3831,6 +4086,46 @@ export interface operations {
3831
4086
  };
3832
4087
  };
3833
4088
  };
4089
+ list_laps_api_v1_garmin_laps_get: {
4090
+ parameters: {
4091
+ query?: {
4092
+ /** @description Filter by sport type */
4093
+ sport?: string | null;
4094
+ /** @description Filter from date (YYYY-MM-DD) */
4095
+ date_from?: string | null;
4096
+ /** @description Filter to date (YYYY-MM-DD) */
4097
+ date_to?: string | null;
4098
+ /** @description Maximum number of activities to return per page */
4099
+ limit?: number;
4100
+ /** @description Number of activities to skip for pagination */
4101
+ offset?: number;
4102
+ };
4103
+ header?: never;
4104
+ path?: never;
4105
+ cookie?: never;
4106
+ };
4107
+ requestBody?: never;
4108
+ responses: {
4109
+ /** @description Successful Response */
4110
+ 200: {
4111
+ headers: {
4112
+ [name: string]: unknown;
4113
+ };
4114
+ content: {
4115
+ "application/json": components["schemas"]["PaginatedResponse_GarminActivityLapsGroup_"];
4116
+ };
4117
+ };
4118
+ /** @description Validation Error */
4119
+ 422: {
4120
+ headers: {
4121
+ [name: string]: unknown;
4122
+ };
4123
+ content: {
4124
+ "application/json": components["schemas"]["HTTPValidationError"];
4125
+ };
4126
+ };
4127
+ };
4128
+ };
3834
4129
  list_activity_addresses_api_v1_garmin_activities__activity_id__addresses_get: {
3835
4130
  parameters: {
3836
4131
  query?: never;
@@ -3870,6 +4165,56 @@ export interface operations {
3870
4165
  };
3871
4166
  };
3872
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
+ };
3873
4218
  list_unified_gps_api_v1_gps_unified_get: {
3874
4219
  parameters: {
3875
4220
  query?: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stuartshay/otel-data-types",
3
- "version": "1.0.506",
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": {