@clipin/convex-wearables 0.0.2 → 0.0.3

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 (88) hide show
  1. package/dist/client/index.d.ts +9 -4
  2. package/dist/client/index.d.ts.map +1 -1
  3. package/dist/client/index.js.map +1 -1
  4. package/dist/component/_generated/component.d.ts +50 -0
  5. package/dist/component/_generated/component.d.ts.map +1 -0
  6. package/dist/component/_generated/component.js +11 -0
  7. package/dist/component/_generated/component.js.map +1 -0
  8. package/dist/component/backfillJobs.d.ts +11 -11
  9. package/dist/component/connections.d.ts +9 -9
  10. package/dist/component/connections.d.ts.map +1 -1
  11. package/dist/component/connections.js +2 -0
  12. package/dist/component/connections.js.map +1 -1
  13. package/dist/component/dataPoints.d.ts +5 -5
  14. package/dist/component/events.d.ts +13 -13
  15. package/dist/component/garminBackfill.d.ts +2 -2
  16. package/dist/component/garminWebhooks.d.ts +2 -2
  17. package/dist/component/garminWebhooks.d.ts.map +1 -1
  18. package/dist/component/garminWebhooks.js +2 -0
  19. package/dist/component/garminWebhooks.js.map +1 -1
  20. package/dist/component/lifecycle.d.ts +1 -1
  21. package/dist/component/lifecycle.d.ts.map +1 -1
  22. package/dist/component/lifecycle.js +2 -0
  23. package/dist/component/lifecycle.js.map +1 -1
  24. package/dist/component/oauthStates.d.ts +3 -3
  25. package/dist/component/schema.d.ts +26 -26
  26. package/dist/component/sdkPush.d.ts +11 -11
  27. package/dist/component/summaries.d.ts +4 -4
  28. package/dist/component/syncJobs.d.ts +23 -23
  29. package/dist/component/syncWorkflow.d.ts +2 -2
  30. package/dist/test.d.ts +421 -0
  31. package/dist/test.d.ts.map +1 -0
  32. package/dist/test.js +17 -0
  33. package/dist/test.js.map +1 -0
  34. package/package.json +12 -2
  35. package/src/client/_generated/_ignore.ts +2 -0
  36. package/src/client/index.test.ts +52 -0
  37. package/src/client/index.ts +784 -0
  38. package/src/client/types.ts +533 -0
  39. package/src/component/_generated/_ignore.ts +2 -0
  40. package/src/component/_generated/api.ts +16 -0
  41. package/src/component/_generated/component.ts +74 -0
  42. package/src/component/_generated/dataModel.ts +40 -0
  43. package/src/component/_generated/server.ts +48 -0
  44. package/src/component/backfillJobs.test.ts +47 -0
  45. package/src/component/backfillJobs.ts +245 -0
  46. package/src/component/connections.test.ts +297 -0
  47. package/src/component/connections.ts +329 -0
  48. package/src/component/convex.config.ts +7 -0
  49. package/src/component/dataPoints.test.ts +282 -0
  50. package/src/component/dataPoints.ts +305 -0
  51. package/src/component/dataSources.test.ts +247 -0
  52. package/src/component/dataSources.ts +109 -0
  53. package/src/component/events.test.ts +380 -0
  54. package/src/component/events.ts +288 -0
  55. package/src/component/garminBackfill.ts +343 -0
  56. package/src/component/garminWebhooks.test.ts +609 -0
  57. package/src/component/garminWebhooks.ts +656 -0
  58. package/src/component/httpHandlers.ts +153 -0
  59. package/src/component/lifecycle.test.ts +179 -0
  60. package/src/component/lifecycle.ts +87 -0
  61. package/src/component/menstrualCycles.ts +124 -0
  62. package/src/component/oauthActions.ts +261 -0
  63. package/src/component/oauthStates.test.ts +170 -0
  64. package/src/component/oauthStates.ts +85 -0
  65. package/src/component/providerSettings.ts +66 -0
  66. package/src/component/providers/additionalProviders.test.ts +401 -0
  67. package/src/component/providers/garmin.ts +1169 -0
  68. package/src/component/providers/oauth.test.ts +174 -0
  69. package/src/component/providers/oauth.ts +246 -0
  70. package/src/component/providers/polar.ts +220 -0
  71. package/src/component/providers/registry.ts +37 -0
  72. package/src/component/providers/strava.test.ts +195 -0
  73. package/src/component/providers/strava.ts +253 -0
  74. package/src/component/providers/suunto.ts +592 -0
  75. package/src/component/providers/types.ts +189 -0
  76. package/src/component/providers/whoop.ts +600 -0
  77. package/src/component/schema.ts +339 -0
  78. package/src/component/sdkPush.test.ts +367 -0
  79. package/src/component/sdkPush.ts +440 -0
  80. package/src/component/summaries.test.ts +201 -0
  81. package/src/component/summaries.ts +143 -0
  82. package/src/component/syncJobs.test.ts +254 -0
  83. package/src/component/syncJobs.ts +140 -0
  84. package/src/component/syncWorkflow.test.ts +87 -0
  85. package/src/component/syncWorkflow.ts +739 -0
  86. package/src/component/test.setup.ts +6 -0
  87. package/src/component/workflowManager.ts +19 -0
  88. package/src/test.ts +25 -0
@@ -5,45 +5,45 @@ export declare const getByUser: import("convex/server").RegisteredQuery<"public"
5
5
  _id: import("convex/values").GenericId<"syncJobs">;
6
6
  _creationTime: number;
7
7
  error?: string | undefined;
8
+ completedAt?: number | undefined;
9
+ workflowId?: string | undefined;
8
10
  mode?: "manual" | "cron" | "webhook" | undefined;
9
11
  triggerSource?: string | undefined;
10
- completedAt?: number | undefined;
11
12
  recordsProcessed?: number | undefined;
12
- workflowId?: string | undefined;
13
13
  windowStart?: number | undefined;
14
14
  windowEnd?: number | undefined;
15
15
  attempt?: number | undefined;
16
16
  lastHeartbeatAt?: number | undefined;
17
17
  cursor?: string | undefined;
18
18
  currentPhase?: "events" | "dataPoints" | "summaries" | undefined;
19
+ startedAt: number;
19
20
  provider: "garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google";
20
- status: "queued" | "running" | "completed" | "failed" | "canceled";
21
+ status: "failed" | "canceled" | "running" | "completed" | "queued";
21
22
  userId: string;
22
23
  connectionId: import("convex/values").GenericId<"connections">;
23
24
  idempotencyKey: string;
24
- startedAt: number;
25
25
  }[]>>;
26
26
  export declare const getRunning: import("convex/server").RegisteredQuery<"internal", {}, Promise<{
27
27
  _id: import("convex/values").GenericId<"syncJobs">;
28
28
  _creationTime: number;
29
29
  error?: string | undefined;
30
+ completedAt?: number | undefined;
31
+ workflowId?: string | undefined;
30
32
  mode?: "manual" | "cron" | "webhook" | undefined;
31
33
  triggerSource?: string | undefined;
32
- completedAt?: number | undefined;
33
34
  recordsProcessed?: number | undefined;
34
- workflowId?: string | undefined;
35
35
  windowStart?: number | undefined;
36
36
  windowEnd?: number | undefined;
37
37
  attempt?: number | undefined;
38
38
  lastHeartbeatAt?: number | undefined;
39
39
  cursor?: string | undefined;
40
40
  currentPhase?: "events" | "dataPoints" | "summaries" | undefined;
41
+ startedAt: number;
41
42
  provider: "garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google";
42
- status: "queued" | "running" | "completed" | "failed" | "canceled";
43
+ status: "failed" | "canceled" | "running" | "completed" | "queued";
43
44
  userId: string;
44
45
  connectionId: import("convex/values").GenericId<"connections">;
45
46
  idempotencyKey: string;
46
- startedAt: number;
47
47
  }[]>>;
48
48
  export declare const getById: import("convex/server").RegisteredQuery<"internal", {
49
49
  jobId: import("convex/values").GenericId<"syncJobs">;
@@ -51,23 +51,23 @@ export declare const getById: import("convex/server").RegisteredQuery<"internal"
51
51
  _id: import("convex/values").GenericId<"syncJobs">;
52
52
  _creationTime: number;
53
53
  error?: string | undefined;
54
+ completedAt?: number | undefined;
55
+ workflowId?: string | undefined;
54
56
  mode?: "manual" | "cron" | "webhook" | undefined;
55
57
  triggerSource?: string | undefined;
56
- completedAt?: number | undefined;
57
58
  recordsProcessed?: number | undefined;
58
- workflowId?: string | undefined;
59
59
  windowStart?: number | undefined;
60
60
  windowEnd?: number | undefined;
61
61
  attempt?: number | undefined;
62
62
  lastHeartbeatAt?: number | undefined;
63
63
  cursor?: string | undefined;
64
64
  currentPhase?: "events" | "dataPoints" | "summaries" | undefined;
65
+ startedAt: number;
65
66
  provider: "garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google";
66
- status: "queued" | "running" | "completed" | "failed" | "canceled";
67
+ status: "failed" | "canceled" | "running" | "completed" | "queued";
67
68
  userId: string;
68
69
  connectionId: import("convex/values").GenericId<"connections">;
69
70
  idempotencyKey: string;
70
- startedAt: number;
71
71
  } | null>>;
72
72
  export declare const getActiveByIdempotencyKey: import("convex/server").RegisteredQuery<"internal", {
73
73
  idempotencyKey: string;
@@ -75,23 +75,23 @@ export declare const getActiveByIdempotencyKey: import("convex/server").Register
75
75
  _id: import("convex/values").GenericId<"syncJobs">;
76
76
  _creationTime: number;
77
77
  error?: string | undefined;
78
+ completedAt?: number | undefined;
79
+ workflowId?: string | undefined;
78
80
  mode?: "manual" | "cron" | "webhook" | undefined;
79
81
  triggerSource?: string | undefined;
80
- completedAt?: number | undefined;
81
82
  recordsProcessed?: number | undefined;
82
- workflowId?: string | undefined;
83
83
  windowStart?: number | undefined;
84
84
  windowEnd?: number | undefined;
85
85
  attempt?: number | undefined;
86
86
  lastHeartbeatAt?: number | undefined;
87
87
  cursor?: string | undefined;
88
88
  currentPhase?: "events" | "dataPoints" | "summaries" | undefined;
89
+ startedAt: number;
89
90
  provider: "garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google";
90
- status: "queued" | "running" | "completed" | "failed" | "canceled";
91
+ status: "failed" | "canceled" | "running" | "completed" | "queued";
91
92
  userId: string;
92
93
  connectionId: import("convex/values").GenericId<"connections">;
93
94
  idempotencyKey: string;
94
- startedAt: number;
95
95
  } | null>>;
96
96
  export declare const getByWorkflowId: import("convex/server").RegisteredQuery<"internal", {
97
97
  workflowId: string;
@@ -99,28 +99,28 @@ export declare const getByWorkflowId: import("convex/server").RegisteredQuery<"i
99
99
  _id: import("convex/values").GenericId<"syncJobs">;
100
100
  _creationTime: number;
101
101
  error?: string | undefined;
102
+ completedAt?: number | undefined;
103
+ workflowId?: string | undefined;
102
104
  mode?: "manual" | "cron" | "webhook" | undefined;
103
105
  triggerSource?: string | undefined;
104
- completedAt?: number | undefined;
105
106
  recordsProcessed?: number | undefined;
106
- workflowId?: string | undefined;
107
107
  windowStart?: number | undefined;
108
108
  windowEnd?: number | undefined;
109
109
  attempt?: number | undefined;
110
110
  lastHeartbeatAt?: number | undefined;
111
111
  cursor?: string | undefined;
112
112
  currentPhase?: "events" | "dataPoints" | "summaries" | undefined;
113
+ startedAt: number;
113
114
  provider: "garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google";
114
- status: "queued" | "running" | "completed" | "failed" | "canceled";
115
+ status: "failed" | "canceled" | "running" | "completed" | "queued";
115
116
  userId: string;
116
117
  connectionId: import("convex/values").GenericId<"connections">;
117
118
  idempotencyKey: string;
118
- startedAt: number;
119
119
  } | null>>;
120
120
  export declare const create: import("convex/server").RegisteredMutation<"internal", {
121
+ startedAt?: number | undefined;
121
122
  mode?: "manual" | "cron" | "webhook" | undefined;
122
123
  triggerSource?: string | undefined;
123
- startedAt?: number | undefined;
124
124
  windowStart?: number | undefined;
125
125
  windowEnd?: number | undefined;
126
126
  provider: "garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google";
@@ -130,13 +130,13 @@ export declare const create: import("convex/server").RegisteredMutation<"interna
130
130
  }, Promise<import("convex/values").GenericId<"syncJobs">>>;
131
131
  export declare const updateStatus: import("convex/server").RegisteredMutation<"internal", {
132
132
  error?: string | undefined;
133
- recordsProcessed?: number | undefined;
134
133
  workflowId?: string | undefined;
134
+ recordsProcessed?: number | undefined;
135
135
  attempt?: number | undefined;
136
136
  lastHeartbeatAt?: number | undefined;
137
137
  cursor?: string | undefined;
138
138
  currentPhase?: "events" | "dataPoints" | "summaries" | undefined;
139
- status: "queued" | "running" | "completed" | "failed" | "canceled";
139
+ status: "failed" | "canceled" | "running" | "completed" | "queued";
140
140
  jobId: import("convex/values").GenericId<"syncJobs">;
141
141
  }, Promise<void>>;
142
142
  //# sourceMappingURL=syncJobs.d.ts.map
@@ -46,11 +46,11 @@ export declare const runConnectionSync: import("convex/server").RegisteredMutati
46
46
  recordsProcessed: number;
47
47
  }>;
48
48
  export declare const handleConnectionSyncComplete: import("convex/server").RegisteredMutation<"internal", {
49
- workflowId: string;
50
- result: any;
51
49
  context: {
52
50
  syncJobId: import("convex/values").GenericId<"syncJobs">;
53
51
  };
52
+ workflowId: string;
53
+ result: any;
54
54
  }, Promise<void>>;
55
55
  export declare const syncConnection: import("convex/server").RegisteredAction<"public", {
56
56
  clientId?: string | undefined;
package/dist/test.d.ts ADDED
@@ -0,0 +1,421 @@
1
+ import type { GenericSchema, SchemaDefinition } from "convex/server";
2
+ import type { TestConvex } from "convex-test";
3
+ /**
4
+ * Register the component with a test Convex instance.
5
+ * @param t - The test Convex instance, for example from `convexTest`.
6
+ * @param name - The component name, as registered in the host app.
7
+ */
8
+ export declare function register(t: TestConvex<SchemaDefinition<GenericSchema, boolean>>, name?: string): void;
9
+ declare const _default: {
10
+ register: typeof register;
11
+ schema: SchemaDefinition<{
12
+ connections: import("convex/server").TableDefinition<import("convex/values").VObject<{
13
+ providerUserId?: string | undefined;
14
+ providerUsername?: string | undefined;
15
+ accessToken?: string | undefined;
16
+ refreshToken?: string | undefined;
17
+ tokenExpiresAt?: number | undefined;
18
+ scope?: string | undefined;
19
+ lastSyncedAt?: number | undefined;
20
+ provider: "garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google";
21
+ status: "error" | "active" | "inactive" | "revoked" | "expired";
22
+ userId: string;
23
+ }, {
24
+ userId: import("convex/values").VString<string, "required">;
25
+ provider: import("convex/values").VUnion<"garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google", [import("convex/values").VLiteral<"garmin", "required">, import("convex/values").VLiteral<"suunto", "required">, import("convex/values").VLiteral<"polar", "required">, import("convex/values").VLiteral<"whoop", "required">, import("convex/values").VLiteral<"strava", "required">, import("convex/values").VLiteral<"apple", "required">, import("convex/values").VLiteral<"samsung", "required">, import("convex/values").VLiteral<"google", "required">], "required", never>;
26
+ providerUserId: import("convex/values").VString<string | undefined, "optional">;
27
+ providerUsername: import("convex/values").VString<string | undefined, "optional">;
28
+ accessToken: import("convex/values").VString<string | undefined, "optional">;
29
+ refreshToken: import("convex/values").VString<string | undefined, "optional">;
30
+ tokenExpiresAt: import("convex/values").VFloat64<number | undefined, "optional">;
31
+ scope: import("convex/values").VString<string | undefined, "optional">;
32
+ status: import("convex/values").VUnion<"error" | "active" | "inactive" | "revoked" | "expired", [import("convex/values").VLiteral<"active", "required">, import("convex/values").VLiteral<"inactive", "required">, import("convex/values").VLiteral<"revoked", "required">, import("convex/values").VLiteral<"expired", "required">, import("convex/values").VLiteral<"error", "required">], "required", never>;
33
+ lastSyncedAt: import("convex/values").VFloat64<number | undefined, "optional">;
34
+ }, "required", "provider" | "status" | "userId" | "providerUserId" | "providerUsername" | "accessToken" | "refreshToken" | "tokenExpiresAt" | "scope" | "lastSyncedAt">, {
35
+ by_user: ["userId", "_creationTime"];
36
+ by_user_provider: ["userId", "provider", "_creationTime"];
37
+ by_provider_user: ["provider", "providerUserId", "_creationTime"];
38
+ by_status: ["status", "_creationTime"];
39
+ }, {}, {}>;
40
+ dataSources: import("convex/server").TableDefinition<import("convex/values").VObject<{
41
+ connectionId?: import("convex/values").GenericId<"connections"> | undefined;
42
+ deviceModel?: string | undefined;
43
+ softwareVersion?: string | undefined;
44
+ source?: string | undefined;
45
+ deviceType?: string | undefined;
46
+ originalSourceName?: string | undefined;
47
+ provider: "garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google";
48
+ userId: string;
49
+ }, {
50
+ userId: import("convex/values").VString<string, "required">;
51
+ provider: import("convex/values").VUnion<"garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google", [import("convex/values").VLiteral<"garmin", "required">, import("convex/values").VLiteral<"suunto", "required">, import("convex/values").VLiteral<"polar", "required">, import("convex/values").VLiteral<"whoop", "required">, import("convex/values").VLiteral<"strava", "required">, import("convex/values").VLiteral<"apple", "required">, import("convex/values").VLiteral<"samsung", "required">, import("convex/values").VLiteral<"google", "required">], "required", never>;
52
+ connectionId: import("convex/values").VId<import("convex/values").GenericId<"connections"> | undefined, "optional">;
53
+ deviceModel: import("convex/values").VString<string | undefined, "optional">;
54
+ softwareVersion: import("convex/values").VString<string | undefined, "optional">;
55
+ source: import("convex/values").VString<string | undefined, "optional">;
56
+ deviceType: import("convex/values").VString<string | undefined, "optional">;
57
+ originalSourceName: import("convex/values").VString<string | undefined, "optional">;
58
+ }, "required", "provider" | "userId" | "connectionId" | "deviceModel" | "softwareVersion" | "source" | "deviceType" | "originalSourceName">, {
59
+ by_user_provider: ["userId", "provider", "_creationTime"];
60
+ by_user_provider_device: ["userId", "provider", "deviceModel", "source", "_creationTime"];
61
+ by_connection: ["connectionId", "_creationTime"];
62
+ }, {}, {}>;
63
+ dataPoints: import("convex/server").TableDefinition<import("convex/values").VObject<{
64
+ externalId?: string | undefined;
65
+ dataSourceId: import("convex/values").GenericId<"dataSources">;
66
+ seriesType: string;
67
+ recordedAt: number;
68
+ value: number;
69
+ }, {
70
+ dataSourceId: import("convex/values").VId<import("convex/values").GenericId<"dataSources">, "required">;
71
+ seriesType: import("convex/values").VString<string, "required">;
72
+ recordedAt: import("convex/values").VFloat64<number, "required">;
73
+ value: import("convex/values").VFloat64<number, "required">;
74
+ externalId: import("convex/values").VString<string | undefined, "optional">;
75
+ }, "required", "dataSourceId" | "seriesType" | "recordedAt" | "value" | "externalId">, {
76
+ by_source_type_time: ["dataSourceId", "seriesType", "recordedAt", "_creationTime"];
77
+ by_type_time: ["seriesType", "recordedAt", "_creationTime"];
78
+ }, {}, {}>;
79
+ events: import("convex/server").TableDefinition<import("convex/values").VObject<{
80
+ type?: string | undefined;
81
+ externalId?: string | undefined;
82
+ sourceName?: string | undefined;
83
+ durationSeconds?: number | undefined;
84
+ endDatetime?: number | undefined;
85
+ heartRateMin?: number | undefined;
86
+ heartRateMax?: number | undefined;
87
+ heartRateAvg?: number | undefined;
88
+ energyBurned?: number | undefined;
89
+ distance?: number | undefined;
90
+ stepsCount?: number | undefined;
91
+ maxSpeed?: number | undefined;
92
+ maxWatts?: number | undefined;
93
+ movingTimeSeconds?: number | undefined;
94
+ totalElevationGain?: number | undefined;
95
+ averageSpeed?: number | undefined;
96
+ averageWatts?: number | undefined;
97
+ elevHigh?: number | undefined;
98
+ elevLow?: number | undefined;
99
+ sleepTotalDurationMinutes?: number | undefined;
100
+ sleepTimeInBedMinutes?: number | undefined;
101
+ sleepEfficiencyScore?: number | undefined;
102
+ sleepDeepMinutes?: number | undefined;
103
+ sleepRemMinutes?: number | undefined;
104
+ sleepLightMinutes?: number | undefined;
105
+ sleepAwakeMinutes?: number | undefined;
106
+ isNap?: boolean | undefined;
107
+ sleepStages?: {
108
+ stage: string;
109
+ startTime: number;
110
+ endTime: number;
111
+ }[] | undefined;
112
+ userId: string;
113
+ dataSourceId: import("convex/values").GenericId<"dataSources">;
114
+ category: "workout" | "sleep";
115
+ startDatetime: number;
116
+ }, {
117
+ dataSourceId: import("convex/values").VId<import("convex/values").GenericId<"dataSources">, "required">;
118
+ userId: import("convex/values").VString<string, "required">;
119
+ category: import("convex/values").VUnion<"workout" | "sleep", [import("convex/values").VLiteral<"workout", "required">, import("convex/values").VLiteral<"sleep", "required">], "required", never>;
120
+ type: import("convex/values").VString<string | undefined, "optional">;
121
+ sourceName: import("convex/values").VString<string | undefined, "optional">;
122
+ durationSeconds: import("convex/values").VFloat64<number | undefined, "optional">;
123
+ startDatetime: import("convex/values").VFloat64<number, "required">;
124
+ endDatetime: import("convex/values").VFloat64<number | undefined, "optional">;
125
+ externalId: import("convex/values").VString<string | undefined, "optional">;
126
+ heartRateMin: import("convex/values").VFloat64<number | undefined, "optional">;
127
+ heartRateMax: import("convex/values").VFloat64<number | undefined, "optional">;
128
+ heartRateAvg: import("convex/values").VFloat64<number | undefined, "optional">;
129
+ energyBurned: import("convex/values").VFloat64<number | undefined, "optional">;
130
+ distance: import("convex/values").VFloat64<number | undefined, "optional">;
131
+ stepsCount: import("convex/values").VFloat64<number | undefined, "optional">;
132
+ maxSpeed: import("convex/values").VFloat64<number | undefined, "optional">;
133
+ maxWatts: import("convex/values").VFloat64<number | undefined, "optional">;
134
+ movingTimeSeconds: import("convex/values").VFloat64<number | undefined, "optional">;
135
+ totalElevationGain: import("convex/values").VFloat64<number | undefined, "optional">;
136
+ averageSpeed: import("convex/values").VFloat64<number | undefined, "optional">;
137
+ averageWatts: import("convex/values").VFloat64<number | undefined, "optional">;
138
+ elevHigh: import("convex/values").VFloat64<number | undefined, "optional">;
139
+ elevLow: import("convex/values").VFloat64<number | undefined, "optional">;
140
+ sleepTotalDurationMinutes: import("convex/values").VFloat64<number | undefined, "optional">;
141
+ sleepTimeInBedMinutes: import("convex/values").VFloat64<number | undefined, "optional">;
142
+ sleepEfficiencyScore: import("convex/values").VFloat64<number | undefined, "optional">;
143
+ sleepDeepMinutes: import("convex/values").VFloat64<number | undefined, "optional">;
144
+ sleepRemMinutes: import("convex/values").VFloat64<number | undefined, "optional">;
145
+ sleepLightMinutes: import("convex/values").VFloat64<number | undefined, "optional">;
146
+ sleepAwakeMinutes: import("convex/values").VFloat64<number | undefined, "optional">;
147
+ isNap: import("convex/values").VBoolean<boolean | undefined, "optional">;
148
+ sleepStages: import("convex/values").VArray<{
149
+ stage: string;
150
+ startTime: number;
151
+ endTime: number;
152
+ }[] | undefined, import("convex/values").VObject<{
153
+ stage: string;
154
+ startTime: number;
155
+ endTime: number;
156
+ }, {
157
+ stage: import("convex/values").VString<string, "required">;
158
+ startTime: import("convex/values").VFloat64<number, "required">;
159
+ endTime: import("convex/values").VFloat64<number, "required">;
160
+ }, "required", "stage" | "startTime" | "endTime">, "optional">;
161
+ }, "required", "type" | "userId" | "dataSourceId" | "externalId" | "category" | "sourceName" | "durationSeconds" | "startDatetime" | "endDatetime" | "heartRateMin" | "heartRateMax" | "heartRateAvg" | "energyBurned" | "distance" | "stepsCount" | "maxSpeed" | "maxWatts" | "movingTimeSeconds" | "totalElevationGain" | "averageSpeed" | "averageWatts" | "elevHigh" | "elevLow" | "sleepTotalDurationMinutes" | "sleepTimeInBedMinutes" | "sleepEfficiencyScore" | "sleepDeepMinutes" | "sleepRemMinutes" | "sleepLightMinutes" | "sleepAwakeMinutes" | "isNap" | "sleepStages">, {
162
+ by_user_category_time: ["userId", "category", "startDatetime", "_creationTime"];
163
+ by_source_category_time: ["dataSourceId", "category", "startDatetime", "_creationTime"];
164
+ by_source_start_end: ["dataSourceId", "startDatetime", "endDatetime", "_creationTime"];
165
+ by_external_id: ["externalId", "_creationTime"];
166
+ }, {}, {}>;
167
+ dailySummaries: import("convex/server").TableDefinition<import("convex/values").VObject<{
168
+ totalSteps?: number | undefined;
169
+ totalCalories?: number | undefined;
170
+ activeCalories?: number | undefined;
171
+ activeMinutes?: number | undefined;
172
+ totalDistance?: number | undefined;
173
+ floorsClimbed?: number | undefined;
174
+ avgHeartRate?: number | undefined;
175
+ maxHeartRate?: number | undefined;
176
+ minHeartRate?: number | undefined;
177
+ sleepDurationMinutes?: number | undefined;
178
+ sleepEfficiency?: number | undefined;
179
+ deepSleepMinutes?: number | undefined;
180
+ remSleepMinutes?: number | undefined;
181
+ lightSleepMinutes?: number | undefined;
182
+ awakeDuringMinutes?: number | undefined;
183
+ timeInBedMinutes?: number | undefined;
184
+ hrvAvg?: number | undefined;
185
+ hrvRmssd?: number | undefined;
186
+ restingHeartRate?: number | undefined;
187
+ recoveryScore?: number | undefined;
188
+ weight?: number | undefined;
189
+ bodyFatPercentage?: number | undefined;
190
+ bodyMassIndex?: number | undefined;
191
+ leanBodyMass?: number | undefined;
192
+ bodyTemperature?: number | undefined;
193
+ avgStressLevel?: number | undefined;
194
+ bodyBattery?: number | undefined;
195
+ spo2Avg?: number | undefined;
196
+ userId: string;
197
+ category: string;
198
+ date: string;
199
+ }, {
200
+ userId: import("convex/values").VString<string, "required">;
201
+ date: import("convex/values").VString<string, "required">;
202
+ category: import("convex/values").VString<string, "required">;
203
+ totalSteps: import("convex/values").VFloat64<number | undefined, "optional">;
204
+ totalCalories: import("convex/values").VFloat64<number | undefined, "optional">;
205
+ activeCalories: import("convex/values").VFloat64<number | undefined, "optional">;
206
+ activeMinutes: import("convex/values").VFloat64<number | undefined, "optional">;
207
+ totalDistance: import("convex/values").VFloat64<number | undefined, "optional">;
208
+ floorsClimbed: import("convex/values").VFloat64<number | undefined, "optional">;
209
+ avgHeartRate: import("convex/values").VFloat64<number | undefined, "optional">;
210
+ maxHeartRate: import("convex/values").VFloat64<number | undefined, "optional">;
211
+ minHeartRate: import("convex/values").VFloat64<number | undefined, "optional">;
212
+ sleepDurationMinutes: import("convex/values").VFloat64<number | undefined, "optional">;
213
+ sleepEfficiency: import("convex/values").VFloat64<number | undefined, "optional">;
214
+ deepSleepMinutes: import("convex/values").VFloat64<number | undefined, "optional">;
215
+ remSleepMinutes: import("convex/values").VFloat64<number | undefined, "optional">;
216
+ lightSleepMinutes: import("convex/values").VFloat64<number | undefined, "optional">;
217
+ awakeDuringMinutes: import("convex/values").VFloat64<number | undefined, "optional">;
218
+ timeInBedMinutes: import("convex/values").VFloat64<number | undefined, "optional">;
219
+ hrvAvg: import("convex/values").VFloat64<number | undefined, "optional">;
220
+ hrvRmssd: import("convex/values").VFloat64<number | undefined, "optional">;
221
+ restingHeartRate: import("convex/values").VFloat64<number | undefined, "optional">;
222
+ recoveryScore: import("convex/values").VFloat64<number | undefined, "optional">;
223
+ weight: import("convex/values").VFloat64<number | undefined, "optional">;
224
+ bodyFatPercentage: import("convex/values").VFloat64<number | undefined, "optional">;
225
+ bodyMassIndex: import("convex/values").VFloat64<number | undefined, "optional">;
226
+ leanBodyMass: import("convex/values").VFloat64<number | undefined, "optional">;
227
+ bodyTemperature: import("convex/values").VFloat64<number | undefined, "optional">;
228
+ avgStressLevel: import("convex/values").VFloat64<number | undefined, "optional">;
229
+ bodyBattery: import("convex/values").VFloat64<number | undefined, "optional">;
230
+ spo2Avg: import("convex/values").VFloat64<number | undefined, "optional">;
231
+ }, "required", "userId" | "category" | "date" | "totalSteps" | "totalCalories" | "activeCalories" | "activeMinutes" | "totalDistance" | "floorsClimbed" | "avgHeartRate" | "maxHeartRate" | "minHeartRate" | "sleepDurationMinutes" | "sleepEfficiency" | "deepSleepMinutes" | "remSleepMinutes" | "lightSleepMinutes" | "awakeDuringMinutes" | "timeInBedMinutes" | "hrvAvg" | "hrvRmssd" | "restingHeartRate" | "recoveryScore" | "weight" | "bodyFatPercentage" | "bodyMassIndex" | "leanBodyMass" | "bodyTemperature" | "avgStressLevel" | "bodyBattery" | "spo2Avg">, {
232
+ by_user_category_date: ["userId", "category", "date", "_creationTime"];
233
+ by_user_date: ["userId", "date", "_creationTime"];
234
+ }, {}, {}>;
235
+ syncJobs: import("convex/server").TableDefinition<import("convex/values").VObject<{
236
+ error?: string | undefined;
237
+ completedAt?: number | undefined;
238
+ workflowId?: string | undefined;
239
+ mode?: "manual" | "cron" | "webhook" | undefined;
240
+ triggerSource?: string | undefined;
241
+ recordsProcessed?: number | undefined;
242
+ windowStart?: number | undefined;
243
+ windowEnd?: number | undefined;
244
+ attempt?: number | undefined;
245
+ lastHeartbeatAt?: number | undefined;
246
+ cursor?: string | undefined;
247
+ currentPhase?: "events" | "dataPoints" | "summaries" | undefined;
248
+ startedAt: number;
249
+ provider: "garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google";
250
+ status: "failed" | "canceled" | "running" | "completed" | "queued";
251
+ userId: string;
252
+ connectionId: import("convex/values").GenericId<"connections">;
253
+ idempotencyKey: string;
254
+ }, {
255
+ connectionId: import("convex/values").VId<import("convex/values").GenericId<"connections">, "required">;
256
+ userId: import("convex/values").VString<string, "required">;
257
+ provider: import("convex/values").VUnion<"garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google", [import("convex/values").VLiteral<"garmin", "required">, import("convex/values").VLiteral<"suunto", "required">, import("convex/values").VLiteral<"polar", "required">, import("convex/values").VLiteral<"whoop", "required">, import("convex/values").VLiteral<"strava", "required">, import("convex/values").VLiteral<"apple", "required">, import("convex/values").VLiteral<"samsung", "required">, import("convex/values").VLiteral<"google", "required">], "required", never>;
258
+ mode: import("convex/values").VUnion<"manual" | "cron" | "webhook" | undefined, [import("convex/values").VLiteral<"manual", "required">, import("convex/values").VLiteral<"cron", "required">, import("convex/values").VLiteral<"webhook", "required">], "optional", never>;
259
+ triggerSource: import("convex/values").VString<string | undefined, "optional">;
260
+ idempotencyKey: import("convex/values").VString<string, "required">;
261
+ status: import("convex/values").VUnion<"failed" | "canceled" | "running" | "completed" | "queued", [import("convex/values").VLiteral<"queued", "required">, import("convex/values").VLiteral<"running", "required">, import("convex/values").VLiteral<"completed", "required">, import("convex/values").VLiteral<"failed", "required">, import("convex/values").VLiteral<"canceled", "required">], "required", never>;
262
+ startedAt: import("convex/values").VFloat64<number, "required">;
263
+ completedAt: import("convex/values").VFloat64<number | undefined, "optional">;
264
+ error: import("convex/values").VString<string | undefined, "optional">;
265
+ recordsProcessed: import("convex/values").VFloat64<number | undefined, "optional">;
266
+ workflowId: import("convex/values").VString<string | undefined, "optional">;
267
+ windowStart: import("convex/values").VFloat64<number | undefined, "optional">;
268
+ windowEnd: import("convex/values").VFloat64<number | undefined, "optional">;
269
+ attempt: import("convex/values").VFloat64<number | undefined, "optional">;
270
+ lastHeartbeatAt: import("convex/values").VFloat64<number | undefined, "optional">;
271
+ cursor: import("convex/values").VString<string | undefined, "optional">;
272
+ currentPhase: import("convex/values").VUnion<"events" | "dataPoints" | "summaries" | undefined, [import("convex/values").VLiteral<"events", "required">, import("convex/values").VLiteral<"dataPoints", "required">, import("convex/values").VLiteral<"summaries", "required">], "optional", never>;
273
+ }, "required", "error" | "startedAt" | "completedAt" | "workflowId" | "provider" | "status" | "userId" | "connectionId" | "mode" | "triggerSource" | "idempotencyKey" | "recordsProcessed" | "windowStart" | "windowEnd" | "attempt" | "lastHeartbeatAt" | "cursor" | "currentPhase">, {
274
+ by_user: ["userId", "_creationTime"];
275
+ by_connection: ["connectionId", "_creationTime"];
276
+ by_user_provider: ["userId", "provider", "_creationTime"];
277
+ by_user_status: ["userId", "status", "_creationTime"];
278
+ by_status: ["status", "_creationTime"];
279
+ by_idempotency_key: ["idempotencyKey", "_creationTime"];
280
+ by_workflow: ["workflowId", "_creationTime"];
281
+ }, {}, {}>;
282
+ oauthStates: import("convex/server").TableDefinition<import("convex/values").VObject<{
283
+ codeVerifier?: string | undefined;
284
+ redirectUri?: string | undefined;
285
+ state: string;
286
+ provider: "garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google";
287
+ userId: string;
288
+ createdAt: number;
289
+ }, {
290
+ state: import("convex/values").VString<string, "required">;
291
+ userId: import("convex/values").VString<string, "required">;
292
+ provider: import("convex/values").VUnion<"garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google", [import("convex/values").VLiteral<"garmin", "required">, import("convex/values").VLiteral<"suunto", "required">, import("convex/values").VLiteral<"polar", "required">, import("convex/values").VLiteral<"whoop", "required">, import("convex/values").VLiteral<"strava", "required">, import("convex/values").VLiteral<"apple", "required">, import("convex/values").VLiteral<"samsung", "required">, import("convex/values").VLiteral<"google", "required">], "required", never>;
293
+ codeVerifier: import("convex/values").VString<string | undefined, "optional">;
294
+ redirectUri: import("convex/values").VString<string | undefined, "optional">;
295
+ createdAt: import("convex/values").VFloat64<number, "required">;
296
+ }, "required", "state" | "provider" | "userId" | "codeVerifier" | "redirectUri" | "createdAt">, {
297
+ by_state: ["state", "_creationTime"];
298
+ }, {}, {}>;
299
+ providerSettings: import("convex/server").TableDefinition<import("convex/values").VObject<{
300
+ clientId?: string | undefined;
301
+ clientSecret?: string | undefined;
302
+ subscriptionKey?: string | undefined;
303
+ updatedAt?: number | undefined;
304
+ provider: "garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google";
305
+ isEnabled: boolean;
306
+ }, {
307
+ provider: import("convex/values").VUnion<"garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google", [import("convex/values").VLiteral<"garmin", "required">, import("convex/values").VLiteral<"suunto", "required">, import("convex/values").VLiteral<"polar", "required">, import("convex/values").VLiteral<"whoop", "required">, import("convex/values").VLiteral<"strava", "required">, import("convex/values").VLiteral<"apple", "required">, import("convex/values").VLiteral<"samsung", "required">, import("convex/values").VLiteral<"google", "required">], "required", never>;
308
+ isEnabled: import("convex/values").VBoolean<boolean, "required">;
309
+ clientId: import("convex/values").VString<string | undefined, "optional">;
310
+ clientSecret: import("convex/values").VString<string | undefined, "optional">;
311
+ subscriptionKey: import("convex/values").VString<string | undefined, "optional">;
312
+ updatedAt: import("convex/values").VFloat64<number | undefined, "optional">;
313
+ }, "required", "provider" | "isEnabled" | "clientId" | "clientSecret" | "subscriptionKey" | "updatedAt">, {
314
+ by_provider: ["provider", "_creationTime"];
315
+ }, {}, {}>;
316
+ providerPriorities: import("convex/server").TableDefinition<import("convex/values").VObject<{
317
+ provider: "garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google";
318
+ priority: number;
319
+ }, {
320
+ provider: import("convex/values").VUnion<"garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google", [import("convex/values").VLiteral<"garmin", "required">, import("convex/values").VLiteral<"suunto", "required">, import("convex/values").VLiteral<"polar", "required">, import("convex/values").VLiteral<"whoop", "required">, import("convex/values").VLiteral<"strava", "required">, import("convex/values").VLiteral<"apple", "required">, import("convex/values").VLiteral<"samsung", "required">, import("convex/values").VLiteral<"google", "required">], "required", never>;
321
+ priority: import("convex/values").VFloat64<number, "required">;
322
+ }, "required", "provider" | "priority">, {
323
+ by_provider: ["provider", "_creationTime"];
324
+ by_priority: ["priority", "_creationTime"];
325
+ }, {}, {}>;
326
+ menstrualCycles: import("convex/server").TableDefinition<import("convex/values").VObject<{
327
+ externalId?: string | undefined;
328
+ currentPhase?: number | undefined;
329
+ dayInCycle?: number | undefined;
330
+ cycleLength?: number | undefined;
331
+ predictedCycleLength?: number | undefined;
332
+ periodLength?: number | undefined;
333
+ currentPhaseType?: string | undefined;
334
+ lengthOfCurrentPhase?: number | undefined;
335
+ daysUntilNextPhase?: number | undefined;
336
+ isPredictedCycle?: boolean | undefined;
337
+ fertileWindowStart?: number | undefined;
338
+ lengthOfFertileWindow?: number | undefined;
339
+ lastUpdatedAt?: number | undefined;
340
+ isPregnant?: boolean | undefined;
341
+ pregnancyDueDate?: string | undefined;
342
+ pregnancyOriginalDueDate?: string | undefined;
343
+ pregnancyCycleStartDate?: string | undefined;
344
+ pregnancyTitle?: string | undefined;
345
+ numberOfBabies?: string | undefined;
346
+ provider: "garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google";
347
+ userId: string;
348
+ periodStartDate: string;
349
+ }, {
350
+ userId: import("convex/values").VString<string, "required">;
351
+ provider: import("convex/values").VUnion<"garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google", [import("convex/values").VLiteral<"garmin", "required">, import("convex/values").VLiteral<"suunto", "required">, import("convex/values").VLiteral<"polar", "required">, import("convex/values").VLiteral<"whoop", "required">, import("convex/values").VLiteral<"strava", "required">, import("convex/values").VLiteral<"apple", "required">, import("convex/values").VLiteral<"samsung", "required">, import("convex/values").VLiteral<"google", "required">], "required", never>;
352
+ externalId: import("convex/values").VString<string | undefined, "optional">;
353
+ periodStartDate: import("convex/values").VString<string, "required">;
354
+ dayInCycle: import("convex/values").VFloat64<number | undefined, "optional">;
355
+ cycleLength: import("convex/values").VFloat64<number | undefined, "optional">;
356
+ predictedCycleLength: import("convex/values").VFloat64<number | undefined, "optional">;
357
+ periodLength: import("convex/values").VFloat64<number | undefined, "optional">;
358
+ currentPhase: import("convex/values").VFloat64<number | undefined, "optional">;
359
+ currentPhaseType: import("convex/values").VString<string | undefined, "optional">;
360
+ lengthOfCurrentPhase: import("convex/values").VFloat64<number | undefined, "optional">;
361
+ daysUntilNextPhase: import("convex/values").VFloat64<number | undefined, "optional">;
362
+ isPredictedCycle: import("convex/values").VBoolean<boolean | undefined, "optional">;
363
+ fertileWindowStart: import("convex/values").VFloat64<number | undefined, "optional">;
364
+ lengthOfFertileWindow: import("convex/values").VFloat64<number | undefined, "optional">;
365
+ lastUpdatedAt: import("convex/values").VFloat64<number | undefined, "optional">;
366
+ isPregnant: import("convex/values").VBoolean<boolean | undefined, "optional">;
367
+ pregnancyDueDate: import("convex/values").VString<string | undefined, "optional">;
368
+ pregnancyOriginalDueDate: import("convex/values").VString<string | undefined, "optional">;
369
+ pregnancyCycleStartDate: import("convex/values").VString<string | undefined, "optional">;
370
+ pregnancyTitle: import("convex/values").VString<string | undefined, "optional">;
371
+ numberOfBabies: import("convex/values").VString<string | undefined, "optional">;
372
+ }, "required", "provider" | "userId" | "externalId" | "currentPhase" | "periodStartDate" | "dayInCycle" | "cycleLength" | "predictedCycleLength" | "periodLength" | "currentPhaseType" | "lengthOfCurrentPhase" | "daysUntilNextPhase" | "isPredictedCycle" | "fertileWindowStart" | "lengthOfFertileWindow" | "lastUpdatedAt" | "isPregnant" | "pregnancyDueDate" | "pregnancyOriginalDueDate" | "pregnancyCycleStartDate" | "pregnancyTitle" | "numberOfBabies">, {
373
+ by_user_date: ["userId", "periodStartDate", "_creationTime"];
374
+ by_user_provider: ["userId", "provider", "_creationTime"];
375
+ by_external_id: ["externalId", "_creationTime"];
376
+ }, {}, {}>;
377
+ backfillJobs: import("convex/server").TableDefinition<import("convex/values").VObject<{
378
+ error?: string | undefined;
379
+ completedAt?: number | undefined;
380
+ workflowId?: string | undefined;
381
+ windowStart?: number | undefined;
382
+ windowEnd?: number | undefined;
383
+ lastHeartbeatAt?: number | undefined;
384
+ currentDataType?: string | undefined;
385
+ currentAttempt?: number | undefined;
386
+ currentEventId?: string | undefined;
387
+ completedDataTypes?: string[] | undefined;
388
+ startedAt: number;
389
+ provider: "garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google";
390
+ status: "failed" | "canceled" | "running" | "completed" | "queued";
391
+ userId: string;
392
+ connectionId: import("convex/values").GenericId<"connections">;
393
+ dataType: string;
394
+ }, {
395
+ connectionId: import("convex/values").VId<import("convex/values").GenericId<"connections">, "required">;
396
+ userId: import("convex/values").VString<string, "required">;
397
+ provider: import("convex/values").VUnion<"garmin" | "suunto" | "polar" | "whoop" | "strava" | "apple" | "samsung" | "google", [import("convex/values").VLiteral<"garmin", "required">, import("convex/values").VLiteral<"suunto", "required">, import("convex/values").VLiteral<"polar", "required">, import("convex/values").VLiteral<"whoop", "required">, import("convex/values").VLiteral<"strava", "required">, import("convex/values").VLiteral<"apple", "required">, import("convex/values").VLiteral<"samsung", "required">, import("convex/values").VLiteral<"google", "required">], "required", never>;
398
+ dataType: import("convex/values").VString<string, "required">;
399
+ status: import("convex/values").VUnion<"failed" | "canceled" | "running" | "completed" | "queued", [import("convex/values").VLiteral<"queued", "required">, import("convex/values").VLiteral<"running", "required">, import("convex/values").VLiteral<"completed", "required">, import("convex/values").VLiteral<"failed", "required">, import("convex/values").VLiteral<"canceled", "required">], "required", never>;
400
+ startedAt: import("convex/values").VFloat64<number, "required">;
401
+ completedAt: import("convex/values").VFloat64<number | undefined, "optional">;
402
+ error: import("convex/values").VString<string | undefined, "optional">;
403
+ workflowId: import("convex/values").VString<string | undefined, "optional">;
404
+ windowStart: import("convex/values").VFloat64<number | undefined, "optional">;
405
+ windowEnd: import("convex/values").VFloat64<number | undefined, "optional">;
406
+ currentDataType: import("convex/values").VString<string | undefined, "optional">;
407
+ currentAttempt: import("convex/values").VFloat64<number | undefined, "optional">;
408
+ currentEventId: import("convex/values").VString<string | undefined, "optional">;
409
+ completedDataTypes: import("convex/values").VArray<string[] | undefined, import("convex/values").VString<string, "required">, "optional">;
410
+ lastHeartbeatAt: import("convex/values").VFloat64<number | undefined, "optional">;
411
+ }, "required", "error" | "startedAt" | "completedAt" | "workflowId" | "provider" | "status" | "userId" | "connectionId" | "windowStart" | "windowEnd" | "lastHeartbeatAt" | "dataType" | "currentDataType" | "currentAttempt" | "currentEventId" | "completedDataTypes">, {
412
+ by_connection: ["connectionId", "_creationTime"];
413
+ by_connection_type: ["connectionId", "dataType", "_creationTime"];
414
+ by_status: ["status", "_creationTime"];
415
+ by_workflow: ["workflowId", "_creationTime"];
416
+ }, {}, {}>;
417
+ }, true>;
418
+ modules: Record<string, () => Promise<unknown>>;
419
+ };
420
+ export default _default;
421
+ //# sourceMappingURL=test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAK9C;;;;GAIG;AACH,wBAAgB,QAAQ,CACtB,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,EACvD,IAAI,GAAE,MAAoB,QAK3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAED,wBAA6C"}