@careevolution/mydatahelps-js 2.3.2 → 3.2.0

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.
package/types.d.ts ADDED
@@ -0,0 +1,328 @@
1
+ export declare type SurveyTaskStatus = "incomplete" | "closed" | "complete";
2
+ export declare type SortOrder = "descending" | "ascending";
3
+ export declare type EventName = "applicationDidBecomeVisible" | "surveyDidFinish" | "externalAccountSyncComplete" | "tokenWillExpire";
4
+ export declare type DeviceDataNamespace = "Project" | "Fitbit" | "AppleHealth" | "GoogleFit" | "AirNowApi" | "WeatherBit";
5
+ export declare type ExternalAccountStatus = "unauthorized" | "fetchComplete" | "error" | "fetchingData";
6
+ export declare type NotificationType = "Sms" | "Push" | "Email";
7
+ export declare type NotificationStatusCode = "Succeeded" | "Unsubscribed" | "MissingContactInfo" | "NoRegisteredMobileDevice" | "NoAssociatedUser" | "ServiceError";
8
+ export declare type StatusBarStyle = "lightContent" | "darkContent" | "default";
9
+ export interface Guid extends String {
10
+ }
11
+ export interface QueryParameters {
12
+ limit?: number;
13
+ pageID?: Guid;
14
+ }
15
+ export interface ExternalAccount {
16
+ id: number;
17
+ provider: ExternalAccountProvider;
18
+ status: ExternalAccountStatus;
19
+ lastRefreshDate: string;
20
+ }
21
+ export interface ExternalAccountProvider {
22
+ id: number;
23
+ name: string;
24
+ category: string;
25
+ logoUrl: string;
26
+ }
27
+ export interface ExternalAccountProvidersPage {
28
+ externalAccountProviders: ExternalAccountProvider[];
29
+ totalExternalAccountProviders: number;
30
+ }
31
+ export interface ProjectInfo {
32
+ id: Guid;
33
+ name: string;
34
+ description: string;
35
+ code: string;
36
+ type: string;
37
+ organization: {
38
+ id: Guid;
39
+ name: string;
40
+ description: string;
41
+ logoUrl: string;
42
+ color: string;
43
+ };
44
+ supportEmail: string;
45
+ supportPhone: string;
46
+ learnMoreLink: string;
47
+ learnMoreTitle: string;
48
+ }
49
+ export interface DeviceInfo {
50
+ identifier: Guid;
51
+ platform: string;
52
+ properties: {
53
+ [key: string]: string;
54
+ };
55
+ }
56
+ export interface ParticipantInfo {
57
+ participantID: Guid;
58
+ participantIdentifier: string;
59
+ secondaryIdentifier: string;
60
+ linkIdentifier: string;
61
+ demographics: ParticipantDemographics;
62
+ customFields: {
63
+ [key: string]: string;
64
+ };
65
+ enrollmentDate: string;
66
+ projectID: string;
67
+ }
68
+ export interface ParticipantDemographics extends Record<string, string> {
69
+ email: string;
70
+ mobilePhone: string;
71
+ firstName: string;
72
+ middleName: string;
73
+ lastName: string;
74
+ dateOfBirth: string;
75
+ gender: string;
76
+ preferredLanguage: string;
77
+ street1: string;
78
+ street2: string;
79
+ city: string;
80
+ state: string;
81
+ postalCode: string;
82
+ utcOffset: string;
83
+ unsubscribedFromEmails: string;
84
+ timeZone: string;
85
+ unsubscribedFromSms: string;
86
+ }
87
+ export interface NotificationQueryParameters extends QueryParameters {
88
+ sentBefore?: string;
89
+ sentAfter?: string;
90
+ identifier?: string;
91
+ type?: NotificationType;
92
+ statusCode?: NotificationStatusCode;
93
+ }
94
+ export interface NotificationsPage {
95
+ notifications: Notification[];
96
+ nextPageID?: Guid;
97
+ }
98
+ export interface Notification {
99
+ id: Guid;
100
+ identifier: string;
101
+ contentVersion?: number;
102
+ sentDate: string;
103
+ statusCode: NotificationStatusCode;
104
+ type: NotificationType;
105
+ recipients: string[];
106
+ content?: {
107
+ body?: string;
108
+ title?: string;
109
+ subject?: string;
110
+ };
111
+ }
112
+ export interface SurveyTaskQueryParameters extends QueryParameters {
113
+ status?: SurveyTaskStatus;
114
+ surveyID?: Guid;
115
+ surveyName?: string | string[];
116
+ linkIdentifier?: string;
117
+ sortOrder?: SortOrder;
118
+ }
119
+ export interface SurveyTasksPage {
120
+ surveyTasks: SurveyTask[];
121
+ nextPageID?: Guid;
122
+ }
123
+ export interface SurveyTask {
124
+ id: Guid;
125
+ linkIdentifier: string;
126
+ surveyID: Guid;
127
+ surveyName: string;
128
+ surveyDisplayName?: string;
129
+ surveyDescription?: string;
130
+ startDate?: string;
131
+ endDate?: string;
132
+ status: SurveyTaskStatus;
133
+ hasSavedProgress: boolean;
134
+ dueDate: string;
135
+ insertedDate: string;
136
+ modifiedDate: string;
137
+ }
138
+ export interface CustomEventInfo {
139
+ eventType: string;
140
+ properties: {
141
+ [key: string]: object;
142
+ };
143
+ }
144
+ export interface DeviceDataPointsPage {
145
+ deviceDataPoints: DeviceDataPoint[];
146
+ nextPageID?: Guid;
147
+ }
148
+ export interface PersistableDeviceDataPoint {
149
+ identifier: string;
150
+ type: string;
151
+ value: string;
152
+ units?: string;
153
+ properties?: {
154
+ [key: string]: any;
155
+ };
156
+ source?: {
157
+ identifier: string;
158
+ properties?: {
159
+ [key: string]: any;
160
+ };
161
+ };
162
+ startDate?: string;
163
+ observationDate?: string;
164
+ }
165
+ export interface DeviceDataPoint extends PersistableDeviceDataPoint {
166
+ id: Guid;
167
+ namespace: DeviceDataNamespace;
168
+ limit?: number;
169
+ deviceDataContextID?: string;
170
+ insertedDate: string;
171
+ modifiedDate: string;
172
+ }
173
+ export interface DeviceDataPointQuery extends QueryParameters {
174
+ namespace: DeviceDataNamespace;
175
+ type?: string | string[];
176
+ observedBefore?: string;
177
+ observedAfter?: string;
178
+ modifiedBefore?: string;
179
+ modifiedAfter?: string;
180
+ }
181
+ export interface SurveyAnswersQuery extends QueryParameters {
182
+ surveyResultID?: string;
183
+ surveyID?: string;
184
+ surveyName?: string | string[];
185
+ after?: string;
186
+ before?: string;
187
+ stepIdentifier?: string | string[];
188
+ resultIdentifier?: string | string[];
189
+ answer?: string | string[];
190
+ insertedAfter?: string;
191
+ insertedBefore?: string;
192
+ }
193
+ export interface SurveyAnswersPage {
194
+ surveyAnswers: SurveyAnswer[];
195
+ nextPageID?: Guid;
196
+ }
197
+ export interface SurveyAnswer {
198
+ id: Guid;
199
+ surveyResultID: Guid;
200
+ surveyID: Guid;
201
+ surveyVersion: number;
202
+ taskID?: Guid;
203
+ surveyName: string;
204
+ surveyDisplayName: string;
205
+ date: string;
206
+ stepIdentifier: string;
207
+ resultIdentifier: string;
208
+ answers: string[];
209
+ insertedDate: string;
210
+ }
211
+ export interface FitbitQuery {
212
+ providerID?: number;
213
+ pageID?: Guid;
214
+ pageSize?: number;
215
+ startDate?: string;
216
+ endDate?: string;
217
+ }
218
+ export interface FitbitDailySummariesPage {
219
+ results: FitbitDailySummary[];
220
+ nextPageID?: Guid;
221
+ }
222
+ export interface FitbitDailySummary {
223
+ date: string;
224
+ activityCalories: number;
225
+ bodyBMI: number;
226
+ bodyFat: number;
227
+ bodyWeight: number;
228
+ calories: number;
229
+ caloriesBMR: number;
230
+ distance: number;
231
+ elevation: number;
232
+ foodCaloriesIn: number;
233
+ floors: number;
234
+ heartRateZones: FitbitHeartRateZones;
235
+ minutesFairlyActive: number;
236
+ minutesLightlyActive: number;
237
+ minutesSedentary: number;
238
+ minutesVeryActive: number;
239
+ steps: number;
240
+ tracker: FitbitTracker;
241
+ water: number;
242
+ modifiedDate: string;
243
+ restingHeartRate: number;
244
+ }
245
+ export interface FitbitHeartRateZones {
246
+ fatBurn: FitbitHeartRateZone;
247
+ cardio: FitbitHeartRateZone;
248
+ peak: FitbitHeartRateZone;
249
+ outOfRange: FitbitHeartRateZone;
250
+ }
251
+ export interface FitbitHeartRateZone {
252
+ caloriesOut: number;
253
+ min: number;
254
+ max: number;
255
+ minutes: number;
256
+ }
257
+ export interface FitbitTracker {
258
+ activityCalories: number;
259
+ calories: number;
260
+ distance: number;
261
+ elevation: number;
262
+ floors: number;
263
+ minutesFairlyActive: number;
264
+ minutesLightlyActive: number;
265
+ minutesSedentary: number;
266
+ minutesVeryActive: number;
267
+ steps: number;
268
+ }
269
+ export interface FitbitSleepLogsPage {
270
+ results: FitbitSleepLogs[];
271
+ nextPageID?: Guid;
272
+ }
273
+ export interface FitbitSleepLogs {
274
+ startTimestamp: string;
275
+ endTimestamp: string;
276
+ duration: number;
277
+ efficiency: number;
278
+ timeInBed: number;
279
+ infoCode: string;
280
+ type: string;
281
+ minutesAfterWakeup: number;
282
+ minutesAsleep: number;
283
+ minutesAwake: number;
284
+ minutesToFallAsleep: number;
285
+ sleepLevelAwake: number;
286
+ sleepLevelAsleep: number;
287
+ sleepLevelRestless: number;
288
+ sleepLevelDeep: number;
289
+ sleepLevelLight: number;
290
+ sleepLevelRem: number;
291
+ sleepLevelWake: number;
292
+ }
293
+ export interface EventData {
294
+ type: string;
295
+ messageID?: number;
296
+ }
297
+ export interface Token {
298
+ expires_in: number;
299
+ access_token: string;
300
+ token_type: string;
301
+ }
302
+ export interface OpenApplicationOptions {
303
+ modal: boolean;
304
+ }
305
+ export interface ShowDashboardOptions {
306
+ modal: boolean;
307
+ title?: string;
308
+ }
309
+ export interface ShowWebVisualizationOptions {
310
+ modal: boolean;
311
+ title?: string;
312
+ }
313
+ export interface ShowWebVisualizationPdfOptions {
314
+ landscape: boolean;
315
+ htmlViewerZoom: number;
316
+ }
317
+ export interface DataCollectionSettings {
318
+ fitbitEnabled: boolean;
319
+ ehrEnabled: boolean;
320
+ airQualityEnabled: boolean;
321
+ weatherEnabled: boolean;
322
+ queryableDeviceDataTypes: QueryableDeviceDataType[];
323
+ sensorDataCollectionEndDate: string;
324
+ }
325
+ export interface QueryableDeviceDataType {
326
+ namespace: DeviceDataNamespace;
327
+ type: string;
328
+ }