UNPKG

garmin-connect

Version:

Makes it simple to interface with Garmin Connect to get or set any data point

330 lines (329 loc) 9.33 kB
export type GCUserProfileId = number; export type GCUserHash = string; export type GCActivityId = number; export type GCWorkoutId = string; export interface IUserInfo { userProfileId: GCUserProfileId; username: string; emailAddress: string; locale: string; measurementSystemKey: string; timeFormatKey: string; dateFormatKey: string; numberFormatKey: string; heartRateDisplayFormatKey: string; powerDisplayFormatKey: string; timeZoneGroupKey: string; dayKey: unknown; isPublicByDefault: boolean; roles: string[]; displayName: GCUserHash; tocAcceptedDate: string; defaultActivityPrivacy: unknown; customerId: string; birthdate: unknown; socialNetwork: string; socialIcon: string; systemUser: boolean; systemMetricUser: boolean; underAge: boolean; } export interface ISocialProfile { id: number; profileId: GCUserProfileId; garminGUID: string; displayName: GCUserHash; fullName: string; userName: string; profileImageUuid: unknown; profileImageUrlLarge: string; profileImageUrlMedium: string; profileImageUrlSmall: string; location: string; facebookUrl: unknown; twitterUrl: unknown; personalWebsite: unknown; motivation: unknown; bio: unknown; primaryActivity: unknown; favoriteActivityTypes: unknown[]; runningTrainingSpeed: number; cyclingTrainingSpeed: number; favoriteCyclingActivityTypes: unknown[]; cyclingClassification: unknown; cyclingMaxAvgPower: number; swimmingTrainingSpeed: number; profileVisibility: string; activityStartVisibility: string; activityMapVisibility: string; courseVisibility: string; activityHeartRateVisibility: string; activityPowerVisibility: string; badgeVisibility: string; showAge: boolean; showWeight: boolean; showHeight: boolean; showWeightClass: boolean; showAgeRange: boolean; showGender: boolean; showActivityClass: boolean; showVO2Max: boolean; showPersonalRecords: boolean; showLast12Months: boolean; showLifetimeTotals: boolean; showUpcomingEvents: boolean; showRecentFavorites: boolean; showRecentDevice: boolean; showRecentGear: boolean; showBadges: boolean; otherActivity: null; otherPrimaryActivity: null; otherMotivation: null; userRoles: string[]; nameApproved: boolean; userProfileFullName: string; makeGolfScorecardsPrivate: boolean; allowGolfLiveScoring: boolean; allowGolfScoringByConnections: boolean; userLevel: number; userPoint: number; levelUpdateDate: string; levelIsViewed: boolean; levelPointThreshold: number; userPointOffset: number; userPro: boolean; } export interface ISocialConnection { userId: number; displayName: GCUserHash; fullName: string; location: string; profileImageUrlMedium: string; profileImageUrlSmall: string; userLevel: number; connectionRequestId: number; connectionRequestorId: number; userConnectionStatus: number; userRoles: string[]; profileVisibility: number; deviceInvitations: unknown[]; nameApproved: boolean; badgeVisibility: number; userPro: boolean; } export interface ISocialConnections { fullName: string; userConnections: ISocialConnection[]; pagination: unknown; } export interface IActivity { activityId: GCActivityId; activityName: string; description: unknown; startTimeLocal: string; startTimeGMT: string; activityType: { typeId: number; typeKey: string; parentTypeId: number; isHidden: boolean; sortOrder: unknown; trimmable: boolean; restricted: boolean; }; eventType: { typeId: number; typeKey: string; sortOrder: number; }; comments: unknown; parentId: unknown; distance: number; duration: number; elapsedDuration: number; movingDuration: number; elevationGain: number; elevationLoss: number; averageSpeed: number; maxSpeed: number; startLatitude: number; startLongitude: number; hasPolyline: boolean; ownerId: number; ownerDisplayName: string; ownerFullName: string; ownerProfileImageUrlSmall: string; ownerProfileImageUrlMedium: string; ownerProfileImageUrlLarge: string; calories: number; averageHR: number; maxHR: number; averageRunningCadenceInStepsPerMinute: number; maxRunningCadenceInStepsPerMinute: number; averageBikingCadenceInRevPerMinute: unknown; maxBikingCadenceInRevPerMinute: unknown; averageSwimCadenceInStrokesPerMinute: unknown; maxSwimCadenceInStrokesPerMinute: unknown; averageSwolf: unknown; activeLengths: unknown; steps: number; conversationUuid: unknown; conversationPk: unknown; numberOfActivityLikes: unknown; numberOfActivityComments: unknown; likedByUser: unknown; commentedByUser: unknown; activityLikeDisplayNames: unknown; activityLikeFullNames: unknown; activityLikeProfileImageUrls: unknown; requestorRelationship: unknown; userRoles: string[]; privacy: { typeId: number; typeKey: string; }; userPro: boolean; courseId: unknown; poolLength: unknown; unitOfPoolLength: unknown; hasVideo: boolean; videoUrl: unknown; timeZoneId: number; beginTimestamp: number; sportTypeId: number; avgPower: unknown; maxPower: unknown; aerobicTrainingEffect: unknown; anaerobicTrainingEffect: unknown; strokes: unknown; normPower: unknown; leftBalance: unknown; rightBalance: unknown; avgLeftBalance: unknown; max20MinPower: unknown; avgVerticalOscillation: unknown; avgGroundContactTime: unknown; avgStrideLength: number; avgFractionalCadence: unknown; maxFractionalCadence: unknown; trainingStressScore: unknown; intensityFactor: unknown; vO2MaxValue: number; avgVerticalRatio: unknown; avgGroundContactBalance: unknown; lactateThresholdBpm: unknown; lactateThresholdSpeed: unknown; maxFtp: unknown; avgStrokeDistance: unknown; avgStrokeCadence: unknown; maxStrokeCadence: unknown; workoutId: unknown; avgStrokes: unknown; minStrokes: unknown; deviceId: number; minTemperature: unknown; maxTemperature: unknown; minElevation: number; maxElevation: number; avgDoubleCadence: unknown; maxDoubleCadence: number; summarizedExerciseSets: unknown; maxDepth: unknown; avgDepth: unknown; surfaceInterval: unknown; startN2: unknown; endN2: unknown; startCns: unknown; endCns: unknown; summarizedDiveInfo: { weight: unknown; weightUnit: unknown; visibility: unknown; visibilityUnit: unknown; surfaceCondition: unknown; current: unknown; waterType: unknown; waterDensity: unknown; summarizedDiveGases: []; totalSurfaceTime: unknown; }; activityLikeAuthors: unknown; avgVerticalSpeed: unknown; maxVerticalSpeed: number; floorsClimbed: unknown; floorsDescended: unknown; manufacturer: string; diveNumber: unknown; locationName: string; bottomTime: unknown; lapCount: number; endLatitude: number; endLongitude: number; minAirSpeed: unknown; maxAirSpeed: unknown; avgAirSpeed: unknown; avgWindYawAngle: unknown; minCda: unknown; maxCda: unknown; avgCda: unknown; avgWattsPerCda: unknown; flow: unknown; grit: unknown; jumpCount: unknown; caloriesEstimated: unknown; caloriesConsumed: unknown; waterEstimated: unknown; waterConsumed: unknown; maxAvgPower_1: unknown; maxAvgPower_2: unknown; maxAvgPower_5: unknown; maxAvgPower_10: unknown; maxAvgPower_20: unknown; maxAvgPower_30: unknown; maxAvgPower_60: unknown; maxAvgPower_120: unknown; maxAvgPower_300: unknown; maxAvgPower_600: unknown; maxAvgPower_1200: unknown; maxAvgPower_1800: unknown; maxAvgPower_3600: unknown; maxAvgPower_7200: unknown; maxAvgPower_18000: unknown; excludeFromPowerCurveReports: unknown; totalSets: unknown; activeSets: unknown; totalReps: unknown; minRespirationRate: unknown; maxRespirationRate: unknown; avgRespirationRate: unknown; trainingEffectLabel: unknown; activityTrainingLoad: unknown; avgFlow: unknown; avgGrit: unknown; minActivityLapDuration: number; avgStress: unknown; startStress: unknown; endStress: unknown; differenceStress: unknown; maxStress: unknown; aerobicTrainingEffectMessage: unknown; anaerobicTrainingEffectMessage: unknown; splitSummaries: []; hasSplits: boolean; maxBottomTime: unknown; hasSeedFirstbeatProfile: unknown; calendarEventId: unknown; calendarEventUuid: unknown; avgGradeAdjustedSpeed: unknown; avgWheelchairCadence: unknown; maxWheelchairCadence: unknown; purposeful: boolean; manualActivity: boolean; autoCalcCalories: boolean; elevationCorrected: boolean; atpActivity: boolean; favorite: boolean; decoDive: unknown; pr: boolean; parent: boolean; }