/* !!! 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.ts" import { type PrismaClient } from "./class.ts" export type * from '../models.ts' 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.0.0 * Query Engine version: 0c19ccc313cf9911a90d99d2ac2eb0280c76c513 */ export const prismaVersion: PrismaVersion = { client: "7.0.0", engine: "0c19ccc313cf9911a90d99d2ac2eb0280c76c513" } /** * 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 = { Project: 'Project', User: 'User', Pipeline: 'Pipeline', Step: 'Step', Deployment: 'Deployment' } 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: "project" | "user" | "pipeline" | "step" | "deployment" txIsolationLevel: TransactionIsolationLevel } model: { Project: { payload: Prisma.$ProjectPayload fields: Prisma.ProjectFieldRefs operations: { findUnique: { args: Prisma.ProjectFindUniqueArgs result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.ProjectFindUniqueOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findFirst: { args: Prisma.ProjectFindFirstArgs result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.ProjectFindFirstOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findMany: { args: Prisma.ProjectFindManyArgs result: runtime.Types.Utils.PayloadToResult[] } create: { args: Prisma.ProjectCreateArgs result: runtime.Types.Utils.PayloadToResult } createMany: { args: Prisma.ProjectCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.ProjectCreateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } delete: { args: Prisma.ProjectDeleteArgs result: runtime.Types.Utils.PayloadToResult } update: { args: Prisma.ProjectUpdateArgs result: runtime.Types.Utils.PayloadToResult } deleteMany: { args: Prisma.ProjectDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.ProjectUpdateManyArgs result: BatchPayload } updateManyAndReturn: { args: Prisma.ProjectUpdateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } upsert: { args: Prisma.ProjectUpsertArgs result: runtime.Types.Utils.PayloadToResult } aggregate: { args: Prisma.ProjectAggregateArgs result: runtime.Types.Utils.Optional } groupBy: { args: Prisma.ProjectGroupByArgs result: runtime.Types.Utils.Optional[] } count: { args: Prisma.ProjectCountArgs result: runtime.Types.Utils.Optional | number } } } User: { payload: Prisma.$UserPayload fields: Prisma.UserFieldRefs operations: { findUnique: { args: Prisma.UserFindUniqueArgs result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.UserFindUniqueOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findFirst: { args: Prisma.UserFindFirstArgs result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.UserFindFirstOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findMany: { args: Prisma.UserFindManyArgs result: runtime.Types.Utils.PayloadToResult[] } create: { args: Prisma.UserCreateArgs result: runtime.Types.Utils.PayloadToResult } createMany: { args: Prisma.UserCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.UserCreateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } delete: { args: Prisma.UserDeleteArgs result: runtime.Types.Utils.PayloadToResult } update: { args: Prisma.UserUpdateArgs result: runtime.Types.Utils.PayloadToResult } deleteMany: { args: Prisma.UserDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.UserUpdateManyArgs result: BatchPayload } updateManyAndReturn: { args: Prisma.UserUpdateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } upsert: { args: Prisma.UserUpsertArgs result: runtime.Types.Utils.PayloadToResult } aggregate: { args: Prisma.UserAggregateArgs result: runtime.Types.Utils.Optional } groupBy: { args: Prisma.UserGroupByArgs result: runtime.Types.Utils.Optional[] } count: { args: Prisma.UserCountArgs result: runtime.Types.Utils.Optional | number } } } Pipeline: { payload: Prisma.$PipelinePayload fields: Prisma.PipelineFieldRefs operations: { findUnique: { args: Prisma.PipelineFindUniqueArgs result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.PipelineFindUniqueOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findFirst: { args: Prisma.PipelineFindFirstArgs result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.PipelineFindFirstOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findMany: { args: Prisma.PipelineFindManyArgs result: runtime.Types.Utils.PayloadToResult[] } create: { args: Prisma.PipelineCreateArgs result: runtime.Types.Utils.PayloadToResult } createMany: { args: Prisma.PipelineCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.PipelineCreateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } delete: { args: Prisma.PipelineDeleteArgs result: runtime.Types.Utils.PayloadToResult } update: { args: Prisma.PipelineUpdateArgs result: runtime.Types.Utils.PayloadToResult } deleteMany: { args: Prisma.PipelineDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.PipelineUpdateManyArgs result: BatchPayload } updateManyAndReturn: { args: Prisma.PipelineUpdateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } upsert: { args: Prisma.PipelineUpsertArgs result: runtime.Types.Utils.PayloadToResult } aggregate: { args: Prisma.PipelineAggregateArgs result: runtime.Types.Utils.Optional } groupBy: { args: Prisma.PipelineGroupByArgs result: runtime.Types.Utils.Optional[] } count: { args: Prisma.PipelineCountArgs result: runtime.Types.Utils.Optional | number } } } Step: { payload: Prisma.$StepPayload fields: Prisma.StepFieldRefs operations: { findUnique: { args: Prisma.StepFindUniqueArgs result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.StepFindUniqueOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findFirst: { args: Prisma.StepFindFirstArgs result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.StepFindFirstOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findMany: { args: Prisma.StepFindManyArgs result: runtime.Types.Utils.PayloadToResult[] } create: { args: Prisma.StepCreateArgs result: runtime.Types.Utils.PayloadToResult } createMany: { args: Prisma.StepCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.StepCreateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } delete: { args: Prisma.StepDeleteArgs result: runtime.Types.Utils.PayloadToResult } update: { args: Prisma.StepUpdateArgs result: runtime.Types.Utils.PayloadToResult } deleteMany: { args: Prisma.StepDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.StepUpdateManyArgs result: BatchPayload } updateManyAndReturn: { args: Prisma.StepUpdateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } upsert: { args: Prisma.StepUpsertArgs result: runtime.Types.Utils.PayloadToResult } aggregate: { args: Prisma.StepAggregateArgs result: runtime.Types.Utils.Optional } groupBy: { args: Prisma.StepGroupByArgs result: runtime.Types.Utils.Optional[] } count: { args: Prisma.StepCountArgs result: runtime.Types.Utils.Optional | number } } } Deployment: { payload: Prisma.$DeploymentPayload fields: Prisma.DeploymentFieldRefs operations: { findUnique: { args: Prisma.DeploymentFindUniqueArgs result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.DeploymentFindUniqueOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findFirst: { args: Prisma.DeploymentFindFirstArgs result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.DeploymentFindFirstOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findMany: { args: Prisma.DeploymentFindManyArgs result: runtime.Types.Utils.PayloadToResult[] } create: { args: Prisma.DeploymentCreateArgs result: runtime.Types.Utils.PayloadToResult } createMany: { args: Prisma.DeploymentCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.DeploymentCreateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } delete: { args: Prisma.DeploymentDeleteArgs result: runtime.Types.Utils.PayloadToResult } update: { args: Prisma.DeploymentUpdateArgs result: runtime.Types.Utils.PayloadToResult } deleteMany: { args: Prisma.DeploymentDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.DeploymentUpdateManyArgs result: BatchPayload } updateManyAndReturn: { args: Prisma.DeploymentUpdateManyAndReturnArgs result: runtime.Types.Utils.PayloadToResult[] } upsert: { args: Prisma.DeploymentUpsertArgs result: runtime.Types.Utils.PayloadToResult } aggregate: { args: Prisma.DeploymentAggregateArgs result: runtime.Types.Utils.Optional } groupBy: { args: Prisma.DeploymentGroupByArgs result: runtime.Types.Utils.Optional[] } count: { args: Prisma.DeploymentCountArgs 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 ProjectScalarFieldEnum = { id: 'id', name: 'name', description: 'description', repository: 'repository', valid: 'valid', createdAt: 'createdAt', updatedAt: 'updatedAt', createdBy: 'createdBy', updatedBy: 'updatedBy' } as const export type ProjectScalarFieldEnum = (typeof ProjectScalarFieldEnum)[keyof typeof ProjectScalarFieldEnum] export const UserScalarFieldEnum = { id: 'id', username: 'username', login: 'login', email: 'email', avatar_url: 'avatar_url', active: 'active', valid: 'valid', createdAt: 'createdAt', updatedAt: 'updatedAt', createdBy: 'createdBy', updatedBy: 'updatedBy' } as const export type UserScalarFieldEnum = (typeof UserScalarFieldEnum)[keyof typeof UserScalarFieldEnum] export const PipelineScalarFieldEnum = { id: 'id', name: 'name', description: 'description', valid: 'valid', createdAt: 'createdAt', updatedAt: 'updatedAt', createdBy: 'createdBy', updatedBy: 'updatedBy', projectId: 'projectId' } as const export type PipelineScalarFieldEnum = (typeof PipelineScalarFieldEnum)[keyof typeof PipelineScalarFieldEnum] export const StepScalarFieldEnum = { id: 'id', name: 'name', order: 'order', script: 'script', valid: 'valid', createdAt: 'createdAt', updatedAt: 'updatedAt', createdBy: 'createdBy', updatedBy: 'updatedBy', pipelineId: 'pipelineId' } as const export type StepScalarFieldEnum = (typeof StepScalarFieldEnum)[keyof typeof StepScalarFieldEnum] export const DeploymentScalarFieldEnum = { id: 'id', branch: 'branch', env: 'env', status: 'status', commitHash: 'commitHash', commitMessage: 'commitMessage', buildLog: 'buildLog', sparseCheckoutPaths: 'sparseCheckoutPaths', startedAt: 'startedAt', finishedAt: 'finishedAt', valid: 'valid', createdAt: 'createdAt', updatedAt: 'updatedAt', createdBy: 'createdBy', updatedBy: 'updatedBy', projectId: 'projectId', pipelineId: 'pipelineId' } as const export type DeploymentScalarFieldEnum = (typeof DeploymentScalarFieldEnum)[keyof typeof DeploymentScalarFieldEnum] export const SortOrder = { asc: 'asc', desc: 'desc' } as const export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder] export const NullsOrder = { first: 'first', last: 'last' } as const export type NullsOrder = (typeof NullsOrder)[keyof typeof NullsOrder] /** * Field references */ /** * Reference to a field of type 'Int' */ export type IntFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Int'> /** * 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 'Boolean' */ export type BooleanFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Boolean'> /** * Reference to a field of type 'Float' */ export type FloatFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Float'> /** * 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://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/logging#the-log-option). */ 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 } export type GlobalOmitConfig = { project?: Prisma.ProjectOmit user?: Prisma.UserOmit pipeline?: Prisma.PipelineOmit step?: Prisma.StepOmit deployment?: Prisma.DeploymentOmit } /* 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