@cerbos/orm-prisma 3.3.0 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/README.md +243 -10
  2. package/lib/index.d.ts +102 -2
  3. package/lib/index.d.ts.map +1 -1
  4. package/lib/index.js +1754 -155
  5. package/lib/index.js.map +1 -1
  6. package/package.json +24 -15
  7. package/src/adversarial.test.ts +1281 -0
  8. package/src/corpus.ts +414 -0
  9. package/src/generated/prisma-adversarial/browser.ts +54 -0
  10. package/src/generated/prisma-adversarial/client.ts +76 -0
  11. package/src/generated/{prisma → prisma-adversarial}/commonInputTypes.ts +131 -27
  12. package/src/generated/prisma-adversarial/enums.ts +15 -0
  13. package/src/generated/prisma-adversarial/internal/class.ts +264 -0
  14. package/src/generated/prisma-adversarial/internal/prismaNamespace.ts +1332 -0
  15. package/src/generated/{prisma → prisma-adversarial}/internal/prismaNamespaceBrowser.ts +45 -47
  16. package/src/generated/prisma-adversarial/models/AdversarialCategory.ts +1401 -0
  17. package/src/generated/prisma-adversarial/models/AdversarialInner.ts +1369 -0
  18. package/src/generated/prisma-adversarial/models/AdversarialLabel.ts +1272 -0
  19. package/src/generated/prisma-adversarial/models/AdversarialParent.ts +1474 -0
  20. package/src/generated/prisma-adversarial/models/AdversarialResource.ts +1789 -0
  21. package/src/generated/prisma-adversarial/models/AdversarialSubCategory.ts +1401 -0
  22. package/src/generated/prisma-adversarial/models/AdversarialTag.ts +1307 -0
  23. package/src/generated/prisma-adversarial/models.ts +18 -0
  24. package/src/generated/{prisma → prisma-adversarial-pg}/browser.ts +14 -19
  25. package/src/generated/{prisma → prisma-adversarial-pg}/client.ts +16 -21
  26. package/src/generated/prisma-adversarial-pg/commonInputTypes.ts +356 -0
  27. package/src/generated/prisma-adversarial-pg/internal/class.ts +264 -0
  28. package/src/generated/prisma-adversarial-pg/internal/prismaNamespace.ts +1371 -0
  29. package/src/generated/prisma-adversarial-pg/internal/prismaNamespaceBrowser.ts +177 -0
  30. package/src/generated/prisma-adversarial-pg/models/AdversarialCategory.ts +1404 -0
  31. package/src/generated/prisma-adversarial-pg/models/AdversarialInner.ts +1371 -0
  32. package/src/generated/prisma-adversarial-pg/models/AdversarialLabel.ts +1275 -0
  33. package/src/generated/prisma-adversarial-pg/models/AdversarialParent.ts +1476 -0
  34. package/src/generated/prisma-adversarial-pg/models/AdversarialResource.ts +1791 -0
  35. package/src/generated/prisma-adversarial-pg/models/AdversarialSubCategory.ts +1404 -0
  36. package/src/generated/prisma-adversarial-pg/models/AdversarialTag.ts +1310 -0
  37. package/src/generated/prisma-adversarial-pg/models.ts +18 -0
  38. package/src/generated/prisma-adversarial-pg-v6/index.d.ts +11830 -0
  39. package/src/generated/prisma-adversarial-v6/client.d.ts +1 -0
  40. package/src/generated/prisma-adversarial-v6/default.d.ts +1 -0
  41. package/src/generated/prisma-adversarial-v6/edge.d.ts +1 -0
  42. package/src/generated/prisma-adversarial-v6/index.d.ts +11769 -0
  43. package/src/generated/prisma-adversarial-v6/runtime/index-browser.d.ts +370 -0
  44. package/src/generated/prisma-adversarial-v6/runtime/library.d.ts +3982 -0
  45. package/src/generated/prisma-adversarial-v6/wasm.d.ts +1 -0
  46. package/src/index.ts +2515 -219
  47. package/src/test-setup.adversarial-url.ts +18 -0
  48. package/src/test-setup.adversarial.pg.v6.ts +13 -0
  49. package/src/test-setup.adversarial.pg.v7.ts +9 -0
  50. package/src/test-setup.adversarial.v6.ts +5 -0
  51. package/src/test-setup.adversarial.v7.ts +12 -0
  52. package/src/translator.test.ts +1586 -0
  53. package/src/generated/prisma/internal/class.ts +0 -274
  54. package/src/generated/prisma/internal/prismaNamespace.ts +0 -1333
  55. package/src/generated/prisma/models/Category.ts +0 -1412
  56. package/src/generated/prisma/models/Label.ts +0 -1276
  57. package/src/generated/prisma/models/NestedResource.ts +0 -1562
  58. package/src/generated/prisma/models/NextLevelNestedResource.ts +0 -1337
  59. package/src/generated/prisma/models/Resource.ts +0 -2136
  60. package/src/generated/prisma/models/SubCategory.ts +0 -1412
  61. package/src/generated/prisma/models/Tag.ts +0 -1276
  62. package/src/generated/prisma/models/User.ts +0 -1503
  63. package/src/generated/prisma/models.ts +0 -19
  64. package/src/generated/prisma-v6/index.d.ts +0 -13639
  65. package/src/index.test.ts +0 -6322
  66. package/src/test-setup.v6.ts +0 -5
  67. package/src/test-setup.v7.ts +0 -7
  68. /package/src/generated/{prisma → prisma-adversarial-pg}/enums.ts +0 -0
  69. /package/src/generated/{prisma-v6 → prisma-adversarial-pg-v6}/client.d.ts +0 -0
  70. /package/src/generated/{prisma-v6 → prisma-adversarial-pg-v6}/default.d.ts +0 -0
  71. /package/src/generated/{prisma-v6 → prisma-adversarial-pg-v6}/edge.d.ts +0 -0
  72. /package/src/generated/{prisma-v6 → prisma-adversarial-pg-v6}/runtime/index-browser.d.ts +0 -0
  73. /package/src/generated/{prisma-v6 → prisma-adversarial-pg-v6}/runtime/library.d.ts +0 -0
  74. /package/src/generated/{prisma-v6 → prisma-adversarial-pg-v6}/wasm.d.ts +0 -0
@@ -0,0 +1,1332 @@
1
+
2
+ /* !!! This is code generated by Prisma. Do not edit directly. !!! */
3
+ /* eslint-disable */
4
+ // biome-ignore-all lint: generated file
5
+ // @ts-nocheck
6
+ /*
7
+ * WARNING: This is an internal file that is subject to change!
8
+ *
9
+ * 🛑 Under no circumstances should you import this file directly! 🛑
10
+ *
11
+ * All exports from this file are wrapped under a `Prisma` namespace object in the client.ts file.
12
+ * While this enables partial backward compatibility, it is not part of the stable public API.
13
+ *
14
+ * If you are looking for your Models, Enums, and Input Types, please import them from the respective
15
+ * model files in the `model` directory!
16
+ */
17
+
18
+ import * as runtime from "@prisma/client/runtime/client"
19
+ import type * as Prisma from "../models.js"
20
+ import { type PrismaClient } from "./class.js"
21
+
22
+ export type * from '../models.js'
23
+
24
+ export type DMMF = typeof runtime.DMMF
25
+
26
+ export type PrismaPromise<T> = runtime.Types.Public.PrismaPromise<T>
27
+
28
+ /**
29
+ * Prisma Errors
30
+ */
31
+
32
+ export const PrismaClientKnownRequestError = runtime.PrismaClientKnownRequestError
33
+ export type PrismaClientKnownRequestError = runtime.PrismaClientKnownRequestError
34
+
35
+ export const PrismaClientUnknownRequestError = runtime.PrismaClientUnknownRequestError
36
+ export type PrismaClientUnknownRequestError = runtime.PrismaClientUnknownRequestError
37
+
38
+ export const PrismaClientRustPanicError = runtime.PrismaClientRustPanicError
39
+ export type PrismaClientRustPanicError = runtime.PrismaClientRustPanicError
40
+
41
+ export const PrismaClientInitializationError = runtime.PrismaClientInitializationError
42
+ export type PrismaClientInitializationError = runtime.PrismaClientInitializationError
43
+
44
+ export const PrismaClientValidationError = runtime.PrismaClientValidationError
45
+ export type PrismaClientValidationError = runtime.PrismaClientValidationError
46
+
47
+ /**
48
+ * Re-export of sql-template-tag
49
+ */
50
+ export const sql = runtime.sqltag
51
+ export const empty = runtime.empty
52
+ export const join = runtime.join
53
+ export const raw = runtime.raw
54
+ export const Sql = runtime.Sql
55
+ export type Sql = runtime.Sql
56
+
57
+
58
+
59
+ /**
60
+ * Decimal.js
61
+ */
62
+ export const Decimal = runtime.Decimal
63
+ export type Decimal = runtime.Decimal
64
+
65
+ export type DecimalJsLike = runtime.DecimalJsLike
66
+
67
+ /**
68
+ * Extensions
69
+ */
70
+ export type Extension = runtime.Types.Extensions.UserArgs
71
+ export const getExtensionContext = runtime.Extensions.getExtensionContext
72
+ export type Args<T, F extends runtime.Operation> = runtime.Types.Public.Args<T, F>
73
+ export type Payload<T, F extends runtime.Operation = never> = runtime.Types.Public.Payload<T, F>
74
+ export type Result<T, A, F extends runtime.Operation> = runtime.Types.Public.Result<T, A, F>
75
+ export type Exact<A, W> = runtime.Types.Public.Exact<A, W>
76
+
77
+ export type PrismaVersion = {
78
+ client: string
79
+ engine: string
80
+ }
81
+
82
+ /**
83
+ * Prisma Client JS version: 7.9.1
84
+ * Query Engine version: e922089b7d7502aff4249d5da3420f6fa55fc6ad
85
+ */
86
+ export const prismaVersion: PrismaVersion = {
87
+ client: "7.9.1",
88
+ engine: "e922089b7d7502aff4249d5da3420f6fa55fc6ad"
89
+ }
90
+
91
+ /**
92
+ * Utility Types
93
+ */
94
+
95
+ export type Bytes = runtime.Bytes
96
+ export type JsonObject = runtime.JsonObject
97
+ export type JsonArray = runtime.JsonArray
98
+ export type JsonValue = runtime.JsonValue
99
+ export type InputJsonObject = runtime.InputJsonObject
100
+ export type InputJsonArray = runtime.InputJsonArray
101
+ export type InputJsonValue = runtime.InputJsonValue
102
+
103
+
104
+ export const NullTypes = {
105
+ DbNull: runtime.NullTypes.DbNull as (new (secret: never) => typeof runtime.DbNull),
106
+ JsonNull: runtime.NullTypes.JsonNull as (new (secret: never) => typeof runtime.JsonNull),
107
+ AnyNull: runtime.NullTypes.AnyNull as (new (secret: never) => typeof runtime.AnyNull),
108
+ }
109
+ /**
110
+ * Helper for filtering JSON entries that have `null` on the database (empty on the db)
111
+ *
112
+ * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
113
+ */
114
+ export const DbNull = runtime.DbNull
115
+
116
+ /**
117
+ * Helper for filtering JSON entries that have JSON `null` values (not empty on the db)
118
+ *
119
+ * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
120
+ */
121
+ export const JsonNull = runtime.JsonNull
122
+
123
+ /**
124
+ * Helper for filtering JSON entries that are `Prisma.DbNull` or `Prisma.JsonNull`
125
+ *
126
+ * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
127
+ */
128
+ export const AnyNull = runtime.AnyNull
129
+
130
+
131
+ type SelectAndInclude = {
132
+ select: any
133
+ include: any
134
+ }
135
+
136
+ type SelectAndOmit = {
137
+ select: any
138
+ omit: any
139
+ }
140
+
141
+ /**
142
+ * From T, pick a set of properties whose keys are in the union K
143
+ */
144
+ type Prisma__Pick<T, K extends keyof T> = {
145
+ [P in K]: T[P];
146
+ };
147
+
148
+ export type Enumerable<T> = T | Array<T>;
149
+
150
+ /**
151
+ * Subset
152
+ * @desc From `T` pick properties that exist in `U`. Simple version of Intersection
153
+ */
154
+ export type Subset<T, U> = {
155
+ [key in keyof T]: key extends keyof U ? T[key] : never;
156
+ };
157
+
158
+ /**
159
+ * Resolved type of the argument passed to the `PrismaClient` constructor.
160
+ *
161
+ * When called without a narrower options type (the common case), this resolves
162
+ * to `PrismaClientOptions` directly, which produces a clear TypeScript error
163
+ * message (`not assignable to parameter of type 'PrismaClientOptions'`) when
164
+ * the argument is missing or incomplete. When the user supplies a narrower
165
+ * options type (e.g. via a literal), it falls back to `Subset` to keep
166
+ * filtering out unknown properties.
167
+ */
168
+ export type PrismaClientConstructorArgs<Options extends PrismaClientOptions> =
169
+ [PrismaClientOptions] extends [Options] ? PrismaClientOptions : Subset<Options, PrismaClientOptions>;
170
+
171
+ /**
172
+ * SelectSubset
173
+ * @desc From `T` pick properties that exist in `U`. Simple version of Intersection.
174
+ * Additionally, it validates, if both select and include are present. If the case, it errors.
175
+ */
176
+ export type SelectSubset<T, U> = {
177
+ [key in keyof T]: key extends keyof U ? T[key] : never
178
+ } &
179
+ (T extends SelectAndInclude
180
+ ? 'Please either choose `select` or `include`.'
181
+ : T extends SelectAndOmit
182
+ ? 'Please either choose `select` or `omit`.'
183
+ : {})
184
+
185
+ /**
186
+ * Subset + Intersection
187
+ * @desc From `T` pick properties that exist in `U` and intersect `K`
188
+ */
189
+ export type SubsetIntersection<T, U, K> = {
190
+ [key in keyof T]: key extends keyof U ? T[key] : never
191
+ } &
192
+ K
193
+
194
+ type Without<T, U> = { [P in Exclude<keyof T, keyof U>]?: never };
195
+
196
+ /**
197
+ * XOR is needed to have a real mutually exclusive union type
198
+ * https://stackoverflow.com/questions/42123407/does-typescript-support-mutually-exclusive-types
199
+ */
200
+ export type XOR<T, U> =
201
+ T extends object ?
202
+ U extends object ?
203
+ ((Without<T, U> & U) | (Without<U, T> & T)) & object
204
+ : U : T
205
+
206
+
207
+ /**
208
+ * Is T a Record?
209
+ */
210
+ type IsObject<T extends any> = T extends Array<any>
211
+ ? False
212
+ : T extends Date
213
+ ? False
214
+ : T extends Uint8Array
215
+ ? False
216
+ : T extends BigInt
217
+ ? False
218
+ : T extends object
219
+ ? True
220
+ : False
221
+
222
+
223
+ /**
224
+ * If it's T[], return T
225
+ */
226
+ export type UnEnumerate<T extends unknown> = T extends Array<infer U> ? U : T
227
+
228
+ /**
229
+ * From ts-toolbelt
230
+ */
231
+
232
+ type __Either<O extends object, K extends Key> = Omit<O, K> &
233
+ {
234
+ // Merge all but K
235
+ [P in K]: Prisma__Pick<O, P & keyof O> // With K possibilities
236
+ }[K]
237
+
238
+ type EitherStrict<O extends object, K extends Key> = Strict<__Either<O, K>>
239
+
240
+ type EitherLoose<O extends object, K extends Key> = ComputeRaw<__Either<O, K>>
241
+
242
+ type _Either<
243
+ O extends object,
244
+ K extends Key,
245
+ strict extends Boolean
246
+ > = {
247
+ 1: EitherStrict<O, K>
248
+ 0: EitherLoose<O, K>
249
+ }[strict]
250
+
251
+ export type Either<
252
+ O extends object,
253
+ K extends Key,
254
+ strict extends Boolean = 1
255
+ > = O extends unknown ? _Either<O, K, strict> : never
256
+
257
+ export type Union = any
258
+
259
+ export type PatchUndefined<O extends object, O1 extends object> = {
260
+ [K in keyof O]: O[K] extends undefined ? At<O1, K> : O[K]
261
+ } & {}
262
+
263
+ /** Helper Types for "Merge" **/
264
+ export type IntersectOf<U extends Union> = (
265
+ U extends unknown ? (k: U) => void : never
266
+ ) extends (k: infer I) => void
267
+ ? I
268
+ : never
269
+
270
+ export type Overwrite<O extends object, O1 extends object> = {
271
+ [K in keyof O]: K extends keyof O1 ? O1[K] : O[K];
272
+ } & {};
273
+
274
+ type _Merge<U extends object> = IntersectOf<Overwrite<U, {
275
+ [K in keyof U]-?: At<U, K>;
276
+ }>>;
277
+
278
+ type Key = string | number | symbol;
279
+ type AtStrict<O extends object, K extends Key> = O[K & keyof O];
280
+ type AtLoose<O extends object, K extends Key> = O extends unknown ? AtStrict<O, K> : never;
281
+ export type At<O extends object, K extends Key, strict extends Boolean = 1> = {
282
+ 1: AtStrict<O, K>;
283
+ 0: AtLoose<O, K>;
284
+ }[strict];
285
+
286
+ export type ComputeRaw<A extends any> = A extends Function ? A : {
287
+ [K in keyof A]: A[K];
288
+ } & {};
289
+
290
+ export type OptionalFlat<O> = {
291
+ [K in keyof O]?: O[K];
292
+ } & {};
293
+
294
+ type _Record<K extends keyof any, T> = {
295
+ [P in K]: T;
296
+ };
297
+
298
+ // cause typescript not to expand types and preserve names
299
+ type NoExpand<T> = T extends unknown ? T : never;
300
+
301
+ // this type assumes the passed object is entirely optional
302
+ export type AtLeast<O extends object, K extends string> = NoExpand<
303
+ O extends unknown
304
+ ? | (K extends keyof O ? { [P in K]: O[P] } & O : O)
305
+ | {[P in keyof O as P extends K ? P : never]-?: O[P]} & O
306
+ : never>;
307
+
308
+ type _Strict<U, _U = U> = U extends unknown ? U & OptionalFlat<_Record<Exclude<Keys<_U>, keyof U>, never>> : never;
309
+
310
+ export type Strict<U extends object> = ComputeRaw<_Strict<U>>;
311
+ /** End Helper Types for "Merge" **/
312
+
313
+ export type Merge<U extends object> = ComputeRaw<_Merge<Strict<U>>>;
314
+
315
+ export type Boolean = True | False
316
+
317
+ export type True = 1
318
+
319
+ export type False = 0
320
+
321
+ export type Not<B extends Boolean> = {
322
+ 0: 1
323
+ 1: 0
324
+ }[B]
325
+
326
+ export type Extends<A1 extends any, A2 extends any> = [A1] extends [never]
327
+ ? 0 // anything `never` is false
328
+ : A1 extends A2
329
+ ? 1
330
+ : 0
331
+
332
+ export type Has<U extends Union, U1 extends Union> = Not<
333
+ Extends<Exclude<U1, U>, U1>
334
+ >
335
+
336
+ export type Or<B1 extends Boolean, B2 extends Boolean> = {
337
+ 0: {
338
+ 0: 0
339
+ 1: 1
340
+ }
341
+ 1: {
342
+ 0: 1
343
+ 1: 1
344
+ }
345
+ }[B1][B2]
346
+
347
+ export type Keys<U extends Union> = U extends unknown ? keyof U : never
348
+
349
+ export type GetScalarType<T, O> = O extends object ? {
350
+ [P in keyof T]: P extends keyof O
351
+ ? O[P]
352
+ : never
353
+ } : never
354
+
355
+ type FieldPaths<
356
+ T,
357
+ U = Omit<T, '_avg' | '_sum' | '_count' | '_min' | '_max'>
358
+ > = IsObject<T> extends True ? U : T
359
+
360
+ export type GetHavingFields<T> = {
361
+ [K in keyof T]: Or<
362
+ Or<Extends<'OR', K>, Extends<'AND', K>>,
363
+ Extends<'NOT', K>
364
+ > extends True
365
+ ? // infer is only needed to not hit TS limit
366
+ // based on the brilliant idea of Pierre-Antoine Mills
367
+ // https://github.com/microsoft/TypeScript/issues/30188#issuecomment-478938437
368
+ T[K] extends infer TK
369
+ ? GetHavingFields<UnEnumerate<TK> extends object ? Merge<UnEnumerate<TK>> : never>
370
+ : never
371
+ : {} extends FieldPaths<T[K]>
372
+ ? never
373
+ : K
374
+ }[keyof T]
375
+
376
+ /**
377
+ * Convert tuple to union
378
+ */
379
+ type _TupleToUnion<T> = T extends (infer E)[] ? E : never
380
+ type TupleToUnion<K extends readonly any[]> = _TupleToUnion<K>
381
+ export type MaybeTupleToUnion<T> = T extends any[] ? TupleToUnion<T> : T
382
+
383
+ /**
384
+ * Like `Pick`, but additionally can also accept an array of keys
385
+ */
386
+ export type PickEnumerable<T, K extends Enumerable<keyof T> | keyof T> = Prisma__Pick<T, MaybeTupleToUnion<K>>
387
+
388
+ /**
389
+ * Exclude all keys with underscores
390
+ */
391
+ export type ExcludeUnderscoreKeys<T extends string> = T extends `_${string}` ? never : T
392
+
393
+
394
+ export type FieldRef<Model, FieldType> = runtime.FieldRef<Model, FieldType>
395
+
396
+ type FieldRefInputType<Model, FieldType> = Model extends never ? never : FieldRef<Model, FieldType>
397
+
398
+
399
+ export const ModelName = {
400
+ AdversarialResource: 'AdversarialResource',
401
+ AdversarialTag: 'AdversarialTag',
402
+ AdversarialCategory: 'AdversarialCategory',
403
+ AdversarialSubCategory: 'AdversarialSubCategory',
404
+ AdversarialLabel: 'AdversarialLabel',
405
+ AdversarialParent: 'AdversarialParent',
406
+ AdversarialInner: 'AdversarialInner'
407
+ } as const
408
+
409
+ export type ModelName = (typeof ModelName)[keyof typeof ModelName]
410
+
411
+
412
+
413
+ export interface TypeMapCb<GlobalOmitOptions = {}> extends runtime.Types.Utils.Fn<{extArgs: runtime.Types.Extensions.InternalArgs }, runtime.Types.Utils.Record<string, any>> {
414
+ returns: TypeMap<this['params']['extArgs'], GlobalOmitOptions>
415
+ }
416
+
417
+ export type TypeMap<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> = {
418
+ globalOmitOptions: {
419
+ omit: GlobalOmitOptions
420
+ }
421
+ meta: {
422
+ modelProps: "adversarialResource" | "adversarialTag" | "adversarialCategory" | "adversarialSubCategory" | "adversarialLabel" | "adversarialParent" | "adversarialInner"
423
+ txIsolationLevel: TransactionIsolationLevel
424
+ }
425
+ model: {
426
+ AdversarialResource: {
427
+ payload: Prisma.$AdversarialResourcePayload<ExtArgs>
428
+ fields: Prisma.AdversarialResourceFieldRefs
429
+ operations: {
430
+ findUnique: {
431
+ args: Prisma.AdversarialResourceFindUniqueArgs<ExtArgs>
432
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialResourcePayload> | null
433
+ }
434
+ findUniqueOrThrow: {
435
+ args: Prisma.AdversarialResourceFindUniqueOrThrowArgs<ExtArgs>
436
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialResourcePayload>
437
+ }
438
+ findFirst: {
439
+ args: Prisma.AdversarialResourceFindFirstArgs<ExtArgs>
440
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialResourcePayload> | null
441
+ }
442
+ findFirstOrThrow: {
443
+ args: Prisma.AdversarialResourceFindFirstOrThrowArgs<ExtArgs>
444
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialResourcePayload>
445
+ }
446
+ findMany: {
447
+ args: Prisma.AdversarialResourceFindManyArgs<ExtArgs>
448
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialResourcePayload>[]
449
+ }
450
+ create: {
451
+ args: Prisma.AdversarialResourceCreateArgs<ExtArgs>
452
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialResourcePayload>
453
+ }
454
+ createMany: {
455
+ args: Prisma.AdversarialResourceCreateManyArgs<ExtArgs>
456
+ result: BatchPayload
457
+ }
458
+ createManyAndReturn: {
459
+ args: Prisma.AdversarialResourceCreateManyAndReturnArgs<ExtArgs>
460
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialResourcePayload>[]
461
+ }
462
+ delete: {
463
+ args: Prisma.AdversarialResourceDeleteArgs<ExtArgs>
464
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialResourcePayload>
465
+ }
466
+ update: {
467
+ args: Prisma.AdversarialResourceUpdateArgs<ExtArgs>
468
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialResourcePayload>
469
+ }
470
+ deleteMany: {
471
+ args: Prisma.AdversarialResourceDeleteManyArgs<ExtArgs>
472
+ result: BatchPayload
473
+ }
474
+ updateMany: {
475
+ args: Prisma.AdversarialResourceUpdateManyArgs<ExtArgs>
476
+ result: BatchPayload
477
+ }
478
+ updateManyAndReturn: {
479
+ args: Prisma.AdversarialResourceUpdateManyAndReturnArgs<ExtArgs>
480
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialResourcePayload>[]
481
+ }
482
+ upsert: {
483
+ args: Prisma.AdversarialResourceUpsertArgs<ExtArgs>
484
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialResourcePayload>
485
+ }
486
+ aggregate: {
487
+ args: Prisma.AdversarialResourceAggregateArgs<ExtArgs>
488
+ result: runtime.Types.Utils.Optional<Prisma.AggregateAdversarialResource>
489
+ }
490
+ groupBy: {
491
+ args: Prisma.AdversarialResourceGroupByArgs<ExtArgs>
492
+ result: runtime.Types.Utils.Optional<Prisma.AdversarialResourceGroupByOutputType>[]
493
+ }
494
+ count: {
495
+ args: Prisma.AdversarialResourceCountArgs<ExtArgs>
496
+ result: runtime.Types.Utils.Optional<Prisma.AdversarialResourceCountAggregateOutputType> | number
497
+ }
498
+ }
499
+ }
500
+ AdversarialTag: {
501
+ payload: Prisma.$AdversarialTagPayload<ExtArgs>
502
+ fields: Prisma.AdversarialTagFieldRefs
503
+ operations: {
504
+ findUnique: {
505
+ args: Prisma.AdversarialTagFindUniqueArgs<ExtArgs>
506
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialTagPayload> | null
507
+ }
508
+ findUniqueOrThrow: {
509
+ args: Prisma.AdversarialTagFindUniqueOrThrowArgs<ExtArgs>
510
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialTagPayload>
511
+ }
512
+ findFirst: {
513
+ args: Prisma.AdversarialTagFindFirstArgs<ExtArgs>
514
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialTagPayload> | null
515
+ }
516
+ findFirstOrThrow: {
517
+ args: Prisma.AdversarialTagFindFirstOrThrowArgs<ExtArgs>
518
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialTagPayload>
519
+ }
520
+ findMany: {
521
+ args: Prisma.AdversarialTagFindManyArgs<ExtArgs>
522
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialTagPayload>[]
523
+ }
524
+ create: {
525
+ args: Prisma.AdversarialTagCreateArgs<ExtArgs>
526
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialTagPayload>
527
+ }
528
+ createMany: {
529
+ args: Prisma.AdversarialTagCreateManyArgs<ExtArgs>
530
+ result: BatchPayload
531
+ }
532
+ createManyAndReturn: {
533
+ args: Prisma.AdversarialTagCreateManyAndReturnArgs<ExtArgs>
534
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialTagPayload>[]
535
+ }
536
+ delete: {
537
+ args: Prisma.AdversarialTagDeleteArgs<ExtArgs>
538
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialTagPayload>
539
+ }
540
+ update: {
541
+ args: Prisma.AdversarialTagUpdateArgs<ExtArgs>
542
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialTagPayload>
543
+ }
544
+ deleteMany: {
545
+ args: Prisma.AdversarialTagDeleteManyArgs<ExtArgs>
546
+ result: BatchPayload
547
+ }
548
+ updateMany: {
549
+ args: Prisma.AdversarialTagUpdateManyArgs<ExtArgs>
550
+ result: BatchPayload
551
+ }
552
+ updateManyAndReturn: {
553
+ args: Prisma.AdversarialTagUpdateManyAndReturnArgs<ExtArgs>
554
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialTagPayload>[]
555
+ }
556
+ upsert: {
557
+ args: Prisma.AdversarialTagUpsertArgs<ExtArgs>
558
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialTagPayload>
559
+ }
560
+ aggregate: {
561
+ args: Prisma.AdversarialTagAggregateArgs<ExtArgs>
562
+ result: runtime.Types.Utils.Optional<Prisma.AggregateAdversarialTag>
563
+ }
564
+ groupBy: {
565
+ args: Prisma.AdversarialTagGroupByArgs<ExtArgs>
566
+ result: runtime.Types.Utils.Optional<Prisma.AdversarialTagGroupByOutputType>[]
567
+ }
568
+ count: {
569
+ args: Prisma.AdversarialTagCountArgs<ExtArgs>
570
+ result: runtime.Types.Utils.Optional<Prisma.AdversarialTagCountAggregateOutputType> | number
571
+ }
572
+ }
573
+ }
574
+ AdversarialCategory: {
575
+ payload: Prisma.$AdversarialCategoryPayload<ExtArgs>
576
+ fields: Prisma.AdversarialCategoryFieldRefs
577
+ operations: {
578
+ findUnique: {
579
+ args: Prisma.AdversarialCategoryFindUniqueArgs<ExtArgs>
580
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialCategoryPayload> | null
581
+ }
582
+ findUniqueOrThrow: {
583
+ args: Prisma.AdversarialCategoryFindUniqueOrThrowArgs<ExtArgs>
584
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialCategoryPayload>
585
+ }
586
+ findFirst: {
587
+ args: Prisma.AdversarialCategoryFindFirstArgs<ExtArgs>
588
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialCategoryPayload> | null
589
+ }
590
+ findFirstOrThrow: {
591
+ args: Prisma.AdversarialCategoryFindFirstOrThrowArgs<ExtArgs>
592
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialCategoryPayload>
593
+ }
594
+ findMany: {
595
+ args: Prisma.AdversarialCategoryFindManyArgs<ExtArgs>
596
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialCategoryPayload>[]
597
+ }
598
+ create: {
599
+ args: Prisma.AdversarialCategoryCreateArgs<ExtArgs>
600
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialCategoryPayload>
601
+ }
602
+ createMany: {
603
+ args: Prisma.AdversarialCategoryCreateManyArgs<ExtArgs>
604
+ result: BatchPayload
605
+ }
606
+ createManyAndReturn: {
607
+ args: Prisma.AdversarialCategoryCreateManyAndReturnArgs<ExtArgs>
608
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialCategoryPayload>[]
609
+ }
610
+ delete: {
611
+ args: Prisma.AdversarialCategoryDeleteArgs<ExtArgs>
612
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialCategoryPayload>
613
+ }
614
+ update: {
615
+ args: Prisma.AdversarialCategoryUpdateArgs<ExtArgs>
616
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialCategoryPayload>
617
+ }
618
+ deleteMany: {
619
+ args: Prisma.AdversarialCategoryDeleteManyArgs<ExtArgs>
620
+ result: BatchPayload
621
+ }
622
+ updateMany: {
623
+ args: Prisma.AdversarialCategoryUpdateManyArgs<ExtArgs>
624
+ result: BatchPayload
625
+ }
626
+ updateManyAndReturn: {
627
+ args: Prisma.AdversarialCategoryUpdateManyAndReturnArgs<ExtArgs>
628
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialCategoryPayload>[]
629
+ }
630
+ upsert: {
631
+ args: Prisma.AdversarialCategoryUpsertArgs<ExtArgs>
632
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialCategoryPayload>
633
+ }
634
+ aggregate: {
635
+ args: Prisma.AdversarialCategoryAggregateArgs<ExtArgs>
636
+ result: runtime.Types.Utils.Optional<Prisma.AggregateAdversarialCategory>
637
+ }
638
+ groupBy: {
639
+ args: Prisma.AdversarialCategoryGroupByArgs<ExtArgs>
640
+ result: runtime.Types.Utils.Optional<Prisma.AdversarialCategoryGroupByOutputType>[]
641
+ }
642
+ count: {
643
+ args: Prisma.AdversarialCategoryCountArgs<ExtArgs>
644
+ result: runtime.Types.Utils.Optional<Prisma.AdversarialCategoryCountAggregateOutputType> | number
645
+ }
646
+ }
647
+ }
648
+ AdversarialSubCategory: {
649
+ payload: Prisma.$AdversarialSubCategoryPayload<ExtArgs>
650
+ fields: Prisma.AdversarialSubCategoryFieldRefs
651
+ operations: {
652
+ findUnique: {
653
+ args: Prisma.AdversarialSubCategoryFindUniqueArgs<ExtArgs>
654
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialSubCategoryPayload> | null
655
+ }
656
+ findUniqueOrThrow: {
657
+ args: Prisma.AdversarialSubCategoryFindUniqueOrThrowArgs<ExtArgs>
658
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialSubCategoryPayload>
659
+ }
660
+ findFirst: {
661
+ args: Prisma.AdversarialSubCategoryFindFirstArgs<ExtArgs>
662
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialSubCategoryPayload> | null
663
+ }
664
+ findFirstOrThrow: {
665
+ args: Prisma.AdversarialSubCategoryFindFirstOrThrowArgs<ExtArgs>
666
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialSubCategoryPayload>
667
+ }
668
+ findMany: {
669
+ args: Prisma.AdversarialSubCategoryFindManyArgs<ExtArgs>
670
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialSubCategoryPayload>[]
671
+ }
672
+ create: {
673
+ args: Prisma.AdversarialSubCategoryCreateArgs<ExtArgs>
674
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialSubCategoryPayload>
675
+ }
676
+ createMany: {
677
+ args: Prisma.AdversarialSubCategoryCreateManyArgs<ExtArgs>
678
+ result: BatchPayload
679
+ }
680
+ createManyAndReturn: {
681
+ args: Prisma.AdversarialSubCategoryCreateManyAndReturnArgs<ExtArgs>
682
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialSubCategoryPayload>[]
683
+ }
684
+ delete: {
685
+ args: Prisma.AdversarialSubCategoryDeleteArgs<ExtArgs>
686
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialSubCategoryPayload>
687
+ }
688
+ update: {
689
+ args: Prisma.AdversarialSubCategoryUpdateArgs<ExtArgs>
690
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialSubCategoryPayload>
691
+ }
692
+ deleteMany: {
693
+ args: Prisma.AdversarialSubCategoryDeleteManyArgs<ExtArgs>
694
+ result: BatchPayload
695
+ }
696
+ updateMany: {
697
+ args: Prisma.AdversarialSubCategoryUpdateManyArgs<ExtArgs>
698
+ result: BatchPayload
699
+ }
700
+ updateManyAndReturn: {
701
+ args: Prisma.AdversarialSubCategoryUpdateManyAndReturnArgs<ExtArgs>
702
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialSubCategoryPayload>[]
703
+ }
704
+ upsert: {
705
+ args: Prisma.AdversarialSubCategoryUpsertArgs<ExtArgs>
706
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialSubCategoryPayload>
707
+ }
708
+ aggregate: {
709
+ args: Prisma.AdversarialSubCategoryAggregateArgs<ExtArgs>
710
+ result: runtime.Types.Utils.Optional<Prisma.AggregateAdversarialSubCategory>
711
+ }
712
+ groupBy: {
713
+ args: Prisma.AdversarialSubCategoryGroupByArgs<ExtArgs>
714
+ result: runtime.Types.Utils.Optional<Prisma.AdversarialSubCategoryGroupByOutputType>[]
715
+ }
716
+ count: {
717
+ args: Prisma.AdversarialSubCategoryCountArgs<ExtArgs>
718
+ result: runtime.Types.Utils.Optional<Prisma.AdversarialSubCategoryCountAggregateOutputType> | number
719
+ }
720
+ }
721
+ }
722
+ AdversarialLabel: {
723
+ payload: Prisma.$AdversarialLabelPayload<ExtArgs>
724
+ fields: Prisma.AdversarialLabelFieldRefs
725
+ operations: {
726
+ findUnique: {
727
+ args: Prisma.AdversarialLabelFindUniqueArgs<ExtArgs>
728
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialLabelPayload> | null
729
+ }
730
+ findUniqueOrThrow: {
731
+ args: Prisma.AdversarialLabelFindUniqueOrThrowArgs<ExtArgs>
732
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialLabelPayload>
733
+ }
734
+ findFirst: {
735
+ args: Prisma.AdversarialLabelFindFirstArgs<ExtArgs>
736
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialLabelPayload> | null
737
+ }
738
+ findFirstOrThrow: {
739
+ args: Prisma.AdversarialLabelFindFirstOrThrowArgs<ExtArgs>
740
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialLabelPayload>
741
+ }
742
+ findMany: {
743
+ args: Prisma.AdversarialLabelFindManyArgs<ExtArgs>
744
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialLabelPayload>[]
745
+ }
746
+ create: {
747
+ args: Prisma.AdversarialLabelCreateArgs<ExtArgs>
748
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialLabelPayload>
749
+ }
750
+ createMany: {
751
+ args: Prisma.AdversarialLabelCreateManyArgs<ExtArgs>
752
+ result: BatchPayload
753
+ }
754
+ createManyAndReturn: {
755
+ args: Prisma.AdversarialLabelCreateManyAndReturnArgs<ExtArgs>
756
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialLabelPayload>[]
757
+ }
758
+ delete: {
759
+ args: Prisma.AdversarialLabelDeleteArgs<ExtArgs>
760
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialLabelPayload>
761
+ }
762
+ update: {
763
+ args: Prisma.AdversarialLabelUpdateArgs<ExtArgs>
764
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialLabelPayload>
765
+ }
766
+ deleteMany: {
767
+ args: Prisma.AdversarialLabelDeleteManyArgs<ExtArgs>
768
+ result: BatchPayload
769
+ }
770
+ updateMany: {
771
+ args: Prisma.AdversarialLabelUpdateManyArgs<ExtArgs>
772
+ result: BatchPayload
773
+ }
774
+ updateManyAndReturn: {
775
+ args: Prisma.AdversarialLabelUpdateManyAndReturnArgs<ExtArgs>
776
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialLabelPayload>[]
777
+ }
778
+ upsert: {
779
+ args: Prisma.AdversarialLabelUpsertArgs<ExtArgs>
780
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialLabelPayload>
781
+ }
782
+ aggregate: {
783
+ args: Prisma.AdversarialLabelAggregateArgs<ExtArgs>
784
+ result: runtime.Types.Utils.Optional<Prisma.AggregateAdversarialLabel>
785
+ }
786
+ groupBy: {
787
+ args: Prisma.AdversarialLabelGroupByArgs<ExtArgs>
788
+ result: runtime.Types.Utils.Optional<Prisma.AdversarialLabelGroupByOutputType>[]
789
+ }
790
+ count: {
791
+ args: Prisma.AdversarialLabelCountArgs<ExtArgs>
792
+ result: runtime.Types.Utils.Optional<Prisma.AdversarialLabelCountAggregateOutputType> | number
793
+ }
794
+ }
795
+ }
796
+ AdversarialParent: {
797
+ payload: Prisma.$AdversarialParentPayload<ExtArgs>
798
+ fields: Prisma.AdversarialParentFieldRefs
799
+ operations: {
800
+ findUnique: {
801
+ args: Prisma.AdversarialParentFindUniqueArgs<ExtArgs>
802
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialParentPayload> | null
803
+ }
804
+ findUniqueOrThrow: {
805
+ args: Prisma.AdversarialParentFindUniqueOrThrowArgs<ExtArgs>
806
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialParentPayload>
807
+ }
808
+ findFirst: {
809
+ args: Prisma.AdversarialParentFindFirstArgs<ExtArgs>
810
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialParentPayload> | null
811
+ }
812
+ findFirstOrThrow: {
813
+ args: Prisma.AdversarialParentFindFirstOrThrowArgs<ExtArgs>
814
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialParentPayload>
815
+ }
816
+ findMany: {
817
+ args: Prisma.AdversarialParentFindManyArgs<ExtArgs>
818
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialParentPayload>[]
819
+ }
820
+ create: {
821
+ args: Prisma.AdversarialParentCreateArgs<ExtArgs>
822
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialParentPayload>
823
+ }
824
+ createMany: {
825
+ args: Prisma.AdversarialParentCreateManyArgs<ExtArgs>
826
+ result: BatchPayload
827
+ }
828
+ createManyAndReturn: {
829
+ args: Prisma.AdversarialParentCreateManyAndReturnArgs<ExtArgs>
830
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialParentPayload>[]
831
+ }
832
+ delete: {
833
+ args: Prisma.AdversarialParentDeleteArgs<ExtArgs>
834
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialParentPayload>
835
+ }
836
+ update: {
837
+ args: Prisma.AdversarialParentUpdateArgs<ExtArgs>
838
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialParentPayload>
839
+ }
840
+ deleteMany: {
841
+ args: Prisma.AdversarialParentDeleteManyArgs<ExtArgs>
842
+ result: BatchPayload
843
+ }
844
+ updateMany: {
845
+ args: Prisma.AdversarialParentUpdateManyArgs<ExtArgs>
846
+ result: BatchPayload
847
+ }
848
+ updateManyAndReturn: {
849
+ args: Prisma.AdversarialParentUpdateManyAndReturnArgs<ExtArgs>
850
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialParentPayload>[]
851
+ }
852
+ upsert: {
853
+ args: Prisma.AdversarialParentUpsertArgs<ExtArgs>
854
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialParentPayload>
855
+ }
856
+ aggregate: {
857
+ args: Prisma.AdversarialParentAggregateArgs<ExtArgs>
858
+ result: runtime.Types.Utils.Optional<Prisma.AggregateAdversarialParent>
859
+ }
860
+ groupBy: {
861
+ args: Prisma.AdversarialParentGroupByArgs<ExtArgs>
862
+ result: runtime.Types.Utils.Optional<Prisma.AdversarialParentGroupByOutputType>[]
863
+ }
864
+ count: {
865
+ args: Prisma.AdversarialParentCountArgs<ExtArgs>
866
+ result: runtime.Types.Utils.Optional<Prisma.AdversarialParentCountAggregateOutputType> | number
867
+ }
868
+ }
869
+ }
870
+ AdversarialInner: {
871
+ payload: Prisma.$AdversarialInnerPayload<ExtArgs>
872
+ fields: Prisma.AdversarialInnerFieldRefs
873
+ operations: {
874
+ findUnique: {
875
+ args: Prisma.AdversarialInnerFindUniqueArgs<ExtArgs>
876
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialInnerPayload> | null
877
+ }
878
+ findUniqueOrThrow: {
879
+ args: Prisma.AdversarialInnerFindUniqueOrThrowArgs<ExtArgs>
880
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialInnerPayload>
881
+ }
882
+ findFirst: {
883
+ args: Prisma.AdversarialInnerFindFirstArgs<ExtArgs>
884
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialInnerPayload> | null
885
+ }
886
+ findFirstOrThrow: {
887
+ args: Prisma.AdversarialInnerFindFirstOrThrowArgs<ExtArgs>
888
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialInnerPayload>
889
+ }
890
+ findMany: {
891
+ args: Prisma.AdversarialInnerFindManyArgs<ExtArgs>
892
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialInnerPayload>[]
893
+ }
894
+ create: {
895
+ args: Prisma.AdversarialInnerCreateArgs<ExtArgs>
896
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialInnerPayload>
897
+ }
898
+ createMany: {
899
+ args: Prisma.AdversarialInnerCreateManyArgs<ExtArgs>
900
+ result: BatchPayload
901
+ }
902
+ createManyAndReturn: {
903
+ args: Prisma.AdversarialInnerCreateManyAndReturnArgs<ExtArgs>
904
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialInnerPayload>[]
905
+ }
906
+ delete: {
907
+ args: Prisma.AdversarialInnerDeleteArgs<ExtArgs>
908
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialInnerPayload>
909
+ }
910
+ update: {
911
+ args: Prisma.AdversarialInnerUpdateArgs<ExtArgs>
912
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialInnerPayload>
913
+ }
914
+ deleteMany: {
915
+ args: Prisma.AdversarialInnerDeleteManyArgs<ExtArgs>
916
+ result: BatchPayload
917
+ }
918
+ updateMany: {
919
+ args: Prisma.AdversarialInnerUpdateManyArgs<ExtArgs>
920
+ result: BatchPayload
921
+ }
922
+ updateManyAndReturn: {
923
+ args: Prisma.AdversarialInnerUpdateManyAndReturnArgs<ExtArgs>
924
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialInnerPayload>[]
925
+ }
926
+ upsert: {
927
+ args: Prisma.AdversarialInnerUpsertArgs<ExtArgs>
928
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$AdversarialInnerPayload>
929
+ }
930
+ aggregate: {
931
+ args: Prisma.AdversarialInnerAggregateArgs<ExtArgs>
932
+ result: runtime.Types.Utils.Optional<Prisma.AggregateAdversarialInner>
933
+ }
934
+ groupBy: {
935
+ args: Prisma.AdversarialInnerGroupByArgs<ExtArgs>
936
+ result: runtime.Types.Utils.Optional<Prisma.AdversarialInnerGroupByOutputType>[]
937
+ }
938
+ count: {
939
+ args: Prisma.AdversarialInnerCountArgs<ExtArgs>
940
+ result: runtime.Types.Utils.Optional<Prisma.AdversarialInnerCountAggregateOutputType> | number
941
+ }
942
+ }
943
+ }
944
+ }
945
+ } & {
946
+ other: {
947
+ payload: any
948
+ operations: {
949
+ $executeRaw: {
950
+ args: [query: TemplateStringsArray | Sql, ...values: any[]],
951
+ result: any
952
+ }
953
+ $executeRawUnsafe: {
954
+ args: [query: string, ...values: any[]],
955
+ result: any
956
+ }
957
+ $queryRaw: {
958
+ args: [query: TemplateStringsArray | Sql, ...values: any[]],
959
+ result: any
960
+ }
961
+ $queryRawUnsafe: {
962
+ args: [query: string, ...values: any[]],
963
+ result: any
964
+ }
965
+ }
966
+ }
967
+ }
968
+
969
+ /**
970
+ * Enums
971
+ */
972
+
973
+ export const TransactionIsolationLevel = runtime.makeStrictEnum({
974
+ Serializable: 'Serializable'
975
+ } as const)
976
+
977
+ export type TransactionIsolationLevel = (typeof TransactionIsolationLevel)[keyof typeof TransactionIsolationLevel]
978
+
979
+
980
+ export const AdversarialResourceScalarFieldEnum = {
981
+ id: 'id',
982
+ aBool: 'aBool',
983
+ aString: 'aString',
984
+ aNumber: 'aNumber',
985
+ aDouble: 'aDouble',
986
+ aOptionalString: 'aOptionalString',
987
+ createdBy: 'createdBy',
988
+ scope: 'scope',
989
+ createdAt: 'createdAt'
990
+ } as const
991
+
992
+ export type AdversarialResourceScalarFieldEnum = (typeof AdversarialResourceScalarFieldEnum)[keyof typeof AdversarialResourceScalarFieldEnum]
993
+
994
+
995
+ export const AdversarialTagScalarFieldEnum = {
996
+ id: 'id',
997
+ tagId: 'tagId',
998
+ name: 'name',
999
+ resourceId: 'resourceId'
1000
+ } as const
1001
+
1002
+ export type AdversarialTagScalarFieldEnum = (typeof AdversarialTagScalarFieldEnum)[keyof typeof AdversarialTagScalarFieldEnum]
1003
+
1004
+
1005
+ export const AdversarialCategoryScalarFieldEnum = {
1006
+ id: 'id',
1007
+ name: 'name',
1008
+ resourceId: 'resourceId'
1009
+ } as const
1010
+
1011
+ export type AdversarialCategoryScalarFieldEnum = (typeof AdversarialCategoryScalarFieldEnum)[keyof typeof AdversarialCategoryScalarFieldEnum]
1012
+
1013
+
1014
+ export const AdversarialSubCategoryScalarFieldEnum = {
1015
+ id: 'id',
1016
+ name: 'name',
1017
+ categoryId: 'categoryId'
1018
+ } as const
1019
+
1020
+ export type AdversarialSubCategoryScalarFieldEnum = (typeof AdversarialSubCategoryScalarFieldEnum)[keyof typeof AdversarialSubCategoryScalarFieldEnum]
1021
+
1022
+
1023
+ export const AdversarialLabelScalarFieldEnum = {
1024
+ id: 'id',
1025
+ name: 'name',
1026
+ subCategoryId: 'subCategoryId'
1027
+ } as const
1028
+
1029
+ export type AdversarialLabelScalarFieldEnum = (typeof AdversarialLabelScalarFieldEnum)[keyof typeof AdversarialLabelScalarFieldEnum]
1030
+
1031
+
1032
+ export const AdversarialParentScalarFieldEnum = {
1033
+ id: 'id',
1034
+ aBool: 'aBool',
1035
+ aString: 'aString',
1036
+ aNumber: 'aNumber',
1037
+ aOptionalString: 'aOptionalString',
1038
+ resourceId: 'resourceId'
1039
+ } as const
1040
+
1041
+ export type AdversarialParentScalarFieldEnum = (typeof AdversarialParentScalarFieldEnum)[keyof typeof AdversarialParentScalarFieldEnum]
1042
+
1043
+
1044
+ export const AdversarialInnerScalarFieldEnum = {
1045
+ id: 'id',
1046
+ aBool: 'aBool',
1047
+ aString: 'aString',
1048
+ aNumber: 'aNumber',
1049
+ aOptionalString: 'aOptionalString',
1050
+ parentId: 'parentId'
1051
+ } as const
1052
+
1053
+ export type AdversarialInnerScalarFieldEnum = (typeof AdversarialInnerScalarFieldEnum)[keyof typeof AdversarialInnerScalarFieldEnum]
1054
+
1055
+
1056
+ export const SortOrder = {
1057
+ asc: 'asc',
1058
+ desc: 'desc'
1059
+ } as const
1060
+
1061
+ export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder]
1062
+
1063
+
1064
+ export const NullsOrder = {
1065
+ first: 'first',
1066
+ last: 'last'
1067
+ } as const
1068
+
1069
+ export type NullsOrder = (typeof NullsOrder)[keyof typeof NullsOrder]
1070
+
1071
+
1072
+
1073
+ /**
1074
+ * Field references
1075
+ */
1076
+
1077
+
1078
+ /**
1079
+ * Reference to a field of type 'String'
1080
+ */
1081
+ export type StringFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'String'>
1082
+
1083
+
1084
+
1085
+ /**
1086
+ * Reference to a field of type 'Boolean'
1087
+ */
1088
+ export type BooleanFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Boolean'>
1089
+
1090
+
1091
+
1092
+ /**
1093
+ * Reference to a field of type 'Int'
1094
+ */
1095
+ export type IntFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Int'>
1096
+
1097
+
1098
+
1099
+ /**
1100
+ * Reference to a field of type 'Float'
1101
+ */
1102
+ export type FloatFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Float'>
1103
+
1104
+
1105
+
1106
+ /**
1107
+ * Reference to a field of type 'DateTime'
1108
+ */
1109
+ export type DateTimeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'DateTime'>
1110
+
1111
+
1112
+ /**
1113
+ * Batch Payload for updateMany & deleteMany & createMany
1114
+ */
1115
+ export type BatchPayload = {
1116
+ count: number
1117
+ }
1118
+
1119
+ export const defineExtension = runtime.Extensions.defineExtension as unknown as runtime.Types.Extensions.ExtendsHook<"define", TypeMapCb, runtime.Types.Extensions.DefaultArgs>
1120
+ export type DefaultPrismaClient = PrismaClient
1121
+ export type ErrorFormat = 'pretty' | 'colorless' | 'minimal'
1122
+ /**
1123
+ * Options common to all variants of `PrismaClientOptions`, regardless of whether you connect to your database through a driver adapter or through Prisma Accelerate.
1124
+ */
1125
+ export interface PrismaClientBaseOptions {
1126
+ /**
1127
+ * @default "colorless"
1128
+ */
1129
+ errorFormat?: ErrorFormat
1130
+ /**
1131
+ * @example
1132
+ * ```
1133
+ * // Shorthand for `emit: 'stdout'`
1134
+ * log: ['query', 'info', 'warn', 'error']
1135
+ *
1136
+ * // Emit as events only
1137
+ * log: [
1138
+ * { emit: 'event', level: 'query' },
1139
+ * { emit: 'event', level: 'info' },
1140
+ * { emit: 'event', level: 'warn' }
1141
+ * { emit: 'event', level: 'error' }
1142
+ * ]
1143
+ *
1144
+ * / Emit as events and log to stdout
1145
+ * og: [
1146
+ * { emit: 'stdout', level: 'query' },
1147
+ * { emit: 'stdout', level: 'info' },
1148
+ * { emit: 'stdout', level: 'warn' }
1149
+ * { emit: 'stdout', level: 'error' }
1150
+ *
1151
+ * ```
1152
+ * Read more in our [docs](https://pris.ly/d/logging).
1153
+ */
1154
+ log?: (LogLevel | LogDefinition)[]
1155
+ /**
1156
+ * The default values for transactionOptions
1157
+ * maxWait ?= 2000
1158
+ * timeout ?= 5000
1159
+ */
1160
+ transactionOptions?: {
1161
+ maxWait?: number
1162
+ timeout?: number
1163
+ isolationLevel?: TransactionIsolationLevel
1164
+ }
1165
+ /**
1166
+ * Global configuration for omitting model fields by default.
1167
+ *
1168
+ * @example
1169
+ * ```
1170
+ * const prisma = new PrismaClient({
1171
+ * omit: {
1172
+ * user: {
1173
+ * password: true
1174
+ * }
1175
+ * }
1176
+ * })
1177
+ * ```
1178
+ */
1179
+ omit?: GlobalOmitConfig
1180
+ /**
1181
+ * SQL commenter plugins that add metadata to SQL queries as comments.
1182
+ * Comments follow the sqlcommenter format: https://google.github.io/sqlcommenter/
1183
+ *
1184
+ * @example
1185
+ * ```
1186
+ * const prisma = new PrismaClient({
1187
+ * adapter,
1188
+ * comments: [
1189
+ * traceContext(),
1190
+ * queryInsights(),
1191
+ * ],
1192
+ * })
1193
+ * ```
1194
+ */
1195
+ comments?: runtime.SqlCommenterPlugin[]
1196
+ /**
1197
+ * Optional maximum size for the query plan cache. If not provided, a default size will be used.
1198
+ * A value of `0` can be used to disable the cache entirely. A higher cache size can improve
1199
+ * performance for applications that execute a large number of unique queries, while a smaller
1200
+ * cache size can reduce memory usage.
1201
+ *
1202
+ * @example
1203
+ * ```
1204
+ * const prisma = new PrismaClient({
1205
+ * adapter,
1206
+ * queryPlanCacheMaxSize: 100,
1207
+ * })
1208
+ * ```
1209
+ */
1210
+ queryPlanCacheMaxSize?: number
1211
+ }
1212
+
1213
+ /**
1214
+ * `PrismaClient` options for connecting to your database through Prisma Accelerate instead of a driver adapter.
1215
+ *
1216
+ * Learn more: https://pris.ly/d/accelerate
1217
+ */
1218
+ export interface PrismaClientOptionsWithAccelerateUrl extends PrismaClientBaseOptions {
1219
+ /**
1220
+ * The Prisma Accelerate connection URL. Use this option to connect to your database through Prisma Accelerate instead of using a driver adapter to connect directly.
1221
+ *
1222
+ * Learn more: https://pris.ly/d/accelerate
1223
+ */
1224
+ accelerateUrl: string
1225
+ adapter?: never
1226
+ }
1227
+
1228
+ /**
1229
+ * `PrismaClient` options for connecting to your database through a driver adapter. This is the common case in Prisma 7.
1230
+ *
1231
+ * Learn more: https://pris.ly/d/driver-adapters
1232
+ */
1233
+ export interface PrismaClientOptionsWithAdapter extends PrismaClientBaseOptions {
1234
+ /**
1235
+ * A driver adapter that PrismaClient uses to connect to your database, such as the ones provided by `@prisma/adapter-pg`, `@prisma/adapter-libsql`, `@prisma/adapter-planetscale`, etc.
1236
+ *
1237
+ * A driver adapter is **required** unless you connect to your database through Prisma Accelerate (in which case use `accelerateUrl` instead).
1238
+ *
1239
+ * Learn more: https://pris.ly/d/driver-adapters
1240
+ *
1241
+ * @example
1242
+ * ```ts
1243
+ * import { PrismaPg } from '@prisma/adapter-pg'
1244
+ * import { PrismaClient } from './generated/prisma/client'
1245
+ *
1246
+ * const adapter = new PrismaPg({ connectionString: process.env.DATABASE_URL })
1247
+ * const prisma = new PrismaClient({ adapter })
1248
+ * ```
1249
+ */
1250
+ adapter: runtime.SqlDriverAdapterFactory
1251
+ accelerateUrl?: never
1252
+ }
1253
+
1254
+ /**
1255
+ * Options passed to the `PrismaClient` constructor.
1256
+ *
1257
+ * A driver adapter (or, alternatively, a Prisma Accelerate URL) is **required**. See {@link PrismaClientOptionsWithAdapter} and {@link PrismaClientOptionsWithAccelerateUrl} for the two variants. All other properties live in {@link PrismaClientBaseOptions} and are optional.
1258
+ *
1259
+ * Learn more about driver adapters: https://pris.ly/d/driver-adapters
1260
+ */
1261
+ export type PrismaClientOptions = PrismaClientOptionsWithAccelerateUrl | PrismaClientOptionsWithAdapter
1262
+ export type GlobalOmitConfig = {
1263
+ adversarialResource?: Prisma.AdversarialResourceOmit
1264
+ adversarialTag?: Prisma.AdversarialTagOmit
1265
+ adversarialCategory?: Prisma.AdversarialCategoryOmit
1266
+ adversarialSubCategory?: Prisma.AdversarialSubCategoryOmit
1267
+ adversarialLabel?: Prisma.AdversarialLabelOmit
1268
+ adversarialParent?: Prisma.AdversarialParentOmit
1269
+ adversarialInner?: Prisma.AdversarialInnerOmit
1270
+ }
1271
+
1272
+ /* Types for Logging */
1273
+ export type LogLevel = 'info' | 'query' | 'warn' | 'error'
1274
+ export type LogDefinition = {
1275
+ level: LogLevel
1276
+ emit: 'stdout' | 'event'
1277
+ }
1278
+
1279
+ export type CheckIsLogLevel<T> = T extends LogLevel ? T : never;
1280
+
1281
+ export type GetLogType<T> = CheckIsLogLevel<
1282
+ T extends LogDefinition ? T['level'] : T
1283
+ >;
1284
+
1285
+ export type GetEvents<T extends any[]> = T extends Array<LogLevel | LogDefinition>
1286
+ ? GetLogType<T[number]>
1287
+ : never;
1288
+
1289
+ export type QueryEvent = {
1290
+ timestamp: Date
1291
+ query: string
1292
+ params: string
1293
+ duration: number
1294
+ target: string
1295
+ }
1296
+
1297
+ export type LogEvent = {
1298
+ timestamp: Date
1299
+ message: string
1300
+ target: string
1301
+ }
1302
+ /* End Types for Logging */
1303
+
1304
+
1305
+ export type PrismaAction =
1306
+ | 'findUnique'
1307
+ | 'findUniqueOrThrow'
1308
+ | 'findMany'
1309
+ | 'findFirst'
1310
+ | 'findFirstOrThrow'
1311
+ | 'create'
1312
+ | 'createMany'
1313
+ | 'createManyAndReturn'
1314
+ | 'update'
1315
+ | 'updateMany'
1316
+ | 'updateManyAndReturn'
1317
+ | 'upsert'
1318
+ | 'delete'
1319
+ | 'deleteMany'
1320
+ | 'executeRaw'
1321
+ | 'queryRaw'
1322
+ | 'aggregate'
1323
+ | 'count'
1324
+ | 'runCommandRaw'
1325
+ | 'findRaw'
1326
+ | 'groupBy'
1327
+
1328
+ /**
1329
+ * `PrismaClient` proxy available in interactive transactions.
1330
+ */
1331
+ export type TransactionClient = Omit<DefaultPrismaClient, runtime.ITXClientDenyList>
1332
+