@stuartshay/otel-data-types 1.0.514 → 1.0.526

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 +578 -0
  2. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -436,6 +436,101 @@ 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
+ };
466
+ "/api/v1/garmin/segments": {
467
+ parameters: {
468
+ query?: never;
469
+ header?: never;
470
+ path?: never;
471
+ cookie?: never;
472
+ };
473
+ /**
474
+ * List Segments
475
+ * @description List saved segments (paths), newest first.
476
+ */
477
+ get: operations["list_segments_api_v1_garmin_segments_get"];
478
+ put?: never;
479
+ /**
480
+ * Create Segment
481
+ * @description Save a new segment (path) from a climb, lap, or manual selection (auth required).
482
+ */
483
+ post: operations["create_segment_api_v1_garmin_segments_post"];
484
+ delete?: never;
485
+ options?: never;
486
+ head?: never;
487
+ patch?: never;
488
+ trace?: never;
489
+ };
490
+ "/api/v1/garmin/segments/{segment_id}": {
491
+ parameters: {
492
+ query?: never;
493
+ header?: never;
494
+ path?: never;
495
+ cookie?: never;
496
+ };
497
+ /**
498
+ * Get Segment
499
+ * @description Get a single saved segment by ID.
500
+ */
501
+ get: operations["get_segment_api_v1_garmin_segments__segment_id__get"];
502
+ put?: never;
503
+ post?: never;
504
+ /**
505
+ * Delete Segment
506
+ * @description Delete a saved segment (auth required).
507
+ */
508
+ delete: operations["delete_segment_api_v1_garmin_segments__segment_id__delete"];
509
+ options?: never;
510
+ head?: never;
511
+ patch?: never;
512
+ trace?: never;
513
+ };
514
+ "/api/v1/garmin/segments/{segment_id}/efforts": {
515
+ parameters: {
516
+ query?: never;
517
+ header?: never;
518
+ path?: never;
519
+ cookie?: never;
520
+ };
521
+ /**
522
+ * Get Segment Efforts
523
+ * @description Rank activity efforts over a saved segment (matches the saved start/end corridor).
524
+ */
525
+ get: operations["get_segment_efforts_api_v1_garmin_segments__segment_id__efforts_get"];
526
+ put?: never;
527
+ post?: never;
528
+ delete?: never;
529
+ options?: never;
530
+ head?: never;
531
+ patch?: never;
532
+ trace?: never;
533
+ };
439
534
  "/api/v1/gps/unified": {
440
535
  parameters: {
441
536
  query?: never;
@@ -2027,6 +2122,145 @@ export type components = {
2027
2122
  */
2028
2123
  total_ascent_m?: number | null;
2029
2124
  };
2125
+ /**
2126
+ * GarminSegment
2127
+ * @description A saved named segment (path) for cross-activity effort comparison.
2128
+ */
2129
+ GarminSegment: {
2130
+ /**
2131
+ * Id
2132
+ * @description Unique saved segment identifier
2133
+ */
2134
+ id: number;
2135
+ /**
2136
+ * Name
2137
+ * @description Human-readable segment name
2138
+ */
2139
+ name: string;
2140
+ /**
2141
+ * Sport
2142
+ * @description Sport type (e.g. cycling)
2143
+ */
2144
+ sport?: string | null;
2145
+ /**
2146
+ * Start Latitude
2147
+ * @description Segment start latitude
2148
+ */
2149
+ start_latitude: number;
2150
+ /**
2151
+ * Start Longitude
2152
+ * @description Segment start longitude
2153
+ */
2154
+ start_longitude: number;
2155
+ /**
2156
+ * End Latitude
2157
+ * @description Segment end latitude
2158
+ */
2159
+ end_latitude: number;
2160
+ /**
2161
+ * End Longitude
2162
+ * @description Segment end longitude
2163
+ */
2164
+ end_longitude: number;
2165
+ /**
2166
+ * Distance Meters
2167
+ * @description Segment distance in meters
2168
+ */
2169
+ distance_meters?: number | null;
2170
+ /**
2171
+ * Match Tolerance Meters
2172
+ * @description Corridor radius (m) used to match traversing activities
2173
+ */
2174
+ match_tolerance_meters: number;
2175
+ /**
2176
+ * Source Activity Id
2177
+ * @description Activity the segment was created from
2178
+ */
2179
+ source_activity_id?: string | null;
2180
+ /**
2181
+ * Source Lap Index
2182
+ * @description Lap index the segment was created from
2183
+ */
2184
+ source_lap_index?: number | null;
2185
+ /**
2186
+ * Source Climb Index
2187
+ * @description Climb split index the segment was created from
2188
+ */
2189
+ source_climb_index?: number | null;
2190
+ /**
2191
+ * Created At
2192
+ * @description UTC creation timestamp
2193
+ */
2194
+ created_at?: string | null;
2195
+ /**
2196
+ * Updated At
2197
+ * @description UTC last-update timestamp
2198
+ */
2199
+ updated_at?: string | null;
2200
+ };
2201
+ /**
2202
+ * GarminSegmentCreate
2203
+ * @description Request body to save a new segment (path).
2204
+ */
2205
+ GarminSegmentCreate: {
2206
+ /**
2207
+ * Name
2208
+ * @description Human-readable segment name
2209
+ */
2210
+ name: string;
2211
+ /**
2212
+ * Sport
2213
+ * @description Sport type; defaults to cycling
2214
+ * @default cycling
2215
+ */
2216
+ sport: string | null;
2217
+ /**
2218
+ * Start Latitude
2219
+ * @description Segment start latitude
2220
+ */
2221
+ start_latitude: number;
2222
+ /**
2223
+ * Start Longitude
2224
+ * @description Segment start longitude
2225
+ */
2226
+ start_longitude: number;
2227
+ /**
2228
+ * End Latitude
2229
+ * @description Segment end latitude
2230
+ */
2231
+ end_latitude: number;
2232
+ /**
2233
+ * End Longitude
2234
+ * @description Segment end longitude
2235
+ */
2236
+ end_longitude: number;
2237
+ /**
2238
+ * Distance Meters
2239
+ * @description Segment distance in meters
2240
+ */
2241
+ distance_meters?: number | null;
2242
+ /**
2243
+ * Match Tolerance Meters
2244
+ * @description Corridor radius (m) used to match traversing activities
2245
+ * @default 35
2246
+ */
2247
+ match_tolerance_meters: number;
2248
+ /**
2249
+ * Source Activity Id
2250
+ * @description Activity the segment was created from
2251
+ */
2252
+ source_activity_id?: string | null;
2253
+ /**
2254
+ * Source Lap Index
2255
+ * @description Lap index the segment was created from
2256
+ */
2257
+ source_lap_index?: number | null;
2258
+ /**
2259
+ * Source Climb Index
2260
+ * @description Climb split index the segment was created from
2261
+ */
2262
+ source_climb_index?: number | null;
2263
+ };
2030
2264
  /**
2031
2265
  * GarminSyncResponse
2032
2266
  * @description Response payload for Garmin on-demand sync trigger requests.
@@ -3117,6 +3351,118 @@ export type components = {
3117
3351
  */
3118
3352
  description?: string | null;
3119
3353
  };
3354
+ /**
3355
+ * SegmentDefinition
3356
+ * @description The ad-hoc segment queried for efforts (a start→end corridor).
3357
+ */
3358
+ SegmentDefinition: {
3359
+ /**
3360
+ * Start Lat
3361
+ * @description Segment start latitude
3362
+ */
3363
+ start_lat: number;
3364
+ /**
3365
+ * Start Lon
3366
+ * @description Segment start longitude
3367
+ */
3368
+ start_lon: number;
3369
+ /**
3370
+ * End Lat
3371
+ * @description Segment end latitude
3372
+ */
3373
+ end_lat: number;
3374
+ /**
3375
+ * End Lon
3376
+ * @description Segment end longitude
3377
+ */
3378
+ end_lon: number;
3379
+ /**
3380
+ * Tolerance Meters
3381
+ * @description Corridor radius around the start/end points in meters
3382
+ */
3383
+ tolerance_meters: number;
3384
+ };
3385
+ /**
3386
+ * SegmentEffort
3387
+ * @description A single activity's best traversal of a segment, for cross-activity comparison.
3388
+ */
3389
+ SegmentEffort: {
3390
+ /**
3391
+ * Rank
3392
+ * @description 1-based rank by elapsed time (1 = fastest)
3393
+ */
3394
+ rank: number;
3395
+ /**
3396
+ * Activity Id
3397
+ * @description Garmin activity identifier
3398
+ */
3399
+ activity_id: string;
3400
+ /**
3401
+ * Sport
3402
+ * @description Sport type (e.g. cycling)
3403
+ */
3404
+ sport?: string | null;
3405
+ /**
3406
+ * Activity Start Time
3407
+ * @description UTC start time of the parent activity
3408
+ */
3409
+ activity_start_time?: string | null;
3410
+ /**
3411
+ * Effort Start
3412
+ * Format: date-time
3413
+ * @description UTC timestamp entering the segment start corridor
3414
+ */
3415
+ effort_start: string;
3416
+ /**
3417
+ * Effort End
3418
+ * Format: date-time
3419
+ * @description UTC timestamp reaching the segment end corridor
3420
+ */
3421
+ effort_end: string;
3422
+ /**
3423
+ * Elapsed Seconds
3424
+ * @description Segment elapsed time in seconds
3425
+ */
3426
+ elapsed_seconds: number;
3427
+ /**
3428
+ * Distance Km
3429
+ * @description Distance covered across the segment in km
3430
+ */
3431
+ distance_km?: number | null;
3432
+ /**
3433
+ * Avg Speed Kmh
3434
+ * @description Average speed across the segment in km/h
3435
+ */
3436
+ avg_speed_kmh?: number | null;
3437
+ /**
3438
+ * Avg Heart Rate
3439
+ * @description Average heart rate across the segment in bpm
3440
+ */
3441
+ avg_heart_rate?: number | null;
3442
+ /**
3443
+ * Max Heart Rate
3444
+ * @description Maximum heart rate across the segment in bpm
3445
+ */
3446
+ max_heart_rate?: number | null;
3447
+ };
3448
+ /**
3449
+ * SegmentEffortsResponse
3450
+ * @description Ranked efforts for a segment across all matching activities.
3451
+ */
3452
+ SegmentEffortsResponse: {
3453
+ /** @description The queried segment definition */
3454
+ segment: components["schemas"]["SegmentDefinition"];
3455
+ /**
3456
+ * Total
3457
+ * @description Number of matching efforts returned
3458
+ */
3459
+ total: number;
3460
+ /**
3461
+ * Items
3462
+ * @description Efforts ordered fastest-first
3463
+ */
3464
+ items: components["schemas"]["SegmentEffort"][];
3465
+ };
3120
3466
  /**
3121
3467
  * SportInfo
3122
3468
  * @description Sport type with its activity count.
@@ -4026,6 +4372,238 @@ export interface operations {
4026
4372
  };
4027
4373
  };
4028
4374
  };
4375
+ list_segment_efforts_api_v1_garmin_segment_efforts_get: {
4376
+ parameters: {
4377
+ query: {
4378
+ /** @description Segment start latitude */
4379
+ start_lat: number;
4380
+ /** @description Segment start longitude */
4381
+ start_lon: number;
4382
+ /** @description Segment end latitude */
4383
+ end_lat: number;
4384
+ /** @description Segment end longitude */
4385
+ end_lon: number;
4386
+ /** @description Corridor radius around the start/end points in meters */
4387
+ tolerance_meters?: number;
4388
+ /** @description Filter by sport type; pass an empty value to include all sports */
4389
+ sport?: string | null;
4390
+ /** @description Filter from date (YYYY-MM-DD) on activity start_time */
4391
+ date_from?: string | null;
4392
+ /** @description Filter to date (YYYY-MM-DD) on activity start_time */
4393
+ date_to?: string | null;
4394
+ /** @description Ignore traversals longer than this (filters loop/return mismatches) */
4395
+ max_effort_seconds?: number;
4396
+ /** @description Maximum number of efforts to return */
4397
+ limit?: number;
4398
+ };
4399
+ header?: never;
4400
+ path?: never;
4401
+ cookie?: never;
4402
+ };
4403
+ requestBody?: never;
4404
+ responses: {
4405
+ /** @description Successful Response */
4406
+ 200: {
4407
+ headers: {
4408
+ [name: string]: unknown;
4409
+ };
4410
+ content: {
4411
+ "application/json": components["schemas"]["SegmentEffortsResponse"];
4412
+ };
4413
+ };
4414
+ /** @description Validation Error */
4415
+ 422: {
4416
+ headers: {
4417
+ [name: string]: unknown;
4418
+ };
4419
+ content: {
4420
+ "application/json": components["schemas"]["HTTPValidationError"];
4421
+ };
4422
+ };
4423
+ };
4424
+ };
4425
+ list_segments_api_v1_garmin_segments_get: {
4426
+ parameters: {
4427
+ query?: {
4428
+ /** @description Filter by sport type */
4429
+ sport?: string | null;
4430
+ };
4431
+ header?: never;
4432
+ path?: never;
4433
+ cookie?: never;
4434
+ };
4435
+ requestBody?: never;
4436
+ responses: {
4437
+ /** @description Successful Response */
4438
+ 200: {
4439
+ headers: {
4440
+ [name: string]: unknown;
4441
+ };
4442
+ content: {
4443
+ "application/json": components["schemas"]["GarminSegment"][];
4444
+ };
4445
+ };
4446
+ /** @description Validation Error */
4447
+ 422: {
4448
+ headers: {
4449
+ [name: string]: unknown;
4450
+ };
4451
+ content: {
4452
+ "application/json": components["schemas"]["HTTPValidationError"];
4453
+ };
4454
+ };
4455
+ };
4456
+ };
4457
+ create_segment_api_v1_garmin_segments_post: {
4458
+ parameters: {
4459
+ query?: never;
4460
+ header?: never;
4461
+ path?: never;
4462
+ cookie?: never;
4463
+ };
4464
+ requestBody: {
4465
+ content: {
4466
+ "application/json": components["schemas"]["GarminSegmentCreate"];
4467
+ };
4468
+ };
4469
+ responses: {
4470
+ /** @description Successful Response */
4471
+ 201: {
4472
+ headers: {
4473
+ [name: string]: unknown;
4474
+ };
4475
+ content: {
4476
+ "application/json": components["schemas"]["GarminSegment"];
4477
+ };
4478
+ };
4479
+ /** @description Validation Error */
4480
+ 422: {
4481
+ headers: {
4482
+ [name: string]: unknown;
4483
+ };
4484
+ content: {
4485
+ "application/json": components["schemas"]["HTTPValidationError"];
4486
+ };
4487
+ };
4488
+ };
4489
+ };
4490
+ get_segment_api_v1_garmin_segments__segment_id__get: {
4491
+ parameters: {
4492
+ query?: never;
4493
+ header?: never;
4494
+ path: {
4495
+ /** @description Saved segment ID */
4496
+ segment_id: number;
4497
+ };
4498
+ cookie?: never;
4499
+ };
4500
+ requestBody?: never;
4501
+ responses: {
4502
+ /** @description Successful Response */
4503
+ 200: {
4504
+ headers: {
4505
+ [name: string]: unknown;
4506
+ };
4507
+ content: {
4508
+ "application/json": components["schemas"]["GarminSegment"];
4509
+ };
4510
+ };
4511
+ /** @description Segment not found */
4512
+ 404: {
4513
+ headers: {
4514
+ [name: string]: unknown;
4515
+ };
4516
+ content?: never;
4517
+ };
4518
+ /** @description Validation Error */
4519
+ 422: {
4520
+ headers: {
4521
+ [name: string]: unknown;
4522
+ };
4523
+ content: {
4524
+ "application/json": components["schemas"]["HTTPValidationError"];
4525
+ };
4526
+ };
4527
+ };
4528
+ };
4529
+ delete_segment_api_v1_garmin_segments__segment_id__delete: {
4530
+ parameters: {
4531
+ query?: never;
4532
+ header?: never;
4533
+ path: {
4534
+ /** @description Saved segment ID */
4535
+ segment_id: number;
4536
+ };
4537
+ cookie?: never;
4538
+ };
4539
+ requestBody?: never;
4540
+ responses: {
4541
+ /** @description Successful Response */
4542
+ 204: {
4543
+ headers: {
4544
+ [name: string]: unknown;
4545
+ };
4546
+ content?: never;
4547
+ };
4548
+ /** @description Validation Error */
4549
+ 422: {
4550
+ headers: {
4551
+ [name: string]: unknown;
4552
+ };
4553
+ content: {
4554
+ "application/json": components["schemas"]["HTTPValidationError"];
4555
+ };
4556
+ };
4557
+ };
4558
+ };
4559
+ get_segment_efforts_api_v1_garmin_segments__segment_id__efforts_get: {
4560
+ parameters: {
4561
+ query?: {
4562
+ /** @description Filter from date (YYYY-MM-DD) on activity start_time */
4563
+ date_from?: string | null;
4564
+ /** @description Filter to date (YYYY-MM-DD) on activity start_time */
4565
+ date_to?: string | null;
4566
+ /** @description Ignore traversals longer than this */
4567
+ max_effort_seconds?: number;
4568
+ /** @description Maximum number of efforts to return */
4569
+ limit?: number;
4570
+ };
4571
+ header?: never;
4572
+ path: {
4573
+ /** @description Saved segment ID */
4574
+ segment_id: number;
4575
+ };
4576
+ cookie?: never;
4577
+ };
4578
+ requestBody?: never;
4579
+ responses: {
4580
+ /** @description Successful Response */
4581
+ 200: {
4582
+ headers: {
4583
+ [name: string]: unknown;
4584
+ };
4585
+ content: {
4586
+ "application/json": components["schemas"]["SegmentEffortsResponse"];
4587
+ };
4588
+ };
4589
+ /** @description Segment not found */
4590
+ 404: {
4591
+ headers: {
4592
+ [name: string]: unknown;
4593
+ };
4594
+ content?: never;
4595
+ };
4596
+ /** @description Validation Error */
4597
+ 422: {
4598
+ headers: {
4599
+ [name: string]: unknown;
4600
+ };
4601
+ content: {
4602
+ "application/json": components["schemas"]["HTTPValidationError"];
4603
+ };
4604
+ };
4605
+ };
4606
+ };
4029
4607
  list_unified_gps_api_v1_gps_unified_get: {
4030
4608
  parameters: {
4031
4609
  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.526",
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": {