/* !!! This is code generated by Prisma. Do not edit directly. !!! */ /* eslint-disable */ // biome-ignore-all lint: generated file // @ts-nocheck /* * WARNING: This is an internal file that is subject to change! * * 🛑 Under no circumstances should you import this file directly! 🛑 * * All exports from this file are wrapped under a `Prisma` namespace object in the client.ts file. * While this enables partial backward compatibility, it is not part of the stable public API. * * If you are looking for your Models, Enums, and Input Types, please import them from the respective * model files in the `model` directory! */ import * as runtime from "@prisma/client/runtime/client" import type * as Prisma from "../models" import { type PrismaClient } from "./class" export type * from '../models' export type DMMF = typeof runtime.DMMF export type PrismaPromise = runtime.Types.Public.PrismaPromise /** * Prisma Errors */ export const PrismaClientKnownRequestError = runtime.PrismaClientKnownRequestError export type PrismaClientKnownRequestError = runtime.PrismaClientKnownRequestError export const PrismaClientUnknownRequestError = runtime.PrismaClientUnknownRequestError export type PrismaClientUnknownRequestError = runtime.PrismaClientUnknownRequestError export const PrismaClientRustPanicError = runtime.PrismaClientRustPanicError export type PrismaClientRustPanicError = runtime.PrismaClientRustPanicError export const PrismaClientInitializationError = runtime.PrismaClientInitializationError export type PrismaClientInitializationError = runtime.PrismaClientInitializationError export const PrismaClientValidationError = runtime.PrismaClientValidationError export type PrismaClientValidationError = runtime.PrismaClientValidationError /** * Re-export of sql-template-tag */ export const sql = runtime.sqltag export const empty = runtime.empty export const join = runtime.join export const raw = runtime.raw export const Sql = runtime.Sql export type Sql = runtime.Sql /** * Decimal.js */ export const Decimal = runtime.Decimal export type Decimal = runtime.Decimal export type DecimalJsLike = runtime.DecimalJsLike /** * Extensions */ export type Extension = runtime.Types.Extensions.UserArgs export const getExtensionContext = runtime.Extensions.getExtensionContext export type Args = runtime.Types.Public.Args export type Payload = runtime.Types.Public.Payload export type Result = runtime.Types.Public.Result export type Exact = runtime.Types.Public.Exact export type PrismaVersion = { client: string engine: string } /** * Prisma Client JS version: 7.6.0 * Query Engine version: 75cbdc1eb7150937890ad5465d861175c6624711 */ export const prismaVersion: PrismaVersion = { client: "7.6.0", engine: "75cbdc1eb7150937890ad5465d861175c6624711" } /** * Utility Types */ export type Bytes = runtime.Bytes export type JsonObject = runtime.JsonObject export type JsonArray = runtime.JsonArray export type JsonValue = runtime.JsonValue export type InputJsonObject = runtime.InputJsonObject export type InputJsonArray = runtime.InputJsonArray export type InputJsonValue = runtime.InputJsonValue export const NullTypes = { DbNull: runtime.NullTypes.DbNull as (new (secret: never) => typeof runtime.DbNull), JsonNull: runtime.NullTypes.JsonNull as (new (secret: never) => typeof runtime.JsonNull), AnyNull: runtime.NullTypes.AnyNull as (new (secret: never) => typeof runtime.AnyNull), } /** * Helper for filtering JSON entries that have `null` on the database (empty on the db) * * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field */ export const DbNull = runtime.DbNull /** * Helper for filtering JSON entries that have JSON `null` values (not empty on the db) * * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field */ export const JsonNull = runtime.JsonNull /** * Helper for filtering JSON entries that are `Prisma.DbNull` or `Prisma.JsonNull` * * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field */ export const AnyNull = runtime.AnyNull type SelectAndInclude = { select: any include: any } type SelectAndOmit = { select: any omit: any } /** * From T, pick a set of properties whose keys are in the union K */ type Prisma__Pick = { [P in K]: T[P]; }; export type Enumerable = T | Array; /** * Subset * @desc From `T` pick properties that exist in `U`. Simple version of Intersection */ export type Subset = { [key in keyof T]: key extends keyof U ? T[key] : never; }; /** * SelectSubset * @desc From `T` pick properties that exist in `U`. Simple version of Intersection. * Additionally, it validates, if both select and include are present. If the case, it errors. */ export type SelectSubset = { [key in keyof T]: key extends keyof U ? T[key] : never } & (T extends SelectAndInclude ? 'Please either choose `select` or `include`.' : T extends SelectAndOmit ? 'Please either choose `select` or `omit`.' : {}) /** * Subset + Intersection * @desc From `T` pick properties that exist in `U` and intersect `K` */ export type SubsetIntersection = { [key in keyof T]: key extends keyof U ? T[key] : never } & K type Without = { [P in Exclude]?: never }; /** * XOR is needed to have a real mutually exclusive union type * https://stackoverflow.com/questions/42123407/does-typescript-support-mutually-exclusive-types */ export type XOR = T extends object ? U extends object ? (Without & U) | (Without & T) : U : T /** * Is T a Record? */ type IsObject = T extends Array ? False : T extends Date ? False : T extends Uint8Array ? False : T extends BigInt ? False : T extends object ? True : False /** * If it's T[], return T */ export type UnEnumerate = T extends Array ? U : T /** * From ts-toolbelt */ type __Either = Omit & { // Merge all but K [P in K]: Prisma__Pick // With K possibilities }[K] type EitherStrict = Strict<__Either> type EitherLoose = ComputeRaw<__Either> type _Either< O extends object, K extends Key, strict extends Boolean > = { 1: EitherStrict 0: EitherLoose }[strict] export type Either< O extends object, K extends Key, strict extends Boolean = 1 > = O extends unknown ? _Either : never export type Union = any export type PatchUndefined = { [K in keyof O]: O[K] extends undefined ? At : O[K] } & {} /** Helper Types for "Merge" **/ export type IntersectOf = ( U extends unknown ? (k: U) => void : never ) extends (k: infer I) => void ? I : never export type Overwrite = { [K in keyof O]: K extends keyof O1 ? O1[K] : O[K]; } & {}; type _Merge = IntersectOf; }>>; type Key = string | number | symbol; type AtStrict = O[K & keyof O]; type AtLoose = O extends unknown ? AtStrict : never; export type At = { 1: AtStrict; 0: AtLoose; }[strict]; export type ComputeRaw = A extends Function ? A : { [K in keyof A]: A[K]; } & {}; export type OptionalFlat = { [K in keyof O]?: O[K]; } & {}; type _Record = { [P in K]: T; }; // cause typescript not to expand types and preserve names type NoExpand = T extends unknown ? T : never; // this type assumes the passed object is entirely optional export type AtLeast = NoExpand< O extends unknown ? | (K extends keyof O ? { [P in K]: O[P] } & O : O) | {[P in keyof O as P extends K ? P : never]-?: O[P]} & O : never>; type _Strict = U extends unknown ? U & OptionalFlat<_Record, keyof U>, never>> : never; export type Strict = ComputeRaw<_Strict>; /** End Helper Types for "Merge" **/ export type Merge = ComputeRaw<_Merge>>; export type Boolean = True | False export type True = 1 export type False = 0 export type Not = { 0: 1 1: 0 }[B] export type Extends = [A1] extends [never] ? 0 // anything `never` is false : A1 extends A2 ? 1 : 0 export type Has = Not< Extends, U1> > export type Or = { 0: { 0: 0 1: 1 } 1: { 0: 1 1: 1 } }[B1][B2] export type Keys = U extends unknown ? keyof U : never export type GetScalarType = O extends object ? { [P in keyof T]: P extends keyof O ? O[P] : never } : never type FieldPaths< T, U = Omit > = IsObject extends True ? U : T export type GetHavingFields = { [K in keyof T]: Or< Or, Extends<'AND', K>>, Extends<'NOT', K> > extends True ? // infer is only needed to not hit TS limit // based on the brilliant idea of Pierre-Antoine Mills // https://github.com/microsoft/TypeScript/issues/30188#issuecomment-478938437 T[K] extends infer TK ? GetHavingFields extends object ? Merge> : never> : never : {} extends FieldPaths ? never : K }[keyof T] /** * Convert tuple to union */ type _TupleToUnion = T extends (infer E)[] ? E : never type TupleToUnion = _TupleToUnion export type MaybeTupleToUnion = T extends any[] ? TupleToUnion : T /** * Like `Pick`, but additionally can also accept an array of keys */ export type PickEnumerable | keyof T> = Prisma__Pick> /** * Exclude all keys with underscores */ export type ExcludeUnderscoreKeys = T extends `_${string}` ? never : T export type FieldRef = runtime.FieldRef type FieldRefInputType = Model extends never ? never : FieldRef export const ModelName = { Session: 'Session', MessageUsage: 'MessageUsage', Image: 'Image', SyncLog: 'SyncLog', Report: 'Report', SessionAnalysis: 'SessionAnalysis' } as const export type ModelName = (typeof ModelName)[keyof typeof ModelName] export interface TypeMapCb extends runtime.Types.Utils.Fn<{extArgs: runtime.Types.Extensions.InternalArgs }, runtime.Types.Utils.Record> { returns: TypeMap } export type TypeMap = { globalOmitOptions: { omit: GlobalOmitOptions } meta: { modelProps: "session" | "messageUsage" | "image" | "syncLog" | "report" | "sessionAnalysis" txIsolationLevel: TransactionIsolationLevel } model: { Session: { payload: Prisma.$SessionPayload fields: Prisma.SessionFieldRefs operations: { findUnique: { args: Prisma.SessionFindUniqueArgs result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.SessionFindUniqueOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findFirst: { args: Prisma.SessionFindFirstArgs result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.SessionFindFirstOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findMany: { args: Prisma.SessionFindManyArgs result: runtime.Types.Utils.PayloadToResult[] } create: { args: Prisma.SessionCreateArgs result: runtime.Types.Utils.PayloadToResult } createMany: { args: Prisma.SessionCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.SessionCreateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } delete: { args: Prisma.SessionDeleteArgs result: runtime.Types.Utils.PayloadToResult } update: { args: Prisma.SessionUpdateArgs result: runtime.Types.Utils.PayloadToResult } deleteMany: { args: Prisma.SessionDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.SessionUpdateManyArgs result: BatchPayload } updateManyAndReturn: { args: Prisma.SessionUpdateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } upsert: { args: Prisma.SessionUpsertArgs result: runtime.Types.Utils.PayloadToResult } aggregate: { args: Prisma.SessionAggregateArgs result: runtime.Types.Utils.Optional } groupBy: { args: Prisma.SessionGroupByArgs result: runtime.Types.Utils.Optional[] } count: { args: Prisma.SessionCountArgs result: runtime.Types.Utils.Optional | number } } } MessageUsage: { payload: Prisma.$MessageUsagePayload fields: Prisma.MessageUsageFieldRefs operations: { findUnique: { args: Prisma.MessageUsageFindUniqueArgs result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.MessageUsageFindUniqueOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findFirst: { args: Prisma.MessageUsageFindFirstArgs result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.MessageUsageFindFirstOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findMany: { args: Prisma.MessageUsageFindManyArgs result: runtime.Types.Utils.PayloadToResult[] } create: { args: Prisma.MessageUsageCreateArgs result: runtime.Types.Utils.PayloadToResult } createMany: { args: Prisma.MessageUsageCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.MessageUsageCreateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } delete: { args: Prisma.MessageUsageDeleteArgs result: runtime.Types.Utils.PayloadToResult } update: { args: Prisma.MessageUsageUpdateArgs result: runtime.Types.Utils.PayloadToResult } deleteMany: { args: Prisma.MessageUsageDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.MessageUsageUpdateManyArgs result: BatchPayload } updateManyAndReturn: { args: Prisma.MessageUsageUpdateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } upsert: { args: Prisma.MessageUsageUpsertArgs result: runtime.Types.Utils.PayloadToResult } aggregate: { args: Prisma.MessageUsageAggregateArgs result: runtime.Types.Utils.Optional } groupBy: { args: Prisma.MessageUsageGroupByArgs result: runtime.Types.Utils.Optional[] } count: { args: Prisma.MessageUsageCountArgs result: runtime.Types.Utils.Optional | number } } } Image: { payload: Prisma.$ImagePayload fields: Prisma.ImageFieldRefs operations: { findUnique: { args: Prisma.ImageFindUniqueArgs result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.ImageFindUniqueOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findFirst: { args: Prisma.ImageFindFirstArgs result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.ImageFindFirstOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findMany: { args: Prisma.ImageFindManyArgs result: runtime.Types.Utils.PayloadToResult[] } create: { args: Prisma.ImageCreateArgs result: runtime.Types.Utils.PayloadToResult } createMany: { args: Prisma.ImageCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.ImageCreateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } delete: { args: Prisma.ImageDeleteArgs result: runtime.Types.Utils.PayloadToResult } update: { args: Prisma.ImageUpdateArgs result: runtime.Types.Utils.PayloadToResult } deleteMany: { args: Prisma.ImageDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.ImageUpdateManyArgs result: BatchPayload } updateManyAndReturn: { args: Prisma.ImageUpdateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } upsert: { args: Prisma.ImageUpsertArgs result: runtime.Types.Utils.PayloadToResult } aggregate: { args: Prisma.ImageAggregateArgs result: runtime.Types.Utils.Optional } groupBy: { args: Prisma.ImageGroupByArgs result: runtime.Types.Utils.Optional[] } count: { args: Prisma.ImageCountArgs result: runtime.Types.Utils.Optional | number } } } SyncLog: { payload: Prisma.$SyncLogPayload fields: Prisma.SyncLogFieldRefs operations: { findUnique: { args: Prisma.SyncLogFindUniqueArgs result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.SyncLogFindUniqueOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findFirst: { args: Prisma.SyncLogFindFirstArgs result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.SyncLogFindFirstOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findMany: { args: Prisma.SyncLogFindManyArgs result: runtime.Types.Utils.PayloadToResult[] } create: { args: Prisma.SyncLogCreateArgs result: runtime.Types.Utils.PayloadToResult } createMany: { args: Prisma.SyncLogCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.SyncLogCreateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } delete: { args: Prisma.SyncLogDeleteArgs result: runtime.Types.Utils.PayloadToResult } update: { args: Prisma.SyncLogUpdateArgs result: runtime.Types.Utils.PayloadToResult } deleteMany: { args: Prisma.SyncLogDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.SyncLogUpdateManyArgs result: BatchPayload } updateManyAndReturn: { args: Prisma.SyncLogUpdateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } upsert: { args: Prisma.SyncLogUpsertArgs result: runtime.Types.Utils.PayloadToResult } aggregate: { args: Prisma.SyncLogAggregateArgs result: runtime.Types.Utils.Optional } groupBy: { args: Prisma.SyncLogGroupByArgs result: runtime.Types.Utils.Optional[] } count: { args: Prisma.SyncLogCountArgs result: runtime.Types.Utils.Optional | number } } } Report: { payload: Prisma.$ReportPayload fields: Prisma.ReportFieldRefs operations: { findUnique: { args: Prisma.ReportFindUniqueArgs result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.ReportFindUniqueOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findFirst: { args: Prisma.ReportFindFirstArgs result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.ReportFindFirstOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findMany: { args: Prisma.ReportFindManyArgs result: runtime.Types.Utils.PayloadToResult[] } create: { args: Prisma.ReportCreateArgs result: runtime.Types.Utils.PayloadToResult } createMany: { args: Prisma.ReportCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.ReportCreateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } delete: { args: Prisma.ReportDeleteArgs result: runtime.Types.Utils.PayloadToResult } update: { args: Prisma.ReportUpdateArgs result: runtime.Types.Utils.PayloadToResult } deleteMany: { args: Prisma.ReportDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.ReportUpdateManyArgs result: BatchPayload } updateManyAndReturn: { args: Prisma.ReportUpdateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } upsert: { args: Prisma.ReportUpsertArgs result: runtime.Types.Utils.PayloadToResult } aggregate: { args: Prisma.ReportAggregateArgs result: runtime.Types.Utils.Optional } groupBy: { args: Prisma.ReportGroupByArgs result: runtime.Types.Utils.Optional[] } count: { args: Prisma.ReportCountArgs result: runtime.Types.Utils.Optional | number } } } SessionAnalysis: { payload: Prisma.$SessionAnalysisPayload fields: Prisma.SessionAnalysisFieldRefs operations: { findUnique: { args: Prisma.SessionAnalysisFindUniqueArgs result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.SessionAnalysisFindUniqueOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findFirst: { args: Prisma.SessionAnalysisFindFirstArgs result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.SessionAnalysisFindFirstOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findMany: { args: Prisma.SessionAnalysisFindManyArgs result: runtime.Types.Utils.PayloadToResult[] } create: { args: Prisma.SessionAnalysisCreateArgs result: runtime.Types.Utils.PayloadToResult } createMany: { args: Prisma.SessionAnalysisCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.SessionAnalysisCreateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } delete: { args: Prisma.SessionAnalysisDeleteArgs result: runtime.Types.Utils.PayloadToResult } update: { args: Prisma.SessionAnalysisUpdateArgs result: runtime.Types.Utils.PayloadToResult } deleteMany: { args: Prisma.SessionAnalysisDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.SessionAnalysisUpdateManyArgs result: BatchPayload } updateManyAndReturn: { args: Prisma.SessionAnalysisUpdateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } upsert: { args: Prisma.SessionAnalysisUpsertArgs result: runtime.Types.Utils.PayloadToResult } aggregate: { args: Prisma.SessionAnalysisAggregateArgs result: runtime.Types.Utils.Optional } groupBy: { args: Prisma.SessionAnalysisGroupByArgs result: runtime.Types.Utils.Optional[] } count: { args: Prisma.SessionAnalysisCountArgs result: runtime.Types.Utils.Optional | number } } } } } & { other: { payload: any operations: { $executeRaw: { args: [query: TemplateStringsArray | Sql, ...values: any[]], result: any } $executeRawUnsafe: { args: [query: string, ...values: any[]], result: any } $queryRaw: { args: [query: TemplateStringsArray | Sql, ...values: any[]], result: any } $queryRawUnsafe: { args: [query: string, ...values: any[]], result: any } } } } /** * Enums */ export const TransactionIsolationLevel = runtime.makeStrictEnum({ Serializable: 'Serializable' } as const) export type TransactionIsolationLevel = (typeof TransactionIsolationLevel)[keyof typeof TransactionIsolationLevel] export const SessionScalarFieldEnum = { id: 'id', sessionId: 'sessionId', project: 'project', projectPath: 'projectPath', startTime: 'startTime', endTime: 'endTime', durationMinutes: 'durationMinutes', userMessages: 'userMessages', assistantMessages: 'assistantMessages', totalMessages: 'totalMessages', inputTokens: 'inputTokens', outputTokens: 'outputTokens', cacheCreationTokens: 'cacheCreationTokens', cacheReadTokens: 'cacheReadTokens', totalTokens: 'totalTokens', costUSD: 'costUSD', model: 'model', toolCallsTotal: 'toolCallsTotal', toolCallsJson: 'toolCallsJson', skillCallsJson: 'skillCallsJson', messageTimestamps: 'messageTimestamps', apiErrors: 'apiErrors', rateLimitErrors: 'rateLimitErrors', userInterruptions: 'userInterruptions', permissionModesJson: 'permissionModesJson', systemPromptEdits: 'systemPromptEdits', cliVersion: 'cliVersion', modelCountsJson: 'modelCountsJson', createdAt: 'createdAt' } as const export type SessionScalarFieldEnum = (typeof SessionScalarFieldEnum)[keyof typeof SessionScalarFieldEnum] export const MessageUsageScalarFieldEnum = { id: 'id', sessionId: 'sessionId', messageId: 'messageId', requestId: 'requestId', model: 'model', speed: 'speed', timestamp: 'timestamp', date: 'date', inputTokens: 'inputTokens', outputTokens: 'outputTokens', cacheCreationTokens: 'cacheCreationTokens', cacheReadTokens: 'cacheReadTokens', costUSD: 'costUSD', createdAt: 'createdAt' } as const export type MessageUsageScalarFieldEnum = (typeof MessageUsageScalarFieldEnum)[keyof typeof MessageUsageScalarFieldEnum] export const ImageScalarFieldEnum = { id: 'id', sessionId: 'sessionId', messageId: 'messageId', filename: 'filename', mediaType: 'mediaType', sizeBytes: 'sizeBytes', timestamp: 'timestamp', role: 'role', createdAt: 'createdAt' } as const export type ImageScalarFieldEnum = (typeof ImageScalarFieldEnum)[keyof typeof ImageScalarFieldEnum] export const SyncLogScalarFieldEnum = { id: 'id', syncedAt: 'syncedAt', filesProcessed: 'filesProcessed', sessionsAdded: 'sessionsAdded', sessionsSkipped: 'sessionsSkipped' } as const export type SyncLogScalarFieldEnum = (typeof SyncLogScalarFieldEnum)[keyof typeof SyncLogScalarFieldEnum] export const ReportScalarFieldEnum = { id: 'id', title: 'title', generatedAt: 'generatedAt', contentJson: 'contentJson', sessionCount: 'sessionCount', createdAt: 'createdAt' } as const export type ReportScalarFieldEnum = (typeof ReportScalarFieldEnum)[keyof typeof ReportScalarFieldEnum] export const SessionAnalysisScalarFieldEnum = { id: 'id', sessionId: 'sessionId', model: 'model', classifications: 'classifications', totalMessages: 'totalMessages', inputTokens: 'inputTokens', outputTokens: 'outputTokens', costUSD: 'costUSD', analyzedAt: 'analyzedAt' } as const export type SessionAnalysisScalarFieldEnum = (typeof SessionAnalysisScalarFieldEnum)[keyof typeof SessionAnalysisScalarFieldEnum] export const SortOrder = { asc: 'asc', desc: 'desc' } as const export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder] /** * Field references */ /** * Reference to a field of type 'String' */ export type StringFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'String'> /** * Reference to a field of type 'DateTime' */ export type DateTimeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'DateTime'> /** * Reference to a field of type 'Float' */ export type FloatFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Float'> /** * Reference to a field of type 'Int' */ export type IntFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Int'> /** * Batch Payload for updateMany & deleteMany & createMany */ export type BatchPayload = { count: number } export const defineExtension = runtime.Extensions.defineExtension as unknown as runtime.Types.Extensions.ExtendsHook<"define", TypeMapCb, runtime.Types.Extensions.DefaultArgs> export type DefaultPrismaClient = PrismaClient export type ErrorFormat = 'pretty' | 'colorless' | 'minimal' export type PrismaClientOptions = ({ /** * Instance of a Driver Adapter, e.g., like one provided by `@prisma/adapter-pg`. */ adapter: runtime.SqlDriverAdapterFactory accelerateUrl?: never } | { /** * Prisma Accelerate URL allowing the client to connect through Accelerate instead of a direct database. */ accelerateUrl: string adapter?: never }) & { /** * @default "colorless" */ errorFormat?: ErrorFormat /** * @example * ``` * // Shorthand for `emit: 'stdout'` * log: ['query', 'info', 'warn', 'error'] * * // Emit as events only * log: [ * { emit: 'event', level: 'query' }, * { emit: 'event', level: 'info' }, * { emit: 'event', level: 'warn' } * { emit: 'event', level: 'error' } * ] * * / Emit as events and log to stdout * og: [ * { emit: 'stdout', level: 'query' }, * { emit: 'stdout', level: 'info' }, * { emit: 'stdout', level: 'warn' } * { emit: 'stdout', level: 'error' } * * ``` * Read more in our [docs](https://pris.ly/d/logging). */ log?: (LogLevel | LogDefinition)[] /** * The default values for transactionOptions * maxWait ?= 2000 * timeout ?= 5000 */ transactionOptions?: { maxWait?: number timeout?: number isolationLevel?: TransactionIsolationLevel } /** * Global configuration for omitting model fields by default. * * @example * ``` * const prisma = new PrismaClient({ * omit: { * user: { * password: true * } * } * }) * ``` */ omit?: GlobalOmitConfig /** * SQL commenter plugins that add metadata to SQL queries as comments. * Comments follow the sqlcommenter format: https://google.github.io/sqlcommenter/ * * @example * ``` * const prisma = new PrismaClient({ * adapter, * comments: [ * traceContext(), * queryInsights(), * ], * }) * ``` */ comments?: runtime.SqlCommenterPlugin[] } export type GlobalOmitConfig = { session?: Prisma.SessionOmit messageUsage?: Prisma.MessageUsageOmit image?: Prisma.ImageOmit syncLog?: Prisma.SyncLogOmit report?: Prisma.ReportOmit sessionAnalysis?: Prisma.SessionAnalysisOmit } /* Types for Logging */ export type LogLevel = 'info' | 'query' | 'warn' | 'error' export type LogDefinition = { level: LogLevel emit: 'stdout' | 'event' } export type CheckIsLogLevel = T extends LogLevel ? T : never; export type GetLogType = CheckIsLogLevel< T extends LogDefinition ? T['level'] : T >; export type GetEvents = T extends Array ? GetLogType : never; export type QueryEvent = { timestamp: Date query: string params: string duration: number target: string } export type LogEvent = { timestamp: Date message: string target: string } /* End Types for Logging */ export type PrismaAction = | 'findUnique' | 'findUniqueOrThrow' | 'findMany' | 'findFirst' | 'findFirstOrThrow' | 'create' | 'createMany' | 'createManyAndReturn' | 'update' | 'updateMany' | 'updateManyAndReturn' | 'upsert' | 'delete' | 'deleteMany' | 'executeRaw' | 'queryRaw' | 'aggregate' | 'count' | 'runCommandRaw' | 'findRaw' | 'groupBy' /** * `PrismaClient` proxy available in interactive transactions. */ export type TransactionClient = Omit