agentfit 0.1.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.
Files changed (107) hide show
  1. package/.claude/settings.local.json +26 -0
  2. package/.prettierignore +7 -0
  3. package/.prettierrc +11 -0
  4. package/CONTRIBUTING.md +209 -0
  5. package/LICENSE +21 -0
  6. package/README.md +109 -0
  7. package/app/(dashboard)/coach/page.tsx +11 -0
  8. package/app/(dashboard)/commands/page.tsx +7 -0
  9. package/app/(dashboard)/community/[slug]/page.tsx +23 -0
  10. package/app/(dashboard)/community/page.tsx +71 -0
  11. package/app/(dashboard)/daily/page.tsx +19 -0
  12. package/app/(dashboard)/images/page.tsx +5 -0
  13. package/app/(dashboard)/layout.tsx +12 -0
  14. package/app/(dashboard)/page.tsx +23 -0
  15. package/app/(dashboard)/personality/page.tsx +11 -0
  16. package/app/(dashboard)/projects/page.tsx +11 -0
  17. package/app/(dashboard)/sessions/page.tsx +11 -0
  18. package/app/(dashboard)/tokens/page.tsx +11 -0
  19. package/app/(dashboard)/tools/page.tsx +11 -0
  20. package/app/api/check/route.ts +13 -0
  21. package/app/api/commands/route.ts +16 -0
  22. package/app/api/images/[...path]/route.ts +33 -0
  23. package/app/api/images-analysis/route.ts +177 -0
  24. package/app/api/sync/route.ts +14 -0
  25. package/app/api/usage/route.ts +117 -0
  26. package/app/favicon.ico +0 -0
  27. package/app/globals.css +144 -0
  28. package/app/icon.svg +3 -0
  29. package/app/layout.tsx +35 -0
  30. package/bin/agentfit.mjs +69 -0
  31. package/components/.gitkeep +0 -0
  32. package/components/agent-coach.tsx +248 -0
  33. package/components/app-sidebar.tsx +161 -0
  34. package/components/command-usage.tsx +294 -0
  35. package/components/daily-chart.tsx +118 -0
  36. package/components/daily-table.tsx +115 -0
  37. package/components/dashboard-shell.tsx +149 -0
  38. package/components/data-provider.tsx +213 -0
  39. package/components/fitness-score.tsx +95 -0
  40. package/components/overview-cards.tsx +198 -0
  41. package/components/pagination-controls.tsx +104 -0
  42. package/components/personality-fit.tsx +446 -0
  43. package/components/projects-table.tsx +70 -0
  44. package/components/screenshots-analysis.tsx +359 -0
  45. package/components/sessions-table.tsx +97 -0
  46. package/components/theme-provider.tsx +71 -0
  47. package/components/token-breakdown.tsx +179 -0
  48. package/components/tool-usage-chart.tsx +63 -0
  49. package/components/ui/badge.tsx +52 -0
  50. package/components/ui/button.tsx +60 -0
  51. package/components/ui/card.tsx +103 -0
  52. package/components/ui/chart.tsx +373 -0
  53. package/components/ui/dialog.tsx +160 -0
  54. package/components/ui/input.tsx +20 -0
  55. package/components/ui/scroll-area.tsx +55 -0
  56. package/components/ui/select.tsx +201 -0
  57. package/components/ui/separator.tsx +25 -0
  58. package/components/ui/sheet.tsx +138 -0
  59. package/components/ui/sidebar.tsx +723 -0
  60. package/components/ui/skeleton.tsx +13 -0
  61. package/components/ui/table.tsx +116 -0
  62. package/components/ui/tabs.tsx +82 -0
  63. package/components/ui/tooltip.tsx +66 -0
  64. package/components.json +25 -0
  65. package/generated/prisma/browser.ts +34 -0
  66. package/generated/prisma/client.ts +58 -0
  67. package/generated/prisma/commonInputTypes.ts +237 -0
  68. package/generated/prisma/enums.ts +15 -0
  69. package/generated/prisma/internal/class.ts +224 -0
  70. package/generated/prisma/internal/prismaNamespace.ts +920 -0
  71. package/generated/prisma/internal/prismaNamespaceBrowser.ts +130 -0
  72. package/generated/prisma/models/Image.ts +1310 -0
  73. package/generated/prisma/models/Session.ts +1695 -0
  74. package/generated/prisma/models/SyncLog.ts +1203 -0
  75. package/generated/prisma/models.ts +14 -0
  76. package/hooks/.gitkeep +0 -0
  77. package/hooks/use-mobile.ts +19 -0
  78. package/hooks/use-pagination.ts +60 -0
  79. package/lib/.gitkeep +0 -0
  80. package/lib/coach.ts +425 -0
  81. package/lib/commands.ts +239 -0
  82. package/lib/db.ts +15 -0
  83. package/lib/format.ts +26 -0
  84. package/lib/parse-codex.ts +201 -0
  85. package/lib/parse-logs.ts +369 -0
  86. package/lib/personality.ts +481 -0
  87. package/lib/plugins.ts +107 -0
  88. package/lib/pricing.ts +112 -0
  89. package/lib/queries-codex.ts +130 -0
  90. package/lib/queries.ts +154 -0
  91. package/lib/resolve-icon.ts +12 -0
  92. package/lib/sync.ts +335 -0
  93. package/lib/utils.ts +6 -0
  94. package/next.config.mjs +4 -0
  95. package/package.json +73 -0
  96. package/plugins/cost-heatmap/component.test.tsx +52 -0
  97. package/plugins/cost-heatmap/component.tsx +227 -0
  98. package/plugins/cost-heatmap/manifest.ts +13 -0
  99. package/plugins/index.ts +18 -0
  100. package/prisma/migrations/20260328152517_init/migration.sql +41 -0
  101. package/prisma/migrations/20260328153801_add_image_model/migration.sql +18 -0
  102. package/prisma/migrations/migration_lock.toml +3 -0
  103. package/prisma/schema.prisma +57 -0
  104. package/prisma.config.ts +14 -0
  105. package/public/.gitkeep +0 -0
  106. package/public/logo.svg +3 -0
  107. package/setup.sh +73 -0
@@ -0,0 +1,1695 @@
1
+
2
+ /* !!! This is code generated by Prisma. Do not edit directly. !!! */
3
+ /* eslint-disable */
4
+ // biome-ignore-all lint: generated file
5
+ // @ts-nocheck
6
+ /*
7
+ * This file exports the `Session` model and its related types.
8
+ *
9
+ * 🟢 You can import this file directly.
10
+ */
11
+ import type * as runtime from "@prisma/client/runtime/client"
12
+ import type * as $Enums from "../enums"
13
+ import type * as Prisma from "../internal/prismaNamespace"
14
+
15
+ /**
16
+ * Model Session
17
+ *
18
+ */
19
+ export type SessionModel = runtime.Types.Result.DefaultSelection<Prisma.$SessionPayload>
20
+
21
+ export type AggregateSession = {
22
+ _count: SessionCountAggregateOutputType | null
23
+ _avg: SessionAvgAggregateOutputType | null
24
+ _sum: SessionSumAggregateOutputType | null
25
+ _min: SessionMinAggregateOutputType | null
26
+ _max: SessionMaxAggregateOutputType | null
27
+ }
28
+
29
+ export type SessionAvgAggregateOutputType = {
30
+ durationMinutes: number | null
31
+ userMessages: number | null
32
+ assistantMessages: number | null
33
+ totalMessages: number | null
34
+ inputTokens: number | null
35
+ outputTokens: number | null
36
+ cacheCreationTokens: number | null
37
+ cacheReadTokens: number | null
38
+ totalTokens: number | null
39
+ costUSD: number | null
40
+ toolCallsTotal: number | null
41
+ }
42
+
43
+ export type SessionSumAggregateOutputType = {
44
+ durationMinutes: number | null
45
+ userMessages: number | null
46
+ assistantMessages: number | null
47
+ totalMessages: number | null
48
+ inputTokens: number | null
49
+ outputTokens: number | null
50
+ cacheCreationTokens: number | null
51
+ cacheReadTokens: number | null
52
+ totalTokens: number | null
53
+ costUSD: number | null
54
+ toolCallsTotal: number | null
55
+ }
56
+
57
+ export type SessionMinAggregateOutputType = {
58
+ id: string | null
59
+ sessionId: string | null
60
+ project: string | null
61
+ projectPath: string | null
62
+ startTime: Date | null
63
+ endTime: Date | null
64
+ durationMinutes: number | null
65
+ userMessages: number | null
66
+ assistantMessages: number | null
67
+ totalMessages: number | null
68
+ inputTokens: number | null
69
+ outputTokens: number | null
70
+ cacheCreationTokens: number | null
71
+ cacheReadTokens: number | null
72
+ totalTokens: number | null
73
+ costUSD: number | null
74
+ model: string | null
75
+ toolCallsTotal: number | null
76
+ toolCallsJson: string | null
77
+ createdAt: Date | null
78
+ }
79
+
80
+ export type SessionMaxAggregateOutputType = {
81
+ id: string | null
82
+ sessionId: string | null
83
+ project: string | null
84
+ projectPath: string | null
85
+ startTime: Date | null
86
+ endTime: Date | null
87
+ durationMinutes: number | null
88
+ userMessages: number | null
89
+ assistantMessages: number | null
90
+ totalMessages: number | null
91
+ inputTokens: number | null
92
+ outputTokens: number | null
93
+ cacheCreationTokens: number | null
94
+ cacheReadTokens: number | null
95
+ totalTokens: number | null
96
+ costUSD: number | null
97
+ model: string | null
98
+ toolCallsTotal: number | null
99
+ toolCallsJson: string | null
100
+ createdAt: Date | null
101
+ }
102
+
103
+ export type SessionCountAggregateOutputType = {
104
+ id: number
105
+ sessionId: number
106
+ project: number
107
+ projectPath: number
108
+ startTime: number
109
+ endTime: number
110
+ durationMinutes: number
111
+ userMessages: number
112
+ assistantMessages: number
113
+ totalMessages: number
114
+ inputTokens: number
115
+ outputTokens: number
116
+ cacheCreationTokens: number
117
+ cacheReadTokens: number
118
+ totalTokens: number
119
+ costUSD: number
120
+ model: number
121
+ toolCallsTotal: number
122
+ toolCallsJson: number
123
+ createdAt: number
124
+ _all: number
125
+ }
126
+
127
+
128
+ export type SessionAvgAggregateInputType = {
129
+ durationMinutes?: true
130
+ userMessages?: true
131
+ assistantMessages?: true
132
+ totalMessages?: true
133
+ inputTokens?: true
134
+ outputTokens?: true
135
+ cacheCreationTokens?: true
136
+ cacheReadTokens?: true
137
+ totalTokens?: true
138
+ costUSD?: true
139
+ toolCallsTotal?: true
140
+ }
141
+
142
+ export type SessionSumAggregateInputType = {
143
+ durationMinutes?: true
144
+ userMessages?: true
145
+ assistantMessages?: true
146
+ totalMessages?: true
147
+ inputTokens?: true
148
+ outputTokens?: true
149
+ cacheCreationTokens?: true
150
+ cacheReadTokens?: true
151
+ totalTokens?: true
152
+ costUSD?: true
153
+ toolCallsTotal?: true
154
+ }
155
+
156
+ export type SessionMinAggregateInputType = {
157
+ id?: true
158
+ sessionId?: true
159
+ project?: true
160
+ projectPath?: true
161
+ startTime?: true
162
+ endTime?: true
163
+ durationMinutes?: true
164
+ userMessages?: true
165
+ assistantMessages?: true
166
+ totalMessages?: true
167
+ inputTokens?: true
168
+ outputTokens?: true
169
+ cacheCreationTokens?: true
170
+ cacheReadTokens?: true
171
+ totalTokens?: true
172
+ costUSD?: true
173
+ model?: true
174
+ toolCallsTotal?: true
175
+ toolCallsJson?: true
176
+ createdAt?: true
177
+ }
178
+
179
+ export type SessionMaxAggregateInputType = {
180
+ id?: true
181
+ sessionId?: true
182
+ project?: true
183
+ projectPath?: true
184
+ startTime?: true
185
+ endTime?: true
186
+ durationMinutes?: true
187
+ userMessages?: true
188
+ assistantMessages?: true
189
+ totalMessages?: true
190
+ inputTokens?: true
191
+ outputTokens?: true
192
+ cacheCreationTokens?: true
193
+ cacheReadTokens?: true
194
+ totalTokens?: true
195
+ costUSD?: true
196
+ model?: true
197
+ toolCallsTotal?: true
198
+ toolCallsJson?: true
199
+ createdAt?: true
200
+ }
201
+
202
+ export type SessionCountAggregateInputType = {
203
+ id?: true
204
+ sessionId?: true
205
+ project?: true
206
+ projectPath?: true
207
+ startTime?: true
208
+ endTime?: true
209
+ durationMinutes?: true
210
+ userMessages?: true
211
+ assistantMessages?: true
212
+ totalMessages?: true
213
+ inputTokens?: true
214
+ outputTokens?: true
215
+ cacheCreationTokens?: true
216
+ cacheReadTokens?: true
217
+ totalTokens?: true
218
+ costUSD?: true
219
+ model?: true
220
+ toolCallsTotal?: true
221
+ toolCallsJson?: true
222
+ createdAt?: true
223
+ _all?: true
224
+ }
225
+
226
+ export type SessionAggregateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
227
+ /**
228
+ * Filter which Session to aggregate.
229
+ */
230
+ where?: Prisma.SessionWhereInput
231
+ /**
232
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
233
+ *
234
+ * Determine the order of Sessions to fetch.
235
+ */
236
+ orderBy?: Prisma.SessionOrderByWithRelationInput | Prisma.SessionOrderByWithRelationInput[]
237
+ /**
238
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
239
+ *
240
+ * Sets the start position
241
+ */
242
+ cursor?: Prisma.SessionWhereUniqueInput
243
+ /**
244
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
245
+ *
246
+ * Take `±n` Sessions from the position of the cursor.
247
+ */
248
+ take?: number
249
+ /**
250
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
251
+ *
252
+ * Skip the first `n` Sessions.
253
+ */
254
+ skip?: number
255
+ /**
256
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
257
+ *
258
+ * Count returned Sessions
259
+ **/
260
+ _count?: true | SessionCountAggregateInputType
261
+ /**
262
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
263
+ *
264
+ * Select which fields to average
265
+ **/
266
+ _avg?: SessionAvgAggregateInputType
267
+ /**
268
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
269
+ *
270
+ * Select which fields to sum
271
+ **/
272
+ _sum?: SessionSumAggregateInputType
273
+ /**
274
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
275
+ *
276
+ * Select which fields to find the minimum value
277
+ **/
278
+ _min?: SessionMinAggregateInputType
279
+ /**
280
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
281
+ *
282
+ * Select which fields to find the maximum value
283
+ **/
284
+ _max?: SessionMaxAggregateInputType
285
+ }
286
+
287
+ export type GetSessionAggregateType<T extends SessionAggregateArgs> = {
288
+ [P in keyof T & keyof AggregateSession]: P extends '_count' | 'count'
289
+ ? T[P] extends true
290
+ ? number
291
+ : Prisma.GetScalarType<T[P], AggregateSession[P]>
292
+ : Prisma.GetScalarType<T[P], AggregateSession[P]>
293
+ }
294
+
295
+
296
+
297
+
298
+ export type SessionGroupByArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
299
+ where?: Prisma.SessionWhereInput
300
+ orderBy?: Prisma.SessionOrderByWithAggregationInput | Prisma.SessionOrderByWithAggregationInput[]
301
+ by: Prisma.SessionScalarFieldEnum[] | Prisma.SessionScalarFieldEnum
302
+ having?: Prisma.SessionScalarWhereWithAggregatesInput
303
+ take?: number
304
+ skip?: number
305
+ _count?: SessionCountAggregateInputType | true
306
+ _avg?: SessionAvgAggregateInputType
307
+ _sum?: SessionSumAggregateInputType
308
+ _min?: SessionMinAggregateInputType
309
+ _max?: SessionMaxAggregateInputType
310
+ }
311
+
312
+ export type SessionGroupByOutputType = {
313
+ id: string
314
+ sessionId: string
315
+ project: string
316
+ projectPath: string
317
+ startTime: Date
318
+ endTime: Date
319
+ durationMinutes: number
320
+ userMessages: number
321
+ assistantMessages: number
322
+ totalMessages: number
323
+ inputTokens: number
324
+ outputTokens: number
325
+ cacheCreationTokens: number
326
+ cacheReadTokens: number
327
+ totalTokens: number
328
+ costUSD: number
329
+ model: string
330
+ toolCallsTotal: number
331
+ toolCallsJson: string
332
+ createdAt: Date
333
+ _count: SessionCountAggregateOutputType | null
334
+ _avg: SessionAvgAggregateOutputType | null
335
+ _sum: SessionSumAggregateOutputType | null
336
+ _min: SessionMinAggregateOutputType | null
337
+ _max: SessionMaxAggregateOutputType | null
338
+ }
339
+
340
+ export type GetSessionGroupByPayload<T extends SessionGroupByArgs> = Prisma.PrismaPromise<
341
+ Array<
342
+ Prisma.PickEnumerable<SessionGroupByOutputType, T['by']> &
343
+ {
344
+ [P in ((keyof T) & (keyof SessionGroupByOutputType))]: P extends '_count'
345
+ ? T[P] extends boolean
346
+ ? number
347
+ : Prisma.GetScalarType<T[P], SessionGroupByOutputType[P]>
348
+ : Prisma.GetScalarType<T[P], SessionGroupByOutputType[P]>
349
+ }
350
+ >
351
+ >
352
+
353
+
354
+
355
+ export type SessionWhereInput = {
356
+ AND?: Prisma.SessionWhereInput | Prisma.SessionWhereInput[]
357
+ OR?: Prisma.SessionWhereInput[]
358
+ NOT?: Prisma.SessionWhereInput | Prisma.SessionWhereInput[]
359
+ id?: Prisma.StringFilter<"Session"> | string
360
+ sessionId?: Prisma.StringFilter<"Session"> | string
361
+ project?: Prisma.StringFilter<"Session"> | string
362
+ projectPath?: Prisma.StringFilter<"Session"> | string
363
+ startTime?: Prisma.DateTimeFilter<"Session"> | Date | string
364
+ endTime?: Prisma.DateTimeFilter<"Session"> | Date | string
365
+ durationMinutes?: Prisma.FloatFilter<"Session"> | number
366
+ userMessages?: Prisma.IntFilter<"Session"> | number
367
+ assistantMessages?: Prisma.IntFilter<"Session"> | number
368
+ totalMessages?: Prisma.IntFilter<"Session"> | number
369
+ inputTokens?: Prisma.IntFilter<"Session"> | number
370
+ outputTokens?: Prisma.IntFilter<"Session"> | number
371
+ cacheCreationTokens?: Prisma.IntFilter<"Session"> | number
372
+ cacheReadTokens?: Prisma.IntFilter<"Session"> | number
373
+ totalTokens?: Prisma.IntFilter<"Session"> | number
374
+ costUSD?: Prisma.FloatFilter<"Session"> | number
375
+ model?: Prisma.StringFilter<"Session"> | string
376
+ toolCallsTotal?: Prisma.IntFilter<"Session"> | number
377
+ toolCallsJson?: Prisma.StringFilter<"Session"> | string
378
+ createdAt?: Prisma.DateTimeFilter<"Session"> | Date | string
379
+ }
380
+
381
+ export type SessionOrderByWithRelationInput = {
382
+ id?: Prisma.SortOrder
383
+ sessionId?: Prisma.SortOrder
384
+ project?: Prisma.SortOrder
385
+ projectPath?: Prisma.SortOrder
386
+ startTime?: Prisma.SortOrder
387
+ endTime?: Prisma.SortOrder
388
+ durationMinutes?: Prisma.SortOrder
389
+ userMessages?: Prisma.SortOrder
390
+ assistantMessages?: Prisma.SortOrder
391
+ totalMessages?: Prisma.SortOrder
392
+ inputTokens?: Prisma.SortOrder
393
+ outputTokens?: Prisma.SortOrder
394
+ cacheCreationTokens?: Prisma.SortOrder
395
+ cacheReadTokens?: Prisma.SortOrder
396
+ totalTokens?: Prisma.SortOrder
397
+ costUSD?: Prisma.SortOrder
398
+ model?: Prisma.SortOrder
399
+ toolCallsTotal?: Prisma.SortOrder
400
+ toolCallsJson?: Prisma.SortOrder
401
+ createdAt?: Prisma.SortOrder
402
+ }
403
+
404
+ export type SessionWhereUniqueInput = Prisma.AtLeast<{
405
+ id?: string
406
+ sessionId?: string
407
+ AND?: Prisma.SessionWhereInput | Prisma.SessionWhereInput[]
408
+ OR?: Prisma.SessionWhereInput[]
409
+ NOT?: Prisma.SessionWhereInput | Prisma.SessionWhereInput[]
410
+ project?: Prisma.StringFilter<"Session"> | string
411
+ projectPath?: Prisma.StringFilter<"Session"> | string
412
+ startTime?: Prisma.DateTimeFilter<"Session"> | Date | string
413
+ endTime?: Prisma.DateTimeFilter<"Session"> | Date | string
414
+ durationMinutes?: Prisma.FloatFilter<"Session"> | number
415
+ userMessages?: Prisma.IntFilter<"Session"> | number
416
+ assistantMessages?: Prisma.IntFilter<"Session"> | number
417
+ totalMessages?: Prisma.IntFilter<"Session"> | number
418
+ inputTokens?: Prisma.IntFilter<"Session"> | number
419
+ outputTokens?: Prisma.IntFilter<"Session"> | number
420
+ cacheCreationTokens?: Prisma.IntFilter<"Session"> | number
421
+ cacheReadTokens?: Prisma.IntFilter<"Session"> | number
422
+ totalTokens?: Prisma.IntFilter<"Session"> | number
423
+ costUSD?: Prisma.FloatFilter<"Session"> | number
424
+ model?: Prisma.StringFilter<"Session"> | string
425
+ toolCallsTotal?: Prisma.IntFilter<"Session"> | number
426
+ toolCallsJson?: Prisma.StringFilter<"Session"> | string
427
+ createdAt?: Prisma.DateTimeFilter<"Session"> | Date | string
428
+ }, "id" | "sessionId">
429
+
430
+ export type SessionOrderByWithAggregationInput = {
431
+ id?: Prisma.SortOrder
432
+ sessionId?: Prisma.SortOrder
433
+ project?: Prisma.SortOrder
434
+ projectPath?: Prisma.SortOrder
435
+ startTime?: Prisma.SortOrder
436
+ endTime?: Prisma.SortOrder
437
+ durationMinutes?: Prisma.SortOrder
438
+ userMessages?: Prisma.SortOrder
439
+ assistantMessages?: Prisma.SortOrder
440
+ totalMessages?: Prisma.SortOrder
441
+ inputTokens?: Prisma.SortOrder
442
+ outputTokens?: Prisma.SortOrder
443
+ cacheCreationTokens?: Prisma.SortOrder
444
+ cacheReadTokens?: Prisma.SortOrder
445
+ totalTokens?: Prisma.SortOrder
446
+ costUSD?: Prisma.SortOrder
447
+ model?: Prisma.SortOrder
448
+ toolCallsTotal?: Prisma.SortOrder
449
+ toolCallsJson?: Prisma.SortOrder
450
+ createdAt?: Prisma.SortOrder
451
+ _count?: Prisma.SessionCountOrderByAggregateInput
452
+ _avg?: Prisma.SessionAvgOrderByAggregateInput
453
+ _max?: Prisma.SessionMaxOrderByAggregateInput
454
+ _min?: Prisma.SessionMinOrderByAggregateInput
455
+ _sum?: Prisma.SessionSumOrderByAggregateInput
456
+ }
457
+
458
+ export type SessionScalarWhereWithAggregatesInput = {
459
+ AND?: Prisma.SessionScalarWhereWithAggregatesInput | Prisma.SessionScalarWhereWithAggregatesInput[]
460
+ OR?: Prisma.SessionScalarWhereWithAggregatesInput[]
461
+ NOT?: Prisma.SessionScalarWhereWithAggregatesInput | Prisma.SessionScalarWhereWithAggregatesInput[]
462
+ id?: Prisma.StringWithAggregatesFilter<"Session"> | string
463
+ sessionId?: Prisma.StringWithAggregatesFilter<"Session"> | string
464
+ project?: Prisma.StringWithAggregatesFilter<"Session"> | string
465
+ projectPath?: Prisma.StringWithAggregatesFilter<"Session"> | string
466
+ startTime?: Prisma.DateTimeWithAggregatesFilter<"Session"> | Date | string
467
+ endTime?: Prisma.DateTimeWithAggregatesFilter<"Session"> | Date | string
468
+ durationMinutes?: Prisma.FloatWithAggregatesFilter<"Session"> | number
469
+ userMessages?: Prisma.IntWithAggregatesFilter<"Session"> | number
470
+ assistantMessages?: Prisma.IntWithAggregatesFilter<"Session"> | number
471
+ totalMessages?: Prisma.IntWithAggregatesFilter<"Session"> | number
472
+ inputTokens?: Prisma.IntWithAggregatesFilter<"Session"> | number
473
+ outputTokens?: Prisma.IntWithAggregatesFilter<"Session"> | number
474
+ cacheCreationTokens?: Prisma.IntWithAggregatesFilter<"Session"> | number
475
+ cacheReadTokens?: Prisma.IntWithAggregatesFilter<"Session"> | number
476
+ totalTokens?: Prisma.IntWithAggregatesFilter<"Session"> | number
477
+ costUSD?: Prisma.FloatWithAggregatesFilter<"Session"> | number
478
+ model?: Prisma.StringWithAggregatesFilter<"Session"> | string
479
+ toolCallsTotal?: Prisma.IntWithAggregatesFilter<"Session"> | number
480
+ toolCallsJson?: Prisma.StringWithAggregatesFilter<"Session"> | string
481
+ createdAt?: Prisma.DateTimeWithAggregatesFilter<"Session"> | Date | string
482
+ }
483
+
484
+ export type SessionCreateInput = {
485
+ id?: string
486
+ sessionId: string
487
+ project: string
488
+ projectPath: string
489
+ startTime: Date | string
490
+ endTime: Date | string
491
+ durationMinutes: number
492
+ userMessages: number
493
+ assistantMessages: number
494
+ totalMessages: number
495
+ inputTokens: number
496
+ outputTokens: number
497
+ cacheCreationTokens: number
498
+ cacheReadTokens: number
499
+ totalTokens: number
500
+ costUSD: number
501
+ model: string
502
+ toolCallsTotal: number
503
+ toolCallsJson: string
504
+ createdAt?: Date | string
505
+ }
506
+
507
+ export type SessionUncheckedCreateInput = {
508
+ id?: string
509
+ sessionId: string
510
+ project: string
511
+ projectPath: string
512
+ startTime: Date | string
513
+ endTime: Date | string
514
+ durationMinutes: number
515
+ userMessages: number
516
+ assistantMessages: number
517
+ totalMessages: number
518
+ inputTokens: number
519
+ outputTokens: number
520
+ cacheCreationTokens: number
521
+ cacheReadTokens: number
522
+ totalTokens: number
523
+ costUSD: number
524
+ model: string
525
+ toolCallsTotal: number
526
+ toolCallsJson: string
527
+ createdAt?: Date | string
528
+ }
529
+
530
+ export type SessionUpdateInput = {
531
+ id?: Prisma.StringFieldUpdateOperationsInput | string
532
+ sessionId?: Prisma.StringFieldUpdateOperationsInput | string
533
+ project?: Prisma.StringFieldUpdateOperationsInput | string
534
+ projectPath?: Prisma.StringFieldUpdateOperationsInput | string
535
+ startTime?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
536
+ endTime?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
537
+ durationMinutes?: Prisma.FloatFieldUpdateOperationsInput | number
538
+ userMessages?: Prisma.IntFieldUpdateOperationsInput | number
539
+ assistantMessages?: Prisma.IntFieldUpdateOperationsInput | number
540
+ totalMessages?: Prisma.IntFieldUpdateOperationsInput | number
541
+ inputTokens?: Prisma.IntFieldUpdateOperationsInput | number
542
+ outputTokens?: Prisma.IntFieldUpdateOperationsInput | number
543
+ cacheCreationTokens?: Prisma.IntFieldUpdateOperationsInput | number
544
+ cacheReadTokens?: Prisma.IntFieldUpdateOperationsInput | number
545
+ totalTokens?: Prisma.IntFieldUpdateOperationsInput | number
546
+ costUSD?: Prisma.FloatFieldUpdateOperationsInput | number
547
+ model?: Prisma.StringFieldUpdateOperationsInput | string
548
+ toolCallsTotal?: Prisma.IntFieldUpdateOperationsInput | number
549
+ toolCallsJson?: Prisma.StringFieldUpdateOperationsInput | string
550
+ createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
551
+ }
552
+
553
+ export type SessionUncheckedUpdateInput = {
554
+ id?: Prisma.StringFieldUpdateOperationsInput | string
555
+ sessionId?: Prisma.StringFieldUpdateOperationsInput | string
556
+ project?: Prisma.StringFieldUpdateOperationsInput | string
557
+ projectPath?: Prisma.StringFieldUpdateOperationsInput | string
558
+ startTime?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
559
+ endTime?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
560
+ durationMinutes?: Prisma.FloatFieldUpdateOperationsInput | number
561
+ userMessages?: Prisma.IntFieldUpdateOperationsInput | number
562
+ assistantMessages?: Prisma.IntFieldUpdateOperationsInput | number
563
+ totalMessages?: Prisma.IntFieldUpdateOperationsInput | number
564
+ inputTokens?: Prisma.IntFieldUpdateOperationsInput | number
565
+ outputTokens?: Prisma.IntFieldUpdateOperationsInput | number
566
+ cacheCreationTokens?: Prisma.IntFieldUpdateOperationsInput | number
567
+ cacheReadTokens?: Prisma.IntFieldUpdateOperationsInput | number
568
+ totalTokens?: Prisma.IntFieldUpdateOperationsInput | number
569
+ costUSD?: Prisma.FloatFieldUpdateOperationsInput | number
570
+ model?: Prisma.StringFieldUpdateOperationsInput | string
571
+ toolCallsTotal?: Prisma.IntFieldUpdateOperationsInput | number
572
+ toolCallsJson?: Prisma.StringFieldUpdateOperationsInput | string
573
+ createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
574
+ }
575
+
576
+ export type SessionCreateManyInput = {
577
+ id?: string
578
+ sessionId: string
579
+ project: string
580
+ projectPath: string
581
+ startTime: Date | string
582
+ endTime: Date | string
583
+ durationMinutes: number
584
+ userMessages: number
585
+ assistantMessages: number
586
+ totalMessages: number
587
+ inputTokens: number
588
+ outputTokens: number
589
+ cacheCreationTokens: number
590
+ cacheReadTokens: number
591
+ totalTokens: number
592
+ costUSD: number
593
+ model: string
594
+ toolCallsTotal: number
595
+ toolCallsJson: string
596
+ createdAt?: Date | string
597
+ }
598
+
599
+ export type SessionUpdateManyMutationInput = {
600
+ id?: Prisma.StringFieldUpdateOperationsInput | string
601
+ sessionId?: Prisma.StringFieldUpdateOperationsInput | string
602
+ project?: Prisma.StringFieldUpdateOperationsInput | string
603
+ projectPath?: Prisma.StringFieldUpdateOperationsInput | string
604
+ startTime?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
605
+ endTime?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
606
+ durationMinutes?: Prisma.FloatFieldUpdateOperationsInput | number
607
+ userMessages?: Prisma.IntFieldUpdateOperationsInput | number
608
+ assistantMessages?: Prisma.IntFieldUpdateOperationsInput | number
609
+ totalMessages?: Prisma.IntFieldUpdateOperationsInput | number
610
+ inputTokens?: Prisma.IntFieldUpdateOperationsInput | number
611
+ outputTokens?: Prisma.IntFieldUpdateOperationsInput | number
612
+ cacheCreationTokens?: Prisma.IntFieldUpdateOperationsInput | number
613
+ cacheReadTokens?: Prisma.IntFieldUpdateOperationsInput | number
614
+ totalTokens?: Prisma.IntFieldUpdateOperationsInput | number
615
+ costUSD?: Prisma.FloatFieldUpdateOperationsInput | number
616
+ model?: Prisma.StringFieldUpdateOperationsInput | string
617
+ toolCallsTotal?: Prisma.IntFieldUpdateOperationsInput | number
618
+ toolCallsJson?: Prisma.StringFieldUpdateOperationsInput | string
619
+ createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
620
+ }
621
+
622
+ export type SessionUncheckedUpdateManyInput = {
623
+ id?: Prisma.StringFieldUpdateOperationsInput | string
624
+ sessionId?: Prisma.StringFieldUpdateOperationsInput | string
625
+ project?: Prisma.StringFieldUpdateOperationsInput | string
626
+ projectPath?: Prisma.StringFieldUpdateOperationsInput | string
627
+ startTime?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
628
+ endTime?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
629
+ durationMinutes?: Prisma.FloatFieldUpdateOperationsInput | number
630
+ userMessages?: Prisma.IntFieldUpdateOperationsInput | number
631
+ assistantMessages?: Prisma.IntFieldUpdateOperationsInput | number
632
+ totalMessages?: Prisma.IntFieldUpdateOperationsInput | number
633
+ inputTokens?: Prisma.IntFieldUpdateOperationsInput | number
634
+ outputTokens?: Prisma.IntFieldUpdateOperationsInput | number
635
+ cacheCreationTokens?: Prisma.IntFieldUpdateOperationsInput | number
636
+ cacheReadTokens?: Prisma.IntFieldUpdateOperationsInput | number
637
+ totalTokens?: Prisma.IntFieldUpdateOperationsInput | number
638
+ costUSD?: Prisma.FloatFieldUpdateOperationsInput | number
639
+ model?: Prisma.StringFieldUpdateOperationsInput | string
640
+ toolCallsTotal?: Prisma.IntFieldUpdateOperationsInput | number
641
+ toolCallsJson?: Prisma.StringFieldUpdateOperationsInput | string
642
+ createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
643
+ }
644
+
645
+ export type SessionCountOrderByAggregateInput = {
646
+ id?: Prisma.SortOrder
647
+ sessionId?: Prisma.SortOrder
648
+ project?: Prisma.SortOrder
649
+ projectPath?: Prisma.SortOrder
650
+ startTime?: Prisma.SortOrder
651
+ endTime?: Prisma.SortOrder
652
+ durationMinutes?: Prisma.SortOrder
653
+ userMessages?: Prisma.SortOrder
654
+ assistantMessages?: Prisma.SortOrder
655
+ totalMessages?: Prisma.SortOrder
656
+ inputTokens?: Prisma.SortOrder
657
+ outputTokens?: Prisma.SortOrder
658
+ cacheCreationTokens?: Prisma.SortOrder
659
+ cacheReadTokens?: Prisma.SortOrder
660
+ totalTokens?: Prisma.SortOrder
661
+ costUSD?: Prisma.SortOrder
662
+ model?: Prisma.SortOrder
663
+ toolCallsTotal?: Prisma.SortOrder
664
+ toolCallsJson?: Prisma.SortOrder
665
+ createdAt?: Prisma.SortOrder
666
+ }
667
+
668
+ export type SessionAvgOrderByAggregateInput = {
669
+ durationMinutes?: Prisma.SortOrder
670
+ userMessages?: Prisma.SortOrder
671
+ assistantMessages?: Prisma.SortOrder
672
+ totalMessages?: Prisma.SortOrder
673
+ inputTokens?: Prisma.SortOrder
674
+ outputTokens?: Prisma.SortOrder
675
+ cacheCreationTokens?: Prisma.SortOrder
676
+ cacheReadTokens?: Prisma.SortOrder
677
+ totalTokens?: Prisma.SortOrder
678
+ costUSD?: Prisma.SortOrder
679
+ toolCallsTotal?: Prisma.SortOrder
680
+ }
681
+
682
+ export type SessionMaxOrderByAggregateInput = {
683
+ id?: Prisma.SortOrder
684
+ sessionId?: Prisma.SortOrder
685
+ project?: Prisma.SortOrder
686
+ projectPath?: Prisma.SortOrder
687
+ startTime?: Prisma.SortOrder
688
+ endTime?: Prisma.SortOrder
689
+ durationMinutes?: Prisma.SortOrder
690
+ userMessages?: Prisma.SortOrder
691
+ assistantMessages?: Prisma.SortOrder
692
+ totalMessages?: Prisma.SortOrder
693
+ inputTokens?: Prisma.SortOrder
694
+ outputTokens?: Prisma.SortOrder
695
+ cacheCreationTokens?: Prisma.SortOrder
696
+ cacheReadTokens?: Prisma.SortOrder
697
+ totalTokens?: Prisma.SortOrder
698
+ costUSD?: Prisma.SortOrder
699
+ model?: Prisma.SortOrder
700
+ toolCallsTotal?: Prisma.SortOrder
701
+ toolCallsJson?: Prisma.SortOrder
702
+ createdAt?: Prisma.SortOrder
703
+ }
704
+
705
+ export type SessionMinOrderByAggregateInput = {
706
+ id?: Prisma.SortOrder
707
+ sessionId?: Prisma.SortOrder
708
+ project?: Prisma.SortOrder
709
+ projectPath?: Prisma.SortOrder
710
+ startTime?: Prisma.SortOrder
711
+ endTime?: Prisma.SortOrder
712
+ durationMinutes?: Prisma.SortOrder
713
+ userMessages?: Prisma.SortOrder
714
+ assistantMessages?: Prisma.SortOrder
715
+ totalMessages?: Prisma.SortOrder
716
+ inputTokens?: Prisma.SortOrder
717
+ outputTokens?: Prisma.SortOrder
718
+ cacheCreationTokens?: Prisma.SortOrder
719
+ cacheReadTokens?: Prisma.SortOrder
720
+ totalTokens?: Prisma.SortOrder
721
+ costUSD?: Prisma.SortOrder
722
+ model?: Prisma.SortOrder
723
+ toolCallsTotal?: Prisma.SortOrder
724
+ toolCallsJson?: Prisma.SortOrder
725
+ createdAt?: Prisma.SortOrder
726
+ }
727
+
728
+ export type SessionSumOrderByAggregateInput = {
729
+ durationMinutes?: Prisma.SortOrder
730
+ userMessages?: Prisma.SortOrder
731
+ assistantMessages?: Prisma.SortOrder
732
+ totalMessages?: Prisma.SortOrder
733
+ inputTokens?: Prisma.SortOrder
734
+ outputTokens?: Prisma.SortOrder
735
+ cacheCreationTokens?: Prisma.SortOrder
736
+ cacheReadTokens?: Prisma.SortOrder
737
+ totalTokens?: Prisma.SortOrder
738
+ costUSD?: Prisma.SortOrder
739
+ toolCallsTotal?: Prisma.SortOrder
740
+ }
741
+
742
+ export type StringFieldUpdateOperationsInput = {
743
+ set?: string
744
+ }
745
+
746
+ export type DateTimeFieldUpdateOperationsInput = {
747
+ set?: Date | string
748
+ }
749
+
750
+ export type FloatFieldUpdateOperationsInput = {
751
+ set?: number
752
+ increment?: number
753
+ decrement?: number
754
+ multiply?: number
755
+ divide?: number
756
+ }
757
+
758
+ export type IntFieldUpdateOperationsInput = {
759
+ set?: number
760
+ increment?: number
761
+ decrement?: number
762
+ multiply?: number
763
+ divide?: number
764
+ }
765
+
766
+
767
+
768
+ export type SessionSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
769
+ id?: boolean
770
+ sessionId?: boolean
771
+ project?: boolean
772
+ projectPath?: boolean
773
+ startTime?: boolean
774
+ endTime?: boolean
775
+ durationMinutes?: boolean
776
+ userMessages?: boolean
777
+ assistantMessages?: boolean
778
+ totalMessages?: boolean
779
+ inputTokens?: boolean
780
+ outputTokens?: boolean
781
+ cacheCreationTokens?: boolean
782
+ cacheReadTokens?: boolean
783
+ totalTokens?: boolean
784
+ costUSD?: boolean
785
+ model?: boolean
786
+ toolCallsTotal?: boolean
787
+ toolCallsJson?: boolean
788
+ createdAt?: boolean
789
+ }, ExtArgs["result"]["session"]>
790
+
791
+ export type SessionSelectCreateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
792
+ id?: boolean
793
+ sessionId?: boolean
794
+ project?: boolean
795
+ projectPath?: boolean
796
+ startTime?: boolean
797
+ endTime?: boolean
798
+ durationMinutes?: boolean
799
+ userMessages?: boolean
800
+ assistantMessages?: boolean
801
+ totalMessages?: boolean
802
+ inputTokens?: boolean
803
+ outputTokens?: boolean
804
+ cacheCreationTokens?: boolean
805
+ cacheReadTokens?: boolean
806
+ totalTokens?: boolean
807
+ costUSD?: boolean
808
+ model?: boolean
809
+ toolCallsTotal?: boolean
810
+ toolCallsJson?: boolean
811
+ createdAt?: boolean
812
+ }, ExtArgs["result"]["session"]>
813
+
814
+ export type SessionSelectUpdateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
815
+ id?: boolean
816
+ sessionId?: boolean
817
+ project?: boolean
818
+ projectPath?: boolean
819
+ startTime?: boolean
820
+ endTime?: boolean
821
+ durationMinutes?: boolean
822
+ userMessages?: boolean
823
+ assistantMessages?: boolean
824
+ totalMessages?: boolean
825
+ inputTokens?: boolean
826
+ outputTokens?: boolean
827
+ cacheCreationTokens?: boolean
828
+ cacheReadTokens?: boolean
829
+ totalTokens?: boolean
830
+ costUSD?: boolean
831
+ model?: boolean
832
+ toolCallsTotal?: boolean
833
+ toolCallsJson?: boolean
834
+ createdAt?: boolean
835
+ }, ExtArgs["result"]["session"]>
836
+
837
+ export type SessionSelectScalar = {
838
+ id?: boolean
839
+ sessionId?: boolean
840
+ project?: boolean
841
+ projectPath?: boolean
842
+ startTime?: boolean
843
+ endTime?: boolean
844
+ durationMinutes?: boolean
845
+ userMessages?: boolean
846
+ assistantMessages?: boolean
847
+ totalMessages?: boolean
848
+ inputTokens?: boolean
849
+ outputTokens?: boolean
850
+ cacheCreationTokens?: boolean
851
+ cacheReadTokens?: boolean
852
+ totalTokens?: boolean
853
+ costUSD?: boolean
854
+ model?: boolean
855
+ toolCallsTotal?: boolean
856
+ toolCallsJson?: boolean
857
+ createdAt?: boolean
858
+ }
859
+
860
+ export type SessionOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "sessionId" | "project" | "projectPath" | "startTime" | "endTime" | "durationMinutes" | "userMessages" | "assistantMessages" | "totalMessages" | "inputTokens" | "outputTokens" | "cacheCreationTokens" | "cacheReadTokens" | "totalTokens" | "costUSD" | "model" | "toolCallsTotal" | "toolCallsJson" | "createdAt", ExtArgs["result"]["session"]>
861
+
862
+ export type $SessionPayload<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
863
+ name: "Session"
864
+ objects: {}
865
+ scalars: runtime.Types.Extensions.GetPayloadResult<{
866
+ id: string
867
+ sessionId: string
868
+ project: string
869
+ projectPath: string
870
+ startTime: Date
871
+ endTime: Date
872
+ durationMinutes: number
873
+ userMessages: number
874
+ assistantMessages: number
875
+ totalMessages: number
876
+ inputTokens: number
877
+ outputTokens: number
878
+ cacheCreationTokens: number
879
+ cacheReadTokens: number
880
+ totalTokens: number
881
+ costUSD: number
882
+ model: string
883
+ toolCallsTotal: number
884
+ toolCallsJson: string
885
+ createdAt: Date
886
+ }, ExtArgs["result"]["session"]>
887
+ composites: {}
888
+ }
889
+
890
+ export type SessionGetPayload<S extends boolean | null | undefined | SessionDefaultArgs> = runtime.Types.Result.GetResult<Prisma.$SessionPayload, S>
891
+
892
+ export type SessionCountArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> =
893
+ Omit<SessionFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
894
+ select?: SessionCountAggregateInputType | true
895
+ }
896
+
897
+ export interface SessionDelegate<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> {
898
+ [K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['Session'], meta: { name: 'Session' } }
899
+ /**
900
+ * Find zero or one Session that matches the filter.
901
+ * @param {SessionFindUniqueArgs} args - Arguments to find a Session
902
+ * @example
903
+ * // Get one Session
904
+ * const session = await prisma.session.findUnique({
905
+ * where: {
906
+ * // ... provide filter here
907
+ * }
908
+ * })
909
+ */
910
+ findUnique<T extends SessionFindUniqueArgs>(args: Prisma.SelectSubset<T, SessionFindUniqueArgs<ExtArgs>>): Prisma.Prisma__SessionClient<runtime.Types.Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
911
+
912
+ /**
913
+ * Find one Session that matches the filter or throw an error with `error.code='P2025'`
914
+ * if no matches were found.
915
+ * @param {SessionFindUniqueOrThrowArgs} args - Arguments to find a Session
916
+ * @example
917
+ * // Get one Session
918
+ * const session = await prisma.session.findUniqueOrThrow({
919
+ * where: {
920
+ * // ... provide filter here
921
+ * }
922
+ * })
923
+ */
924
+ findUniqueOrThrow<T extends SessionFindUniqueOrThrowArgs>(args: Prisma.SelectSubset<T, SessionFindUniqueOrThrowArgs<ExtArgs>>): Prisma.Prisma__SessionClient<runtime.Types.Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
925
+
926
+ /**
927
+ * Find the first Session that matches the filter.
928
+ * Note, that providing `undefined` is treated as the value not being there.
929
+ * Read more here: https://pris.ly/d/null-undefined
930
+ * @param {SessionFindFirstArgs} args - Arguments to find a Session
931
+ * @example
932
+ * // Get one Session
933
+ * const session = await prisma.session.findFirst({
934
+ * where: {
935
+ * // ... provide filter here
936
+ * }
937
+ * })
938
+ */
939
+ findFirst<T extends SessionFindFirstArgs>(args?: Prisma.SelectSubset<T, SessionFindFirstArgs<ExtArgs>>): Prisma.Prisma__SessionClient<runtime.Types.Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
940
+
941
+ /**
942
+ * Find the first Session that matches the filter or
943
+ * throw `PrismaKnownClientError` with `P2025` code if no matches were found.
944
+ * Note, that providing `undefined` is treated as the value not being there.
945
+ * Read more here: https://pris.ly/d/null-undefined
946
+ * @param {SessionFindFirstOrThrowArgs} args - Arguments to find a Session
947
+ * @example
948
+ * // Get one Session
949
+ * const session = await prisma.session.findFirstOrThrow({
950
+ * where: {
951
+ * // ... provide filter here
952
+ * }
953
+ * })
954
+ */
955
+ findFirstOrThrow<T extends SessionFindFirstOrThrowArgs>(args?: Prisma.SelectSubset<T, SessionFindFirstOrThrowArgs<ExtArgs>>): Prisma.Prisma__SessionClient<runtime.Types.Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
956
+
957
+ /**
958
+ * Find zero or more Sessions that matches the filter.
959
+ * Note, that providing `undefined` is treated as the value not being there.
960
+ * Read more here: https://pris.ly/d/null-undefined
961
+ * @param {SessionFindManyArgs} args - Arguments to filter and select certain fields only.
962
+ * @example
963
+ * // Get all Sessions
964
+ * const sessions = await prisma.session.findMany()
965
+ *
966
+ * // Get first 10 Sessions
967
+ * const sessions = await prisma.session.findMany({ take: 10 })
968
+ *
969
+ * // Only select the `id`
970
+ * const sessionWithIdOnly = await prisma.session.findMany({ select: { id: true } })
971
+ *
972
+ */
973
+ findMany<T extends SessionFindManyArgs>(args?: Prisma.SelectSubset<T, SessionFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
974
+
975
+ /**
976
+ * Create a Session.
977
+ * @param {SessionCreateArgs} args - Arguments to create a Session.
978
+ * @example
979
+ * // Create one Session
980
+ * const Session = await prisma.session.create({
981
+ * data: {
982
+ * // ... data to create a Session
983
+ * }
984
+ * })
985
+ *
986
+ */
987
+ create<T extends SessionCreateArgs>(args: Prisma.SelectSubset<T, SessionCreateArgs<ExtArgs>>): Prisma.Prisma__SessionClient<runtime.Types.Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
988
+
989
+ /**
990
+ * Create many Sessions.
991
+ * @param {SessionCreateManyArgs} args - Arguments to create many Sessions.
992
+ * @example
993
+ * // Create many Sessions
994
+ * const session = await prisma.session.createMany({
995
+ * data: [
996
+ * // ... provide data here
997
+ * ]
998
+ * })
999
+ *
1000
+ */
1001
+ createMany<T extends SessionCreateManyArgs>(args?: Prisma.SelectSubset<T, SessionCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
1002
+
1003
+ /**
1004
+ * Create many Sessions and returns the data saved in the database.
1005
+ * @param {SessionCreateManyAndReturnArgs} args - Arguments to create many Sessions.
1006
+ * @example
1007
+ * // Create many Sessions
1008
+ * const session = await prisma.session.createManyAndReturn({
1009
+ * data: [
1010
+ * // ... provide data here
1011
+ * ]
1012
+ * })
1013
+ *
1014
+ * // Create many Sessions and only return the `id`
1015
+ * const sessionWithIdOnly = await prisma.session.createManyAndReturn({
1016
+ * select: { id: true },
1017
+ * data: [
1018
+ * // ... provide data here
1019
+ * ]
1020
+ * })
1021
+ * Note, that providing `undefined` is treated as the value not being there.
1022
+ * Read more here: https://pris.ly/d/null-undefined
1023
+ *
1024
+ */
1025
+ createManyAndReturn<T extends SessionCreateManyAndReturnArgs>(args?: Prisma.SelectSubset<T, SessionCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
1026
+
1027
+ /**
1028
+ * Delete a Session.
1029
+ * @param {SessionDeleteArgs} args - Arguments to delete one Session.
1030
+ * @example
1031
+ * // Delete one Session
1032
+ * const Session = await prisma.session.delete({
1033
+ * where: {
1034
+ * // ... filter to delete one Session
1035
+ * }
1036
+ * })
1037
+ *
1038
+ */
1039
+ delete<T extends SessionDeleteArgs>(args: Prisma.SelectSubset<T, SessionDeleteArgs<ExtArgs>>): Prisma.Prisma__SessionClient<runtime.Types.Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
1040
+
1041
+ /**
1042
+ * Update one Session.
1043
+ * @param {SessionUpdateArgs} args - Arguments to update one Session.
1044
+ * @example
1045
+ * // Update one Session
1046
+ * const session = await prisma.session.update({
1047
+ * where: {
1048
+ * // ... provide filter here
1049
+ * },
1050
+ * data: {
1051
+ * // ... provide data here
1052
+ * }
1053
+ * })
1054
+ *
1055
+ */
1056
+ update<T extends SessionUpdateArgs>(args: Prisma.SelectSubset<T, SessionUpdateArgs<ExtArgs>>): Prisma.Prisma__SessionClient<runtime.Types.Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
1057
+
1058
+ /**
1059
+ * Delete zero or more Sessions.
1060
+ * @param {SessionDeleteManyArgs} args - Arguments to filter Sessions to delete.
1061
+ * @example
1062
+ * // Delete a few Sessions
1063
+ * const { count } = await prisma.session.deleteMany({
1064
+ * where: {
1065
+ * // ... provide filter here
1066
+ * }
1067
+ * })
1068
+ *
1069
+ */
1070
+ deleteMany<T extends SessionDeleteManyArgs>(args?: Prisma.SelectSubset<T, SessionDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
1071
+
1072
+ /**
1073
+ * Update zero or more Sessions.
1074
+ * Note, that providing `undefined` is treated as the value not being there.
1075
+ * Read more here: https://pris.ly/d/null-undefined
1076
+ * @param {SessionUpdateManyArgs} args - Arguments to update one or more rows.
1077
+ * @example
1078
+ * // Update many Sessions
1079
+ * const session = await prisma.session.updateMany({
1080
+ * where: {
1081
+ * // ... provide filter here
1082
+ * },
1083
+ * data: {
1084
+ * // ... provide data here
1085
+ * }
1086
+ * })
1087
+ *
1088
+ */
1089
+ updateMany<T extends SessionUpdateManyArgs>(args: Prisma.SelectSubset<T, SessionUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
1090
+
1091
+ /**
1092
+ * Update zero or more Sessions and returns the data updated in the database.
1093
+ * @param {SessionUpdateManyAndReturnArgs} args - Arguments to update many Sessions.
1094
+ * @example
1095
+ * // Update many Sessions
1096
+ * const session = await prisma.session.updateManyAndReturn({
1097
+ * where: {
1098
+ * // ... provide filter here
1099
+ * },
1100
+ * data: [
1101
+ * // ... provide data here
1102
+ * ]
1103
+ * })
1104
+ *
1105
+ * // Update zero or more Sessions and only return the `id`
1106
+ * const sessionWithIdOnly = await prisma.session.updateManyAndReturn({
1107
+ * select: { id: true },
1108
+ * where: {
1109
+ * // ... provide filter here
1110
+ * },
1111
+ * data: [
1112
+ * // ... provide data here
1113
+ * ]
1114
+ * })
1115
+ * Note, that providing `undefined` is treated as the value not being there.
1116
+ * Read more here: https://pris.ly/d/null-undefined
1117
+ *
1118
+ */
1119
+ updateManyAndReturn<T extends SessionUpdateManyAndReturnArgs>(args: Prisma.SelectSubset<T, SessionUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
1120
+
1121
+ /**
1122
+ * Create or update one Session.
1123
+ * @param {SessionUpsertArgs} args - Arguments to update or create a Session.
1124
+ * @example
1125
+ * // Update or create a Session
1126
+ * const session = await prisma.session.upsert({
1127
+ * create: {
1128
+ * // ... data to create a Session
1129
+ * },
1130
+ * update: {
1131
+ * // ... in case it already exists, update
1132
+ * },
1133
+ * where: {
1134
+ * // ... the filter for the Session we want to update
1135
+ * }
1136
+ * })
1137
+ */
1138
+ upsert<T extends SessionUpsertArgs>(args: Prisma.SelectSubset<T, SessionUpsertArgs<ExtArgs>>): Prisma.Prisma__SessionClient<runtime.Types.Result.GetResult<Prisma.$SessionPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
1139
+
1140
+
1141
+ /**
1142
+ * Count the number of Sessions.
1143
+ * Note, that providing `undefined` is treated as the value not being there.
1144
+ * Read more here: https://pris.ly/d/null-undefined
1145
+ * @param {SessionCountArgs} args - Arguments to filter Sessions to count.
1146
+ * @example
1147
+ * // Count the number of Sessions
1148
+ * const count = await prisma.session.count({
1149
+ * where: {
1150
+ * // ... the filter for the Sessions we want to count
1151
+ * }
1152
+ * })
1153
+ **/
1154
+ count<T extends SessionCountArgs>(
1155
+ args?: Prisma.Subset<T, SessionCountArgs>,
1156
+ ): Prisma.PrismaPromise<
1157
+ T extends runtime.Types.Utils.Record<'select', any>
1158
+ ? T['select'] extends true
1159
+ ? number
1160
+ : Prisma.GetScalarType<T['select'], SessionCountAggregateOutputType>
1161
+ : number
1162
+ >
1163
+
1164
+ /**
1165
+ * Allows you to perform aggregations operations on a Session.
1166
+ * Note, that providing `undefined` is treated as the value not being there.
1167
+ * Read more here: https://pris.ly/d/null-undefined
1168
+ * @param {SessionAggregateArgs} args - Select which aggregations you would like to apply and on what fields.
1169
+ * @example
1170
+ * // Ordered by age ascending
1171
+ * // Where email contains prisma.io
1172
+ * // Limited to the 10 users
1173
+ * const aggregations = await prisma.user.aggregate({
1174
+ * _avg: {
1175
+ * age: true,
1176
+ * },
1177
+ * where: {
1178
+ * email: {
1179
+ * contains: "prisma.io",
1180
+ * },
1181
+ * },
1182
+ * orderBy: {
1183
+ * age: "asc",
1184
+ * },
1185
+ * take: 10,
1186
+ * })
1187
+ **/
1188
+ aggregate<T extends SessionAggregateArgs>(args: Prisma.Subset<T, SessionAggregateArgs>): Prisma.PrismaPromise<GetSessionAggregateType<T>>
1189
+
1190
+ /**
1191
+ * Group by Session.
1192
+ * Note, that providing `undefined` is treated as the value not being there.
1193
+ * Read more here: https://pris.ly/d/null-undefined
1194
+ * @param {SessionGroupByArgs} args - Group by arguments.
1195
+ * @example
1196
+ * // Group by city, order by createdAt, get count
1197
+ * const result = await prisma.user.groupBy({
1198
+ * by: ['city', 'createdAt'],
1199
+ * orderBy: {
1200
+ * createdAt: true
1201
+ * },
1202
+ * _count: {
1203
+ * _all: true
1204
+ * },
1205
+ * })
1206
+ *
1207
+ **/
1208
+ groupBy<
1209
+ T extends SessionGroupByArgs,
1210
+ HasSelectOrTake extends Prisma.Or<
1211
+ Prisma.Extends<'skip', Prisma.Keys<T>>,
1212
+ Prisma.Extends<'take', Prisma.Keys<T>>
1213
+ >,
1214
+ OrderByArg extends Prisma.True extends HasSelectOrTake
1215
+ ? { orderBy: SessionGroupByArgs['orderBy'] }
1216
+ : { orderBy?: SessionGroupByArgs['orderBy'] },
1217
+ OrderFields extends Prisma.ExcludeUnderscoreKeys<Prisma.Keys<Prisma.MaybeTupleToUnion<T['orderBy']>>>,
1218
+ ByFields extends Prisma.MaybeTupleToUnion<T['by']>,
1219
+ ByValid extends Prisma.Has<ByFields, OrderFields>,
1220
+ HavingFields extends Prisma.GetHavingFields<T['having']>,
1221
+ HavingValid extends Prisma.Has<ByFields, HavingFields>,
1222
+ ByEmpty extends T['by'] extends never[] ? Prisma.True : Prisma.False,
1223
+ InputErrors extends ByEmpty extends Prisma.True
1224
+ ? `Error: "by" must not be empty.`
1225
+ : HavingValid extends Prisma.False
1226
+ ? {
1227
+ [P in HavingFields]: P extends ByFields
1228
+ ? never
1229
+ : P extends string
1230
+ ? `Error: Field "${P}" used in "having" needs to be provided in "by".`
1231
+ : [
1232
+ Error,
1233
+ 'Field ',
1234
+ P,
1235
+ ` in "having" needs to be provided in "by"`,
1236
+ ]
1237
+ }[HavingFields]
1238
+ : 'take' extends Prisma.Keys<T>
1239
+ ? 'orderBy' extends Prisma.Keys<T>
1240
+ ? ByValid extends Prisma.True
1241
+ ? {}
1242
+ : {
1243
+ [P in OrderFields]: P extends ByFields
1244
+ ? never
1245
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
1246
+ }[OrderFields]
1247
+ : 'Error: If you provide "take", you also need to provide "orderBy"'
1248
+ : 'skip' extends Prisma.Keys<T>
1249
+ ? 'orderBy' extends Prisma.Keys<T>
1250
+ ? ByValid extends Prisma.True
1251
+ ? {}
1252
+ : {
1253
+ [P in OrderFields]: P extends ByFields
1254
+ ? never
1255
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
1256
+ }[OrderFields]
1257
+ : 'Error: If you provide "skip", you also need to provide "orderBy"'
1258
+ : ByValid extends Prisma.True
1259
+ ? {}
1260
+ : {
1261
+ [P in OrderFields]: P extends ByFields
1262
+ ? never
1263
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
1264
+ }[OrderFields]
1265
+ >(args: Prisma.SubsetIntersection<T, SessionGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetSessionGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
1266
+ /**
1267
+ * Fields of the Session model
1268
+ */
1269
+ readonly fields: SessionFieldRefs;
1270
+ }
1271
+
1272
+ /**
1273
+ * The delegate class that acts as a "Promise-like" for Session.
1274
+ * Why is this prefixed with `Prisma__`?
1275
+ * Because we want to prevent naming conflicts as mentioned in
1276
+ * https://github.com/prisma/prisma-client-js/issues/707
1277
+ */
1278
+ export interface Prisma__SessionClient<T, Null = never, ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
1279
+ readonly [Symbol.toStringTag]: "PrismaPromise"
1280
+ /**
1281
+ * Attaches callbacks for the resolution and/or rejection of the Promise.
1282
+ * @param onfulfilled The callback to execute when the Promise is resolved.
1283
+ * @param onrejected The callback to execute when the Promise is rejected.
1284
+ * @returns A Promise for the completion of which ever callback is executed.
1285
+ */
1286
+ then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): runtime.Types.Utils.JsPromise<TResult1 | TResult2>
1287
+ /**
1288
+ * Attaches a callback for only the rejection of the Promise.
1289
+ * @param onrejected The callback to execute when the Promise is rejected.
1290
+ * @returns A Promise for the completion of the callback.
1291
+ */
1292
+ catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null): runtime.Types.Utils.JsPromise<T | TResult>
1293
+ /**
1294
+ * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The
1295
+ * resolved value cannot be modified from the callback.
1296
+ * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).
1297
+ * @returns A Promise for the completion of the callback.
1298
+ */
1299
+ finally(onfinally?: (() => void) | undefined | null): runtime.Types.Utils.JsPromise<T>
1300
+ }
1301
+
1302
+
1303
+
1304
+
1305
+ /**
1306
+ * Fields of the Session model
1307
+ */
1308
+ export interface SessionFieldRefs {
1309
+ readonly id: Prisma.FieldRef<"Session", 'String'>
1310
+ readonly sessionId: Prisma.FieldRef<"Session", 'String'>
1311
+ readonly project: Prisma.FieldRef<"Session", 'String'>
1312
+ readonly projectPath: Prisma.FieldRef<"Session", 'String'>
1313
+ readonly startTime: Prisma.FieldRef<"Session", 'DateTime'>
1314
+ readonly endTime: Prisma.FieldRef<"Session", 'DateTime'>
1315
+ readonly durationMinutes: Prisma.FieldRef<"Session", 'Float'>
1316
+ readonly userMessages: Prisma.FieldRef<"Session", 'Int'>
1317
+ readonly assistantMessages: Prisma.FieldRef<"Session", 'Int'>
1318
+ readonly totalMessages: Prisma.FieldRef<"Session", 'Int'>
1319
+ readonly inputTokens: Prisma.FieldRef<"Session", 'Int'>
1320
+ readonly outputTokens: Prisma.FieldRef<"Session", 'Int'>
1321
+ readonly cacheCreationTokens: Prisma.FieldRef<"Session", 'Int'>
1322
+ readonly cacheReadTokens: Prisma.FieldRef<"Session", 'Int'>
1323
+ readonly totalTokens: Prisma.FieldRef<"Session", 'Int'>
1324
+ readonly costUSD: Prisma.FieldRef<"Session", 'Float'>
1325
+ readonly model: Prisma.FieldRef<"Session", 'String'>
1326
+ readonly toolCallsTotal: Prisma.FieldRef<"Session", 'Int'>
1327
+ readonly toolCallsJson: Prisma.FieldRef<"Session", 'String'>
1328
+ readonly createdAt: Prisma.FieldRef<"Session", 'DateTime'>
1329
+ }
1330
+
1331
+
1332
+ // Custom InputTypes
1333
+ /**
1334
+ * Session findUnique
1335
+ */
1336
+ export type SessionFindUniqueArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1337
+ /**
1338
+ * Select specific fields to fetch from the Session
1339
+ */
1340
+ select?: Prisma.SessionSelect<ExtArgs> | null
1341
+ /**
1342
+ * Omit specific fields from the Session
1343
+ */
1344
+ omit?: Prisma.SessionOmit<ExtArgs> | null
1345
+ /**
1346
+ * Filter, which Session to fetch.
1347
+ */
1348
+ where: Prisma.SessionWhereUniqueInput
1349
+ }
1350
+
1351
+ /**
1352
+ * Session findUniqueOrThrow
1353
+ */
1354
+ export type SessionFindUniqueOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1355
+ /**
1356
+ * Select specific fields to fetch from the Session
1357
+ */
1358
+ select?: Prisma.SessionSelect<ExtArgs> | null
1359
+ /**
1360
+ * Omit specific fields from the Session
1361
+ */
1362
+ omit?: Prisma.SessionOmit<ExtArgs> | null
1363
+ /**
1364
+ * Filter, which Session to fetch.
1365
+ */
1366
+ where: Prisma.SessionWhereUniqueInput
1367
+ }
1368
+
1369
+ /**
1370
+ * Session findFirst
1371
+ */
1372
+ export type SessionFindFirstArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1373
+ /**
1374
+ * Select specific fields to fetch from the Session
1375
+ */
1376
+ select?: Prisma.SessionSelect<ExtArgs> | null
1377
+ /**
1378
+ * Omit specific fields from the Session
1379
+ */
1380
+ omit?: Prisma.SessionOmit<ExtArgs> | null
1381
+ /**
1382
+ * Filter, which Session to fetch.
1383
+ */
1384
+ where?: Prisma.SessionWhereInput
1385
+ /**
1386
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
1387
+ *
1388
+ * Determine the order of Sessions to fetch.
1389
+ */
1390
+ orderBy?: Prisma.SessionOrderByWithRelationInput | Prisma.SessionOrderByWithRelationInput[]
1391
+ /**
1392
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
1393
+ *
1394
+ * Sets the position for searching for Sessions.
1395
+ */
1396
+ cursor?: Prisma.SessionWhereUniqueInput
1397
+ /**
1398
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1399
+ *
1400
+ * Take `±n` Sessions from the position of the cursor.
1401
+ */
1402
+ take?: number
1403
+ /**
1404
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1405
+ *
1406
+ * Skip the first `n` Sessions.
1407
+ */
1408
+ skip?: number
1409
+ /**
1410
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
1411
+ *
1412
+ * Filter by unique combinations of Sessions.
1413
+ */
1414
+ distinct?: Prisma.SessionScalarFieldEnum | Prisma.SessionScalarFieldEnum[]
1415
+ }
1416
+
1417
+ /**
1418
+ * Session findFirstOrThrow
1419
+ */
1420
+ export type SessionFindFirstOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1421
+ /**
1422
+ * Select specific fields to fetch from the Session
1423
+ */
1424
+ select?: Prisma.SessionSelect<ExtArgs> | null
1425
+ /**
1426
+ * Omit specific fields from the Session
1427
+ */
1428
+ omit?: Prisma.SessionOmit<ExtArgs> | null
1429
+ /**
1430
+ * Filter, which Session to fetch.
1431
+ */
1432
+ where?: Prisma.SessionWhereInput
1433
+ /**
1434
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
1435
+ *
1436
+ * Determine the order of Sessions to fetch.
1437
+ */
1438
+ orderBy?: Prisma.SessionOrderByWithRelationInput | Prisma.SessionOrderByWithRelationInput[]
1439
+ /**
1440
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
1441
+ *
1442
+ * Sets the position for searching for Sessions.
1443
+ */
1444
+ cursor?: Prisma.SessionWhereUniqueInput
1445
+ /**
1446
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1447
+ *
1448
+ * Take `±n` Sessions from the position of the cursor.
1449
+ */
1450
+ take?: number
1451
+ /**
1452
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1453
+ *
1454
+ * Skip the first `n` Sessions.
1455
+ */
1456
+ skip?: number
1457
+ /**
1458
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
1459
+ *
1460
+ * Filter by unique combinations of Sessions.
1461
+ */
1462
+ distinct?: Prisma.SessionScalarFieldEnum | Prisma.SessionScalarFieldEnum[]
1463
+ }
1464
+
1465
+ /**
1466
+ * Session findMany
1467
+ */
1468
+ export type SessionFindManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1469
+ /**
1470
+ * Select specific fields to fetch from the Session
1471
+ */
1472
+ select?: Prisma.SessionSelect<ExtArgs> | null
1473
+ /**
1474
+ * Omit specific fields from the Session
1475
+ */
1476
+ omit?: Prisma.SessionOmit<ExtArgs> | null
1477
+ /**
1478
+ * Filter, which Sessions to fetch.
1479
+ */
1480
+ where?: Prisma.SessionWhereInput
1481
+ /**
1482
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
1483
+ *
1484
+ * Determine the order of Sessions to fetch.
1485
+ */
1486
+ orderBy?: Prisma.SessionOrderByWithRelationInput | Prisma.SessionOrderByWithRelationInput[]
1487
+ /**
1488
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
1489
+ *
1490
+ * Sets the position for listing Sessions.
1491
+ */
1492
+ cursor?: Prisma.SessionWhereUniqueInput
1493
+ /**
1494
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1495
+ *
1496
+ * Take `±n` Sessions from the position of the cursor.
1497
+ */
1498
+ take?: number
1499
+ /**
1500
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1501
+ *
1502
+ * Skip the first `n` Sessions.
1503
+ */
1504
+ skip?: number
1505
+ /**
1506
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
1507
+ *
1508
+ * Filter by unique combinations of Sessions.
1509
+ */
1510
+ distinct?: Prisma.SessionScalarFieldEnum | Prisma.SessionScalarFieldEnum[]
1511
+ }
1512
+
1513
+ /**
1514
+ * Session create
1515
+ */
1516
+ export type SessionCreateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1517
+ /**
1518
+ * Select specific fields to fetch from the Session
1519
+ */
1520
+ select?: Prisma.SessionSelect<ExtArgs> | null
1521
+ /**
1522
+ * Omit specific fields from the Session
1523
+ */
1524
+ omit?: Prisma.SessionOmit<ExtArgs> | null
1525
+ /**
1526
+ * The data needed to create a Session.
1527
+ */
1528
+ data: Prisma.XOR<Prisma.SessionCreateInput, Prisma.SessionUncheckedCreateInput>
1529
+ }
1530
+
1531
+ /**
1532
+ * Session createMany
1533
+ */
1534
+ export type SessionCreateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1535
+ /**
1536
+ * The data used to create many Sessions.
1537
+ */
1538
+ data: Prisma.SessionCreateManyInput | Prisma.SessionCreateManyInput[]
1539
+ }
1540
+
1541
+ /**
1542
+ * Session createManyAndReturn
1543
+ */
1544
+ export type SessionCreateManyAndReturnArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1545
+ /**
1546
+ * Select specific fields to fetch from the Session
1547
+ */
1548
+ select?: Prisma.SessionSelectCreateManyAndReturn<ExtArgs> | null
1549
+ /**
1550
+ * Omit specific fields from the Session
1551
+ */
1552
+ omit?: Prisma.SessionOmit<ExtArgs> | null
1553
+ /**
1554
+ * The data used to create many Sessions.
1555
+ */
1556
+ data: Prisma.SessionCreateManyInput | Prisma.SessionCreateManyInput[]
1557
+ }
1558
+
1559
+ /**
1560
+ * Session update
1561
+ */
1562
+ export type SessionUpdateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1563
+ /**
1564
+ * Select specific fields to fetch from the Session
1565
+ */
1566
+ select?: Prisma.SessionSelect<ExtArgs> | null
1567
+ /**
1568
+ * Omit specific fields from the Session
1569
+ */
1570
+ omit?: Prisma.SessionOmit<ExtArgs> | null
1571
+ /**
1572
+ * The data needed to update a Session.
1573
+ */
1574
+ data: Prisma.XOR<Prisma.SessionUpdateInput, Prisma.SessionUncheckedUpdateInput>
1575
+ /**
1576
+ * Choose, which Session to update.
1577
+ */
1578
+ where: Prisma.SessionWhereUniqueInput
1579
+ }
1580
+
1581
+ /**
1582
+ * Session updateMany
1583
+ */
1584
+ export type SessionUpdateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1585
+ /**
1586
+ * The data used to update Sessions.
1587
+ */
1588
+ data: Prisma.XOR<Prisma.SessionUpdateManyMutationInput, Prisma.SessionUncheckedUpdateManyInput>
1589
+ /**
1590
+ * Filter which Sessions to update
1591
+ */
1592
+ where?: Prisma.SessionWhereInput
1593
+ /**
1594
+ * Limit how many Sessions to update.
1595
+ */
1596
+ limit?: number
1597
+ }
1598
+
1599
+ /**
1600
+ * Session updateManyAndReturn
1601
+ */
1602
+ export type SessionUpdateManyAndReturnArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1603
+ /**
1604
+ * Select specific fields to fetch from the Session
1605
+ */
1606
+ select?: Prisma.SessionSelectUpdateManyAndReturn<ExtArgs> | null
1607
+ /**
1608
+ * Omit specific fields from the Session
1609
+ */
1610
+ omit?: Prisma.SessionOmit<ExtArgs> | null
1611
+ /**
1612
+ * The data used to update Sessions.
1613
+ */
1614
+ data: Prisma.XOR<Prisma.SessionUpdateManyMutationInput, Prisma.SessionUncheckedUpdateManyInput>
1615
+ /**
1616
+ * Filter which Sessions to update
1617
+ */
1618
+ where?: Prisma.SessionWhereInput
1619
+ /**
1620
+ * Limit how many Sessions to update.
1621
+ */
1622
+ limit?: number
1623
+ }
1624
+
1625
+ /**
1626
+ * Session upsert
1627
+ */
1628
+ export type SessionUpsertArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1629
+ /**
1630
+ * Select specific fields to fetch from the Session
1631
+ */
1632
+ select?: Prisma.SessionSelect<ExtArgs> | null
1633
+ /**
1634
+ * Omit specific fields from the Session
1635
+ */
1636
+ omit?: Prisma.SessionOmit<ExtArgs> | null
1637
+ /**
1638
+ * The filter to search for the Session to update in case it exists.
1639
+ */
1640
+ where: Prisma.SessionWhereUniqueInput
1641
+ /**
1642
+ * In case the Session found by the `where` argument doesn't exist, create a new Session with this data.
1643
+ */
1644
+ create: Prisma.XOR<Prisma.SessionCreateInput, Prisma.SessionUncheckedCreateInput>
1645
+ /**
1646
+ * In case the Session was found with the provided `where` argument, update it with this data.
1647
+ */
1648
+ update: Prisma.XOR<Prisma.SessionUpdateInput, Prisma.SessionUncheckedUpdateInput>
1649
+ }
1650
+
1651
+ /**
1652
+ * Session delete
1653
+ */
1654
+ export type SessionDeleteArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1655
+ /**
1656
+ * Select specific fields to fetch from the Session
1657
+ */
1658
+ select?: Prisma.SessionSelect<ExtArgs> | null
1659
+ /**
1660
+ * Omit specific fields from the Session
1661
+ */
1662
+ omit?: Prisma.SessionOmit<ExtArgs> | null
1663
+ /**
1664
+ * Filter which Session to delete.
1665
+ */
1666
+ where: Prisma.SessionWhereUniqueInput
1667
+ }
1668
+
1669
+ /**
1670
+ * Session deleteMany
1671
+ */
1672
+ export type SessionDeleteManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1673
+ /**
1674
+ * Filter which Sessions to delete
1675
+ */
1676
+ where?: Prisma.SessionWhereInput
1677
+ /**
1678
+ * Limit how many Sessions to delete.
1679
+ */
1680
+ limit?: number
1681
+ }
1682
+
1683
+ /**
1684
+ * Session without action
1685
+ */
1686
+ export type SessionDefaultArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1687
+ /**
1688
+ * Select specific fields to fetch from the Session
1689
+ */
1690
+ select?: Prisma.SessionSelect<ExtArgs> | null
1691
+ /**
1692
+ * Omit specific fields from the Session
1693
+ */
1694
+ omit?: Prisma.SessionOmit<ExtArgs> | null
1695
+ }