kfreelance-project-postgresql-prisma 1.0.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 (40) hide show
  1. package/README.MD +217 -0
  2. package/dist/client.d.ts +3 -0
  3. package/dist/client.d.ts.map +1 -0
  4. package/dist/client.js +3 -0
  5. package/dist/client.js.map +1 -0
  6. package/dist/index.d.ts +9 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.js +23 -0
  9. package/dist/index.js.map +1 -0
  10. package/generated/prisma/client.d.ts +1 -0
  11. package/generated/prisma/client.js +4 -0
  12. package/generated/prisma/default.d.ts +1 -0
  13. package/generated/prisma/default.js +4 -0
  14. package/generated/prisma/edge.d.ts +1 -0
  15. package/generated/prisma/edge.js +201 -0
  16. package/generated/prisma/index-browser.js +187 -0
  17. package/generated/prisma/index.d.ts +3968 -0
  18. package/generated/prisma/index.js +222 -0
  19. package/generated/prisma/libquery_engine-darwin-arm64.dylib.node +0 -0
  20. package/generated/prisma/package.json +183 -0
  21. package/generated/prisma/query_engine_bg.js +2 -0
  22. package/generated/prisma/query_engine_bg.wasm +0 -0
  23. package/generated/prisma/runtime/edge-esm.js +34 -0
  24. package/generated/prisma/runtime/edge.js +34 -0
  25. package/generated/prisma/runtime/index-browser.d.ts +370 -0
  26. package/generated/prisma/runtime/index-browser.js +16 -0
  27. package/generated/prisma/runtime/library.d.ts +3976 -0
  28. package/generated/prisma/runtime/library.js +146 -0
  29. package/generated/prisma/runtime/react-native.js +83 -0
  30. package/generated/prisma/runtime/wasm-compiler-edge.js +84 -0
  31. package/generated/prisma/runtime/wasm-engine-edge.js +36 -0
  32. package/generated/prisma/schema.prisma +37 -0
  33. package/generated/prisma/wasm-edge-light-loader.mjs +4 -0
  34. package/generated/prisma/wasm-worker-loader.mjs +4 -0
  35. package/generated/prisma/wasm.d.ts +1 -0
  36. package/generated/prisma/wasm.js +208 -0
  37. package/package.json +48 -0
  38. package/prisma/migrations/20251003030244_init/migration.sql +33 -0
  39. package/prisma/migrations/migration_lock.toml +3 -0
  40. package/prisma/schema.prisma +37 -0
@@ -0,0 +1,3968 @@
1
+
2
+ /**
3
+ * Client
4
+ **/
5
+
6
+ import * as runtime from './runtime/library.js';
7
+ import $Types = runtime.Types // general types
8
+ import $Public = runtime.Types.Public
9
+ import $Utils = runtime.Types.Utils
10
+ import $Extensions = runtime.Types.Extensions
11
+ import $Result = runtime.Types.Result
12
+
13
+ export type PrismaPromise<T> = $Public.PrismaPromise<T>
14
+
15
+
16
+ /**
17
+ * Model User
18
+ *
19
+ */
20
+ export type User = $Result.DefaultSelection<Prisma.$UserPayload>
21
+ /**
22
+ * Model PasswordResetToken
23
+ *
24
+ */
25
+ export type PasswordResetToken = $Result.DefaultSelection<Prisma.$PasswordResetTokenPayload>
26
+
27
+ /**
28
+ * ## Prisma Client ʲˢ
29
+ *
30
+ * Type-safe database client for TypeScript & Node.js
31
+ * @example
32
+ * ```
33
+ * const prisma = new PrismaClient()
34
+ * // Fetch zero or more Users
35
+ * const users = await prisma.user.findMany()
36
+ * ```
37
+ *
38
+ *
39
+ * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client).
40
+ */
41
+ export class PrismaClient<
42
+ ClientOptions extends Prisma.PrismaClientOptions = Prisma.PrismaClientOptions,
43
+ const U = 'log' extends keyof ClientOptions ? ClientOptions['log'] extends Array<Prisma.LogLevel | Prisma.LogDefinition> ? Prisma.GetEvents<ClientOptions['log']> : never : never,
44
+ ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs
45
+ > {
46
+ [K: symbol]: { types: Prisma.TypeMap<ExtArgs>['other'] }
47
+
48
+ /**
49
+ * ## Prisma Client ʲˢ
50
+ *
51
+ * Type-safe database client for TypeScript & Node.js
52
+ * @example
53
+ * ```
54
+ * const prisma = new PrismaClient()
55
+ * // Fetch zero or more Users
56
+ * const users = await prisma.user.findMany()
57
+ * ```
58
+ *
59
+ *
60
+ * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client).
61
+ */
62
+
63
+ constructor(optionsArg ?: Prisma.Subset<ClientOptions, Prisma.PrismaClientOptions>);
64
+ $on<V extends U>(eventType: V, callback: (event: V extends 'query' ? Prisma.QueryEvent : Prisma.LogEvent) => void): PrismaClient;
65
+
66
+ /**
67
+ * Connect with the database
68
+ */
69
+ $connect(): $Utils.JsPromise<void>;
70
+
71
+ /**
72
+ * Disconnect from the database
73
+ */
74
+ $disconnect(): $Utils.JsPromise<void>;
75
+
76
+ /**
77
+ * Executes a prepared raw query and returns the number of affected rows.
78
+ * @example
79
+ * ```
80
+ * const result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`
81
+ * ```
82
+ *
83
+ * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access).
84
+ */
85
+ $executeRaw<T = unknown>(query: TemplateStringsArray | Prisma.Sql, ...values: any[]): Prisma.PrismaPromise<number>;
86
+
87
+ /**
88
+ * Executes a raw query and returns the number of affected rows.
89
+ * Susceptible to SQL injections, see documentation.
90
+ * @example
91
+ * ```
92
+ * const result = await prisma.$executeRawUnsafe('UPDATE User SET cool = $1 WHERE email = $2 ;', true, 'user@email.com')
93
+ * ```
94
+ *
95
+ * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access).
96
+ */
97
+ $executeRawUnsafe<T = unknown>(query: string, ...values: any[]): Prisma.PrismaPromise<number>;
98
+
99
+ /**
100
+ * Performs a prepared raw query and returns the `SELECT` data.
101
+ * @example
102
+ * ```
103
+ * const result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`
104
+ * ```
105
+ *
106
+ * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access).
107
+ */
108
+ $queryRaw<T = unknown>(query: TemplateStringsArray | Prisma.Sql, ...values: any[]): Prisma.PrismaPromise<T>;
109
+
110
+ /**
111
+ * Performs a raw query and returns the `SELECT` data.
112
+ * Susceptible to SQL injections, see documentation.
113
+ * @example
114
+ * ```
115
+ * const result = await prisma.$queryRawUnsafe('SELECT * FROM User WHERE id = $1 OR email = $2;', 1, 'user@email.com')
116
+ * ```
117
+ *
118
+ * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access).
119
+ */
120
+ $queryRawUnsafe<T = unknown>(query: string, ...values: any[]): Prisma.PrismaPromise<T>;
121
+
122
+
123
+ /**
124
+ * Allows the running of a sequence of read/write operations that are guaranteed to either succeed or fail as a whole.
125
+ * @example
126
+ * ```
127
+ * const [george, bob, alice] = await prisma.$transaction([
128
+ * prisma.user.create({ data: { name: 'George' } }),
129
+ * prisma.user.create({ data: { name: 'Bob' } }),
130
+ * prisma.user.create({ data: { name: 'Alice' } }),
131
+ * ])
132
+ * ```
133
+ *
134
+ * Read more in our [docs](https://www.prisma.io/docs/concepts/components/prisma-client/transactions).
135
+ */
136
+ $transaction<P extends Prisma.PrismaPromise<any>[]>(arg: [...P], options?: { isolationLevel?: Prisma.TransactionIsolationLevel }): $Utils.JsPromise<runtime.Types.Utils.UnwrapTuple<P>>
137
+
138
+ $transaction<R>(fn: (prisma: Omit<PrismaClient, runtime.ITXClientDenyList>) => $Utils.JsPromise<R>, options?: { maxWait?: number, timeout?: number, isolationLevel?: Prisma.TransactionIsolationLevel }): $Utils.JsPromise<R>
139
+
140
+
141
+ $extends: $Extensions.ExtendsHook<"extends", Prisma.TypeMapCb<ClientOptions>, ExtArgs, $Utils.Call<Prisma.TypeMapCb<ClientOptions>, {
142
+ extArgs: ExtArgs
143
+ }>>
144
+
145
+ /**
146
+ * `prisma.user`: Exposes CRUD operations for the **User** model.
147
+ * Example usage:
148
+ * ```ts
149
+ * // Fetch zero or more Users
150
+ * const users = await prisma.user.findMany()
151
+ * ```
152
+ */
153
+ get user(): Prisma.UserDelegate<ExtArgs, ClientOptions>;
154
+
155
+ /**
156
+ * `prisma.passwordResetToken`: Exposes CRUD operations for the **PasswordResetToken** model.
157
+ * Example usage:
158
+ * ```ts
159
+ * // Fetch zero or more PasswordResetTokens
160
+ * const passwordResetTokens = await prisma.passwordResetToken.findMany()
161
+ * ```
162
+ */
163
+ get passwordResetToken(): Prisma.PasswordResetTokenDelegate<ExtArgs, ClientOptions>;
164
+ }
165
+
166
+ export namespace Prisma {
167
+ export import DMMF = runtime.DMMF
168
+
169
+ export type PrismaPromise<T> = $Public.PrismaPromise<T>
170
+
171
+ /**
172
+ * Validator
173
+ */
174
+ export import validator = runtime.Public.validator
175
+
176
+ /**
177
+ * Prisma Errors
178
+ */
179
+ export import PrismaClientKnownRequestError = runtime.PrismaClientKnownRequestError
180
+ export import PrismaClientUnknownRequestError = runtime.PrismaClientUnknownRequestError
181
+ export import PrismaClientRustPanicError = runtime.PrismaClientRustPanicError
182
+ export import PrismaClientInitializationError = runtime.PrismaClientInitializationError
183
+ export import PrismaClientValidationError = runtime.PrismaClientValidationError
184
+
185
+ /**
186
+ * Re-export of sql-template-tag
187
+ */
188
+ export import sql = runtime.sqltag
189
+ export import empty = runtime.empty
190
+ export import join = runtime.join
191
+ export import raw = runtime.raw
192
+ export import Sql = runtime.Sql
193
+
194
+
195
+
196
+ /**
197
+ * Decimal.js
198
+ */
199
+ export import Decimal = runtime.Decimal
200
+
201
+ export type DecimalJsLike = runtime.DecimalJsLike
202
+
203
+ /**
204
+ * Metrics
205
+ */
206
+ export type Metrics = runtime.Metrics
207
+ export type Metric<T> = runtime.Metric<T>
208
+ export type MetricHistogram = runtime.MetricHistogram
209
+ export type MetricHistogramBucket = runtime.MetricHistogramBucket
210
+
211
+ /**
212
+ * Extensions
213
+ */
214
+ export import Extension = $Extensions.UserArgs
215
+ export import getExtensionContext = runtime.Extensions.getExtensionContext
216
+ export import Args = $Public.Args
217
+ export import Payload = $Public.Payload
218
+ export import Result = $Public.Result
219
+ export import Exact = $Public.Exact
220
+
221
+ /**
222
+ * Prisma Client JS version: 6.16.3
223
+ * Query Engine version: bb420e667c1820a8c05a38023385f6cc7ef8e83a
224
+ */
225
+ export type PrismaVersion = {
226
+ client: string
227
+ }
228
+
229
+ export const prismaVersion: PrismaVersion
230
+
231
+ /**
232
+ * Utility Types
233
+ */
234
+
235
+
236
+ export import JsonObject = runtime.JsonObject
237
+ export import JsonArray = runtime.JsonArray
238
+ export import JsonValue = runtime.JsonValue
239
+ export import InputJsonObject = runtime.InputJsonObject
240
+ export import InputJsonArray = runtime.InputJsonArray
241
+ export import InputJsonValue = runtime.InputJsonValue
242
+
243
+ /**
244
+ * Types of the values used to represent different kinds of `null` values when working with JSON fields.
245
+ *
246
+ * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
247
+ */
248
+ namespace NullTypes {
249
+ /**
250
+ * Type of `Prisma.DbNull`.
251
+ *
252
+ * You cannot use other instances of this class. Please use the `Prisma.DbNull` value.
253
+ *
254
+ * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
255
+ */
256
+ class DbNull {
257
+ private DbNull: never
258
+ private constructor()
259
+ }
260
+
261
+ /**
262
+ * Type of `Prisma.JsonNull`.
263
+ *
264
+ * You cannot use other instances of this class. Please use the `Prisma.JsonNull` value.
265
+ *
266
+ * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
267
+ */
268
+ class JsonNull {
269
+ private JsonNull: never
270
+ private constructor()
271
+ }
272
+
273
+ /**
274
+ * Type of `Prisma.AnyNull`.
275
+ *
276
+ * You cannot use other instances of this class. Please use the `Prisma.AnyNull` value.
277
+ *
278
+ * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
279
+ */
280
+ class AnyNull {
281
+ private AnyNull: never
282
+ private constructor()
283
+ }
284
+ }
285
+
286
+ /**
287
+ * Helper for filtering JSON entries that have `null` on the database (empty on the db)
288
+ *
289
+ * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
290
+ */
291
+ export const DbNull: NullTypes.DbNull
292
+
293
+ /**
294
+ * Helper for filtering JSON entries that have JSON `null` values (not empty on the db)
295
+ *
296
+ * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
297
+ */
298
+ export const JsonNull: NullTypes.JsonNull
299
+
300
+ /**
301
+ * Helper for filtering JSON entries that are `Prisma.DbNull` or `Prisma.JsonNull`
302
+ *
303
+ * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
304
+ */
305
+ export const AnyNull: NullTypes.AnyNull
306
+
307
+ type SelectAndInclude = {
308
+ select: any
309
+ include: any
310
+ }
311
+
312
+ type SelectAndOmit = {
313
+ select: any
314
+ omit: any
315
+ }
316
+
317
+ /**
318
+ * Get the type of the value, that the Promise holds.
319
+ */
320
+ export type PromiseType<T extends PromiseLike<any>> = T extends PromiseLike<infer U> ? U : T;
321
+
322
+ /**
323
+ * Get the return type of a function which returns a Promise.
324
+ */
325
+ export type PromiseReturnType<T extends (...args: any) => $Utils.JsPromise<any>> = PromiseType<ReturnType<T>>
326
+
327
+ /**
328
+ * From T, pick a set of properties whose keys are in the union K
329
+ */
330
+ type Prisma__Pick<T, K extends keyof T> = {
331
+ [P in K]: T[P];
332
+ };
333
+
334
+
335
+ export type Enumerable<T> = T | Array<T>;
336
+
337
+ export type RequiredKeys<T> = {
338
+ [K in keyof T]-?: {} extends Prisma__Pick<T, K> ? never : K
339
+ }[keyof T]
340
+
341
+ export type TruthyKeys<T> = keyof {
342
+ [K in keyof T as T[K] extends false | undefined | null ? never : K]: K
343
+ }
344
+
345
+ export type TrueKeys<T> = TruthyKeys<Prisma__Pick<T, RequiredKeys<T>>>
346
+
347
+ /**
348
+ * Subset
349
+ * @desc From `T` pick properties that exist in `U`. Simple version of Intersection
350
+ */
351
+ export type Subset<T, U> = {
352
+ [key in keyof T]: key extends keyof U ? T[key] : never;
353
+ };
354
+
355
+ /**
356
+ * SelectSubset
357
+ * @desc From `T` pick properties that exist in `U`. Simple version of Intersection.
358
+ * Additionally, it validates, if both select and include are present. If the case, it errors.
359
+ */
360
+ export type SelectSubset<T, U> = {
361
+ [key in keyof T]: key extends keyof U ? T[key] : never
362
+ } &
363
+ (T extends SelectAndInclude
364
+ ? 'Please either choose `select` or `include`.'
365
+ : T extends SelectAndOmit
366
+ ? 'Please either choose `select` or `omit`.'
367
+ : {})
368
+
369
+ /**
370
+ * Subset + Intersection
371
+ * @desc From `T` pick properties that exist in `U` and intersect `K`
372
+ */
373
+ export type SubsetIntersection<T, U, K> = {
374
+ [key in keyof T]: key extends keyof U ? T[key] : never
375
+ } &
376
+ K
377
+
378
+ type Without<T, U> = { [P in Exclude<keyof T, keyof U>]?: never };
379
+
380
+ /**
381
+ * XOR is needed to have a real mutually exclusive union type
382
+ * https://stackoverflow.com/questions/42123407/does-typescript-support-mutually-exclusive-types
383
+ */
384
+ type XOR<T, U> =
385
+ T extends object ?
386
+ U extends object ?
387
+ (Without<T, U> & U) | (Without<U, T> & T)
388
+ : U : T
389
+
390
+
391
+ /**
392
+ * Is T a Record?
393
+ */
394
+ type IsObject<T extends any> = T extends Array<any>
395
+ ? False
396
+ : T extends Date
397
+ ? False
398
+ : T extends Uint8Array
399
+ ? False
400
+ : T extends BigInt
401
+ ? False
402
+ : T extends object
403
+ ? True
404
+ : False
405
+
406
+
407
+ /**
408
+ * If it's T[], return T
409
+ */
410
+ export type UnEnumerate<T extends unknown> = T extends Array<infer U> ? U : T
411
+
412
+ /**
413
+ * From ts-toolbelt
414
+ */
415
+
416
+ type __Either<O extends object, K extends Key> = Omit<O, K> &
417
+ {
418
+ // Merge all but K
419
+ [P in K]: Prisma__Pick<O, P & keyof O> // With K possibilities
420
+ }[K]
421
+
422
+ type EitherStrict<O extends object, K extends Key> = Strict<__Either<O, K>>
423
+
424
+ type EitherLoose<O extends object, K extends Key> = ComputeRaw<__Either<O, K>>
425
+
426
+ type _Either<
427
+ O extends object,
428
+ K extends Key,
429
+ strict extends Boolean
430
+ > = {
431
+ 1: EitherStrict<O, K>
432
+ 0: EitherLoose<O, K>
433
+ }[strict]
434
+
435
+ type Either<
436
+ O extends object,
437
+ K extends Key,
438
+ strict extends Boolean = 1
439
+ > = O extends unknown ? _Either<O, K, strict> : never
440
+
441
+ export type Union = any
442
+
443
+ type PatchUndefined<O extends object, O1 extends object> = {
444
+ [K in keyof O]: O[K] extends undefined ? At<O1, K> : O[K]
445
+ } & {}
446
+
447
+ /** Helper Types for "Merge" **/
448
+ export type IntersectOf<U extends Union> = (
449
+ U extends unknown ? (k: U) => void : never
450
+ ) extends (k: infer I) => void
451
+ ? I
452
+ : never
453
+
454
+ export type Overwrite<O extends object, O1 extends object> = {
455
+ [K in keyof O]: K extends keyof O1 ? O1[K] : O[K];
456
+ } & {};
457
+
458
+ type _Merge<U extends object> = IntersectOf<Overwrite<U, {
459
+ [K in keyof U]-?: At<U, K>;
460
+ }>>;
461
+
462
+ type Key = string | number | symbol;
463
+ type AtBasic<O extends object, K extends Key> = K extends keyof O ? O[K] : never;
464
+ type AtStrict<O extends object, K extends Key> = O[K & keyof O];
465
+ type AtLoose<O extends object, K extends Key> = O extends unknown ? AtStrict<O, K> : never;
466
+ export type At<O extends object, K extends Key, strict extends Boolean = 1> = {
467
+ 1: AtStrict<O, K>;
468
+ 0: AtLoose<O, K>;
469
+ }[strict];
470
+
471
+ export type ComputeRaw<A extends any> = A extends Function ? A : {
472
+ [K in keyof A]: A[K];
473
+ } & {};
474
+
475
+ export type OptionalFlat<O> = {
476
+ [K in keyof O]?: O[K];
477
+ } & {};
478
+
479
+ type _Record<K extends keyof any, T> = {
480
+ [P in K]: T;
481
+ };
482
+
483
+ // cause typescript not to expand types and preserve names
484
+ type NoExpand<T> = T extends unknown ? T : never;
485
+
486
+ // this type assumes the passed object is entirely optional
487
+ type AtLeast<O extends object, K extends string> = NoExpand<
488
+ O extends unknown
489
+ ? | (K extends keyof O ? { [P in K]: O[P] } & O : O)
490
+ | {[P in keyof O as P extends K ? P : never]-?: O[P]} & O
491
+ : never>;
492
+
493
+ type _Strict<U, _U = U> = U extends unknown ? U & OptionalFlat<_Record<Exclude<Keys<_U>, keyof U>, never>> : never;
494
+
495
+ export type Strict<U extends object> = ComputeRaw<_Strict<U>>;
496
+ /** End Helper Types for "Merge" **/
497
+
498
+ export type Merge<U extends object> = ComputeRaw<_Merge<Strict<U>>>;
499
+
500
+ /**
501
+ A [[Boolean]]
502
+ */
503
+ export type Boolean = True | False
504
+
505
+ // /**
506
+ // 1
507
+ // */
508
+ export type True = 1
509
+
510
+ /**
511
+ 0
512
+ */
513
+ export type False = 0
514
+
515
+ export type Not<B extends Boolean> = {
516
+ 0: 1
517
+ 1: 0
518
+ }[B]
519
+
520
+ export type Extends<A1 extends any, A2 extends any> = [A1] extends [never]
521
+ ? 0 // anything `never` is false
522
+ : A1 extends A2
523
+ ? 1
524
+ : 0
525
+
526
+ export type Has<U extends Union, U1 extends Union> = Not<
527
+ Extends<Exclude<U1, U>, U1>
528
+ >
529
+
530
+ export type Or<B1 extends Boolean, B2 extends Boolean> = {
531
+ 0: {
532
+ 0: 0
533
+ 1: 1
534
+ }
535
+ 1: {
536
+ 0: 1
537
+ 1: 1
538
+ }
539
+ }[B1][B2]
540
+
541
+ export type Keys<U extends Union> = U extends unknown ? keyof U : never
542
+
543
+ type Cast<A, B> = A extends B ? A : B;
544
+
545
+ export const type: unique symbol;
546
+
547
+
548
+
549
+ /**
550
+ * Used by group by
551
+ */
552
+
553
+ export type GetScalarType<T, O> = O extends object ? {
554
+ [P in keyof T]: P extends keyof O
555
+ ? O[P]
556
+ : never
557
+ } : never
558
+
559
+ type FieldPaths<
560
+ T,
561
+ U = Omit<T, '_avg' | '_sum' | '_count' | '_min' | '_max'>
562
+ > = IsObject<T> extends True ? U : T
563
+
564
+ type GetHavingFields<T> = {
565
+ [K in keyof T]: Or<
566
+ Or<Extends<'OR', K>, Extends<'AND', K>>,
567
+ Extends<'NOT', K>
568
+ > extends True
569
+ ? // infer is only needed to not hit TS limit
570
+ // based on the brilliant idea of Pierre-Antoine Mills
571
+ // https://github.com/microsoft/TypeScript/issues/30188#issuecomment-478938437
572
+ T[K] extends infer TK
573
+ ? GetHavingFields<UnEnumerate<TK> extends object ? Merge<UnEnumerate<TK>> : never>
574
+ : never
575
+ : {} extends FieldPaths<T[K]>
576
+ ? never
577
+ : K
578
+ }[keyof T]
579
+
580
+ /**
581
+ * Convert tuple to union
582
+ */
583
+ type _TupleToUnion<T> = T extends (infer E)[] ? E : never
584
+ type TupleToUnion<K extends readonly any[]> = _TupleToUnion<K>
585
+ type MaybeTupleToUnion<T> = T extends any[] ? TupleToUnion<T> : T
586
+
587
+ /**
588
+ * Like `Pick`, but additionally can also accept an array of keys
589
+ */
590
+ type PickEnumerable<T, K extends Enumerable<keyof T> | keyof T> = Prisma__Pick<T, MaybeTupleToUnion<K>>
591
+
592
+ /**
593
+ * Exclude all keys with underscores
594
+ */
595
+ type ExcludeUnderscoreKeys<T extends string> = T extends `_${string}` ? never : T
596
+
597
+
598
+ export type FieldRef<Model, FieldType> = runtime.FieldRef<Model, FieldType>
599
+
600
+ type FieldRefInputType<Model, FieldType> = Model extends never ? never : FieldRef<Model, FieldType>
601
+
602
+
603
+ export const ModelName: {
604
+ User: 'User',
605
+ PasswordResetToken: 'PasswordResetToken'
606
+ };
607
+
608
+ export type ModelName = (typeof ModelName)[keyof typeof ModelName]
609
+
610
+
611
+ export type Datasources = {
612
+ db?: Datasource
613
+ }
614
+
615
+ interface TypeMapCb<ClientOptions = {}> extends $Utils.Fn<{extArgs: $Extensions.InternalArgs }, $Utils.Record<string, any>> {
616
+ returns: Prisma.TypeMap<this['params']['extArgs'], ClientOptions extends { omit: infer OmitOptions } ? OmitOptions : {}>
617
+ }
618
+
619
+ export type TypeMap<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> = {
620
+ globalOmitOptions: {
621
+ omit: GlobalOmitOptions
622
+ }
623
+ meta: {
624
+ modelProps: "user" | "passwordResetToken"
625
+ txIsolationLevel: Prisma.TransactionIsolationLevel
626
+ }
627
+ model: {
628
+ User: {
629
+ payload: Prisma.$UserPayload<ExtArgs>
630
+ fields: Prisma.UserFieldRefs
631
+ operations: {
632
+ findUnique: {
633
+ args: Prisma.UserFindUniqueArgs<ExtArgs>
634
+ result: $Utils.PayloadToResult<Prisma.$UserPayload> | null
635
+ }
636
+ findUniqueOrThrow: {
637
+ args: Prisma.UserFindUniqueOrThrowArgs<ExtArgs>
638
+ result: $Utils.PayloadToResult<Prisma.$UserPayload>
639
+ }
640
+ findFirst: {
641
+ args: Prisma.UserFindFirstArgs<ExtArgs>
642
+ result: $Utils.PayloadToResult<Prisma.$UserPayload> | null
643
+ }
644
+ findFirstOrThrow: {
645
+ args: Prisma.UserFindFirstOrThrowArgs<ExtArgs>
646
+ result: $Utils.PayloadToResult<Prisma.$UserPayload>
647
+ }
648
+ findMany: {
649
+ args: Prisma.UserFindManyArgs<ExtArgs>
650
+ result: $Utils.PayloadToResult<Prisma.$UserPayload>[]
651
+ }
652
+ create: {
653
+ args: Prisma.UserCreateArgs<ExtArgs>
654
+ result: $Utils.PayloadToResult<Prisma.$UserPayload>
655
+ }
656
+ createMany: {
657
+ args: Prisma.UserCreateManyArgs<ExtArgs>
658
+ result: BatchPayload
659
+ }
660
+ createManyAndReturn: {
661
+ args: Prisma.UserCreateManyAndReturnArgs<ExtArgs>
662
+ result: $Utils.PayloadToResult<Prisma.$UserPayload>[]
663
+ }
664
+ delete: {
665
+ args: Prisma.UserDeleteArgs<ExtArgs>
666
+ result: $Utils.PayloadToResult<Prisma.$UserPayload>
667
+ }
668
+ update: {
669
+ args: Prisma.UserUpdateArgs<ExtArgs>
670
+ result: $Utils.PayloadToResult<Prisma.$UserPayload>
671
+ }
672
+ deleteMany: {
673
+ args: Prisma.UserDeleteManyArgs<ExtArgs>
674
+ result: BatchPayload
675
+ }
676
+ updateMany: {
677
+ args: Prisma.UserUpdateManyArgs<ExtArgs>
678
+ result: BatchPayload
679
+ }
680
+ updateManyAndReturn: {
681
+ args: Prisma.UserUpdateManyAndReturnArgs<ExtArgs>
682
+ result: $Utils.PayloadToResult<Prisma.$UserPayload>[]
683
+ }
684
+ upsert: {
685
+ args: Prisma.UserUpsertArgs<ExtArgs>
686
+ result: $Utils.PayloadToResult<Prisma.$UserPayload>
687
+ }
688
+ aggregate: {
689
+ args: Prisma.UserAggregateArgs<ExtArgs>
690
+ result: $Utils.Optional<AggregateUser>
691
+ }
692
+ groupBy: {
693
+ args: Prisma.UserGroupByArgs<ExtArgs>
694
+ result: $Utils.Optional<UserGroupByOutputType>[]
695
+ }
696
+ count: {
697
+ args: Prisma.UserCountArgs<ExtArgs>
698
+ result: $Utils.Optional<UserCountAggregateOutputType> | number
699
+ }
700
+ }
701
+ }
702
+ PasswordResetToken: {
703
+ payload: Prisma.$PasswordResetTokenPayload<ExtArgs>
704
+ fields: Prisma.PasswordResetTokenFieldRefs
705
+ operations: {
706
+ findUnique: {
707
+ args: Prisma.PasswordResetTokenFindUniqueArgs<ExtArgs>
708
+ result: $Utils.PayloadToResult<Prisma.$PasswordResetTokenPayload> | null
709
+ }
710
+ findUniqueOrThrow: {
711
+ args: Prisma.PasswordResetTokenFindUniqueOrThrowArgs<ExtArgs>
712
+ result: $Utils.PayloadToResult<Prisma.$PasswordResetTokenPayload>
713
+ }
714
+ findFirst: {
715
+ args: Prisma.PasswordResetTokenFindFirstArgs<ExtArgs>
716
+ result: $Utils.PayloadToResult<Prisma.$PasswordResetTokenPayload> | null
717
+ }
718
+ findFirstOrThrow: {
719
+ args: Prisma.PasswordResetTokenFindFirstOrThrowArgs<ExtArgs>
720
+ result: $Utils.PayloadToResult<Prisma.$PasswordResetTokenPayload>
721
+ }
722
+ findMany: {
723
+ args: Prisma.PasswordResetTokenFindManyArgs<ExtArgs>
724
+ result: $Utils.PayloadToResult<Prisma.$PasswordResetTokenPayload>[]
725
+ }
726
+ create: {
727
+ args: Prisma.PasswordResetTokenCreateArgs<ExtArgs>
728
+ result: $Utils.PayloadToResult<Prisma.$PasswordResetTokenPayload>
729
+ }
730
+ createMany: {
731
+ args: Prisma.PasswordResetTokenCreateManyArgs<ExtArgs>
732
+ result: BatchPayload
733
+ }
734
+ createManyAndReturn: {
735
+ args: Prisma.PasswordResetTokenCreateManyAndReturnArgs<ExtArgs>
736
+ result: $Utils.PayloadToResult<Prisma.$PasswordResetTokenPayload>[]
737
+ }
738
+ delete: {
739
+ args: Prisma.PasswordResetTokenDeleteArgs<ExtArgs>
740
+ result: $Utils.PayloadToResult<Prisma.$PasswordResetTokenPayload>
741
+ }
742
+ update: {
743
+ args: Prisma.PasswordResetTokenUpdateArgs<ExtArgs>
744
+ result: $Utils.PayloadToResult<Prisma.$PasswordResetTokenPayload>
745
+ }
746
+ deleteMany: {
747
+ args: Prisma.PasswordResetTokenDeleteManyArgs<ExtArgs>
748
+ result: BatchPayload
749
+ }
750
+ updateMany: {
751
+ args: Prisma.PasswordResetTokenUpdateManyArgs<ExtArgs>
752
+ result: BatchPayload
753
+ }
754
+ updateManyAndReturn: {
755
+ args: Prisma.PasswordResetTokenUpdateManyAndReturnArgs<ExtArgs>
756
+ result: $Utils.PayloadToResult<Prisma.$PasswordResetTokenPayload>[]
757
+ }
758
+ upsert: {
759
+ args: Prisma.PasswordResetTokenUpsertArgs<ExtArgs>
760
+ result: $Utils.PayloadToResult<Prisma.$PasswordResetTokenPayload>
761
+ }
762
+ aggregate: {
763
+ args: Prisma.PasswordResetTokenAggregateArgs<ExtArgs>
764
+ result: $Utils.Optional<AggregatePasswordResetToken>
765
+ }
766
+ groupBy: {
767
+ args: Prisma.PasswordResetTokenGroupByArgs<ExtArgs>
768
+ result: $Utils.Optional<PasswordResetTokenGroupByOutputType>[]
769
+ }
770
+ count: {
771
+ args: Prisma.PasswordResetTokenCountArgs<ExtArgs>
772
+ result: $Utils.Optional<PasswordResetTokenCountAggregateOutputType> | number
773
+ }
774
+ }
775
+ }
776
+ }
777
+ } & {
778
+ other: {
779
+ payload: any
780
+ operations: {
781
+ $executeRaw: {
782
+ args: [query: TemplateStringsArray | Prisma.Sql, ...values: any[]],
783
+ result: any
784
+ }
785
+ $executeRawUnsafe: {
786
+ args: [query: string, ...values: any[]],
787
+ result: any
788
+ }
789
+ $queryRaw: {
790
+ args: [query: TemplateStringsArray | Prisma.Sql, ...values: any[]],
791
+ result: any
792
+ }
793
+ $queryRawUnsafe: {
794
+ args: [query: string, ...values: any[]],
795
+ result: any
796
+ }
797
+ }
798
+ }
799
+ }
800
+ export const defineExtension: $Extensions.ExtendsHook<"define", Prisma.TypeMapCb, $Extensions.DefaultArgs>
801
+ export type DefaultPrismaClient = PrismaClient
802
+ export type ErrorFormat = 'pretty' | 'colorless' | 'minimal'
803
+ export interface PrismaClientOptions {
804
+ /**
805
+ * Overwrites the datasource url from your schema.prisma file
806
+ */
807
+ datasources?: Datasources
808
+ /**
809
+ * Overwrites the datasource url from your schema.prisma file
810
+ */
811
+ datasourceUrl?: string
812
+ /**
813
+ * @default "colorless"
814
+ */
815
+ errorFormat?: ErrorFormat
816
+ /**
817
+ * @example
818
+ * ```
819
+ * // Shorthand for `emit: 'stdout'`
820
+ * log: ['query', 'info', 'warn', 'error']
821
+ *
822
+ * // Emit as events only
823
+ * log: [
824
+ * { emit: 'event', level: 'query' },
825
+ * { emit: 'event', level: 'info' },
826
+ * { emit: 'event', level: 'warn' }
827
+ * { emit: 'event', level: 'error' }
828
+ * ]
829
+ *
830
+ * / Emit as events and log to stdout
831
+ * og: [
832
+ * { emit: 'stdout', level: 'query' },
833
+ * { emit: 'stdout', level: 'info' },
834
+ * { emit: 'stdout', level: 'warn' }
835
+ * { emit: 'stdout', level: 'error' }
836
+ *
837
+ * ```
838
+ * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/logging#the-log-option).
839
+ */
840
+ log?: (LogLevel | LogDefinition)[]
841
+ /**
842
+ * The default values for transactionOptions
843
+ * maxWait ?= 2000
844
+ * timeout ?= 5000
845
+ */
846
+ transactionOptions?: {
847
+ maxWait?: number
848
+ timeout?: number
849
+ isolationLevel?: Prisma.TransactionIsolationLevel
850
+ }
851
+ /**
852
+ * Instance of a Driver Adapter, e.g., like one provided by `@prisma/adapter-planetscale`
853
+ */
854
+ adapter?: runtime.SqlDriverAdapterFactory | null
855
+ /**
856
+ * Global configuration for omitting model fields by default.
857
+ *
858
+ * @example
859
+ * ```
860
+ * const prisma = new PrismaClient({
861
+ * omit: {
862
+ * user: {
863
+ * password: true
864
+ * }
865
+ * }
866
+ * })
867
+ * ```
868
+ */
869
+ omit?: Prisma.GlobalOmitConfig
870
+ }
871
+ export type GlobalOmitConfig = {
872
+ user?: UserOmit
873
+ passwordResetToken?: PasswordResetTokenOmit
874
+ }
875
+
876
+ /* Types for Logging */
877
+ export type LogLevel = 'info' | 'query' | 'warn' | 'error'
878
+ export type LogDefinition = {
879
+ level: LogLevel
880
+ emit: 'stdout' | 'event'
881
+ }
882
+
883
+ export type CheckIsLogLevel<T> = T extends LogLevel ? T : never;
884
+
885
+ export type GetLogType<T> = CheckIsLogLevel<
886
+ T extends LogDefinition ? T['level'] : T
887
+ >;
888
+
889
+ export type GetEvents<T extends any[]> = T extends Array<LogLevel | LogDefinition>
890
+ ? GetLogType<T[number]>
891
+ : never;
892
+
893
+ export type QueryEvent = {
894
+ timestamp: Date
895
+ query: string
896
+ params: string
897
+ duration: number
898
+ target: string
899
+ }
900
+
901
+ export type LogEvent = {
902
+ timestamp: Date
903
+ message: string
904
+ target: string
905
+ }
906
+ /* End Types for Logging */
907
+
908
+
909
+ export type PrismaAction =
910
+ | 'findUnique'
911
+ | 'findUniqueOrThrow'
912
+ | 'findMany'
913
+ | 'findFirst'
914
+ | 'findFirstOrThrow'
915
+ | 'create'
916
+ | 'createMany'
917
+ | 'createManyAndReturn'
918
+ | 'update'
919
+ | 'updateMany'
920
+ | 'updateManyAndReturn'
921
+ | 'upsert'
922
+ | 'delete'
923
+ | 'deleteMany'
924
+ | 'executeRaw'
925
+ | 'queryRaw'
926
+ | 'aggregate'
927
+ | 'count'
928
+ | 'runCommandRaw'
929
+ | 'findRaw'
930
+ | 'groupBy'
931
+
932
+ // tested in getLogLevel.test.ts
933
+ export function getLogLevel(log: Array<LogLevel | LogDefinition>): LogLevel | undefined;
934
+
935
+ /**
936
+ * `PrismaClient` proxy available in interactive transactions.
937
+ */
938
+ export type TransactionClient = Omit<Prisma.DefaultPrismaClient, runtime.ITXClientDenyList>
939
+
940
+ export type Datasource = {
941
+ url?: string
942
+ }
943
+
944
+ /**
945
+ * Count Types
946
+ */
947
+
948
+
949
+ /**
950
+ * Count Type UserCountOutputType
951
+ */
952
+
953
+ export type UserCountOutputType = {
954
+ PasswordResetTokens: number
955
+ }
956
+
957
+ export type UserCountOutputTypeSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
958
+ PasswordResetTokens?: boolean | UserCountOutputTypeCountPasswordResetTokensArgs
959
+ }
960
+
961
+ // Custom InputTypes
962
+ /**
963
+ * UserCountOutputType without action
964
+ */
965
+ export type UserCountOutputTypeDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
966
+ /**
967
+ * Select specific fields to fetch from the UserCountOutputType
968
+ */
969
+ select?: UserCountOutputTypeSelect<ExtArgs> | null
970
+ }
971
+
972
+ /**
973
+ * UserCountOutputType without action
974
+ */
975
+ export type UserCountOutputTypeCountPasswordResetTokensArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
976
+ where?: PasswordResetTokenWhereInput
977
+ }
978
+
979
+
980
+ /**
981
+ * Models
982
+ */
983
+
984
+ /**
985
+ * Model User
986
+ */
987
+
988
+ export type AggregateUser = {
989
+ _count: UserCountAggregateOutputType | null
990
+ _min: UserMinAggregateOutputType | null
991
+ _max: UserMaxAggregateOutputType | null
992
+ }
993
+
994
+ export type UserMinAggregateOutputType = {
995
+ id: string | null
996
+ username: string | null
997
+ email: string | null
998
+ passwordHash: string | null
999
+ is_active: boolean | null
1000
+ must_reset_password: boolean | null
1001
+ created_at: Date | null
1002
+ updated_at: Date | null
1003
+ }
1004
+
1005
+ export type UserMaxAggregateOutputType = {
1006
+ id: string | null
1007
+ username: string | null
1008
+ email: string | null
1009
+ passwordHash: string | null
1010
+ is_active: boolean | null
1011
+ must_reset_password: boolean | null
1012
+ created_at: Date | null
1013
+ updated_at: Date | null
1014
+ }
1015
+
1016
+ export type UserCountAggregateOutputType = {
1017
+ id: number
1018
+ username: number
1019
+ email: number
1020
+ passwordHash: number
1021
+ is_active: number
1022
+ must_reset_password: number
1023
+ created_at: number
1024
+ updated_at: number
1025
+ _all: number
1026
+ }
1027
+
1028
+
1029
+ export type UserMinAggregateInputType = {
1030
+ id?: true
1031
+ username?: true
1032
+ email?: true
1033
+ passwordHash?: true
1034
+ is_active?: true
1035
+ must_reset_password?: true
1036
+ created_at?: true
1037
+ updated_at?: true
1038
+ }
1039
+
1040
+ export type UserMaxAggregateInputType = {
1041
+ id?: true
1042
+ username?: true
1043
+ email?: true
1044
+ passwordHash?: true
1045
+ is_active?: true
1046
+ must_reset_password?: true
1047
+ created_at?: true
1048
+ updated_at?: true
1049
+ }
1050
+
1051
+ export type UserCountAggregateInputType = {
1052
+ id?: true
1053
+ username?: true
1054
+ email?: true
1055
+ passwordHash?: true
1056
+ is_active?: true
1057
+ must_reset_password?: true
1058
+ created_at?: true
1059
+ updated_at?: true
1060
+ _all?: true
1061
+ }
1062
+
1063
+ export type UserAggregateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1064
+ /**
1065
+ * Filter which User to aggregate.
1066
+ */
1067
+ where?: UserWhereInput
1068
+ /**
1069
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
1070
+ *
1071
+ * Determine the order of Users to fetch.
1072
+ */
1073
+ orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[]
1074
+ /**
1075
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
1076
+ *
1077
+ * Sets the start position
1078
+ */
1079
+ cursor?: UserWhereUniqueInput
1080
+ /**
1081
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1082
+ *
1083
+ * Take `±n` Users from the position of the cursor.
1084
+ */
1085
+ take?: number
1086
+ /**
1087
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1088
+ *
1089
+ * Skip the first `n` Users.
1090
+ */
1091
+ skip?: number
1092
+ /**
1093
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
1094
+ *
1095
+ * Count returned Users
1096
+ **/
1097
+ _count?: true | UserCountAggregateInputType
1098
+ /**
1099
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
1100
+ *
1101
+ * Select which fields to find the minimum value
1102
+ **/
1103
+ _min?: UserMinAggregateInputType
1104
+ /**
1105
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
1106
+ *
1107
+ * Select which fields to find the maximum value
1108
+ **/
1109
+ _max?: UserMaxAggregateInputType
1110
+ }
1111
+
1112
+ export type GetUserAggregateType<T extends UserAggregateArgs> = {
1113
+ [P in keyof T & keyof AggregateUser]: P extends '_count' | 'count'
1114
+ ? T[P] extends true
1115
+ ? number
1116
+ : GetScalarType<T[P], AggregateUser[P]>
1117
+ : GetScalarType<T[P], AggregateUser[P]>
1118
+ }
1119
+
1120
+
1121
+
1122
+
1123
+ export type UserGroupByArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1124
+ where?: UserWhereInput
1125
+ orderBy?: UserOrderByWithAggregationInput | UserOrderByWithAggregationInput[]
1126
+ by: UserScalarFieldEnum[] | UserScalarFieldEnum
1127
+ having?: UserScalarWhereWithAggregatesInput
1128
+ take?: number
1129
+ skip?: number
1130
+ _count?: UserCountAggregateInputType | true
1131
+ _min?: UserMinAggregateInputType
1132
+ _max?: UserMaxAggregateInputType
1133
+ }
1134
+
1135
+ export type UserGroupByOutputType = {
1136
+ id: string
1137
+ username: string
1138
+ email: string
1139
+ passwordHash: string
1140
+ is_active: boolean
1141
+ must_reset_password: boolean
1142
+ created_at: Date
1143
+ updated_at: Date
1144
+ _count: UserCountAggregateOutputType | null
1145
+ _min: UserMinAggregateOutputType | null
1146
+ _max: UserMaxAggregateOutputType | null
1147
+ }
1148
+
1149
+ type GetUserGroupByPayload<T extends UserGroupByArgs> = Prisma.PrismaPromise<
1150
+ Array<
1151
+ PickEnumerable<UserGroupByOutputType, T['by']> &
1152
+ {
1153
+ [P in ((keyof T) & (keyof UserGroupByOutputType))]: P extends '_count'
1154
+ ? T[P] extends boolean
1155
+ ? number
1156
+ : GetScalarType<T[P], UserGroupByOutputType[P]>
1157
+ : GetScalarType<T[P], UserGroupByOutputType[P]>
1158
+ }
1159
+ >
1160
+ >
1161
+
1162
+
1163
+ export type UserSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
1164
+ id?: boolean
1165
+ username?: boolean
1166
+ email?: boolean
1167
+ passwordHash?: boolean
1168
+ is_active?: boolean
1169
+ must_reset_password?: boolean
1170
+ created_at?: boolean
1171
+ updated_at?: boolean
1172
+ PasswordResetTokens?: boolean | User$PasswordResetTokensArgs<ExtArgs>
1173
+ _count?: boolean | UserCountOutputTypeDefaultArgs<ExtArgs>
1174
+ }, ExtArgs["result"]["user"]>
1175
+
1176
+ export type UserSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
1177
+ id?: boolean
1178
+ username?: boolean
1179
+ email?: boolean
1180
+ passwordHash?: boolean
1181
+ is_active?: boolean
1182
+ must_reset_password?: boolean
1183
+ created_at?: boolean
1184
+ updated_at?: boolean
1185
+ }, ExtArgs["result"]["user"]>
1186
+
1187
+ export type UserSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
1188
+ id?: boolean
1189
+ username?: boolean
1190
+ email?: boolean
1191
+ passwordHash?: boolean
1192
+ is_active?: boolean
1193
+ must_reset_password?: boolean
1194
+ created_at?: boolean
1195
+ updated_at?: boolean
1196
+ }, ExtArgs["result"]["user"]>
1197
+
1198
+ export type UserSelectScalar = {
1199
+ id?: boolean
1200
+ username?: boolean
1201
+ email?: boolean
1202
+ passwordHash?: boolean
1203
+ is_active?: boolean
1204
+ must_reset_password?: boolean
1205
+ created_at?: boolean
1206
+ updated_at?: boolean
1207
+ }
1208
+
1209
+ export type UserOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "username" | "email" | "passwordHash" | "is_active" | "must_reset_password" | "created_at" | "updated_at", ExtArgs["result"]["user"]>
1210
+ export type UserInclude<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1211
+ PasswordResetTokens?: boolean | User$PasswordResetTokensArgs<ExtArgs>
1212
+ _count?: boolean | UserCountOutputTypeDefaultArgs<ExtArgs>
1213
+ }
1214
+ export type UserIncludeCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {}
1215
+ export type UserIncludeUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {}
1216
+
1217
+ export type $UserPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1218
+ name: "User"
1219
+ objects: {
1220
+ PasswordResetTokens: Prisma.$PasswordResetTokenPayload<ExtArgs>[]
1221
+ }
1222
+ scalars: $Extensions.GetPayloadResult<{
1223
+ id: string
1224
+ username: string
1225
+ email: string
1226
+ passwordHash: string
1227
+ is_active: boolean
1228
+ must_reset_password: boolean
1229
+ created_at: Date
1230
+ updated_at: Date
1231
+ }, ExtArgs["result"]["user"]>
1232
+ composites: {}
1233
+ }
1234
+
1235
+ type UserGetPayload<S extends boolean | null | undefined | UserDefaultArgs> = $Result.GetResult<Prisma.$UserPayload, S>
1236
+
1237
+ type UserCountArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> =
1238
+ Omit<UserFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
1239
+ select?: UserCountAggregateInputType | true
1240
+ }
1241
+
1242
+ export interface UserDelegate<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> {
1243
+ [K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['User'], meta: { name: 'User' } }
1244
+ /**
1245
+ * Find zero or one User that matches the filter.
1246
+ * @param {UserFindUniqueArgs} args - Arguments to find a User
1247
+ * @example
1248
+ * // Get one User
1249
+ * const user = await prisma.user.findUnique({
1250
+ * where: {
1251
+ * // ... provide filter here
1252
+ * }
1253
+ * })
1254
+ */
1255
+ findUnique<T extends UserFindUniqueArgs>(args: SelectSubset<T, UserFindUniqueArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
1256
+
1257
+ /**
1258
+ * Find one User that matches the filter or throw an error with `error.code='P2025'`
1259
+ * if no matches were found.
1260
+ * @param {UserFindUniqueOrThrowArgs} args - Arguments to find a User
1261
+ * @example
1262
+ * // Get one User
1263
+ * const user = await prisma.user.findUniqueOrThrow({
1264
+ * where: {
1265
+ * // ... provide filter here
1266
+ * }
1267
+ * })
1268
+ */
1269
+ findUniqueOrThrow<T extends UserFindUniqueOrThrowArgs>(args: SelectSubset<T, UserFindUniqueOrThrowArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
1270
+
1271
+ /**
1272
+ * Find the first User that matches the filter.
1273
+ * Note, that providing `undefined` is treated as the value not being there.
1274
+ * Read more here: https://pris.ly/d/null-undefined
1275
+ * @param {UserFindFirstArgs} args - Arguments to find a User
1276
+ * @example
1277
+ * // Get one User
1278
+ * const user = await prisma.user.findFirst({
1279
+ * where: {
1280
+ * // ... provide filter here
1281
+ * }
1282
+ * })
1283
+ */
1284
+ findFirst<T extends UserFindFirstArgs>(args?: SelectSubset<T, UserFindFirstArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
1285
+
1286
+ /**
1287
+ * Find the first User that matches the filter or
1288
+ * throw `PrismaKnownClientError` with `P2025` code if no matches were found.
1289
+ * Note, that providing `undefined` is treated as the value not being there.
1290
+ * Read more here: https://pris.ly/d/null-undefined
1291
+ * @param {UserFindFirstOrThrowArgs} args - Arguments to find a User
1292
+ * @example
1293
+ * // Get one User
1294
+ * const user = await prisma.user.findFirstOrThrow({
1295
+ * where: {
1296
+ * // ... provide filter here
1297
+ * }
1298
+ * })
1299
+ */
1300
+ findFirstOrThrow<T extends UserFindFirstOrThrowArgs>(args?: SelectSubset<T, UserFindFirstOrThrowArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
1301
+
1302
+ /**
1303
+ * Find zero or more Users that matches the filter.
1304
+ * Note, that providing `undefined` is treated as the value not being there.
1305
+ * Read more here: https://pris.ly/d/null-undefined
1306
+ * @param {UserFindManyArgs} args - Arguments to filter and select certain fields only.
1307
+ * @example
1308
+ * // Get all Users
1309
+ * const users = await prisma.user.findMany()
1310
+ *
1311
+ * // Get first 10 Users
1312
+ * const users = await prisma.user.findMany({ take: 10 })
1313
+ *
1314
+ * // Only select the `id`
1315
+ * const userWithIdOnly = await prisma.user.findMany({ select: { id: true } })
1316
+ *
1317
+ */
1318
+ findMany<T extends UserFindManyArgs>(args?: SelectSubset<T, UserFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
1319
+
1320
+ /**
1321
+ * Create a User.
1322
+ * @param {UserCreateArgs} args - Arguments to create a User.
1323
+ * @example
1324
+ * // Create one User
1325
+ * const User = await prisma.user.create({
1326
+ * data: {
1327
+ * // ... data to create a User
1328
+ * }
1329
+ * })
1330
+ *
1331
+ */
1332
+ create<T extends UserCreateArgs>(args: SelectSubset<T, UserCreateArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
1333
+
1334
+ /**
1335
+ * Create many Users.
1336
+ * @param {UserCreateManyArgs} args - Arguments to create many Users.
1337
+ * @example
1338
+ * // Create many Users
1339
+ * const user = await prisma.user.createMany({
1340
+ * data: [
1341
+ * // ... provide data here
1342
+ * ]
1343
+ * })
1344
+ *
1345
+ */
1346
+ createMany<T extends UserCreateManyArgs>(args?: SelectSubset<T, UserCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
1347
+
1348
+ /**
1349
+ * Create many Users and returns the data saved in the database.
1350
+ * @param {UserCreateManyAndReturnArgs} args - Arguments to create many Users.
1351
+ * @example
1352
+ * // Create many Users
1353
+ * const user = await prisma.user.createManyAndReturn({
1354
+ * data: [
1355
+ * // ... provide data here
1356
+ * ]
1357
+ * })
1358
+ *
1359
+ * // Create many Users and only return the `id`
1360
+ * const userWithIdOnly = await prisma.user.createManyAndReturn({
1361
+ * select: { id: true },
1362
+ * data: [
1363
+ * // ... provide data here
1364
+ * ]
1365
+ * })
1366
+ * Note, that providing `undefined` is treated as the value not being there.
1367
+ * Read more here: https://pris.ly/d/null-undefined
1368
+ *
1369
+ */
1370
+ createManyAndReturn<T extends UserCreateManyAndReturnArgs>(args?: SelectSubset<T, UserCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
1371
+
1372
+ /**
1373
+ * Delete a User.
1374
+ * @param {UserDeleteArgs} args - Arguments to delete one User.
1375
+ * @example
1376
+ * // Delete one User
1377
+ * const User = await prisma.user.delete({
1378
+ * where: {
1379
+ * // ... filter to delete one User
1380
+ * }
1381
+ * })
1382
+ *
1383
+ */
1384
+ delete<T extends UserDeleteArgs>(args: SelectSubset<T, UserDeleteArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
1385
+
1386
+ /**
1387
+ * Update one User.
1388
+ * @param {UserUpdateArgs} args - Arguments to update one User.
1389
+ * @example
1390
+ * // Update one User
1391
+ * const user = await prisma.user.update({
1392
+ * where: {
1393
+ * // ... provide filter here
1394
+ * },
1395
+ * data: {
1396
+ * // ... provide data here
1397
+ * }
1398
+ * })
1399
+ *
1400
+ */
1401
+ update<T extends UserUpdateArgs>(args: SelectSubset<T, UserUpdateArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
1402
+
1403
+ /**
1404
+ * Delete zero or more Users.
1405
+ * @param {UserDeleteManyArgs} args - Arguments to filter Users to delete.
1406
+ * @example
1407
+ * // Delete a few Users
1408
+ * const { count } = await prisma.user.deleteMany({
1409
+ * where: {
1410
+ * // ... provide filter here
1411
+ * }
1412
+ * })
1413
+ *
1414
+ */
1415
+ deleteMany<T extends UserDeleteManyArgs>(args?: SelectSubset<T, UserDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
1416
+
1417
+ /**
1418
+ * Update zero or more Users.
1419
+ * Note, that providing `undefined` is treated as the value not being there.
1420
+ * Read more here: https://pris.ly/d/null-undefined
1421
+ * @param {UserUpdateManyArgs} args - Arguments to update one or more rows.
1422
+ * @example
1423
+ * // Update many Users
1424
+ * const user = await prisma.user.updateMany({
1425
+ * where: {
1426
+ * // ... provide filter here
1427
+ * },
1428
+ * data: {
1429
+ * // ... provide data here
1430
+ * }
1431
+ * })
1432
+ *
1433
+ */
1434
+ updateMany<T extends UserUpdateManyArgs>(args: SelectSubset<T, UserUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
1435
+
1436
+ /**
1437
+ * Update zero or more Users and returns the data updated in the database.
1438
+ * @param {UserUpdateManyAndReturnArgs} args - Arguments to update many Users.
1439
+ * @example
1440
+ * // Update many Users
1441
+ * const user = await prisma.user.updateManyAndReturn({
1442
+ * where: {
1443
+ * // ... provide filter here
1444
+ * },
1445
+ * data: [
1446
+ * // ... provide data here
1447
+ * ]
1448
+ * })
1449
+ *
1450
+ * // Update zero or more Users and only return the `id`
1451
+ * const userWithIdOnly = await prisma.user.updateManyAndReturn({
1452
+ * select: { id: true },
1453
+ * where: {
1454
+ * // ... provide filter here
1455
+ * },
1456
+ * data: [
1457
+ * // ... provide data here
1458
+ * ]
1459
+ * })
1460
+ * Note, that providing `undefined` is treated as the value not being there.
1461
+ * Read more here: https://pris.ly/d/null-undefined
1462
+ *
1463
+ */
1464
+ updateManyAndReturn<T extends UserUpdateManyAndReturnArgs>(args: SelectSubset<T, UserUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
1465
+
1466
+ /**
1467
+ * Create or update one User.
1468
+ * @param {UserUpsertArgs} args - Arguments to update or create a User.
1469
+ * @example
1470
+ * // Update or create a User
1471
+ * const user = await prisma.user.upsert({
1472
+ * create: {
1473
+ * // ... data to create a User
1474
+ * },
1475
+ * update: {
1476
+ * // ... in case it already exists, update
1477
+ * },
1478
+ * where: {
1479
+ * // ... the filter for the User we want to update
1480
+ * }
1481
+ * })
1482
+ */
1483
+ upsert<T extends UserUpsertArgs>(args: SelectSubset<T, UserUpsertArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
1484
+
1485
+
1486
+ /**
1487
+ * Count the number of Users.
1488
+ * Note, that providing `undefined` is treated as the value not being there.
1489
+ * Read more here: https://pris.ly/d/null-undefined
1490
+ * @param {UserCountArgs} args - Arguments to filter Users to count.
1491
+ * @example
1492
+ * // Count the number of Users
1493
+ * const count = await prisma.user.count({
1494
+ * where: {
1495
+ * // ... the filter for the Users we want to count
1496
+ * }
1497
+ * })
1498
+ **/
1499
+ count<T extends UserCountArgs>(
1500
+ args?: Subset<T, UserCountArgs>,
1501
+ ): Prisma.PrismaPromise<
1502
+ T extends $Utils.Record<'select', any>
1503
+ ? T['select'] extends true
1504
+ ? number
1505
+ : GetScalarType<T['select'], UserCountAggregateOutputType>
1506
+ : number
1507
+ >
1508
+
1509
+ /**
1510
+ * Allows you to perform aggregations operations on a User.
1511
+ * Note, that providing `undefined` is treated as the value not being there.
1512
+ * Read more here: https://pris.ly/d/null-undefined
1513
+ * @param {UserAggregateArgs} args - Select which aggregations you would like to apply and on what fields.
1514
+ * @example
1515
+ * // Ordered by age ascending
1516
+ * // Where email contains prisma.io
1517
+ * // Limited to the 10 users
1518
+ * const aggregations = await prisma.user.aggregate({
1519
+ * _avg: {
1520
+ * age: true,
1521
+ * },
1522
+ * where: {
1523
+ * email: {
1524
+ * contains: "prisma.io",
1525
+ * },
1526
+ * },
1527
+ * orderBy: {
1528
+ * age: "asc",
1529
+ * },
1530
+ * take: 10,
1531
+ * })
1532
+ **/
1533
+ aggregate<T extends UserAggregateArgs>(args: Subset<T, UserAggregateArgs>): Prisma.PrismaPromise<GetUserAggregateType<T>>
1534
+
1535
+ /**
1536
+ * Group by User.
1537
+ * Note, that providing `undefined` is treated as the value not being there.
1538
+ * Read more here: https://pris.ly/d/null-undefined
1539
+ * @param {UserGroupByArgs} args - Group by arguments.
1540
+ * @example
1541
+ * // Group by city, order by createdAt, get count
1542
+ * const result = await prisma.user.groupBy({
1543
+ * by: ['city', 'createdAt'],
1544
+ * orderBy: {
1545
+ * createdAt: true
1546
+ * },
1547
+ * _count: {
1548
+ * _all: true
1549
+ * },
1550
+ * })
1551
+ *
1552
+ **/
1553
+ groupBy<
1554
+ T extends UserGroupByArgs,
1555
+ HasSelectOrTake extends Or<
1556
+ Extends<'skip', Keys<T>>,
1557
+ Extends<'take', Keys<T>>
1558
+ >,
1559
+ OrderByArg extends True extends HasSelectOrTake
1560
+ ? { orderBy: UserGroupByArgs['orderBy'] }
1561
+ : { orderBy?: UserGroupByArgs['orderBy'] },
1562
+ OrderFields extends ExcludeUnderscoreKeys<Keys<MaybeTupleToUnion<T['orderBy']>>>,
1563
+ ByFields extends MaybeTupleToUnion<T['by']>,
1564
+ ByValid extends Has<ByFields, OrderFields>,
1565
+ HavingFields extends GetHavingFields<T['having']>,
1566
+ HavingValid extends Has<ByFields, HavingFields>,
1567
+ ByEmpty extends T['by'] extends never[] ? True : False,
1568
+ InputErrors extends ByEmpty extends True
1569
+ ? `Error: "by" must not be empty.`
1570
+ : HavingValid extends False
1571
+ ? {
1572
+ [P in HavingFields]: P extends ByFields
1573
+ ? never
1574
+ : P extends string
1575
+ ? `Error: Field "${P}" used in "having" needs to be provided in "by".`
1576
+ : [
1577
+ Error,
1578
+ 'Field ',
1579
+ P,
1580
+ ` in "having" needs to be provided in "by"`,
1581
+ ]
1582
+ }[HavingFields]
1583
+ : 'take' extends Keys<T>
1584
+ ? 'orderBy' extends Keys<T>
1585
+ ? ByValid extends True
1586
+ ? {}
1587
+ : {
1588
+ [P in OrderFields]: P extends ByFields
1589
+ ? never
1590
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
1591
+ }[OrderFields]
1592
+ : 'Error: If you provide "take", you also need to provide "orderBy"'
1593
+ : 'skip' extends Keys<T>
1594
+ ? 'orderBy' extends Keys<T>
1595
+ ? ByValid extends True
1596
+ ? {}
1597
+ : {
1598
+ [P in OrderFields]: P extends ByFields
1599
+ ? never
1600
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
1601
+ }[OrderFields]
1602
+ : 'Error: If you provide "skip", you also need to provide "orderBy"'
1603
+ : ByValid extends True
1604
+ ? {}
1605
+ : {
1606
+ [P in OrderFields]: P extends ByFields
1607
+ ? never
1608
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
1609
+ }[OrderFields]
1610
+ >(args: SubsetIntersection<T, UserGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetUserGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
1611
+ /**
1612
+ * Fields of the User model
1613
+ */
1614
+ readonly fields: UserFieldRefs;
1615
+ }
1616
+
1617
+ /**
1618
+ * The delegate class that acts as a "Promise-like" for User.
1619
+ * Why is this prefixed with `Prisma__`?
1620
+ * Because we want to prevent naming conflicts as mentioned in
1621
+ * https://github.com/prisma/prisma-client-js/issues/707
1622
+ */
1623
+ export interface Prisma__UserClient<T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
1624
+ readonly [Symbol.toStringTag]: "PrismaPromise"
1625
+ PasswordResetTokens<T extends User$PasswordResetTokensArgs<ExtArgs> = {}>(args?: Subset<T, User$PasswordResetTokensArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$PasswordResetTokenPayload<ExtArgs>, T, "findMany", GlobalOmitOptions> | Null>
1626
+ /**
1627
+ * Attaches callbacks for the resolution and/or rejection of the Promise.
1628
+ * @param onfulfilled The callback to execute when the Promise is resolved.
1629
+ * @param onrejected The callback to execute when the Promise is rejected.
1630
+ * @returns A Promise for the completion of which ever callback is executed.
1631
+ */
1632
+ then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): $Utils.JsPromise<TResult1 | TResult2>
1633
+ /**
1634
+ * Attaches a callback for only the rejection of the Promise.
1635
+ * @param onrejected The callback to execute when the Promise is rejected.
1636
+ * @returns A Promise for the completion of the callback.
1637
+ */
1638
+ catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null): $Utils.JsPromise<T | TResult>
1639
+ /**
1640
+ * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The
1641
+ * resolved value cannot be modified from the callback.
1642
+ * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).
1643
+ * @returns A Promise for the completion of the callback.
1644
+ */
1645
+ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise<T>
1646
+ }
1647
+
1648
+
1649
+
1650
+
1651
+ /**
1652
+ * Fields of the User model
1653
+ */
1654
+ interface UserFieldRefs {
1655
+ readonly id: FieldRef<"User", 'String'>
1656
+ readonly username: FieldRef<"User", 'String'>
1657
+ readonly email: FieldRef<"User", 'String'>
1658
+ readonly passwordHash: FieldRef<"User", 'String'>
1659
+ readonly is_active: FieldRef<"User", 'Boolean'>
1660
+ readonly must_reset_password: FieldRef<"User", 'Boolean'>
1661
+ readonly created_at: FieldRef<"User", 'DateTime'>
1662
+ readonly updated_at: FieldRef<"User", 'DateTime'>
1663
+ }
1664
+
1665
+
1666
+ // Custom InputTypes
1667
+ /**
1668
+ * User findUnique
1669
+ */
1670
+ export type UserFindUniqueArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1671
+ /**
1672
+ * Select specific fields to fetch from the User
1673
+ */
1674
+ select?: UserSelect<ExtArgs> | null
1675
+ /**
1676
+ * Omit specific fields from the User
1677
+ */
1678
+ omit?: UserOmit<ExtArgs> | null
1679
+ /**
1680
+ * Choose, which related nodes to fetch as well
1681
+ */
1682
+ include?: UserInclude<ExtArgs> | null
1683
+ /**
1684
+ * Filter, which User to fetch.
1685
+ */
1686
+ where: UserWhereUniqueInput
1687
+ }
1688
+
1689
+ /**
1690
+ * User findUniqueOrThrow
1691
+ */
1692
+ export type UserFindUniqueOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1693
+ /**
1694
+ * Select specific fields to fetch from the User
1695
+ */
1696
+ select?: UserSelect<ExtArgs> | null
1697
+ /**
1698
+ * Omit specific fields from the User
1699
+ */
1700
+ omit?: UserOmit<ExtArgs> | null
1701
+ /**
1702
+ * Choose, which related nodes to fetch as well
1703
+ */
1704
+ include?: UserInclude<ExtArgs> | null
1705
+ /**
1706
+ * Filter, which User to fetch.
1707
+ */
1708
+ where: UserWhereUniqueInput
1709
+ }
1710
+
1711
+ /**
1712
+ * User findFirst
1713
+ */
1714
+ export type UserFindFirstArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1715
+ /**
1716
+ * Select specific fields to fetch from the User
1717
+ */
1718
+ select?: UserSelect<ExtArgs> | null
1719
+ /**
1720
+ * Omit specific fields from the User
1721
+ */
1722
+ omit?: UserOmit<ExtArgs> | null
1723
+ /**
1724
+ * Choose, which related nodes to fetch as well
1725
+ */
1726
+ include?: UserInclude<ExtArgs> | null
1727
+ /**
1728
+ * Filter, which User to fetch.
1729
+ */
1730
+ where?: UserWhereInput
1731
+ /**
1732
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
1733
+ *
1734
+ * Determine the order of Users to fetch.
1735
+ */
1736
+ orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[]
1737
+ /**
1738
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
1739
+ *
1740
+ * Sets the position for searching for Users.
1741
+ */
1742
+ cursor?: UserWhereUniqueInput
1743
+ /**
1744
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1745
+ *
1746
+ * Take `±n` Users from the position of the cursor.
1747
+ */
1748
+ take?: number
1749
+ /**
1750
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1751
+ *
1752
+ * Skip the first `n` Users.
1753
+ */
1754
+ skip?: number
1755
+ /**
1756
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
1757
+ *
1758
+ * Filter by unique combinations of Users.
1759
+ */
1760
+ distinct?: UserScalarFieldEnum | UserScalarFieldEnum[]
1761
+ }
1762
+
1763
+ /**
1764
+ * User findFirstOrThrow
1765
+ */
1766
+ export type UserFindFirstOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1767
+ /**
1768
+ * Select specific fields to fetch from the User
1769
+ */
1770
+ select?: UserSelect<ExtArgs> | null
1771
+ /**
1772
+ * Omit specific fields from the User
1773
+ */
1774
+ omit?: UserOmit<ExtArgs> | null
1775
+ /**
1776
+ * Choose, which related nodes to fetch as well
1777
+ */
1778
+ include?: UserInclude<ExtArgs> | null
1779
+ /**
1780
+ * Filter, which User to fetch.
1781
+ */
1782
+ where?: UserWhereInput
1783
+ /**
1784
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
1785
+ *
1786
+ * Determine the order of Users to fetch.
1787
+ */
1788
+ orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[]
1789
+ /**
1790
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
1791
+ *
1792
+ * Sets the position for searching for Users.
1793
+ */
1794
+ cursor?: UserWhereUniqueInput
1795
+ /**
1796
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1797
+ *
1798
+ * Take `±n` Users from the position of the cursor.
1799
+ */
1800
+ take?: number
1801
+ /**
1802
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1803
+ *
1804
+ * Skip the first `n` Users.
1805
+ */
1806
+ skip?: number
1807
+ /**
1808
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
1809
+ *
1810
+ * Filter by unique combinations of Users.
1811
+ */
1812
+ distinct?: UserScalarFieldEnum | UserScalarFieldEnum[]
1813
+ }
1814
+
1815
+ /**
1816
+ * User findMany
1817
+ */
1818
+ export type UserFindManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1819
+ /**
1820
+ * Select specific fields to fetch from the User
1821
+ */
1822
+ select?: UserSelect<ExtArgs> | null
1823
+ /**
1824
+ * Omit specific fields from the User
1825
+ */
1826
+ omit?: UserOmit<ExtArgs> | null
1827
+ /**
1828
+ * Choose, which related nodes to fetch as well
1829
+ */
1830
+ include?: UserInclude<ExtArgs> | null
1831
+ /**
1832
+ * Filter, which Users to fetch.
1833
+ */
1834
+ where?: UserWhereInput
1835
+ /**
1836
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
1837
+ *
1838
+ * Determine the order of Users to fetch.
1839
+ */
1840
+ orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[]
1841
+ /**
1842
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
1843
+ *
1844
+ * Sets the position for listing Users.
1845
+ */
1846
+ cursor?: UserWhereUniqueInput
1847
+ /**
1848
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1849
+ *
1850
+ * Take `±n` Users from the position of the cursor.
1851
+ */
1852
+ take?: number
1853
+ /**
1854
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1855
+ *
1856
+ * Skip the first `n` Users.
1857
+ */
1858
+ skip?: number
1859
+ distinct?: UserScalarFieldEnum | UserScalarFieldEnum[]
1860
+ }
1861
+
1862
+ /**
1863
+ * User create
1864
+ */
1865
+ export type UserCreateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1866
+ /**
1867
+ * Select specific fields to fetch from the User
1868
+ */
1869
+ select?: UserSelect<ExtArgs> | null
1870
+ /**
1871
+ * Omit specific fields from the User
1872
+ */
1873
+ omit?: UserOmit<ExtArgs> | null
1874
+ /**
1875
+ * Choose, which related nodes to fetch as well
1876
+ */
1877
+ include?: UserInclude<ExtArgs> | null
1878
+ /**
1879
+ * The data needed to create a User.
1880
+ */
1881
+ data: XOR<UserCreateInput, UserUncheckedCreateInput>
1882
+ }
1883
+
1884
+ /**
1885
+ * User createMany
1886
+ */
1887
+ export type UserCreateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1888
+ /**
1889
+ * The data used to create many Users.
1890
+ */
1891
+ data: UserCreateManyInput | UserCreateManyInput[]
1892
+ skipDuplicates?: boolean
1893
+ }
1894
+
1895
+ /**
1896
+ * User createManyAndReturn
1897
+ */
1898
+ export type UserCreateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1899
+ /**
1900
+ * Select specific fields to fetch from the User
1901
+ */
1902
+ select?: UserSelectCreateManyAndReturn<ExtArgs> | null
1903
+ /**
1904
+ * Omit specific fields from the User
1905
+ */
1906
+ omit?: UserOmit<ExtArgs> | null
1907
+ /**
1908
+ * The data used to create many Users.
1909
+ */
1910
+ data: UserCreateManyInput | UserCreateManyInput[]
1911
+ skipDuplicates?: boolean
1912
+ }
1913
+
1914
+ /**
1915
+ * User update
1916
+ */
1917
+ export type UserUpdateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1918
+ /**
1919
+ * Select specific fields to fetch from the User
1920
+ */
1921
+ select?: UserSelect<ExtArgs> | null
1922
+ /**
1923
+ * Omit specific fields from the User
1924
+ */
1925
+ omit?: UserOmit<ExtArgs> | null
1926
+ /**
1927
+ * Choose, which related nodes to fetch as well
1928
+ */
1929
+ include?: UserInclude<ExtArgs> | null
1930
+ /**
1931
+ * The data needed to update a User.
1932
+ */
1933
+ data: XOR<UserUpdateInput, UserUncheckedUpdateInput>
1934
+ /**
1935
+ * Choose, which User to update.
1936
+ */
1937
+ where: UserWhereUniqueInput
1938
+ }
1939
+
1940
+ /**
1941
+ * User updateMany
1942
+ */
1943
+ export type UserUpdateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1944
+ /**
1945
+ * The data used to update Users.
1946
+ */
1947
+ data: XOR<UserUpdateManyMutationInput, UserUncheckedUpdateManyInput>
1948
+ /**
1949
+ * Filter which Users to update
1950
+ */
1951
+ where?: UserWhereInput
1952
+ /**
1953
+ * Limit how many Users to update.
1954
+ */
1955
+ limit?: number
1956
+ }
1957
+
1958
+ /**
1959
+ * User updateManyAndReturn
1960
+ */
1961
+ export type UserUpdateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1962
+ /**
1963
+ * Select specific fields to fetch from the User
1964
+ */
1965
+ select?: UserSelectUpdateManyAndReturn<ExtArgs> | null
1966
+ /**
1967
+ * Omit specific fields from the User
1968
+ */
1969
+ omit?: UserOmit<ExtArgs> | null
1970
+ /**
1971
+ * The data used to update Users.
1972
+ */
1973
+ data: XOR<UserUpdateManyMutationInput, UserUncheckedUpdateManyInput>
1974
+ /**
1975
+ * Filter which Users to update
1976
+ */
1977
+ where?: UserWhereInput
1978
+ /**
1979
+ * Limit how many Users to update.
1980
+ */
1981
+ limit?: number
1982
+ }
1983
+
1984
+ /**
1985
+ * User upsert
1986
+ */
1987
+ export type UserUpsertArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
1988
+ /**
1989
+ * Select specific fields to fetch from the User
1990
+ */
1991
+ select?: UserSelect<ExtArgs> | null
1992
+ /**
1993
+ * Omit specific fields from the User
1994
+ */
1995
+ omit?: UserOmit<ExtArgs> | null
1996
+ /**
1997
+ * Choose, which related nodes to fetch as well
1998
+ */
1999
+ include?: UserInclude<ExtArgs> | null
2000
+ /**
2001
+ * The filter to search for the User to update in case it exists.
2002
+ */
2003
+ where: UserWhereUniqueInput
2004
+ /**
2005
+ * In case the User found by the `where` argument doesn't exist, create a new User with this data.
2006
+ */
2007
+ create: XOR<UserCreateInput, UserUncheckedCreateInput>
2008
+ /**
2009
+ * In case the User was found with the provided `where` argument, update it with this data.
2010
+ */
2011
+ update: XOR<UserUpdateInput, UserUncheckedUpdateInput>
2012
+ }
2013
+
2014
+ /**
2015
+ * User delete
2016
+ */
2017
+ export type UserDeleteArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2018
+ /**
2019
+ * Select specific fields to fetch from the User
2020
+ */
2021
+ select?: UserSelect<ExtArgs> | null
2022
+ /**
2023
+ * Omit specific fields from the User
2024
+ */
2025
+ omit?: UserOmit<ExtArgs> | null
2026
+ /**
2027
+ * Choose, which related nodes to fetch as well
2028
+ */
2029
+ include?: UserInclude<ExtArgs> | null
2030
+ /**
2031
+ * Filter which User to delete.
2032
+ */
2033
+ where: UserWhereUniqueInput
2034
+ }
2035
+
2036
+ /**
2037
+ * User deleteMany
2038
+ */
2039
+ export type UserDeleteManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2040
+ /**
2041
+ * Filter which Users to delete
2042
+ */
2043
+ where?: UserWhereInput
2044
+ /**
2045
+ * Limit how many Users to delete.
2046
+ */
2047
+ limit?: number
2048
+ }
2049
+
2050
+ /**
2051
+ * User.PasswordResetTokens
2052
+ */
2053
+ export type User$PasswordResetTokensArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2054
+ /**
2055
+ * Select specific fields to fetch from the PasswordResetToken
2056
+ */
2057
+ select?: PasswordResetTokenSelect<ExtArgs> | null
2058
+ /**
2059
+ * Omit specific fields from the PasswordResetToken
2060
+ */
2061
+ omit?: PasswordResetTokenOmit<ExtArgs> | null
2062
+ /**
2063
+ * Choose, which related nodes to fetch as well
2064
+ */
2065
+ include?: PasswordResetTokenInclude<ExtArgs> | null
2066
+ where?: PasswordResetTokenWhereInput
2067
+ orderBy?: PasswordResetTokenOrderByWithRelationInput | PasswordResetTokenOrderByWithRelationInput[]
2068
+ cursor?: PasswordResetTokenWhereUniqueInput
2069
+ take?: number
2070
+ skip?: number
2071
+ distinct?: PasswordResetTokenScalarFieldEnum | PasswordResetTokenScalarFieldEnum[]
2072
+ }
2073
+
2074
+ /**
2075
+ * User without action
2076
+ */
2077
+ export type UserDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2078
+ /**
2079
+ * Select specific fields to fetch from the User
2080
+ */
2081
+ select?: UserSelect<ExtArgs> | null
2082
+ /**
2083
+ * Omit specific fields from the User
2084
+ */
2085
+ omit?: UserOmit<ExtArgs> | null
2086
+ /**
2087
+ * Choose, which related nodes to fetch as well
2088
+ */
2089
+ include?: UserInclude<ExtArgs> | null
2090
+ }
2091
+
2092
+
2093
+ /**
2094
+ * Model PasswordResetToken
2095
+ */
2096
+
2097
+ export type AggregatePasswordResetToken = {
2098
+ _count: PasswordResetTokenCountAggregateOutputType | null
2099
+ _min: PasswordResetTokenMinAggregateOutputType | null
2100
+ _max: PasswordResetTokenMaxAggregateOutputType | null
2101
+ }
2102
+
2103
+ export type PasswordResetTokenMinAggregateOutputType = {
2104
+ id: string | null
2105
+ user_id: string | null
2106
+ reset_token: string | null
2107
+ expires_at: Date | null
2108
+ used: boolean | null
2109
+ }
2110
+
2111
+ export type PasswordResetTokenMaxAggregateOutputType = {
2112
+ id: string | null
2113
+ user_id: string | null
2114
+ reset_token: string | null
2115
+ expires_at: Date | null
2116
+ used: boolean | null
2117
+ }
2118
+
2119
+ export type PasswordResetTokenCountAggregateOutputType = {
2120
+ id: number
2121
+ user_id: number
2122
+ reset_token: number
2123
+ expires_at: number
2124
+ used: number
2125
+ _all: number
2126
+ }
2127
+
2128
+
2129
+ export type PasswordResetTokenMinAggregateInputType = {
2130
+ id?: true
2131
+ user_id?: true
2132
+ reset_token?: true
2133
+ expires_at?: true
2134
+ used?: true
2135
+ }
2136
+
2137
+ export type PasswordResetTokenMaxAggregateInputType = {
2138
+ id?: true
2139
+ user_id?: true
2140
+ reset_token?: true
2141
+ expires_at?: true
2142
+ used?: true
2143
+ }
2144
+
2145
+ export type PasswordResetTokenCountAggregateInputType = {
2146
+ id?: true
2147
+ user_id?: true
2148
+ reset_token?: true
2149
+ expires_at?: true
2150
+ used?: true
2151
+ _all?: true
2152
+ }
2153
+
2154
+ export type PasswordResetTokenAggregateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2155
+ /**
2156
+ * Filter which PasswordResetToken to aggregate.
2157
+ */
2158
+ where?: PasswordResetTokenWhereInput
2159
+ /**
2160
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
2161
+ *
2162
+ * Determine the order of PasswordResetTokens to fetch.
2163
+ */
2164
+ orderBy?: PasswordResetTokenOrderByWithRelationInput | PasswordResetTokenOrderByWithRelationInput[]
2165
+ /**
2166
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
2167
+ *
2168
+ * Sets the start position
2169
+ */
2170
+ cursor?: PasswordResetTokenWhereUniqueInput
2171
+ /**
2172
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
2173
+ *
2174
+ * Take `±n` PasswordResetTokens from the position of the cursor.
2175
+ */
2176
+ take?: number
2177
+ /**
2178
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
2179
+ *
2180
+ * Skip the first `n` PasswordResetTokens.
2181
+ */
2182
+ skip?: number
2183
+ /**
2184
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
2185
+ *
2186
+ * Count returned PasswordResetTokens
2187
+ **/
2188
+ _count?: true | PasswordResetTokenCountAggregateInputType
2189
+ /**
2190
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
2191
+ *
2192
+ * Select which fields to find the minimum value
2193
+ **/
2194
+ _min?: PasswordResetTokenMinAggregateInputType
2195
+ /**
2196
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
2197
+ *
2198
+ * Select which fields to find the maximum value
2199
+ **/
2200
+ _max?: PasswordResetTokenMaxAggregateInputType
2201
+ }
2202
+
2203
+ export type GetPasswordResetTokenAggregateType<T extends PasswordResetTokenAggregateArgs> = {
2204
+ [P in keyof T & keyof AggregatePasswordResetToken]: P extends '_count' | 'count'
2205
+ ? T[P] extends true
2206
+ ? number
2207
+ : GetScalarType<T[P], AggregatePasswordResetToken[P]>
2208
+ : GetScalarType<T[P], AggregatePasswordResetToken[P]>
2209
+ }
2210
+
2211
+
2212
+
2213
+
2214
+ export type PasswordResetTokenGroupByArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2215
+ where?: PasswordResetTokenWhereInput
2216
+ orderBy?: PasswordResetTokenOrderByWithAggregationInput | PasswordResetTokenOrderByWithAggregationInput[]
2217
+ by: PasswordResetTokenScalarFieldEnum[] | PasswordResetTokenScalarFieldEnum
2218
+ having?: PasswordResetTokenScalarWhereWithAggregatesInput
2219
+ take?: number
2220
+ skip?: number
2221
+ _count?: PasswordResetTokenCountAggregateInputType | true
2222
+ _min?: PasswordResetTokenMinAggregateInputType
2223
+ _max?: PasswordResetTokenMaxAggregateInputType
2224
+ }
2225
+
2226
+ export type PasswordResetTokenGroupByOutputType = {
2227
+ id: string
2228
+ user_id: string
2229
+ reset_token: string
2230
+ expires_at: Date
2231
+ used: boolean
2232
+ _count: PasswordResetTokenCountAggregateOutputType | null
2233
+ _min: PasswordResetTokenMinAggregateOutputType | null
2234
+ _max: PasswordResetTokenMaxAggregateOutputType | null
2235
+ }
2236
+
2237
+ type GetPasswordResetTokenGroupByPayload<T extends PasswordResetTokenGroupByArgs> = Prisma.PrismaPromise<
2238
+ Array<
2239
+ PickEnumerable<PasswordResetTokenGroupByOutputType, T['by']> &
2240
+ {
2241
+ [P in ((keyof T) & (keyof PasswordResetTokenGroupByOutputType))]: P extends '_count'
2242
+ ? T[P] extends boolean
2243
+ ? number
2244
+ : GetScalarType<T[P], PasswordResetTokenGroupByOutputType[P]>
2245
+ : GetScalarType<T[P], PasswordResetTokenGroupByOutputType[P]>
2246
+ }
2247
+ >
2248
+ >
2249
+
2250
+
2251
+ export type PasswordResetTokenSelect<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
2252
+ id?: boolean
2253
+ user_id?: boolean
2254
+ reset_token?: boolean
2255
+ expires_at?: boolean
2256
+ used?: boolean
2257
+ user?: boolean | UserDefaultArgs<ExtArgs>
2258
+ }, ExtArgs["result"]["passwordResetToken"]>
2259
+
2260
+ export type PasswordResetTokenSelectCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
2261
+ id?: boolean
2262
+ user_id?: boolean
2263
+ reset_token?: boolean
2264
+ expires_at?: boolean
2265
+ used?: boolean
2266
+ user?: boolean | UserDefaultArgs<ExtArgs>
2267
+ }, ExtArgs["result"]["passwordResetToken"]>
2268
+
2269
+ export type PasswordResetTokenSelectUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetSelect<{
2270
+ id?: boolean
2271
+ user_id?: boolean
2272
+ reset_token?: boolean
2273
+ expires_at?: boolean
2274
+ used?: boolean
2275
+ user?: boolean | UserDefaultArgs<ExtArgs>
2276
+ }, ExtArgs["result"]["passwordResetToken"]>
2277
+
2278
+ export type PasswordResetTokenSelectScalar = {
2279
+ id?: boolean
2280
+ user_id?: boolean
2281
+ reset_token?: boolean
2282
+ expires_at?: boolean
2283
+ used?: boolean
2284
+ }
2285
+
2286
+ export type PasswordResetTokenOmit<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = $Extensions.GetOmit<"id" | "user_id" | "reset_token" | "expires_at" | "used", ExtArgs["result"]["passwordResetToken"]>
2287
+ export type PasswordResetTokenInclude<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2288
+ user?: boolean | UserDefaultArgs<ExtArgs>
2289
+ }
2290
+ export type PasswordResetTokenIncludeCreateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2291
+ user?: boolean | UserDefaultArgs<ExtArgs>
2292
+ }
2293
+ export type PasswordResetTokenIncludeUpdateManyAndReturn<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2294
+ user?: boolean | UserDefaultArgs<ExtArgs>
2295
+ }
2296
+
2297
+ export type $PasswordResetTokenPayload<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2298
+ name: "PasswordResetToken"
2299
+ objects: {
2300
+ user: Prisma.$UserPayload<ExtArgs>
2301
+ }
2302
+ scalars: $Extensions.GetPayloadResult<{
2303
+ id: string
2304
+ user_id: string
2305
+ reset_token: string
2306
+ expires_at: Date
2307
+ used: boolean
2308
+ }, ExtArgs["result"]["passwordResetToken"]>
2309
+ composites: {}
2310
+ }
2311
+
2312
+ type PasswordResetTokenGetPayload<S extends boolean | null | undefined | PasswordResetTokenDefaultArgs> = $Result.GetResult<Prisma.$PasswordResetTokenPayload, S>
2313
+
2314
+ type PasswordResetTokenCountArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> =
2315
+ Omit<PasswordResetTokenFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
2316
+ select?: PasswordResetTokenCountAggregateInputType | true
2317
+ }
2318
+
2319
+ export interface PasswordResetTokenDelegate<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> {
2320
+ [K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['PasswordResetToken'], meta: { name: 'PasswordResetToken' } }
2321
+ /**
2322
+ * Find zero or one PasswordResetToken that matches the filter.
2323
+ * @param {PasswordResetTokenFindUniqueArgs} args - Arguments to find a PasswordResetToken
2324
+ * @example
2325
+ * // Get one PasswordResetToken
2326
+ * const passwordResetToken = await prisma.passwordResetToken.findUnique({
2327
+ * where: {
2328
+ * // ... provide filter here
2329
+ * }
2330
+ * })
2331
+ */
2332
+ findUnique<T extends PasswordResetTokenFindUniqueArgs>(args: SelectSubset<T, PasswordResetTokenFindUniqueArgs<ExtArgs>>): Prisma__PasswordResetTokenClient<$Result.GetResult<Prisma.$PasswordResetTokenPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
2333
+
2334
+ /**
2335
+ * Find one PasswordResetToken that matches the filter or throw an error with `error.code='P2025'`
2336
+ * if no matches were found.
2337
+ * @param {PasswordResetTokenFindUniqueOrThrowArgs} args - Arguments to find a PasswordResetToken
2338
+ * @example
2339
+ * // Get one PasswordResetToken
2340
+ * const passwordResetToken = await prisma.passwordResetToken.findUniqueOrThrow({
2341
+ * where: {
2342
+ * // ... provide filter here
2343
+ * }
2344
+ * })
2345
+ */
2346
+ findUniqueOrThrow<T extends PasswordResetTokenFindUniqueOrThrowArgs>(args: SelectSubset<T, PasswordResetTokenFindUniqueOrThrowArgs<ExtArgs>>): Prisma__PasswordResetTokenClient<$Result.GetResult<Prisma.$PasswordResetTokenPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
2347
+
2348
+ /**
2349
+ * Find the first PasswordResetToken that matches the filter.
2350
+ * Note, that providing `undefined` is treated as the value not being there.
2351
+ * Read more here: https://pris.ly/d/null-undefined
2352
+ * @param {PasswordResetTokenFindFirstArgs} args - Arguments to find a PasswordResetToken
2353
+ * @example
2354
+ * // Get one PasswordResetToken
2355
+ * const passwordResetToken = await prisma.passwordResetToken.findFirst({
2356
+ * where: {
2357
+ * // ... provide filter here
2358
+ * }
2359
+ * })
2360
+ */
2361
+ findFirst<T extends PasswordResetTokenFindFirstArgs>(args?: SelectSubset<T, PasswordResetTokenFindFirstArgs<ExtArgs>>): Prisma__PasswordResetTokenClient<$Result.GetResult<Prisma.$PasswordResetTokenPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
2362
+
2363
+ /**
2364
+ * Find the first PasswordResetToken that matches the filter or
2365
+ * throw `PrismaKnownClientError` with `P2025` code if no matches were found.
2366
+ * Note, that providing `undefined` is treated as the value not being there.
2367
+ * Read more here: https://pris.ly/d/null-undefined
2368
+ * @param {PasswordResetTokenFindFirstOrThrowArgs} args - Arguments to find a PasswordResetToken
2369
+ * @example
2370
+ * // Get one PasswordResetToken
2371
+ * const passwordResetToken = await prisma.passwordResetToken.findFirstOrThrow({
2372
+ * where: {
2373
+ * // ... provide filter here
2374
+ * }
2375
+ * })
2376
+ */
2377
+ findFirstOrThrow<T extends PasswordResetTokenFindFirstOrThrowArgs>(args?: SelectSubset<T, PasswordResetTokenFindFirstOrThrowArgs<ExtArgs>>): Prisma__PasswordResetTokenClient<$Result.GetResult<Prisma.$PasswordResetTokenPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
2378
+
2379
+ /**
2380
+ * Find zero or more PasswordResetTokens that matches the filter.
2381
+ * Note, that providing `undefined` is treated as the value not being there.
2382
+ * Read more here: https://pris.ly/d/null-undefined
2383
+ * @param {PasswordResetTokenFindManyArgs} args - Arguments to filter and select certain fields only.
2384
+ * @example
2385
+ * // Get all PasswordResetTokens
2386
+ * const passwordResetTokens = await prisma.passwordResetToken.findMany()
2387
+ *
2388
+ * // Get first 10 PasswordResetTokens
2389
+ * const passwordResetTokens = await prisma.passwordResetToken.findMany({ take: 10 })
2390
+ *
2391
+ * // Only select the `id`
2392
+ * const passwordResetTokenWithIdOnly = await prisma.passwordResetToken.findMany({ select: { id: true } })
2393
+ *
2394
+ */
2395
+ findMany<T extends PasswordResetTokenFindManyArgs>(args?: SelectSubset<T, PasswordResetTokenFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$PasswordResetTokenPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
2396
+
2397
+ /**
2398
+ * Create a PasswordResetToken.
2399
+ * @param {PasswordResetTokenCreateArgs} args - Arguments to create a PasswordResetToken.
2400
+ * @example
2401
+ * // Create one PasswordResetToken
2402
+ * const PasswordResetToken = await prisma.passwordResetToken.create({
2403
+ * data: {
2404
+ * // ... data to create a PasswordResetToken
2405
+ * }
2406
+ * })
2407
+ *
2408
+ */
2409
+ create<T extends PasswordResetTokenCreateArgs>(args: SelectSubset<T, PasswordResetTokenCreateArgs<ExtArgs>>): Prisma__PasswordResetTokenClient<$Result.GetResult<Prisma.$PasswordResetTokenPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
2410
+
2411
+ /**
2412
+ * Create many PasswordResetTokens.
2413
+ * @param {PasswordResetTokenCreateManyArgs} args - Arguments to create many PasswordResetTokens.
2414
+ * @example
2415
+ * // Create many PasswordResetTokens
2416
+ * const passwordResetToken = await prisma.passwordResetToken.createMany({
2417
+ * data: [
2418
+ * // ... provide data here
2419
+ * ]
2420
+ * })
2421
+ *
2422
+ */
2423
+ createMany<T extends PasswordResetTokenCreateManyArgs>(args?: SelectSubset<T, PasswordResetTokenCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
2424
+
2425
+ /**
2426
+ * Create many PasswordResetTokens and returns the data saved in the database.
2427
+ * @param {PasswordResetTokenCreateManyAndReturnArgs} args - Arguments to create many PasswordResetTokens.
2428
+ * @example
2429
+ * // Create many PasswordResetTokens
2430
+ * const passwordResetToken = await prisma.passwordResetToken.createManyAndReturn({
2431
+ * data: [
2432
+ * // ... provide data here
2433
+ * ]
2434
+ * })
2435
+ *
2436
+ * // Create many PasswordResetTokens and only return the `id`
2437
+ * const passwordResetTokenWithIdOnly = await prisma.passwordResetToken.createManyAndReturn({
2438
+ * select: { id: true },
2439
+ * data: [
2440
+ * // ... provide data here
2441
+ * ]
2442
+ * })
2443
+ * Note, that providing `undefined` is treated as the value not being there.
2444
+ * Read more here: https://pris.ly/d/null-undefined
2445
+ *
2446
+ */
2447
+ createManyAndReturn<T extends PasswordResetTokenCreateManyAndReturnArgs>(args?: SelectSubset<T, PasswordResetTokenCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$PasswordResetTokenPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
2448
+
2449
+ /**
2450
+ * Delete a PasswordResetToken.
2451
+ * @param {PasswordResetTokenDeleteArgs} args - Arguments to delete one PasswordResetToken.
2452
+ * @example
2453
+ * // Delete one PasswordResetToken
2454
+ * const PasswordResetToken = await prisma.passwordResetToken.delete({
2455
+ * where: {
2456
+ * // ... filter to delete one PasswordResetToken
2457
+ * }
2458
+ * })
2459
+ *
2460
+ */
2461
+ delete<T extends PasswordResetTokenDeleteArgs>(args: SelectSubset<T, PasswordResetTokenDeleteArgs<ExtArgs>>): Prisma__PasswordResetTokenClient<$Result.GetResult<Prisma.$PasswordResetTokenPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
2462
+
2463
+ /**
2464
+ * Update one PasswordResetToken.
2465
+ * @param {PasswordResetTokenUpdateArgs} args - Arguments to update one PasswordResetToken.
2466
+ * @example
2467
+ * // Update one PasswordResetToken
2468
+ * const passwordResetToken = await prisma.passwordResetToken.update({
2469
+ * where: {
2470
+ * // ... provide filter here
2471
+ * },
2472
+ * data: {
2473
+ * // ... provide data here
2474
+ * }
2475
+ * })
2476
+ *
2477
+ */
2478
+ update<T extends PasswordResetTokenUpdateArgs>(args: SelectSubset<T, PasswordResetTokenUpdateArgs<ExtArgs>>): Prisma__PasswordResetTokenClient<$Result.GetResult<Prisma.$PasswordResetTokenPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
2479
+
2480
+ /**
2481
+ * Delete zero or more PasswordResetTokens.
2482
+ * @param {PasswordResetTokenDeleteManyArgs} args - Arguments to filter PasswordResetTokens to delete.
2483
+ * @example
2484
+ * // Delete a few PasswordResetTokens
2485
+ * const { count } = await prisma.passwordResetToken.deleteMany({
2486
+ * where: {
2487
+ * // ... provide filter here
2488
+ * }
2489
+ * })
2490
+ *
2491
+ */
2492
+ deleteMany<T extends PasswordResetTokenDeleteManyArgs>(args?: SelectSubset<T, PasswordResetTokenDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
2493
+
2494
+ /**
2495
+ * Update zero or more PasswordResetTokens.
2496
+ * Note, that providing `undefined` is treated as the value not being there.
2497
+ * Read more here: https://pris.ly/d/null-undefined
2498
+ * @param {PasswordResetTokenUpdateManyArgs} args - Arguments to update one or more rows.
2499
+ * @example
2500
+ * // Update many PasswordResetTokens
2501
+ * const passwordResetToken = await prisma.passwordResetToken.updateMany({
2502
+ * where: {
2503
+ * // ... provide filter here
2504
+ * },
2505
+ * data: {
2506
+ * // ... provide data here
2507
+ * }
2508
+ * })
2509
+ *
2510
+ */
2511
+ updateMany<T extends PasswordResetTokenUpdateManyArgs>(args: SelectSubset<T, PasswordResetTokenUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<BatchPayload>
2512
+
2513
+ /**
2514
+ * Update zero or more PasswordResetTokens and returns the data updated in the database.
2515
+ * @param {PasswordResetTokenUpdateManyAndReturnArgs} args - Arguments to update many PasswordResetTokens.
2516
+ * @example
2517
+ * // Update many PasswordResetTokens
2518
+ * const passwordResetToken = await prisma.passwordResetToken.updateManyAndReturn({
2519
+ * where: {
2520
+ * // ... provide filter here
2521
+ * },
2522
+ * data: [
2523
+ * // ... provide data here
2524
+ * ]
2525
+ * })
2526
+ *
2527
+ * // Update zero or more PasswordResetTokens and only return the `id`
2528
+ * const passwordResetTokenWithIdOnly = await prisma.passwordResetToken.updateManyAndReturn({
2529
+ * select: { id: true },
2530
+ * where: {
2531
+ * // ... provide filter here
2532
+ * },
2533
+ * data: [
2534
+ * // ... provide data here
2535
+ * ]
2536
+ * })
2537
+ * Note, that providing `undefined` is treated as the value not being there.
2538
+ * Read more here: https://pris.ly/d/null-undefined
2539
+ *
2540
+ */
2541
+ updateManyAndReturn<T extends PasswordResetTokenUpdateManyAndReturnArgs>(args: SelectSubset<T, PasswordResetTokenUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<$Result.GetResult<Prisma.$PasswordResetTokenPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
2542
+
2543
+ /**
2544
+ * Create or update one PasswordResetToken.
2545
+ * @param {PasswordResetTokenUpsertArgs} args - Arguments to update or create a PasswordResetToken.
2546
+ * @example
2547
+ * // Update or create a PasswordResetToken
2548
+ * const passwordResetToken = await prisma.passwordResetToken.upsert({
2549
+ * create: {
2550
+ * // ... data to create a PasswordResetToken
2551
+ * },
2552
+ * update: {
2553
+ * // ... in case it already exists, update
2554
+ * },
2555
+ * where: {
2556
+ * // ... the filter for the PasswordResetToken we want to update
2557
+ * }
2558
+ * })
2559
+ */
2560
+ upsert<T extends PasswordResetTokenUpsertArgs>(args: SelectSubset<T, PasswordResetTokenUpsertArgs<ExtArgs>>): Prisma__PasswordResetTokenClient<$Result.GetResult<Prisma.$PasswordResetTokenPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
2561
+
2562
+
2563
+ /**
2564
+ * Count the number of PasswordResetTokens.
2565
+ * Note, that providing `undefined` is treated as the value not being there.
2566
+ * Read more here: https://pris.ly/d/null-undefined
2567
+ * @param {PasswordResetTokenCountArgs} args - Arguments to filter PasswordResetTokens to count.
2568
+ * @example
2569
+ * // Count the number of PasswordResetTokens
2570
+ * const count = await prisma.passwordResetToken.count({
2571
+ * where: {
2572
+ * // ... the filter for the PasswordResetTokens we want to count
2573
+ * }
2574
+ * })
2575
+ **/
2576
+ count<T extends PasswordResetTokenCountArgs>(
2577
+ args?: Subset<T, PasswordResetTokenCountArgs>,
2578
+ ): Prisma.PrismaPromise<
2579
+ T extends $Utils.Record<'select', any>
2580
+ ? T['select'] extends true
2581
+ ? number
2582
+ : GetScalarType<T['select'], PasswordResetTokenCountAggregateOutputType>
2583
+ : number
2584
+ >
2585
+
2586
+ /**
2587
+ * Allows you to perform aggregations operations on a PasswordResetToken.
2588
+ * Note, that providing `undefined` is treated as the value not being there.
2589
+ * Read more here: https://pris.ly/d/null-undefined
2590
+ * @param {PasswordResetTokenAggregateArgs} args - Select which aggregations you would like to apply and on what fields.
2591
+ * @example
2592
+ * // Ordered by age ascending
2593
+ * // Where email contains prisma.io
2594
+ * // Limited to the 10 users
2595
+ * const aggregations = await prisma.user.aggregate({
2596
+ * _avg: {
2597
+ * age: true,
2598
+ * },
2599
+ * where: {
2600
+ * email: {
2601
+ * contains: "prisma.io",
2602
+ * },
2603
+ * },
2604
+ * orderBy: {
2605
+ * age: "asc",
2606
+ * },
2607
+ * take: 10,
2608
+ * })
2609
+ **/
2610
+ aggregate<T extends PasswordResetTokenAggregateArgs>(args: Subset<T, PasswordResetTokenAggregateArgs>): Prisma.PrismaPromise<GetPasswordResetTokenAggregateType<T>>
2611
+
2612
+ /**
2613
+ * Group by PasswordResetToken.
2614
+ * Note, that providing `undefined` is treated as the value not being there.
2615
+ * Read more here: https://pris.ly/d/null-undefined
2616
+ * @param {PasswordResetTokenGroupByArgs} args - Group by arguments.
2617
+ * @example
2618
+ * // Group by city, order by createdAt, get count
2619
+ * const result = await prisma.user.groupBy({
2620
+ * by: ['city', 'createdAt'],
2621
+ * orderBy: {
2622
+ * createdAt: true
2623
+ * },
2624
+ * _count: {
2625
+ * _all: true
2626
+ * },
2627
+ * })
2628
+ *
2629
+ **/
2630
+ groupBy<
2631
+ T extends PasswordResetTokenGroupByArgs,
2632
+ HasSelectOrTake extends Or<
2633
+ Extends<'skip', Keys<T>>,
2634
+ Extends<'take', Keys<T>>
2635
+ >,
2636
+ OrderByArg extends True extends HasSelectOrTake
2637
+ ? { orderBy: PasswordResetTokenGroupByArgs['orderBy'] }
2638
+ : { orderBy?: PasswordResetTokenGroupByArgs['orderBy'] },
2639
+ OrderFields extends ExcludeUnderscoreKeys<Keys<MaybeTupleToUnion<T['orderBy']>>>,
2640
+ ByFields extends MaybeTupleToUnion<T['by']>,
2641
+ ByValid extends Has<ByFields, OrderFields>,
2642
+ HavingFields extends GetHavingFields<T['having']>,
2643
+ HavingValid extends Has<ByFields, HavingFields>,
2644
+ ByEmpty extends T['by'] extends never[] ? True : False,
2645
+ InputErrors extends ByEmpty extends True
2646
+ ? `Error: "by" must not be empty.`
2647
+ : HavingValid extends False
2648
+ ? {
2649
+ [P in HavingFields]: P extends ByFields
2650
+ ? never
2651
+ : P extends string
2652
+ ? `Error: Field "${P}" used in "having" needs to be provided in "by".`
2653
+ : [
2654
+ Error,
2655
+ 'Field ',
2656
+ P,
2657
+ ` in "having" needs to be provided in "by"`,
2658
+ ]
2659
+ }[HavingFields]
2660
+ : 'take' extends Keys<T>
2661
+ ? 'orderBy' extends Keys<T>
2662
+ ? ByValid extends True
2663
+ ? {}
2664
+ : {
2665
+ [P in OrderFields]: P extends ByFields
2666
+ ? never
2667
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
2668
+ }[OrderFields]
2669
+ : 'Error: If you provide "take", you also need to provide "orderBy"'
2670
+ : 'skip' extends Keys<T>
2671
+ ? 'orderBy' extends Keys<T>
2672
+ ? ByValid extends True
2673
+ ? {}
2674
+ : {
2675
+ [P in OrderFields]: P extends ByFields
2676
+ ? never
2677
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
2678
+ }[OrderFields]
2679
+ : 'Error: If you provide "skip", you also need to provide "orderBy"'
2680
+ : ByValid extends True
2681
+ ? {}
2682
+ : {
2683
+ [P in OrderFields]: P extends ByFields
2684
+ ? never
2685
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
2686
+ }[OrderFields]
2687
+ >(args: SubsetIntersection<T, PasswordResetTokenGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetPasswordResetTokenGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
2688
+ /**
2689
+ * Fields of the PasswordResetToken model
2690
+ */
2691
+ readonly fields: PasswordResetTokenFieldRefs;
2692
+ }
2693
+
2694
+ /**
2695
+ * The delegate class that acts as a "Promise-like" for PasswordResetToken.
2696
+ * Why is this prefixed with `Prisma__`?
2697
+ * Because we want to prevent naming conflicts as mentioned in
2698
+ * https://github.com/prisma/prisma-client-js/issues/707
2699
+ */
2700
+ export interface Prisma__PasswordResetTokenClient<T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
2701
+ readonly [Symbol.toStringTag]: "PrismaPromise"
2702
+ user<T extends UserDefaultArgs<ExtArgs> = {}>(args?: Subset<T, UserDefaultArgs<ExtArgs>>): Prisma__UserClient<$Result.GetResult<Prisma.$UserPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions>
2703
+ /**
2704
+ * Attaches callbacks for the resolution and/or rejection of the Promise.
2705
+ * @param onfulfilled The callback to execute when the Promise is resolved.
2706
+ * @param onrejected The callback to execute when the Promise is rejected.
2707
+ * @returns A Promise for the completion of which ever callback is executed.
2708
+ */
2709
+ then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): $Utils.JsPromise<TResult1 | TResult2>
2710
+ /**
2711
+ * Attaches a callback for only the rejection of the Promise.
2712
+ * @param onrejected The callback to execute when the Promise is rejected.
2713
+ * @returns A Promise for the completion of the callback.
2714
+ */
2715
+ catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null): $Utils.JsPromise<T | TResult>
2716
+ /**
2717
+ * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The
2718
+ * resolved value cannot be modified from the callback.
2719
+ * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).
2720
+ * @returns A Promise for the completion of the callback.
2721
+ */
2722
+ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise<T>
2723
+ }
2724
+
2725
+
2726
+
2727
+
2728
+ /**
2729
+ * Fields of the PasswordResetToken model
2730
+ */
2731
+ interface PasswordResetTokenFieldRefs {
2732
+ readonly id: FieldRef<"PasswordResetToken", 'String'>
2733
+ readonly user_id: FieldRef<"PasswordResetToken", 'String'>
2734
+ readonly reset_token: FieldRef<"PasswordResetToken", 'String'>
2735
+ readonly expires_at: FieldRef<"PasswordResetToken", 'DateTime'>
2736
+ readonly used: FieldRef<"PasswordResetToken", 'Boolean'>
2737
+ }
2738
+
2739
+
2740
+ // Custom InputTypes
2741
+ /**
2742
+ * PasswordResetToken findUnique
2743
+ */
2744
+ export type PasswordResetTokenFindUniqueArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2745
+ /**
2746
+ * Select specific fields to fetch from the PasswordResetToken
2747
+ */
2748
+ select?: PasswordResetTokenSelect<ExtArgs> | null
2749
+ /**
2750
+ * Omit specific fields from the PasswordResetToken
2751
+ */
2752
+ omit?: PasswordResetTokenOmit<ExtArgs> | null
2753
+ /**
2754
+ * Choose, which related nodes to fetch as well
2755
+ */
2756
+ include?: PasswordResetTokenInclude<ExtArgs> | null
2757
+ /**
2758
+ * Filter, which PasswordResetToken to fetch.
2759
+ */
2760
+ where: PasswordResetTokenWhereUniqueInput
2761
+ }
2762
+
2763
+ /**
2764
+ * PasswordResetToken findUniqueOrThrow
2765
+ */
2766
+ export type PasswordResetTokenFindUniqueOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2767
+ /**
2768
+ * Select specific fields to fetch from the PasswordResetToken
2769
+ */
2770
+ select?: PasswordResetTokenSelect<ExtArgs> | null
2771
+ /**
2772
+ * Omit specific fields from the PasswordResetToken
2773
+ */
2774
+ omit?: PasswordResetTokenOmit<ExtArgs> | null
2775
+ /**
2776
+ * Choose, which related nodes to fetch as well
2777
+ */
2778
+ include?: PasswordResetTokenInclude<ExtArgs> | null
2779
+ /**
2780
+ * Filter, which PasswordResetToken to fetch.
2781
+ */
2782
+ where: PasswordResetTokenWhereUniqueInput
2783
+ }
2784
+
2785
+ /**
2786
+ * PasswordResetToken findFirst
2787
+ */
2788
+ export type PasswordResetTokenFindFirstArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2789
+ /**
2790
+ * Select specific fields to fetch from the PasswordResetToken
2791
+ */
2792
+ select?: PasswordResetTokenSelect<ExtArgs> | null
2793
+ /**
2794
+ * Omit specific fields from the PasswordResetToken
2795
+ */
2796
+ omit?: PasswordResetTokenOmit<ExtArgs> | null
2797
+ /**
2798
+ * Choose, which related nodes to fetch as well
2799
+ */
2800
+ include?: PasswordResetTokenInclude<ExtArgs> | null
2801
+ /**
2802
+ * Filter, which PasswordResetToken to fetch.
2803
+ */
2804
+ where?: PasswordResetTokenWhereInput
2805
+ /**
2806
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
2807
+ *
2808
+ * Determine the order of PasswordResetTokens to fetch.
2809
+ */
2810
+ orderBy?: PasswordResetTokenOrderByWithRelationInput | PasswordResetTokenOrderByWithRelationInput[]
2811
+ /**
2812
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
2813
+ *
2814
+ * Sets the position for searching for PasswordResetTokens.
2815
+ */
2816
+ cursor?: PasswordResetTokenWhereUniqueInput
2817
+ /**
2818
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
2819
+ *
2820
+ * Take `±n` PasswordResetTokens from the position of the cursor.
2821
+ */
2822
+ take?: number
2823
+ /**
2824
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
2825
+ *
2826
+ * Skip the first `n` PasswordResetTokens.
2827
+ */
2828
+ skip?: number
2829
+ /**
2830
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
2831
+ *
2832
+ * Filter by unique combinations of PasswordResetTokens.
2833
+ */
2834
+ distinct?: PasswordResetTokenScalarFieldEnum | PasswordResetTokenScalarFieldEnum[]
2835
+ }
2836
+
2837
+ /**
2838
+ * PasswordResetToken findFirstOrThrow
2839
+ */
2840
+ export type PasswordResetTokenFindFirstOrThrowArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2841
+ /**
2842
+ * Select specific fields to fetch from the PasswordResetToken
2843
+ */
2844
+ select?: PasswordResetTokenSelect<ExtArgs> | null
2845
+ /**
2846
+ * Omit specific fields from the PasswordResetToken
2847
+ */
2848
+ omit?: PasswordResetTokenOmit<ExtArgs> | null
2849
+ /**
2850
+ * Choose, which related nodes to fetch as well
2851
+ */
2852
+ include?: PasswordResetTokenInclude<ExtArgs> | null
2853
+ /**
2854
+ * Filter, which PasswordResetToken to fetch.
2855
+ */
2856
+ where?: PasswordResetTokenWhereInput
2857
+ /**
2858
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
2859
+ *
2860
+ * Determine the order of PasswordResetTokens to fetch.
2861
+ */
2862
+ orderBy?: PasswordResetTokenOrderByWithRelationInput | PasswordResetTokenOrderByWithRelationInput[]
2863
+ /**
2864
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
2865
+ *
2866
+ * Sets the position for searching for PasswordResetTokens.
2867
+ */
2868
+ cursor?: PasswordResetTokenWhereUniqueInput
2869
+ /**
2870
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
2871
+ *
2872
+ * Take `±n` PasswordResetTokens from the position of the cursor.
2873
+ */
2874
+ take?: number
2875
+ /**
2876
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
2877
+ *
2878
+ * Skip the first `n` PasswordResetTokens.
2879
+ */
2880
+ skip?: number
2881
+ /**
2882
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
2883
+ *
2884
+ * Filter by unique combinations of PasswordResetTokens.
2885
+ */
2886
+ distinct?: PasswordResetTokenScalarFieldEnum | PasswordResetTokenScalarFieldEnum[]
2887
+ }
2888
+
2889
+ /**
2890
+ * PasswordResetToken findMany
2891
+ */
2892
+ export type PasswordResetTokenFindManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2893
+ /**
2894
+ * Select specific fields to fetch from the PasswordResetToken
2895
+ */
2896
+ select?: PasswordResetTokenSelect<ExtArgs> | null
2897
+ /**
2898
+ * Omit specific fields from the PasswordResetToken
2899
+ */
2900
+ omit?: PasswordResetTokenOmit<ExtArgs> | null
2901
+ /**
2902
+ * Choose, which related nodes to fetch as well
2903
+ */
2904
+ include?: PasswordResetTokenInclude<ExtArgs> | null
2905
+ /**
2906
+ * Filter, which PasswordResetTokens to fetch.
2907
+ */
2908
+ where?: PasswordResetTokenWhereInput
2909
+ /**
2910
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
2911
+ *
2912
+ * Determine the order of PasswordResetTokens to fetch.
2913
+ */
2914
+ orderBy?: PasswordResetTokenOrderByWithRelationInput | PasswordResetTokenOrderByWithRelationInput[]
2915
+ /**
2916
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
2917
+ *
2918
+ * Sets the position for listing PasswordResetTokens.
2919
+ */
2920
+ cursor?: PasswordResetTokenWhereUniqueInput
2921
+ /**
2922
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
2923
+ *
2924
+ * Take `±n` PasswordResetTokens from the position of the cursor.
2925
+ */
2926
+ take?: number
2927
+ /**
2928
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
2929
+ *
2930
+ * Skip the first `n` PasswordResetTokens.
2931
+ */
2932
+ skip?: number
2933
+ distinct?: PasswordResetTokenScalarFieldEnum | PasswordResetTokenScalarFieldEnum[]
2934
+ }
2935
+
2936
+ /**
2937
+ * PasswordResetToken create
2938
+ */
2939
+ export type PasswordResetTokenCreateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2940
+ /**
2941
+ * Select specific fields to fetch from the PasswordResetToken
2942
+ */
2943
+ select?: PasswordResetTokenSelect<ExtArgs> | null
2944
+ /**
2945
+ * Omit specific fields from the PasswordResetToken
2946
+ */
2947
+ omit?: PasswordResetTokenOmit<ExtArgs> | null
2948
+ /**
2949
+ * Choose, which related nodes to fetch as well
2950
+ */
2951
+ include?: PasswordResetTokenInclude<ExtArgs> | null
2952
+ /**
2953
+ * The data needed to create a PasswordResetToken.
2954
+ */
2955
+ data: XOR<PasswordResetTokenCreateInput, PasswordResetTokenUncheckedCreateInput>
2956
+ }
2957
+
2958
+ /**
2959
+ * PasswordResetToken createMany
2960
+ */
2961
+ export type PasswordResetTokenCreateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2962
+ /**
2963
+ * The data used to create many PasswordResetTokens.
2964
+ */
2965
+ data: PasswordResetTokenCreateManyInput | PasswordResetTokenCreateManyInput[]
2966
+ skipDuplicates?: boolean
2967
+ }
2968
+
2969
+ /**
2970
+ * PasswordResetToken createManyAndReturn
2971
+ */
2972
+ export type PasswordResetTokenCreateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2973
+ /**
2974
+ * Select specific fields to fetch from the PasswordResetToken
2975
+ */
2976
+ select?: PasswordResetTokenSelectCreateManyAndReturn<ExtArgs> | null
2977
+ /**
2978
+ * Omit specific fields from the PasswordResetToken
2979
+ */
2980
+ omit?: PasswordResetTokenOmit<ExtArgs> | null
2981
+ /**
2982
+ * The data used to create many PasswordResetTokens.
2983
+ */
2984
+ data: PasswordResetTokenCreateManyInput | PasswordResetTokenCreateManyInput[]
2985
+ skipDuplicates?: boolean
2986
+ /**
2987
+ * Choose, which related nodes to fetch as well
2988
+ */
2989
+ include?: PasswordResetTokenIncludeCreateManyAndReturn<ExtArgs> | null
2990
+ }
2991
+
2992
+ /**
2993
+ * PasswordResetToken update
2994
+ */
2995
+ export type PasswordResetTokenUpdateArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
2996
+ /**
2997
+ * Select specific fields to fetch from the PasswordResetToken
2998
+ */
2999
+ select?: PasswordResetTokenSelect<ExtArgs> | null
3000
+ /**
3001
+ * Omit specific fields from the PasswordResetToken
3002
+ */
3003
+ omit?: PasswordResetTokenOmit<ExtArgs> | null
3004
+ /**
3005
+ * Choose, which related nodes to fetch as well
3006
+ */
3007
+ include?: PasswordResetTokenInclude<ExtArgs> | null
3008
+ /**
3009
+ * The data needed to update a PasswordResetToken.
3010
+ */
3011
+ data: XOR<PasswordResetTokenUpdateInput, PasswordResetTokenUncheckedUpdateInput>
3012
+ /**
3013
+ * Choose, which PasswordResetToken to update.
3014
+ */
3015
+ where: PasswordResetTokenWhereUniqueInput
3016
+ }
3017
+
3018
+ /**
3019
+ * PasswordResetToken updateMany
3020
+ */
3021
+ export type PasswordResetTokenUpdateManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
3022
+ /**
3023
+ * The data used to update PasswordResetTokens.
3024
+ */
3025
+ data: XOR<PasswordResetTokenUpdateManyMutationInput, PasswordResetTokenUncheckedUpdateManyInput>
3026
+ /**
3027
+ * Filter which PasswordResetTokens to update
3028
+ */
3029
+ where?: PasswordResetTokenWhereInput
3030
+ /**
3031
+ * Limit how many PasswordResetTokens to update.
3032
+ */
3033
+ limit?: number
3034
+ }
3035
+
3036
+ /**
3037
+ * PasswordResetToken updateManyAndReturn
3038
+ */
3039
+ export type PasswordResetTokenUpdateManyAndReturnArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
3040
+ /**
3041
+ * Select specific fields to fetch from the PasswordResetToken
3042
+ */
3043
+ select?: PasswordResetTokenSelectUpdateManyAndReturn<ExtArgs> | null
3044
+ /**
3045
+ * Omit specific fields from the PasswordResetToken
3046
+ */
3047
+ omit?: PasswordResetTokenOmit<ExtArgs> | null
3048
+ /**
3049
+ * The data used to update PasswordResetTokens.
3050
+ */
3051
+ data: XOR<PasswordResetTokenUpdateManyMutationInput, PasswordResetTokenUncheckedUpdateManyInput>
3052
+ /**
3053
+ * Filter which PasswordResetTokens to update
3054
+ */
3055
+ where?: PasswordResetTokenWhereInput
3056
+ /**
3057
+ * Limit how many PasswordResetTokens to update.
3058
+ */
3059
+ limit?: number
3060
+ /**
3061
+ * Choose, which related nodes to fetch as well
3062
+ */
3063
+ include?: PasswordResetTokenIncludeUpdateManyAndReturn<ExtArgs> | null
3064
+ }
3065
+
3066
+ /**
3067
+ * PasswordResetToken upsert
3068
+ */
3069
+ export type PasswordResetTokenUpsertArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
3070
+ /**
3071
+ * Select specific fields to fetch from the PasswordResetToken
3072
+ */
3073
+ select?: PasswordResetTokenSelect<ExtArgs> | null
3074
+ /**
3075
+ * Omit specific fields from the PasswordResetToken
3076
+ */
3077
+ omit?: PasswordResetTokenOmit<ExtArgs> | null
3078
+ /**
3079
+ * Choose, which related nodes to fetch as well
3080
+ */
3081
+ include?: PasswordResetTokenInclude<ExtArgs> | null
3082
+ /**
3083
+ * The filter to search for the PasswordResetToken to update in case it exists.
3084
+ */
3085
+ where: PasswordResetTokenWhereUniqueInput
3086
+ /**
3087
+ * In case the PasswordResetToken found by the `where` argument doesn't exist, create a new PasswordResetToken with this data.
3088
+ */
3089
+ create: XOR<PasswordResetTokenCreateInput, PasswordResetTokenUncheckedCreateInput>
3090
+ /**
3091
+ * In case the PasswordResetToken was found with the provided `where` argument, update it with this data.
3092
+ */
3093
+ update: XOR<PasswordResetTokenUpdateInput, PasswordResetTokenUncheckedUpdateInput>
3094
+ }
3095
+
3096
+ /**
3097
+ * PasswordResetToken delete
3098
+ */
3099
+ export type PasswordResetTokenDeleteArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
3100
+ /**
3101
+ * Select specific fields to fetch from the PasswordResetToken
3102
+ */
3103
+ select?: PasswordResetTokenSelect<ExtArgs> | null
3104
+ /**
3105
+ * Omit specific fields from the PasswordResetToken
3106
+ */
3107
+ omit?: PasswordResetTokenOmit<ExtArgs> | null
3108
+ /**
3109
+ * Choose, which related nodes to fetch as well
3110
+ */
3111
+ include?: PasswordResetTokenInclude<ExtArgs> | null
3112
+ /**
3113
+ * Filter which PasswordResetToken to delete.
3114
+ */
3115
+ where: PasswordResetTokenWhereUniqueInput
3116
+ }
3117
+
3118
+ /**
3119
+ * PasswordResetToken deleteMany
3120
+ */
3121
+ export type PasswordResetTokenDeleteManyArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
3122
+ /**
3123
+ * Filter which PasswordResetTokens to delete
3124
+ */
3125
+ where?: PasswordResetTokenWhereInput
3126
+ /**
3127
+ * Limit how many PasswordResetTokens to delete.
3128
+ */
3129
+ limit?: number
3130
+ }
3131
+
3132
+ /**
3133
+ * PasswordResetToken without action
3134
+ */
3135
+ export type PasswordResetTokenDefaultArgs<ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs> = {
3136
+ /**
3137
+ * Select specific fields to fetch from the PasswordResetToken
3138
+ */
3139
+ select?: PasswordResetTokenSelect<ExtArgs> | null
3140
+ /**
3141
+ * Omit specific fields from the PasswordResetToken
3142
+ */
3143
+ omit?: PasswordResetTokenOmit<ExtArgs> | null
3144
+ /**
3145
+ * Choose, which related nodes to fetch as well
3146
+ */
3147
+ include?: PasswordResetTokenInclude<ExtArgs> | null
3148
+ }
3149
+
3150
+
3151
+ /**
3152
+ * Enums
3153
+ */
3154
+
3155
+ export const TransactionIsolationLevel: {
3156
+ ReadUncommitted: 'ReadUncommitted',
3157
+ ReadCommitted: 'ReadCommitted',
3158
+ RepeatableRead: 'RepeatableRead',
3159
+ Serializable: 'Serializable'
3160
+ };
3161
+
3162
+ export type TransactionIsolationLevel = (typeof TransactionIsolationLevel)[keyof typeof TransactionIsolationLevel]
3163
+
3164
+
3165
+ export const UserScalarFieldEnum: {
3166
+ id: 'id',
3167
+ username: 'username',
3168
+ email: 'email',
3169
+ passwordHash: 'passwordHash',
3170
+ is_active: 'is_active',
3171
+ must_reset_password: 'must_reset_password',
3172
+ created_at: 'created_at',
3173
+ updated_at: 'updated_at'
3174
+ };
3175
+
3176
+ export type UserScalarFieldEnum = (typeof UserScalarFieldEnum)[keyof typeof UserScalarFieldEnum]
3177
+
3178
+
3179
+ export const PasswordResetTokenScalarFieldEnum: {
3180
+ id: 'id',
3181
+ user_id: 'user_id',
3182
+ reset_token: 'reset_token',
3183
+ expires_at: 'expires_at',
3184
+ used: 'used'
3185
+ };
3186
+
3187
+ export type PasswordResetTokenScalarFieldEnum = (typeof PasswordResetTokenScalarFieldEnum)[keyof typeof PasswordResetTokenScalarFieldEnum]
3188
+
3189
+
3190
+ export const SortOrder: {
3191
+ asc: 'asc',
3192
+ desc: 'desc'
3193
+ };
3194
+
3195
+ export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder]
3196
+
3197
+
3198
+ export const QueryMode: {
3199
+ default: 'default',
3200
+ insensitive: 'insensitive'
3201
+ };
3202
+
3203
+ export type QueryMode = (typeof QueryMode)[keyof typeof QueryMode]
3204
+
3205
+
3206
+ /**
3207
+ * Field references
3208
+ */
3209
+
3210
+
3211
+ /**
3212
+ * Reference to a field of type 'String'
3213
+ */
3214
+ export type StringFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'String'>
3215
+
3216
+
3217
+
3218
+ /**
3219
+ * Reference to a field of type 'String[]'
3220
+ */
3221
+ export type ListStringFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'String[]'>
3222
+
3223
+
3224
+
3225
+ /**
3226
+ * Reference to a field of type 'Boolean'
3227
+ */
3228
+ export type BooleanFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Boolean'>
3229
+
3230
+
3231
+
3232
+ /**
3233
+ * Reference to a field of type 'DateTime'
3234
+ */
3235
+ export type DateTimeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'DateTime'>
3236
+
3237
+
3238
+
3239
+ /**
3240
+ * Reference to a field of type 'DateTime[]'
3241
+ */
3242
+ export type ListDateTimeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'DateTime[]'>
3243
+
3244
+
3245
+
3246
+ /**
3247
+ * Reference to a field of type 'Int'
3248
+ */
3249
+ export type IntFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Int'>
3250
+
3251
+
3252
+
3253
+ /**
3254
+ * Reference to a field of type 'Int[]'
3255
+ */
3256
+ export type ListIntFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Int[]'>
3257
+
3258
+ /**
3259
+ * Deep Input Types
3260
+ */
3261
+
3262
+
3263
+ export type UserWhereInput = {
3264
+ AND?: UserWhereInput | UserWhereInput[]
3265
+ OR?: UserWhereInput[]
3266
+ NOT?: UserWhereInput | UserWhereInput[]
3267
+ id?: StringFilter<"User"> | string
3268
+ username?: StringFilter<"User"> | string
3269
+ email?: StringFilter<"User"> | string
3270
+ passwordHash?: StringFilter<"User"> | string
3271
+ is_active?: BoolFilter<"User"> | boolean
3272
+ must_reset_password?: BoolFilter<"User"> | boolean
3273
+ created_at?: DateTimeFilter<"User"> | Date | string
3274
+ updated_at?: DateTimeFilter<"User"> | Date | string
3275
+ PasswordResetTokens?: PasswordResetTokenListRelationFilter
3276
+ }
3277
+
3278
+ export type UserOrderByWithRelationInput = {
3279
+ id?: SortOrder
3280
+ username?: SortOrder
3281
+ email?: SortOrder
3282
+ passwordHash?: SortOrder
3283
+ is_active?: SortOrder
3284
+ must_reset_password?: SortOrder
3285
+ created_at?: SortOrder
3286
+ updated_at?: SortOrder
3287
+ PasswordResetTokens?: PasswordResetTokenOrderByRelationAggregateInput
3288
+ }
3289
+
3290
+ export type UserWhereUniqueInput = Prisma.AtLeast<{
3291
+ id?: string
3292
+ username?: string
3293
+ email?: string
3294
+ AND?: UserWhereInput | UserWhereInput[]
3295
+ OR?: UserWhereInput[]
3296
+ NOT?: UserWhereInput | UserWhereInput[]
3297
+ passwordHash?: StringFilter<"User"> | string
3298
+ is_active?: BoolFilter<"User"> | boolean
3299
+ must_reset_password?: BoolFilter<"User"> | boolean
3300
+ created_at?: DateTimeFilter<"User"> | Date | string
3301
+ updated_at?: DateTimeFilter<"User"> | Date | string
3302
+ PasswordResetTokens?: PasswordResetTokenListRelationFilter
3303
+ }, "id" | "username" | "email">
3304
+
3305
+ export type UserOrderByWithAggregationInput = {
3306
+ id?: SortOrder
3307
+ username?: SortOrder
3308
+ email?: SortOrder
3309
+ passwordHash?: SortOrder
3310
+ is_active?: SortOrder
3311
+ must_reset_password?: SortOrder
3312
+ created_at?: SortOrder
3313
+ updated_at?: SortOrder
3314
+ _count?: UserCountOrderByAggregateInput
3315
+ _max?: UserMaxOrderByAggregateInput
3316
+ _min?: UserMinOrderByAggregateInput
3317
+ }
3318
+
3319
+ export type UserScalarWhereWithAggregatesInput = {
3320
+ AND?: UserScalarWhereWithAggregatesInput | UserScalarWhereWithAggregatesInput[]
3321
+ OR?: UserScalarWhereWithAggregatesInput[]
3322
+ NOT?: UserScalarWhereWithAggregatesInput | UserScalarWhereWithAggregatesInput[]
3323
+ id?: StringWithAggregatesFilter<"User"> | string
3324
+ username?: StringWithAggregatesFilter<"User"> | string
3325
+ email?: StringWithAggregatesFilter<"User"> | string
3326
+ passwordHash?: StringWithAggregatesFilter<"User"> | string
3327
+ is_active?: BoolWithAggregatesFilter<"User"> | boolean
3328
+ must_reset_password?: BoolWithAggregatesFilter<"User"> | boolean
3329
+ created_at?: DateTimeWithAggregatesFilter<"User"> | Date | string
3330
+ updated_at?: DateTimeWithAggregatesFilter<"User"> | Date | string
3331
+ }
3332
+
3333
+ export type PasswordResetTokenWhereInput = {
3334
+ AND?: PasswordResetTokenWhereInput | PasswordResetTokenWhereInput[]
3335
+ OR?: PasswordResetTokenWhereInput[]
3336
+ NOT?: PasswordResetTokenWhereInput | PasswordResetTokenWhereInput[]
3337
+ id?: StringFilter<"PasswordResetToken"> | string
3338
+ user_id?: StringFilter<"PasswordResetToken"> | string
3339
+ reset_token?: StringFilter<"PasswordResetToken"> | string
3340
+ expires_at?: DateTimeFilter<"PasswordResetToken"> | Date | string
3341
+ used?: BoolFilter<"PasswordResetToken"> | boolean
3342
+ user?: XOR<UserScalarRelationFilter, UserWhereInput>
3343
+ }
3344
+
3345
+ export type PasswordResetTokenOrderByWithRelationInput = {
3346
+ id?: SortOrder
3347
+ user_id?: SortOrder
3348
+ reset_token?: SortOrder
3349
+ expires_at?: SortOrder
3350
+ used?: SortOrder
3351
+ user?: UserOrderByWithRelationInput
3352
+ }
3353
+
3354
+ export type PasswordResetTokenWhereUniqueInput = Prisma.AtLeast<{
3355
+ id?: string
3356
+ AND?: PasswordResetTokenWhereInput | PasswordResetTokenWhereInput[]
3357
+ OR?: PasswordResetTokenWhereInput[]
3358
+ NOT?: PasswordResetTokenWhereInput | PasswordResetTokenWhereInput[]
3359
+ user_id?: StringFilter<"PasswordResetToken"> | string
3360
+ reset_token?: StringFilter<"PasswordResetToken"> | string
3361
+ expires_at?: DateTimeFilter<"PasswordResetToken"> | Date | string
3362
+ used?: BoolFilter<"PasswordResetToken"> | boolean
3363
+ user?: XOR<UserScalarRelationFilter, UserWhereInput>
3364
+ }, "id">
3365
+
3366
+ export type PasswordResetTokenOrderByWithAggregationInput = {
3367
+ id?: SortOrder
3368
+ user_id?: SortOrder
3369
+ reset_token?: SortOrder
3370
+ expires_at?: SortOrder
3371
+ used?: SortOrder
3372
+ _count?: PasswordResetTokenCountOrderByAggregateInput
3373
+ _max?: PasswordResetTokenMaxOrderByAggregateInput
3374
+ _min?: PasswordResetTokenMinOrderByAggregateInput
3375
+ }
3376
+
3377
+ export type PasswordResetTokenScalarWhereWithAggregatesInput = {
3378
+ AND?: PasswordResetTokenScalarWhereWithAggregatesInput | PasswordResetTokenScalarWhereWithAggregatesInput[]
3379
+ OR?: PasswordResetTokenScalarWhereWithAggregatesInput[]
3380
+ NOT?: PasswordResetTokenScalarWhereWithAggregatesInput | PasswordResetTokenScalarWhereWithAggregatesInput[]
3381
+ id?: StringWithAggregatesFilter<"PasswordResetToken"> | string
3382
+ user_id?: StringWithAggregatesFilter<"PasswordResetToken"> | string
3383
+ reset_token?: StringWithAggregatesFilter<"PasswordResetToken"> | string
3384
+ expires_at?: DateTimeWithAggregatesFilter<"PasswordResetToken"> | Date | string
3385
+ used?: BoolWithAggregatesFilter<"PasswordResetToken"> | boolean
3386
+ }
3387
+
3388
+ export type UserCreateInput = {
3389
+ id?: string
3390
+ username: string
3391
+ email: string
3392
+ passwordHash: string
3393
+ is_active: boolean
3394
+ must_reset_password: boolean
3395
+ created_at?: Date | string
3396
+ updated_at?: Date | string
3397
+ PasswordResetTokens?: PasswordResetTokenCreateNestedManyWithoutUserInput
3398
+ }
3399
+
3400
+ export type UserUncheckedCreateInput = {
3401
+ id?: string
3402
+ username: string
3403
+ email: string
3404
+ passwordHash: string
3405
+ is_active: boolean
3406
+ must_reset_password: boolean
3407
+ created_at?: Date | string
3408
+ updated_at?: Date | string
3409
+ PasswordResetTokens?: PasswordResetTokenUncheckedCreateNestedManyWithoutUserInput
3410
+ }
3411
+
3412
+ export type UserUpdateInput = {
3413
+ id?: StringFieldUpdateOperationsInput | string
3414
+ username?: StringFieldUpdateOperationsInput | string
3415
+ email?: StringFieldUpdateOperationsInput | string
3416
+ passwordHash?: StringFieldUpdateOperationsInput | string
3417
+ is_active?: BoolFieldUpdateOperationsInput | boolean
3418
+ must_reset_password?: BoolFieldUpdateOperationsInput | boolean
3419
+ created_at?: DateTimeFieldUpdateOperationsInput | Date | string
3420
+ updated_at?: DateTimeFieldUpdateOperationsInput | Date | string
3421
+ PasswordResetTokens?: PasswordResetTokenUpdateManyWithoutUserNestedInput
3422
+ }
3423
+
3424
+ export type UserUncheckedUpdateInput = {
3425
+ id?: StringFieldUpdateOperationsInput | string
3426
+ username?: StringFieldUpdateOperationsInput | string
3427
+ email?: StringFieldUpdateOperationsInput | string
3428
+ passwordHash?: StringFieldUpdateOperationsInput | string
3429
+ is_active?: BoolFieldUpdateOperationsInput | boolean
3430
+ must_reset_password?: BoolFieldUpdateOperationsInput | boolean
3431
+ created_at?: DateTimeFieldUpdateOperationsInput | Date | string
3432
+ updated_at?: DateTimeFieldUpdateOperationsInput | Date | string
3433
+ PasswordResetTokens?: PasswordResetTokenUncheckedUpdateManyWithoutUserNestedInput
3434
+ }
3435
+
3436
+ export type UserCreateManyInput = {
3437
+ id?: string
3438
+ username: string
3439
+ email: string
3440
+ passwordHash: string
3441
+ is_active: boolean
3442
+ must_reset_password: boolean
3443
+ created_at?: Date | string
3444
+ updated_at?: Date | string
3445
+ }
3446
+
3447
+ export type UserUpdateManyMutationInput = {
3448
+ id?: StringFieldUpdateOperationsInput | string
3449
+ username?: StringFieldUpdateOperationsInput | string
3450
+ email?: StringFieldUpdateOperationsInput | string
3451
+ passwordHash?: StringFieldUpdateOperationsInput | string
3452
+ is_active?: BoolFieldUpdateOperationsInput | boolean
3453
+ must_reset_password?: BoolFieldUpdateOperationsInput | boolean
3454
+ created_at?: DateTimeFieldUpdateOperationsInput | Date | string
3455
+ updated_at?: DateTimeFieldUpdateOperationsInput | Date | string
3456
+ }
3457
+
3458
+ export type UserUncheckedUpdateManyInput = {
3459
+ id?: StringFieldUpdateOperationsInput | string
3460
+ username?: StringFieldUpdateOperationsInput | string
3461
+ email?: StringFieldUpdateOperationsInput | string
3462
+ passwordHash?: StringFieldUpdateOperationsInput | string
3463
+ is_active?: BoolFieldUpdateOperationsInput | boolean
3464
+ must_reset_password?: BoolFieldUpdateOperationsInput | boolean
3465
+ created_at?: DateTimeFieldUpdateOperationsInput | Date | string
3466
+ updated_at?: DateTimeFieldUpdateOperationsInput | Date | string
3467
+ }
3468
+
3469
+ export type PasswordResetTokenCreateInput = {
3470
+ id?: string
3471
+ reset_token: string
3472
+ expires_at: Date | string
3473
+ used: boolean
3474
+ user: UserCreateNestedOneWithoutPasswordResetTokensInput
3475
+ }
3476
+
3477
+ export type PasswordResetTokenUncheckedCreateInput = {
3478
+ id?: string
3479
+ user_id: string
3480
+ reset_token: string
3481
+ expires_at: Date | string
3482
+ used: boolean
3483
+ }
3484
+
3485
+ export type PasswordResetTokenUpdateInput = {
3486
+ id?: StringFieldUpdateOperationsInput | string
3487
+ reset_token?: StringFieldUpdateOperationsInput | string
3488
+ expires_at?: DateTimeFieldUpdateOperationsInput | Date | string
3489
+ used?: BoolFieldUpdateOperationsInput | boolean
3490
+ user?: UserUpdateOneRequiredWithoutPasswordResetTokensNestedInput
3491
+ }
3492
+
3493
+ export type PasswordResetTokenUncheckedUpdateInput = {
3494
+ id?: StringFieldUpdateOperationsInput | string
3495
+ user_id?: StringFieldUpdateOperationsInput | string
3496
+ reset_token?: StringFieldUpdateOperationsInput | string
3497
+ expires_at?: DateTimeFieldUpdateOperationsInput | Date | string
3498
+ used?: BoolFieldUpdateOperationsInput | boolean
3499
+ }
3500
+
3501
+ export type PasswordResetTokenCreateManyInput = {
3502
+ id?: string
3503
+ user_id: string
3504
+ reset_token: string
3505
+ expires_at: Date | string
3506
+ used: boolean
3507
+ }
3508
+
3509
+ export type PasswordResetTokenUpdateManyMutationInput = {
3510
+ id?: StringFieldUpdateOperationsInput | string
3511
+ reset_token?: StringFieldUpdateOperationsInput | string
3512
+ expires_at?: DateTimeFieldUpdateOperationsInput | Date | string
3513
+ used?: BoolFieldUpdateOperationsInput | boolean
3514
+ }
3515
+
3516
+ export type PasswordResetTokenUncheckedUpdateManyInput = {
3517
+ id?: StringFieldUpdateOperationsInput | string
3518
+ user_id?: StringFieldUpdateOperationsInput | string
3519
+ reset_token?: StringFieldUpdateOperationsInput | string
3520
+ expires_at?: DateTimeFieldUpdateOperationsInput | Date | string
3521
+ used?: BoolFieldUpdateOperationsInput | boolean
3522
+ }
3523
+
3524
+ export type StringFilter<$PrismaModel = never> = {
3525
+ equals?: string | StringFieldRefInput<$PrismaModel>
3526
+ in?: string[] | ListStringFieldRefInput<$PrismaModel>
3527
+ notIn?: string[] | ListStringFieldRefInput<$PrismaModel>
3528
+ lt?: string | StringFieldRefInput<$PrismaModel>
3529
+ lte?: string | StringFieldRefInput<$PrismaModel>
3530
+ gt?: string | StringFieldRefInput<$PrismaModel>
3531
+ gte?: string | StringFieldRefInput<$PrismaModel>
3532
+ contains?: string | StringFieldRefInput<$PrismaModel>
3533
+ startsWith?: string | StringFieldRefInput<$PrismaModel>
3534
+ endsWith?: string | StringFieldRefInput<$PrismaModel>
3535
+ mode?: QueryMode
3536
+ not?: NestedStringFilter<$PrismaModel> | string
3537
+ }
3538
+
3539
+ export type BoolFilter<$PrismaModel = never> = {
3540
+ equals?: boolean | BooleanFieldRefInput<$PrismaModel>
3541
+ not?: NestedBoolFilter<$PrismaModel> | boolean
3542
+ }
3543
+
3544
+ export type DateTimeFilter<$PrismaModel = never> = {
3545
+ equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3546
+ in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
3547
+ notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
3548
+ lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3549
+ lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3550
+ gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3551
+ gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3552
+ not?: NestedDateTimeFilter<$PrismaModel> | Date | string
3553
+ }
3554
+
3555
+ export type PasswordResetTokenListRelationFilter = {
3556
+ every?: PasswordResetTokenWhereInput
3557
+ some?: PasswordResetTokenWhereInput
3558
+ none?: PasswordResetTokenWhereInput
3559
+ }
3560
+
3561
+ export type PasswordResetTokenOrderByRelationAggregateInput = {
3562
+ _count?: SortOrder
3563
+ }
3564
+
3565
+ export type UserCountOrderByAggregateInput = {
3566
+ id?: SortOrder
3567
+ username?: SortOrder
3568
+ email?: SortOrder
3569
+ passwordHash?: SortOrder
3570
+ is_active?: SortOrder
3571
+ must_reset_password?: SortOrder
3572
+ created_at?: SortOrder
3573
+ updated_at?: SortOrder
3574
+ }
3575
+
3576
+ export type UserMaxOrderByAggregateInput = {
3577
+ id?: SortOrder
3578
+ username?: SortOrder
3579
+ email?: SortOrder
3580
+ passwordHash?: SortOrder
3581
+ is_active?: SortOrder
3582
+ must_reset_password?: SortOrder
3583
+ created_at?: SortOrder
3584
+ updated_at?: SortOrder
3585
+ }
3586
+
3587
+ export type UserMinOrderByAggregateInput = {
3588
+ id?: SortOrder
3589
+ username?: SortOrder
3590
+ email?: SortOrder
3591
+ passwordHash?: SortOrder
3592
+ is_active?: SortOrder
3593
+ must_reset_password?: SortOrder
3594
+ created_at?: SortOrder
3595
+ updated_at?: SortOrder
3596
+ }
3597
+
3598
+ export type StringWithAggregatesFilter<$PrismaModel = never> = {
3599
+ equals?: string | StringFieldRefInput<$PrismaModel>
3600
+ in?: string[] | ListStringFieldRefInput<$PrismaModel>
3601
+ notIn?: string[] | ListStringFieldRefInput<$PrismaModel>
3602
+ lt?: string | StringFieldRefInput<$PrismaModel>
3603
+ lte?: string | StringFieldRefInput<$PrismaModel>
3604
+ gt?: string | StringFieldRefInput<$PrismaModel>
3605
+ gte?: string | StringFieldRefInput<$PrismaModel>
3606
+ contains?: string | StringFieldRefInput<$PrismaModel>
3607
+ startsWith?: string | StringFieldRefInput<$PrismaModel>
3608
+ endsWith?: string | StringFieldRefInput<$PrismaModel>
3609
+ mode?: QueryMode
3610
+ not?: NestedStringWithAggregatesFilter<$PrismaModel> | string
3611
+ _count?: NestedIntFilter<$PrismaModel>
3612
+ _min?: NestedStringFilter<$PrismaModel>
3613
+ _max?: NestedStringFilter<$PrismaModel>
3614
+ }
3615
+
3616
+ export type BoolWithAggregatesFilter<$PrismaModel = never> = {
3617
+ equals?: boolean | BooleanFieldRefInput<$PrismaModel>
3618
+ not?: NestedBoolWithAggregatesFilter<$PrismaModel> | boolean
3619
+ _count?: NestedIntFilter<$PrismaModel>
3620
+ _min?: NestedBoolFilter<$PrismaModel>
3621
+ _max?: NestedBoolFilter<$PrismaModel>
3622
+ }
3623
+
3624
+ export type DateTimeWithAggregatesFilter<$PrismaModel = never> = {
3625
+ equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3626
+ in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
3627
+ notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
3628
+ lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3629
+ lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3630
+ gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3631
+ gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3632
+ not?: NestedDateTimeWithAggregatesFilter<$PrismaModel> | Date | string
3633
+ _count?: NestedIntFilter<$PrismaModel>
3634
+ _min?: NestedDateTimeFilter<$PrismaModel>
3635
+ _max?: NestedDateTimeFilter<$PrismaModel>
3636
+ }
3637
+
3638
+ export type UserScalarRelationFilter = {
3639
+ is?: UserWhereInput
3640
+ isNot?: UserWhereInput
3641
+ }
3642
+
3643
+ export type PasswordResetTokenCountOrderByAggregateInput = {
3644
+ id?: SortOrder
3645
+ user_id?: SortOrder
3646
+ reset_token?: SortOrder
3647
+ expires_at?: SortOrder
3648
+ used?: SortOrder
3649
+ }
3650
+
3651
+ export type PasswordResetTokenMaxOrderByAggregateInput = {
3652
+ id?: SortOrder
3653
+ user_id?: SortOrder
3654
+ reset_token?: SortOrder
3655
+ expires_at?: SortOrder
3656
+ used?: SortOrder
3657
+ }
3658
+
3659
+ export type PasswordResetTokenMinOrderByAggregateInput = {
3660
+ id?: SortOrder
3661
+ user_id?: SortOrder
3662
+ reset_token?: SortOrder
3663
+ expires_at?: SortOrder
3664
+ used?: SortOrder
3665
+ }
3666
+
3667
+ export type PasswordResetTokenCreateNestedManyWithoutUserInput = {
3668
+ create?: XOR<PasswordResetTokenCreateWithoutUserInput, PasswordResetTokenUncheckedCreateWithoutUserInput> | PasswordResetTokenCreateWithoutUserInput[] | PasswordResetTokenUncheckedCreateWithoutUserInput[]
3669
+ connectOrCreate?: PasswordResetTokenCreateOrConnectWithoutUserInput | PasswordResetTokenCreateOrConnectWithoutUserInput[]
3670
+ createMany?: PasswordResetTokenCreateManyUserInputEnvelope
3671
+ connect?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[]
3672
+ }
3673
+
3674
+ export type PasswordResetTokenUncheckedCreateNestedManyWithoutUserInput = {
3675
+ create?: XOR<PasswordResetTokenCreateWithoutUserInput, PasswordResetTokenUncheckedCreateWithoutUserInput> | PasswordResetTokenCreateWithoutUserInput[] | PasswordResetTokenUncheckedCreateWithoutUserInput[]
3676
+ connectOrCreate?: PasswordResetTokenCreateOrConnectWithoutUserInput | PasswordResetTokenCreateOrConnectWithoutUserInput[]
3677
+ createMany?: PasswordResetTokenCreateManyUserInputEnvelope
3678
+ connect?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[]
3679
+ }
3680
+
3681
+ export type StringFieldUpdateOperationsInput = {
3682
+ set?: string
3683
+ }
3684
+
3685
+ export type BoolFieldUpdateOperationsInput = {
3686
+ set?: boolean
3687
+ }
3688
+
3689
+ export type DateTimeFieldUpdateOperationsInput = {
3690
+ set?: Date | string
3691
+ }
3692
+
3693
+ export type PasswordResetTokenUpdateManyWithoutUserNestedInput = {
3694
+ create?: XOR<PasswordResetTokenCreateWithoutUserInput, PasswordResetTokenUncheckedCreateWithoutUserInput> | PasswordResetTokenCreateWithoutUserInput[] | PasswordResetTokenUncheckedCreateWithoutUserInput[]
3695
+ connectOrCreate?: PasswordResetTokenCreateOrConnectWithoutUserInput | PasswordResetTokenCreateOrConnectWithoutUserInput[]
3696
+ upsert?: PasswordResetTokenUpsertWithWhereUniqueWithoutUserInput | PasswordResetTokenUpsertWithWhereUniqueWithoutUserInput[]
3697
+ createMany?: PasswordResetTokenCreateManyUserInputEnvelope
3698
+ set?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[]
3699
+ disconnect?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[]
3700
+ delete?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[]
3701
+ connect?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[]
3702
+ update?: PasswordResetTokenUpdateWithWhereUniqueWithoutUserInput | PasswordResetTokenUpdateWithWhereUniqueWithoutUserInput[]
3703
+ updateMany?: PasswordResetTokenUpdateManyWithWhereWithoutUserInput | PasswordResetTokenUpdateManyWithWhereWithoutUserInput[]
3704
+ deleteMany?: PasswordResetTokenScalarWhereInput | PasswordResetTokenScalarWhereInput[]
3705
+ }
3706
+
3707
+ export type PasswordResetTokenUncheckedUpdateManyWithoutUserNestedInput = {
3708
+ create?: XOR<PasswordResetTokenCreateWithoutUserInput, PasswordResetTokenUncheckedCreateWithoutUserInput> | PasswordResetTokenCreateWithoutUserInput[] | PasswordResetTokenUncheckedCreateWithoutUserInput[]
3709
+ connectOrCreate?: PasswordResetTokenCreateOrConnectWithoutUserInput | PasswordResetTokenCreateOrConnectWithoutUserInput[]
3710
+ upsert?: PasswordResetTokenUpsertWithWhereUniqueWithoutUserInput | PasswordResetTokenUpsertWithWhereUniqueWithoutUserInput[]
3711
+ createMany?: PasswordResetTokenCreateManyUserInputEnvelope
3712
+ set?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[]
3713
+ disconnect?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[]
3714
+ delete?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[]
3715
+ connect?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[]
3716
+ update?: PasswordResetTokenUpdateWithWhereUniqueWithoutUserInput | PasswordResetTokenUpdateWithWhereUniqueWithoutUserInput[]
3717
+ updateMany?: PasswordResetTokenUpdateManyWithWhereWithoutUserInput | PasswordResetTokenUpdateManyWithWhereWithoutUserInput[]
3718
+ deleteMany?: PasswordResetTokenScalarWhereInput | PasswordResetTokenScalarWhereInput[]
3719
+ }
3720
+
3721
+ export type UserCreateNestedOneWithoutPasswordResetTokensInput = {
3722
+ create?: XOR<UserCreateWithoutPasswordResetTokensInput, UserUncheckedCreateWithoutPasswordResetTokensInput>
3723
+ connectOrCreate?: UserCreateOrConnectWithoutPasswordResetTokensInput
3724
+ connect?: UserWhereUniqueInput
3725
+ }
3726
+
3727
+ export type UserUpdateOneRequiredWithoutPasswordResetTokensNestedInput = {
3728
+ create?: XOR<UserCreateWithoutPasswordResetTokensInput, UserUncheckedCreateWithoutPasswordResetTokensInput>
3729
+ connectOrCreate?: UserCreateOrConnectWithoutPasswordResetTokensInput
3730
+ upsert?: UserUpsertWithoutPasswordResetTokensInput
3731
+ connect?: UserWhereUniqueInput
3732
+ update?: XOR<XOR<UserUpdateToOneWithWhereWithoutPasswordResetTokensInput, UserUpdateWithoutPasswordResetTokensInput>, UserUncheckedUpdateWithoutPasswordResetTokensInput>
3733
+ }
3734
+
3735
+ export type NestedStringFilter<$PrismaModel = never> = {
3736
+ equals?: string | StringFieldRefInput<$PrismaModel>
3737
+ in?: string[] | ListStringFieldRefInput<$PrismaModel>
3738
+ notIn?: string[] | ListStringFieldRefInput<$PrismaModel>
3739
+ lt?: string | StringFieldRefInput<$PrismaModel>
3740
+ lte?: string | StringFieldRefInput<$PrismaModel>
3741
+ gt?: string | StringFieldRefInput<$PrismaModel>
3742
+ gte?: string | StringFieldRefInput<$PrismaModel>
3743
+ contains?: string | StringFieldRefInput<$PrismaModel>
3744
+ startsWith?: string | StringFieldRefInput<$PrismaModel>
3745
+ endsWith?: string | StringFieldRefInput<$PrismaModel>
3746
+ not?: NestedStringFilter<$PrismaModel> | string
3747
+ }
3748
+
3749
+ export type NestedBoolFilter<$PrismaModel = never> = {
3750
+ equals?: boolean | BooleanFieldRefInput<$PrismaModel>
3751
+ not?: NestedBoolFilter<$PrismaModel> | boolean
3752
+ }
3753
+
3754
+ export type NestedDateTimeFilter<$PrismaModel = never> = {
3755
+ equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3756
+ in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
3757
+ notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
3758
+ lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3759
+ lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3760
+ gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3761
+ gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3762
+ not?: NestedDateTimeFilter<$PrismaModel> | Date | string
3763
+ }
3764
+
3765
+ export type NestedStringWithAggregatesFilter<$PrismaModel = never> = {
3766
+ equals?: string | StringFieldRefInput<$PrismaModel>
3767
+ in?: string[] | ListStringFieldRefInput<$PrismaModel>
3768
+ notIn?: string[] | ListStringFieldRefInput<$PrismaModel>
3769
+ lt?: string | StringFieldRefInput<$PrismaModel>
3770
+ lte?: string | StringFieldRefInput<$PrismaModel>
3771
+ gt?: string | StringFieldRefInput<$PrismaModel>
3772
+ gte?: string | StringFieldRefInput<$PrismaModel>
3773
+ contains?: string | StringFieldRefInput<$PrismaModel>
3774
+ startsWith?: string | StringFieldRefInput<$PrismaModel>
3775
+ endsWith?: string | StringFieldRefInput<$PrismaModel>
3776
+ not?: NestedStringWithAggregatesFilter<$PrismaModel> | string
3777
+ _count?: NestedIntFilter<$PrismaModel>
3778
+ _min?: NestedStringFilter<$PrismaModel>
3779
+ _max?: NestedStringFilter<$PrismaModel>
3780
+ }
3781
+
3782
+ export type NestedIntFilter<$PrismaModel = never> = {
3783
+ equals?: number | IntFieldRefInput<$PrismaModel>
3784
+ in?: number[] | ListIntFieldRefInput<$PrismaModel>
3785
+ notIn?: number[] | ListIntFieldRefInput<$PrismaModel>
3786
+ lt?: number | IntFieldRefInput<$PrismaModel>
3787
+ lte?: number | IntFieldRefInput<$PrismaModel>
3788
+ gt?: number | IntFieldRefInput<$PrismaModel>
3789
+ gte?: number | IntFieldRefInput<$PrismaModel>
3790
+ not?: NestedIntFilter<$PrismaModel> | number
3791
+ }
3792
+
3793
+ export type NestedBoolWithAggregatesFilter<$PrismaModel = never> = {
3794
+ equals?: boolean | BooleanFieldRefInput<$PrismaModel>
3795
+ not?: NestedBoolWithAggregatesFilter<$PrismaModel> | boolean
3796
+ _count?: NestedIntFilter<$PrismaModel>
3797
+ _min?: NestedBoolFilter<$PrismaModel>
3798
+ _max?: NestedBoolFilter<$PrismaModel>
3799
+ }
3800
+
3801
+ export type NestedDateTimeWithAggregatesFilter<$PrismaModel = never> = {
3802
+ equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3803
+ in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
3804
+ notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel>
3805
+ lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3806
+ lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3807
+ gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3808
+ gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>
3809
+ not?: NestedDateTimeWithAggregatesFilter<$PrismaModel> | Date | string
3810
+ _count?: NestedIntFilter<$PrismaModel>
3811
+ _min?: NestedDateTimeFilter<$PrismaModel>
3812
+ _max?: NestedDateTimeFilter<$PrismaModel>
3813
+ }
3814
+
3815
+ export type PasswordResetTokenCreateWithoutUserInput = {
3816
+ id?: string
3817
+ reset_token: string
3818
+ expires_at: Date | string
3819
+ used: boolean
3820
+ }
3821
+
3822
+ export type PasswordResetTokenUncheckedCreateWithoutUserInput = {
3823
+ id?: string
3824
+ reset_token: string
3825
+ expires_at: Date | string
3826
+ used: boolean
3827
+ }
3828
+
3829
+ export type PasswordResetTokenCreateOrConnectWithoutUserInput = {
3830
+ where: PasswordResetTokenWhereUniqueInput
3831
+ create: XOR<PasswordResetTokenCreateWithoutUserInput, PasswordResetTokenUncheckedCreateWithoutUserInput>
3832
+ }
3833
+
3834
+ export type PasswordResetTokenCreateManyUserInputEnvelope = {
3835
+ data: PasswordResetTokenCreateManyUserInput | PasswordResetTokenCreateManyUserInput[]
3836
+ skipDuplicates?: boolean
3837
+ }
3838
+
3839
+ export type PasswordResetTokenUpsertWithWhereUniqueWithoutUserInput = {
3840
+ where: PasswordResetTokenWhereUniqueInput
3841
+ update: XOR<PasswordResetTokenUpdateWithoutUserInput, PasswordResetTokenUncheckedUpdateWithoutUserInput>
3842
+ create: XOR<PasswordResetTokenCreateWithoutUserInput, PasswordResetTokenUncheckedCreateWithoutUserInput>
3843
+ }
3844
+
3845
+ export type PasswordResetTokenUpdateWithWhereUniqueWithoutUserInput = {
3846
+ where: PasswordResetTokenWhereUniqueInput
3847
+ data: XOR<PasswordResetTokenUpdateWithoutUserInput, PasswordResetTokenUncheckedUpdateWithoutUserInput>
3848
+ }
3849
+
3850
+ export type PasswordResetTokenUpdateManyWithWhereWithoutUserInput = {
3851
+ where: PasswordResetTokenScalarWhereInput
3852
+ data: XOR<PasswordResetTokenUpdateManyMutationInput, PasswordResetTokenUncheckedUpdateManyWithoutUserInput>
3853
+ }
3854
+
3855
+ export type PasswordResetTokenScalarWhereInput = {
3856
+ AND?: PasswordResetTokenScalarWhereInput | PasswordResetTokenScalarWhereInput[]
3857
+ OR?: PasswordResetTokenScalarWhereInput[]
3858
+ NOT?: PasswordResetTokenScalarWhereInput | PasswordResetTokenScalarWhereInput[]
3859
+ id?: StringFilter<"PasswordResetToken"> | string
3860
+ user_id?: StringFilter<"PasswordResetToken"> | string
3861
+ reset_token?: StringFilter<"PasswordResetToken"> | string
3862
+ expires_at?: DateTimeFilter<"PasswordResetToken"> | Date | string
3863
+ used?: BoolFilter<"PasswordResetToken"> | boolean
3864
+ }
3865
+
3866
+ export type UserCreateWithoutPasswordResetTokensInput = {
3867
+ id?: string
3868
+ username: string
3869
+ email: string
3870
+ passwordHash: string
3871
+ is_active: boolean
3872
+ must_reset_password: boolean
3873
+ created_at?: Date | string
3874
+ updated_at?: Date | string
3875
+ }
3876
+
3877
+ export type UserUncheckedCreateWithoutPasswordResetTokensInput = {
3878
+ id?: string
3879
+ username: string
3880
+ email: string
3881
+ passwordHash: string
3882
+ is_active: boolean
3883
+ must_reset_password: boolean
3884
+ created_at?: Date | string
3885
+ updated_at?: Date | string
3886
+ }
3887
+
3888
+ export type UserCreateOrConnectWithoutPasswordResetTokensInput = {
3889
+ where: UserWhereUniqueInput
3890
+ create: XOR<UserCreateWithoutPasswordResetTokensInput, UserUncheckedCreateWithoutPasswordResetTokensInput>
3891
+ }
3892
+
3893
+ export type UserUpsertWithoutPasswordResetTokensInput = {
3894
+ update: XOR<UserUpdateWithoutPasswordResetTokensInput, UserUncheckedUpdateWithoutPasswordResetTokensInput>
3895
+ create: XOR<UserCreateWithoutPasswordResetTokensInput, UserUncheckedCreateWithoutPasswordResetTokensInput>
3896
+ where?: UserWhereInput
3897
+ }
3898
+
3899
+ export type UserUpdateToOneWithWhereWithoutPasswordResetTokensInput = {
3900
+ where?: UserWhereInput
3901
+ data: XOR<UserUpdateWithoutPasswordResetTokensInput, UserUncheckedUpdateWithoutPasswordResetTokensInput>
3902
+ }
3903
+
3904
+ export type UserUpdateWithoutPasswordResetTokensInput = {
3905
+ id?: StringFieldUpdateOperationsInput | string
3906
+ username?: StringFieldUpdateOperationsInput | string
3907
+ email?: StringFieldUpdateOperationsInput | string
3908
+ passwordHash?: StringFieldUpdateOperationsInput | string
3909
+ is_active?: BoolFieldUpdateOperationsInput | boolean
3910
+ must_reset_password?: BoolFieldUpdateOperationsInput | boolean
3911
+ created_at?: DateTimeFieldUpdateOperationsInput | Date | string
3912
+ updated_at?: DateTimeFieldUpdateOperationsInput | Date | string
3913
+ }
3914
+
3915
+ export type UserUncheckedUpdateWithoutPasswordResetTokensInput = {
3916
+ id?: StringFieldUpdateOperationsInput | string
3917
+ username?: StringFieldUpdateOperationsInput | string
3918
+ email?: StringFieldUpdateOperationsInput | string
3919
+ passwordHash?: StringFieldUpdateOperationsInput | string
3920
+ is_active?: BoolFieldUpdateOperationsInput | boolean
3921
+ must_reset_password?: BoolFieldUpdateOperationsInput | boolean
3922
+ created_at?: DateTimeFieldUpdateOperationsInput | Date | string
3923
+ updated_at?: DateTimeFieldUpdateOperationsInput | Date | string
3924
+ }
3925
+
3926
+ export type PasswordResetTokenCreateManyUserInput = {
3927
+ id?: string
3928
+ reset_token: string
3929
+ expires_at: Date | string
3930
+ used: boolean
3931
+ }
3932
+
3933
+ export type PasswordResetTokenUpdateWithoutUserInput = {
3934
+ id?: StringFieldUpdateOperationsInput | string
3935
+ reset_token?: StringFieldUpdateOperationsInput | string
3936
+ expires_at?: DateTimeFieldUpdateOperationsInput | Date | string
3937
+ used?: BoolFieldUpdateOperationsInput | boolean
3938
+ }
3939
+
3940
+ export type PasswordResetTokenUncheckedUpdateWithoutUserInput = {
3941
+ id?: StringFieldUpdateOperationsInput | string
3942
+ reset_token?: StringFieldUpdateOperationsInput | string
3943
+ expires_at?: DateTimeFieldUpdateOperationsInput | Date | string
3944
+ used?: BoolFieldUpdateOperationsInput | boolean
3945
+ }
3946
+
3947
+ export type PasswordResetTokenUncheckedUpdateManyWithoutUserInput = {
3948
+ id?: StringFieldUpdateOperationsInput | string
3949
+ reset_token?: StringFieldUpdateOperationsInput | string
3950
+ expires_at?: DateTimeFieldUpdateOperationsInput | Date | string
3951
+ used?: BoolFieldUpdateOperationsInput | boolean
3952
+ }
3953
+
3954
+
3955
+
3956
+ /**
3957
+ * Batch Payload for updateMany & deleteMany & createMany
3958
+ */
3959
+
3960
+ export type BatchPayload = {
3961
+ count: number
3962
+ }
3963
+
3964
+ /**
3965
+ * DMMF
3966
+ */
3967
+ export const dmmf: runtime.BaseDMMF
3968
+ }