@gooin/garmin-connect 1.6.9 → 1.6.10

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 (62) hide show
  1. package/dist/common/HttpClient.d.ts +37 -37
  2. package/dist/common/HttpClient.js +345 -332
  3. package/dist/common/HttpClient.js.map +1 -1
  4. package/dist/garmin/GarminConnect.d.ts +84 -84
  5. package/dist/garmin/GarminConnect.js +470 -470
  6. package/dist/garmin/UrlClass.d.ts +43 -43
  7. package/dist/garmin/UrlClass.js +124 -124
  8. package/dist/garmin/common/DateUtils.d.ts +6 -6
  9. package/dist/garmin/common/DateUtils.js +37 -37
  10. package/dist/garmin/common/HydrationUtils.d.ts +2 -2
  11. package/dist/garmin/common/HydrationUtils.js +15 -15
  12. package/dist/garmin/common/WeightUtils.d.ts +1 -1
  13. package/dist/garmin/common/WeightUtils.js +8 -8
  14. package/dist/garmin/types/activity.d.ts +408 -408
  15. package/dist/garmin/types/activity.js +26 -26
  16. package/dist/garmin/types/course.d.ts +146 -146
  17. package/dist/garmin/types/course.js +2 -2
  18. package/dist/garmin/types/golf.d.ts +67 -67
  19. package/dist/garmin/types/golf.js +2 -2
  20. package/dist/garmin/types/heartrate.d.ts +22 -22
  21. package/dist/garmin/types/heartrate.js +1 -1
  22. package/dist/garmin/types/hydration.d.ts +28 -28
  23. package/dist/garmin/types/hydration.js +1 -1
  24. package/dist/garmin/types/index.d.ts +541 -541
  25. package/dist/garmin/types/index.js +16 -16
  26. package/dist/garmin/types/sleep.d.ts +120 -120
  27. package/dist/garmin/types/sleep.js +2 -2
  28. package/dist/garmin/types/weight.d.ts +42 -42
  29. package/dist/garmin/types/weight.js +2 -2
  30. package/dist/garmin/workouts/Running.d.ts +16 -16
  31. package/dist/garmin/workouts/Running.js +46 -46
  32. package/dist/garmin/workouts/templates/RunningTemplate.d.ts +68 -68
  33. package/dist/garmin/workouts/templates/RunningTemplate.js +77 -77
  34. package/dist/index.d.ts +1 -1
  35. package/dist/index.js +8 -8
  36. package/dist/utils.d.ts +3 -3
  37. package/dist/utils.js +36 -36
  38. package/package.json +1 -1
  39. package/dist/common/CFClient.d.ts +0 -22
  40. package/dist/common/CFClient.js +0 -137
  41. package/dist/common/CFClient.js.map +0 -1
  42. package/dist/common/DateUtils.d.ts +0 -1
  43. package/dist/common/DateUtils.js +0 -11
  44. package/dist/common/DateUtils.js.map +0 -1
  45. package/dist/garmin/GarminConnect copy.d.ts +0 -76
  46. package/dist/garmin/GarminConnect copy.js +0 -397
  47. package/dist/garmin/GarminConnect copy.js.map +0 -1
  48. package/dist/garmin/GarminConnect_new.d.ts +0 -76
  49. package/dist/garmin/GarminConnect_new.js +0 -397
  50. package/dist/garmin/GarminConnect_new.js.map +0 -1
  51. package/dist/garmin/GarminConnect_old.d.ts +0 -75
  52. package/dist/garmin/GarminConnect_old.js +0 -386
  53. package/dist/garmin/GarminConnect_old.js.map +0 -1
  54. package/dist/garmin/Urls copy.d.ts +0 -66
  55. package/dist/garmin/Urls copy.js +0 -109
  56. package/dist/garmin/Urls copy.js.map +0 -1
  57. package/dist/garmin/Urls.d.ts +0 -64
  58. package/dist/garmin/Urls.js +0 -104
  59. package/dist/garmin/Urls.js.map +0 -1
  60. package/dist/garmin/types.d.ts +0 -927
  61. package/dist/garmin/types.js +0 -17
  62. package/dist/garmin/types.js.map +0 -1
@@ -1,541 +1,541 @@
1
- export type GCUserProfileId = number;
2
- export type GCUserHash = string;
3
- export type GCWorkoutId = string;
4
- export type GCCourseId = number;
5
- export type GCBadgeId = number;
6
- export type GarminDomain = 'garmin.com' | 'garmin.cn';
7
- export declare enum ExportFileType {
8
- tcx = "tcx",
9
- gpx = "gpx",
10
- kml = "kml",
11
- zip = "zip"
12
- }
13
- export declare enum UploadFileType {
14
- tcx = "tcx",
15
- gpx = "gpx",
16
- fit = "fit"
17
- }
18
- export type ExportFileTypeValue = keyof typeof ExportFileType;
19
- export type UploadFileTypeTypeValue = keyof typeof UploadFileType;
20
- export interface IUserInfo {
21
- userProfileId: GCUserProfileId;
22
- username: string;
23
- emailAddress: string;
24
- locale: string;
25
- measurementSystemKey: string;
26
- timeFormatKey: string;
27
- dateFormatKey: string;
28
- numberFormatKey: string;
29
- heartRateDisplayFormatKey: string;
30
- powerDisplayFormatKey: string;
31
- timeZoneGroupKey: string;
32
- dayKey: unknown;
33
- isPublicByDefault: boolean;
34
- roles: string[];
35
- displayName: GCUserHash;
36
- tocAcceptedDate: string;
37
- defaultActivityPrivacy: unknown;
38
- customerId: string;
39
- birthdate: unknown;
40
- socialNetwork: string;
41
- socialIcon: string;
42
- systemUser: boolean;
43
- systemMetricUser: boolean;
44
- underAge: boolean;
45
- }
46
- export interface ISocialProfile {
47
- id: number;
48
- profileId: GCUserProfileId;
49
- garminGUID: string;
50
- displayName: GCUserHash;
51
- fullName: string;
52
- userName: string;
53
- profileImageUuid: unknown;
54
- profileImageUrlLarge: string;
55
- profileImageUrlMedium: string;
56
- profileImageUrlSmall: string;
57
- location: string;
58
- facebookUrl: unknown;
59
- twitterUrl: unknown;
60
- personalWebsite: unknown;
61
- motivation: unknown;
62
- bio: unknown;
63
- primaryActivity: unknown;
64
- favoriteActivityTypes: unknown[];
65
- runningTrainingSpeed: number;
66
- cyclingTrainingSpeed: number;
67
- favoriteCyclingActivityTypes: unknown[];
68
- cyclingClassification: unknown;
69
- cyclingMaxAvgPower: number;
70
- swimmingTrainingSpeed: number;
71
- profileVisibility: string;
72
- activityStartVisibility: string;
73
- activityMapVisibility: string;
74
- courseVisibility: string;
75
- activityHeartRateVisibility: string;
76
- activityPowerVisibility: string;
77
- badgeVisibility: string;
78
- showAge: boolean;
79
- showWeight: boolean;
80
- showHeight: boolean;
81
- showWeightClass: boolean;
82
- showAgeRange: boolean;
83
- showGender: boolean;
84
- showActivityClass: boolean;
85
- showVO2Max: boolean;
86
- showPersonalRecords: boolean;
87
- showLast12Months: boolean;
88
- showLifetimeTotals: boolean;
89
- showUpcomingEvents: boolean;
90
- showRecentFavorites: boolean;
91
- showRecentDevice: boolean;
92
- showRecentGear: boolean;
93
- showBadges: boolean;
94
- otherActivity: null;
95
- otherPrimaryActivity: null;
96
- otherMotivation: null;
97
- userRoles: string[];
98
- nameApproved: boolean;
99
- userProfileFullName: string;
100
- makeGolfScorecardsPrivate: boolean;
101
- allowGolfLiveScoring: boolean;
102
- allowGolfScoringByConnections: boolean;
103
- userLevel: number;
104
- userPoint: number;
105
- levelUpdateDate: string;
106
- levelIsViewed: boolean;
107
- levelPointThreshold: number;
108
- userPointOffset: number;
109
- userPro: boolean;
110
- }
111
- export interface ISocialConnection {
112
- userId: number;
113
- displayName: GCUserHash;
114
- fullName: string;
115
- location: string;
116
- profileImageUrlMedium: string;
117
- profileImageUrlSmall: string;
118
- userLevel: number;
119
- connectionRequestId: number;
120
- connectionRequestorId: number;
121
- userConnectionStatus: number;
122
- userRoles: string[];
123
- profileVisibility: number;
124
- deviceInvitations: unknown[];
125
- nameApproved: boolean;
126
- badgeVisibility: number;
127
- userPro: boolean;
128
- }
129
- export interface ISocialConnections {
130
- fullName: string;
131
- userConnections: ISocialConnection[];
132
- pagination: unknown;
133
- }
134
- export interface IBadgeSocialConnection {
135
- userProfileId: GCUserProfileId;
136
- fullName: string;
137
- displayName: GCUserHash;
138
- profileImageUrlMedium: string;
139
- profileImageUrlSmall: string;
140
- userLevel: number;
141
- badgeEarnedDate: string;
142
- }
143
- export interface IBadgeRelated {
144
- badgeId: GCBadgeId;
145
- badgeKey: string;
146
- badgeName: string;
147
- badgeUuid: unknown;
148
- badgeCategoryId: number;
149
- badgeDifficultyId: number;
150
- badgePoints: number;
151
- badgeTypeIds: number[];
152
- earnedByMe: boolean;
153
- }
154
- export interface IBadge {
155
- badgeId: GCBadgeId;
156
- badgeKey: string;
157
- badgeName: string;
158
- badgeUuid: unknown;
159
- badgeCategoryId: number;
160
- badgeDifficultyId: number;
161
- badgePoints: number;
162
- badgeTypeIds: number[];
163
- badgeSeriesId: unknown;
164
- badgeStartDate: string;
165
- badgeEndDate: unknown;
166
- userProfileId: number;
167
- fullName: string;
168
- displayName: string;
169
- badgeEarnedDate: string;
170
- badgeEarnedNumber: number;
171
- badgeLimitCount: unknown;
172
- badgeIsViewed: boolean;
173
- badgeProgressValue: number;
174
- badgeTargetValue: unknown;
175
- badgeUnitId: unknown;
176
- badgeAssocTypeId: number;
177
- badgeAssocDataId: unknown;
178
- badgeAssocDataName: unknown;
179
- earnedByMe: boolean;
180
- currentPlayerType: unknown;
181
- userJoined: unknown;
182
- badgeChallengeStatusId: unknown;
183
- badgePromotionCodeType: unknown;
184
- promotionCodeStatus: unknown;
185
- createDate: string;
186
- relatedBadges: IBadgeRelated[] | null;
187
- connectionNumber: number;
188
- connections: IBadgeSocialConnection[] | null;
189
- }
190
- export interface Gear {
191
- gearPk: number;
192
- uuid: string;
193
- userProfilePk: number;
194
- gearMakeName: string;
195
- gearModelName: string;
196
- gearTypeName: string;
197
- gearStatusName: string;
198
- displayName: string;
199
- customMakeModel: string;
200
- imageNameLarge: any;
201
- imageNameMedium: any;
202
- imageNameSmall: any;
203
- dateBegin: string;
204
- dateEnd: any;
205
- maximumMeters: number;
206
- notified: boolean;
207
- createDate: string;
208
- updateDate: string;
209
- }
210
- export interface IOauth1Consumer {
211
- key: string;
212
- secret: string;
213
- }
214
- export interface IOauth1 {
215
- token: IOauth1Token;
216
- oauth: OAuth;
217
- }
218
- export interface IGarminTokens {
219
- oauth1: IOauth1Token;
220
- oauth2: IOauth2Token;
221
- }
222
- export interface IOauth1Token {
223
- oauth_token: string;
224
- oauth_token_secret: string;
225
- }
226
- export interface IOauth2Token {
227
- scope: string;
228
- jti: string;
229
- access_token: string;
230
- token_type: string;
231
- refresh_token: string;
232
- expires_in: number;
233
- refresh_token_expires_in: number;
234
- expires_at: number;
235
- refresh_token_expires_at: number;
236
- last_update_date: string;
237
- expires_date: string;
238
- }
239
- export interface IUserSettings {
240
- id: number;
241
- userData: IUserData;
242
- userSleep: {
243
- sleepTime: number;
244
- defaultSleepTime: boolean;
245
- wakeTime: number;
246
- defaultWakeTime: boolean;
247
- };
248
- connectDate: unknown;
249
- sourceType: unknown;
250
- userSleepWindows: IUserSleepWindows[];
251
- }
252
- export interface IUserData {
253
- gender: unknown;
254
- weight: unknown;
255
- height: unknown;
256
- timeFormat: string;
257
- birthDate: unknown;
258
- measurementSystem: string;
259
- activityLevel: unknown;
260
- handedness: string;
261
- powerFormat: {
262
- formatId: number;
263
- formatKey: string;
264
- minFraction: number;
265
- maxFraction: number;
266
- groupingUsed: boolean;
267
- displayFormat: unknown;
268
- };
269
- heartRateFormat: {
270
- formatId: number;
271
- formatKey: string;
272
- minFraction: number;
273
- maxFraction: number;
274
- groupingUsed: boolean;
275
- displayFormat: unknown;
276
- };
277
- firstDayOfWeek: {
278
- dayId: number;
279
- dayName: string;
280
- sortOrder: number;
281
- isPossibleFirstDay: boolean;
282
- };
283
- vo2MaxRunning: unknown;
284
- vo2MaxCycling: unknown;
285
- lactateThresholdSpeed: unknown;
286
- lactateThresholdHeartRate: unknown;
287
- diveNumber: unknown;
288
- intensityMinutesCalcMethod: string;
289
- moderateIntensityMinutesHrZone: number;
290
- vigorousIntensityMinutesHrZone: number;
291
- hydrationMeasurementUnit: string;
292
- hydrationContainers: unknown[];
293
- hydrationAutoGoalEnabled: boolean;
294
- firstbeatMaxStressScore: unknown;
295
- firstbeatCyclingLtTimestamp: unknown;
296
- firstbeatRunningLtTimestamp: unknown;
297
- thresholdHeartRateAutoDetected: unknown;
298
- ftpAutoDetected: unknown;
299
- trainingStatusPausedDate: unknown;
300
- weatherLocation: {
301
- useFixedLocation: unknown;
302
- latitude: unknown;
303
- longitude: unknown;
304
- locationName: unknown;
305
- isoCountryCode: unknown;
306
- postalCode: unknown;
307
- };
308
- golfDistanceUnit: string;
309
- golfElevationUnit: unknown;
310
- golfSpeedUnit: unknown;
311
- externalBottomTime: unknown;
312
- }
313
- export interface IUserSleepWindows {
314
- sleepWindowFrequency: string;
315
- startSleepTimeSecondsFromMidnight: number;
316
- endSleepTimeSecondsFromMidnight: number;
317
- }
318
- export interface ICountActivities {
319
- countOfActivities: number;
320
- date: string;
321
- stats: {
322
- all: Record<string, any>;
323
- };
324
- }
325
- export interface IWorkout {
326
- workoutId?: number;
327
- ownerId?: number;
328
- workoutName: string;
329
- description?: string;
330
- updateDate: Date;
331
- createdDate: Date;
332
- sportType: ISportType;
333
- trainingPlanId: null;
334
- author: IAuthor;
335
- estimatedDurationInSecs: number;
336
- estimatedDistanceInMeters: null;
337
- estimateType: null;
338
- estimatedDistanceUnit: IUnit;
339
- poolLength: number;
340
- poolLengthUnit: IUnit;
341
- workoutProvider: string;
342
- workoutSourceId: string;
343
- consumer: null;
344
- atpPlanId: null;
345
- workoutNameI18nKey: null;
346
- descriptionI18nKey: null;
347
- shared: boolean;
348
- estimated: boolean;
349
- }
350
- export interface IWorkoutDetail extends IWorkout {
351
- workoutSegments: IWorkoutSegment[];
352
- }
353
- export interface IScheduleWorkout {
354
- workoutScheduleId: number;
355
- workout: IWorkoutDetail;
356
- calendarDate: string;
357
- createdDate: string;
358
- ownerId: number;
359
- newName: any;
360
- consumer: any;
361
- atpPlanTypeId: any;
362
- associatedActivityId: any;
363
- priority: any;
364
- associatedActivityDateTime: any;
365
- itp: boolean;
366
- race: boolean;
367
- protected: boolean;
368
- nameChanged: boolean;
369
- }
370
- export interface IAuthor {
371
- userProfilePk: null;
372
- displayName: null;
373
- fullName: null;
374
- profileImgNameLarge: null;
375
- profileImgNameMedium: null;
376
- profileImgNameSmall: null;
377
- userPro: boolean;
378
- vivokidUser: boolean;
379
- }
380
- export interface IUnit {
381
- unitId: null;
382
- unitKey: null;
383
- factor: null;
384
- }
385
- export interface ISportType {
386
- sportTypeId: number;
387
- sportTypeKey: string;
388
- displayOrder?: number;
389
- }
390
- export interface IWorkoutSegment {
391
- segmentOrder: number;
392
- sportType: ISportType;
393
- workoutSteps: IWorkoutStep[];
394
- }
395
- export interface IWorkoutStep {
396
- type: string;
397
- stepId: number;
398
- stepOrder: number;
399
- stepType: IStepType;
400
- childStepId: null;
401
- description: null;
402
- endCondition: IEndCondition;
403
- endConditionValue: number | null;
404
- preferredEndConditionUnit: IUnit | null;
405
- endConditionCompare: null;
406
- targetType: ITargetType;
407
- targetValueOne: null;
408
- targetValueTwo: null;
409
- targetValueUnit: null;
410
- zoneNumber: null;
411
- secondaryTargetType: null;
412
- secondaryTargetValueOne: null;
413
- secondaryTargetValueTwo: null;
414
- secondaryTargetValueUnit: null;
415
- secondaryZoneNumber: null;
416
- endConditionZone: null;
417
- strokeType: IStrokeType;
418
- equipmentType: IEquipmentType;
419
- category: null;
420
- exerciseName: null;
421
- workoutProvider: null;
422
- providerExerciseSourceId: null;
423
- weightValue: null;
424
- weightUnit: null;
425
- }
426
- export interface IEndCondition {
427
- conditionTypeId: number;
428
- conditionTypeKey: string;
429
- displayOrder: number;
430
- displayable: boolean;
431
- }
432
- export interface IEquipmentType {
433
- equipmentTypeId: number;
434
- equipmentTypeKey: null;
435
- displayOrder: number;
436
- }
437
- export interface IStepType {
438
- stepTypeId: number;
439
- stepTypeKey: string;
440
- displayOrder: number;
441
- }
442
- export interface IStrokeType {
443
- strokeTypeId: number;
444
- strokeTypeKey: null;
445
- displayOrder: number;
446
- }
447
- export interface ITargetType {
448
- workoutTargetTypeId: number;
449
- workoutTargetTypeKey: string;
450
- displayOrder: number;
451
- }
452
- export interface IDailyStepsType {
453
- calendarDate: string;
454
- stepGoal: number;
455
- totalDistance: number;
456
- totalSteps: number;
457
- }
458
- export interface ICalendar {
459
- startDayOfMonth: number;
460
- numOfDaysInMonth: number;
461
- numOfDaysInPrevMonth: number;
462
- month: number;
463
- year: number;
464
- calendarItems: ICalendarItem[];
465
- }
466
- export interface ICalendarItem {
467
- id?: number;
468
- groupId: any;
469
- trainingPlanId?: number;
470
- itemType: string;
471
- activityTypeId?: number;
472
- wellnessActivityUuid?: string;
473
- title?: string;
474
- date: string;
475
- duration?: number;
476
- distance?: number;
477
- calories?: number;
478
- floorsClimbed: any;
479
- avgRespirationRate?: number;
480
- unitOfPoolLength: any;
481
- weight?: number;
482
- difference?: number;
483
- courseId: any;
484
- courseName: any;
485
- sportTypeKey?: string;
486
- url: any;
487
- isStart: any;
488
- isRace?: boolean;
489
- recurrenceId: any;
490
- isParent?: boolean;
491
- parentId: any;
492
- userBadgeId: any;
493
- badgeCategoryTypeId: any;
494
- badgeCategoryTypeDesc: any;
495
- badgeAwardedDate: any;
496
- badgeViewed: any;
497
- hideBadge: any;
498
- startTimestampLocal?: string;
499
- eventTimeLocal?: EventTimeLocal;
500
- diveNumber: any;
501
- maxDepth: any;
502
- avgDepth: any;
503
- surfaceInterval: any;
504
- elapsedDuration?: number;
505
- lapCount?: number;
506
- bottomTime: any;
507
- atpPlanId: any;
508
- workoutId?: number;
509
- protectedWorkoutSchedule: boolean;
510
- activeSets?: number;
511
- strokes: any;
512
- noOfSplits?: number;
513
- maxGradeValue: any;
514
- totalAscent?: number;
515
- differenceStress: any;
516
- climbDuration?: number;
517
- maxSpeed?: number;
518
- averageHR?: number;
519
- activeSplitSummaryDuration?: number;
520
- maxSplitDistance?: number;
521
- maxSplitSpeed?: number;
522
- location?: string;
523
- shareableEventUuid?: string;
524
- splitSummaryMode: any;
525
- completionTarget?: CompletionTarget;
526
- shareableEvent: boolean;
527
- primaryEvent?: boolean;
528
- phasedTrainingPlan?: boolean;
529
- subscribed?: boolean;
530
- autoCalcCalories?: boolean;
531
- decoDive?: boolean;
532
- }
533
- export interface EventTimeLocal {
534
- startTimeHhMm: string;
535
- timeZoneId: string;
536
- }
537
- export interface CompletionTarget {
538
- value: number;
539
- unit: string;
540
- unitType: string;
541
- }
1
+ export type GCUserProfileId = number;
2
+ export type GCUserHash = string;
3
+ export type GCWorkoutId = string;
4
+ export type GCCourseId = number;
5
+ export type GCBadgeId = number;
6
+ export type GarminDomain = 'garmin.com' | 'garmin.cn';
7
+ export declare enum ExportFileType {
8
+ tcx = "tcx",
9
+ gpx = "gpx",
10
+ kml = "kml",
11
+ zip = "zip"
12
+ }
13
+ export declare enum UploadFileType {
14
+ tcx = "tcx",
15
+ gpx = "gpx",
16
+ fit = "fit"
17
+ }
18
+ export type ExportFileTypeValue = keyof typeof ExportFileType;
19
+ export type UploadFileTypeTypeValue = keyof typeof UploadFileType;
20
+ export interface IUserInfo {
21
+ userProfileId: GCUserProfileId;
22
+ username: string;
23
+ emailAddress: string;
24
+ locale: string;
25
+ measurementSystemKey: string;
26
+ timeFormatKey: string;
27
+ dateFormatKey: string;
28
+ numberFormatKey: string;
29
+ heartRateDisplayFormatKey: string;
30
+ powerDisplayFormatKey: string;
31
+ timeZoneGroupKey: string;
32
+ dayKey: unknown;
33
+ isPublicByDefault: boolean;
34
+ roles: string[];
35
+ displayName: GCUserHash;
36
+ tocAcceptedDate: string;
37
+ defaultActivityPrivacy: unknown;
38
+ customerId: string;
39
+ birthdate: unknown;
40
+ socialNetwork: string;
41
+ socialIcon: string;
42
+ systemUser: boolean;
43
+ systemMetricUser: boolean;
44
+ underAge: boolean;
45
+ }
46
+ export interface ISocialProfile {
47
+ id: number;
48
+ profileId: GCUserProfileId;
49
+ garminGUID: string;
50
+ displayName: GCUserHash;
51
+ fullName: string;
52
+ userName: string;
53
+ profileImageUuid: unknown;
54
+ profileImageUrlLarge: string;
55
+ profileImageUrlMedium: string;
56
+ profileImageUrlSmall: string;
57
+ location: string;
58
+ facebookUrl: unknown;
59
+ twitterUrl: unknown;
60
+ personalWebsite: unknown;
61
+ motivation: unknown;
62
+ bio: unknown;
63
+ primaryActivity: unknown;
64
+ favoriteActivityTypes: unknown[];
65
+ runningTrainingSpeed: number;
66
+ cyclingTrainingSpeed: number;
67
+ favoriteCyclingActivityTypes: unknown[];
68
+ cyclingClassification: unknown;
69
+ cyclingMaxAvgPower: number;
70
+ swimmingTrainingSpeed: number;
71
+ profileVisibility: string;
72
+ activityStartVisibility: string;
73
+ activityMapVisibility: string;
74
+ courseVisibility: string;
75
+ activityHeartRateVisibility: string;
76
+ activityPowerVisibility: string;
77
+ badgeVisibility: string;
78
+ showAge: boolean;
79
+ showWeight: boolean;
80
+ showHeight: boolean;
81
+ showWeightClass: boolean;
82
+ showAgeRange: boolean;
83
+ showGender: boolean;
84
+ showActivityClass: boolean;
85
+ showVO2Max: boolean;
86
+ showPersonalRecords: boolean;
87
+ showLast12Months: boolean;
88
+ showLifetimeTotals: boolean;
89
+ showUpcomingEvents: boolean;
90
+ showRecentFavorites: boolean;
91
+ showRecentDevice: boolean;
92
+ showRecentGear: boolean;
93
+ showBadges: boolean;
94
+ otherActivity: null;
95
+ otherPrimaryActivity: null;
96
+ otherMotivation: null;
97
+ userRoles: string[];
98
+ nameApproved: boolean;
99
+ userProfileFullName: string;
100
+ makeGolfScorecardsPrivate: boolean;
101
+ allowGolfLiveScoring: boolean;
102
+ allowGolfScoringByConnections: boolean;
103
+ userLevel: number;
104
+ userPoint: number;
105
+ levelUpdateDate: string;
106
+ levelIsViewed: boolean;
107
+ levelPointThreshold: number;
108
+ userPointOffset: number;
109
+ userPro: boolean;
110
+ }
111
+ export interface ISocialConnection {
112
+ userId: number;
113
+ displayName: GCUserHash;
114
+ fullName: string;
115
+ location: string;
116
+ profileImageUrlMedium: string;
117
+ profileImageUrlSmall: string;
118
+ userLevel: number;
119
+ connectionRequestId: number;
120
+ connectionRequestorId: number;
121
+ userConnectionStatus: number;
122
+ userRoles: string[];
123
+ profileVisibility: number;
124
+ deviceInvitations: unknown[];
125
+ nameApproved: boolean;
126
+ badgeVisibility: number;
127
+ userPro: boolean;
128
+ }
129
+ export interface ISocialConnections {
130
+ fullName: string;
131
+ userConnections: ISocialConnection[];
132
+ pagination: unknown;
133
+ }
134
+ export interface IBadgeSocialConnection {
135
+ userProfileId: GCUserProfileId;
136
+ fullName: string;
137
+ displayName: GCUserHash;
138
+ profileImageUrlMedium: string;
139
+ profileImageUrlSmall: string;
140
+ userLevel: number;
141
+ badgeEarnedDate: string;
142
+ }
143
+ export interface IBadgeRelated {
144
+ badgeId: GCBadgeId;
145
+ badgeKey: string;
146
+ badgeName: string;
147
+ badgeUuid: unknown;
148
+ badgeCategoryId: number;
149
+ badgeDifficultyId: number;
150
+ badgePoints: number;
151
+ badgeTypeIds: number[];
152
+ earnedByMe: boolean;
153
+ }
154
+ export interface IBadge {
155
+ badgeId: GCBadgeId;
156
+ badgeKey: string;
157
+ badgeName: string;
158
+ badgeUuid: unknown;
159
+ badgeCategoryId: number;
160
+ badgeDifficultyId: number;
161
+ badgePoints: number;
162
+ badgeTypeIds: number[];
163
+ badgeSeriesId: unknown;
164
+ badgeStartDate: string;
165
+ badgeEndDate: unknown;
166
+ userProfileId: number;
167
+ fullName: string;
168
+ displayName: string;
169
+ badgeEarnedDate: string;
170
+ badgeEarnedNumber: number;
171
+ badgeLimitCount: unknown;
172
+ badgeIsViewed: boolean;
173
+ badgeProgressValue: number;
174
+ badgeTargetValue: unknown;
175
+ badgeUnitId: unknown;
176
+ badgeAssocTypeId: number;
177
+ badgeAssocDataId: unknown;
178
+ badgeAssocDataName: unknown;
179
+ earnedByMe: boolean;
180
+ currentPlayerType: unknown;
181
+ userJoined: unknown;
182
+ badgeChallengeStatusId: unknown;
183
+ badgePromotionCodeType: unknown;
184
+ promotionCodeStatus: unknown;
185
+ createDate: string;
186
+ relatedBadges: IBadgeRelated[] | null;
187
+ connectionNumber: number;
188
+ connections: IBadgeSocialConnection[] | null;
189
+ }
190
+ export interface Gear {
191
+ gearPk: number;
192
+ uuid: string;
193
+ userProfilePk: number;
194
+ gearMakeName: string;
195
+ gearModelName: string;
196
+ gearTypeName: string;
197
+ gearStatusName: string;
198
+ displayName: string;
199
+ customMakeModel: string;
200
+ imageNameLarge: any;
201
+ imageNameMedium: any;
202
+ imageNameSmall: any;
203
+ dateBegin: string;
204
+ dateEnd: any;
205
+ maximumMeters: number;
206
+ notified: boolean;
207
+ createDate: string;
208
+ updateDate: string;
209
+ }
210
+ export interface IOauth1Consumer {
211
+ key: string;
212
+ secret: string;
213
+ }
214
+ export interface IOauth1 {
215
+ token: IOauth1Token;
216
+ oauth: OAuth;
217
+ }
218
+ export interface IGarminTokens {
219
+ oauth1: IOauth1Token;
220
+ oauth2: IOauth2Token;
221
+ }
222
+ export interface IOauth1Token {
223
+ oauth_token: string;
224
+ oauth_token_secret: string;
225
+ }
226
+ export interface IOauth2Token {
227
+ scope: string;
228
+ jti: string;
229
+ access_token: string;
230
+ token_type: string;
231
+ refresh_token: string;
232
+ expires_in: number;
233
+ refresh_token_expires_in: number;
234
+ expires_at: number;
235
+ refresh_token_expires_at: number;
236
+ last_update_date: string;
237
+ expires_date: string;
238
+ }
239
+ export interface IUserSettings {
240
+ id: number;
241
+ userData: IUserData;
242
+ userSleep: {
243
+ sleepTime: number;
244
+ defaultSleepTime: boolean;
245
+ wakeTime: number;
246
+ defaultWakeTime: boolean;
247
+ };
248
+ connectDate: unknown;
249
+ sourceType: unknown;
250
+ userSleepWindows: IUserSleepWindows[];
251
+ }
252
+ export interface IUserData {
253
+ gender: unknown;
254
+ weight: unknown;
255
+ height: unknown;
256
+ timeFormat: string;
257
+ birthDate: unknown;
258
+ measurementSystem: string;
259
+ activityLevel: unknown;
260
+ handedness: string;
261
+ powerFormat: {
262
+ formatId: number;
263
+ formatKey: string;
264
+ minFraction: number;
265
+ maxFraction: number;
266
+ groupingUsed: boolean;
267
+ displayFormat: unknown;
268
+ };
269
+ heartRateFormat: {
270
+ formatId: number;
271
+ formatKey: string;
272
+ minFraction: number;
273
+ maxFraction: number;
274
+ groupingUsed: boolean;
275
+ displayFormat: unknown;
276
+ };
277
+ firstDayOfWeek: {
278
+ dayId: number;
279
+ dayName: string;
280
+ sortOrder: number;
281
+ isPossibleFirstDay: boolean;
282
+ };
283
+ vo2MaxRunning: unknown;
284
+ vo2MaxCycling: unknown;
285
+ lactateThresholdSpeed: unknown;
286
+ lactateThresholdHeartRate: unknown;
287
+ diveNumber: unknown;
288
+ intensityMinutesCalcMethod: string;
289
+ moderateIntensityMinutesHrZone: number;
290
+ vigorousIntensityMinutesHrZone: number;
291
+ hydrationMeasurementUnit: string;
292
+ hydrationContainers: unknown[];
293
+ hydrationAutoGoalEnabled: boolean;
294
+ firstbeatMaxStressScore: unknown;
295
+ firstbeatCyclingLtTimestamp: unknown;
296
+ firstbeatRunningLtTimestamp: unknown;
297
+ thresholdHeartRateAutoDetected: unknown;
298
+ ftpAutoDetected: unknown;
299
+ trainingStatusPausedDate: unknown;
300
+ weatherLocation: {
301
+ useFixedLocation: unknown;
302
+ latitude: unknown;
303
+ longitude: unknown;
304
+ locationName: unknown;
305
+ isoCountryCode: unknown;
306
+ postalCode: unknown;
307
+ };
308
+ golfDistanceUnit: string;
309
+ golfElevationUnit: unknown;
310
+ golfSpeedUnit: unknown;
311
+ externalBottomTime: unknown;
312
+ }
313
+ export interface IUserSleepWindows {
314
+ sleepWindowFrequency: string;
315
+ startSleepTimeSecondsFromMidnight: number;
316
+ endSleepTimeSecondsFromMidnight: number;
317
+ }
318
+ export interface ICountActivities {
319
+ countOfActivities: number;
320
+ date: string;
321
+ stats: {
322
+ all: Record<string, any>;
323
+ };
324
+ }
325
+ export interface IWorkout {
326
+ workoutId?: number;
327
+ ownerId?: number;
328
+ workoutName: string;
329
+ description?: string;
330
+ updateDate: Date;
331
+ createdDate: Date;
332
+ sportType: ISportType;
333
+ trainingPlanId: null;
334
+ author: IAuthor;
335
+ estimatedDurationInSecs: number;
336
+ estimatedDistanceInMeters: null;
337
+ estimateType: null;
338
+ estimatedDistanceUnit: IUnit;
339
+ poolLength: number;
340
+ poolLengthUnit: IUnit;
341
+ workoutProvider: string;
342
+ workoutSourceId: string;
343
+ consumer: null;
344
+ atpPlanId: null;
345
+ workoutNameI18nKey: null;
346
+ descriptionI18nKey: null;
347
+ shared: boolean;
348
+ estimated: boolean;
349
+ }
350
+ export interface IWorkoutDetail extends IWorkout {
351
+ workoutSegments: IWorkoutSegment[];
352
+ }
353
+ export interface IScheduleWorkout {
354
+ workoutScheduleId: number;
355
+ workout: IWorkoutDetail;
356
+ calendarDate: string;
357
+ createdDate: string;
358
+ ownerId: number;
359
+ newName: any;
360
+ consumer: any;
361
+ atpPlanTypeId: any;
362
+ associatedActivityId: any;
363
+ priority: any;
364
+ associatedActivityDateTime: any;
365
+ itp: boolean;
366
+ race: boolean;
367
+ protected: boolean;
368
+ nameChanged: boolean;
369
+ }
370
+ export interface IAuthor {
371
+ userProfilePk: null;
372
+ displayName: null;
373
+ fullName: null;
374
+ profileImgNameLarge: null;
375
+ profileImgNameMedium: null;
376
+ profileImgNameSmall: null;
377
+ userPro: boolean;
378
+ vivokidUser: boolean;
379
+ }
380
+ export interface IUnit {
381
+ unitId: null;
382
+ unitKey: null;
383
+ factor: null;
384
+ }
385
+ export interface ISportType {
386
+ sportTypeId: number;
387
+ sportTypeKey: string;
388
+ displayOrder?: number;
389
+ }
390
+ export interface IWorkoutSegment {
391
+ segmentOrder: number;
392
+ sportType: ISportType;
393
+ workoutSteps: IWorkoutStep[];
394
+ }
395
+ export interface IWorkoutStep {
396
+ type: string;
397
+ stepId: number;
398
+ stepOrder: number;
399
+ stepType: IStepType;
400
+ childStepId: null;
401
+ description: null;
402
+ endCondition: IEndCondition;
403
+ endConditionValue: number | null;
404
+ preferredEndConditionUnit: IUnit | null;
405
+ endConditionCompare: null;
406
+ targetType: ITargetType;
407
+ targetValueOne: null;
408
+ targetValueTwo: null;
409
+ targetValueUnit: null;
410
+ zoneNumber: null;
411
+ secondaryTargetType: null;
412
+ secondaryTargetValueOne: null;
413
+ secondaryTargetValueTwo: null;
414
+ secondaryTargetValueUnit: null;
415
+ secondaryZoneNumber: null;
416
+ endConditionZone: null;
417
+ strokeType: IStrokeType;
418
+ equipmentType: IEquipmentType;
419
+ category: null;
420
+ exerciseName: null;
421
+ workoutProvider: null;
422
+ providerExerciseSourceId: null;
423
+ weightValue: null;
424
+ weightUnit: null;
425
+ }
426
+ export interface IEndCondition {
427
+ conditionTypeId: number;
428
+ conditionTypeKey: string;
429
+ displayOrder: number;
430
+ displayable: boolean;
431
+ }
432
+ export interface IEquipmentType {
433
+ equipmentTypeId: number;
434
+ equipmentTypeKey: null;
435
+ displayOrder: number;
436
+ }
437
+ export interface IStepType {
438
+ stepTypeId: number;
439
+ stepTypeKey: string;
440
+ displayOrder: number;
441
+ }
442
+ export interface IStrokeType {
443
+ strokeTypeId: number;
444
+ strokeTypeKey: null;
445
+ displayOrder: number;
446
+ }
447
+ export interface ITargetType {
448
+ workoutTargetTypeId: number;
449
+ workoutTargetTypeKey: string;
450
+ displayOrder: number;
451
+ }
452
+ export interface IDailyStepsType {
453
+ calendarDate: string;
454
+ stepGoal: number;
455
+ totalDistance: number;
456
+ totalSteps: number;
457
+ }
458
+ export interface ICalendar {
459
+ startDayOfMonth: number;
460
+ numOfDaysInMonth: number;
461
+ numOfDaysInPrevMonth: number;
462
+ month: number;
463
+ year: number;
464
+ calendarItems: ICalendarItem[];
465
+ }
466
+ export interface ICalendarItem {
467
+ id?: number;
468
+ groupId: any;
469
+ trainingPlanId?: number;
470
+ itemType: string;
471
+ activityTypeId?: number;
472
+ wellnessActivityUuid?: string;
473
+ title?: string;
474
+ date: string;
475
+ duration?: number;
476
+ distance?: number;
477
+ calories?: number;
478
+ floorsClimbed: any;
479
+ avgRespirationRate?: number;
480
+ unitOfPoolLength: any;
481
+ weight?: number;
482
+ difference?: number;
483
+ courseId: any;
484
+ courseName: any;
485
+ sportTypeKey?: string;
486
+ url: any;
487
+ isStart: any;
488
+ isRace?: boolean;
489
+ recurrenceId: any;
490
+ isParent?: boolean;
491
+ parentId: any;
492
+ userBadgeId: any;
493
+ badgeCategoryTypeId: any;
494
+ badgeCategoryTypeDesc: any;
495
+ badgeAwardedDate: any;
496
+ badgeViewed: any;
497
+ hideBadge: any;
498
+ startTimestampLocal?: string;
499
+ eventTimeLocal?: EventTimeLocal;
500
+ diveNumber: any;
501
+ maxDepth: any;
502
+ avgDepth: any;
503
+ surfaceInterval: any;
504
+ elapsedDuration?: number;
505
+ lapCount?: number;
506
+ bottomTime: any;
507
+ atpPlanId: any;
508
+ workoutId?: number;
509
+ protectedWorkoutSchedule: boolean;
510
+ activeSets?: number;
511
+ strokes: any;
512
+ noOfSplits?: number;
513
+ maxGradeValue: any;
514
+ totalAscent?: number;
515
+ differenceStress: any;
516
+ climbDuration?: number;
517
+ maxSpeed?: number;
518
+ averageHR?: number;
519
+ activeSplitSummaryDuration?: number;
520
+ maxSplitDistance?: number;
521
+ maxSplitSpeed?: number;
522
+ location?: string;
523
+ shareableEventUuid?: string;
524
+ splitSummaryMode: any;
525
+ completionTarget?: CompletionTarget;
526
+ shareableEvent: boolean;
527
+ primaryEvent?: boolean;
528
+ phasedTrainingPlan?: boolean;
529
+ subscribed?: boolean;
530
+ autoCalcCalories?: boolean;
531
+ decoDive?: boolean;
532
+ }
533
+ export interface EventTimeLocal {
534
+ startTimeHhMm: string;
535
+ timeZoneId: string;
536
+ }
537
+ export interface CompletionTarget {
538
+ value: number;
539
+ unit: string;
540
+ unitType: string;
541
+ }