/** * Client **/ import * as runtime from './runtime/library.js'; import $Types = runtime.Types // general types import $Public = runtime.Types.Public import $Utils = runtime.Types.Utils import $Extensions = runtime.Types.Extensions import $Result = runtime.Types.Result export type PrismaPromise = $Public.PrismaPromise /** * Model Build * */ export type Build = $Result.DefaultSelection /** * Model Session * */ export type Session = $Result.DefaultSelection /** * Model SessionLog * */ export type SessionLog = $Result.DefaultSelection /** * Model Log * */ export type Log = $Result.DefaultSelection /** * Model Profiling * */ export type Profiling = $Result.DefaultSelection /** * Model App * */ export type App = $Result.DefaultSelection /** * Model Device * */ export type Device = $Result.DefaultSelection /** * Model PendingSession * */ export type PendingSession = $Result.DefaultSelection /** * Model CLIArgs * */ export type CLIArgs = $Result.DefaultSelection /** * Model WebhookConfig * */ export type WebhookConfig = $Result.DefaultSelection /** * Model WebConfig * */ export type WebConfig = $Result.DefaultSelection /** * Model LocatorEtalon * */ export type LocatorEtalon = $Result.DefaultSelection /** * Model PortLease * */ export type PortLease = $Result.DefaultSelection /** * Model Lease * */ export type Lease = $Result.DefaultSelection /** * Model ApiKey * */ export type ApiKey = $Result.DefaultSelection /** * Model Team * */ export type Team = $Result.DefaultSelection /** * Model SelectorState * */ export type SelectorState = $Result.DefaultSelection /** * Model Recording * */ export type Recording = $Result.DefaultSelection /** * Model Bookmark * */ export type Bookmark = $Result.DefaultSelection /** * Model Annotation * */ export type Annotation = $Result.DefaultSelection /** * Model User * */ export type User = $Result.DefaultSelection /** * Model UserSession * */ export type UserSession = $Result.DefaultSelection /** * Model PasswordResetToken * */ export type PasswordResetToken = $Result.DefaultSelection /** * Model TeamMember * */ export type TeamMember = $Result.DefaultSelection /** * Model EventLog * */ export type EventLog = $Result.DefaultSelection /** * Model Project * */ export type Project = $Result.DefaultSelection /** * ## Prisma Client ʲˢ * * Type-safe database client for TypeScript & Node.js * @example * ``` * const prisma = new PrismaClient() * // Fetch zero or more Builds * const builds = await prisma.build.findMany() * ``` * * * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client). */ export class PrismaClient< ClientOptions extends Prisma.PrismaClientOptions = Prisma.PrismaClientOptions, U = 'log' extends keyof ClientOptions ? ClientOptions['log'] extends Array ? Prisma.GetEvents : never : never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs > { [K: symbol]: { types: Prisma.TypeMap['other'] } /** * ## Prisma Client ʲˢ * * Type-safe database client for TypeScript & Node.js * @example * ``` * const prisma = new PrismaClient() * // Fetch zero or more Builds * const builds = await prisma.build.findMany() * ``` * * * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client). */ constructor(optionsArg ?: Prisma.Subset); $on(eventType: V, callback: (event: V extends 'query' ? Prisma.QueryEvent : Prisma.LogEvent) => void): void; /** * Connect with the database */ $connect(): $Utils.JsPromise; /** * Disconnect from the database */ $disconnect(): $Utils.JsPromise; /** * Add a middleware * @deprecated since 4.16.0. For new code, prefer client extensions instead. * @see https://pris.ly/d/extensions */ $use(cb: Prisma.Middleware): void /** * Executes a prepared raw query and returns the number of affected rows. * @example * ``` * const result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};` * ``` * * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access). */ $executeRaw(query: TemplateStringsArray | Prisma.Sql, ...values: any[]): Prisma.PrismaPromise; /** * Executes a raw query and returns the number of affected rows. * Susceptible to SQL injections, see documentation. * @example * ``` * const result = await prisma.$executeRawUnsafe('UPDATE User SET cool = $1 WHERE email = $2 ;', true, 'user@email.com') * ``` * * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access). */ $executeRawUnsafe(query: string, ...values: any[]): Prisma.PrismaPromise; /** * Performs a prepared raw query and returns the `SELECT` data. * @example * ``` * const result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};` * ``` * * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access). */ $queryRaw(query: TemplateStringsArray | Prisma.Sql, ...values: any[]): Prisma.PrismaPromise; /** * Performs a raw query and returns the `SELECT` data. * Susceptible to SQL injections, see documentation. * @example * ``` * const result = await prisma.$queryRawUnsafe('SELECT * FROM User WHERE id = $1 OR email = $2;', 1, 'user@email.com') * ``` * * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access). */ $queryRawUnsafe(query: string, ...values: any[]): Prisma.PrismaPromise; /** * Allows the running of a sequence of read/write operations that are guaranteed to either succeed or fail as a whole. * @example * ``` * const [george, bob, alice] = await prisma.$transaction([ * prisma.user.create({ data: { name: 'George' } }), * prisma.user.create({ data: { name: 'Bob' } }), * prisma.user.create({ data: { name: 'Alice' } }), * ]) * ``` * * Read more in our [docs](https://www.prisma.io/docs/concepts/components/prisma-client/transactions). */ $transaction

[]>(arg: [...P], options?: { isolationLevel?: Prisma.TransactionIsolationLevel }): $Utils.JsPromise> $transaction(fn: (prisma: Omit) => $Utils.JsPromise, options?: { maxWait?: number, timeout?: number, isolationLevel?: Prisma.TransactionIsolationLevel }): $Utils.JsPromise $extends: $Extensions.ExtendsHook<"extends", Prisma.TypeMapCb, ExtArgs> /** * `prisma.build`: Exposes CRUD operations for the **Build** model. * Example usage: * ```ts * // Fetch zero or more Builds * const builds = await prisma.build.findMany() * ``` */ get build(): Prisma.BuildDelegate; /** * `prisma.session`: Exposes CRUD operations for the **Session** model. * Example usage: * ```ts * // Fetch zero or more Sessions * const sessions = await prisma.session.findMany() * ``` */ get session(): Prisma.SessionDelegate; /** * `prisma.sessionLog`: Exposes CRUD operations for the **SessionLog** model. * Example usage: * ```ts * // Fetch zero or more SessionLogs * const sessionLogs = await prisma.sessionLog.findMany() * ``` */ get sessionLog(): Prisma.SessionLogDelegate; /** * `prisma.log`: Exposes CRUD operations for the **Log** model. * Example usage: * ```ts * // Fetch zero or more Logs * const logs = await prisma.log.findMany() * ``` */ get log(): Prisma.LogDelegate; /** * `prisma.profiling`: Exposes CRUD operations for the **Profiling** model. * Example usage: * ```ts * // Fetch zero or more Profilings * const profilings = await prisma.profiling.findMany() * ``` */ get profiling(): Prisma.ProfilingDelegate; /** * `prisma.app`: Exposes CRUD operations for the **App** model. * Example usage: * ```ts * // Fetch zero or more Apps * const apps = await prisma.app.findMany() * ``` */ get app(): Prisma.AppDelegate; /** * `prisma.device`: Exposes CRUD operations for the **Device** model. * Example usage: * ```ts * // Fetch zero or more Devices * const devices = await prisma.device.findMany() * ``` */ get device(): Prisma.DeviceDelegate; /** * `prisma.pendingSession`: Exposes CRUD operations for the **PendingSession** model. * Example usage: * ```ts * // Fetch zero or more PendingSessions * const pendingSessions = await prisma.pendingSession.findMany() * ``` */ get pendingSession(): Prisma.PendingSessionDelegate; /** * `prisma.cLIArgs`: Exposes CRUD operations for the **CLIArgs** model. * Example usage: * ```ts * // Fetch zero or more CLIArgs * const cLIArgs = await prisma.cLIArgs.findMany() * ``` */ get cLIArgs(): Prisma.CLIArgsDelegate; /** * `prisma.webhookConfig`: Exposes CRUD operations for the **WebhookConfig** model. * Example usage: * ```ts * // Fetch zero or more WebhookConfigs * const webhookConfigs = await prisma.webhookConfig.findMany() * ``` */ get webhookConfig(): Prisma.WebhookConfigDelegate; /** * `prisma.webConfig`: Exposes CRUD operations for the **WebConfig** model. * Example usage: * ```ts * // Fetch zero or more WebConfigs * const webConfigs = await prisma.webConfig.findMany() * ``` */ get webConfig(): Prisma.WebConfigDelegate; /** * `prisma.locatorEtalon`: Exposes CRUD operations for the **LocatorEtalon** model. * Example usage: * ```ts * // Fetch zero or more LocatorEtalons * const locatorEtalons = await prisma.locatorEtalon.findMany() * ``` */ get locatorEtalon(): Prisma.LocatorEtalonDelegate; /** * `prisma.portLease`: Exposes CRUD operations for the **PortLease** model. * Example usage: * ```ts * // Fetch zero or more PortLeases * const portLeases = await prisma.portLease.findMany() * ``` */ get portLease(): Prisma.PortLeaseDelegate; /** * `prisma.lease`: Exposes CRUD operations for the **Lease** model. * Example usage: * ```ts * // Fetch zero or more Leases * const leases = await prisma.lease.findMany() * ``` */ get lease(): Prisma.LeaseDelegate; /** * `prisma.apiKey`: Exposes CRUD operations for the **ApiKey** model. * Example usage: * ```ts * // Fetch zero or more ApiKeys * const apiKeys = await prisma.apiKey.findMany() * ``` */ get apiKey(): Prisma.ApiKeyDelegate; /** * `prisma.team`: Exposes CRUD operations for the **Team** model. * Example usage: * ```ts * // Fetch zero or more Teams * const teams = await prisma.team.findMany() * ``` */ get team(): Prisma.TeamDelegate; /** * `prisma.selectorState`: Exposes CRUD operations for the **SelectorState** model. * Example usage: * ```ts * // Fetch zero or more SelectorStates * const selectorStates = await prisma.selectorState.findMany() * ``` */ get selectorState(): Prisma.SelectorStateDelegate; /** * `prisma.recording`: Exposes CRUD operations for the **Recording** model. * Example usage: * ```ts * // Fetch zero or more Recordings * const recordings = await prisma.recording.findMany() * ``` */ get recording(): Prisma.RecordingDelegate; /** * `prisma.bookmark`: Exposes CRUD operations for the **Bookmark** model. * Example usage: * ```ts * // Fetch zero or more Bookmarks * const bookmarks = await prisma.bookmark.findMany() * ``` */ get bookmark(): Prisma.BookmarkDelegate; /** * `prisma.annotation`: Exposes CRUD operations for the **Annotation** model. * Example usage: * ```ts * // Fetch zero or more Annotations * const annotations = await prisma.annotation.findMany() * ``` */ get annotation(): Prisma.AnnotationDelegate; /** * `prisma.user`: Exposes CRUD operations for the **User** model. * Example usage: * ```ts * // Fetch zero or more Users * const users = await prisma.user.findMany() * ``` */ get user(): Prisma.UserDelegate; /** * `prisma.userSession`: Exposes CRUD operations for the **UserSession** model. * Example usage: * ```ts * // Fetch zero or more UserSessions * const userSessions = await prisma.userSession.findMany() * ``` */ get userSession(): Prisma.UserSessionDelegate; /** * `prisma.passwordResetToken`: Exposes CRUD operations for the **PasswordResetToken** model. * Example usage: * ```ts * // Fetch zero or more PasswordResetTokens * const passwordResetTokens = await prisma.passwordResetToken.findMany() * ``` */ get passwordResetToken(): Prisma.PasswordResetTokenDelegate; /** * `prisma.teamMember`: Exposes CRUD operations for the **TeamMember** model. * Example usage: * ```ts * // Fetch zero or more TeamMembers * const teamMembers = await prisma.teamMember.findMany() * ``` */ get teamMember(): Prisma.TeamMemberDelegate; /** * `prisma.eventLog`: Exposes CRUD operations for the **EventLog** model. * Example usage: * ```ts * // Fetch zero or more EventLogs * const eventLogs = await prisma.eventLog.findMany() * ``` */ get eventLog(): Prisma.EventLogDelegate; /** * `prisma.project`: Exposes CRUD operations for the **Project** model. * Example usage: * ```ts * // Fetch zero or more Projects * const projects = await prisma.project.findMany() * ``` */ get project(): Prisma.ProjectDelegate; } export namespace Prisma { export import DMMF = runtime.DMMF export type PrismaPromise = $Public.PrismaPromise /** * Validator */ export import validator = runtime.Public.validator /** * Prisma Errors */ export import PrismaClientKnownRequestError = runtime.PrismaClientKnownRequestError export import PrismaClientUnknownRequestError = runtime.PrismaClientUnknownRequestError export import PrismaClientRustPanicError = runtime.PrismaClientRustPanicError export import PrismaClientInitializationError = runtime.PrismaClientInitializationError export import PrismaClientValidationError = runtime.PrismaClientValidationError export import NotFoundError = runtime.NotFoundError /** * Re-export of sql-template-tag */ export import sql = runtime.sqltag export import empty = runtime.empty export import join = runtime.join export import raw = runtime.raw export import Sql = runtime.Sql /** * Decimal.js */ export import Decimal = runtime.Decimal export type DecimalJsLike = runtime.DecimalJsLike /** * Metrics */ export type Metrics = runtime.Metrics export type Metric = runtime.Metric export type MetricHistogram = runtime.MetricHistogram export type MetricHistogramBucket = runtime.MetricHistogramBucket /** * Extensions */ export import Extension = $Extensions.UserArgs export import getExtensionContext = runtime.Extensions.getExtensionContext export import Args = $Public.Args export import Payload = $Public.Payload export import Result = $Public.Result export import Exact = $Public.Exact /** * Prisma Client JS version: 5.22.0 * Query Engine version: 605197351a3c8bdd595af2d2a9bc3025bca48ea2 */ export type PrismaVersion = { client: string } export const prismaVersion: PrismaVersion /** * Utility Types */ export import JsonObject = runtime.JsonObject export import JsonArray = runtime.JsonArray export import JsonValue = runtime.JsonValue export import InputJsonObject = runtime.InputJsonObject export import InputJsonArray = runtime.InputJsonArray export import InputJsonValue = runtime.InputJsonValue /** * Types of the values used to represent different kinds of `null` values when working with JSON fields. * * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field */ namespace NullTypes { /** * Type of `Prisma.DbNull`. * * You cannot use other instances of this class. Please use the `Prisma.DbNull` value. * * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field */ class DbNull { private DbNull: never private constructor() } /** * Type of `Prisma.JsonNull`. * * You cannot use other instances of this class. Please use the `Prisma.JsonNull` value. * * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field */ class JsonNull { private JsonNull: never private constructor() } /** * Type of `Prisma.AnyNull`. * * You cannot use other instances of this class. Please use the `Prisma.AnyNull` value. * * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field */ class AnyNull { private AnyNull: never private constructor() } } /** * 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: NullTypes.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: NullTypes.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: NullTypes.AnyNull type SelectAndInclude = { select: any include: any } type SelectAndOmit = { select: any omit: any } /** * Get the type of the value, that the Promise holds. */ export type PromiseType> = T extends PromiseLike ? U : T; /** * Get the return type of a function which returns a Promise. */ export type PromiseReturnType $Utils.JsPromise> = PromiseType> /** * 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; export type RequiredKeys = { [K in keyof T]-?: {} extends Prisma__Pick ? never : K }[keyof T] export type TruthyKeys = keyof { [K in keyof T as T[K] extends false | undefined | null ? never : K]: K } export type TrueKeys = TruthyKeys>> /** * 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 */ 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] type Either< O extends object, K extends Key, strict extends Boolean = 1 > = O extends unknown ? _Either : never export type Union = any 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 AtBasic = K extends keyof O ? O[K] : never; 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 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 ? K : 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>>; /** A [[Boolean]] */ export type Boolean = True | False // /** // 1 // */ export type True = 1 /** 0 */ 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 type Cast = A extends B ? A : B; export const type: unique symbol; /** * Used by group by */ 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 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 type MaybeTupleToUnion = T extends any[] ? TupleToUnion : T /** * Like `Pick`, but additionally can also accept an array of keys */ type PickEnumerable | keyof T> = Prisma__Pick> /** * Exclude all keys with underscores */ type ExcludeUnderscoreKeys = T extends `_${string}` ? never : T export type FieldRef = runtime.FieldRef type FieldRefInputType = Model extends never ? never : FieldRef export const ModelName: { Build: 'Build', Session: 'Session', SessionLog: 'SessionLog', Log: 'Log', Profiling: 'Profiling', App: 'App', Device: 'Device', PendingSession: 'PendingSession', CLIArgs: 'CLIArgs', WebhookConfig: 'WebhookConfig', WebConfig: 'WebConfig', LocatorEtalon: 'LocatorEtalon', PortLease: 'PortLease', Lease: 'Lease', ApiKey: 'ApiKey', Team: 'Team', SelectorState: 'SelectorState', Recording: 'Recording', Bookmark: 'Bookmark', Annotation: 'Annotation', User: 'User', UserSession: 'UserSession', PasswordResetToken: 'PasswordResetToken', TeamMember: 'TeamMember', EventLog: 'EventLog', Project: 'Project' }; export type ModelName = (typeof ModelName)[keyof typeof ModelName] export type Datasources = { db?: Datasource } interface TypeMapCb extends $Utils.Fn<{extArgs: $Extensions.InternalArgs, clientOptions: PrismaClientOptions }, $Utils.Record> { returns: Prisma.TypeMap } export type TypeMap = { meta: { modelProps: "build" | "session" | "sessionLog" | "log" | "profiling" | "app" | "device" | "pendingSession" | "cLIArgs" | "webhookConfig" | "webConfig" | "locatorEtalon" | "portLease" | "lease" | "apiKey" | "team" | "selectorState" | "recording" | "bookmark" | "annotation" | "user" | "userSession" | "passwordResetToken" | "teamMember" | "eventLog" | "project" txIsolationLevel: Prisma.TransactionIsolationLevel } model: { Build: { payload: Prisma.$BuildPayload fields: Prisma.BuildFieldRefs operations: { findUnique: { args: Prisma.BuildFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.BuildFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.BuildFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.BuildFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.BuildFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.BuildCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.BuildCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.BuildCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.BuildDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.BuildUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.BuildDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.BuildUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.BuildUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.BuildAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.BuildGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.BuildCountArgs result: $Utils.Optional | number } } } Session: { payload: Prisma.$SessionPayload fields: Prisma.SessionFieldRefs operations: { findUnique: { args: Prisma.SessionFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.SessionFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.SessionFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.SessionFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.SessionFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.SessionCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.SessionCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.SessionCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.SessionDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.SessionUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.SessionDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.SessionUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.SessionUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.SessionAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.SessionGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.SessionCountArgs result: $Utils.Optional | number } } } SessionLog: { payload: Prisma.$SessionLogPayload fields: Prisma.SessionLogFieldRefs operations: { findUnique: { args: Prisma.SessionLogFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.SessionLogFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.SessionLogFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.SessionLogFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.SessionLogFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.SessionLogCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.SessionLogCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.SessionLogCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.SessionLogDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.SessionLogUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.SessionLogDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.SessionLogUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.SessionLogUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.SessionLogAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.SessionLogGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.SessionLogCountArgs result: $Utils.Optional | number } } } Log: { payload: Prisma.$LogPayload fields: Prisma.LogFieldRefs operations: { findUnique: { args: Prisma.LogFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.LogFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.LogFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.LogFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.LogFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.LogCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.LogCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.LogCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.LogDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.LogUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.LogDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.LogUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.LogUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.LogAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.LogGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.LogCountArgs result: $Utils.Optional | number } } } Profiling: { payload: Prisma.$ProfilingPayload fields: Prisma.ProfilingFieldRefs operations: { findUnique: { args: Prisma.ProfilingFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.ProfilingFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.ProfilingFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.ProfilingFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.ProfilingFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.ProfilingCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.ProfilingCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.ProfilingCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.ProfilingDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.ProfilingUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.ProfilingDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.ProfilingUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.ProfilingUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.ProfilingAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.ProfilingGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.ProfilingCountArgs result: $Utils.Optional | number } } } App: { payload: Prisma.$AppPayload fields: Prisma.AppFieldRefs operations: { findUnique: { args: Prisma.AppFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.AppFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.AppFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.AppFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.AppFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.AppCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.AppCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.AppCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.AppDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.AppUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.AppDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.AppUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.AppUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.AppAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.AppGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.AppCountArgs result: $Utils.Optional | number } } } Device: { payload: Prisma.$DevicePayload fields: Prisma.DeviceFieldRefs operations: { findUnique: { args: Prisma.DeviceFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.DeviceFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.DeviceFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.DeviceFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.DeviceFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.DeviceCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.DeviceCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.DeviceCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.DeviceDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.DeviceUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.DeviceDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.DeviceUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.DeviceUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.DeviceAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.DeviceGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.DeviceCountArgs result: $Utils.Optional | number } } } PendingSession: { payload: Prisma.$PendingSessionPayload fields: Prisma.PendingSessionFieldRefs operations: { findUnique: { args: Prisma.PendingSessionFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.PendingSessionFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.PendingSessionFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.PendingSessionFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.PendingSessionFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.PendingSessionCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.PendingSessionCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.PendingSessionCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.PendingSessionDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.PendingSessionUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.PendingSessionDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.PendingSessionUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.PendingSessionUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.PendingSessionAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.PendingSessionGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.PendingSessionCountArgs result: $Utils.Optional | number } } } CLIArgs: { payload: Prisma.$CLIArgsPayload fields: Prisma.CLIArgsFieldRefs operations: { findUnique: { args: Prisma.CLIArgsFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.CLIArgsFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.CLIArgsFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.CLIArgsFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.CLIArgsFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.CLIArgsCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.CLIArgsCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.CLIArgsCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.CLIArgsDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.CLIArgsUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.CLIArgsDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.CLIArgsUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.CLIArgsUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.CLIArgsAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.CLIArgsGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.CLIArgsCountArgs result: $Utils.Optional | number } } } WebhookConfig: { payload: Prisma.$WebhookConfigPayload fields: Prisma.WebhookConfigFieldRefs operations: { findUnique: { args: Prisma.WebhookConfigFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.WebhookConfigFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.WebhookConfigFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.WebhookConfigFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.WebhookConfigFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.WebhookConfigCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.WebhookConfigCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.WebhookConfigCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.WebhookConfigDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.WebhookConfigUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.WebhookConfigDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.WebhookConfigUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.WebhookConfigUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.WebhookConfigAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.WebhookConfigGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.WebhookConfigCountArgs result: $Utils.Optional | number } } } WebConfig: { payload: Prisma.$WebConfigPayload fields: Prisma.WebConfigFieldRefs operations: { findUnique: { args: Prisma.WebConfigFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.WebConfigFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.WebConfigFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.WebConfigFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.WebConfigFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.WebConfigCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.WebConfigCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.WebConfigCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.WebConfigDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.WebConfigUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.WebConfigDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.WebConfigUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.WebConfigUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.WebConfigAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.WebConfigGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.WebConfigCountArgs result: $Utils.Optional | number } } } LocatorEtalon: { payload: Prisma.$LocatorEtalonPayload fields: Prisma.LocatorEtalonFieldRefs operations: { findUnique: { args: Prisma.LocatorEtalonFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.LocatorEtalonFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.LocatorEtalonFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.LocatorEtalonFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.LocatorEtalonFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.LocatorEtalonCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.LocatorEtalonCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.LocatorEtalonCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.LocatorEtalonDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.LocatorEtalonUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.LocatorEtalonDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.LocatorEtalonUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.LocatorEtalonUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.LocatorEtalonAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.LocatorEtalonGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.LocatorEtalonCountArgs result: $Utils.Optional | number } } } PortLease: { payload: Prisma.$PortLeasePayload fields: Prisma.PortLeaseFieldRefs operations: { findUnique: { args: Prisma.PortLeaseFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.PortLeaseFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.PortLeaseFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.PortLeaseFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.PortLeaseFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.PortLeaseCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.PortLeaseCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.PortLeaseCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.PortLeaseDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.PortLeaseUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.PortLeaseDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.PortLeaseUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.PortLeaseUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.PortLeaseAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.PortLeaseGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.PortLeaseCountArgs result: $Utils.Optional | number } } } Lease: { payload: Prisma.$LeasePayload fields: Prisma.LeaseFieldRefs operations: { findUnique: { args: Prisma.LeaseFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.LeaseFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.LeaseFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.LeaseFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.LeaseFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.LeaseCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.LeaseCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.LeaseCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.LeaseDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.LeaseUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.LeaseDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.LeaseUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.LeaseUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.LeaseAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.LeaseGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.LeaseCountArgs result: $Utils.Optional | number } } } ApiKey: { payload: Prisma.$ApiKeyPayload fields: Prisma.ApiKeyFieldRefs operations: { findUnique: { args: Prisma.ApiKeyFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.ApiKeyFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.ApiKeyFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.ApiKeyFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.ApiKeyFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.ApiKeyCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.ApiKeyCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.ApiKeyCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.ApiKeyDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.ApiKeyUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.ApiKeyDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.ApiKeyUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.ApiKeyUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.ApiKeyAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.ApiKeyGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.ApiKeyCountArgs result: $Utils.Optional | number } } } Team: { payload: Prisma.$TeamPayload fields: Prisma.TeamFieldRefs operations: { findUnique: { args: Prisma.TeamFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.TeamFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.TeamFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.TeamFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.TeamFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.TeamCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.TeamCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.TeamCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.TeamDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.TeamUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.TeamDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.TeamUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.TeamUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.TeamAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.TeamGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.TeamCountArgs result: $Utils.Optional | number } } } SelectorState: { payload: Prisma.$SelectorStatePayload fields: Prisma.SelectorStateFieldRefs operations: { findUnique: { args: Prisma.SelectorStateFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.SelectorStateFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.SelectorStateFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.SelectorStateFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.SelectorStateFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.SelectorStateCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.SelectorStateCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.SelectorStateCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.SelectorStateDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.SelectorStateUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.SelectorStateDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.SelectorStateUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.SelectorStateUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.SelectorStateAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.SelectorStateGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.SelectorStateCountArgs result: $Utils.Optional | number } } } Recording: { payload: Prisma.$RecordingPayload fields: Prisma.RecordingFieldRefs operations: { findUnique: { args: Prisma.RecordingFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.RecordingFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.RecordingFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.RecordingFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.RecordingFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.RecordingCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.RecordingCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.RecordingCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.RecordingDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.RecordingUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.RecordingDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.RecordingUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.RecordingUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.RecordingAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.RecordingGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.RecordingCountArgs result: $Utils.Optional | number } } } Bookmark: { payload: Prisma.$BookmarkPayload fields: Prisma.BookmarkFieldRefs operations: { findUnique: { args: Prisma.BookmarkFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.BookmarkFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.BookmarkFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.BookmarkFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.BookmarkFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.BookmarkCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.BookmarkCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.BookmarkCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.BookmarkDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.BookmarkUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.BookmarkDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.BookmarkUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.BookmarkUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.BookmarkAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.BookmarkGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.BookmarkCountArgs result: $Utils.Optional | number } } } Annotation: { payload: Prisma.$AnnotationPayload fields: Prisma.AnnotationFieldRefs operations: { findUnique: { args: Prisma.AnnotationFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.AnnotationFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.AnnotationFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.AnnotationFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.AnnotationFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.AnnotationCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.AnnotationCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.AnnotationCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.AnnotationDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.AnnotationUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.AnnotationDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.AnnotationUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.AnnotationUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.AnnotationAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.AnnotationGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.AnnotationCountArgs result: $Utils.Optional | number } } } User: { payload: Prisma.$UserPayload fields: Prisma.UserFieldRefs operations: { findUnique: { args: Prisma.UserFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.UserFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.UserFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.UserFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.UserFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.UserCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.UserCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.UserCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.UserDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.UserUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.UserDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.UserUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.UserUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.UserAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.UserGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.UserCountArgs result: $Utils.Optional | number } } } UserSession: { payload: Prisma.$UserSessionPayload fields: Prisma.UserSessionFieldRefs operations: { findUnique: { args: Prisma.UserSessionFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.UserSessionFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.UserSessionFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.UserSessionFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.UserSessionFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.UserSessionCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.UserSessionCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.UserSessionCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.UserSessionDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.UserSessionUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.UserSessionDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.UserSessionUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.UserSessionUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.UserSessionAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.UserSessionGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.UserSessionCountArgs result: $Utils.Optional | number } } } PasswordResetToken: { payload: Prisma.$PasswordResetTokenPayload fields: Prisma.PasswordResetTokenFieldRefs operations: { findUnique: { args: Prisma.PasswordResetTokenFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.PasswordResetTokenFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.PasswordResetTokenFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.PasswordResetTokenFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.PasswordResetTokenFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.PasswordResetTokenCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.PasswordResetTokenCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.PasswordResetTokenCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.PasswordResetTokenDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.PasswordResetTokenUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.PasswordResetTokenDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.PasswordResetTokenUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.PasswordResetTokenUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.PasswordResetTokenAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.PasswordResetTokenGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.PasswordResetTokenCountArgs result: $Utils.Optional | number } } } TeamMember: { payload: Prisma.$TeamMemberPayload fields: Prisma.TeamMemberFieldRefs operations: { findUnique: { args: Prisma.TeamMemberFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.TeamMemberFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.TeamMemberFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.TeamMemberFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.TeamMemberFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.TeamMemberCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.TeamMemberCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.TeamMemberCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.TeamMemberDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.TeamMemberUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.TeamMemberDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.TeamMemberUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.TeamMemberUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.TeamMemberAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.TeamMemberGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.TeamMemberCountArgs result: $Utils.Optional | number } } } EventLog: { payload: Prisma.$EventLogPayload fields: Prisma.EventLogFieldRefs operations: { findUnique: { args: Prisma.EventLogFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.EventLogFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.EventLogFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.EventLogFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.EventLogFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.EventLogCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.EventLogCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.EventLogCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.EventLogDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.EventLogUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.EventLogDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.EventLogUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.EventLogUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.EventLogAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.EventLogGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.EventLogCountArgs result: $Utils.Optional | number } } } Project: { payload: Prisma.$ProjectPayload fields: Prisma.ProjectFieldRefs operations: { findUnique: { args: Prisma.ProjectFindUniqueArgs result: $Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.ProjectFindUniqueOrThrowArgs result: $Utils.PayloadToResult } findFirst: { args: Prisma.ProjectFindFirstArgs result: $Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.ProjectFindFirstOrThrowArgs result: $Utils.PayloadToResult } findMany: { args: Prisma.ProjectFindManyArgs result: $Utils.PayloadToResult[] } create: { args: Prisma.ProjectCreateArgs result: $Utils.PayloadToResult } createMany: { args: Prisma.ProjectCreateManyArgs result: BatchPayload } createManyAndReturn: { args: Prisma.ProjectCreateManyAndReturnArgs result: $Utils.PayloadToResult[] } delete: { args: Prisma.ProjectDeleteArgs result: $Utils.PayloadToResult } update: { args: Prisma.ProjectUpdateArgs result: $Utils.PayloadToResult } deleteMany: { args: Prisma.ProjectDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.ProjectUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.ProjectUpsertArgs result: $Utils.PayloadToResult } aggregate: { args: Prisma.ProjectAggregateArgs result: $Utils.Optional } groupBy: { args: Prisma.ProjectGroupByArgs result: $Utils.Optional[] } count: { args: Prisma.ProjectCountArgs result: $Utils.Optional | number } } } } } & { other: { payload: any operations: { $executeRaw: { args: [query: TemplateStringsArray | Prisma.Sql, ...values: any[]], result: any } $executeRawUnsafe: { args: [query: string, ...values: any[]], result: any } $queryRaw: { args: [query: TemplateStringsArray | Prisma.Sql, ...values: any[]], result: any } $queryRawUnsafe: { args: [query: string, ...values: any[]], result: any } } } } export const defineExtension: $Extensions.ExtendsHook<"define", Prisma.TypeMapCb, $Extensions.DefaultArgs> export type DefaultPrismaClient = PrismaClient export type ErrorFormat = 'pretty' | 'colorless' | 'minimal' export interface PrismaClientOptions { /** * Overwrites the datasource url from your schema.prisma file */ datasources?: Datasources /** * Overwrites the datasource url from your schema.prisma file */ datasourceUrl?: string /** * @default "colorless" */ errorFormat?: ErrorFormat /** * @example * ``` * // Defaults to stdout * log: ['query', 'info', 'warn', 'error'] * * // Emit as events * log: [ * { 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?: Prisma.TransactionIsolationLevel } } /* Types for Logging */ export type LogLevel = 'info' | 'query' | 'warn' | 'error' export type LogDefinition = { level: LogLevel emit: 'stdout' | 'event' } export type GetLogType = T extends LogDefinition ? T['emit'] extends 'event' ? T['level'] : never : never export type GetEvents = T extends Array ? GetLogType | GetLogType | GetLogType | 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' | 'upsert' | 'delete' | 'deleteMany' | 'executeRaw' | 'queryRaw' | 'aggregate' | 'count' | 'runCommandRaw' | 'findRaw' | 'groupBy' /** * These options are being passed into the middleware as "params" */ export type MiddlewareParams = { model?: ModelName action: PrismaAction args: any dataPath: string[] runInTransaction: boolean } /** * The `T` type makes sure, that the `return proceed` is not forgotten in the middleware implementation */ export type Middleware = ( params: MiddlewareParams, next: (params: MiddlewareParams) => $Utils.JsPromise, ) => $Utils.JsPromise // tested in getLogLevel.test.ts export function getLogLevel(log: Array): LogLevel | undefined; /** * `PrismaClient` proxy available in interactive transactions. */ export type TransactionClient = Omit export type Datasource = { url?: string } /** * Count Types */ /** * Count Type BuildCountOutputType */ export type BuildCountOutputType = { sessions: number } export type BuildCountOutputTypeSelect = { sessions?: boolean | BuildCountOutputTypeCountSessionsArgs } // Custom InputTypes /** * BuildCountOutputType without action */ export type BuildCountOutputTypeDefaultArgs = { /** * Select specific fields to fetch from the BuildCountOutputType */ select?: BuildCountOutputTypeSelect | null } /** * BuildCountOutputType without action */ export type BuildCountOutputTypeCountSessionsArgs = { where?: SessionWhereInput } /** * Count Type SessionCountOutputType */ export type SessionCountOutputType = { Log: number Profiling: number SessionLog: number Recording: number } export type SessionCountOutputTypeSelect = { Log?: boolean | SessionCountOutputTypeCountLogArgs Profiling?: boolean | SessionCountOutputTypeCountProfilingArgs SessionLog?: boolean | SessionCountOutputTypeCountSessionLogArgs Recording?: boolean | SessionCountOutputTypeCountRecordingArgs } // Custom InputTypes /** * SessionCountOutputType without action */ export type SessionCountOutputTypeDefaultArgs = { /** * Select specific fields to fetch from the SessionCountOutputType */ select?: SessionCountOutputTypeSelect | null } /** * SessionCountOutputType without action */ export type SessionCountOutputTypeCountLogArgs = { where?: LogWhereInput } /** * SessionCountOutputType without action */ export type SessionCountOutputTypeCountProfilingArgs = { where?: ProfilingWhereInput } /** * SessionCountOutputType without action */ export type SessionCountOutputTypeCountSessionLogArgs = { where?: SessionLogWhereInput } /** * SessionCountOutputType without action */ export type SessionCountOutputTypeCountRecordingArgs = { where?: RecordingWhereInput } /** * Count Type TeamCountOutputType */ export type TeamCountOutputType = { devices: number apiKeys: number members: number } export type TeamCountOutputTypeSelect = { devices?: boolean | TeamCountOutputTypeCountDevicesArgs apiKeys?: boolean | TeamCountOutputTypeCountApiKeysArgs members?: boolean | TeamCountOutputTypeCountMembersArgs } // Custom InputTypes /** * TeamCountOutputType without action */ export type TeamCountOutputTypeDefaultArgs = { /** * Select specific fields to fetch from the TeamCountOutputType */ select?: TeamCountOutputTypeSelect | null } /** * TeamCountOutputType without action */ export type TeamCountOutputTypeCountDevicesArgs = { where?: DeviceWhereInput } /** * TeamCountOutputType without action */ export type TeamCountOutputTypeCountApiKeysArgs = { where?: ApiKeyWhereInput } /** * TeamCountOutputType without action */ export type TeamCountOutputTypeCountMembersArgs = { where?: TeamMemberWhereInput } /** * Count Type RecordingCountOutputType */ export type RecordingCountOutputType = { bookmarks: number annotations: number } export type RecordingCountOutputTypeSelect = { bookmarks?: boolean | RecordingCountOutputTypeCountBookmarksArgs annotations?: boolean | RecordingCountOutputTypeCountAnnotationsArgs } // Custom InputTypes /** * RecordingCountOutputType without action */ export type RecordingCountOutputTypeDefaultArgs = { /** * Select specific fields to fetch from the RecordingCountOutputType */ select?: RecordingCountOutputTypeSelect | null } /** * RecordingCountOutputType without action */ export type RecordingCountOutputTypeCountBookmarksArgs = { where?: BookmarkWhereInput } /** * RecordingCountOutputType without action */ export type RecordingCountOutputTypeCountAnnotationsArgs = { where?: AnnotationWhereInput } /** * Count Type UserCountOutputType */ export type UserCountOutputType = { apiKeys: number sessions: number passwordResetTokens: number teamMemberships: number } export type UserCountOutputTypeSelect = { apiKeys?: boolean | UserCountOutputTypeCountApiKeysArgs sessions?: boolean | UserCountOutputTypeCountSessionsArgs passwordResetTokens?: boolean | UserCountOutputTypeCountPasswordResetTokensArgs teamMemberships?: boolean | UserCountOutputTypeCountTeamMembershipsArgs } // Custom InputTypes /** * UserCountOutputType without action */ export type UserCountOutputTypeDefaultArgs = { /** * Select specific fields to fetch from the UserCountOutputType */ select?: UserCountOutputTypeSelect | null } /** * UserCountOutputType without action */ export type UserCountOutputTypeCountApiKeysArgs = { where?: ApiKeyWhereInput } /** * UserCountOutputType without action */ export type UserCountOutputTypeCountSessionsArgs = { where?: UserSessionWhereInput } /** * UserCountOutputType without action */ export type UserCountOutputTypeCountPasswordResetTokensArgs = { where?: PasswordResetTokenWhereInput } /** * UserCountOutputType without action */ export type UserCountOutputTypeCountTeamMembershipsArgs = { where?: TeamMemberWhereInput } /** * Models */ /** * Model Build */ export type AggregateBuild = { _count: BuildCountAggregateOutputType | null _min: BuildMinAggregateOutputType | null _max: BuildMaxAggregateOutputType | null } export type BuildMinAggregateOutputType = { id: string | null name: string | null createdAt: Date | null updatedAt: Date | null } export type BuildMaxAggregateOutputType = { id: string | null name: string | null createdAt: Date | null updatedAt: Date | null } export type BuildCountAggregateOutputType = { id: number name: number createdAt: number updatedAt: number _all: number } export type BuildMinAggregateInputType = { id?: true name?: true createdAt?: true updatedAt?: true } export type BuildMaxAggregateInputType = { id?: true name?: true createdAt?: true updatedAt?: true } export type BuildCountAggregateInputType = { id?: true name?: true createdAt?: true updatedAt?: true _all?: true } export type BuildAggregateArgs = { /** * Filter which Build to aggregate. */ where?: BuildWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Builds to fetch. */ orderBy?: BuildOrderByWithRelationInput | BuildOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: BuildWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Builds from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Builds. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Builds **/ _count?: true | BuildCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: BuildMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: BuildMaxAggregateInputType } export type GetBuildAggregateType = { [P in keyof T & keyof AggregateBuild]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type BuildGroupByArgs = { where?: BuildWhereInput orderBy?: BuildOrderByWithAggregationInput | BuildOrderByWithAggregationInput[] by: BuildScalarFieldEnum[] | BuildScalarFieldEnum having?: BuildScalarWhereWithAggregatesInput take?: number skip?: number _count?: BuildCountAggregateInputType | true _min?: BuildMinAggregateInputType _max?: BuildMaxAggregateInputType } export type BuildGroupByOutputType = { id: string name: string | null createdAt: Date updatedAt: Date _count: BuildCountAggregateOutputType | null _min: BuildMinAggregateOutputType | null _max: BuildMaxAggregateOutputType | null } type GetBuildGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof BuildGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type BuildSelect = $Extensions.GetSelect<{ id?: boolean name?: boolean createdAt?: boolean updatedAt?: boolean sessions?: boolean | Build$sessionsArgs _count?: boolean | BuildCountOutputTypeDefaultArgs }, ExtArgs["result"]["build"]> export type BuildSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean name?: boolean createdAt?: boolean updatedAt?: boolean }, ExtArgs["result"]["build"]> export type BuildSelectScalar = { id?: boolean name?: boolean createdAt?: boolean updatedAt?: boolean } export type BuildInclude = { sessions?: boolean | Build$sessionsArgs _count?: boolean | BuildCountOutputTypeDefaultArgs } export type BuildIncludeCreateManyAndReturn = {} export type $BuildPayload = { name: "Build" objects: { sessions: Prisma.$SessionPayload[] } scalars: $Extensions.GetPayloadResult<{ id: string name: string | null createdAt: Date updatedAt: Date }, ExtArgs["result"]["build"]> composites: {} } type BuildGetPayload = $Result.GetResult type BuildCountArgs = Omit & { select?: BuildCountAggregateInputType | true } export interface BuildDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['Build'], meta: { name: 'Build' } } /** * Find zero or one Build that matches the filter. * @param {BuildFindUniqueArgs} args - Arguments to find a Build * @example * // Get one Build * const build = await prisma.build.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__BuildClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one Build that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {BuildFindUniqueOrThrowArgs} args - Arguments to find a Build * @example * // Get one Build * const build = await prisma.build.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__BuildClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first Build that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {BuildFindFirstArgs} args - Arguments to find a Build * @example * // Get one Build * const build = await prisma.build.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__BuildClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first Build that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {BuildFindFirstOrThrowArgs} args - Arguments to find a Build * @example * // Get one Build * const build = await prisma.build.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__BuildClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more Builds that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {BuildFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Builds * const builds = await prisma.build.findMany() * * // Get first 10 Builds * const builds = await prisma.build.findMany({ take: 10 }) * * // Only select the `id` * const buildWithIdOnly = await prisma.build.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a Build. * @param {BuildCreateArgs} args - Arguments to create a Build. * @example * // Create one Build * const Build = await prisma.build.create({ * data: { * // ... data to create a Build * } * }) * */ create(args: SelectSubset>): Prisma__BuildClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many Builds. * @param {BuildCreateManyArgs} args - Arguments to create many Builds. * @example * // Create many Builds * const build = await prisma.build.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many Builds and returns the data saved in the database. * @param {BuildCreateManyAndReturnArgs} args - Arguments to create many Builds. * @example * // Create many Builds * const build = await prisma.build.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many Builds and only return the `id` * const buildWithIdOnly = await prisma.build.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a Build. * @param {BuildDeleteArgs} args - Arguments to delete one Build. * @example * // Delete one Build * const Build = await prisma.build.delete({ * where: { * // ... filter to delete one Build * } * }) * */ delete(args: SelectSubset>): Prisma__BuildClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one Build. * @param {BuildUpdateArgs} args - Arguments to update one Build. * @example * // Update one Build * const build = await prisma.build.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__BuildClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more Builds. * @param {BuildDeleteManyArgs} args - Arguments to filter Builds to delete. * @example * // Delete a few Builds * const { count } = await prisma.build.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Builds. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {BuildUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Builds * const build = await prisma.build.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one Build. * @param {BuildUpsertArgs} args - Arguments to update or create a Build. * @example * // Update or create a Build * const build = await prisma.build.upsert({ * create: { * // ... data to create a Build * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the Build we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__BuildClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of Builds. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {BuildCountArgs} args - Arguments to filter Builds to count. * @example * // Count the number of Builds * const count = await prisma.build.count({ * where: { * // ... the filter for the Builds we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a Build. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {BuildAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by Build. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {BuildGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends BuildGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: BuildGroupByArgs['orderBy'] } : { orderBy?: BuildGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetBuildGroupByPayload : Prisma.PrismaPromise /** * Fields of the Build model */ readonly fields: BuildFieldRefs; } /** * The delegate class that acts as a "Promise-like" for Build. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__BuildClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" sessions = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany"> | Null> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the Build model */ interface BuildFieldRefs { readonly id: FieldRef<"Build", 'String'> readonly name: FieldRef<"Build", 'String'> readonly createdAt: FieldRef<"Build", 'DateTime'> readonly updatedAt: FieldRef<"Build", 'DateTime'> } // Custom InputTypes /** * Build findUnique */ export type BuildFindUniqueArgs = { /** * Select specific fields to fetch from the Build */ select?: BuildSelect | null /** * Choose, which related nodes to fetch as well */ include?: BuildInclude | null /** * Filter, which Build to fetch. */ where: BuildWhereUniqueInput } /** * Build findUniqueOrThrow */ export type BuildFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the Build */ select?: BuildSelect | null /** * Choose, which related nodes to fetch as well */ include?: BuildInclude | null /** * Filter, which Build to fetch. */ where: BuildWhereUniqueInput } /** * Build findFirst */ export type BuildFindFirstArgs = { /** * Select specific fields to fetch from the Build */ select?: BuildSelect | null /** * Choose, which related nodes to fetch as well */ include?: BuildInclude | null /** * Filter, which Build to fetch. */ where?: BuildWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Builds to fetch. */ orderBy?: BuildOrderByWithRelationInput | BuildOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Builds. */ cursor?: BuildWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Builds from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Builds. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Builds. */ distinct?: BuildScalarFieldEnum | BuildScalarFieldEnum[] } /** * Build findFirstOrThrow */ export type BuildFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the Build */ select?: BuildSelect | null /** * Choose, which related nodes to fetch as well */ include?: BuildInclude | null /** * Filter, which Build to fetch. */ where?: BuildWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Builds to fetch. */ orderBy?: BuildOrderByWithRelationInput | BuildOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Builds. */ cursor?: BuildWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Builds from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Builds. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Builds. */ distinct?: BuildScalarFieldEnum | BuildScalarFieldEnum[] } /** * Build findMany */ export type BuildFindManyArgs = { /** * Select specific fields to fetch from the Build */ select?: BuildSelect | null /** * Choose, which related nodes to fetch as well */ include?: BuildInclude | null /** * Filter, which Builds to fetch. */ where?: BuildWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Builds to fetch. */ orderBy?: BuildOrderByWithRelationInput | BuildOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Builds. */ cursor?: BuildWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Builds from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Builds. */ skip?: number distinct?: BuildScalarFieldEnum | BuildScalarFieldEnum[] } /** * Build create */ export type BuildCreateArgs = { /** * Select specific fields to fetch from the Build */ select?: BuildSelect | null /** * Choose, which related nodes to fetch as well */ include?: BuildInclude | null /** * The data needed to create a Build. */ data: XOR } /** * Build createMany */ export type BuildCreateManyArgs = { /** * The data used to create many Builds. */ data: BuildCreateManyInput | BuildCreateManyInput[] } /** * Build createManyAndReturn */ export type BuildCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the Build */ select?: BuildSelectCreateManyAndReturn | null /** * The data used to create many Builds. */ data: BuildCreateManyInput | BuildCreateManyInput[] } /** * Build update */ export type BuildUpdateArgs = { /** * Select specific fields to fetch from the Build */ select?: BuildSelect | null /** * Choose, which related nodes to fetch as well */ include?: BuildInclude | null /** * The data needed to update a Build. */ data: XOR /** * Choose, which Build to update. */ where: BuildWhereUniqueInput } /** * Build updateMany */ export type BuildUpdateManyArgs = { /** * The data used to update Builds. */ data: XOR /** * Filter which Builds to update */ where?: BuildWhereInput } /** * Build upsert */ export type BuildUpsertArgs = { /** * Select specific fields to fetch from the Build */ select?: BuildSelect | null /** * Choose, which related nodes to fetch as well */ include?: BuildInclude | null /** * The filter to search for the Build to update in case it exists. */ where: BuildWhereUniqueInput /** * In case the Build found by the `where` argument doesn't exist, create a new Build with this data. */ create: XOR /** * In case the Build was found with the provided `where` argument, update it with this data. */ update: XOR } /** * Build delete */ export type BuildDeleteArgs = { /** * Select specific fields to fetch from the Build */ select?: BuildSelect | null /** * Choose, which related nodes to fetch as well */ include?: BuildInclude | null /** * Filter which Build to delete. */ where: BuildWhereUniqueInput } /** * Build deleteMany */ export type BuildDeleteManyArgs = { /** * Filter which Builds to delete */ where?: BuildWhereInput } /** * Build.sessions */ export type Build$sessionsArgs = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null where?: SessionWhereInput orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[] cursor?: SessionWhereUniqueInput take?: number skip?: number distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[] } /** * Build without action */ export type BuildDefaultArgs = { /** * Select specific fields to fetch from the Build */ select?: BuildSelect | null /** * Choose, which related nodes to fetch as well */ include?: BuildInclude | null } /** * Model Session */ export type AggregateSession = { _count: SessionCountAggregateOutputType | null _avg: SessionAvgAggregateOutputType | null _sum: SessionSumAggregateOutputType | null _min: SessionMinAggregateOutputType | null _max: SessionMaxAggregateOutputType | null } export type SessionAvgAggregateOutputType = { heartbeat_pid: number | null } export type SessionSumAggregateOutputType = { heartbeat_pid: number | null } export type SessionMinAggregateOutputType = { id: string | null build_id: string | null name: string | null status: string | null desired_capabilities: string | null session_capabilities: string | null node_id: string | null has_live_video: boolean | null video_recording_enabled: boolean | null video_recording: string | null startTime: Date | null endTime: Date | null failure_reason: string | null is_profiling_available: boolean | null device_info: string | null device_udid: string | null device_platform: string | null device_version: string | null device_name: string | null createdAt: Date | null updatedAt: Date | null performance_trace: string | null failure_category: string | null ai_analysis: string | null tags: string | null trace_id: string | null last_heartbeat_at: Date | null heartbeat_pid: number | null heartbeat_host: string | null api_key_id: string | null user_id: string | null } export type SessionMaxAggregateOutputType = { id: string | null build_id: string | null name: string | null status: string | null desired_capabilities: string | null session_capabilities: string | null node_id: string | null has_live_video: boolean | null video_recording_enabled: boolean | null video_recording: string | null startTime: Date | null endTime: Date | null failure_reason: string | null is_profiling_available: boolean | null device_info: string | null device_udid: string | null device_platform: string | null device_version: string | null device_name: string | null createdAt: Date | null updatedAt: Date | null performance_trace: string | null failure_category: string | null ai_analysis: string | null tags: string | null trace_id: string | null last_heartbeat_at: Date | null heartbeat_pid: number | null heartbeat_host: string | null api_key_id: string | null user_id: string | null } export type SessionCountAggregateOutputType = { id: number build_id: number name: number status: number desired_capabilities: number session_capabilities: number node_id: number has_live_video: number video_recording_enabled: number video_recording: number startTime: number endTime: number failure_reason: number is_profiling_available: number device_info: number device_udid: number device_platform: number device_version: number device_name: number createdAt: number updatedAt: number performance_trace: number failure_category: number ai_analysis: number tags: number trace_id: number last_heartbeat_at: number heartbeat_pid: number heartbeat_host: number api_key_id: number user_id: number _all: number } export type SessionAvgAggregateInputType = { heartbeat_pid?: true } export type SessionSumAggregateInputType = { heartbeat_pid?: true } export type SessionMinAggregateInputType = { id?: true build_id?: true name?: true status?: true desired_capabilities?: true session_capabilities?: true node_id?: true has_live_video?: true video_recording_enabled?: true video_recording?: true startTime?: true endTime?: true failure_reason?: true is_profiling_available?: true device_info?: true device_udid?: true device_platform?: true device_version?: true device_name?: true createdAt?: true updatedAt?: true performance_trace?: true failure_category?: true ai_analysis?: true tags?: true trace_id?: true last_heartbeat_at?: true heartbeat_pid?: true heartbeat_host?: true api_key_id?: true user_id?: true } export type SessionMaxAggregateInputType = { id?: true build_id?: true name?: true status?: true desired_capabilities?: true session_capabilities?: true node_id?: true has_live_video?: true video_recording_enabled?: true video_recording?: true startTime?: true endTime?: true failure_reason?: true is_profiling_available?: true device_info?: true device_udid?: true device_platform?: true device_version?: true device_name?: true createdAt?: true updatedAt?: true performance_trace?: true failure_category?: true ai_analysis?: true tags?: true trace_id?: true last_heartbeat_at?: true heartbeat_pid?: true heartbeat_host?: true api_key_id?: true user_id?: true } export type SessionCountAggregateInputType = { id?: true build_id?: true name?: true status?: true desired_capabilities?: true session_capabilities?: true node_id?: true has_live_video?: true video_recording_enabled?: true video_recording?: true startTime?: true endTime?: true failure_reason?: true is_profiling_available?: true device_info?: true device_udid?: true device_platform?: true device_version?: true device_name?: true createdAt?: true updatedAt?: true performance_trace?: true failure_category?: true ai_analysis?: true tags?: true trace_id?: true last_heartbeat_at?: true heartbeat_pid?: true heartbeat_host?: true api_key_id?: true user_id?: true _all?: true } export type SessionAggregateArgs = { /** * Filter which Session to aggregate. */ where?: SessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Sessions to fetch. */ orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: SessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Sessions from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Sessions. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Sessions **/ _count?: true | SessionCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: SessionAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: SessionSumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: SessionMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: SessionMaxAggregateInputType } export type GetSessionAggregateType = { [P in keyof T & keyof AggregateSession]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type SessionGroupByArgs = { where?: SessionWhereInput orderBy?: SessionOrderByWithAggregationInput | SessionOrderByWithAggregationInput[] by: SessionScalarFieldEnum[] | SessionScalarFieldEnum having?: SessionScalarWhereWithAggregatesInput take?: number skip?: number _count?: SessionCountAggregateInputType | true _avg?: SessionAvgAggregateInputType _sum?: SessionSumAggregateInputType _min?: SessionMinAggregateInputType _max?: SessionMaxAggregateInputType } export type SessionGroupByOutputType = { id: string build_id: string | null name: string | null status: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled: boolean video_recording: string | null startTime: Date endTime: Date | null failure_reason: string | null is_profiling_available: boolean device_info: string | null device_udid: string device_platform: string device_version: string device_name: string | null createdAt: Date updatedAt: Date performance_trace: string | null failure_category: string | null ai_analysis: string | null tags: string | null trace_id: string | null last_heartbeat_at: Date | null heartbeat_pid: number | null heartbeat_host: string | null api_key_id: string | null user_id: string | null _count: SessionCountAggregateOutputType | null _avg: SessionAvgAggregateOutputType | null _sum: SessionSumAggregateOutputType | null _min: SessionMinAggregateOutputType | null _max: SessionMaxAggregateOutputType | null } type GetSessionGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof SessionGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type SessionSelect = $Extensions.GetSelect<{ id?: boolean build_id?: boolean name?: boolean status?: boolean desired_capabilities?: boolean session_capabilities?: boolean node_id?: boolean has_live_video?: boolean video_recording_enabled?: boolean video_recording?: boolean startTime?: boolean endTime?: boolean failure_reason?: boolean is_profiling_available?: boolean device_info?: boolean device_udid?: boolean device_platform?: boolean device_version?: boolean device_name?: boolean createdAt?: boolean updatedAt?: boolean performance_trace?: boolean failure_category?: boolean ai_analysis?: boolean tags?: boolean trace_id?: boolean last_heartbeat_at?: boolean heartbeat_pid?: boolean heartbeat_host?: boolean api_key_id?: boolean user_id?: boolean Log?: boolean | Session$LogArgs Profiling?: boolean | Session$ProfilingArgs build?: boolean | Session$buildArgs SessionLog?: boolean | Session$SessionLogArgs Recording?: boolean | Session$RecordingArgs _count?: boolean | SessionCountOutputTypeDefaultArgs }, ExtArgs["result"]["session"]> export type SessionSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean build_id?: boolean name?: boolean status?: boolean desired_capabilities?: boolean session_capabilities?: boolean node_id?: boolean has_live_video?: boolean video_recording_enabled?: boolean video_recording?: boolean startTime?: boolean endTime?: boolean failure_reason?: boolean is_profiling_available?: boolean device_info?: boolean device_udid?: boolean device_platform?: boolean device_version?: boolean device_name?: boolean createdAt?: boolean updatedAt?: boolean performance_trace?: boolean failure_category?: boolean ai_analysis?: boolean tags?: boolean trace_id?: boolean last_heartbeat_at?: boolean heartbeat_pid?: boolean heartbeat_host?: boolean api_key_id?: boolean user_id?: boolean build?: boolean | Session$buildArgs }, ExtArgs["result"]["session"]> export type SessionSelectScalar = { id?: boolean build_id?: boolean name?: boolean status?: boolean desired_capabilities?: boolean session_capabilities?: boolean node_id?: boolean has_live_video?: boolean video_recording_enabled?: boolean video_recording?: boolean startTime?: boolean endTime?: boolean failure_reason?: boolean is_profiling_available?: boolean device_info?: boolean device_udid?: boolean device_platform?: boolean device_version?: boolean device_name?: boolean createdAt?: boolean updatedAt?: boolean performance_trace?: boolean failure_category?: boolean ai_analysis?: boolean tags?: boolean trace_id?: boolean last_heartbeat_at?: boolean heartbeat_pid?: boolean heartbeat_host?: boolean api_key_id?: boolean user_id?: boolean } export type SessionInclude = { Log?: boolean | Session$LogArgs Profiling?: boolean | Session$ProfilingArgs build?: boolean | Session$buildArgs SessionLog?: boolean | Session$SessionLogArgs Recording?: boolean | Session$RecordingArgs _count?: boolean | SessionCountOutputTypeDefaultArgs } export type SessionIncludeCreateManyAndReturn = { build?: boolean | Session$buildArgs } export type $SessionPayload = { name: "Session" objects: { Log: Prisma.$LogPayload[] Profiling: Prisma.$ProfilingPayload[] build: Prisma.$BuildPayload | null SessionLog: Prisma.$SessionLogPayload[] Recording: Prisma.$RecordingPayload[] } scalars: $Extensions.GetPayloadResult<{ id: string build_id: string | null name: string | null status: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled: boolean video_recording: string | null startTime: Date endTime: Date | null failure_reason: string | null is_profiling_available: boolean device_info: string | null device_udid: string device_platform: string device_version: string device_name: string | null createdAt: Date updatedAt: Date performance_trace: string | null failure_category: string | null ai_analysis: string | null tags: string | null trace_id: string | null last_heartbeat_at: Date | null heartbeat_pid: number | null heartbeat_host: string | null api_key_id: string | null user_id: string | null }, ExtArgs["result"]["session"]> composites: {} } type SessionGetPayload = $Result.GetResult type SessionCountArgs = Omit & { select?: SessionCountAggregateInputType | true } export interface SessionDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['Session'], meta: { name: 'Session' } } /** * Find zero or one Session that matches the filter. * @param {SessionFindUniqueArgs} args - Arguments to find a Session * @example * // Get one Session * const session = await prisma.session.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one Session that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {SessionFindUniqueOrThrowArgs} args - Arguments to find a Session * @example * // Get one Session * const session = await prisma.session.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first Session that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SessionFindFirstArgs} args - Arguments to find a Session * @example * // Get one Session * const session = await prisma.session.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first Session that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SessionFindFirstOrThrowArgs} args - Arguments to find a Session * @example * // Get one Session * const session = await prisma.session.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more Sessions that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SessionFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Sessions * const sessions = await prisma.session.findMany() * * // Get first 10 Sessions * const sessions = await prisma.session.findMany({ take: 10 }) * * // Only select the `id` * const sessionWithIdOnly = await prisma.session.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a Session. * @param {SessionCreateArgs} args - Arguments to create a Session. * @example * // Create one Session * const Session = await prisma.session.create({ * data: { * // ... data to create a Session * } * }) * */ create(args: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many Sessions. * @param {SessionCreateManyArgs} args - Arguments to create many Sessions. * @example * // Create many Sessions * const session = await prisma.session.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many Sessions and returns the data saved in the database. * @param {SessionCreateManyAndReturnArgs} args - Arguments to create many Sessions. * @example * // Create many Sessions * const session = await prisma.session.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many Sessions and only return the `id` * const sessionWithIdOnly = await prisma.session.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a Session. * @param {SessionDeleteArgs} args - Arguments to delete one Session. * @example * // Delete one Session * const Session = await prisma.session.delete({ * where: { * // ... filter to delete one Session * } * }) * */ delete(args: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one Session. * @param {SessionUpdateArgs} args - Arguments to update one Session. * @example * // Update one Session * const session = await prisma.session.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more Sessions. * @param {SessionDeleteManyArgs} args - Arguments to filter Sessions to delete. * @example * // Delete a few Sessions * const { count } = await prisma.session.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Sessions. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SessionUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Sessions * const session = await prisma.session.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one Session. * @param {SessionUpsertArgs} args - Arguments to update or create a Session. * @example * // Update or create a Session * const session = await prisma.session.upsert({ * create: { * // ... data to create a Session * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the Session we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of Sessions. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SessionCountArgs} args - Arguments to filter Sessions to count. * @example * // Count the number of Sessions * const count = await prisma.session.count({ * where: { * // ... the filter for the Sessions we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a Session. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SessionAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by Session. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SessionGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends SessionGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: SessionGroupByArgs['orderBy'] } : { orderBy?: SessionGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetSessionGroupByPayload : Prisma.PrismaPromise /** * Fields of the Session model */ readonly fields: SessionFieldRefs; } /** * The delegate class that acts as a "Promise-like" for Session. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__SessionClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" Log = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany"> | Null> Profiling = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany"> | Null> build = {}>(args?: Subset>): Prisma__BuildClient<$Result.GetResult, T, "findUniqueOrThrow"> | null, null, ExtArgs> SessionLog = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany"> | Null> Recording = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany"> | Null> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the Session model */ interface SessionFieldRefs { readonly id: FieldRef<"Session", 'String'> readonly build_id: FieldRef<"Session", 'String'> readonly name: FieldRef<"Session", 'String'> readonly status: FieldRef<"Session", 'String'> readonly desired_capabilities: FieldRef<"Session", 'String'> readonly session_capabilities: FieldRef<"Session", 'String'> readonly node_id: FieldRef<"Session", 'String'> readonly has_live_video: FieldRef<"Session", 'Boolean'> readonly video_recording_enabled: FieldRef<"Session", 'Boolean'> readonly video_recording: FieldRef<"Session", 'String'> readonly startTime: FieldRef<"Session", 'DateTime'> readonly endTime: FieldRef<"Session", 'DateTime'> readonly failure_reason: FieldRef<"Session", 'String'> readonly is_profiling_available: FieldRef<"Session", 'Boolean'> readonly device_info: FieldRef<"Session", 'String'> readonly device_udid: FieldRef<"Session", 'String'> readonly device_platform: FieldRef<"Session", 'String'> readonly device_version: FieldRef<"Session", 'String'> readonly device_name: FieldRef<"Session", 'String'> readonly createdAt: FieldRef<"Session", 'DateTime'> readonly updatedAt: FieldRef<"Session", 'DateTime'> readonly performance_trace: FieldRef<"Session", 'String'> readonly failure_category: FieldRef<"Session", 'String'> readonly ai_analysis: FieldRef<"Session", 'String'> readonly tags: FieldRef<"Session", 'String'> readonly trace_id: FieldRef<"Session", 'String'> readonly last_heartbeat_at: FieldRef<"Session", 'DateTime'> readonly heartbeat_pid: FieldRef<"Session", 'Int'> readonly heartbeat_host: FieldRef<"Session", 'String'> readonly api_key_id: FieldRef<"Session", 'String'> readonly user_id: FieldRef<"Session", 'String'> } // Custom InputTypes /** * Session findUnique */ export type SessionFindUniqueArgs = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null /** * Filter, which Session to fetch. */ where: SessionWhereUniqueInput } /** * Session findUniqueOrThrow */ export type SessionFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null /** * Filter, which Session to fetch. */ where: SessionWhereUniqueInput } /** * Session findFirst */ export type SessionFindFirstArgs = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null /** * Filter, which Session to fetch. */ where?: SessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Sessions to fetch. */ orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Sessions. */ cursor?: SessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Sessions from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Sessions. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Sessions. */ distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[] } /** * Session findFirstOrThrow */ export type SessionFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null /** * Filter, which Session to fetch. */ where?: SessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Sessions to fetch. */ orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Sessions. */ cursor?: SessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Sessions from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Sessions. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Sessions. */ distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[] } /** * Session findMany */ export type SessionFindManyArgs = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null /** * Filter, which Sessions to fetch. */ where?: SessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Sessions to fetch. */ orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Sessions. */ cursor?: SessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Sessions from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Sessions. */ skip?: number distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[] } /** * Session create */ export type SessionCreateArgs = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null /** * The data needed to create a Session. */ data: XOR } /** * Session createMany */ export type SessionCreateManyArgs = { /** * The data used to create many Sessions. */ data: SessionCreateManyInput | SessionCreateManyInput[] } /** * Session createManyAndReturn */ export type SessionCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the Session */ select?: SessionSelectCreateManyAndReturn | null /** * The data used to create many Sessions. */ data: SessionCreateManyInput | SessionCreateManyInput[] /** * Choose, which related nodes to fetch as well */ include?: SessionIncludeCreateManyAndReturn | null } /** * Session update */ export type SessionUpdateArgs = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null /** * The data needed to update a Session. */ data: XOR /** * Choose, which Session to update. */ where: SessionWhereUniqueInput } /** * Session updateMany */ export type SessionUpdateManyArgs = { /** * The data used to update Sessions. */ data: XOR /** * Filter which Sessions to update */ where?: SessionWhereInput } /** * Session upsert */ export type SessionUpsertArgs = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null /** * The filter to search for the Session to update in case it exists. */ where: SessionWhereUniqueInput /** * In case the Session found by the `where` argument doesn't exist, create a new Session with this data. */ create: XOR /** * In case the Session was found with the provided `where` argument, update it with this data. */ update: XOR } /** * Session delete */ export type SessionDeleteArgs = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null /** * Filter which Session to delete. */ where: SessionWhereUniqueInput } /** * Session deleteMany */ export type SessionDeleteManyArgs = { /** * Filter which Sessions to delete */ where?: SessionWhereInput } /** * Session.Log */ export type Session$LogArgs = { /** * Select specific fields to fetch from the Log */ select?: LogSelect | null /** * Choose, which related nodes to fetch as well */ include?: LogInclude | null where?: LogWhereInput orderBy?: LogOrderByWithRelationInput | LogOrderByWithRelationInput[] cursor?: LogWhereUniqueInput take?: number skip?: number distinct?: LogScalarFieldEnum | LogScalarFieldEnum[] } /** * Session.Profiling */ export type Session$ProfilingArgs = { /** * Select specific fields to fetch from the Profiling */ select?: ProfilingSelect | null /** * Choose, which related nodes to fetch as well */ include?: ProfilingInclude | null where?: ProfilingWhereInput orderBy?: ProfilingOrderByWithRelationInput | ProfilingOrderByWithRelationInput[] cursor?: ProfilingWhereUniqueInput take?: number skip?: number distinct?: ProfilingScalarFieldEnum | ProfilingScalarFieldEnum[] } /** * Session.build */ export type Session$buildArgs = { /** * Select specific fields to fetch from the Build */ select?: BuildSelect | null /** * Choose, which related nodes to fetch as well */ include?: BuildInclude | null where?: BuildWhereInput } /** * Session.SessionLog */ export type Session$SessionLogArgs = { /** * Select specific fields to fetch from the SessionLog */ select?: SessionLogSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionLogInclude | null where?: SessionLogWhereInput orderBy?: SessionLogOrderByWithRelationInput | SessionLogOrderByWithRelationInput[] cursor?: SessionLogWhereUniqueInput take?: number skip?: number distinct?: SessionLogScalarFieldEnum | SessionLogScalarFieldEnum[] } /** * Session.Recording */ export type Session$RecordingArgs = { /** * Select specific fields to fetch from the Recording */ select?: RecordingSelect | null /** * Choose, which related nodes to fetch as well */ include?: RecordingInclude | null where?: RecordingWhereInput orderBy?: RecordingOrderByWithRelationInput | RecordingOrderByWithRelationInput[] cursor?: RecordingWhereUniqueInput take?: number skip?: number distinct?: RecordingScalarFieldEnum | RecordingScalarFieldEnum[] } /** * Session without action */ export type SessionDefaultArgs = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null } /** * Model SessionLog */ export type AggregateSessionLog = { _count: SessionLogCountAggregateOutputType | null _avg: SessionLogAvgAggregateOutputType | null _sum: SessionLogSumAggregateOutputType | null _min: SessionLogMinAggregateOutputType | null _max: SessionLogMaxAggregateOutputType | null } export type SessionLogAvgAggregateOutputType = { healing_confidence: number | null duration: number | null } export type SessionLogSumAggregateOutputType = { healing_confidence: number | null duration: number | null } export type SessionLogMinAggregateOutputType = { id: string | null session_id: string | null command_name: string | null url: string | null method: string | null title: string | null subtitle: string | null body: string | null response: string | null screenshot: string | null is_success: boolean | null is_error: boolean | null is_healed: boolean | null original_selector: string | null healed_selector: string | null healing_confidence: number | null healing_tier: string | null original_strategy: string | null healed_strategy: string | null createdAt: Date | null updatedAt: Date | null duration: number | null span_id: string | null trace_id: string | null } export type SessionLogMaxAggregateOutputType = { id: string | null session_id: string | null command_name: string | null url: string | null method: string | null title: string | null subtitle: string | null body: string | null response: string | null screenshot: string | null is_success: boolean | null is_error: boolean | null is_healed: boolean | null original_selector: string | null healed_selector: string | null healing_confidence: number | null healing_tier: string | null original_strategy: string | null healed_strategy: string | null createdAt: Date | null updatedAt: Date | null duration: number | null span_id: string | null trace_id: string | null } export type SessionLogCountAggregateOutputType = { id: number session_id: number command_name: number url: number method: number title: number subtitle: number body: number response: number screenshot: number is_success: number is_error: number is_healed: number original_selector: number healed_selector: number healing_confidence: number healing_tier: number original_strategy: number healed_strategy: number createdAt: number updatedAt: number duration: number span_id: number trace_id: number _all: number } export type SessionLogAvgAggregateInputType = { healing_confidence?: true duration?: true } export type SessionLogSumAggregateInputType = { healing_confidence?: true duration?: true } export type SessionLogMinAggregateInputType = { id?: true session_id?: true command_name?: true url?: true method?: true title?: true subtitle?: true body?: true response?: true screenshot?: true is_success?: true is_error?: true is_healed?: true original_selector?: true healed_selector?: true healing_confidence?: true healing_tier?: true original_strategy?: true healed_strategy?: true createdAt?: true updatedAt?: true duration?: true span_id?: true trace_id?: true } export type SessionLogMaxAggregateInputType = { id?: true session_id?: true command_name?: true url?: true method?: true title?: true subtitle?: true body?: true response?: true screenshot?: true is_success?: true is_error?: true is_healed?: true original_selector?: true healed_selector?: true healing_confidence?: true healing_tier?: true original_strategy?: true healed_strategy?: true createdAt?: true updatedAt?: true duration?: true span_id?: true trace_id?: true } export type SessionLogCountAggregateInputType = { id?: true session_id?: true command_name?: true url?: true method?: true title?: true subtitle?: true body?: true response?: true screenshot?: true is_success?: true is_error?: true is_healed?: true original_selector?: true healed_selector?: true healing_confidence?: true healing_tier?: true original_strategy?: true healed_strategy?: true createdAt?: true updatedAt?: true duration?: true span_id?: true trace_id?: true _all?: true } export type SessionLogAggregateArgs = { /** * Filter which SessionLog to aggregate. */ where?: SessionLogWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of SessionLogs to fetch. */ orderBy?: SessionLogOrderByWithRelationInput | SessionLogOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: SessionLogWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` SessionLogs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` SessionLogs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned SessionLogs **/ _count?: true | SessionLogCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: SessionLogAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: SessionLogSumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: SessionLogMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: SessionLogMaxAggregateInputType } export type GetSessionLogAggregateType = { [P in keyof T & keyof AggregateSessionLog]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type SessionLogGroupByArgs = { where?: SessionLogWhereInput orderBy?: SessionLogOrderByWithAggregationInput | SessionLogOrderByWithAggregationInput[] by: SessionLogScalarFieldEnum[] | SessionLogScalarFieldEnum having?: SessionLogScalarWhereWithAggregatesInput take?: number skip?: number _count?: SessionLogCountAggregateInputType | true _avg?: SessionLogAvgAggregateInputType _sum?: SessionLogSumAggregateInputType _min?: SessionLogMinAggregateInputType _max?: SessionLogMaxAggregateInputType } export type SessionLogGroupByOutputType = { id: string session_id: string command_name: string | null url: string method: string title: string subtitle: string | null body: string | null response: string screenshot: string | null is_success: boolean | null is_error: boolean is_healed: boolean original_selector: string | null healed_selector: string | null healing_confidence: number | null healing_tier: string | null original_strategy: string | null healed_strategy: string | null createdAt: Date updatedAt: Date duration: number | null span_id: string | null trace_id: string | null _count: SessionLogCountAggregateOutputType | null _avg: SessionLogAvgAggregateOutputType | null _sum: SessionLogSumAggregateOutputType | null _min: SessionLogMinAggregateOutputType | null _max: SessionLogMaxAggregateOutputType | null } type GetSessionLogGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof SessionLogGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type SessionLogSelect = $Extensions.GetSelect<{ id?: boolean session_id?: boolean command_name?: boolean url?: boolean method?: boolean title?: boolean subtitle?: boolean body?: boolean response?: boolean screenshot?: boolean is_success?: boolean is_error?: boolean is_healed?: boolean original_selector?: boolean healed_selector?: boolean healing_confidence?: boolean healing_tier?: boolean original_strategy?: boolean healed_strategy?: boolean createdAt?: boolean updatedAt?: boolean duration?: boolean span_id?: boolean trace_id?: boolean session?: boolean | SessionDefaultArgs }, ExtArgs["result"]["sessionLog"]> export type SessionLogSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean session_id?: boolean command_name?: boolean url?: boolean method?: boolean title?: boolean subtitle?: boolean body?: boolean response?: boolean screenshot?: boolean is_success?: boolean is_error?: boolean is_healed?: boolean original_selector?: boolean healed_selector?: boolean healing_confidence?: boolean healing_tier?: boolean original_strategy?: boolean healed_strategy?: boolean createdAt?: boolean updatedAt?: boolean duration?: boolean span_id?: boolean trace_id?: boolean session?: boolean | SessionDefaultArgs }, ExtArgs["result"]["sessionLog"]> export type SessionLogSelectScalar = { id?: boolean session_id?: boolean command_name?: boolean url?: boolean method?: boolean title?: boolean subtitle?: boolean body?: boolean response?: boolean screenshot?: boolean is_success?: boolean is_error?: boolean is_healed?: boolean original_selector?: boolean healed_selector?: boolean healing_confidence?: boolean healing_tier?: boolean original_strategy?: boolean healed_strategy?: boolean createdAt?: boolean updatedAt?: boolean duration?: boolean span_id?: boolean trace_id?: boolean } export type SessionLogInclude = { session?: boolean | SessionDefaultArgs } export type SessionLogIncludeCreateManyAndReturn = { session?: boolean | SessionDefaultArgs } export type $SessionLogPayload = { name: "SessionLog" objects: { session: Prisma.$SessionPayload } scalars: $Extensions.GetPayloadResult<{ id: string session_id: string command_name: string | null url: string method: string title: string subtitle: string | null body: string | null response: string screenshot: string | null is_success: boolean | null is_error: boolean is_healed: boolean original_selector: string | null healed_selector: string | null healing_confidence: number | null healing_tier: string | null original_strategy: string | null healed_strategy: string | null createdAt: Date updatedAt: Date duration: number | null span_id: string | null trace_id: string | null }, ExtArgs["result"]["sessionLog"]> composites: {} } type SessionLogGetPayload = $Result.GetResult type SessionLogCountArgs = Omit & { select?: SessionLogCountAggregateInputType | true } export interface SessionLogDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['SessionLog'], meta: { name: 'SessionLog' } } /** * Find zero or one SessionLog that matches the filter. * @param {SessionLogFindUniqueArgs} args - Arguments to find a SessionLog * @example * // Get one SessionLog * const sessionLog = await prisma.sessionLog.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__SessionLogClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one SessionLog that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {SessionLogFindUniqueOrThrowArgs} args - Arguments to find a SessionLog * @example * // Get one SessionLog * const sessionLog = await prisma.sessionLog.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__SessionLogClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first SessionLog that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SessionLogFindFirstArgs} args - Arguments to find a SessionLog * @example * // Get one SessionLog * const sessionLog = await prisma.sessionLog.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__SessionLogClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first SessionLog that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SessionLogFindFirstOrThrowArgs} args - Arguments to find a SessionLog * @example * // Get one SessionLog * const sessionLog = await prisma.sessionLog.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__SessionLogClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more SessionLogs that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SessionLogFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all SessionLogs * const sessionLogs = await prisma.sessionLog.findMany() * * // Get first 10 SessionLogs * const sessionLogs = await prisma.sessionLog.findMany({ take: 10 }) * * // Only select the `id` * const sessionLogWithIdOnly = await prisma.sessionLog.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a SessionLog. * @param {SessionLogCreateArgs} args - Arguments to create a SessionLog. * @example * // Create one SessionLog * const SessionLog = await prisma.sessionLog.create({ * data: { * // ... data to create a SessionLog * } * }) * */ create(args: SelectSubset>): Prisma__SessionLogClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many SessionLogs. * @param {SessionLogCreateManyArgs} args - Arguments to create many SessionLogs. * @example * // Create many SessionLogs * const sessionLog = await prisma.sessionLog.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many SessionLogs and returns the data saved in the database. * @param {SessionLogCreateManyAndReturnArgs} args - Arguments to create many SessionLogs. * @example * // Create many SessionLogs * const sessionLog = await prisma.sessionLog.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many SessionLogs and only return the `id` * const sessionLogWithIdOnly = await prisma.sessionLog.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a SessionLog. * @param {SessionLogDeleteArgs} args - Arguments to delete one SessionLog. * @example * // Delete one SessionLog * const SessionLog = await prisma.sessionLog.delete({ * where: { * // ... filter to delete one SessionLog * } * }) * */ delete(args: SelectSubset>): Prisma__SessionLogClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one SessionLog. * @param {SessionLogUpdateArgs} args - Arguments to update one SessionLog. * @example * // Update one SessionLog * const sessionLog = await prisma.sessionLog.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__SessionLogClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more SessionLogs. * @param {SessionLogDeleteManyArgs} args - Arguments to filter SessionLogs to delete. * @example * // Delete a few SessionLogs * const { count } = await prisma.sessionLog.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more SessionLogs. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SessionLogUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many SessionLogs * const sessionLog = await prisma.sessionLog.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one SessionLog. * @param {SessionLogUpsertArgs} args - Arguments to update or create a SessionLog. * @example * // Update or create a SessionLog * const sessionLog = await prisma.sessionLog.upsert({ * create: { * // ... data to create a SessionLog * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the SessionLog we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__SessionLogClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of SessionLogs. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SessionLogCountArgs} args - Arguments to filter SessionLogs to count. * @example * // Count the number of SessionLogs * const count = await prisma.sessionLog.count({ * where: { * // ... the filter for the SessionLogs we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a SessionLog. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SessionLogAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by SessionLog. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SessionLogGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends SessionLogGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: SessionLogGroupByArgs['orderBy'] } : { orderBy?: SessionLogGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetSessionLogGroupByPayload : Prisma.PrismaPromise /** * Fields of the SessionLog model */ readonly fields: SessionLogFieldRefs; } /** * The delegate class that acts as a "Promise-like" for SessionLog. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__SessionLogClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" session = {}>(args?: Subset>): Prisma__SessionClient<$Result.GetResult, T, "findUniqueOrThrow"> | Null, Null, ExtArgs> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the SessionLog model */ interface SessionLogFieldRefs { readonly id: FieldRef<"SessionLog", 'String'> readonly session_id: FieldRef<"SessionLog", 'String'> readonly command_name: FieldRef<"SessionLog", 'String'> readonly url: FieldRef<"SessionLog", 'String'> readonly method: FieldRef<"SessionLog", 'String'> readonly title: FieldRef<"SessionLog", 'String'> readonly subtitle: FieldRef<"SessionLog", 'String'> readonly body: FieldRef<"SessionLog", 'String'> readonly response: FieldRef<"SessionLog", 'String'> readonly screenshot: FieldRef<"SessionLog", 'String'> readonly is_success: FieldRef<"SessionLog", 'Boolean'> readonly is_error: FieldRef<"SessionLog", 'Boolean'> readonly is_healed: FieldRef<"SessionLog", 'Boolean'> readonly original_selector: FieldRef<"SessionLog", 'String'> readonly healed_selector: FieldRef<"SessionLog", 'String'> readonly healing_confidence: FieldRef<"SessionLog", 'Float'> readonly healing_tier: FieldRef<"SessionLog", 'String'> readonly original_strategy: FieldRef<"SessionLog", 'String'> readonly healed_strategy: FieldRef<"SessionLog", 'String'> readonly createdAt: FieldRef<"SessionLog", 'DateTime'> readonly updatedAt: FieldRef<"SessionLog", 'DateTime'> readonly duration: FieldRef<"SessionLog", 'Int'> readonly span_id: FieldRef<"SessionLog", 'String'> readonly trace_id: FieldRef<"SessionLog", 'String'> } // Custom InputTypes /** * SessionLog findUnique */ export type SessionLogFindUniqueArgs = { /** * Select specific fields to fetch from the SessionLog */ select?: SessionLogSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionLogInclude | null /** * Filter, which SessionLog to fetch. */ where: SessionLogWhereUniqueInput } /** * SessionLog findUniqueOrThrow */ export type SessionLogFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the SessionLog */ select?: SessionLogSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionLogInclude | null /** * Filter, which SessionLog to fetch. */ where: SessionLogWhereUniqueInput } /** * SessionLog findFirst */ export type SessionLogFindFirstArgs = { /** * Select specific fields to fetch from the SessionLog */ select?: SessionLogSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionLogInclude | null /** * Filter, which SessionLog to fetch. */ where?: SessionLogWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of SessionLogs to fetch. */ orderBy?: SessionLogOrderByWithRelationInput | SessionLogOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for SessionLogs. */ cursor?: SessionLogWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` SessionLogs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` SessionLogs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of SessionLogs. */ distinct?: SessionLogScalarFieldEnum | SessionLogScalarFieldEnum[] } /** * SessionLog findFirstOrThrow */ export type SessionLogFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the SessionLog */ select?: SessionLogSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionLogInclude | null /** * Filter, which SessionLog to fetch. */ where?: SessionLogWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of SessionLogs to fetch. */ orderBy?: SessionLogOrderByWithRelationInput | SessionLogOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for SessionLogs. */ cursor?: SessionLogWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` SessionLogs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` SessionLogs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of SessionLogs. */ distinct?: SessionLogScalarFieldEnum | SessionLogScalarFieldEnum[] } /** * SessionLog findMany */ export type SessionLogFindManyArgs = { /** * Select specific fields to fetch from the SessionLog */ select?: SessionLogSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionLogInclude | null /** * Filter, which SessionLogs to fetch. */ where?: SessionLogWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of SessionLogs to fetch. */ orderBy?: SessionLogOrderByWithRelationInput | SessionLogOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing SessionLogs. */ cursor?: SessionLogWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` SessionLogs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` SessionLogs. */ skip?: number distinct?: SessionLogScalarFieldEnum | SessionLogScalarFieldEnum[] } /** * SessionLog create */ export type SessionLogCreateArgs = { /** * Select specific fields to fetch from the SessionLog */ select?: SessionLogSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionLogInclude | null /** * The data needed to create a SessionLog. */ data: XOR } /** * SessionLog createMany */ export type SessionLogCreateManyArgs = { /** * The data used to create many SessionLogs. */ data: SessionLogCreateManyInput | SessionLogCreateManyInput[] } /** * SessionLog createManyAndReturn */ export type SessionLogCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the SessionLog */ select?: SessionLogSelectCreateManyAndReturn | null /** * The data used to create many SessionLogs. */ data: SessionLogCreateManyInput | SessionLogCreateManyInput[] /** * Choose, which related nodes to fetch as well */ include?: SessionLogIncludeCreateManyAndReturn | null } /** * SessionLog update */ export type SessionLogUpdateArgs = { /** * Select specific fields to fetch from the SessionLog */ select?: SessionLogSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionLogInclude | null /** * The data needed to update a SessionLog. */ data: XOR /** * Choose, which SessionLog to update. */ where: SessionLogWhereUniqueInput } /** * SessionLog updateMany */ export type SessionLogUpdateManyArgs = { /** * The data used to update SessionLogs. */ data: XOR /** * Filter which SessionLogs to update */ where?: SessionLogWhereInput } /** * SessionLog upsert */ export type SessionLogUpsertArgs = { /** * Select specific fields to fetch from the SessionLog */ select?: SessionLogSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionLogInclude | null /** * The filter to search for the SessionLog to update in case it exists. */ where: SessionLogWhereUniqueInput /** * In case the SessionLog found by the `where` argument doesn't exist, create a new SessionLog with this data. */ create: XOR /** * In case the SessionLog was found with the provided `where` argument, update it with this data. */ update: XOR } /** * SessionLog delete */ export type SessionLogDeleteArgs = { /** * Select specific fields to fetch from the SessionLog */ select?: SessionLogSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionLogInclude | null /** * Filter which SessionLog to delete. */ where: SessionLogWhereUniqueInput } /** * SessionLog deleteMany */ export type SessionLogDeleteManyArgs = { /** * Filter which SessionLogs to delete */ where?: SessionLogWhereInput } /** * SessionLog without action */ export type SessionLogDefaultArgs = { /** * Select specific fields to fetch from the SessionLog */ select?: SessionLogSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionLogInclude | null } /** * Model Log */ export type AggregateLog = { _count: LogCountAggregateOutputType | null _min: LogMinAggregateOutputType | null _max: LogMaxAggregateOutputType | null } export type LogMinAggregateOutputType = { id: string | null session_id: string | null log_type: string | null message: string | null timestamp: Date | null createdAt: Date | null updatedAt: Date | null } export type LogMaxAggregateOutputType = { id: string | null session_id: string | null log_type: string | null message: string | null timestamp: Date | null createdAt: Date | null updatedAt: Date | null } export type LogCountAggregateOutputType = { id: number session_id: number log_type: number message: number timestamp: number createdAt: number updatedAt: number _all: number } export type LogMinAggregateInputType = { id?: true session_id?: true log_type?: true message?: true timestamp?: true createdAt?: true updatedAt?: true } export type LogMaxAggregateInputType = { id?: true session_id?: true log_type?: true message?: true timestamp?: true createdAt?: true updatedAt?: true } export type LogCountAggregateInputType = { id?: true session_id?: true log_type?: true message?: true timestamp?: true createdAt?: true updatedAt?: true _all?: true } export type LogAggregateArgs = { /** * Filter which Log to aggregate. */ where?: LogWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Logs to fetch. */ orderBy?: LogOrderByWithRelationInput | LogOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: LogWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Logs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Logs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Logs **/ _count?: true | LogCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: LogMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: LogMaxAggregateInputType } export type GetLogAggregateType = { [P in keyof T & keyof AggregateLog]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type LogGroupByArgs = { where?: LogWhereInput orderBy?: LogOrderByWithAggregationInput | LogOrderByWithAggregationInput[] by: LogScalarFieldEnum[] | LogScalarFieldEnum having?: LogScalarWhereWithAggregatesInput take?: number skip?: number _count?: LogCountAggregateInputType | true _min?: LogMinAggregateInputType _max?: LogMaxAggregateInputType } export type LogGroupByOutputType = { id: string session_id: string log_type: string message: string timestamp: Date createdAt: Date updatedAt: Date _count: LogCountAggregateOutputType | null _min: LogMinAggregateOutputType | null _max: LogMaxAggregateOutputType | null } type GetLogGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof LogGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type LogSelect = $Extensions.GetSelect<{ id?: boolean session_id?: boolean log_type?: boolean message?: boolean timestamp?: boolean createdAt?: boolean updatedAt?: boolean session?: boolean | SessionDefaultArgs }, ExtArgs["result"]["log"]> export type LogSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean session_id?: boolean log_type?: boolean message?: boolean timestamp?: boolean createdAt?: boolean updatedAt?: boolean session?: boolean | SessionDefaultArgs }, ExtArgs["result"]["log"]> export type LogSelectScalar = { id?: boolean session_id?: boolean log_type?: boolean message?: boolean timestamp?: boolean createdAt?: boolean updatedAt?: boolean } export type LogInclude = { session?: boolean | SessionDefaultArgs } export type LogIncludeCreateManyAndReturn = { session?: boolean | SessionDefaultArgs } export type $LogPayload = { name: "Log" objects: { session: Prisma.$SessionPayload } scalars: $Extensions.GetPayloadResult<{ id: string session_id: string log_type: string message: string timestamp: Date createdAt: Date updatedAt: Date }, ExtArgs["result"]["log"]> composites: {} } type LogGetPayload = $Result.GetResult type LogCountArgs = Omit & { select?: LogCountAggregateInputType | true } export interface LogDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['Log'], meta: { name: 'Log' } } /** * Find zero or one Log that matches the filter. * @param {LogFindUniqueArgs} args - Arguments to find a Log * @example * // Get one Log * const log = await prisma.log.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__LogClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one Log that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {LogFindUniqueOrThrowArgs} args - Arguments to find a Log * @example * // Get one Log * const log = await prisma.log.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__LogClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first Log that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LogFindFirstArgs} args - Arguments to find a Log * @example * // Get one Log * const log = await prisma.log.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__LogClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first Log that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LogFindFirstOrThrowArgs} args - Arguments to find a Log * @example * // Get one Log * const log = await prisma.log.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__LogClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more Logs that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LogFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Logs * const logs = await prisma.log.findMany() * * // Get first 10 Logs * const logs = await prisma.log.findMany({ take: 10 }) * * // Only select the `id` * const logWithIdOnly = await prisma.log.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a Log. * @param {LogCreateArgs} args - Arguments to create a Log. * @example * // Create one Log * const Log = await prisma.log.create({ * data: { * // ... data to create a Log * } * }) * */ create(args: SelectSubset>): Prisma__LogClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many Logs. * @param {LogCreateManyArgs} args - Arguments to create many Logs. * @example * // Create many Logs * const log = await prisma.log.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many Logs and returns the data saved in the database. * @param {LogCreateManyAndReturnArgs} args - Arguments to create many Logs. * @example * // Create many Logs * const log = await prisma.log.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many Logs and only return the `id` * const logWithIdOnly = await prisma.log.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a Log. * @param {LogDeleteArgs} args - Arguments to delete one Log. * @example * // Delete one Log * const Log = await prisma.log.delete({ * where: { * // ... filter to delete one Log * } * }) * */ delete(args: SelectSubset>): Prisma__LogClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one Log. * @param {LogUpdateArgs} args - Arguments to update one Log. * @example * // Update one Log * const log = await prisma.log.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__LogClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more Logs. * @param {LogDeleteManyArgs} args - Arguments to filter Logs to delete. * @example * // Delete a few Logs * const { count } = await prisma.log.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Logs. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LogUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Logs * const log = await prisma.log.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one Log. * @param {LogUpsertArgs} args - Arguments to update or create a Log. * @example * // Update or create a Log * const log = await prisma.log.upsert({ * create: { * // ... data to create a Log * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the Log we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__LogClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of Logs. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LogCountArgs} args - Arguments to filter Logs to count. * @example * // Count the number of Logs * const count = await prisma.log.count({ * where: { * // ... the filter for the Logs we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a Log. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LogAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by Log. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LogGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends LogGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: LogGroupByArgs['orderBy'] } : { orderBy?: LogGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetLogGroupByPayload : Prisma.PrismaPromise /** * Fields of the Log model */ readonly fields: LogFieldRefs; } /** * The delegate class that acts as a "Promise-like" for Log. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__LogClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" session = {}>(args?: Subset>): Prisma__SessionClient<$Result.GetResult, T, "findUniqueOrThrow"> | Null, Null, ExtArgs> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the Log model */ interface LogFieldRefs { readonly id: FieldRef<"Log", 'String'> readonly session_id: FieldRef<"Log", 'String'> readonly log_type: FieldRef<"Log", 'String'> readonly message: FieldRef<"Log", 'String'> readonly timestamp: FieldRef<"Log", 'DateTime'> readonly createdAt: FieldRef<"Log", 'DateTime'> readonly updatedAt: FieldRef<"Log", 'DateTime'> } // Custom InputTypes /** * Log findUnique */ export type LogFindUniqueArgs = { /** * Select specific fields to fetch from the Log */ select?: LogSelect | null /** * Choose, which related nodes to fetch as well */ include?: LogInclude | null /** * Filter, which Log to fetch. */ where: LogWhereUniqueInput } /** * Log findUniqueOrThrow */ export type LogFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the Log */ select?: LogSelect | null /** * Choose, which related nodes to fetch as well */ include?: LogInclude | null /** * Filter, which Log to fetch. */ where: LogWhereUniqueInput } /** * Log findFirst */ export type LogFindFirstArgs = { /** * Select specific fields to fetch from the Log */ select?: LogSelect | null /** * Choose, which related nodes to fetch as well */ include?: LogInclude | null /** * Filter, which Log to fetch. */ where?: LogWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Logs to fetch. */ orderBy?: LogOrderByWithRelationInput | LogOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Logs. */ cursor?: LogWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Logs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Logs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Logs. */ distinct?: LogScalarFieldEnum | LogScalarFieldEnum[] } /** * Log findFirstOrThrow */ export type LogFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the Log */ select?: LogSelect | null /** * Choose, which related nodes to fetch as well */ include?: LogInclude | null /** * Filter, which Log to fetch. */ where?: LogWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Logs to fetch. */ orderBy?: LogOrderByWithRelationInput | LogOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Logs. */ cursor?: LogWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Logs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Logs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Logs. */ distinct?: LogScalarFieldEnum | LogScalarFieldEnum[] } /** * Log findMany */ export type LogFindManyArgs = { /** * Select specific fields to fetch from the Log */ select?: LogSelect | null /** * Choose, which related nodes to fetch as well */ include?: LogInclude | null /** * Filter, which Logs to fetch. */ where?: LogWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Logs to fetch. */ orderBy?: LogOrderByWithRelationInput | LogOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Logs. */ cursor?: LogWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Logs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Logs. */ skip?: number distinct?: LogScalarFieldEnum | LogScalarFieldEnum[] } /** * Log create */ export type LogCreateArgs = { /** * Select specific fields to fetch from the Log */ select?: LogSelect | null /** * Choose, which related nodes to fetch as well */ include?: LogInclude | null /** * The data needed to create a Log. */ data: XOR } /** * Log createMany */ export type LogCreateManyArgs = { /** * The data used to create many Logs. */ data: LogCreateManyInput | LogCreateManyInput[] } /** * Log createManyAndReturn */ export type LogCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the Log */ select?: LogSelectCreateManyAndReturn | null /** * The data used to create many Logs. */ data: LogCreateManyInput | LogCreateManyInput[] /** * Choose, which related nodes to fetch as well */ include?: LogIncludeCreateManyAndReturn | null } /** * Log update */ export type LogUpdateArgs = { /** * Select specific fields to fetch from the Log */ select?: LogSelect | null /** * Choose, which related nodes to fetch as well */ include?: LogInclude | null /** * The data needed to update a Log. */ data: XOR /** * Choose, which Log to update. */ where: LogWhereUniqueInput } /** * Log updateMany */ export type LogUpdateManyArgs = { /** * The data used to update Logs. */ data: XOR /** * Filter which Logs to update */ where?: LogWhereInput } /** * Log upsert */ export type LogUpsertArgs = { /** * Select specific fields to fetch from the Log */ select?: LogSelect | null /** * Choose, which related nodes to fetch as well */ include?: LogInclude | null /** * The filter to search for the Log to update in case it exists. */ where: LogWhereUniqueInput /** * In case the Log found by the `where` argument doesn't exist, create a new Log with this data. */ create: XOR /** * In case the Log was found with the provided `where` argument, update it with this data. */ update: XOR } /** * Log delete */ export type LogDeleteArgs = { /** * Select specific fields to fetch from the Log */ select?: LogSelect | null /** * Choose, which related nodes to fetch as well */ include?: LogInclude | null /** * Filter which Log to delete. */ where: LogWhereUniqueInput } /** * Log deleteMany */ export type LogDeleteManyArgs = { /** * Filter which Logs to delete */ where?: LogWhereInput } /** * Log without action */ export type LogDefaultArgs = { /** * Select specific fields to fetch from the Log */ select?: LogSelect | null /** * Choose, which related nodes to fetch as well */ include?: LogInclude | null } /** * Model Profiling */ export type AggregateProfiling = { _count: ProfilingCountAggregateOutputType | null _avg: ProfilingAvgAggregateOutputType | null _sum: ProfilingSumAggregateOutputType | null _min: ProfilingMinAggregateOutputType | null _max: ProfilingMaxAggregateOutputType | null } export type ProfilingAvgAggregateOutputType = { id: number | null } export type ProfilingSumAggregateOutputType = { id: number | null } export type ProfilingMinAggregateOutputType = { id: number | null session_id: string | null cpu: string | null memory: string | null total_cpu_used: string | null total_memory_used: string | null raw_cpu_log: string | null raw_memory_log: string | null timestamp: Date | null createdAt: Date | null updatedAt: Date | null } export type ProfilingMaxAggregateOutputType = { id: number | null session_id: string | null cpu: string | null memory: string | null total_cpu_used: string | null total_memory_used: string | null raw_cpu_log: string | null raw_memory_log: string | null timestamp: Date | null createdAt: Date | null updatedAt: Date | null } export type ProfilingCountAggregateOutputType = { id: number session_id: number cpu: number memory: number total_cpu_used: number total_memory_used: number raw_cpu_log: number raw_memory_log: number timestamp: number createdAt: number updatedAt: number _all: number } export type ProfilingAvgAggregateInputType = { id?: true } export type ProfilingSumAggregateInputType = { id?: true } export type ProfilingMinAggregateInputType = { id?: true session_id?: true cpu?: true memory?: true total_cpu_used?: true total_memory_used?: true raw_cpu_log?: true raw_memory_log?: true timestamp?: true createdAt?: true updatedAt?: true } export type ProfilingMaxAggregateInputType = { id?: true session_id?: true cpu?: true memory?: true total_cpu_used?: true total_memory_used?: true raw_cpu_log?: true raw_memory_log?: true timestamp?: true createdAt?: true updatedAt?: true } export type ProfilingCountAggregateInputType = { id?: true session_id?: true cpu?: true memory?: true total_cpu_used?: true total_memory_used?: true raw_cpu_log?: true raw_memory_log?: true timestamp?: true createdAt?: true updatedAt?: true _all?: true } export type ProfilingAggregateArgs = { /** * Filter which Profiling to aggregate. */ where?: ProfilingWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Profilings to fetch. */ orderBy?: ProfilingOrderByWithRelationInput | ProfilingOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: ProfilingWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Profilings from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Profilings. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Profilings **/ _count?: true | ProfilingCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: ProfilingAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: ProfilingSumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: ProfilingMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: ProfilingMaxAggregateInputType } export type GetProfilingAggregateType = { [P in keyof T & keyof AggregateProfiling]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type ProfilingGroupByArgs = { where?: ProfilingWhereInput orderBy?: ProfilingOrderByWithAggregationInput | ProfilingOrderByWithAggregationInput[] by: ProfilingScalarFieldEnum[] | ProfilingScalarFieldEnum having?: ProfilingScalarWhereWithAggregatesInput take?: number skip?: number _count?: ProfilingCountAggregateInputType | true _avg?: ProfilingAvgAggregateInputType _sum?: ProfilingSumAggregateInputType _min?: ProfilingMinAggregateInputType _max?: ProfilingMaxAggregateInputType } export type ProfilingGroupByOutputType = { id: number session_id: string cpu: string | null memory: string | null total_cpu_used: string | null total_memory_used: string | null raw_cpu_log: string | null raw_memory_log: string | null timestamp: Date createdAt: Date updatedAt: Date _count: ProfilingCountAggregateOutputType | null _avg: ProfilingAvgAggregateOutputType | null _sum: ProfilingSumAggregateOutputType | null _min: ProfilingMinAggregateOutputType | null _max: ProfilingMaxAggregateOutputType | null } type GetProfilingGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof ProfilingGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type ProfilingSelect = $Extensions.GetSelect<{ id?: boolean session_id?: boolean cpu?: boolean memory?: boolean total_cpu_used?: boolean total_memory_used?: boolean raw_cpu_log?: boolean raw_memory_log?: boolean timestamp?: boolean createdAt?: boolean updatedAt?: boolean session?: boolean | SessionDefaultArgs }, ExtArgs["result"]["profiling"]> export type ProfilingSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean session_id?: boolean cpu?: boolean memory?: boolean total_cpu_used?: boolean total_memory_used?: boolean raw_cpu_log?: boolean raw_memory_log?: boolean timestamp?: boolean createdAt?: boolean updatedAt?: boolean session?: boolean | SessionDefaultArgs }, ExtArgs["result"]["profiling"]> export type ProfilingSelectScalar = { id?: boolean session_id?: boolean cpu?: boolean memory?: boolean total_cpu_used?: boolean total_memory_used?: boolean raw_cpu_log?: boolean raw_memory_log?: boolean timestamp?: boolean createdAt?: boolean updatedAt?: boolean } export type ProfilingInclude = { session?: boolean | SessionDefaultArgs } export type ProfilingIncludeCreateManyAndReturn = { session?: boolean | SessionDefaultArgs } export type $ProfilingPayload = { name: "Profiling" objects: { session: Prisma.$SessionPayload } scalars: $Extensions.GetPayloadResult<{ id: number session_id: string cpu: string | null memory: string | null total_cpu_used: string | null total_memory_used: string | null raw_cpu_log: string | null raw_memory_log: string | null timestamp: Date createdAt: Date updatedAt: Date }, ExtArgs["result"]["profiling"]> composites: {} } type ProfilingGetPayload = $Result.GetResult type ProfilingCountArgs = Omit & { select?: ProfilingCountAggregateInputType | true } export interface ProfilingDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['Profiling'], meta: { name: 'Profiling' } } /** * Find zero or one Profiling that matches the filter. * @param {ProfilingFindUniqueArgs} args - Arguments to find a Profiling * @example * // Get one Profiling * const profiling = await prisma.profiling.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__ProfilingClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one Profiling that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {ProfilingFindUniqueOrThrowArgs} args - Arguments to find a Profiling * @example * // Get one Profiling * const profiling = await prisma.profiling.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__ProfilingClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first Profiling that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ProfilingFindFirstArgs} args - Arguments to find a Profiling * @example * // Get one Profiling * const profiling = await prisma.profiling.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__ProfilingClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first Profiling that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ProfilingFindFirstOrThrowArgs} args - Arguments to find a Profiling * @example * // Get one Profiling * const profiling = await prisma.profiling.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__ProfilingClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more Profilings that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ProfilingFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Profilings * const profilings = await prisma.profiling.findMany() * * // Get first 10 Profilings * const profilings = await prisma.profiling.findMany({ take: 10 }) * * // Only select the `id` * const profilingWithIdOnly = await prisma.profiling.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a Profiling. * @param {ProfilingCreateArgs} args - Arguments to create a Profiling. * @example * // Create one Profiling * const Profiling = await prisma.profiling.create({ * data: { * // ... data to create a Profiling * } * }) * */ create(args: SelectSubset>): Prisma__ProfilingClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many Profilings. * @param {ProfilingCreateManyArgs} args - Arguments to create many Profilings. * @example * // Create many Profilings * const profiling = await prisma.profiling.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many Profilings and returns the data saved in the database. * @param {ProfilingCreateManyAndReturnArgs} args - Arguments to create many Profilings. * @example * // Create many Profilings * const profiling = await prisma.profiling.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many Profilings and only return the `id` * const profilingWithIdOnly = await prisma.profiling.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a Profiling. * @param {ProfilingDeleteArgs} args - Arguments to delete one Profiling. * @example * // Delete one Profiling * const Profiling = await prisma.profiling.delete({ * where: { * // ... filter to delete one Profiling * } * }) * */ delete(args: SelectSubset>): Prisma__ProfilingClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one Profiling. * @param {ProfilingUpdateArgs} args - Arguments to update one Profiling. * @example * // Update one Profiling * const profiling = await prisma.profiling.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__ProfilingClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more Profilings. * @param {ProfilingDeleteManyArgs} args - Arguments to filter Profilings to delete. * @example * // Delete a few Profilings * const { count } = await prisma.profiling.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Profilings. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ProfilingUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Profilings * const profiling = await prisma.profiling.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one Profiling. * @param {ProfilingUpsertArgs} args - Arguments to update or create a Profiling. * @example * // Update or create a Profiling * const profiling = await prisma.profiling.upsert({ * create: { * // ... data to create a Profiling * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the Profiling we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__ProfilingClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of Profilings. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ProfilingCountArgs} args - Arguments to filter Profilings to count. * @example * // Count the number of Profilings * const count = await prisma.profiling.count({ * where: { * // ... the filter for the Profilings we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a Profiling. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ProfilingAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by Profiling. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ProfilingGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends ProfilingGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: ProfilingGroupByArgs['orderBy'] } : { orderBy?: ProfilingGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetProfilingGroupByPayload : Prisma.PrismaPromise /** * Fields of the Profiling model */ readonly fields: ProfilingFieldRefs; } /** * The delegate class that acts as a "Promise-like" for Profiling. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__ProfilingClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" session = {}>(args?: Subset>): Prisma__SessionClient<$Result.GetResult, T, "findUniqueOrThrow"> | Null, Null, ExtArgs> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the Profiling model */ interface ProfilingFieldRefs { readonly id: FieldRef<"Profiling", 'Int'> readonly session_id: FieldRef<"Profiling", 'String'> readonly cpu: FieldRef<"Profiling", 'String'> readonly memory: FieldRef<"Profiling", 'String'> readonly total_cpu_used: FieldRef<"Profiling", 'String'> readonly total_memory_used: FieldRef<"Profiling", 'String'> readonly raw_cpu_log: FieldRef<"Profiling", 'String'> readonly raw_memory_log: FieldRef<"Profiling", 'String'> readonly timestamp: FieldRef<"Profiling", 'DateTime'> readonly createdAt: FieldRef<"Profiling", 'DateTime'> readonly updatedAt: FieldRef<"Profiling", 'DateTime'> } // Custom InputTypes /** * Profiling findUnique */ export type ProfilingFindUniqueArgs = { /** * Select specific fields to fetch from the Profiling */ select?: ProfilingSelect | null /** * Choose, which related nodes to fetch as well */ include?: ProfilingInclude | null /** * Filter, which Profiling to fetch. */ where: ProfilingWhereUniqueInput } /** * Profiling findUniqueOrThrow */ export type ProfilingFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the Profiling */ select?: ProfilingSelect | null /** * Choose, which related nodes to fetch as well */ include?: ProfilingInclude | null /** * Filter, which Profiling to fetch. */ where: ProfilingWhereUniqueInput } /** * Profiling findFirst */ export type ProfilingFindFirstArgs = { /** * Select specific fields to fetch from the Profiling */ select?: ProfilingSelect | null /** * Choose, which related nodes to fetch as well */ include?: ProfilingInclude | null /** * Filter, which Profiling to fetch. */ where?: ProfilingWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Profilings to fetch. */ orderBy?: ProfilingOrderByWithRelationInput | ProfilingOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Profilings. */ cursor?: ProfilingWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Profilings from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Profilings. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Profilings. */ distinct?: ProfilingScalarFieldEnum | ProfilingScalarFieldEnum[] } /** * Profiling findFirstOrThrow */ export type ProfilingFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the Profiling */ select?: ProfilingSelect | null /** * Choose, which related nodes to fetch as well */ include?: ProfilingInclude | null /** * Filter, which Profiling to fetch. */ where?: ProfilingWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Profilings to fetch. */ orderBy?: ProfilingOrderByWithRelationInput | ProfilingOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Profilings. */ cursor?: ProfilingWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Profilings from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Profilings. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Profilings. */ distinct?: ProfilingScalarFieldEnum | ProfilingScalarFieldEnum[] } /** * Profiling findMany */ export type ProfilingFindManyArgs = { /** * Select specific fields to fetch from the Profiling */ select?: ProfilingSelect | null /** * Choose, which related nodes to fetch as well */ include?: ProfilingInclude | null /** * Filter, which Profilings to fetch. */ where?: ProfilingWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Profilings to fetch. */ orderBy?: ProfilingOrderByWithRelationInput | ProfilingOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Profilings. */ cursor?: ProfilingWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Profilings from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Profilings. */ skip?: number distinct?: ProfilingScalarFieldEnum | ProfilingScalarFieldEnum[] } /** * Profiling create */ export type ProfilingCreateArgs = { /** * Select specific fields to fetch from the Profiling */ select?: ProfilingSelect | null /** * Choose, which related nodes to fetch as well */ include?: ProfilingInclude | null /** * The data needed to create a Profiling. */ data: XOR } /** * Profiling createMany */ export type ProfilingCreateManyArgs = { /** * The data used to create many Profilings. */ data: ProfilingCreateManyInput | ProfilingCreateManyInput[] } /** * Profiling createManyAndReturn */ export type ProfilingCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the Profiling */ select?: ProfilingSelectCreateManyAndReturn | null /** * The data used to create many Profilings. */ data: ProfilingCreateManyInput | ProfilingCreateManyInput[] /** * Choose, which related nodes to fetch as well */ include?: ProfilingIncludeCreateManyAndReturn | null } /** * Profiling update */ export type ProfilingUpdateArgs = { /** * Select specific fields to fetch from the Profiling */ select?: ProfilingSelect | null /** * Choose, which related nodes to fetch as well */ include?: ProfilingInclude | null /** * The data needed to update a Profiling. */ data: XOR /** * Choose, which Profiling to update. */ where: ProfilingWhereUniqueInput } /** * Profiling updateMany */ export type ProfilingUpdateManyArgs = { /** * The data used to update Profilings. */ data: XOR /** * Filter which Profilings to update */ where?: ProfilingWhereInput } /** * Profiling upsert */ export type ProfilingUpsertArgs = { /** * Select specific fields to fetch from the Profiling */ select?: ProfilingSelect | null /** * Choose, which related nodes to fetch as well */ include?: ProfilingInclude | null /** * The filter to search for the Profiling to update in case it exists. */ where: ProfilingWhereUniqueInput /** * In case the Profiling found by the `where` argument doesn't exist, create a new Profiling with this data. */ create: XOR /** * In case the Profiling was found with the provided `where` argument, update it with this data. */ update: XOR } /** * Profiling delete */ export type ProfilingDeleteArgs = { /** * Select specific fields to fetch from the Profiling */ select?: ProfilingSelect | null /** * Choose, which related nodes to fetch as well */ include?: ProfilingInclude | null /** * Filter which Profiling to delete. */ where: ProfilingWhereUniqueInput } /** * Profiling deleteMany */ export type ProfilingDeleteManyArgs = { /** * Filter which Profilings to delete */ where?: ProfilingWhereInput } /** * Profiling without action */ export type ProfilingDefaultArgs = { /** * Select specific fields to fetch from the Profiling */ select?: ProfilingSelect | null /** * Choose, which related nodes to fetch as well */ include?: ProfilingInclude | null } /** * Model App */ export type AggregateApp = { _count: AppCountAggregateOutputType | null _avg: AppAvgAggregateOutputType | null _sum: AppSumAggregateOutputType | null _min: AppMinAggregateOutputType | null _max: AppMaxAggregateOutputType | null } export type AppAvgAggregateOutputType = { size: number | null } export type AppSumAggregateOutputType = { size: number | null } export type AppMinAggregateOutputType = { id: string | null name: string | null filename: string | null filepath: string | null mimetype: string | null size: number | null packageName: string | null version: string | null platform: string | null md5: string | null createdAt: Date | null updatedAt: Date | null } export type AppMaxAggregateOutputType = { id: string | null name: string | null filename: string | null filepath: string | null mimetype: string | null size: number | null packageName: string | null version: string | null platform: string | null md5: string | null createdAt: Date | null updatedAt: Date | null } export type AppCountAggregateOutputType = { id: number name: number filename: number filepath: number mimetype: number size: number packageName: number version: number platform: number md5: number createdAt: number updatedAt: number _all: number } export type AppAvgAggregateInputType = { size?: true } export type AppSumAggregateInputType = { size?: true } export type AppMinAggregateInputType = { id?: true name?: true filename?: true filepath?: true mimetype?: true size?: true packageName?: true version?: true platform?: true md5?: true createdAt?: true updatedAt?: true } export type AppMaxAggregateInputType = { id?: true name?: true filename?: true filepath?: true mimetype?: true size?: true packageName?: true version?: true platform?: true md5?: true createdAt?: true updatedAt?: true } export type AppCountAggregateInputType = { id?: true name?: true filename?: true filepath?: true mimetype?: true size?: true packageName?: true version?: true platform?: true md5?: true createdAt?: true updatedAt?: true _all?: true } export type AppAggregateArgs = { /** * Filter which App to aggregate. */ where?: AppWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Apps to fetch. */ orderBy?: AppOrderByWithRelationInput | AppOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: AppWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Apps from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Apps. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Apps **/ _count?: true | AppCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: AppAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: AppSumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: AppMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: AppMaxAggregateInputType } export type GetAppAggregateType = { [P in keyof T & keyof AggregateApp]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type AppGroupByArgs = { where?: AppWhereInput orderBy?: AppOrderByWithAggregationInput | AppOrderByWithAggregationInput[] by: AppScalarFieldEnum[] | AppScalarFieldEnum having?: AppScalarWhereWithAggregatesInput take?: number skip?: number _count?: AppCountAggregateInputType | true _avg?: AppAvgAggregateInputType _sum?: AppSumAggregateInputType _min?: AppMinAggregateInputType _max?: AppMaxAggregateInputType } export type AppGroupByOutputType = { id: string name: string filename: string filepath: string mimetype: string size: number packageName: string | null version: string | null platform: string | null md5: string | null createdAt: Date updatedAt: Date _count: AppCountAggregateOutputType | null _avg: AppAvgAggregateOutputType | null _sum: AppSumAggregateOutputType | null _min: AppMinAggregateOutputType | null _max: AppMaxAggregateOutputType | null } type GetAppGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof AppGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type AppSelect = $Extensions.GetSelect<{ id?: boolean name?: boolean filename?: boolean filepath?: boolean mimetype?: boolean size?: boolean packageName?: boolean version?: boolean platform?: boolean md5?: boolean createdAt?: boolean updatedAt?: boolean }, ExtArgs["result"]["app"]> export type AppSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean name?: boolean filename?: boolean filepath?: boolean mimetype?: boolean size?: boolean packageName?: boolean version?: boolean platform?: boolean md5?: boolean createdAt?: boolean updatedAt?: boolean }, ExtArgs["result"]["app"]> export type AppSelectScalar = { id?: boolean name?: boolean filename?: boolean filepath?: boolean mimetype?: boolean size?: boolean packageName?: boolean version?: boolean platform?: boolean md5?: boolean createdAt?: boolean updatedAt?: boolean } export type $AppPayload = { name: "App" objects: {} scalars: $Extensions.GetPayloadResult<{ id: string name: string filename: string filepath: string mimetype: string size: number packageName: string | null version: string | null platform: string | null md5: string | null createdAt: Date updatedAt: Date }, ExtArgs["result"]["app"]> composites: {} } type AppGetPayload = $Result.GetResult type AppCountArgs = Omit & { select?: AppCountAggregateInputType | true } export interface AppDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['App'], meta: { name: 'App' } } /** * Find zero or one App that matches the filter. * @param {AppFindUniqueArgs} args - Arguments to find a App * @example * // Get one App * const app = await prisma.app.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__AppClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one App that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {AppFindUniqueOrThrowArgs} args - Arguments to find a App * @example * // Get one App * const app = await prisma.app.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__AppClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first App that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AppFindFirstArgs} args - Arguments to find a App * @example * // Get one App * const app = await prisma.app.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__AppClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first App that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AppFindFirstOrThrowArgs} args - Arguments to find a App * @example * // Get one App * const app = await prisma.app.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__AppClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more Apps that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AppFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Apps * const apps = await prisma.app.findMany() * * // Get first 10 Apps * const apps = await prisma.app.findMany({ take: 10 }) * * // Only select the `id` * const appWithIdOnly = await prisma.app.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a App. * @param {AppCreateArgs} args - Arguments to create a App. * @example * // Create one App * const App = await prisma.app.create({ * data: { * // ... data to create a App * } * }) * */ create(args: SelectSubset>): Prisma__AppClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many Apps. * @param {AppCreateManyArgs} args - Arguments to create many Apps. * @example * // Create many Apps * const app = await prisma.app.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many Apps and returns the data saved in the database. * @param {AppCreateManyAndReturnArgs} args - Arguments to create many Apps. * @example * // Create many Apps * const app = await prisma.app.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many Apps and only return the `id` * const appWithIdOnly = await prisma.app.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a App. * @param {AppDeleteArgs} args - Arguments to delete one App. * @example * // Delete one App * const App = await prisma.app.delete({ * where: { * // ... filter to delete one App * } * }) * */ delete(args: SelectSubset>): Prisma__AppClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one App. * @param {AppUpdateArgs} args - Arguments to update one App. * @example * // Update one App * const app = await prisma.app.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__AppClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more Apps. * @param {AppDeleteManyArgs} args - Arguments to filter Apps to delete. * @example * // Delete a few Apps * const { count } = await prisma.app.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Apps. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AppUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Apps * const app = await prisma.app.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one App. * @param {AppUpsertArgs} args - Arguments to update or create a App. * @example * // Update or create a App * const app = await prisma.app.upsert({ * create: { * // ... data to create a App * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the App we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__AppClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of Apps. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AppCountArgs} args - Arguments to filter Apps to count. * @example * // Count the number of Apps * const count = await prisma.app.count({ * where: { * // ... the filter for the Apps we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a App. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AppAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by App. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AppGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends AppGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: AppGroupByArgs['orderBy'] } : { orderBy?: AppGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetAppGroupByPayload : Prisma.PrismaPromise /** * Fields of the App model */ readonly fields: AppFieldRefs; } /** * The delegate class that acts as a "Promise-like" for App. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__AppClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the App model */ interface AppFieldRefs { readonly id: FieldRef<"App", 'String'> readonly name: FieldRef<"App", 'String'> readonly filename: FieldRef<"App", 'String'> readonly filepath: FieldRef<"App", 'String'> readonly mimetype: FieldRef<"App", 'String'> readonly size: FieldRef<"App", 'Int'> readonly packageName: FieldRef<"App", 'String'> readonly version: FieldRef<"App", 'String'> readonly platform: FieldRef<"App", 'String'> readonly md5: FieldRef<"App", 'String'> readonly createdAt: FieldRef<"App", 'DateTime'> readonly updatedAt: FieldRef<"App", 'DateTime'> } // Custom InputTypes /** * App findUnique */ export type AppFindUniqueArgs = { /** * Select specific fields to fetch from the App */ select?: AppSelect | null /** * Filter, which App to fetch. */ where: AppWhereUniqueInput } /** * App findUniqueOrThrow */ export type AppFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the App */ select?: AppSelect | null /** * Filter, which App to fetch. */ where: AppWhereUniqueInput } /** * App findFirst */ export type AppFindFirstArgs = { /** * Select specific fields to fetch from the App */ select?: AppSelect | null /** * Filter, which App to fetch. */ where?: AppWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Apps to fetch. */ orderBy?: AppOrderByWithRelationInput | AppOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Apps. */ cursor?: AppWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Apps from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Apps. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Apps. */ distinct?: AppScalarFieldEnum | AppScalarFieldEnum[] } /** * App findFirstOrThrow */ export type AppFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the App */ select?: AppSelect | null /** * Filter, which App to fetch. */ where?: AppWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Apps to fetch. */ orderBy?: AppOrderByWithRelationInput | AppOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Apps. */ cursor?: AppWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Apps from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Apps. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Apps. */ distinct?: AppScalarFieldEnum | AppScalarFieldEnum[] } /** * App findMany */ export type AppFindManyArgs = { /** * Select specific fields to fetch from the App */ select?: AppSelect | null /** * Filter, which Apps to fetch. */ where?: AppWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Apps to fetch. */ orderBy?: AppOrderByWithRelationInput | AppOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Apps. */ cursor?: AppWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Apps from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Apps. */ skip?: number distinct?: AppScalarFieldEnum | AppScalarFieldEnum[] } /** * App create */ export type AppCreateArgs = { /** * Select specific fields to fetch from the App */ select?: AppSelect | null /** * The data needed to create a App. */ data: XOR } /** * App createMany */ export type AppCreateManyArgs = { /** * The data used to create many Apps. */ data: AppCreateManyInput | AppCreateManyInput[] } /** * App createManyAndReturn */ export type AppCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the App */ select?: AppSelectCreateManyAndReturn | null /** * The data used to create many Apps. */ data: AppCreateManyInput | AppCreateManyInput[] } /** * App update */ export type AppUpdateArgs = { /** * Select specific fields to fetch from the App */ select?: AppSelect | null /** * The data needed to update a App. */ data: XOR /** * Choose, which App to update. */ where: AppWhereUniqueInput } /** * App updateMany */ export type AppUpdateManyArgs = { /** * The data used to update Apps. */ data: XOR /** * Filter which Apps to update */ where?: AppWhereInput } /** * App upsert */ export type AppUpsertArgs = { /** * Select specific fields to fetch from the App */ select?: AppSelect | null /** * The filter to search for the App to update in case it exists. */ where: AppWhereUniqueInput /** * In case the App found by the `where` argument doesn't exist, create a new App with this data. */ create: XOR /** * In case the App was found with the provided `where` argument, update it with this data. */ update: XOR } /** * App delete */ export type AppDeleteArgs = { /** * Select specific fields to fetch from the App */ select?: AppSelect | null /** * Filter which App to delete. */ where: AppWhereUniqueInput } /** * App deleteMany */ export type AppDeleteManyArgs = { /** * Filter which Apps to delete */ where?: AppWhereInput } /** * App without action */ export type AppDefaultArgs = { /** * Select specific fields to fetch from the App */ select?: AppSelect | null } /** * Model Device */ export type AggregateDevice = { _count: DeviceCountAggregateOutputType | null _avg: DeviceAvgAggregateOutputType | null _sum: DeviceSumAggregateOutputType | null _min: DeviceMinAggregateOutputType | null _max: DeviceMaxAggregateOutputType | null } export type DeviceAvgAggregateOutputType = { systemPort: number | null proxyPort: number | null wdaLocalPort: number | null mjpegServerPort: number | null lastCmdExecutedAt: number | null totalUtilizationTimeMilliSec: number | null sessionStartTime: number | null newCommandTimeout: number | null adbPort: number | null total_session_count: number | null lastHealthCheckAt: number | null batteryLevel: number | null reservedUntil: number | null totalHealedCount: number | null lockedAt: number | null } export type DeviceSumAggregateOutputType = { systemPort: number | null proxyPort: number | null wdaLocalPort: number | null mjpegServerPort: number | null lastCmdExecutedAt: number | null totalUtilizationTimeMilliSec: number | null sessionStartTime: number | null newCommandTimeout: number | null adbPort: number | null total_session_count: number | null lastHealthCheckAt: number | null batteryLevel: number | null reservedUntil: number | null totalHealedCount: number | null lockedAt: number | null } export type DeviceMinAggregateOutputType = { udid: string | null host: string | null systemPort: number | null proxyPort: number | null proxyHost: string | null wdaLocalPort: number | null name: string | null state: string | null sdk: string | null platform: string | null deviceType: string | null busy: boolean | null userBlocked: boolean | null realDevice: boolean | null session_id: string | null offline: boolean | null mjpegServerPort: number | null lastCmdExecutedAt: number | null totalUtilizationTimeMilliSec: number | null sessionStartTime: number | null newCommandTimeout: number | null cloud: string | null derivedDataPath: string | null chromeDriverPath: string | null capability: string | null adbRemoteHost: string | null adbPort: number | null nodeId: string | null screenWidth: string | null screenHeight: string | null dashboard_link: string | null total_session_count: number | null createdAt: Date | null updatedAt: Date | null healthCheckError: string | null healthStatus: string | null lastHealthCheckAt: number | null batteryLevel: number | null reservationReason: string | null reservedBy: string | null reservedUntil: number | null storageFree: string | null tags: string | null thermalStatus: string | null sessionProgress: string | null totalHealedCount: number | null ip: string | null cpuArchitecture: string | null owningSessionId: string | null lockedAt: number | null teamId: string | null } export type DeviceMaxAggregateOutputType = { udid: string | null host: string | null systemPort: number | null proxyPort: number | null proxyHost: string | null wdaLocalPort: number | null name: string | null state: string | null sdk: string | null platform: string | null deviceType: string | null busy: boolean | null userBlocked: boolean | null realDevice: boolean | null session_id: string | null offline: boolean | null mjpegServerPort: number | null lastCmdExecutedAt: number | null totalUtilizationTimeMilliSec: number | null sessionStartTime: number | null newCommandTimeout: number | null cloud: string | null derivedDataPath: string | null chromeDriverPath: string | null capability: string | null adbRemoteHost: string | null adbPort: number | null nodeId: string | null screenWidth: string | null screenHeight: string | null dashboard_link: string | null total_session_count: number | null createdAt: Date | null updatedAt: Date | null healthCheckError: string | null healthStatus: string | null lastHealthCheckAt: number | null batteryLevel: number | null reservationReason: string | null reservedBy: string | null reservedUntil: number | null storageFree: string | null tags: string | null thermalStatus: string | null sessionProgress: string | null totalHealedCount: number | null ip: string | null cpuArchitecture: string | null owningSessionId: string | null lockedAt: number | null teamId: string | null } export type DeviceCountAggregateOutputType = { udid: number host: number systemPort: number proxyPort: number proxyHost: number wdaLocalPort: number name: number state: number sdk: number platform: number deviceType: number busy: number userBlocked: number realDevice: number session_id: number offline: number mjpegServerPort: number lastCmdExecutedAt: number totalUtilizationTimeMilliSec: number sessionStartTime: number newCommandTimeout: number cloud: number derivedDataPath: number chromeDriverPath: number capability: number adbRemoteHost: number adbPort: number nodeId: number screenWidth: number screenHeight: number dashboard_link: number total_session_count: number createdAt: number updatedAt: number healthCheckError: number healthStatus: number lastHealthCheckAt: number batteryLevel: number reservationReason: number reservedBy: number reservedUntil: number storageFree: number tags: number thermalStatus: number sessionProgress: number totalHealedCount: number ip: number cpuArchitecture: number owningSessionId: number lockedAt: number teamId: number _all: number } export type DeviceAvgAggregateInputType = { systemPort?: true proxyPort?: true wdaLocalPort?: true mjpegServerPort?: true lastCmdExecutedAt?: true totalUtilizationTimeMilliSec?: true sessionStartTime?: true newCommandTimeout?: true adbPort?: true total_session_count?: true lastHealthCheckAt?: true batteryLevel?: true reservedUntil?: true totalHealedCount?: true lockedAt?: true } export type DeviceSumAggregateInputType = { systemPort?: true proxyPort?: true wdaLocalPort?: true mjpegServerPort?: true lastCmdExecutedAt?: true totalUtilizationTimeMilliSec?: true sessionStartTime?: true newCommandTimeout?: true adbPort?: true total_session_count?: true lastHealthCheckAt?: true batteryLevel?: true reservedUntil?: true totalHealedCount?: true lockedAt?: true } export type DeviceMinAggregateInputType = { udid?: true host?: true systemPort?: true proxyPort?: true proxyHost?: true wdaLocalPort?: true name?: true state?: true sdk?: true platform?: true deviceType?: true busy?: true userBlocked?: true realDevice?: true session_id?: true offline?: true mjpegServerPort?: true lastCmdExecutedAt?: true totalUtilizationTimeMilliSec?: true sessionStartTime?: true newCommandTimeout?: true cloud?: true derivedDataPath?: true chromeDriverPath?: true capability?: true adbRemoteHost?: true adbPort?: true nodeId?: true screenWidth?: true screenHeight?: true dashboard_link?: true total_session_count?: true createdAt?: true updatedAt?: true healthCheckError?: true healthStatus?: true lastHealthCheckAt?: true batteryLevel?: true reservationReason?: true reservedBy?: true reservedUntil?: true storageFree?: true tags?: true thermalStatus?: true sessionProgress?: true totalHealedCount?: true ip?: true cpuArchitecture?: true owningSessionId?: true lockedAt?: true teamId?: true } export type DeviceMaxAggregateInputType = { udid?: true host?: true systemPort?: true proxyPort?: true proxyHost?: true wdaLocalPort?: true name?: true state?: true sdk?: true platform?: true deviceType?: true busy?: true userBlocked?: true realDevice?: true session_id?: true offline?: true mjpegServerPort?: true lastCmdExecutedAt?: true totalUtilizationTimeMilliSec?: true sessionStartTime?: true newCommandTimeout?: true cloud?: true derivedDataPath?: true chromeDriverPath?: true capability?: true adbRemoteHost?: true adbPort?: true nodeId?: true screenWidth?: true screenHeight?: true dashboard_link?: true total_session_count?: true createdAt?: true updatedAt?: true healthCheckError?: true healthStatus?: true lastHealthCheckAt?: true batteryLevel?: true reservationReason?: true reservedBy?: true reservedUntil?: true storageFree?: true tags?: true thermalStatus?: true sessionProgress?: true totalHealedCount?: true ip?: true cpuArchitecture?: true owningSessionId?: true lockedAt?: true teamId?: true } export type DeviceCountAggregateInputType = { udid?: true host?: true systemPort?: true proxyPort?: true proxyHost?: true wdaLocalPort?: true name?: true state?: true sdk?: true platform?: true deviceType?: true busy?: true userBlocked?: true realDevice?: true session_id?: true offline?: true mjpegServerPort?: true lastCmdExecutedAt?: true totalUtilizationTimeMilliSec?: true sessionStartTime?: true newCommandTimeout?: true cloud?: true derivedDataPath?: true chromeDriverPath?: true capability?: true adbRemoteHost?: true adbPort?: true nodeId?: true screenWidth?: true screenHeight?: true dashboard_link?: true total_session_count?: true createdAt?: true updatedAt?: true healthCheckError?: true healthStatus?: true lastHealthCheckAt?: true batteryLevel?: true reservationReason?: true reservedBy?: true reservedUntil?: true storageFree?: true tags?: true thermalStatus?: true sessionProgress?: true totalHealedCount?: true ip?: true cpuArchitecture?: true owningSessionId?: true lockedAt?: true teamId?: true _all?: true } export type DeviceAggregateArgs = { /** * Filter which Device to aggregate. */ where?: DeviceWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Devices to fetch. */ orderBy?: DeviceOrderByWithRelationInput | DeviceOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: DeviceWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Devices from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Devices. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Devices **/ _count?: true | DeviceCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: DeviceAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: DeviceSumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: DeviceMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: DeviceMaxAggregateInputType } export type GetDeviceAggregateType = { [P in keyof T & keyof AggregateDevice]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type DeviceGroupByArgs = { where?: DeviceWhereInput orderBy?: DeviceOrderByWithAggregationInput | DeviceOrderByWithAggregationInput[] by: DeviceScalarFieldEnum[] | DeviceScalarFieldEnum having?: DeviceScalarWhereWithAggregatesInput take?: number skip?: number _count?: DeviceCountAggregateInputType | true _avg?: DeviceAvgAggregateInputType _sum?: DeviceSumAggregateInputType _min?: DeviceMinAggregateInputType _max?: DeviceMaxAggregateInputType } export type DeviceGroupByOutputType = { udid: string host: string systemPort: number | null proxyPort: number | null proxyHost: string | null wdaLocalPort: number | null name: string | null state: string | null sdk: string | null platform: string | null deviceType: string | null busy: boolean | null userBlocked: boolean | null realDevice: boolean | null session_id: string | null offline: boolean | null mjpegServerPort: number | null lastCmdExecutedAt: number | null totalUtilizationTimeMilliSec: number sessionStartTime: number newCommandTimeout: number | null cloud: string | null derivedDataPath: string | null chromeDriverPath: string | null capability: string | null adbRemoteHost: string | null adbPort: number | null nodeId: string | null screenWidth: string | null screenHeight: string | null dashboard_link: string | null total_session_count: number | null createdAt: Date updatedAt: Date healthCheckError: string | null healthStatus: string | null lastHealthCheckAt: number | null batteryLevel: number | null reservationReason: string | null reservedBy: string | null reservedUntil: number | null storageFree: string | null tags: string | null thermalStatus: string | null sessionProgress: string | null totalHealedCount: number | null ip: string | null cpuArchitecture: string | null owningSessionId: string | null lockedAt: number | null teamId: string | null _count: DeviceCountAggregateOutputType | null _avg: DeviceAvgAggregateOutputType | null _sum: DeviceSumAggregateOutputType | null _min: DeviceMinAggregateOutputType | null _max: DeviceMaxAggregateOutputType | null } type GetDeviceGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof DeviceGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type DeviceSelect = $Extensions.GetSelect<{ udid?: boolean host?: boolean systemPort?: boolean proxyPort?: boolean proxyHost?: boolean wdaLocalPort?: boolean name?: boolean state?: boolean sdk?: boolean platform?: boolean deviceType?: boolean busy?: boolean userBlocked?: boolean realDevice?: boolean session_id?: boolean offline?: boolean mjpegServerPort?: boolean lastCmdExecutedAt?: boolean totalUtilizationTimeMilliSec?: boolean sessionStartTime?: boolean newCommandTimeout?: boolean cloud?: boolean derivedDataPath?: boolean chromeDriverPath?: boolean capability?: boolean adbRemoteHost?: boolean adbPort?: boolean nodeId?: boolean screenWidth?: boolean screenHeight?: boolean dashboard_link?: boolean total_session_count?: boolean createdAt?: boolean updatedAt?: boolean healthCheckError?: boolean healthStatus?: boolean lastHealthCheckAt?: boolean batteryLevel?: boolean reservationReason?: boolean reservedBy?: boolean reservedUntil?: boolean storageFree?: boolean tags?: boolean thermalStatus?: boolean sessionProgress?: boolean totalHealedCount?: boolean ip?: boolean cpuArchitecture?: boolean owningSessionId?: boolean lockedAt?: boolean teamId?: boolean team?: boolean | Device$teamArgs }, ExtArgs["result"]["device"]> export type DeviceSelectCreateManyAndReturn = $Extensions.GetSelect<{ udid?: boolean host?: boolean systemPort?: boolean proxyPort?: boolean proxyHost?: boolean wdaLocalPort?: boolean name?: boolean state?: boolean sdk?: boolean platform?: boolean deviceType?: boolean busy?: boolean userBlocked?: boolean realDevice?: boolean session_id?: boolean offline?: boolean mjpegServerPort?: boolean lastCmdExecutedAt?: boolean totalUtilizationTimeMilliSec?: boolean sessionStartTime?: boolean newCommandTimeout?: boolean cloud?: boolean derivedDataPath?: boolean chromeDriverPath?: boolean capability?: boolean adbRemoteHost?: boolean adbPort?: boolean nodeId?: boolean screenWidth?: boolean screenHeight?: boolean dashboard_link?: boolean total_session_count?: boolean createdAt?: boolean updatedAt?: boolean healthCheckError?: boolean healthStatus?: boolean lastHealthCheckAt?: boolean batteryLevel?: boolean reservationReason?: boolean reservedBy?: boolean reservedUntil?: boolean storageFree?: boolean tags?: boolean thermalStatus?: boolean sessionProgress?: boolean totalHealedCount?: boolean ip?: boolean cpuArchitecture?: boolean owningSessionId?: boolean lockedAt?: boolean teamId?: boolean team?: boolean | Device$teamArgs }, ExtArgs["result"]["device"]> export type DeviceSelectScalar = { udid?: boolean host?: boolean systemPort?: boolean proxyPort?: boolean proxyHost?: boolean wdaLocalPort?: boolean name?: boolean state?: boolean sdk?: boolean platform?: boolean deviceType?: boolean busy?: boolean userBlocked?: boolean realDevice?: boolean session_id?: boolean offline?: boolean mjpegServerPort?: boolean lastCmdExecutedAt?: boolean totalUtilizationTimeMilliSec?: boolean sessionStartTime?: boolean newCommandTimeout?: boolean cloud?: boolean derivedDataPath?: boolean chromeDriverPath?: boolean capability?: boolean adbRemoteHost?: boolean adbPort?: boolean nodeId?: boolean screenWidth?: boolean screenHeight?: boolean dashboard_link?: boolean total_session_count?: boolean createdAt?: boolean updatedAt?: boolean healthCheckError?: boolean healthStatus?: boolean lastHealthCheckAt?: boolean batteryLevel?: boolean reservationReason?: boolean reservedBy?: boolean reservedUntil?: boolean storageFree?: boolean tags?: boolean thermalStatus?: boolean sessionProgress?: boolean totalHealedCount?: boolean ip?: boolean cpuArchitecture?: boolean owningSessionId?: boolean lockedAt?: boolean teamId?: boolean } export type DeviceInclude = { team?: boolean | Device$teamArgs } export type DeviceIncludeCreateManyAndReturn = { team?: boolean | Device$teamArgs } export type $DevicePayload = { name: "Device" objects: { team: Prisma.$TeamPayload | null } scalars: $Extensions.GetPayloadResult<{ udid: string host: string systemPort: number | null proxyPort: number | null proxyHost: string | null wdaLocalPort: number | null name: string | null state: string | null sdk: string | null platform: string | null deviceType: string | null busy: boolean | null userBlocked: boolean | null realDevice: boolean | null session_id: string | null offline: boolean | null mjpegServerPort: number | null lastCmdExecutedAt: number | null totalUtilizationTimeMilliSec: number sessionStartTime: number newCommandTimeout: number | null cloud: string | null derivedDataPath: string | null chromeDriverPath: string | null capability: string | null adbRemoteHost: string | null adbPort: number | null nodeId: string | null screenWidth: string | null screenHeight: string | null dashboard_link: string | null total_session_count: number | null createdAt: Date updatedAt: Date healthCheckError: string | null healthStatus: string | null lastHealthCheckAt: number | null batteryLevel: number | null reservationReason: string | null reservedBy: string | null reservedUntil: number | null storageFree: string | null tags: string | null thermalStatus: string | null sessionProgress: string | null totalHealedCount: number | null ip: string | null cpuArchitecture: string | null owningSessionId: string | null lockedAt: number | null teamId: string | null }, ExtArgs["result"]["device"]> composites: {} } type DeviceGetPayload = $Result.GetResult type DeviceCountArgs = Omit & { select?: DeviceCountAggregateInputType | true } export interface DeviceDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['Device'], meta: { name: 'Device' } } /** * Find zero or one Device that matches the filter. * @param {DeviceFindUniqueArgs} args - Arguments to find a Device * @example * // Get one Device * const device = await prisma.device.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__DeviceClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one Device that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {DeviceFindUniqueOrThrowArgs} args - Arguments to find a Device * @example * // Get one Device * const device = await prisma.device.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__DeviceClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first Device that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {DeviceFindFirstArgs} args - Arguments to find a Device * @example * // Get one Device * const device = await prisma.device.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__DeviceClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first Device that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {DeviceFindFirstOrThrowArgs} args - Arguments to find a Device * @example * // Get one Device * const device = await prisma.device.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__DeviceClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more Devices that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {DeviceFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Devices * const devices = await prisma.device.findMany() * * // Get first 10 Devices * const devices = await prisma.device.findMany({ take: 10 }) * * // Only select the `udid` * const deviceWithUdidOnly = await prisma.device.findMany({ select: { udid: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a Device. * @param {DeviceCreateArgs} args - Arguments to create a Device. * @example * // Create one Device * const Device = await prisma.device.create({ * data: { * // ... data to create a Device * } * }) * */ create(args: SelectSubset>): Prisma__DeviceClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many Devices. * @param {DeviceCreateManyArgs} args - Arguments to create many Devices. * @example * // Create many Devices * const device = await prisma.device.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many Devices and returns the data saved in the database. * @param {DeviceCreateManyAndReturnArgs} args - Arguments to create many Devices. * @example * // Create many Devices * const device = await prisma.device.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many Devices and only return the `udid` * const deviceWithUdidOnly = await prisma.device.createManyAndReturn({ * select: { udid: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a Device. * @param {DeviceDeleteArgs} args - Arguments to delete one Device. * @example * // Delete one Device * const Device = await prisma.device.delete({ * where: { * // ... filter to delete one Device * } * }) * */ delete(args: SelectSubset>): Prisma__DeviceClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one Device. * @param {DeviceUpdateArgs} args - Arguments to update one Device. * @example * // Update one Device * const device = await prisma.device.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__DeviceClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more Devices. * @param {DeviceDeleteManyArgs} args - Arguments to filter Devices to delete. * @example * // Delete a few Devices * const { count } = await prisma.device.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Devices. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {DeviceUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Devices * const device = await prisma.device.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one Device. * @param {DeviceUpsertArgs} args - Arguments to update or create a Device. * @example * // Update or create a Device * const device = await prisma.device.upsert({ * create: { * // ... data to create a Device * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the Device we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__DeviceClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of Devices. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {DeviceCountArgs} args - Arguments to filter Devices to count. * @example * // Count the number of Devices * const count = await prisma.device.count({ * where: { * // ... the filter for the Devices we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a Device. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {DeviceAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by Device. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {DeviceGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends DeviceGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: DeviceGroupByArgs['orderBy'] } : { orderBy?: DeviceGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetDeviceGroupByPayload : Prisma.PrismaPromise /** * Fields of the Device model */ readonly fields: DeviceFieldRefs; } /** * The delegate class that acts as a "Promise-like" for Device. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__DeviceClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" team = {}>(args?: Subset>): Prisma__TeamClient<$Result.GetResult, T, "findUniqueOrThrow"> | null, null, ExtArgs> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the Device model */ interface DeviceFieldRefs { readonly udid: FieldRef<"Device", 'String'> readonly host: FieldRef<"Device", 'String'> readonly systemPort: FieldRef<"Device", 'Int'> readonly proxyPort: FieldRef<"Device", 'Int'> readonly proxyHost: FieldRef<"Device", 'String'> readonly wdaLocalPort: FieldRef<"Device", 'Int'> readonly name: FieldRef<"Device", 'String'> readonly state: FieldRef<"Device", 'String'> readonly sdk: FieldRef<"Device", 'String'> readonly platform: FieldRef<"Device", 'String'> readonly deviceType: FieldRef<"Device", 'String'> readonly busy: FieldRef<"Device", 'Boolean'> readonly userBlocked: FieldRef<"Device", 'Boolean'> readonly realDevice: FieldRef<"Device", 'Boolean'> readonly session_id: FieldRef<"Device", 'String'> readonly offline: FieldRef<"Device", 'Boolean'> readonly mjpegServerPort: FieldRef<"Device", 'Int'> readonly lastCmdExecutedAt: FieldRef<"Device", 'Float'> readonly totalUtilizationTimeMilliSec: FieldRef<"Device", 'Float'> readonly sessionStartTime: FieldRef<"Device", 'Float'> readonly newCommandTimeout: FieldRef<"Device", 'Int'> readonly cloud: FieldRef<"Device", 'String'> readonly derivedDataPath: FieldRef<"Device", 'String'> readonly chromeDriverPath: FieldRef<"Device", 'String'> readonly capability: FieldRef<"Device", 'String'> readonly adbRemoteHost: FieldRef<"Device", 'String'> readonly adbPort: FieldRef<"Device", 'Int'> readonly nodeId: FieldRef<"Device", 'String'> readonly screenWidth: FieldRef<"Device", 'String'> readonly screenHeight: FieldRef<"Device", 'String'> readonly dashboard_link: FieldRef<"Device", 'String'> readonly total_session_count: FieldRef<"Device", 'Int'> readonly createdAt: FieldRef<"Device", 'DateTime'> readonly updatedAt: FieldRef<"Device", 'DateTime'> readonly healthCheckError: FieldRef<"Device", 'String'> readonly healthStatus: FieldRef<"Device", 'String'> readonly lastHealthCheckAt: FieldRef<"Device", 'Float'> readonly batteryLevel: FieldRef<"Device", 'Int'> readonly reservationReason: FieldRef<"Device", 'String'> readonly reservedBy: FieldRef<"Device", 'String'> readonly reservedUntil: FieldRef<"Device", 'Float'> readonly storageFree: FieldRef<"Device", 'String'> readonly tags: FieldRef<"Device", 'String'> readonly thermalStatus: FieldRef<"Device", 'String'> readonly sessionProgress: FieldRef<"Device", 'String'> readonly totalHealedCount: FieldRef<"Device", 'Int'> readonly ip: FieldRef<"Device", 'String'> readonly cpuArchitecture: FieldRef<"Device", 'String'> readonly owningSessionId: FieldRef<"Device", 'String'> readonly lockedAt: FieldRef<"Device", 'Float'> readonly teamId: FieldRef<"Device", 'String'> } // Custom InputTypes /** * Device findUnique */ export type DeviceFindUniqueArgs = { /** * Select specific fields to fetch from the Device */ select?: DeviceSelect | null /** * Choose, which related nodes to fetch as well */ include?: DeviceInclude | null /** * Filter, which Device to fetch. */ where: DeviceWhereUniqueInput } /** * Device findUniqueOrThrow */ export type DeviceFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the Device */ select?: DeviceSelect | null /** * Choose, which related nodes to fetch as well */ include?: DeviceInclude | null /** * Filter, which Device to fetch. */ where: DeviceWhereUniqueInput } /** * Device findFirst */ export type DeviceFindFirstArgs = { /** * Select specific fields to fetch from the Device */ select?: DeviceSelect | null /** * Choose, which related nodes to fetch as well */ include?: DeviceInclude | null /** * Filter, which Device to fetch. */ where?: DeviceWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Devices to fetch. */ orderBy?: DeviceOrderByWithRelationInput | DeviceOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Devices. */ cursor?: DeviceWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Devices from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Devices. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Devices. */ distinct?: DeviceScalarFieldEnum | DeviceScalarFieldEnum[] } /** * Device findFirstOrThrow */ export type DeviceFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the Device */ select?: DeviceSelect | null /** * Choose, which related nodes to fetch as well */ include?: DeviceInclude | null /** * Filter, which Device to fetch. */ where?: DeviceWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Devices to fetch. */ orderBy?: DeviceOrderByWithRelationInput | DeviceOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Devices. */ cursor?: DeviceWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Devices from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Devices. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Devices. */ distinct?: DeviceScalarFieldEnum | DeviceScalarFieldEnum[] } /** * Device findMany */ export type DeviceFindManyArgs = { /** * Select specific fields to fetch from the Device */ select?: DeviceSelect | null /** * Choose, which related nodes to fetch as well */ include?: DeviceInclude | null /** * Filter, which Devices to fetch. */ where?: DeviceWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Devices to fetch. */ orderBy?: DeviceOrderByWithRelationInput | DeviceOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Devices. */ cursor?: DeviceWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Devices from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Devices. */ skip?: number distinct?: DeviceScalarFieldEnum | DeviceScalarFieldEnum[] } /** * Device create */ export type DeviceCreateArgs = { /** * Select specific fields to fetch from the Device */ select?: DeviceSelect | null /** * Choose, which related nodes to fetch as well */ include?: DeviceInclude | null /** * The data needed to create a Device. */ data: XOR } /** * Device createMany */ export type DeviceCreateManyArgs = { /** * The data used to create many Devices. */ data: DeviceCreateManyInput | DeviceCreateManyInput[] } /** * Device createManyAndReturn */ export type DeviceCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the Device */ select?: DeviceSelectCreateManyAndReturn | null /** * The data used to create many Devices. */ data: DeviceCreateManyInput | DeviceCreateManyInput[] /** * Choose, which related nodes to fetch as well */ include?: DeviceIncludeCreateManyAndReturn | null } /** * Device update */ export type DeviceUpdateArgs = { /** * Select specific fields to fetch from the Device */ select?: DeviceSelect | null /** * Choose, which related nodes to fetch as well */ include?: DeviceInclude | null /** * The data needed to update a Device. */ data: XOR /** * Choose, which Device to update. */ where: DeviceWhereUniqueInput } /** * Device updateMany */ export type DeviceUpdateManyArgs = { /** * The data used to update Devices. */ data: XOR /** * Filter which Devices to update */ where?: DeviceWhereInput } /** * Device upsert */ export type DeviceUpsertArgs = { /** * Select specific fields to fetch from the Device */ select?: DeviceSelect | null /** * Choose, which related nodes to fetch as well */ include?: DeviceInclude | null /** * The filter to search for the Device to update in case it exists. */ where: DeviceWhereUniqueInput /** * In case the Device found by the `where` argument doesn't exist, create a new Device with this data. */ create: XOR /** * In case the Device was found with the provided `where` argument, update it with this data. */ update: XOR } /** * Device delete */ export type DeviceDeleteArgs = { /** * Select specific fields to fetch from the Device */ select?: DeviceSelect | null /** * Choose, which related nodes to fetch as well */ include?: DeviceInclude | null /** * Filter which Device to delete. */ where: DeviceWhereUniqueInput } /** * Device deleteMany */ export type DeviceDeleteManyArgs = { /** * Filter which Devices to delete */ where?: DeviceWhereInput } /** * Device.team */ export type Device$teamArgs = { /** * Select specific fields to fetch from the Team */ select?: TeamSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamInclude | null where?: TeamWhereInput } /** * Device without action */ export type DeviceDefaultArgs = { /** * Select specific fields to fetch from the Device */ select?: DeviceSelect | null /** * Choose, which related nodes to fetch as well */ include?: DeviceInclude | null } /** * Model PendingSession */ export type AggregatePendingSession = { _count: PendingSessionCountAggregateOutputType | null _avg: PendingSessionAvgAggregateOutputType | null _sum: PendingSessionSumAggregateOutputType | null _min: PendingSessionMinAggregateOutputType | null _max: PendingSessionMaxAggregateOutputType | null } export type PendingSessionAvgAggregateOutputType = { id: number | null createdAt: number | null } export type PendingSessionSumAggregateOutputType = { id: number | null createdAt: number | null } export type PendingSessionMinAggregateOutputType = { id: number | null capability_id: string | null capability: string | null createdAt: number | null } export type PendingSessionMaxAggregateOutputType = { id: number | null capability_id: string | null capability: string | null createdAt: number | null } export type PendingSessionCountAggregateOutputType = { id: number capability_id: number capability: number createdAt: number _all: number } export type PendingSessionAvgAggregateInputType = { id?: true createdAt?: true } export type PendingSessionSumAggregateInputType = { id?: true createdAt?: true } export type PendingSessionMinAggregateInputType = { id?: true capability_id?: true capability?: true createdAt?: true } export type PendingSessionMaxAggregateInputType = { id?: true capability_id?: true capability?: true createdAt?: true } export type PendingSessionCountAggregateInputType = { id?: true capability_id?: true capability?: true createdAt?: true _all?: true } export type PendingSessionAggregateArgs = { /** * Filter which PendingSession to aggregate. */ where?: PendingSessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of PendingSessions to fetch. */ orderBy?: PendingSessionOrderByWithRelationInput | PendingSessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: PendingSessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` PendingSessions from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` PendingSessions. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned PendingSessions **/ _count?: true | PendingSessionCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: PendingSessionAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: PendingSessionSumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: PendingSessionMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: PendingSessionMaxAggregateInputType } export type GetPendingSessionAggregateType = { [P in keyof T & keyof AggregatePendingSession]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type PendingSessionGroupByArgs = { where?: PendingSessionWhereInput orderBy?: PendingSessionOrderByWithAggregationInput | PendingSessionOrderByWithAggregationInput[] by: PendingSessionScalarFieldEnum[] | PendingSessionScalarFieldEnum having?: PendingSessionScalarWhereWithAggregatesInput take?: number skip?: number _count?: PendingSessionCountAggregateInputType | true _avg?: PendingSessionAvgAggregateInputType _sum?: PendingSessionSumAggregateInputType _min?: PendingSessionMinAggregateInputType _max?: PendingSessionMaxAggregateInputType } export type PendingSessionGroupByOutputType = { id: number capability_id: string capability: string createdAt: number _count: PendingSessionCountAggregateOutputType | null _avg: PendingSessionAvgAggregateOutputType | null _sum: PendingSessionSumAggregateOutputType | null _min: PendingSessionMinAggregateOutputType | null _max: PendingSessionMaxAggregateOutputType | null } type GetPendingSessionGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof PendingSessionGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type PendingSessionSelect = $Extensions.GetSelect<{ id?: boolean capability_id?: boolean capability?: boolean createdAt?: boolean }, ExtArgs["result"]["pendingSession"]> export type PendingSessionSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean capability_id?: boolean capability?: boolean createdAt?: boolean }, ExtArgs["result"]["pendingSession"]> export type PendingSessionSelectScalar = { id?: boolean capability_id?: boolean capability?: boolean createdAt?: boolean } export type $PendingSessionPayload = { name: "PendingSession" objects: {} scalars: $Extensions.GetPayloadResult<{ id: number capability_id: string capability: string createdAt: number }, ExtArgs["result"]["pendingSession"]> composites: {} } type PendingSessionGetPayload = $Result.GetResult type PendingSessionCountArgs = Omit & { select?: PendingSessionCountAggregateInputType | true } export interface PendingSessionDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['PendingSession'], meta: { name: 'PendingSession' } } /** * Find zero or one PendingSession that matches the filter. * @param {PendingSessionFindUniqueArgs} args - Arguments to find a PendingSession * @example * // Get one PendingSession * const pendingSession = await prisma.pendingSession.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__PendingSessionClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one PendingSession that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {PendingSessionFindUniqueOrThrowArgs} args - Arguments to find a PendingSession * @example * // Get one PendingSession * const pendingSession = await prisma.pendingSession.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__PendingSessionClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first PendingSession that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PendingSessionFindFirstArgs} args - Arguments to find a PendingSession * @example * // Get one PendingSession * const pendingSession = await prisma.pendingSession.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__PendingSessionClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first PendingSession that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PendingSessionFindFirstOrThrowArgs} args - Arguments to find a PendingSession * @example * // Get one PendingSession * const pendingSession = await prisma.pendingSession.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__PendingSessionClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more PendingSessions that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PendingSessionFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all PendingSessions * const pendingSessions = await prisma.pendingSession.findMany() * * // Get first 10 PendingSessions * const pendingSessions = await prisma.pendingSession.findMany({ take: 10 }) * * // Only select the `id` * const pendingSessionWithIdOnly = await prisma.pendingSession.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a PendingSession. * @param {PendingSessionCreateArgs} args - Arguments to create a PendingSession. * @example * // Create one PendingSession * const PendingSession = await prisma.pendingSession.create({ * data: { * // ... data to create a PendingSession * } * }) * */ create(args: SelectSubset>): Prisma__PendingSessionClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many PendingSessions. * @param {PendingSessionCreateManyArgs} args - Arguments to create many PendingSessions. * @example * // Create many PendingSessions * const pendingSession = await prisma.pendingSession.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many PendingSessions and returns the data saved in the database. * @param {PendingSessionCreateManyAndReturnArgs} args - Arguments to create many PendingSessions. * @example * // Create many PendingSessions * const pendingSession = await prisma.pendingSession.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many PendingSessions and only return the `id` * const pendingSessionWithIdOnly = await prisma.pendingSession.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a PendingSession. * @param {PendingSessionDeleteArgs} args - Arguments to delete one PendingSession. * @example * // Delete one PendingSession * const PendingSession = await prisma.pendingSession.delete({ * where: { * // ... filter to delete one PendingSession * } * }) * */ delete(args: SelectSubset>): Prisma__PendingSessionClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one PendingSession. * @param {PendingSessionUpdateArgs} args - Arguments to update one PendingSession. * @example * // Update one PendingSession * const pendingSession = await prisma.pendingSession.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__PendingSessionClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more PendingSessions. * @param {PendingSessionDeleteManyArgs} args - Arguments to filter PendingSessions to delete. * @example * // Delete a few PendingSessions * const { count } = await prisma.pendingSession.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more PendingSessions. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PendingSessionUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many PendingSessions * const pendingSession = await prisma.pendingSession.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one PendingSession. * @param {PendingSessionUpsertArgs} args - Arguments to update or create a PendingSession. * @example * // Update or create a PendingSession * const pendingSession = await prisma.pendingSession.upsert({ * create: { * // ... data to create a PendingSession * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the PendingSession we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__PendingSessionClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of PendingSessions. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PendingSessionCountArgs} args - Arguments to filter PendingSessions to count. * @example * // Count the number of PendingSessions * const count = await prisma.pendingSession.count({ * where: { * // ... the filter for the PendingSessions we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a PendingSession. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PendingSessionAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by PendingSession. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PendingSessionGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends PendingSessionGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: PendingSessionGroupByArgs['orderBy'] } : { orderBy?: PendingSessionGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetPendingSessionGroupByPayload : Prisma.PrismaPromise /** * Fields of the PendingSession model */ readonly fields: PendingSessionFieldRefs; } /** * The delegate class that acts as a "Promise-like" for PendingSession. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__PendingSessionClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the PendingSession model */ interface PendingSessionFieldRefs { readonly id: FieldRef<"PendingSession", 'Int'> readonly capability_id: FieldRef<"PendingSession", 'String'> readonly capability: FieldRef<"PendingSession", 'String'> readonly createdAt: FieldRef<"PendingSession", 'Float'> } // Custom InputTypes /** * PendingSession findUnique */ export type PendingSessionFindUniqueArgs = { /** * Select specific fields to fetch from the PendingSession */ select?: PendingSessionSelect | null /** * Filter, which PendingSession to fetch. */ where: PendingSessionWhereUniqueInput } /** * PendingSession findUniqueOrThrow */ export type PendingSessionFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the PendingSession */ select?: PendingSessionSelect | null /** * Filter, which PendingSession to fetch. */ where: PendingSessionWhereUniqueInput } /** * PendingSession findFirst */ export type PendingSessionFindFirstArgs = { /** * Select specific fields to fetch from the PendingSession */ select?: PendingSessionSelect | null /** * Filter, which PendingSession to fetch. */ where?: PendingSessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of PendingSessions to fetch. */ orderBy?: PendingSessionOrderByWithRelationInput | PendingSessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for PendingSessions. */ cursor?: PendingSessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` PendingSessions from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` PendingSessions. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of PendingSessions. */ distinct?: PendingSessionScalarFieldEnum | PendingSessionScalarFieldEnum[] } /** * PendingSession findFirstOrThrow */ export type PendingSessionFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the PendingSession */ select?: PendingSessionSelect | null /** * Filter, which PendingSession to fetch. */ where?: PendingSessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of PendingSessions to fetch. */ orderBy?: PendingSessionOrderByWithRelationInput | PendingSessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for PendingSessions. */ cursor?: PendingSessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` PendingSessions from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` PendingSessions. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of PendingSessions. */ distinct?: PendingSessionScalarFieldEnum | PendingSessionScalarFieldEnum[] } /** * PendingSession findMany */ export type PendingSessionFindManyArgs = { /** * Select specific fields to fetch from the PendingSession */ select?: PendingSessionSelect | null /** * Filter, which PendingSessions to fetch. */ where?: PendingSessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of PendingSessions to fetch. */ orderBy?: PendingSessionOrderByWithRelationInput | PendingSessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing PendingSessions. */ cursor?: PendingSessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` PendingSessions from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` PendingSessions. */ skip?: number distinct?: PendingSessionScalarFieldEnum | PendingSessionScalarFieldEnum[] } /** * PendingSession create */ export type PendingSessionCreateArgs = { /** * Select specific fields to fetch from the PendingSession */ select?: PendingSessionSelect | null /** * The data needed to create a PendingSession. */ data: XOR } /** * PendingSession createMany */ export type PendingSessionCreateManyArgs = { /** * The data used to create many PendingSessions. */ data: PendingSessionCreateManyInput | PendingSessionCreateManyInput[] } /** * PendingSession createManyAndReturn */ export type PendingSessionCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the PendingSession */ select?: PendingSessionSelectCreateManyAndReturn | null /** * The data used to create many PendingSessions. */ data: PendingSessionCreateManyInput | PendingSessionCreateManyInput[] } /** * PendingSession update */ export type PendingSessionUpdateArgs = { /** * Select specific fields to fetch from the PendingSession */ select?: PendingSessionSelect | null /** * The data needed to update a PendingSession. */ data: XOR /** * Choose, which PendingSession to update. */ where: PendingSessionWhereUniqueInput } /** * PendingSession updateMany */ export type PendingSessionUpdateManyArgs = { /** * The data used to update PendingSessions. */ data: XOR /** * Filter which PendingSessions to update */ where?: PendingSessionWhereInput } /** * PendingSession upsert */ export type PendingSessionUpsertArgs = { /** * Select specific fields to fetch from the PendingSession */ select?: PendingSessionSelect | null /** * The filter to search for the PendingSession to update in case it exists. */ where: PendingSessionWhereUniqueInput /** * In case the PendingSession found by the `where` argument doesn't exist, create a new PendingSession with this data. */ create: XOR /** * In case the PendingSession was found with the provided `where` argument, update it with this data. */ update: XOR } /** * PendingSession delete */ export type PendingSessionDeleteArgs = { /** * Select specific fields to fetch from the PendingSession */ select?: PendingSessionSelect | null /** * Filter which PendingSession to delete. */ where: PendingSessionWhereUniqueInput } /** * PendingSession deleteMany */ export type PendingSessionDeleteManyArgs = { /** * Filter which PendingSessions to delete */ where?: PendingSessionWhereInput } /** * PendingSession without action */ export type PendingSessionDefaultArgs = { /** * Select specific fields to fetch from the PendingSession */ select?: PendingSessionSelect | null } /** * Model CLIArgs */ export type AggregateCLIArgs = { _count: CLIArgsCountAggregateOutputType | null _avg: CLIArgsAvgAggregateOutputType | null _sum: CLIArgsSumAggregateOutputType | null _min: CLIArgsMinAggregateOutputType | null _max: CLIArgsMaxAggregateOutputType | null } export type CLIArgsAvgAggregateOutputType = { id: number | null } export type CLIArgsSumAggregateOutputType = { id: number | null } export type CLIArgsMinAggregateOutputType = { id: number | null args: string | null createdAt: Date | null } export type CLIArgsMaxAggregateOutputType = { id: number | null args: string | null createdAt: Date | null } export type CLIArgsCountAggregateOutputType = { id: number args: number createdAt: number _all: number } export type CLIArgsAvgAggregateInputType = { id?: true } export type CLIArgsSumAggregateInputType = { id?: true } export type CLIArgsMinAggregateInputType = { id?: true args?: true createdAt?: true } export type CLIArgsMaxAggregateInputType = { id?: true args?: true createdAt?: true } export type CLIArgsCountAggregateInputType = { id?: true args?: true createdAt?: true _all?: true } export type CLIArgsAggregateArgs = { /** * Filter which CLIArgs to aggregate. */ where?: CLIArgsWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of CLIArgs to fetch. */ orderBy?: CLIArgsOrderByWithRelationInput | CLIArgsOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: CLIArgsWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` CLIArgs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` CLIArgs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned CLIArgs **/ _count?: true | CLIArgsCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: CLIArgsAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: CLIArgsSumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: CLIArgsMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: CLIArgsMaxAggregateInputType } export type GetCLIArgsAggregateType = { [P in keyof T & keyof AggregateCLIArgs]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type CLIArgsGroupByArgs = { where?: CLIArgsWhereInput orderBy?: CLIArgsOrderByWithAggregationInput | CLIArgsOrderByWithAggregationInput[] by: CLIArgsScalarFieldEnum[] | CLIArgsScalarFieldEnum having?: CLIArgsScalarWhereWithAggregatesInput take?: number skip?: number _count?: CLIArgsCountAggregateInputType | true _avg?: CLIArgsAvgAggregateInputType _sum?: CLIArgsSumAggregateInputType _min?: CLIArgsMinAggregateInputType _max?: CLIArgsMaxAggregateInputType } export type CLIArgsGroupByOutputType = { id: number args: string createdAt: Date _count: CLIArgsCountAggregateOutputType | null _avg: CLIArgsAvgAggregateOutputType | null _sum: CLIArgsSumAggregateOutputType | null _min: CLIArgsMinAggregateOutputType | null _max: CLIArgsMaxAggregateOutputType | null } type GetCLIArgsGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof CLIArgsGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type CLIArgsSelect = $Extensions.GetSelect<{ id?: boolean args?: boolean createdAt?: boolean }, ExtArgs["result"]["cLIArgs"]> export type CLIArgsSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean args?: boolean createdAt?: boolean }, ExtArgs["result"]["cLIArgs"]> export type CLIArgsSelectScalar = { id?: boolean args?: boolean createdAt?: boolean } export type $CLIArgsPayload = { name: "CLIArgs" objects: {} scalars: $Extensions.GetPayloadResult<{ id: number args: string createdAt: Date }, ExtArgs["result"]["cLIArgs"]> composites: {} } type CLIArgsGetPayload = $Result.GetResult type CLIArgsCountArgs = Omit & { select?: CLIArgsCountAggregateInputType | true } export interface CLIArgsDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['CLIArgs'], meta: { name: 'CLIArgs' } } /** * Find zero or one CLIArgs that matches the filter. * @param {CLIArgsFindUniqueArgs} args - Arguments to find a CLIArgs * @example * // Get one CLIArgs * const cLIArgs = await prisma.cLIArgs.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__CLIArgsClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one CLIArgs that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {CLIArgsFindUniqueOrThrowArgs} args - Arguments to find a CLIArgs * @example * // Get one CLIArgs * const cLIArgs = await prisma.cLIArgs.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__CLIArgsClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first CLIArgs that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {CLIArgsFindFirstArgs} args - Arguments to find a CLIArgs * @example * // Get one CLIArgs * const cLIArgs = await prisma.cLIArgs.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__CLIArgsClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first CLIArgs that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {CLIArgsFindFirstOrThrowArgs} args - Arguments to find a CLIArgs * @example * // Get one CLIArgs * const cLIArgs = await prisma.cLIArgs.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__CLIArgsClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more CLIArgs that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {CLIArgsFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all CLIArgs * const cLIArgs = await prisma.cLIArgs.findMany() * * // Get first 10 CLIArgs * const cLIArgs = await prisma.cLIArgs.findMany({ take: 10 }) * * // Only select the `id` * const cLIArgsWithIdOnly = await prisma.cLIArgs.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a CLIArgs. * @param {CLIArgsCreateArgs} args - Arguments to create a CLIArgs. * @example * // Create one CLIArgs * const CLIArgs = await prisma.cLIArgs.create({ * data: { * // ... data to create a CLIArgs * } * }) * */ create(args: SelectSubset>): Prisma__CLIArgsClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many CLIArgs. * @param {CLIArgsCreateManyArgs} args - Arguments to create many CLIArgs. * @example * // Create many CLIArgs * const cLIArgs = await prisma.cLIArgs.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many CLIArgs and returns the data saved in the database. * @param {CLIArgsCreateManyAndReturnArgs} args - Arguments to create many CLIArgs. * @example * // Create many CLIArgs * const cLIArgs = await prisma.cLIArgs.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many CLIArgs and only return the `id` * const cLIArgsWithIdOnly = await prisma.cLIArgs.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a CLIArgs. * @param {CLIArgsDeleteArgs} args - Arguments to delete one CLIArgs. * @example * // Delete one CLIArgs * const CLIArgs = await prisma.cLIArgs.delete({ * where: { * // ... filter to delete one CLIArgs * } * }) * */ delete(args: SelectSubset>): Prisma__CLIArgsClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one CLIArgs. * @param {CLIArgsUpdateArgs} args - Arguments to update one CLIArgs. * @example * // Update one CLIArgs * const cLIArgs = await prisma.cLIArgs.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__CLIArgsClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more CLIArgs. * @param {CLIArgsDeleteManyArgs} args - Arguments to filter CLIArgs to delete. * @example * // Delete a few CLIArgs * const { count } = await prisma.cLIArgs.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more CLIArgs. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {CLIArgsUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many CLIArgs * const cLIArgs = await prisma.cLIArgs.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one CLIArgs. * @param {CLIArgsUpsertArgs} args - Arguments to update or create a CLIArgs. * @example * // Update or create a CLIArgs * const cLIArgs = await prisma.cLIArgs.upsert({ * create: { * // ... data to create a CLIArgs * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the CLIArgs we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__CLIArgsClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of CLIArgs. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {CLIArgsCountArgs} args - Arguments to filter CLIArgs to count. * @example * // Count the number of CLIArgs * const count = await prisma.cLIArgs.count({ * where: { * // ... the filter for the CLIArgs we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a CLIArgs. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {CLIArgsAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by CLIArgs. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {CLIArgsGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends CLIArgsGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: CLIArgsGroupByArgs['orderBy'] } : { orderBy?: CLIArgsGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetCLIArgsGroupByPayload : Prisma.PrismaPromise /** * Fields of the CLIArgs model */ readonly fields: CLIArgsFieldRefs; } /** * The delegate class that acts as a "Promise-like" for CLIArgs. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__CLIArgsClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the CLIArgs model */ interface CLIArgsFieldRefs { readonly id: FieldRef<"CLIArgs", 'Int'> readonly args: FieldRef<"CLIArgs", 'String'> readonly createdAt: FieldRef<"CLIArgs", 'DateTime'> } // Custom InputTypes /** * CLIArgs findUnique */ export type CLIArgsFindUniqueArgs = { /** * Select specific fields to fetch from the CLIArgs */ select?: CLIArgsSelect | null /** * Filter, which CLIArgs to fetch. */ where: CLIArgsWhereUniqueInput } /** * CLIArgs findUniqueOrThrow */ export type CLIArgsFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the CLIArgs */ select?: CLIArgsSelect | null /** * Filter, which CLIArgs to fetch. */ where: CLIArgsWhereUniqueInput } /** * CLIArgs findFirst */ export type CLIArgsFindFirstArgs = { /** * Select specific fields to fetch from the CLIArgs */ select?: CLIArgsSelect | null /** * Filter, which CLIArgs to fetch. */ where?: CLIArgsWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of CLIArgs to fetch. */ orderBy?: CLIArgsOrderByWithRelationInput | CLIArgsOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for CLIArgs. */ cursor?: CLIArgsWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` CLIArgs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` CLIArgs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of CLIArgs. */ distinct?: CLIArgsScalarFieldEnum | CLIArgsScalarFieldEnum[] } /** * CLIArgs findFirstOrThrow */ export type CLIArgsFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the CLIArgs */ select?: CLIArgsSelect | null /** * Filter, which CLIArgs to fetch. */ where?: CLIArgsWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of CLIArgs to fetch. */ orderBy?: CLIArgsOrderByWithRelationInput | CLIArgsOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for CLIArgs. */ cursor?: CLIArgsWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` CLIArgs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` CLIArgs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of CLIArgs. */ distinct?: CLIArgsScalarFieldEnum | CLIArgsScalarFieldEnum[] } /** * CLIArgs findMany */ export type CLIArgsFindManyArgs = { /** * Select specific fields to fetch from the CLIArgs */ select?: CLIArgsSelect | null /** * Filter, which CLIArgs to fetch. */ where?: CLIArgsWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of CLIArgs to fetch. */ orderBy?: CLIArgsOrderByWithRelationInput | CLIArgsOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing CLIArgs. */ cursor?: CLIArgsWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` CLIArgs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` CLIArgs. */ skip?: number distinct?: CLIArgsScalarFieldEnum | CLIArgsScalarFieldEnum[] } /** * CLIArgs create */ export type CLIArgsCreateArgs = { /** * Select specific fields to fetch from the CLIArgs */ select?: CLIArgsSelect | null /** * The data needed to create a CLIArgs. */ data: XOR } /** * CLIArgs createMany */ export type CLIArgsCreateManyArgs = { /** * The data used to create many CLIArgs. */ data: CLIArgsCreateManyInput | CLIArgsCreateManyInput[] } /** * CLIArgs createManyAndReturn */ export type CLIArgsCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the CLIArgs */ select?: CLIArgsSelectCreateManyAndReturn | null /** * The data used to create many CLIArgs. */ data: CLIArgsCreateManyInput | CLIArgsCreateManyInput[] } /** * CLIArgs update */ export type CLIArgsUpdateArgs = { /** * Select specific fields to fetch from the CLIArgs */ select?: CLIArgsSelect | null /** * The data needed to update a CLIArgs. */ data: XOR /** * Choose, which CLIArgs to update. */ where: CLIArgsWhereUniqueInput } /** * CLIArgs updateMany */ export type CLIArgsUpdateManyArgs = { /** * The data used to update CLIArgs. */ data: XOR /** * Filter which CLIArgs to update */ where?: CLIArgsWhereInput } /** * CLIArgs upsert */ export type CLIArgsUpsertArgs = { /** * Select specific fields to fetch from the CLIArgs */ select?: CLIArgsSelect | null /** * The filter to search for the CLIArgs to update in case it exists. */ where: CLIArgsWhereUniqueInput /** * In case the CLIArgs found by the `where` argument doesn't exist, create a new CLIArgs with this data. */ create: XOR /** * In case the CLIArgs was found with the provided `where` argument, update it with this data. */ update: XOR } /** * CLIArgs delete */ export type CLIArgsDeleteArgs = { /** * Select specific fields to fetch from the CLIArgs */ select?: CLIArgsSelect | null /** * Filter which CLIArgs to delete. */ where: CLIArgsWhereUniqueInput } /** * CLIArgs deleteMany */ export type CLIArgsDeleteManyArgs = { /** * Filter which CLIArgs to delete */ where?: CLIArgsWhereInput } /** * CLIArgs without action */ export type CLIArgsDefaultArgs = { /** * Select specific fields to fetch from the CLIArgs */ select?: CLIArgsSelect | null } /** * Model WebhookConfig */ export type AggregateWebhookConfig = { _count: WebhookConfigCountAggregateOutputType | null _min: WebhookConfigMinAggregateOutputType | null _max: WebhookConfigMaxAggregateOutputType | null } export type WebhookConfigMinAggregateOutputType = { id: string | null url: string | null type: string | null events: string | null active: boolean | null createdAt: Date | null updatedAt: Date | null payloadTemplate: string | null } export type WebhookConfigMaxAggregateOutputType = { id: string | null url: string | null type: string | null events: string | null active: boolean | null createdAt: Date | null updatedAt: Date | null payloadTemplate: string | null } export type WebhookConfigCountAggregateOutputType = { id: number url: number type: number events: number active: number createdAt: number updatedAt: number payloadTemplate: number _all: number } export type WebhookConfigMinAggregateInputType = { id?: true url?: true type?: true events?: true active?: true createdAt?: true updatedAt?: true payloadTemplate?: true } export type WebhookConfigMaxAggregateInputType = { id?: true url?: true type?: true events?: true active?: true createdAt?: true updatedAt?: true payloadTemplate?: true } export type WebhookConfigCountAggregateInputType = { id?: true url?: true type?: true events?: true active?: true createdAt?: true updatedAt?: true payloadTemplate?: true _all?: true } export type WebhookConfigAggregateArgs = { /** * Filter which WebhookConfig to aggregate. */ where?: WebhookConfigWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of WebhookConfigs to fetch. */ orderBy?: WebhookConfigOrderByWithRelationInput | WebhookConfigOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: WebhookConfigWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` WebhookConfigs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` WebhookConfigs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned WebhookConfigs **/ _count?: true | WebhookConfigCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: WebhookConfigMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: WebhookConfigMaxAggregateInputType } export type GetWebhookConfigAggregateType = { [P in keyof T & keyof AggregateWebhookConfig]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type WebhookConfigGroupByArgs = { where?: WebhookConfigWhereInput orderBy?: WebhookConfigOrderByWithAggregationInput | WebhookConfigOrderByWithAggregationInput[] by: WebhookConfigScalarFieldEnum[] | WebhookConfigScalarFieldEnum having?: WebhookConfigScalarWhereWithAggregatesInput take?: number skip?: number _count?: WebhookConfigCountAggregateInputType | true _min?: WebhookConfigMinAggregateInputType _max?: WebhookConfigMaxAggregateInputType } export type WebhookConfigGroupByOutputType = { id: string url: string type: string events: string active: boolean createdAt: Date updatedAt: Date payloadTemplate: string | null _count: WebhookConfigCountAggregateOutputType | null _min: WebhookConfigMinAggregateOutputType | null _max: WebhookConfigMaxAggregateOutputType | null } type GetWebhookConfigGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof WebhookConfigGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type WebhookConfigSelect = $Extensions.GetSelect<{ id?: boolean url?: boolean type?: boolean events?: boolean active?: boolean createdAt?: boolean updatedAt?: boolean payloadTemplate?: boolean }, ExtArgs["result"]["webhookConfig"]> export type WebhookConfigSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean url?: boolean type?: boolean events?: boolean active?: boolean createdAt?: boolean updatedAt?: boolean payloadTemplate?: boolean }, ExtArgs["result"]["webhookConfig"]> export type WebhookConfigSelectScalar = { id?: boolean url?: boolean type?: boolean events?: boolean active?: boolean createdAt?: boolean updatedAt?: boolean payloadTemplate?: boolean } export type $WebhookConfigPayload = { name: "WebhookConfig" objects: {} scalars: $Extensions.GetPayloadResult<{ id: string url: string type: string events: string active: boolean createdAt: Date updatedAt: Date payloadTemplate: string | null }, ExtArgs["result"]["webhookConfig"]> composites: {} } type WebhookConfigGetPayload = $Result.GetResult type WebhookConfigCountArgs = Omit & { select?: WebhookConfigCountAggregateInputType | true } export interface WebhookConfigDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['WebhookConfig'], meta: { name: 'WebhookConfig' } } /** * Find zero or one WebhookConfig that matches the filter. * @param {WebhookConfigFindUniqueArgs} args - Arguments to find a WebhookConfig * @example * // Get one WebhookConfig * const webhookConfig = await prisma.webhookConfig.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__WebhookConfigClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one WebhookConfig that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {WebhookConfigFindUniqueOrThrowArgs} args - Arguments to find a WebhookConfig * @example * // Get one WebhookConfig * const webhookConfig = await prisma.webhookConfig.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__WebhookConfigClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first WebhookConfig that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {WebhookConfigFindFirstArgs} args - Arguments to find a WebhookConfig * @example * // Get one WebhookConfig * const webhookConfig = await prisma.webhookConfig.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__WebhookConfigClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first WebhookConfig that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {WebhookConfigFindFirstOrThrowArgs} args - Arguments to find a WebhookConfig * @example * // Get one WebhookConfig * const webhookConfig = await prisma.webhookConfig.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__WebhookConfigClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more WebhookConfigs that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {WebhookConfigFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all WebhookConfigs * const webhookConfigs = await prisma.webhookConfig.findMany() * * // Get first 10 WebhookConfigs * const webhookConfigs = await prisma.webhookConfig.findMany({ take: 10 }) * * // Only select the `id` * const webhookConfigWithIdOnly = await prisma.webhookConfig.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a WebhookConfig. * @param {WebhookConfigCreateArgs} args - Arguments to create a WebhookConfig. * @example * // Create one WebhookConfig * const WebhookConfig = await prisma.webhookConfig.create({ * data: { * // ... data to create a WebhookConfig * } * }) * */ create(args: SelectSubset>): Prisma__WebhookConfigClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many WebhookConfigs. * @param {WebhookConfigCreateManyArgs} args - Arguments to create many WebhookConfigs. * @example * // Create many WebhookConfigs * const webhookConfig = await prisma.webhookConfig.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many WebhookConfigs and returns the data saved in the database. * @param {WebhookConfigCreateManyAndReturnArgs} args - Arguments to create many WebhookConfigs. * @example * // Create many WebhookConfigs * const webhookConfig = await prisma.webhookConfig.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many WebhookConfigs and only return the `id` * const webhookConfigWithIdOnly = await prisma.webhookConfig.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a WebhookConfig. * @param {WebhookConfigDeleteArgs} args - Arguments to delete one WebhookConfig. * @example * // Delete one WebhookConfig * const WebhookConfig = await prisma.webhookConfig.delete({ * where: { * // ... filter to delete one WebhookConfig * } * }) * */ delete(args: SelectSubset>): Prisma__WebhookConfigClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one WebhookConfig. * @param {WebhookConfigUpdateArgs} args - Arguments to update one WebhookConfig. * @example * // Update one WebhookConfig * const webhookConfig = await prisma.webhookConfig.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__WebhookConfigClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more WebhookConfigs. * @param {WebhookConfigDeleteManyArgs} args - Arguments to filter WebhookConfigs to delete. * @example * // Delete a few WebhookConfigs * const { count } = await prisma.webhookConfig.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more WebhookConfigs. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {WebhookConfigUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many WebhookConfigs * const webhookConfig = await prisma.webhookConfig.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one WebhookConfig. * @param {WebhookConfigUpsertArgs} args - Arguments to update or create a WebhookConfig. * @example * // Update or create a WebhookConfig * const webhookConfig = await prisma.webhookConfig.upsert({ * create: { * // ... data to create a WebhookConfig * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the WebhookConfig we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__WebhookConfigClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of WebhookConfigs. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {WebhookConfigCountArgs} args - Arguments to filter WebhookConfigs to count. * @example * // Count the number of WebhookConfigs * const count = await prisma.webhookConfig.count({ * where: { * // ... the filter for the WebhookConfigs we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a WebhookConfig. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {WebhookConfigAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by WebhookConfig. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {WebhookConfigGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends WebhookConfigGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: WebhookConfigGroupByArgs['orderBy'] } : { orderBy?: WebhookConfigGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetWebhookConfigGroupByPayload : Prisma.PrismaPromise /** * Fields of the WebhookConfig model */ readonly fields: WebhookConfigFieldRefs; } /** * The delegate class that acts as a "Promise-like" for WebhookConfig. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__WebhookConfigClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the WebhookConfig model */ interface WebhookConfigFieldRefs { readonly id: FieldRef<"WebhookConfig", 'String'> readonly url: FieldRef<"WebhookConfig", 'String'> readonly type: FieldRef<"WebhookConfig", 'String'> readonly events: FieldRef<"WebhookConfig", 'String'> readonly active: FieldRef<"WebhookConfig", 'Boolean'> readonly createdAt: FieldRef<"WebhookConfig", 'DateTime'> readonly updatedAt: FieldRef<"WebhookConfig", 'DateTime'> readonly payloadTemplate: FieldRef<"WebhookConfig", 'String'> } // Custom InputTypes /** * WebhookConfig findUnique */ export type WebhookConfigFindUniqueArgs = { /** * Select specific fields to fetch from the WebhookConfig */ select?: WebhookConfigSelect | null /** * Filter, which WebhookConfig to fetch. */ where: WebhookConfigWhereUniqueInput } /** * WebhookConfig findUniqueOrThrow */ export type WebhookConfigFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the WebhookConfig */ select?: WebhookConfigSelect | null /** * Filter, which WebhookConfig to fetch. */ where: WebhookConfigWhereUniqueInput } /** * WebhookConfig findFirst */ export type WebhookConfigFindFirstArgs = { /** * Select specific fields to fetch from the WebhookConfig */ select?: WebhookConfigSelect | null /** * Filter, which WebhookConfig to fetch. */ where?: WebhookConfigWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of WebhookConfigs to fetch. */ orderBy?: WebhookConfigOrderByWithRelationInput | WebhookConfigOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for WebhookConfigs. */ cursor?: WebhookConfigWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` WebhookConfigs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` WebhookConfigs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of WebhookConfigs. */ distinct?: WebhookConfigScalarFieldEnum | WebhookConfigScalarFieldEnum[] } /** * WebhookConfig findFirstOrThrow */ export type WebhookConfigFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the WebhookConfig */ select?: WebhookConfigSelect | null /** * Filter, which WebhookConfig to fetch. */ where?: WebhookConfigWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of WebhookConfigs to fetch. */ orderBy?: WebhookConfigOrderByWithRelationInput | WebhookConfigOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for WebhookConfigs. */ cursor?: WebhookConfigWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` WebhookConfigs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` WebhookConfigs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of WebhookConfigs. */ distinct?: WebhookConfigScalarFieldEnum | WebhookConfigScalarFieldEnum[] } /** * WebhookConfig findMany */ export type WebhookConfigFindManyArgs = { /** * Select specific fields to fetch from the WebhookConfig */ select?: WebhookConfigSelect | null /** * Filter, which WebhookConfigs to fetch. */ where?: WebhookConfigWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of WebhookConfigs to fetch. */ orderBy?: WebhookConfigOrderByWithRelationInput | WebhookConfigOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing WebhookConfigs. */ cursor?: WebhookConfigWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` WebhookConfigs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` WebhookConfigs. */ skip?: number distinct?: WebhookConfigScalarFieldEnum | WebhookConfigScalarFieldEnum[] } /** * WebhookConfig create */ export type WebhookConfigCreateArgs = { /** * Select specific fields to fetch from the WebhookConfig */ select?: WebhookConfigSelect | null /** * The data needed to create a WebhookConfig. */ data: XOR } /** * WebhookConfig createMany */ export type WebhookConfigCreateManyArgs = { /** * The data used to create many WebhookConfigs. */ data: WebhookConfigCreateManyInput | WebhookConfigCreateManyInput[] } /** * WebhookConfig createManyAndReturn */ export type WebhookConfigCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the WebhookConfig */ select?: WebhookConfigSelectCreateManyAndReturn | null /** * The data used to create many WebhookConfigs. */ data: WebhookConfigCreateManyInput | WebhookConfigCreateManyInput[] } /** * WebhookConfig update */ export type WebhookConfigUpdateArgs = { /** * Select specific fields to fetch from the WebhookConfig */ select?: WebhookConfigSelect | null /** * The data needed to update a WebhookConfig. */ data: XOR /** * Choose, which WebhookConfig to update. */ where: WebhookConfigWhereUniqueInput } /** * WebhookConfig updateMany */ export type WebhookConfigUpdateManyArgs = { /** * The data used to update WebhookConfigs. */ data: XOR /** * Filter which WebhookConfigs to update */ where?: WebhookConfigWhereInput } /** * WebhookConfig upsert */ export type WebhookConfigUpsertArgs = { /** * Select specific fields to fetch from the WebhookConfig */ select?: WebhookConfigSelect | null /** * The filter to search for the WebhookConfig to update in case it exists. */ where: WebhookConfigWhereUniqueInput /** * In case the WebhookConfig found by the `where` argument doesn't exist, create a new WebhookConfig with this data. */ create: XOR /** * In case the WebhookConfig was found with the provided `where` argument, update it with this data. */ update: XOR } /** * WebhookConfig delete */ export type WebhookConfigDeleteArgs = { /** * Select specific fields to fetch from the WebhookConfig */ select?: WebhookConfigSelect | null /** * Filter which WebhookConfig to delete. */ where: WebhookConfigWhereUniqueInput } /** * WebhookConfig deleteMany */ export type WebhookConfigDeleteManyArgs = { /** * Filter which WebhookConfigs to delete */ where?: WebhookConfigWhereInput } /** * WebhookConfig without action */ export type WebhookConfigDefaultArgs = { /** * Select specific fields to fetch from the WebhookConfig */ select?: WebhookConfigSelect | null } /** * Model WebConfig */ export type AggregateWebConfig = { _count: WebConfigCountAggregateOutputType | null _min: WebConfigMinAggregateOutputType | null _max: WebConfigMaxAggregateOutputType | null } export type WebConfigMinAggregateOutputType = { id: string | null name: string | null value: string | null createdAt: Date | null updatedAt: Date | null } export type WebConfigMaxAggregateOutputType = { id: string | null name: string | null value: string | null createdAt: Date | null updatedAt: Date | null } export type WebConfigCountAggregateOutputType = { id: number name: number value: number createdAt: number updatedAt: number _all: number } export type WebConfigMinAggregateInputType = { id?: true name?: true value?: true createdAt?: true updatedAt?: true } export type WebConfigMaxAggregateInputType = { id?: true name?: true value?: true createdAt?: true updatedAt?: true } export type WebConfigCountAggregateInputType = { id?: true name?: true value?: true createdAt?: true updatedAt?: true _all?: true } export type WebConfigAggregateArgs = { /** * Filter which WebConfig to aggregate. */ where?: WebConfigWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of WebConfigs to fetch. */ orderBy?: WebConfigOrderByWithRelationInput | WebConfigOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: WebConfigWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` WebConfigs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` WebConfigs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned WebConfigs **/ _count?: true | WebConfigCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: WebConfigMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: WebConfigMaxAggregateInputType } export type GetWebConfigAggregateType = { [P in keyof T & keyof AggregateWebConfig]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type WebConfigGroupByArgs = { where?: WebConfigWhereInput orderBy?: WebConfigOrderByWithAggregationInput | WebConfigOrderByWithAggregationInput[] by: WebConfigScalarFieldEnum[] | WebConfigScalarFieldEnum having?: WebConfigScalarWhereWithAggregatesInput take?: number skip?: number _count?: WebConfigCountAggregateInputType | true _min?: WebConfigMinAggregateInputType _max?: WebConfigMaxAggregateInputType } export type WebConfigGroupByOutputType = { id: string name: string value: string createdAt: Date updatedAt: Date _count: WebConfigCountAggregateOutputType | null _min: WebConfigMinAggregateOutputType | null _max: WebConfigMaxAggregateOutputType | null } type GetWebConfigGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof WebConfigGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type WebConfigSelect = $Extensions.GetSelect<{ id?: boolean name?: boolean value?: boolean createdAt?: boolean updatedAt?: boolean }, ExtArgs["result"]["webConfig"]> export type WebConfigSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean name?: boolean value?: boolean createdAt?: boolean updatedAt?: boolean }, ExtArgs["result"]["webConfig"]> export type WebConfigSelectScalar = { id?: boolean name?: boolean value?: boolean createdAt?: boolean updatedAt?: boolean } export type $WebConfigPayload = { name: "WebConfig" objects: {} scalars: $Extensions.GetPayloadResult<{ id: string name: string value: string createdAt: Date updatedAt: Date }, ExtArgs["result"]["webConfig"]> composites: {} } type WebConfigGetPayload = $Result.GetResult type WebConfigCountArgs = Omit & { select?: WebConfigCountAggregateInputType | true } export interface WebConfigDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['WebConfig'], meta: { name: 'WebConfig' } } /** * Find zero or one WebConfig that matches the filter. * @param {WebConfigFindUniqueArgs} args - Arguments to find a WebConfig * @example * // Get one WebConfig * const webConfig = await prisma.webConfig.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__WebConfigClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one WebConfig that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {WebConfigFindUniqueOrThrowArgs} args - Arguments to find a WebConfig * @example * // Get one WebConfig * const webConfig = await prisma.webConfig.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__WebConfigClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first WebConfig that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {WebConfigFindFirstArgs} args - Arguments to find a WebConfig * @example * // Get one WebConfig * const webConfig = await prisma.webConfig.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__WebConfigClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first WebConfig that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {WebConfigFindFirstOrThrowArgs} args - Arguments to find a WebConfig * @example * // Get one WebConfig * const webConfig = await prisma.webConfig.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__WebConfigClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more WebConfigs that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {WebConfigFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all WebConfigs * const webConfigs = await prisma.webConfig.findMany() * * // Get first 10 WebConfigs * const webConfigs = await prisma.webConfig.findMany({ take: 10 }) * * // Only select the `id` * const webConfigWithIdOnly = await prisma.webConfig.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a WebConfig. * @param {WebConfigCreateArgs} args - Arguments to create a WebConfig. * @example * // Create one WebConfig * const WebConfig = await prisma.webConfig.create({ * data: { * // ... data to create a WebConfig * } * }) * */ create(args: SelectSubset>): Prisma__WebConfigClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many WebConfigs. * @param {WebConfigCreateManyArgs} args - Arguments to create many WebConfigs. * @example * // Create many WebConfigs * const webConfig = await prisma.webConfig.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many WebConfigs and returns the data saved in the database. * @param {WebConfigCreateManyAndReturnArgs} args - Arguments to create many WebConfigs. * @example * // Create many WebConfigs * const webConfig = await prisma.webConfig.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many WebConfigs and only return the `id` * const webConfigWithIdOnly = await prisma.webConfig.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a WebConfig. * @param {WebConfigDeleteArgs} args - Arguments to delete one WebConfig. * @example * // Delete one WebConfig * const WebConfig = await prisma.webConfig.delete({ * where: { * // ... filter to delete one WebConfig * } * }) * */ delete(args: SelectSubset>): Prisma__WebConfigClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one WebConfig. * @param {WebConfigUpdateArgs} args - Arguments to update one WebConfig. * @example * // Update one WebConfig * const webConfig = await prisma.webConfig.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__WebConfigClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more WebConfigs. * @param {WebConfigDeleteManyArgs} args - Arguments to filter WebConfigs to delete. * @example * // Delete a few WebConfigs * const { count } = await prisma.webConfig.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more WebConfigs. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {WebConfigUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many WebConfigs * const webConfig = await prisma.webConfig.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one WebConfig. * @param {WebConfigUpsertArgs} args - Arguments to update or create a WebConfig. * @example * // Update or create a WebConfig * const webConfig = await prisma.webConfig.upsert({ * create: { * // ... data to create a WebConfig * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the WebConfig we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__WebConfigClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of WebConfigs. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {WebConfigCountArgs} args - Arguments to filter WebConfigs to count. * @example * // Count the number of WebConfigs * const count = await prisma.webConfig.count({ * where: { * // ... the filter for the WebConfigs we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a WebConfig. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {WebConfigAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by WebConfig. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {WebConfigGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends WebConfigGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: WebConfigGroupByArgs['orderBy'] } : { orderBy?: WebConfigGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetWebConfigGroupByPayload : Prisma.PrismaPromise /** * Fields of the WebConfig model */ readonly fields: WebConfigFieldRefs; } /** * The delegate class that acts as a "Promise-like" for WebConfig. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__WebConfigClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the WebConfig model */ interface WebConfigFieldRefs { readonly id: FieldRef<"WebConfig", 'String'> readonly name: FieldRef<"WebConfig", 'String'> readonly value: FieldRef<"WebConfig", 'String'> readonly createdAt: FieldRef<"WebConfig", 'DateTime'> readonly updatedAt: FieldRef<"WebConfig", 'DateTime'> } // Custom InputTypes /** * WebConfig findUnique */ export type WebConfigFindUniqueArgs = { /** * Select specific fields to fetch from the WebConfig */ select?: WebConfigSelect | null /** * Filter, which WebConfig to fetch. */ where: WebConfigWhereUniqueInput } /** * WebConfig findUniqueOrThrow */ export type WebConfigFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the WebConfig */ select?: WebConfigSelect | null /** * Filter, which WebConfig to fetch. */ where: WebConfigWhereUniqueInput } /** * WebConfig findFirst */ export type WebConfigFindFirstArgs = { /** * Select specific fields to fetch from the WebConfig */ select?: WebConfigSelect | null /** * Filter, which WebConfig to fetch. */ where?: WebConfigWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of WebConfigs to fetch. */ orderBy?: WebConfigOrderByWithRelationInput | WebConfigOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for WebConfigs. */ cursor?: WebConfigWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` WebConfigs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` WebConfigs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of WebConfigs. */ distinct?: WebConfigScalarFieldEnum | WebConfigScalarFieldEnum[] } /** * WebConfig findFirstOrThrow */ export type WebConfigFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the WebConfig */ select?: WebConfigSelect | null /** * Filter, which WebConfig to fetch. */ where?: WebConfigWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of WebConfigs to fetch. */ orderBy?: WebConfigOrderByWithRelationInput | WebConfigOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for WebConfigs. */ cursor?: WebConfigWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` WebConfigs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` WebConfigs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of WebConfigs. */ distinct?: WebConfigScalarFieldEnum | WebConfigScalarFieldEnum[] } /** * WebConfig findMany */ export type WebConfigFindManyArgs = { /** * Select specific fields to fetch from the WebConfig */ select?: WebConfigSelect | null /** * Filter, which WebConfigs to fetch. */ where?: WebConfigWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of WebConfigs to fetch. */ orderBy?: WebConfigOrderByWithRelationInput | WebConfigOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing WebConfigs. */ cursor?: WebConfigWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` WebConfigs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` WebConfigs. */ skip?: number distinct?: WebConfigScalarFieldEnum | WebConfigScalarFieldEnum[] } /** * WebConfig create */ export type WebConfigCreateArgs = { /** * Select specific fields to fetch from the WebConfig */ select?: WebConfigSelect | null /** * The data needed to create a WebConfig. */ data: XOR } /** * WebConfig createMany */ export type WebConfigCreateManyArgs = { /** * The data used to create many WebConfigs. */ data: WebConfigCreateManyInput | WebConfigCreateManyInput[] } /** * WebConfig createManyAndReturn */ export type WebConfigCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the WebConfig */ select?: WebConfigSelectCreateManyAndReturn | null /** * The data used to create many WebConfigs. */ data: WebConfigCreateManyInput | WebConfigCreateManyInput[] } /** * WebConfig update */ export type WebConfigUpdateArgs = { /** * Select specific fields to fetch from the WebConfig */ select?: WebConfigSelect | null /** * The data needed to update a WebConfig. */ data: XOR /** * Choose, which WebConfig to update. */ where: WebConfigWhereUniqueInput } /** * WebConfig updateMany */ export type WebConfigUpdateManyArgs = { /** * The data used to update WebConfigs. */ data: XOR /** * Filter which WebConfigs to update */ where?: WebConfigWhereInput } /** * WebConfig upsert */ export type WebConfigUpsertArgs = { /** * Select specific fields to fetch from the WebConfig */ select?: WebConfigSelect | null /** * The filter to search for the WebConfig to update in case it exists. */ where: WebConfigWhereUniqueInput /** * In case the WebConfig found by the `where` argument doesn't exist, create a new WebConfig with this data. */ create: XOR /** * In case the WebConfig was found with the provided `where` argument, update it with this data. */ update: XOR } /** * WebConfig delete */ export type WebConfigDeleteArgs = { /** * Select specific fields to fetch from the WebConfig */ select?: WebConfigSelect | null /** * Filter which WebConfig to delete. */ where: WebConfigWhereUniqueInput } /** * WebConfig deleteMany */ export type WebConfigDeleteManyArgs = { /** * Filter which WebConfigs to delete */ where?: WebConfigWhereInput } /** * WebConfig without action */ export type WebConfigDefaultArgs = { /** * Select specific fields to fetch from the WebConfig */ select?: WebConfigSelect | null } /** * Model LocatorEtalon */ export type AggregateLocatorEtalon = { _count: LocatorEtalonCountAggregateOutputType | null _min: LocatorEtalonMinAggregateOutputType | null _max: LocatorEtalonMaxAggregateOutputType | null } export type LocatorEtalonMinAggregateOutputType = { id: string | null selector: string | null strategy: string | null attributes: string | null nodeName: string | null lastSeen: Date | null createdAt: Date | null updatedAt: Date | null } export type LocatorEtalonMaxAggregateOutputType = { id: string | null selector: string | null strategy: string | null attributes: string | null nodeName: string | null lastSeen: Date | null createdAt: Date | null updatedAt: Date | null } export type LocatorEtalonCountAggregateOutputType = { id: number selector: number strategy: number attributes: number nodeName: number lastSeen: number createdAt: number updatedAt: number _all: number } export type LocatorEtalonMinAggregateInputType = { id?: true selector?: true strategy?: true attributes?: true nodeName?: true lastSeen?: true createdAt?: true updatedAt?: true } export type LocatorEtalonMaxAggregateInputType = { id?: true selector?: true strategy?: true attributes?: true nodeName?: true lastSeen?: true createdAt?: true updatedAt?: true } export type LocatorEtalonCountAggregateInputType = { id?: true selector?: true strategy?: true attributes?: true nodeName?: true lastSeen?: true createdAt?: true updatedAt?: true _all?: true } export type LocatorEtalonAggregateArgs = { /** * Filter which LocatorEtalon to aggregate. */ where?: LocatorEtalonWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of LocatorEtalons to fetch. */ orderBy?: LocatorEtalonOrderByWithRelationInput | LocatorEtalonOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: LocatorEtalonWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` LocatorEtalons from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` LocatorEtalons. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned LocatorEtalons **/ _count?: true | LocatorEtalonCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: LocatorEtalonMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: LocatorEtalonMaxAggregateInputType } export type GetLocatorEtalonAggregateType = { [P in keyof T & keyof AggregateLocatorEtalon]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type LocatorEtalonGroupByArgs = { where?: LocatorEtalonWhereInput orderBy?: LocatorEtalonOrderByWithAggregationInput | LocatorEtalonOrderByWithAggregationInput[] by: LocatorEtalonScalarFieldEnum[] | LocatorEtalonScalarFieldEnum having?: LocatorEtalonScalarWhereWithAggregatesInput take?: number skip?: number _count?: LocatorEtalonCountAggregateInputType | true _min?: LocatorEtalonMinAggregateInputType _max?: LocatorEtalonMaxAggregateInputType } export type LocatorEtalonGroupByOutputType = { id: string selector: string strategy: string attributes: string nodeName: string lastSeen: Date createdAt: Date updatedAt: Date _count: LocatorEtalonCountAggregateOutputType | null _min: LocatorEtalonMinAggregateOutputType | null _max: LocatorEtalonMaxAggregateOutputType | null } type GetLocatorEtalonGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof LocatorEtalonGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type LocatorEtalonSelect = $Extensions.GetSelect<{ id?: boolean selector?: boolean strategy?: boolean attributes?: boolean nodeName?: boolean lastSeen?: boolean createdAt?: boolean updatedAt?: boolean }, ExtArgs["result"]["locatorEtalon"]> export type LocatorEtalonSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean selector?: boolean strategy?: boolean attributes?: boolean nodeName?: boolean lastSeen?: boolean createdAt?: boolean updatedAt?: boolean }, ExtArgs["result"]["locatorEtalon"]> export type LocatorEtalonSelectScalar = { id?: boolean selector?: boolean strategy?: boolean attributes?: boolean nodeName?: boolean lastSeen?: boolean createdAt?: boolean updatedAt?: boolean } export type $LocatorEtalonPayload = { name: "LocatorEtalon" objects: {} scalars: $Extensions.GetPayloadResult<{ id: string selector: string strategy: string attributes: string nodeName: string lastSeen: Date createdAt: Date updatedAt: Date }, ExtArgs["result"]["locatorEtalon"]> composites: {} } type LocatorEtalonGetPayload = $Result.GetResult type LocatorEtalonCountArgs = Omit & { select?: LocatorEtalonCountAggregateInputType | true } export interface LocatorEtalonDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['LocatorEtalon'], meta: { name: 'LocatorEtalon' } } /** * Find zero or one LocatorEtalon that matches the filter. * @param {LocatorEtalonFindUniqueArgs} args - Arguments to find a LocatorEtalon * @example * // Get one LocatorEtalon * const locatorEtalon = await prisma.locatorEtalon.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__LocatorEtalonClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one LocatorEtalon that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {LocatorEtalonFindUniqueOrThrowArgs} args - Arguments to find a LocatorEtalon * @example * // Get one LocatorEtalon * const locatorEtalon = await prisma.locatorEtalon.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__LocatorEtalonClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first LocatorEtalon that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LocatorEtalonFindFirstArgs} args - Arguments to find a LocatorEtalon * @example * // Get one LocatorEtalon * const locatorEtalon = await prisma.locatorEtalon.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__LocatorEtalonClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first LocatorEtalon that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LocatorEtalonFindFirstOrThrowArgs} args - Arguments to find a LocatorEtalon * @example * // Get one LocatorEtalon * const locatorEtalon = await prisma.locatorEtalon.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__LocatorEtalonClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more LocatorEtalons that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LocatorEtalonFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all LocatorEtalons * const locatorEtalons = await prisma.locatorEtalon.findMany() * * // Get first 10 LocatorEtalons * const locatorEtalons = await prisma.locatorEtalon.findMany({ take: 10 }) * * // Only select the `id` * const locatorEtalonWithIdOnly = await prisma.locatorEtalon.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a LocatorEtalon. * @param {LocatorEtalonCreateArgs} args - Arguments to create a LocatorEtalon. * @example * // Create one LocatorEtalon * const LocatorEtalon = await prisma.locatorEtalon.create({ * data: { * // ... data to create a LocatorEtalon * } * }) * */ create(args: SelectSubset>): Prisma__LocatorEtalonClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many LocatorEtalons. * @param {LocatorEtalonCreateManyArgs} args - Arguments to create many LocatorEtalons. * @example * // Create many LocatorEtalons * const locatorEtalon = await prisma.locatorEtalon.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many LocatorEtalons and returns the data saved in the database. * @param {LocatorEtalonCreateManyAndReturnArgs} args - Arguments to create many LocatorEtalons. * @example * // Create many LocatorEtalons * const locatorEtalon = await prisma.locatorEtalon.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many LocatorEtalons and only return the `id` * const locatorEtalonWithIdOnly = await prisma.locatorEtalon.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a LocatorEtalon. * @param {LocatorEtalonDeleteArgs} args - Arguments to delete one LocatorEtalon. * @example * // Delete one LocatorEtalon * const LocatorEtalon = await prisma.locatorEtalon.delete({ * where: { * // ... filter to delete one LocatorEtalon * } * }) * */ delete(args: SelectSubset>): Prisma__LocatorEtalonClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one LocatorEtalon. * @param {LocatorEtalonUpdateArgs} args - Arguments to update one LocatorEtalon. * @example * // Update one LocatorEtalon * const locatorEtalon = await prisma.locatorEtalon.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__LocatorEtalonClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more LocatorEtalons. * @param {LocatorEtalonDeleteManyArgs} args - Arguments to filter LocatorEtalons to delete. * @example * // Delete a few LocatorEtalons * const { count } = await prisma.locatorEtalon.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more LocatorEtalons. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LocatorEtalonUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many LocatorEtalons * const locatorEtalon = await prisma.locatorEtalon.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one LocatorEtalon. * @param {LocatorEtalonUpsertArgs} args - Arguments to update or create a LocatorEtalon. * @example * // Update or create a LocatorEtalon * const locatorEtalon = await prisma.locatorEtalon.upsert({ * create: { * // ... data to create a LocatorEtalon * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the LocatorEtalon we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__LocatorEtalonClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of LocatorEtalons. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LocatorEtalonCountArgs} args - Arguments to filter LocatorEtalons to count. * @example * // Count the number of LocatorEtalons * const count = await prisma.locatorEtalon.count({ * where: { * // ... the filter for the LocatorEtalons we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a LocatorEtalon. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LocatorEtalonAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by LocatorEtalon. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LocatorEtalonGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends LocatorEtalonGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: LocatorEtalonGroupByArgs['orderBy'] } : { orderBy?: LocatorEtalonGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetLocatorEtalonGroupByPayload : Prisma.PrismaPromise /** * Fields of the LocatorEtalon model */ readonly fields: LocatorEtalonFieldRefs; } /** * The delegate class that acts as a "Promise-like" for LocatorEtalon. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__LocatorEtalonClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the LocatorEtalon model */ interface LocatorEtalonFieldRefs { readonly id: FieldRef<"LocatorEtalon", 'String'> readonly selector: FieldRef<"LocatorEtalon", 'String'> readonly strategy: FieldRef<"LocatorEtalon", 'String'> readonly attributes: FieldRef<"LocatorEtalon", 'String'> readonly nodeName: FieldRef<"LocatorEtalon", 'String'> readonly lastSeen: FieldRef<"LocatorEtalon", 'DateTime'> readonly createdAt: FieldRef<"LocatorEtalon", 'DateTime'> readonly updatedAt: FieldRef<"LocatorEtalon", 'DateTime'> } // Custom InputTypes /** * LocatorEtalon findUnique */ export type LocatorEtalonFindUniqueArgs = { /** * Select specific fields to fetch from the LocatorEtalon */ select?: LocatorEtalonSelect | null /** * Filter, which LocatorEtalon to fetch. */ where: LocatorEtalonWhereUniqueInput } /** * LocatorEtalon findUniqueOrThrow */ export type LocatorEtalonFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the LocatorEtalon */ select?: LocatorEtalonSelect | null /** * Filter, which LocatorEtalon to fetch. */ where: LocatorEtalonWhereUniqueInput } /** * LocatorEtalon findFirst */ export type LocatorEtalonFindFirstArgs = { /** * Select specific fields to fetch from the LocatorEtalon */ select?: LocatorEtalonSelect | null /** * Filter, which LocatorEtalon to fetch. */ where?: LocatorEtalonWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of LocatorEtalons to fetch. */ orderBy?: LocatorEtalonOrderByWithRelationInput | LocatorEtalonOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for LocatorEtalons. */ cursor?: LocatorEtalonWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` LocatorEtalons from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` LocatorEtalons. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of LocatorEtalons. */ distinct?: LocatorEtalonScalarFieldEnum | LocatorEtalonScalarFieldEnum[] } /** * LocatorEtalon findFirstOrThrow */ export type LocatorEtalonFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the LocatorEtalon */ select?: LocatorEtalonSelect | null /** * Filter, which LocatorEtalon to fetch. */ where?: LocatorEtalonWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of LocatorEtalons to fetch. */ orderBy?: LocatorEtalonOrderByWithRelationInput | LocatorEtalonOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for LocatorEtalons. */ cursor?: LocatorEtalonWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` LocatorEtalons from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` LocatorEtalons. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of LocatorEtalons. */ distinct?: LocatorEtalonScalarFieldEnum | LocatorEtalonScalarFieldEnum[] } /** * LocatorEtalon findMany */ export type LocatorEtalonFindManyArgs = { /** * Select specific fields to fetch from the LocatorEtalon */ select?: LocatorEtalonSelect | null /** * Filter, which LocatorEtalons to fetch. */ where?: LocatorEtalonWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of LocatorEtalons to fetch. */ orderBy?: LocatorEtalonOrderByWithRelationInput | LocatorEtalonOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing LocatorEtalons. */ cursor?: LocatorEtalonWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` LocatorEtalons from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` LocatorEtalons. */ skip?: number distinct?: LocatorEtalonScalarFieldEnum | LocatorEtalonScalarFieldEnum[] } /** * LocatorEtalon create */ export type LocatorEtalonCreateArgs = { /** * Select specific fields to fetch from the LocatorEtalon */ select?: LocatorEtalonSelect | null /** * The data needed to create a LocatorEtalon. */ data: XOR } /** * LocatorEtalon createMany */ export type LocatorEtalonCreateManyArgs = { /** * The data used to create many LocatorEtalons. */ data: LocatorEtalonCreateManyInput | LocatorEtalonCreateManyInput[] } /** * LocatorEtalon createManyAndReturn */ export type LocatorEtalonCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the LocatorEtalon */ select?: LocatorEtalonSelectCreateManyAndReturn | null /** * The data used to create many LocatorEtalons. */ data: LocatorEtalonCreateManyInput | LocatorEtalonCreateManyInput[] } /** * LocatorEtalon update */ export type LocatorEtalonUpdateArgs = { /** * Select specific fields to fetch from the LocatorEtalon */ select?: LocatorEtalonSelect | null /** * The data needed to update a LocatorEtalon. */ data: XOR /** * Choose, which LocatorEtalon to update. */ where: LocatorEtalonWhereUniqueInput } /** * LocatorEtalon updateMany */ export type LocatorEtalonUpdateManyArgs = { /** * The data used to update LocatorEtalons. */ data: XOR /** * Filter which LocatorEtalons to update */ where?: LocatorEtalonWhereInput } /** * LocatorEtalon upsert */ export type LocatorEtalonUpsertArgs = { /** * Select specific fields to fetch from the LocatorEtalon */ select?: LocatorEtalonSelect | null /** * The filter to search for the LocatorEtalon to update in case it exists. */ where: LocatorEtalonWhereUniqueInput /** * In case the LocatorEtalon found by the `where` argument doesn't exist, create a new LocatorEtalon with this data. */ create: XOR /** * In case the LocatorEtalon was found with the provided `where` argument, update it with this data. */ update: XOR } /** * LocatorEtalon delete */ export type LocatorEtalonDeleteArgs = { /** * Select specific fields to fetch from the LocatorEtalon */ select?: LocatorEtalonSelect | null /** * Filter which LocatorEtalon to delete. */ where: LocatorEtalonWhereUniqueInput } /** * LocatorEtalon deleteMany */ export type LocatorEtalonDeleteManyArgs = { /** * Filter which LocatorEtalons to delete */ where?: LocatorEtalonWhereInput } /** * LocatorEtalon without action */ export type LocatorEtalonDefaultArgs = { /** * Select specific fields to fetch from the LocatorEtalon */ select?: LocatorEtalonSelect | null } /** * Model PortLease */ export type AggregatePortLease = { _count: PortLeaseCountAggregateOutputType | null _avg: PortLeaseAvgAggregateOutputType | null _sum: PortLeaseSumAggregateOutputType | null _min: PortLeaseMinAggregateOutputType | null _max: PortLeaseMaxAggregateOutputType | null } export type PortLeaseAvgAggregateOutputType = { port: number | null leasedToPid: number | null leasedAt: number | null expiresAt: number | null } export type PortLeaseSumAggregateOutputType = { port: number | null leasedToPid: number | null leasedAt: number | null expiresAt: number | null } export type PortLeaseMinAggregateOutputType = { port: number | null purpose: string | null leasedToUdid: string | null leasedToHost: string | null leaseId: string | null leasedToPid: number | null leasedAt: number | null expiresAt: number | null } export type PortLeaseMaxAggregateOutputType = { port: number | null purpose: string | null leasedToUdid: string | null leasedToHost: string | null leaseId: string | null leasedToPid: number | null leasedAt: number | null expiresAt: number | null } export type PortLeaseCountAggregateOutputType = { port: number purpose: number leasedToUdid: number leasedToHost: number leaseId: number leasedToPid: number leasedAt: number expiresAt: number _all: number } export type PortLeaseAvgAggregateInputType = { port?: true leasedToPid?: true leasedAt?: true expiresAt?: true } export type PortLeaseSumAggregateInputType = { port?: true leasedToPid?: true leasedAt?: true expiresAt?: true } export type PortLeaseMinAggregateInputType = { port?: true purpose?: true leasedToUdid?: true leasedToHost?: true leaseId?: true leasedToPid?: true leasedAt?: true expiresAt?: true } export type PortLeaseMaxAggregateInputType = { port?: true purpose?: true leasedToUdid?: true leasedToHost?: true leaseId?: true leasedToPid?: true leasedAt?: true expiresAt?: true } export type PortLeaseCountAggregateInputType = { port?: true purpose?: true leasedToUdid?: true leasedToHost?: true leaseId?: true leasedToPid?: true leasedAt?: true expiresAt?: true _all?: true } export type PortLeaseAggregateArgs = { /** * Filter which PortLease to aggregate. */ where?: PortLeaseWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of PortLeases to fetch. */ orderBy?: PortLeaseOrderByWithRelationInput | PortLeaseOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: PortLeaseWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` PortLeases from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` PortLeases. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned PortLeases **/ _count?: true | PortLeaseCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: PortLeaseAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: PortLeaseSumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: PortLeaseMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: PortLeaseMaxAggregateInputType } export type GetPortLeaseAggregateType = { [P in keyof T & keyof AggregatePortLease]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type PortLeaseGroupByArgs = { where?: PortLeaseWhereInput orderBy?: PortLeaseOrderByWithAggregationInput | PortLeaseOrderByWithAggregationInput[] by: PortLeaseScalarFieldEnum[] | PortLeaseScalarFieldEnum having?: PortLeaseScalarWhereWithAggregatesInput take?: number skip?: number _count?: PortLeaseCountAggregateInputType | true _avg?: PortLeaseAvgAggregateInputType _sum?: PortLeaseSumAggregateInputType _min?: PortLeaseMinAggregateInputType _max?: PortLeaseMaxAggregateInputType } export type PortLeaseGroupByOutputType = { port: number purpose: string leasedToUdid: string leasedToHost: string leaseId: string | null leasedToPid: number | null leasedAt: number expiresAt: number _count: PortLeaseCountAggregateOutputType | null _avg: PortLeaseAvgAggregateOutputType | null _sum: PortLeaseSumAggregateOutputType | null _min: PortLeaseMinAggregateOutputType | null _max: PortLeaseMaxAggregateOutputType | null } type GetPortLeaseGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof PortLeaseGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type PortLeaseSelect = $Extensions.GetSelect<{ port?: boolean purpose?: boolean leasedToUdid?: boolean leasedToHost?: boolean leaseId?: boolean leasedToPid?: boolean leasedAt?: boolean expiresAt?: boolean }, ExtArgs["result"]["portLease"]> export type PortLeaseSelectCreateManyAndReturn = $Extensions.GetSelect<{ port?: boolean purpose?: boolean leasedToUdid?: boolean leasedToHost?: boolean leaseId?: boolean leasedToPid?: boolean leasedAt?: boolean expiresAt?: boolean }, ExtArgs["result"]["portLease"]> export type PortLeaseSelectScalar = { port?: boolean purpose?: boolean leasedToUdid?: boolean leasedToHost?: boolean leaseId?: boolean leasedToPid?: boolean leasedAt?: boolean expiresAt?: boolean } export type $PortLeasePayload = { name: "PortLease" objects: {} scalars: $Extensions.GetPayloadResult<{ port: number purpose: string leasedToUdid: string leasedToHost: string leaseId: string | null leasedToPid: number | null leasedAt: number expiresAt: number }, ExtArgs["result"]["portLease"]> composites: {} } type PortLeaseGetPayload = $Result.GetResult type PortLeaseCountArgs = Omit & { select?: PortLeaseCountAggregateInputType | true } export interface PortLeaseDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['PortLease'], meta: { name: 'PortLease' } } /** * Find zero or one PortLease that matches the filter. * @param {PortLeaseFindUniqueArgs} args - Arguments to find a PortLease * @example * // Get one PortLease * const portLease = await prisma.portLease.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__PortLeaseClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one PortLease that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {PortLeaseFindUniqueOrThrowArgs} args - Arguments to find a PortLease * @example * // Get one PortLease * const portLease = await prisma.portLease.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__PortLeaseClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first PortLease that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PortLeaseFindFirstArgs} args - Arguments to find a PortLease * @example * // Get one PortLease * const portLease = await prisma.portLease.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__PortLeaseClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first PortLease that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PortLeaseFindFirstOrThrowArgs} args - Arguments to find a PortLease * @example * // Get one PortLease * const portLease = await prisma.portLease.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__PortLeaseClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more PortLeases that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PortLeaseFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all PortLeases * const portLeases = await prisma.portLease.findMany() * * // Get first 10 PortLeases * const portLeases = await prisma.portLease.findMany({ take: 10 }) * * // Only select the `port` * const portLeaseWithPortOnly = await prisma.portLease.findMany({ select: { port: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a PortLease. * @param {PortLeaseCreateArgs} args - Arguments to create a PortLease. * @example * // Create one PortLease * const PortLease = await prisma.portLease.create({ * data: { * // ... data to create a PortLease * } * }) * */ create(args: SelectSubset>): Prisma__PortLeaseClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many PortLeases. * @param {PortLeaseCreateManyArgs} args - Arguments to create many PortLeases. * @example * // Create many PortLeases * const portLease = await prisma.portLease.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many PortLeases and returns the data saved in the database. * @param {PortLeaseCreateManyAndReturnArgs} args - Arguments to create many PortLeases. * @example * // Create many PortLeases * const portLease = await prisma.portLease.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many PortLeases and only return the `port` * const portLeaseWithPortOnly = await prisma.portLease.createManyAndReturn({ * select: { port: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a PortLease. * @param {PortLeaseDeleteArgs} args - Arguments to delete one PortLease. * @example * // Delete one PortLease * const PortLease = await prisma.portLease.delete({ * where: { * // ... filter to delete one PortLease * } * }) * */ delete(args: SelectSubset>): Prisma__PortLeaseClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one PortLease. * @param {PortLeaseUpdateArgs} args - Arguments to update one PortLease. * @example * // Update one PortLease * const portLease = await prisma.portLease.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__PortLeaseClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more PortLeases. * @param {PortLeaseDeleteManyArgs} args - Arguments to filter PortLeases to delete. * @example * // Delete a few PortLeases * const { count } = await prisma.portLease.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more PortLeases. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PortLeaseUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many PortLeases * const portLease = await prisma.portLease.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one PortLease. * @param {PortLeaseUpsertArgs} args - Arguments to update or create a PortLease. * @example * // Update or create a PortLease * const portLease = await prisma.portLease.upsert({ * create: { * // ... data to create a PortLease * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the PortLease we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__PortLeaseClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of PortLeases. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PortLeaseCountArgs} args - Arguments to filter PortLeases to count. * @example * // Count the number of PortLeases * const count = await prisma.portLease.count({ * where: { * // ... the filter for the PortLeases we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a PortLease. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PortLeaseAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by PortLease. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PortLeaseGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends PortLeaseGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: PortLeaseGroupByArgs['orderBy'] } : { orderBy?: PortLeaseGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetPortLeaseGroupByPayload : Prisma.PrismaPromise /** * Fields of the PortLease model */ readonly fields: PortLeaseFieldRefs; } /** * The delegate class that acts as a "Promise-like" for PortLease. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__PortLeaseClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the PortLease model */ interface PortLeaseFieldRefs { readonly port: FieldRef<"PortLease", 'Int'> readonly purpose: FieldRef<"PortLease", 'String'> readonly leasedToUdid: FieldRef<"PortLease", 'String'> readonly leasedToHost: FieldRef<"PortLease", 'String'> readonly leaseId: FieldRef<"PortLease", 'String'> readonly leasedToPid: FieldRef<"PortLease", 'Int'> readonly leasedAt: FieldRef<"PortLease", 'Float'> readonly expiresAt: FieldRef<"PortLease", 'Float'> } // Custom InputTypes /** * PortLease findUnique */ export type PortLeaseFindUniqueArgs = { /** * Select specific fields to fetch from the PortLease */ select?: PortLeaseSelect | null /** * Filter, which PortLease to fetch. */ where: PortLeaseWhereUniqueInput } /** * PortLease findUniqueOrThrow */ export type PortLeaseFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the PortLease */ select?: PortLeaseSelect | null /** * Filter, which PortLease to fetch. */ where: PortLeaseWhereUniqueInput } /** * PortLease findFirst */ export type PortLeaseFindFirstArgs = { /** * Select specific fields to fetch from the PortLease */ select?: PortLeaseSelect | null /** * Filter, which PortLease to fetch. */ where?: PortLeaseWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of PortLeases to fetch. */ orderBy?: PortLeaseOrderByWithRelationInput | PortLeaseOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for PortLeases. */ cursor?: PortLeaseWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` PortLeases from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` PortLeases. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of PortLeases. */ distinct?: PortLeaseScalarFieldEnum | PortLeaseScalarFieldEnum[] } /** * PortLease findFirstOrThrow */ export type PortLeaseFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the PortLease */ select?: PortLeaseSelect | null /** * Filter, which PortLease to fetch. */ where?: PortLeaseWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of PortLeases to fetch. */ orderBy?: PortLeaseOrderByWithRelationInput | PortLeaseOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for PortLeases. */ cursor?: PortLeaseWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` PortLeases from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` PortLeases. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of PortLeases. */ distinct?: PortLeaseScalarFieldEnum | PortLeaseScalarFieldEnum[] } /** * PortLease findMany */ export type PortLeaseFindManyArgs = { /** * Select specific fields to fetch from the PortLease */ select?: PortLeaseSelect | null /** * Filter, which PortLeases to fetch. */ where?: PortLeaseWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of PortLeases to fetch. */ orderBy?: PortLeaseOrderByWithRelationInput | PortLeaseOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing PortLeases. */ cursor?: PortLeaseWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` PortLeases from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` PortLeases. */ skip?: number distinct?: PortLeaseScalarFieldEnum | PortLeaseScalarFieldEnum[] } /** * PortLease create */ export type PortLeaseCreateArgs = { /** * Select specific fields to fetch from the PortLease */ select?: PortLeaseSelect | null /** * The data needed to create a PortLease. */ data: XOR } /** * PortLease createMany */ export type PortLeaseCreateManyArgs = { /** * The data used to create many PortLeases. */ data: PortLeaseCreateManyInput | PortLeaseCreateManyInput[] } /** * PortLease createManyAndReturn */ export type PortLeaseCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the PortLease */ select?: PortLeaseSelectCreateManyAndReturn | null /** * The data used to create many PortLeases. */ data: PortLeaseCreateManyInput | PortLeaseCreateManyInput[] } /** * PortLease update */ export type PortLeaseUpdateArgs = { /** * Select specific fields to fetch from the PortLease */ select?: PortLeaseSelect | null /** * The data needed to update a PortLease. */ data: XOR /** * Choose, which PortLease to update. */ where: PortLeaseWhereUniqueInput } /** * PortLease updateMany */ export type PortLeaseUpdateManyArgs = { /** * The data used to update PortLeases. */ data: XOR /** * Filter which PortLeases to update */ where?: PortLeaseWhereInput } /** * PortLease upsert */ export type PortLeaseUpsertArgs = { /** * Select specific fields to fetch from the PortLease */ select?: PortLeaseSelect | null /** * The filter to search for the PortLease to update in case it exists. */ where: PortLeaseWhereUniqueInput /** * In case the PortLease found by the `where` argument doesn't exist, create a new PortLease with this data. */ create: XOR /** * In case the PortLease was found with the provided `where` argument, update it with this data. */ update: XOR } /** * PortLease delete */ export type PortLeaseDeleteArgs = { /** * Select specific fields to fetch from the PortLease */ select?: PortLeaseSelect | null /** * Filter which PortLease to delete. */ where: PortLeaseWhereUniqueInput } /** * PortLease deleteMany */ export type PortLeaseDeleteManyArgs = { /** * Filter which PortLeases to delete */ where?: PortLeaseWhereInput } /** * PortLease without action */ export type PortLeaseDefaultArgs = { /** * Select specific fields to fetch from the PortLease */ select?: PortLeaseSelect | null } /** * Model Lease */ export type AggregateLease = { _count: LeaseCountAggregateOutputType | null _avg: LeaseAvgAggregateOutputType | null _sum: LeaseSumAggregateOutputType | null _min: LeaseMinAggregateOutputType | null _max: LeaseMaxAggregateOutputType | null } export type LeaseAvgAggregateOutputType = { expiresAt: number | null heartbeatSeconds: number | null lastHeartbeatAt: number | null } export type LeaseSumAggregateOutputType = { expiresAt: number | null heartbeatSeconds: number | null lastHeartbeatAt: number | null } export type LeaseMinAggregateOutputType = { id: string | null tokenHash: string | null deviceUdid: string | null deviceHost: string | null actorId: string | null teamId: string | null buildId: string | null reason: string | null status: string | null createdAt: Date | null expiresAt: number | null heartbeatSeconds: number | null lastHeartbeatAt: number | null allocatedPorts: string | null capabilityBag: string | null } export type LeaseMaxAggregateOutputType = { id: string | null tokenHash: string | null deviceUdid: string | null deviceHost: string | null actorId: string | null teamId: string | null buildId: string | null reason: string | null status: string | null createdAt: Date | null expiresAt: number | null heartbeatSeconds: number | null lastHeartbeatAt: number | null allocatedPorts: string | null capabilityBag: string | null } export type LeaseCountAggregateOutputType = { id: number tokenHash: number deviceUdid: number deviceHost: number actorId: number teamId: number buildId: number reason: number status: number createdAt: number expiresAt: number heartbeatSeconds: number lastHeartbeatAt: number allocatedPorts: number capabilityBag: number _all: number } export type LeaseAvgAggregateInputType = { expiresAt?: true heartbeatSeconds?: true lastHeartbeatAt?: true } export type LeaseSumAggregateInputType = { expiresAt?: true heartbeatSeconds?: true lastHeartbeatAt?: true } export type LeaseMinAggregateInputType = { id?: true tokenHash?: true deviceUdid?: true deviceHost?: true actorId?: true teamId?: true buildId?: true reason?: true status?: true createdAt?: true expiresAt?: true heartbeatSeconds?: true lastHeartbeatAt?: true allocatedPorts?: true capabilityBag?: true } export type LeaseMaxAggregateInputType = { id?: true tokenHash?: true deviceUdid?: true deviceHost?: true actorId?: true teamId?: true buildId?: true reason?: true status?: true createdAt?: true expiresAt?: true heartbeatSeconds?: true lastHeartbeatAt?: true allocatedPorts?: true capabilityBag?: true } export type LeaseCountAggregateInputType = { id?: true tokenHash?: true deviceUdid?: true deviceHost?: true actorId?: true teamId?: true buildId?: true reason?: true status?: true createdAt?: true expiresAt?: true heartbeatSeconds?: true lastHeartbeatAt?: true allocatedPorts?: true capabilityBag?: true _all?: true } export type LeaseAggregateArgs = { /** * Filter which Lease to aggregate. */ where?: LeaseWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Leases to fetch. */ orderBy?: LeaseOrderByWithRelationInput | LeaseOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: LeaseWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Leases from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Leases. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Leases **/ _count?: true | LeaseCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: LeaseAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: LeaseSumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: LeaseMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: LeaseMaxAggregateInputType } export type GetLeaseAggregateType = { [P in keyof T & keyof AggregateLease]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type LeaseGroupByArgs = { where?: LeaseWhereInput orderBy?: LeaseOrderByWithAggregationInput | LeaseOrderByWithAggregationInput[] by: LeaseScalarFieldEnum[] | LeaseScalarFieldEnum having?: LeaseScalarWhereWithAggregatesInput take?: number skip?: number _count?: LeaseCountAggregateInputType | true _avg?: LeaseAvgAggregateInputType _sum?: LeaseSumAggregateInputType _min?: LeaseMinAggregateInputType _max?: LeaseMaxAggregateInputType } export type LeaseGroupByOutputType = { id: string tokenHash: string deviceUdid: string deviceHost: string actorId: string teamId: string | null buildId: string | null reason: string | null status: string createdAt: Date expiresAt: number heartbeatSeconds: number lastHeartbeatAt: number allocatedPorts: string capabilityBag: string _count: LeaseCountAggregateOutputType | null _avg: LeaseAvgAggregateOutputType | null _sum: LeaseSumAggregateOutputType | null _min: LeaseMinAggregateOutputType | null _max: LeaseMaxAggregateOutputType | null } type GetLeaseGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof LeaseGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type LeaseSelect = $Extensions.GetSelect<{ id?: boolean tokenHash?: boolean deviceUdid?: boolean deviceHost?: boolean actorId?: boolean teamId?: boolean buildId?: boolean reason?: boolean status?: boolean createdAt?: boolean expiresAt?: boolean heartbeatSeconds?: boolean lastHeartbeatAt?: boolean allocatedPorts?: boolean capabilityBag?: boolean }, ExtArgs["result"]["lease"]> export type LeaseSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean tokenHash?: boolean deviceUdid?: boolean deviceHost?: boolean actorId?: boolean teamId?: boolean buildId?: boolean reason?: boolean status?: boolean createdAt?: boolean expiresAt?: boolean heartbeatSeconds?: boolean lastHeartbeatAt?: boolean allocatedPorts?: boolean capabilityBag?: boolean }, ExtArgs["result"]["lease"]> export type LeaseSelectScalar = { id?: boolean tokenHash?: boolean deviceUdid?: boolean deviceHost?: boolean actorId?: boolean teamId?: boolean buildId?: boolean reason?: boolean status?: boolean createdAt?: boolean expiresAt?: boolean heartbeatSeconds?: boolean lastHeartbeatAt?: boolean allocatedPorts?: boolean capabilityBag?: boolean } export type $LeasePayload = { name: "Lease" objects: {} scalars: $Extensions.GetPayloadResult<{ id: string tokenHash: string deviceUdid: string deviceHost: string actorId: string teamId: string | null buildId: string | null reason: string | null status: string createdAt: Date expiresAt: number heartbeatSeconds: number lastHeartbeatAt: number allocatedPorts: string capabilityBag: string }, ExtArgs["result"]["lease"]> composites: {} } type LeaseGetPayload = $Result.GetResult type LeaseCountArgs = Omit & { select?: LeaseCountAggregateInputType | true } export interface LeaseDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['Lease'], meta: { name: 'Lease' } } /** * Find zero or one Lease that matches the filter. * @param {LeaseFindUniqueArgs} args - Arguments to find a Lease * @example * // Get one Lease * const lease = await prisma.lease.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__LeaseClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one Lease that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {LeaseFindUniqueOrThrowArgs} args - Arguments to find a Lease * @example * // Get one Lease * const lease = await prisma.lease.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__LeaseClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first Lease that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LeaseFindFirstArgs} args - Arguments to find a Lease * @example * // Get one Lease * const lease = await prisma.lease.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__LeaseClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first Lease that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LeaseFindFirstOrThrowArgs} args - Arguments to find a Lease * @example * // Get one Lease * const lease = await prisma.lease.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__LeaseClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more Leases that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LeaseFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Leases * const leases = await prisma.lease.findMany() * * // Get first 10 Leases * const leases = await prisma.lease.findMany({ take: 10 }) * * // Only select the `id` * const leaseWithIdOnly = await prisma.lease.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a Lease. * @param {LeaseCreateArgs} args - Arguments to create a Lease. * @example * // Create one Lease * const Lease = await prisma.lease.create({ * data: { * // ... data to create a Lease * } * }) * */ create(args: SelectSubset>): Prisma__LeaseClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many Leases. * @param {LeaseCreateManyArgs} args - Arguments to create many Leases. * @example * // Create many Leases * const lease = await prisma.lease.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many Leases and returns the data saved in the database. * @param {LeaseCreateManyAndReturnArgs} args - Arguments to create many Leases. * @example * // Create many Leases * const lease = await prisma.lease.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many Leases and only return the `id` * const leaseWithIdOnly = await prisma.lease.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a Lease. * @param {LeaseDeleteArgs} args - Arguments to delete one Lease. * @example * // Delete one Lease * const Lease = await prisma.lease.delete({ * where: { * // ... filter to delete one Lease * } * }) * */ delete(args: SelectSubset>): Prisma__LeaseClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one Lease. * @param {LeaseUpdateArgs} args - Arguments to update one Lease. * @example * // Update one Lease * const lease = await prisma.lease.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__LeaseClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more Leases. * @param {LeaseDeleteManyArgs} args - Arguments to filter Leases to delete. * @example * // Delete a few Leases * const { count } = await prisma.lease.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Leases. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LeaseUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Leases * const lease = await prisma.lease.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one Lease. * @param {LeaseUpsertArgs} args - Arguments to update or create a Lease. * @example * // Update or create a Lease * const lease = await prisma.lease.upsert({ * create: { * // ... data to create a Lease * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the Lease we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__LeaseClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of Leases. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LeaseCountArgs} args - Arguments to filter Leases to count. * @example * // Count the number of Leases * const count = await prisma.lease.count({ * where: { * // ... the filter for the Leases we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a Lease. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LeaseAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by Lease. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {LeaseGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends LeaseGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: LeaseGroupByArgs['orderBy'] } : { orderBy?: LeaseGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetLeaseGroupByPayload : Prisma.PrismaPromise /** * Fields of the Lease model */ readonly fields: LeaseFieldRefs; } /** * The delegate class that acts as a "Promise-like" for Lease. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__LeaseClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the Lease model */ interface LeaseFieldRefs { readonly id: FieldRef<"Lease", 'String'> readonly tokenHash: FieldRef<"Lease", 'String'> readonly deviceUdid: FieldRef<"Lease", 'String'> readonly deviceHost: FieldRef<"Lease", 'String'> readonly actorId: FieldRef<"Lease", 'String'> readonly teamId: FieldRef<"Lease", 'String'> readonly buildId: FieldRef<"Lease", 'String'> readonly reason: FieldRef<"Lease", 'String'> readonly status: FieldRef<"Lease", 'String'> readonly createdAt: FieldRef<"Lease", 'DateTime'> readonly expiresAt: FieldRef<"Lease", 'Float'> readonly heartbeatSeconds: FieldRef<"Lease", 'Int'> readonly lastHeartbeatAt: FieldRef<"Lease", 'Float'> readonly allocatedPorts: FieldRef<"Lease", 'String'> readonly capabilityBag: FieldRef<"Lease", 'String'> } // Custom InputTypes /** * Lease findUnique */ export type LeaseFindUniqueArgs = { /** * Select specific fields to fetch from the Lease */ select?: LeaseSelect | null /** * Filter, which Lease to fetch. */ where: LeaseWhereUniqueInput } /** * Lease findUniqueOrThrow */ export type LeaseFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the Lease */ select?: LeaseSelect | null /** * Filter, which Lease to fetch. */ where: LeaseWhereUniqueInput } /** * Lease findFirst */ export type LeaseFindFirstArgs = { /** * Select specific fields to fetch from the Lease */ select?: LeaseSelect | null /** * Filter, which Lease to fetch. */ where?: LeaseWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Leases to fetch. */ orderBy?: LeaseOrderByWithRelationInput | LeaseOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Leases. */ cursor?: LeaseWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Leases from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Leases. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Leases. */ distinct?: LeaseScalarFieldEnum | LeaseScalarFieldEnum[] } /** * Lease findFirstOrThrow */ export type LeaseFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the Lease */ select?: LeaseSelect | null /** * Filter, which Lease to fetch. */ where?: LeaseWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Leases to fetch. */ orderBy?: LeaseOrderByWithRelationInput | LeaseOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Leases. */ cursor?: LeaseWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Leases from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Leases. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Leases. */ distinct?: LeaseScalarFieldEnum | LeaseScalarFieldEnum[] } /** * Lease findMany */ export type LeaseFindManyArgs = { /** * Select specific fields to fetch from the Lease */ select?: LeaseSelect | null /** * Filter, which Leases to fetch. */ where?: LeaseWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Leases to fetch. */ orderBy?: LeaseOrderByWithRelationInput | LeaseOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Leases. */ cursor?: LeaseWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Leases from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Leases. */ skip?: number distinct?: LeaseScalarFieldEnum | LeaseScalarFieldEnum[] } /** * Lease create */ export type LeaseCreateArgs = { /** * Select specific fields to fetch from the Lease */ select?: LeaseSelect | null /** * The data needed to create a Lease. */ data: XOR } /** * Lease createMany */ export type LeaseCreateManyArgs = { /** * The data used to create many Leases. */ data: LeaseCreateManyInput | LeaseCreateManyInput[] } /** * Lease createManyAndReturn */ export type LeaseCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the Lease */ select?: LeaseSelectCreateManyAndReturn | null /** * The data used to create many Leases. */ data: LeaseCreateManyInput | LeaseCreateManyInput[] } /** * Lease update */ export type LeaseUpdateArgs = { /** * Select specific fields to fetch from the Lease */ select?: LeaseSelect | null /** * The data needed to update a Lease. */ data: XOR /** * Choose, which Lease to update. */ where: LeaseWhereUniqueInput } /** * Lease updateMany */ export type LeaseUpdateManyArgs = { /** * The data used to update Leases. */ data: XOR /** * Filter which Leases to update */ where?: LeaseWhereInput } /** * Lease upsert */ export type LeaseUpsertArgs = { /** * Select specific fields to fetch from the Lease */ select?: LeaseSelect | null /** * The filter to search for the Lease to update in case it exists. */ where: LeaseWhereUniqueInput /** * In case the Lease found by the `where` argument doesn't exist, create a new Lease with this data. */ create: XOR /** * In case the Lease was found with the provided `where` argument, update it with this data. */ update: XOR } /** * Lease delete */ export type LeaseDeleteArgs = { /** * Select specific fields to fetch from the Lease */ select?: LeaseSelect | null /** * Filter which Lease to delete. */ where: LeaseWhereUniqueInput } /** * Lease deleteMany */ export type LeaseDeleteManyArgs = { /** * Filter which Leases to delete */ where?: LeaseWhereInput } /** * Lease without action */ export type LeaseDefaultArgs = { /** * Select specific fields to fetch from the Lease */ select?: LeaseSelect | null } /** * Model ApiKey */ export type AggregateApiKey = { _count: ApiKeyCountAggregateOutputType | null _avg: ApiKeyAvgAggregateOutputType | null _sum: ApiKeySumAggregateOutputType | null _min: ApiKeyMinAggregateOutputType | null _max: ApiKeyMaxAggregateOutputType | null } export type ApiKeyAvgAggregateOutputType = { rateLimit: number | null } export type ApiKeySumAggregateOutputType = { rateLimit: number | null } export type ApiKeyMinAggregateOutputType = { id: string | null name: string | null keyHash: string | null scopes: string | null rateLimit: number | null createdAt: Date | null revokedAt: Date | null lastUsedAt: Date | null expiresAt: Date | null teamId: string | null role: string | null userId: string | null } export type ApiKeyMaxAggregateOutputType = { id: string | null name: string | null keyHash: string | null scopes: string | null rateLimit: number | null createdAt: Date | null revokedAt: Date | null lastUsedAt: Date | null expiresAt: Date | null teamId: string | null role: string | null userId: string | null } export type ApiKeyCountAggregateOutputType = { id: number name: number keyHash: number scopes: number rateLimit: number createdAt: number revokedAt: number lastUsedAt: number expiresAt: number teamId: number role: number userId: number _all: number } export type ApiKeyAvgAggregateInputType = { rateLimit?: true } export type ApiKeySumAggregateInputType = { rateLimit?: true } export type ApiKeyMinAggregateInputType = { id?: true name?: true keyHash?: true scopes?: true rateLimit?: true createdAt?: true revokedAt?: true lastUsedAt?: true expiresAt?: true teamId?: true role?: true userId?: true } export type ApiKeyMaxAggregateInputType = { id?: true name?: true keyHash?: true scopes?: true rateLimit?: true createdAt?: true revokedAt?: true lastUsedAt?: true expiresAt?: true teamId?: true role?: true userId?: true } export type ApiKeyCountAggregateInputType = { id?: true name?: true keyHash?: true scopes?: true rateLimit?: true createdAt?: true revokedAt?: true lastUsedAt?: true expiresAt?: true teamId?: true role?: true userId?: true _all?: true } export type ApiKeyAggregateArgs = { /** * Filter which ApiKey to aggregate. */ where?: ApiKeyWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of ApiKeys to fetch. */ orderBy?: ApiKeyOrderByWithRelationInput | ApiKeyOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: ApiKeyWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` ApiKeys from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` ApiKeys. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned ApiKeys **/ _count?: true | ApiKeyCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: ApiKeyAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: ApiKeySumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: ApiKeyMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: ApiKeyMaxAggregateInputType } export type GetApiKeyAggregateType = { [P in keyof T & keyof AggregateApiKey]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type ApiKeyGroupByArgs = { where?: ApiKeyWhereInput orderBy?: ApiKeyOrderByWithAggregationInput | ApiKeyOrderByWithAggregationInput[] by: ApiKeyScalarFieldEnum[] | ApiKeyScalarFieldEnum having?: ApiKeyScalarWhereWithAggregatesInput take?: number skip?: number _count?: ApiKeyCountAggregateInputType | true _avg?: ApiKeyAvgAggregateInputType _sum?: ApiKeySumAggregateInputType _min?: ApiKeyMinAggregateInputType _max?: ApiKeyMaxAggregateInputType } export type ApiKeyGroupByOutputType = { id: string name: string keyHash: string scopes: string rateLimit: number createdAt: Date revokedAt: Date | null lastUsedAt: Date | null expiresAt: Date | null teamId: string | null role: string userId: string _count: ApiKeyCountAggregateOutputType | null _avg: ApiKeyAvgAggregateOutputType | null _sum: ApiKeySumAggregateOutputType | null _min: ApiKeyMinAggregateOutputType | null _max: ApiKeyMaxAggregateOutputType | null } type GetApiKeyGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof ApiKeyGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type ApiKeySelect = $Extensions.GetSelect<{ id?: boolean name?: boolean keyHash?: boolean scopes?: boolean rateLimit?: boolean createdAt?: boolean revokedAt?: boolean lastUsedAt?: boolean expiresAt?: boolean teamId?: boolean role?: boolean userId?: boolean team?: boolean | ApiKey$teamArgs user?: boolean | UserDefaultArgs }, ExtArgs["result"]["apiKey"]> export type ApiKeySelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean name?: boolean keyHash?: boolean scopes?: boolean rateLimit?: boolean createdAt?: boolean revokedAt?: boolean lastUsedAt?: boolean expiresAt?: boolean teamId?: boolean role?: boolean userId?: boolean team?: boolean | ApiKey$teamArgs user?: boolean | UserDefaultArgs }, ExtArgs["result"]["apiKey"]> export type ApiKeySelectScalar = { id?: boolean name?: boolean keyHash?: boolean scopes?: boolean rateLimit?: boolean createdAt?: boolean revokedAt?: boolean lastUsedAt?: boolean expiresAt?: boolean teamId?: boolean role?: boolean userId?: boolean } export type ApiKeyInclude = { team?: boolean | ApiKey$teamArgs user?: boolean | UserDefaultArgs } export type ApiKeyIncludeCreateManyAndReturn = { team?: boolean | ApiKey$teamArgs user?: boolean | UserDefaultArgs } export type $ApiKeyPayload = { name: "ApiKey" objects: { team: Prisma.$TeamPayload | null user: Prisma.$UserPayload } scalars: $Extensions.GetPayloadResult<{ id: string name: string keyHash: string scopes: string rateLimit: number createdAt: Date revokedAt: Date | null lastUsedAt: Date | null expiresAt: Date | null teamId: string | null role: string userId: string }, ExtArgs["result"]["apiKey"]> composites: {} } type ApiKeyGetPayload = $Result.GetResult type ApiKeyCountArgs = Omit & { select?: ApiKeyCountAggregateInputType | true } export interface ApiKeyDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['ApiKey'], meta: { name: 'ApiKey' } } /** * Find zero or one ApiKey that matches the filter. * @param {ApiKeyFindUniqueArgs} args - Arguments to find a ApiKey * @example * // Get one ApiKey * const apiKey = await prisma.apiKey.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__ApiKeyClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one ApiKey that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {ApiKeyFindUniqueOrThrowArgs} args - Arguments to find a ApiKey * @example * // Get one ApiKey * const apiKey = await prisma.apiKey.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__ApiKeyClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first ApiKey that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ApiKeyFindFirstArgs} args - Arguments to find a ApiKey * @example * // Get one ApiKey * const apiKey = await prisma.apiKey.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__ApiKeyClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first ApiKey that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ApiKeyFindFirstOrThrowArgs} args - Arguments to find a ApiKey * @example * // Get one ApiKey * const apiKey = await prisma.apiKey.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__ApiKeyClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more ApiKeys that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ApiKeyFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all ApiKeys * const apiKeys = await prisma.apiKey.findMany() * * // Get first 10 ApiKeys * const apiKeys = await prisma.apiKey.findMany({ take: 10 }) * * // Only select the `id` * const apiKeyWithIdOnly = await prisma.apiKey.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a ApiKey. * @param {ApiKeyCreateArgs} args - Arguments to create a ApiKey. * @example * // Create one ApiKey * const ApiKey = await prisma.apiKey.create({ * data: { * // ... data to create a ApiKey * } * }) * */ create(args: SelectSubset>): Prisma__ApiKeyClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many ApiKeys. * @param {ApiKeyCreateManyArgs} args - Arguments to create many ApiKeys. * @example * // Create many ApiKeys * const apiKey = await prisma.apiKey.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many ApiKeys and returns the data saved in the database. * @param {ApiKeyCreateManyAndReturnArgs} args - Arguments to create many ApiKeys. * @example * // Create many ApiKeys * const apiKey = await prisma.apiKey.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many ApiKeys and only return the `id` * const apiKeyWithIdOnly = await prisma.apiKey.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a ApiKey. * @param {ApiKeyDeleteArgs} args - Arguments to delete one ApiKey. * @example * // Delete one ApiKey * const ApiKey = await prisma.apiKey.delete({ * where: { * // ... filter to delete one ApiKey * } * }) * */ delete(args: SelectSubset>): Prisma__ApiKeyClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one ApiKey. * @param {ApiKeyUpdateArgs} args - Arguments to update one ApiKey. * @example * // Update one ApiKey * const apiKey = await prisma.apiKey.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__ApiKeyClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more ApiKeys. * @param {ApiKeyDeleteManyArgs} args - Arguments to filter ApiKeys to delete. * @example * // Delete a few ApiKeys * const { count } = await prisma.apiKey.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more ApiKeys. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ApiKeyUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many ApiKeys * const apiKey = await prisma.apiKey.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one ApiKey. * @param {ApiKeyUpsertArgs} args - Arguments to update or create a ApiKey. * @example * // Update or create a ApiKey * const apiKey = await prisma.apiKey.upsert({ * create: { * // ... data to create a ApiKey * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the ApiKey we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__ApiKeyClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of ApiKeys. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ApiKeyCountArgs} args - Arguments to filter ApiKeys to count. * @example * // Count the number of ApiKeys * const count = await prisma.apiKey.count({ * where: { * // ... the filter for the ApiKeys we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a ApiKey. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ApiKeyAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by ApiKey. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ApiKeyGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends ApiKeyGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: ApiKeyGroupByArgs['orderBy'] } : { orderBy?: ApiKeyGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetApiKeyGroupByPayload : Prisma.PrismaPromise /** * Fields of the ApiKey model */ readonly fields: ApiKeyFieldRefs; } /** * The delegate class that acts as a "Promise-like" for ApiKey. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__ApiKeyClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" team = {}>(args?: Subset>): Prisma__TeamClient<$Result.GetResult, T, "findUniqueOrThrow"> | null, null, ExtArgs> user = {}>(args?: Subset>): Prisma__UserClient<$Result.GetResult, T, "findUniqueOrThrow"> | Null, Null, ExtArgs> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the ApiKey model */ interface ApiKeyFieldRefs { readonly id: FieldRef<"ApiKey", 'String'> readonly name: FieldRef<"ApiKey", 'String'> readonly keyHash: FieldRef<"ApiKey", 'String'> readonly scopes: FieldRef<"ApiKey", 'String'> readonly rateLimit: FieldRef<"ApiKey", 'Int'> readonly createdAt: FieldRef<"ApiKey", 'DateTime'> readonly revokedAt: FieldRef<"ApiKey", 'DateTime'> readonly lastUsedAt: FieldRef<"ApiKey", 'DateTime'> readonly expiresAt: FieldRef<"ApiKey", 'DateTime'> readonly teamId: FieldRef<"ApiKey", 'String'> readonly role: FieldRef<"ApiKey", 'String'> readonly userId: FieldRef<"ApiKey", 'String'> } // Custom InputTypes /** * ApiKey findUnique */ export type ApiKeyFindUniqueArgs = { /** * Select specific fields to fetch from the ApiKey */ select?: ApiKeySelect | null /** * Choose, which related nodes to fetch as well */ include?: ApiKeyInclude | null /** * Filter, which ApiKey to fetch. */ where: ApiKeyWhereUniqueInput } /** * ApiKey findUniqueOrThrow */ export type ApiKeyFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the ApiKey */ select?: ApiKeySelect | null /** * Choose, which related nodes to fetch as well */ include?: ApiKeyInclude | null /** * Filter, which ApiKey to fetch. */ where: ApiKeyWhereUniqueInput } /** * ApiKey findFirst */ export type ApiKeyFindFirstArgs = { /** * Select specific fields to fetch from the ApiKey */ select?: ApiKeySelect | null /** * Choose, which related nodes to fetch as well */ include?: ApiKeyInclude | null /** * Filter, which ApiKey to fetch. */ where?: ApiKeyWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of ApiKeys to fetch. */ orderBy?: ApiKeyOrderByWithRelationInput | ApiKeyOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for ApiKeys. */ cursor?: ApiKeyWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` ApiKeys from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` ApiKeys. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of ApiKeys. */ distinct?: ApiKeyScalarFieldEnum | ApiKeyScalarFieldEnum[] } /** * ApiKey findFirstOrThrow */ export type ApiKeyFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the ApiKey */ select?: ApiKeySelect | null /** * Choose, which related nodes to fetch as well */ include?: ApiKeyInclude | null /** * Filter, which ApiKey to fetch. */ where?: ApiKeyWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of ApiKeys to fetch. */ orderBy?: ApiKeyOrderByWithRelationInput | ApiKeyOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for ApiKeys. */ cursor?: ApiKeyWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` ApiKeys from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` ApiKeys. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of ApiKeys. */ distinct?: ApiKeyScalarFieldEnum | ApiKeyScalarFieldEnum[] } /** * ApiKey findMany */ export type ApiKeyFindManyArgs = { /** * Select specific fields to fetch from the ApiKey */ select?: ApiKeySelect | null /** * Choose, which related nodes to fetch as well */ include?: ApiKeyInclude | null /** * Filter, which ApiKeys to fetch. */ where?: ApiKeyWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of ApiKeys to fetch. */ orderBy?: ApiKeyOrderByWithRelationInput | ApiKeyOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing ApiKeys. */ cursor?: ApiKeyWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` ApiKeys from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` ApiKeys. */ skip?: number distinct?: ApiKeyScalarFieldEnum | ApiKeyScalarFieldEnum[] } /** * ApiKey create */ export type ApiKeyCreateArgs = { /** * Select specific fields to fetch from the ApiKey */ select?: ApiKeySelect | null /** * Choose, which related nodes to fetch as well */ include?: ApiKeyInclude | null /** * The data needed to create a ApiKey. */ data: XOR } /** * ApiKey createMany */ export type ApiKeyCreateManyArgs = { /** * The data used to create many ApiKeys. */ data: ApiKeyCreateManyInput | ApiKeyCreateManyInput[] } /** * ApiKey createManyAndReturn */ export type ApiKeyCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the ApiKey */ select?: ApiKeySelectCreateManyAndReturn | null /** * The data used to create many ApiKeys. */ data: ApiKeyCreateManyInput | ApiKeyCreateManyInput[] /** * Choose, which related nodes to fetch as well */ include?: ApiKeyIncludeCreateManyAndReturn | null } /** * ApiKey update */ export type ApiKeyUpdateArgs = { /** * Select specific fields to fetch from the ApiKey */ select?: ApiKeySelect | null /** * Choose, which related nodes to fetch as well */ include?: ApiKeyInclude | null /** * The data needed to update a ApiKey. */ data: XOR /** * Choose, which ApiKey to update. */ where: ApiKeyWhereUniqueInput } /** * ApiKey updateMany */ export type ApiKeyUpdateManyArgs = { /** * The data used to update ApiKeys. */ data: XOR /** * Filter which ApiKeys to update */ where?: ApiKeyWhereInput } /** * ApiKey upsert */ export type ApiKeyUpsertArgs = { /** * Select specific fields to fetch from the ApiKey */ select?: ApiKeySelect | null /** * Choose, which related nodes to fetch as well */ include?: ApiKeyInclude | null /** * The filter to search for the ApiKey to update in case it exists. */ where: ApiKeyWhereUniqueInput /** * In case the ApiKey found by the `where` argument doesn't exist, create a new ApiKey with this data. */ create: XOR /** * In case the ApiKey was found with the provided `where` argument, update it with this data. */ update: XOR } /** * ApiKey delete */ export type ApiKeyDeleteArgs = { /** * Select specific fields to fetch from the ApiKey */ select?: ApiKeySelect | null /** * Choose, which related nodes to fetch as well */ include?: ApiKeyInclude | null /** * Filter which ApiKey to delete. */ where: ApiKeyWhereUniqueInput } /** * ApiKey deleteMany */ export type ApiKeyDeleteManyArgs = { /** * Filter which ApiKeys to delete */ where?: ApiKeyWhereInput } /** * ApiKey.team */ export type ApiKey$teamArgs = { /** * Select specific fields to fetch from the Team */ select?: TeamSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamInclude | null where?: TeamWhereInput } /** * ApiKey without action */ export type ApiKeyDefaultArgs = { /** * Select specific fields to fetch from the ApiKey */ select?: ApiKeySelect | null /** * Choose, which related nodes to fetch as well */ include?: ApiKeyInclude | null } /** * Model Team */ export type AggregateTeam = { _count: TeamCountAggregateOutputType | null _min: TeamMinAggregateOutputType | null _max: TeamMaxAggregateOutputType | null } export type TeamMinAggregateOutputType = { id: string | null name: string | null createdAt: Date | null } export type TeamMaxAggregateOutputType = { id: string | null name: string | null createdAt: Date | null } export type TeamCountAggregateOutputType = { id: number name: number createdAt: number _all: number } export type TeamMinAggregateInputType = { id?: true name?: true createdAt?: true } export type TeamMaxAggregateInputType = { id?: true name?: true createdAt?: true } export type TeamCountAggregateInputType = { id?: true name?: true createdAt?: true _all?: true } export type TeamAggregateArgs = { /** * Filter which Team to aggregate. */ where?: TeamWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Teams to fetch. */ orderBy?: TeamOrderByWithRelationInput | TeamOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: TeamWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Teams from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Teams. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Teams **/ _count?: true | TeamCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: TeamMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: TeamMaxAggregateInputType } export type GetTeamAggregateType = { [P in keyof T & keyof AggregateTeam]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type TeamGroupByArgs = { where?: TeamWhereInput orderBy?: TeamOrderByWithAggregationInput | TeamOrderByWithAggregationInput[] by: TeamScalarFieldEnum[] | TeamScalarFieldEnum having?: TeamScalarWhereWithAggregatesInput take?: number skip?: number _count?: TeamCountAggregateInputType | true _min?: TeamMinAggregateInputType _max?: TeamMaxAggregateInputType } export type TeamGroupByOutputType = { id: string name: string createdAt: Date _count: TeamCountAggregateOutputType | null _min: TeamMinAggregateOutputType | null _max: TeamMaxAggregateOutputType | null } type GetTeamGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof TeamGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type TeamSelect = $Extensions.GetSelect<{ id?: boolean name?: boolean createdAt?: boolean devices?: boolean | Team$devicesArgs apiKeys?: boolean | Team$apiKeysArgs members?: boolean | Team$membersArgs _count?: boolean | TeamCountOutputTypeDefaultArgs }, ExtArgs["result"]["team"]> export type TeamSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean name?: boolean createdAt?: boolean }, ExtArgs["result"]["team"]> export type TeamSelectScalar = { id?: boolean name?: boolean createdAt?: boolean } export type TeamInclude = { devices?: boolean | Team$devicesArgs apiKeys?: boolean | Team$apiKeysArgs members?: boolean | Team$membersArgs _count?: boolean | TeamCountOutputTypeDefaultArgs } export type TeamIncludeCreateManyAndReturn = {} export type $TeamPayload = { name: "Team" objects: { devices: Prisma.$DevicePayload[] apiKeys: Prisma.$ApiKeyPayload[] members: Prisma.$TeamMemberPayload[] } scalars: $Extensions.GetPayloadResult<{ id: string name: string createdAt: Date }, ExtArgs["result"]["team"]> composites: {} } type TeamGetPayload = $Result.GetResult type TeamCountArgs = Omit & { select?: TeamCountAggregateInputType | true } export interface TeamDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['Team'], meta: { name: 'Team' } } /** * Find zero or one Team that matches the filter. * @param {TeamFindUniqueArgs} args - Arguments to find a Team * @example * // Get one Team * const team = await prisma.team.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__TeamClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one Team that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {TeamFindUniqueOrThrowArgs} args - Arguments to find a Team * @example * // Get one Team * const team = await prisma.team.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__TeamClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first Team that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {TeamFindFirstArgs} args - Arguments to find a Team * @example * // Get one Team * const team = await prisma.team.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__TeamClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first Team that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {TeamFindFirstOrThrowArgs} args - Arguments to find a Team * @example * // Get one Team * const team = await prisma.team.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__TeamClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more Teams that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {TeamFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Teams * const teams = await prisma.team.findMany() * * // Get first 10 Teams * const teams = await prisma.team.findMany({ take: 10 }) * * // Only select the `id` * const teamWithIdOnly = await prisma.team.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a Team. * @param {TeamCreateArgs} args - Arguments to create a Team. * @example * // Create one Team * const Team = await prisma.team.create({ * data: { * // ... data to create a Team * } * }) * */ create(args: SelectSubset>): Prisma__TeamClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many Teams. * @param {TeamCreateManyArgs} args - Arguments to create many Teams. * @example * // Create many Teams * const team = await prisma.team.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many Teams and returns the data saved in the database. * @param {TeamCreateManyAndReturnArgs} args - Arguments to create many Teams. * @example * // Create many Teams * const team = await prisma.team.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many Teams and only return the `id` * const teamWithIdOnly = await prisma.team.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a Team. * @param {TeamDeleteArgs} args - Arguments to delete one Team. * @example * // Delete one Team * const Team = await prisma.team.delete({ * where: { * // ... filter to delete one Team * } * }) * */ delete(args: SelectSubset>): Prisma__TeamClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one Team. * @param {TeamUpdateArgs} args - Arguments to update one Team. * @example * // Update one Team * const team = await prisma.team.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__TeamClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more Teams. * @param {TeamDeleteManyArgs} args - Arguments to filter Teams to delete. * @example * // Delete a few Teams * const { count } = await prisma.team.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Teams. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {TeamUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Teams * const team = await prisma.team.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one Team. * @param {TeamUpsertArgs} args - Arguments to update or create a Team. * @example * // Update or create a Team * const team = await prisma.team.upsert({ * create: { * // ... data to create a Team * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the Team we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__TeamClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of Teams. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {TeamCountArgs} args - Arguments to filter Teams to count. * @example * // Count the number of Teams * const count = await prisma.team.count({ * where: { * // ... the filter for the Teams we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a Team. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {TeamAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by Team. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {TeamGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends TeamGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: TeamGroupByArgs['orderBy'] } : { orderBy?: TeamGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetTeamGroupByPayload : Prisma.PrismaPromise /** * Fields of the Team model */ readonly fields: TeamFieldRefs; } /** * The delegate class that acts as a "Promise-like" for Team. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__TeamClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" devices = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany"> | Null> apiKeys = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany"> | Null> members = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany"> | Null> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the Team model */ interface TeamFieldRefs { readonly id: FieldRef<"Team", 'String'> readonly name: FieldRef<"Team", 'String'> readonly createdAt: FieldRef<"Team", 'DateTime'> } // Custom InputTypes /** * Team findUnique */ export type TeamFindUniqueArgs = { /** * Select specific fields to fetch from the Team */ select?: TeamSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamInclude | null /** * Filter, which Team to fetch. */ where: TeamWhereUniqueInput } /** * Team findUniqueOrThrow */ export type TeamFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the Team */ select?: TeamSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamInclude | null /** * Filter, which Team to fetch. */ where: TeamWhereUniqueInput } /** * Team findFirst */ export type TeamFindFirstArgs = { /** * Select specific fields to fetch from the Team */ select?: TeamSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamInclude | null /** * Filter, which Team to fetch. */ where?: TeamWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Teams to fetch. */ orderBy?: TeamOrderByWithRelationInput | TeamOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Teams. */ cursor?: TeamWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Teams from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Teams. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Teams. */ distinct?: TeamScalarFieldEnum | TeamScalarFieldEnum[] } /** * Team findFirstOrThrow */ export type TeamFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the Team */ select?: TeamSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamInclude | null /** * Filter, which Team to fetch. */ where?: TeamWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Teams to fetch. */ orderBy?: TeamOrderByWithRelationInput | TeamOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Teams. */ cursor?: TeamWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Teams from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Teams. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Teams. */ distinct?: TeamScalarFieldEnum | TeamScalarFieldEnum[] } /** * Team findMany */ export type TeamFindManyArgs = { /** * Select specific fields to fetch from the Team */ select?: TeamSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamInclude | null /** * Filter, which Teams to fetch. */ where?: TeamWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Teams to fetch. */ orderBy?: TeamOrderByWithRelationInput | TeamOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Teams. */ cursor?: TeamWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Teams from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Teams. */ skip?: number distinct?: TeamScalarFieldEnum | TeamScalarFieldEnum[] } /** * Team create */ export type TeamCreateArgs = { /** * Select specific fields to fetch from the Team */ select?: TeamSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamInclude | null /** * The data needed to create a Team. */ data: XOR } /** * Team createMany */ export type TeamCreateManyArgs = { /** * The data used to create many Teams. */ data: TeamCreateManyInput | TeamCreateManyInput[] } /** * Team createManyAndReturn */ export type TeamCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the Team */ select?: TeamSelectCreateManyAndReturn | null /** * The data used to create many Teams. */ data: TeamCreateManyInput | TeamCreateManyInput[] } /** * Team update */ export type TeamUpdateArgs = { /** * Select specific fields to fetch from the Team */ select?: TeamSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamInclude | null /** * The data needed to update a Team. */ data: XOR /** * Choose, which Team to update. */ where: TeamWhereUniqueInput } /** * Team updateMany */ export type TeamUpdateManyArgs = { /** * The data used to update Teams. */ data: XOR /** * Filter which Teams to update */ where?: TeamWhereInput } /** * Team upsert */ export type TeamUpsertArgs = { /** * Select specific fields to fetch from the Team */ select?: TeamSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamInclude | null /** * The filter to search for the Team to update in case it exists. */ where: TeamWhereUniqueInput /** * In case the Team found by the `where` argument doesn't exist, create a new Team with this data. */ create: XOR /** * In case the Team was found with the provided `where` argument, update it with this data. */ update: XOR } /** * Team delete */ export type TeamDeleteArgs = { /** * Select specific fields to fetch from the Team */ select?: TeamSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamInclude | null /** * Filter which Team to delete. */ where: TeamWhereUniqueInput } /** * Team deleteMany */ export type TeamDeleteManyArgs = { /** * Filter which Teams to delete */ where?: TeamWhereInput } /** * Team.devices */ export type Team$devicesArgs = { /** * Select specific fields to fetch from the Device */ select?: DeviceSelect | null /** * Choose, which related nodes to fetch as well */ include?: DeviceInclude | null where?: DeviceWhereInput orderBy?: DeviceOrderByWithRelationInput | DeviceOrderByWithRelationInput[] cursor?: DeviceWhereUniqueInput take?: number skip?: number distinct?: DeviceScalarFieldEnum | DeviceScalarFieldEnum[] } /** * Team.apiKeys */ export type Team$apiKeysArgs = { /** * Select specific fields to fetch from the ApiKey */ select?: ApiKeySelect | null /** * Choose, which related nodes to fetch as well */ include?: ApiKeyInclude | null where?: ApiKeyWhereInput orderBy?: ApiKeyOrderByWithRelationInput | ApiKeyOrderByWithRelationInput[] cursor?: ApiKeyWhereUniqueInput take?: number skip?: number distinct?: ApiKeyScalarFieldEnum | ApiKeyScalarFieldEnum[] } /** * Team.members */ export type Team$membersArgs = { /** * Select specific fields to fetch from the TeamMember */ select?: TeamMemberSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamMemberInclude | null where?: TeamMemberWhereInput orderBy?: TeamMemberOrderByWithRelationInput | TeamMemberOrderByWithRelationInput[] cursor?: TeamMemberWhereUniqueInput take?: number skip?: number distinct?: TeamMemberScalarFieldEnum | TeamMemberScalarFieldEnum[] } /** * Team without action */ export type TeamDefaultArgs = { /** * Select specific fields to fetch from the Team */ select?: TeamSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamInclude | null } /** * Model SelectorState */ export type AggregateSelectorState = { _count: SelectorStateCountAggregateOutputType | null _avg: SelectorStateAvgAggregateOutputType | null _sum: SelectorStateSumAggregateOutputType | null _min: SelectorStateMinAggregateOutputType | null _max: SelectorStateMaxAggregateOutputType | null } export type SelectorStateAvgAggregateOutputType = { regression_count: number | null clean_builds_count: number | null } export type SelectorStateSumAggregateOutputType = { regression_count: number | null clean_builds_count: number | null } export type SelectorStateMinAggregateOutputType = { id: string | null original_strategy: string | null original_selector: string | null status: string | null fixed_at: Date | null fixed_by_api_key: string | null resolved_at: Date | null muted_at: Date | null muted_by_api_key: string | null regression_count: number | null clean_builds_count: number | null last_event_at: Date | null createdAt: Date | null updatedAt: Date | null } export type SelectorStateMaxAggregateOutputType = { id: string | null original_strategy: string | null original_selector: string | null status: string | null fixed_at: Date | null fixed_by_api_key: string | null resolved_at: Date | null muted_at: Date | null muted_by_api_key: string | null regression_count: number | null clean_builds_count: number | null last_event_at: Date | null createdAt: Date | null updatedAt: Date | null } export type SelectorStateCountAggregateOutputType = { id: number original_strategy: number original_selector: number status: number fixed_at: number fixed_by_api_key: number resolved_at: number muted_at: number muted_by_api_key: number regression_count: number clean_builds_count: number last_event_at: number createdAt: number updatedAt: number _all: number } export type SelectorStateAvgAggregateInputType = { regression_count?: true clean_builds_count?: true } export type SelectorStateSumAggregateInputType = { regression_count?: true clean_builds_count?: true } export type SelectorStateMinAggregateInputType = { id?: true original_strategy?: true original_selector?: true status?: true fixed_at?: true fixed_by_api_key?: true resolved_at?: true muted_at?: true muted_by_api_key?: true regression_count?: true clean_builds_count?: true last_event_at?: true createdAt?: true updatedAt?: true } export type SelectorStateMaxAggregateInputType = { id?: true original_strategy?: true original_selector?: true status?: true fixed_at?: true fixed_by_api_key?: true resolved_at?: true muted_at?: true muted_by_api_key?: true regression_count?: true clean_builds_count?: true last_event_at?: true createdAt?: true updatedAt?: true } export type SelectorStateCountAggregateInputType = { id?: true original_strategy?: true original_selector?: true status?: true fixed_at?: true fixed_by_api_key?: true resolved_at?: true muted_at?: true muted_by_api_key?: true regression_count?: true clean_builds_count?: true last_event_at?: true createdAt?: true updatedAt?: true _all?: true } export type SelectorStateAggregateArgs = { /** * Filter which SelectorState to aggregate. */ where?: SelectorStateWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of SelectorStates to fetch. */ orderBy?: SelectorStateOrderByWithRelationInput | SelectorStateOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: SelectorStateWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` SelectorStates from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` SelectorStates. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned SelectorStates **/ _count?: true | SelectorStateCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: SelectorStateAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: SelectorStateSumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: SelectorStateMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: SelectorStateMaxAggregateInputType } export type GetSelectorStateAggregateType = { [P in keyof T & keyof AggregateSelectorState]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type SelectorStateGroupByArgs = { where?: SelectorStateWhereInput orderBy?: SelectorStateOrderByWithAggregationInput | SelectorStateOrderByWithAggregationInput[] by: SelectorStateScalarFieldEnum[] | SelectorStateScalarFieldEnum having?: SelectorStateScalarWhereWithAggregatesInput take?: number skip?: number _count?: SelectorStateCountAggregateInputType | true _avg?: SelectorStateAvgAggregateInputType _sum?: SelectorStateSumAggregateInputType _min?: SelectorStateMinAggregateInputType _max?: SelectorStateMaxAggregateInputType } export type SelectorStateGroupByOutputType = { id: string original_strategy: string original_selector: string status: string fixed_at: Date | null fixed_by_api_key: string | null resolved_at: Date | null muted_at: Date | null muted_by_api_key: string | null regression_count: number clean_builds_count: number last_event_at: Date createdAt: Date updatedAt: Date _count: SelectorStateCountAggregateOutputType | null _avg: SelectorStateAvgAggregateOutputType | null _sum: SelectorStateSumAggregateOutputType | null _min: SelectorStateMinAggregateOutputType | null _max: SelectorStateMaxAggregateOutputType | null } type GetSelectorStateGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof SelectorStateGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type SelectorStateSelect = $Extensions.GetSelect<{ id?: boolean original_strategy?: boolean original_selector?: boolean status?: boolean fixed_at?: boolean fixed_by_api_key?: boolean resolved_at?: boolean muted_at?: boolean muted_by_api_key?: boolean regression_count?: boolean clean_builds_count?: boolean last_event_at?: boolean createdAt?: boolean updatedAt?: boolean }, ExtArgs["result"]["selectorState"]> export type SelectorStateSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean original_strategy?: boolean original_selector?: boolean status?: boolean fixed_at?: boolean fixed_by_api_key?: boolean resolved_at?: boolean muted_at?: boolean muted_by_api_key?: boolean regression_count?: boolean clean_builds_count?: boolean last_event_at?: boolean createdAt?: boolean updatedAt?: boolean }, ExtArgs["result"]["selectorState"]> export type SelectorStateSelectScalar = { id?: boolean original_strategy?: boolean original_selector?: boolean status?: boolean fixed_at?: boolean fixed_by_api_key?: boolean resolved_at?: boolean muted_at?: boolean muted_by_api_key?: boolean regression_count?: boolean clean_builds_count?: boolean last_event_at?: boolean createdAt?: boolean updatedAt?: boolean } export type $SelectorStatePayload = { name: "SelectorState" objects: {} scalars: $Extensions.GetPayloadResult<{ id: string original_strategy: string original_selector: string status: string fixed_at: Date | null fixed_by_api_key: string | null resolved_at: Date | null muted_at: Date | null muted_by_api_key: string | null regression_count: number clean_builds_count: number last_event_at: Date createdAt: Date updatedAt: Date }, ExtArgs["result"]["selectorState"]> composites: {} } type SelectorStateGetPayload = $Result.GetResult type SelectorStateCountArgs = Omit & { select?: SelectorStateCountAggregateInputType | true } export interface SelectorStateDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['SelectorState'], meta: { name: 'SelectorState' } } /** * Find zero or one SelectorState that matches the filter. * @param {SelectorStateFindUniqueArgs} args - Arguments to find a SelectorState * @example * // Get one SelectorState * const selectorState = await prisma.selectorState.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__SelectorStateClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one SelectorState that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {SelectorStateFindUniqueOrThrowArgs} args - Arguments to find a SelectorState * @example * // Get one SelectorState * const selectorState = await prisma.selectorState.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__SelectorStateClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first SelectorState that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SelectorStateFindFirstArgs} args - Arguments to find a SelectorState * @example * // Get one SelectorState * const selectorState = await prisma.selectorState.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__SelectorStateClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first SelectorState that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SelectorStateFindFirstOrThrowArgs} args - Arguments to find a SelectorState * @example * // Get one SelectorState * const selectorState = await prisma.selectorState.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__SelectorStateClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more SelectorStates that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SelectorStateFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all SelectorStates * const selectorStates = await prisma.selectorState.findMany() * * // Get first 10 SelectorStates * const selectorStates = await prisma.selectorState.findMany({ take: 10 }) * * // Only select the `id` * const selectorStateWithIdOnly = await prisma.selectorState.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a SelectorState. * @param {SelectorStateCreateArgs} args - Arguments to create a SelectorState. * @example * // Create one SelectorState * const SelectorState = await prisma.selectorState.create({ * data: { * // ... data to create a SelectorState * } * }) * */ create(args: SelectSubset>): Prisma__SelectorStateClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many SelectorStates. * @param {SelectorStateCreateManyArgs} args - Arguments to create many SelectorStates. * @example * // Create many SelectorStates * const selectorState = await prisma.selectorState.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many SelectorStates and returns the data saved in the database. * @param {SelectorStateCreateManyAndReturnArgs} args - Arguments to create many SelectorStates. * @example * // Create many SelectorStates * const selectorState = await prisma.selectorState.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many SelectorStates and only return the `id` * const selectorStateWithIdOnly = await prisma.selectorState.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a SelectorState. * @param {SelectorStateDeleteArgs} args - Arguments to delete one SelectorState. * @example * // Delete one SelectorState * const SelectorState = await prisma.selectorState.delete({ * where: { * // ... filter to delete one SelectorState * } * }) * */ delete(args: SelectSubset>): Prisma__SelectorStateClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one SelectorState. * @param {SelectorStateUpdateArgs} args - Arguments to update one SelectorState. * @example * // Update one SelectorState * const selectorState = await prisma.selectorState.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__SelectorStateClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more SelectorStates. * @param {SelectorStateDeleteManyArgs} args - Arguments to filter SelectorStates to delete. * @example * // Delete a few SelectorStates * const { count } = await prisma.selectorState.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more SelectorStates. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SelectorStateUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many SelectorStates * const selectorState = await prisma.selectorState.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one SelectorState. * @param {SelectorStateUpsertArgs} args - Arguments to update or create a SelectorState. * @example * // Update or create a SelectorState * const selectorState = await prisma.selectorState.upsert({ * create: { * // ... data to create a SelectorState * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the SelectorState we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__SelectorStateClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of SelectorStates. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SelectorStateCountArgs} args - Arguments to filter SelectorStates to count. * @example * // Count the number of SelectorStates * const count = await prisma.selectorState.count({ * where: { * // ... the filter for the SelectorStates we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a SelectorState. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SelectorStateAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by SelectorState. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {SelectorStateGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends SelectorStateGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: SelectorStateGroupByArgs['orderBy'] } : { orderBy?: SelectorStateGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetSelectorStateGroupByPayload : Prisma.PrismaPromise /** * Fields of the SelectorState model */ readonly fields: SelectorStateFieldRefs; } /** * The delegate class that acts as a "Promise-like" for SelectorState. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__SelectorStateClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the SelectorState model */ interface SelectorStateFieldRefs { readonly id: FieldRef<"SelectorState", 'String'> readonly original_strategy: FieldRef<"SelectorState", 'String'> readonly original_selector: FieldRef<"SelectorState", 'String'> readonly status: FieldRef<"SelectorState", 'String'> readonly fixed_at: FieldRef<"SelectorState", 'DateTime'> readonly fixed_by_api_key: FieldRef<"SelectorState", 'String'> readonly resolved_at: FieldRef<"SelectorState", 'DateTime'> readonly muted_at: FieldRef<"SelectorState", 'DateTime'> readonly muted_by_api_key: FieldRef<"SelectorState", 'String'> readonly regression_count: FieldRef<"SelectorState", 'Int'> readonly clean_builds_count: FieldRef<"SelectorState", 'Int'> readonly last_event_at: FieldRef<"SelectorState", 'DateTime'> readonly createdAt: FieldRef<"SelectorState", 'DateTime'> readonly updatedAt: FieldRef<"SelectorState", 'DateTime'> } // Custom InputTypes /** * SelectorState findUnique */ export type SelectorStateFindUniqueArgs = { /** * Select specific fields to fetch from the SelectorState */ select?: SelectorStateSelect | null /** * Filter, which SelectorState to fetch. */ where: SelectorStateWhereUniqueInput } /** * SelectorState findUniqueOrThrow */ export type SelectorStateFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the SelectorState */ select?: SelectorStateSelect | null /** * Filter, which SelectorState to fetch. */ where: SelectorStateWhereUniqueInput } /** * SelectorState findFirst */ export type SelectorStateFindFirstArgs = { /** * Select specific fields to fetch from the SelectorState */ select?: SelectorStateSelect | null /** * Filter, which SelectorState to fetch. */ where?: SelectorStateWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of SelectorStates to fetch. */ orderBy?: SelectorStateOrderByWithRelationInput | SelectorStateOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for SelectorStates. */ cursor?: SelectorStateWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` SelectorStates from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` SelectorStates. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of SelectorStates. */ distinct?: SelectorStateScalarFieldEnum | SelectorStateScalarFieldEnum[] } /** * SelectorState findFirstOrThrow */ export type SelectorStateFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the SelectorState */ select?: SelectorStateSelect | null /** * Filter, which SelectorState to fetch. */ where?: SelectorStateWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of SelectorStates to fetch. */ orderBy?: SelectorStateOrderByWithRelationInput | SelectorStateOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for SelectorStates. */ cursor?: SelectorStateWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` SelectorStates from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` SelectorStates. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of SelectorStates. */ distinct?: SelectorStateScalarFieldEnum | SelectorStateScalarFieldEnum[] } /** * SelectorState findMany */ export type SelectorStateFindManyArgs = { /** * Select specific fields to fetch from the SelectorState */ select?: SelectorStateSelect | null /** * Filter, which SelectorStates to fetch. */ where?: SelectorStateWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of SelectorStates to fetch. */ orderBy?: SelectorStateOrderByWithRelationInput | SelectorStateOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing SelectorStates. */ cursor?: SelectorStateWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` SelectorStates from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` SelectorStates. */ skip?: number distinct?: SelectorStateScalarFieldEnum | SelectorStateScalarFieldEnum[] } /** * SelectorState create */ export type SelectorStateCreateArgs = { /** * Select specific fields to fetch from the SelectorState */ select?: SelectorStateSelect | null /** * The data needed to create a SelectorState. */ data: XOR } /** * SelectorState createMany */ export type SelectorStateCreateManyArgs = { /** * The data used to create many SelectorStates. */ data: SelectorStateCreateManyInput | SelectorStateCreateManyInput[] } /** * SelectorState createManyAndReturn */ export type SelectorStateCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the SelectorState */ select?: SelectorStateSelectCreateManyAndReturn | null /** * The data used to create many SelectorStates. */ data: SelectorStateCreateManyInput | SelectorStateCreateManyInput[] } /** * SelectorState update */ export type SelectorStateUpdateArgs = { /** * Select specific fields to fetch from the SelectorState */ select?: SelectorStateSelect | null /** * The data needed to update a SelectorState. */ data: XOR /** * Choose, which SelectorState to update. */ where: SelectorStateWhereUniqueInput } /** * SelectorState updateMany */ export type SelectorStateUpdateManyArgs = { /** * The data used to update SelectorStates. */ data: XOR /** * Filter which SelectorStates to update */ where?: SelectorStateWhereInput } /** * SelectorState upsert */ export type SelectorStateUpsertArgs = { /** * Select specific fields to fetch from the SelectorState */ select?: SelectorStateSelect | null /** * The filter to search for the SelectorState to update in case it exists. */ where: SelectorStateWhereUniqueInput /** * In case the SelectorState found by the `where` argument doesn't exist, create a new SelectorState with this data. */ create: XOR /** * In case the SelectorState was found with the provided `where` argument, update it with this data. */ update: XOR } /** * SelectorState delete */ export type SelectorStateDeleteArgs = { /** * Select specific fields to fetch from the SelectorState */ select?: SelectorStateSelect | null /** * Filter which SelectorState to delete. */ where: SelectorStateWhereUniqueInput } /** * SelectorState deleteMany */ export type SelectorStateDeleteManyArgs = { /** * Filter which SelectorStates to delete */ where?: SelectorStateWhereInput } /** * SelectorState without action */ export type SelectorStateDefaultArgs = { /** * Select specific fields to fetch from the SelectorState */ select?: SelectorStateSelect | null } /** * Model Recording */ export type AggregateRecording = { _count: RecordingCountAggregateOutputType | null _avg: RecordingAvgAggregateOutputType | null _sum: RecordingSumAggregateOutputType | null _min: RecordingMinAggregateOutputType | null _max: RecordingMaxAggregateOutputType | null } export type RecordingAvgAggregateOutputType = { duration_ms: number | null size_bytes: number | null } export type RecordingSumAggregateOutputType = { duration_ms: number | null size_bytes: number | null } export type RecordingMinAggregateOutputType = { id: string | null group_id: string | null device_udid: string | null device_host: string | null session_id: string | null started_at: Date | null ended_at: Date | null status: string | null file_path: string | null duration_ms: number | null size_bytes: number | null device_snapshot: string | null fail_reason: string | null } export type RecordingMaxAggregateOutputType = { id: string | null group_id: string | null device_udid: string | null device_host: string | null session_id: string | null started_at: Date | null ended_at: Date | null status: string | null file_path: string | null duration_ms: number | null size_bytes: number | null device_snapshot: string | null fail_reason: string | null } export type RecordingCountAggregateOutputType = { id: number group_id: number device_udid: number device_host: number session_id: number started_at: number ended_at: number status: number file_path: number duration_ms: number size_bytes: number device_snapshot: number fail_reason: number _all: number } export type RecordingAvgAggregateInputType = { duration_ms?: true size_bytes?: true } export type RecordingSumAggregateInputType = { duration_ms?: true size_bytes?: true } export type RecordingMinAggregateInputType = { id?: true group_id?: true device_udid?: true device_host?: true session_id?: true started_at?: true ended_at?: true status?: true file_path?: true duration_ms?: true size_bytes?: true device_snapshot?: true fail_reason?: true } export type RecordingMaxAggregateInputType = { id?: true group_id?: true device_udid?: true device_host?: true session_id?: true started_at?: true ended_at?: true status?: true file_path?: true duration_ms?: true size_bytes?: true device_snapshot?: true fail_reason?: true } export type RecordingCountAggregateInputType = { id?: true group_id?: true device_udid?: true device_host?: true session_id?: true started_at?: true ended_at?: true status?: true file_path?: true duration_ms?: true size_bytes?: true device_snapshot?: true fail_reason?: true _all?: true } export type RecordingAggregateArgs = { /** * Filter which Recording to aggregate. */ where?: RecordingWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Recordings to fetch. */ orderBy?: RecordingOrderByWithRelationInput | RecordingOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: RecordingWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Recordings from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Recordings. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Recordings **/ _count?: true | RecordingCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: RecordingAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: RecordingSumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: RecordingMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: RecordingMaxAggregateInputType } export type GetRecordingAggregateType = { [P in keyof T & keyof AggregateRecording]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type RecordingGroupByArgs = { where?: RecordingWhereInput orderBy?: RecordingOrderByWithAggregationInput | RecordingOrderByWithAggregationInput[] by: RecordingScalarFieldEnum[] | RecordingScalarFieldEnum having?: RecordingScalarWhereWithAggregatesInput take?: number skip?: number _count?: RecordingCountAggregateInputType | true _avg?: RecordingAvgAggregateInputType _sum?: RecordingSumAggregateInputType _min?: RecordingMinAggregateInputType _max?: RecordingMaxAggregateInputType } export type RecordingGroupByOutputType = { id: string group_id: string device_udid: string device_host: string session_id: string | null started_at: Date ended_at: Date | null status: string file_path: string duration_ms: number | null size_bytes: number | null device_snapshot: string | null fail_reason: string | null _count: RecordingCountAggregateOutputType | null _avg: RecordingAvgAggregateOutputType | null _sum: RecordingSumAggregateOutputType | null _min: RecordingMinAggregateOutputType | null _max: RecordingMaxAggregateOutputType | null } type GetRecordingGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof RecordingGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type RecordingSelect = $Extensions.GetSelect<{ id?: boolean group_id?: boolean device_udid?: boolean device_host?: boolean session_id?: boolean started_at?: boolean ended_at?: boolean status?: boolean file_path?: boolean duration_ms?: boolean size_bytes?: boolean device_snapshot?: boolean fail_reason?: boolean bookmarks?: boolean | Recording$bookmarksArgs annotations?: boolean | Recording$annotationsArgs Session?: boolean | Recording$SessionArgs _count?: boolean | RecordingCountOutputTypeDefaultArgs }, ExtArgs["result"]["recording"]> export type RecordingSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean group_id?: boolean device_udid?: boolean device_host?: boolean session_id?: boolean started_at?: boolean ended_at?: boolean status?: boolean file_path?: boolean duration_ms?: boolean size_bytes?: boolean device_snapshot?: boolean fail_reason?: boolean Session?: boolean | Recording$SessionArgs }, ExtArgs["result"]["recording"]> export type RecordingSelectScalar = { id?: boolean group_id?: boolean device_udid?: boolean device_host?: boolean session_id?: boolean started_at?: boolean ended_at?: boolean status?: boolean file_path?: boolean duration_ms?: boolean size_bytes?: boolean device_snapshot?: boolean fail_reason?: boolean } export type RecordingInclude = { bookmarks?: boolean | Recording$bookmarksArgs annotations?: boolean | Recording$annotationsArgs Session?: boolean | Recording$SessionArgs _count?: boolean | RecordingCountOutputTypeDefaultArgs } export type RecordingIncludeCreateManyAndReturn = { Session?: boolean | Recording$SessionArgs } export type $RecordingPayload = { name: "Recording" objects: { bookmarks: Prisma.$BookmarkPayload[] annotations: Prisma.$AnnotationPayload[] Session: Prisma.$SessionPayload | null } scalars: $Extensions.GetPayloadResult<{ id: string group_id: string device_udid: string device_host: string session_id: string | null started_at: Date ended_at: Date | null status: string file_path: string duration_ms: number | null size_bytes: number | null device_snapshot: string | null fail_reason: string | null }, ExtArgs["result"]["recording"]> composites: {} } type RecordingGetPayload = $Result.GetResult type RecordingCountArgs = Omit & { select?: RecordingCountAggregateInputType | true } export interface RecordingDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['Recording'], meta: { name: 'Recording' } } /** * Find zero or one Recording that matches the filter. * @param {RecordingFindUniqueArgs} args - Arguments to find a Recording * @example * // Get one Recording * const recording = await prisma.recording.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__RecordingClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one Recording that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {RecordingFindUniqueOrThrowArgs} args - Arguments to find a Recording * @example * // Get one Recording * const recording = await prisma.recording.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__RecordingClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first Recording that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {RecordingFindFirstArgs} args - Arguments to find a Recording * @example * // Get one Recording * const recording = await prisma.recording.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__RecordingClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first Recording that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {RecordingFindFirstOrThrowArgs} args - Arguments to find a Recording * @example * // Get one Recording * const recording = await prisma.recording.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__RecordingClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more Recordings that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {RecordingFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Recordings * const recordings = await prisma.recording.findMany() * * // Get first 10 Recordings * const recordings = await prisma.recording.findMany({ take: 10 }) * * // Only select the `id` * const recordingWithIdOnly = await prisma.recording.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a Recording. * @param {RecordingCreateArgs} args - Arguments to create a Recording. * @example * // Create one Recording * const Recording = await prisma.recording.create({ * data: { * // ... data to create a Recording * } * }) * */ create(args: SelectSubset>): Prisma__RecordingClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many Recordings. * @param {RecordingCreateManyArgs} args - Arguments to create many Recordings. * @example * // Create many Recordings * const recording = await prisma.recording.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many Recordings and returns the data saved in the database. * @param {RecordingCreateManyAndReturnArgs} args - Arguments to create many Recordings. * @example * // Create many Recordings * const recording = await prisma.recording.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many Recordings and only return the `id` * const recordingWithIdOnly = await prisma.recording.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a Recording. * @param {RecordingDeleteArgs} args - Arguments to delete one Recording. * @example * // Delete one Recording * const Recording = await prisma.recording.delete({ * where: { * // ... filter to delete one Recording * } * }) * */ delete(args: SelectSubset>): Prisma__RecordingClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one Recording. * @param {RecordingUpdateArgs} args - Arguments to update one Recording. * @example * // Update one Recording * const recording = await prisma.recording.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__RecordingClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more Recordings. * @param {RecordingDeleteManyArgs} args - Arguments to filter Recordings to delete. * @example * // Delete a few Recordings * const { count } = await prisma.recording.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Recordings. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {RecordingUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Recordings * const recording = await prisma.recording.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one Recording. * @param {RecordingUpsertArgs} args - Arguments to update or create a Recording. * @example * // Update or create a Recording * const recording = await prisma.recording.upsert({ * create: { * // ... data to create a Recording * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the Recording we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__RecordingClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of Recordings. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {RecordingCountArgs} args - Arguments to filter Recordings to count. * @example * // Count the number of Recordings * const count = await prisma.recording.count({ * where: { * // ... the filter for the Recordings we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a Recording. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {RecordingAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by Recording. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {RecordingGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends RecordingGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: RecordingGroupByArgs['orderBy'] } : { orderBy?: RecordingGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetRecordingGroupByPayload : Prisma.PrismaPromise /** * Fields of the Recording model */ readonly fields: RecordingFieldRefs; } /** * The delegate class that acts as a "Promise-like" for Recording. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__RecordingClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" bookmarks = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany"> | Null> annotations = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany"> | Null> Session = {}>(args?: Subset>): Prisma__SessionClient<$Result.GetResult, T, "findUniqueOrThrow"> | null, null, ExtArgs> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the Recording model */ interface RecordingFieldRefs { readonly id: FieldRef<"Recording", 'String'> readonly group_id: FieldRef<"Recording", 'String'> readonly device_udid: FieldRef<"Recording", 'String'> readonly device_host: FieldRef<"Recording", 'String'> readonly session_id: FieldRef<"Recording", 'String'> readonly started_at: FieldRef<"Recording", 'DateTime'> readonly ended_at: FieldRef<"Recording", 'DateTime'> readonly status: FieldRef<"Recording", 'String'> readonly file_path: FieldRef<"Recording", 'String'> readonly duration_ms: FieldRef<"Recording", 'Int'> readonly size_bytes: FieldRef<"Recording", 'Int'> readonly device_snapshot: FieldRef<"Recording", 'String'> readonly fail_reason: FieldRef<"Recording", 'String'> } // Custom InputTypes /** * Recording findUnique */ export type RecordingFindUniqueArgs = { /** * Select specific fields to fetch from the Recording */ select?: RecordingSelect | null /** * Choose, which related nodes to fetch as well */ include?: RecordingInclude | null /** * Filter, which Recording to fetch. */ where: RecordingWhereUniqueInput } /** * Recording findUniqueOrThrow */ export type RecordingFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the Recording */ select?: RecordingSelect | null /** * Choose, which related nodes to fetch as well */ include?: RecordingInclude | null /** * Filter, which Recording to fetch. */ where: RecordingWhereUniqueInput } /** * Recording findFirst */ export type RecordingFindFirstArgs = { /** * Select specific fields to fetch from the Recording */ select?: RecordingSelect | null /** * Choose, which related nodes to fetch as well */ include?: RecordingInclude | null /** * Filter, which Recording to fetch. */ where?: RecordingWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Recordings to fetch. */ orderBy?: RecordingOrderByWithRelationInput | RecordingOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Recordings. */ cursor?: RecordingWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Recordings from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Recordings. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Recordings. */ distinct?: RecordingScalarFieldEnum | RecordingScalarFieldEnum[] } /** * Recording findFirstOrThrow */ export type RecordingFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the Recording */ select?: RecordingSelect | null /** * Choose, which related nodes to fetch as well */ include?: RecordingInclude | null /** * Filter, which Recording to fetch. */ where?: RecordingWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Recordings to fetch. */ orderBy?: RecordingOrderByWithRelationInput | RecordingOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Recordings. */ cursor?: RecordingWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Recordings from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Recordings. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Recordings. */ distinct?: RecordingScalarFieldEnum | RecordingScalarFieldEnum[] } /** * Recording findMany */ export type RecordingFindManyArgs = { /** * Select specific fields to fetch from the Recording */ select?: RecordingSelect | null /** * Choose, which related nodes to fetch as well */ include?: RecordingInclude | null /** * Filter, which Recordings to fetch. */ where?: RecordingWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Recordings to fetch. */ orderBy?: RecordingOrderByWithRelationInput | RecordingOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Recordings. */ cursor?: RecordingWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Recordings from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Recordings. */ skip?: number distinct?: RecordingScalarFieldEnum | RecordingScalarFieldEnum[] } /** * Recording create */ export type RecordingCreateArgs = { /** * Select specific fields to fetch from the Recording */ select?: RecordingSelect | null /** * Choose, which related nodes to fetch as well */ include?: RecordingInclude | null /** * The data needed to create a Recording. */ data: XOR } /** * Recording createMany */ export type RecordingCreateManyArgs = { /** * The data used to create many Recordings. */ data: RecordingCreateManyInput | RecordingCreateManyInput[] } /** * Recording createManyAndReturn */ export type RecordingCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the Recording */ select?: RecordingSelectCreateManyAndReturn | null /** * The data used to create many Recordings. */ data: RecordingCreateManyInput | RecordingCreateManyInput[] /** * Choose, which related nodes to fetch as well */ include?: RecordingIncludeCreateManyAndReturn | null } /** * Recording update */ export type RecordingUpdateArgs = { /** * Select specific fields to fetch from the Recording */ select?: RecordingSelect | null /** * Choose, which related nodes to fetch as well */ include?: RecordingInclude | null /** * The data needed to update a Recording. */ data: XOR /** * Choose, which Recording to update. */ where: RecordingWhereUniqueInput } /** * Recording updateMany */ export type RecordingUpdateManyArgs = { /** * The data used to update Recordings. */ data: XOR /** * Filter which Recordings to update */ where?: RecordingWhereInput } /** * Recording upsert */ export type RecordingUpsertArgs = { /** * Select specific fields to fetch from the Recording */ select?: RecordingSelect | null /** * Choose, which related nodes to fetch as well */ include?: RecordingInclude | null /** * The filter to search for the Recording to update in case it exists. */ where: RecordingWhereUniqueInput /** * In case the Recording found by the `where` argument doesn't exist, create a new Recording with this data. */ create: XOR /** * In case the Recording was found with the provided `where` argument, update it with this data. */ update: XOR } /** * Recording delete */ export type RecordingDeleteArgs = { /** * Select specific fields to fetch from the Recording */ select?: RecordingSelect | null /** * Choose, which related nodes to fetch as well */ include?: RecordingInclude | null /** * Filter which Recording to delete. */ where: RecordingWhereUniqueInput } /** * Recording deleteMany */ export type RecordingDeleteManyArgs = { /** * Filter which Recordings to delete */ where?: RecordingWhereInput } /** * Recording.bookmarks */ export type Recording$bookmarksArgs = { /** * Select specific fields to fetch from the Bookmark */ select?: BookmarkSelect | null /** * Choose, which related nodes to fetch as well */ include?: BookmarkInclude | null where?: BookmarkWhereInput orderBy?: BookmarkOrderByWithRelationInput | BookmarkOrderByWithRelationInput[] cursor?: BookmarkWhereUniqueInput take?: number skip?: number distinct?: BookmarkScalarFieldEnum | BookmarkScalarFieldEnum[] } /** * Recording.annotations */ export type Recording$annotationsArgs = { /** * Select specific fields to fetch from the Annotation */ select?: AnnotationSelect | null /** * Choose, which related nodes to fetch as well */ include?: AnnotationInclude | null where?: AnnotationWhereInput orderBy?: AnnotationOrderByWithRelationInput | AnnotationOrderByWithRelationInput[] cursor?: AnnotationWhereUniqueInput take?: number skip?: number distinct?: AnnotationScalarFieldEnum | AnnotationScalarFieldEnum[] } /** * Recording.Session */ export type Recording$SessionArgs = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null where?: SessionWhereInput } /** * Recording without action */ export type RecordingDefaultArgs = { /** * Select specific fields to fetch from the Recording */ select?: RecordingSelect | null /** * Choose, which related nodes to fetch as well */ include?: RecordingInclude | null } /** * Model Bookmark */ export type AggregateBookmark = { _count: BookmarkCountAggregateOutputType | null _avg: BookmarkAvgAggregateOutputType | null _sum: BookmarkSumAggregateOutputType | null _min: BookmarkMinAggregateOutputType | null _max: BookmarkMaxAggregateOutputType | null } export type BookmarkAvgAggregateOutputType = { timecode_ms: number | null } export type BookmarkSumAggregateOutputType = { timecode_ms: number | null } export type BookmarkMinAggregateOutputType = { id: string | null recording_id: string | null timecode_ms: number | null label: string | null note: string | null created_at: Date | null } export type BookmarkMaxAggregateOutputType = { id: string | null recording_id: string | null timecode_ms: number | null label: string | null note: string | null created_at: Date | null } export type BookmarkCountAggregateOutputType = { id: number recording_id: number timecode_ms: number label: number note: number created_at: number _all: number } export type BookmarkAvgAggregateInputType = { timecode_ms?: true } export type BookmarkSumAggregateInputType = { timecode_ms?: true } export type BookmarkMinAggregateInputType = { id?: true recording_id?: true timecode_ms?: true label?: true note?: true created_at?: true } export type BookmarkMaxAggregateInputType = { id?: true recording_id?: true timecode_ms?: true label?: true note?: true created_at?: true } export type BookmarkCountAggregateInputType = { id?: true recording_id?: true timecode_ms?: true label?: true note?: true created_at?: true _all?: true } export type BookmarkAggregateArgs = { /** * Filter which Bookmark to aggregate. */ where?: BookmarkWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Bookmarks to fetch. */ orderBy?: BookmarkOrderByWithRelationInput | BookmarkOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: BookmarkWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Bookmarks from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Bookmarks. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Bookmarks **/ _count?: true | BookmarkCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: BookmarkAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: BookmarkSumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: BookmarkMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: BookmarkMaxAggregateInputType } export type GetBookmarkAggregateType = { [P in keyof T & keyof AggregateBookmark]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type BookmarkGroupByArgs = { where?: BookmarkWhereInput orderBy?: BookmarkOrderByWithAggregationInput | BookmarkOrderByWithAggregationInput[] by: BookmarkScalarFieldEnum[] | BookmarkScalarFieldEnum having?: BookmarkScalarWhereWithAggregatesInput take?: number skip?: number _count?: BookmarkCountAggregateInputType | true _avg?: BookmarkAvgAggregateInputType _sum?: BookmarkSumAggregateInputType _min?: BookmarkMinAggregateInputType _max?: BookmarkMaxAggregateInputType } export type BookmarkGroupByOutputType = { id: string recording_id: string timecode_ms: number label: string note: string | null created_at: Date _count: BookmarkCountAggregateOutputType | null _avg: BookmarkAvgAggregateOutputType | null _sum: BookmarkSumAggregateOutputType | null _min: BookmarkMinAggregateOutputType | null _max: BookmarkMaxAggregateOutputType | null } type GetBookmarkGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof BookmarkGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type BookmarkSelect = $Extensions.GetSelect<{ id?: boolean recording_id?: boolean timecode_ms?: boolean label?: boolean note?: boolean created_at?: boolean Recording?: boolean | RecordingDefaultArgs }, ExtArgs["result"]["bookmark"]> export type BookmarkSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean recording_id?: boolean timecode_ms?: boolean label?: boolean note?: boolean created_at?: boolean Recording?: boolean | RecordingDefaultArgs }, ExtArgs["result"]["bookmark"]> export type BookmarkSelectScalar = { id?: boolean recording_id?: boolean timecode_ms?: boolean label?: boolean note?: boolean created_at?: boolean } export type BookmarkInclude = { Recording?: boolean | RecordingDefaultArgs } export type BookmarkIncludeCreateManyAndReturn = { Recording?: boolean | RecordingDefaultArgs } export type $BookmarkPayload = { name: "Bookmark" objects: { Recording: Prisma.$RecordingPayload } scalars: $Extensions.GetPayloadResult<{ id: string recording_id: string timecode_ms: number label: string note: string | null created_at: Date }, ExtArgs["result"]["bookmark"]> composites: {} } type BookmarkGetPayload = $Result.GetResult type BookmarkCountArgs = Omit & { select?: BookmarkCountAggregateInputType | true } export interface BookmarkDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['Bookmark'], meta: { name: 'Bookmark' } } /** * Find zero or one Bookmark that matches the filter. * @param {BookmarkFindUniqueArgs} args - Arguments to find a Bookmark * @example * // Get one Bookmark * const bookmark = await prisma.bookmark.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__BookmarkClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one Bookmark that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {BookmarkFindUniqueOrThrowArgs} args - Arguments to find a Bookmark * @example * // Get one Bookmark * const bookmark = await prisma.bookmark.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__BookmarkClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first Bookmark that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {BookmarkFindFirstArgs} args - Arguments to find a Bookmark * @example * // Get one Bookmark * const bookmark = await prisma.bookmark.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__BookmarkClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first Bookmark that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {BookmarkFindFirstOrThrowArgs} args - Arguments to find a Bookmark * @example * // Get one Bookmark * const bookmark = await prisma.bookmark.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__BookmarkClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more Bookmarks that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {BookmarkFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Bookmarks * const bookmarks = await prisma.bookmark.findMany() * * // Get first 10 Bookmarks * const bookmarks = await prisma.bookmark.findMany({ take: 10 }) * * // Only select the `id` * const bookmarkWithIdOnly = await prisma.bookmark.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a Bookmark. * @param {BookmarkCreateArgs} args - Arguments to create a Bookmark. * @example * // Create one Bookmark * const Bookmark = await prisma.bookmark.create({ * data: { * // ... data to create a Bookmark * } * }) * */ create(args: SelectSubset>): Prisma__BookmarkClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many Bookmarks. * @param {BookmarkCreateManyArgs} args - Arguments to create many Bookmarks. * @example * // Create many Bookmarks * const bookmark = await prisma.bookmark.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many Bookmarks and returns the data saved in the database. * @param {BookmarkCreateManyAndReturnArgs} args - Arguments to create many Bookmarks. * @example * // Create many Bookmarks * const bookmark = await prisma.bookmark.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many Bookmarks and only return the `id` * const bookmarkWithIdOnly = await prisma.bookmark.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a Bookmark. * @param {BookmarkDeleteArgs} args - Arguments to delete one Bookmark. * @example * // Delete one Bookmark * const Bookmark = await prisma.bookmark.delete({ * where: { * // ... filter to delete one Bookmark * } * }) * */ delete(args: SelectSubset>): Prisma__BookmarkClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one Bookmark. * @param {BookmarkUpdateArgs} args - Arguments to update one Bookmark. * @example * // Update one Bookmark * const bookmark = await prisma.bookmark.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__BookmarkClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more Bookmarks. * @param {BookmarkDeleteManyArgs} args - Arguments to filter Bookmarks to delete. * @example * // Delete a few Bookmarks * const { count } = await prisma.bookmark.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Bookmarks. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {BookmarkUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Bookmarks * const bookmark = await prisma.bookmark.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one Bookmark. * @param {BookmarkUpsertArgs} args - Arguments to update or create a Bookmark. * @example * // Update or create a Bookmark * const bookmark = await prisma.bookmark.upsert({ * create: { * // ... data to create a Bookmark * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the Bookmark we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__BookmarkClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of Bookmarks. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {BookmarkCountArgs} args - Arguments to filter Bookmarks to count. * @example * // Count the number of Bookmarks * const count = await prisma.bookmark.count({ * where: { * // ... the filter for the Bookmarks we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a Bookmark. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {BookmarkAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by Bookmark. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {BookmarkGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends BookmarkGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: BookmarkGroupByArgs['orderBy'] } : { orderBy?: BookmarkGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetBookmarkGroupByPayload : Prisma.PrismaPromise /** * Fields of the Bookmark model */ readonly fields: BookmarkFieldRefs; } /** * The delegate class that acts as a "Promise-like" for Bookmark. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__BookmarkClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" Recording = {}>(args?: Subset>): Prisma__RecordingClient<$Result.GetResult, T, "findUniqueOrThrow"> | Null, Null, ExtArgs> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the Bookmark model */ interface BookmarkFieldRefs { readonly id: FieldRef<"Bookmark", 'String'> readonly recording_id: FieldRef<"Bookmark", 'String'> readonly timecode_ms: FieldRef<"Bookmark", 'Int'> readonly label: FieldRef<"Bookmark", 'String'> readonly note: FieldRef<"Bookmark", 'String'> readonly created_at: FieldRef<"Bookmark", 'DateTime'> } // Custom InputTypes /** * Bookmark findUnique */ export type BookmarkFindUniqueArgs = { /** * Select specific fields to fetch from the Bookmark */ select?: BookmarkSelect | null /** * Choose, which related nodes to fetch as well */ include?: BookmarkInclude | null /** * Filter, which Bookmark to fetch. */ where: BookmarkWhereUniqueInput } /** * Bookmark findUniqueOrThrow */ export type BookmarkFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the Bookmark */ select?: BookmarkSelect | null /** * Choose, which related nodes to fetch as well */ include?: BookmarkInclude | null /** * Filter, which Bookmark to fetch. */ where: BookmarkWhereUniqueInput } /** * Bookmark findFirst */ export type BookmarkFindFirstArgs = { /** * Select specific fields to fetch from the Bookmark */ select?: BookmarkSelect | null /** * Choose, which related nodes to fetch as well */ include?: BookmarkInclude | null /** * Filter, which Bookmark to fetch. */ where?: BookmarkWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Bookmarks to fetch. */ orderBy?: BookmarkOrderByWithRelationInput | BookmarkOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Bookmarks. */ cursor?: BookmarkWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Bookmarks from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Bookmarks. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Bookmarks. */ distinct?: BookmarkScalarFieldEnum | BookmarkScalarFieldEnum[] } /** * Bookmark findFirstOrThrow */ export type BookmarkFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the Bookmark */ select?: BookmarkSelect | null /** * Choose, which related nodes to fetch as well */ include?: BookmarkInclude | null /** * Filter, which Bookmark to fetch. */ where?: BookmarkWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Bookmarks to fetch. */ orderBy?: BookmarkOrderByWithRelationInput | BookmarkOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Bookmarks. */ cursor?: BookmarkWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Bookmarks from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Bookmarks. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Bookmarks. */ distinct?: BookmarkScalarFieldEnum | BookmarkScalarFieldEnum[] } /** * Bookmark findMany */ export type BookmarkFindManyArgs = { /** * Select specific fields to fetch from the Bookmark */ select?: BookmarkSelect | null /** * Choose, which related nodes to fetch as well */ include?: BookmarkInclude | null /** * Filter, which Bookmarks to fetch. */ where?: BookmarkWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Bookmarks to fetch. */ orderBy?: BookmarkOrderByWithRelationInput | BookmarkOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Bookmarks. */ cursor?: BookmarkWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Bookmarks from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Bookmarks. */ skip?: number distinct?: BookmarkScalarFieldEnum | BookmarkScalarFieldEnum[] } /** * Bookmark create */ export type BookmarkCreateArgs = { /** * Select specific fields to fetch from the Bookmark */ select?: BookmarkSelect | null /** * Choose, which related nodes to fetch as well */ include?: BookmarkInclude | null /** * The data needed to create a Bookmark. */ data: XOR } /** * Bookmark createMany */ export type BookmarkCreateManyArgs = { /** * The data used to create many Bookmarks. */ data: BookmarkCreateManyInput | BookmarkCreateManyInput[] } /** * Bookmark createManyAndReturn */ export type BookmarkCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the Bookmark */ select?: BookmarkSelectCreateManyAndReturn | null /** * The data used to create many Bookmarks. */ data: BookmarkCreateManyInput | BookmarkCreateManyInput[] /** * Choose, which related nodes to fetch as well */ include?: BookmarkIncludeCreateManyAndReturn | null } /** * Bookmark update */ export type BookmarkUpdateArgs = { /** * Select specific fields to fetch from the Bookmark */ select?: BookmarkSelect | null /** * Choose, which related nodes to fetch as well */ include?: BookmarkInclude | null /** * The data needed to update a Bookmark. */ data: XOR /** * Choose, which Bookmark to update. */ where: BookmarkWhereUniqueInput } /** * Bookmark updateMany */ export type BookmarkUpdateManyArgs = { /** * The data used to update Bookmarks. */ data: XOR /** * Filter which Bookmarks to update */ where?: BookmarkWhereInput } /** * Bookmark upsert */ export type BookmarkUpsertArgs = { /** * Select specific fields to fetch from the Bookmark */ select?: BookmarkSelect | null /** * Choose, which related nodes to fetch as well */ include?: BookmarkInclude | null /** * The filter to search for the Bookmark to update in case it exists. */ where: BookmarkWhereUniqueInput /** * In case the Bookmark found by the `where` argument doesn't exist, create a new Bookmark with this data. */ create: XOR /** * In case the Bookmark was found with the provided `where` argument, update it with this data. */ update: XOR } /** * Bookmark delete */ export type BookmarkDeleteArgs = { /** * Select specific fields to fetch from the Bookmark */ select?: BookmarkSelect | null /** * Choose, which related nodes to fetch as well */ include?: BookmarkInclude | null /** * Filter which Bookmark to delete. */ where: BookmarkWhereUniqueInput } /** * Bookmark deleteMany */ export type BookmarkDeleteManyArgs = { /** * Filter which Bookmarks to delete */ where?: BookmarkWhereInput } /** * Bookmark without action */ export type BookmarkDefaultArgs = { /** * Select specific fields to fetch from the Bookmark */ select?: BookmarkSelect | null /** * Choose, which related nodes to fetch as well */ include?: BookmarkInclude | null } /** * Model Annotation */ export type AggregateAnnotation = { _count: AnnotationCountAggregateOutputType | null _avg: AnnotationAvgAggregateOutputType | null _sum: AnnotationSumAggregateOutputType | null _min: AnnotationMinAggregateOutputType | null _max: AnnotationMaxAggregateOutputType | null } export type AnnotationAvgAggregateOutputType = { timecode_ms: number | null } export type AnnotationSumAggregateOutputType = { timecode_ms: number | null } export type AnnotationMinAggregateOutputType = { id: string | null recording_id: string | null timecode_ms: number | null shape: string | null geometry: string | null color: string | null text: string | null author: string | null created_at: Date | null } export type AnnotationMaxAggregateOutputType = { id: string | null recording_id: string | null timecode_ms: number | null shape: string | null geometry: string | null color: string | null text: string | null author: string | null created_at: Date | null } export type AnnotationCountAggregateOutputType = { id: number recording_id: number timecode_ms: number shape: number geometry: number color: number text: number author: number created_at: number _all: number } export type AnnotationAvgAggregateInputType = { timecode_ms?: true } export type AnnotationSumAggregateInputType = { timecode_ms?: true } export type AnnotationMinAggregateInputType = { id?: true recording_id?: true timecode_ms?: true shape?: true geometry?: true color?: true text?: true author?: true created_at?: true } export type AnnotationMaxAggregateInputType = { id?: true recording_id?: true timecode_ms?: true shape?: true geometry?: true color?: true text?: true author?: true created_at?: true } export type AnnotationCountAggregateInputType = { id?: true recording_id?: true timecode_ms?: true shape?: true geometry?: true color?: true text?: true author?: true created_at?: true _all?: true } export type AnnotationAggregateArgs = { /** * Filter which Annotation to aggregate. */ where?: AnnotationWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Annotations to fetch. */ orderBy?: AnnotationOrderByWithRelationInput | AnnotationOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: AnnotationWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Annotations from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Annotations. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Annotations **/ _count?: true | AnnotationCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: AnnotationAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: AnnotationSumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: AnnotationMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: AnnotationMaxAggregateInputType } export type GetAnnotationAggregateType = { [P in keyof T & keyof AggregateAnnotation]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type AnnotationGroupByArgs = { where?: AnnotationWhereInput orderBy?: AnnotationOrderByWithAggregationInput | AnnotationOrderByWithAggregationInput[] by: AnnotationScalarFieldEnum[] | AnnotationScalarFieldEnum having?: AnnotationScalarWhereWithAggregatesInput take?: number skip?: number _count?: AnnotationCountAggregateInputType | true _avg?: AnnotationAvgAggregateInputType _sum?: AnnotationSumAggregateInputType _min?: AnnotationMinAggregateInputType _max?: AnnotationMaxAggregateInputType } export type AnnotationGroupByOutputType = { id: string recording_id: string timecode_ms: number shape: string geometry: string color: string text: string | null author: string | null created_at: Date _count: AnnotationCountAggregateOutputType | null _avg: AnnotationAvgAggregateOutputType | null _sum: AnnotationSumAggregateOutputType | null _min: AnnotationMinAggregateOutputType | null _max: AnnotationMaxAggregateOutputType | null } type GetAnnotationGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof AnnotationGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type AnnotationSelect = $Extensions.GetSelect<{ id?: boolean recording_id?: boolean timecode_ms?: boolean shape?: boolean geometry?: boolean color?: boolean text?: boolean author?: boolean created_at?: boolean Recording?: boolean | RecordingDefaultArgs }, ExtArgs["result"]["annotation"]> export type AnnotationSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean recording_id?: boolean timecode_ms?: boolean shape?: boolean geometry?: boolean color?: boolean text?: boolean author?: boolean created_at?: boolean Recording?: boolean | RecordingDefaultArgs }, ExtArgs["result"]["annotation"]> export type AnnotationSelectScalar = { id?: boolean recording_id?: boolean timecode_ms?: boolean shape?: boolean geometry?: boolean color?: boolean text?: boolean author?: boolean created_at?: boolean } export type AnnotationInclude = { Recording?: boolean | RecordingDefaultArgs } export type AnnotationIncludeCreateManyAndReturn = { Recording?: boolean | RecordingDefaultArgs } export type $AnnotationPayload = { name: "Annotation" objects: { Recording: Prisma.$RecordingPayload } scalars: $Extensions.GetPayloadResult<{ id: string recording_id: string timecode_ms: number shape: string geometry: string color: string text: string | null author: string | null created_at: Date }, ExtArgs["result"]["annotation"]> composites: {} } type AnnotationGetPayload = $Result.GetResult type AnnotationCountArgs = Omit & { select?: AnnotationCountAggregateInputType | true } export interface AnnotationDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['Annotation'], meta: { name: 'Annotation' } } /** * Find zero or one Annotation that matches the filter. * @param {AnnotationFindUniqueArgs} args - Arguments to find a Annotation * @example * // Get one Annotation * const annotation = await prisma.annotation.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__AnnotationClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one Annotation that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {AnnotationFindUniqueOrThrowArgs} args - Arguments to find a Annotation * @example * // Get one Annotation * const annotation = await prisma.annotation.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__AnnotationClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first Annotation that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AnnotationFindFirstArgs} args - Arguments to find a Annotation * @example * // Get one Annotation * const annotation = await prisma.annotation.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__AnnotationClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first Annotation that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AnnotationFindFirstOrThrowArgs} args - Arguments to find a Annotation * @example * // Get one Annotation * const annotation = await prisma.annotation.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__AnnotationClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more Annotations that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AnnotationFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Annotations * const annotations = await prisma.annotation.findMany() * * // Get first 10 Annotations * const annotations = await prisma.annotation.findMany({ take: 10 }) * * // Only select the `id` * const annotationWithIdOnly = await prisma.annotation.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a Annotation. * @param {AnnotationCreateArgs} args - Arguments to create a Annotation. * @example * // Create one Annotation * const Annotation = await prisma.annotation.create({ * data: { * // ... data to create a Annotation * } * }) * */ create(args: SelectSubset>): Prisma__AnnotationClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many Annotations. * @param {AnnotationCreateManyArgs} args - Arguments to create many Annotations. * @example * // Create many Annotations * const annotation = await prisma.annotation.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many Annotations and returns the data saved in the database. * @param {AnnotationCreateManyAndReturnArgs} args - Arguments to create many Annotations. * @example * // Create many Annotations * const annotation = await prisma.annotation.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many Annotations and only return the `id` * const annotationWithIdOnly = await prisma.annotation.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a Annotation. * @param {AnnotationDeleteArgs} args - Arguments to delete one Annotation. * @example * // Delete one Annotation * const Annotation = await prisma.annotation.delete({ * where: { * // ... filter to delete one Annotation * } * }) * */ delete(args: SelectSubset>): Prisma__AnnotationClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one Annotation. * @param {AnnotationUpdateArgs} args - Arguments to update one Annotation. * @example * // Update one Annotation * const annotation = await prisma.annotation.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__AnnotationClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more Annotations. * @param {AnnotationDeleteManyArgs} args - Arguments to filter Annotations to delete. * @example * // Delete a few Annotations * const { count } = await prisma.annotation.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Annotations. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AnnotationUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Annotations * const annotation = await prisma.annotation.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one Annotation. * @param {AnnotationUpsertArgs} args - Arguments to update or create a Annotation. * @example * // Update or create a Annotation * const annotation = await prisma.annotation.upsert({ * create: { * // ... data to create a Annotation * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the Annotation we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__AnnotationClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of Annotations. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AnnotationCountArgs} args - Arguments to filter Annotations to count. * @example * // Count the number of Annotations * const count = await prisma.annotation.count({ * where: { * // ... the filter for the Annotations we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a Annotation. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AnnotationAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by Annotation. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AnnotationGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends AnnotationGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: AnnotationGroupByArgs['orderBy'] } : { orderBy?: AnnotationGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetAnnotationGroupByPayload : Prisma.PrismaPromise /** * Fields of the Annotation model */ readonly fields: AnnotationFieldRefs; } /** * The delegate class that acts as a "Promise-like" for Annotation. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__AnnotationClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" Recording = {}>(args?: Subset>): Prisma__RecordingClient<$Result.GetResult, T, "findUniqueOrThrow"> | Null, Null, ExtArgs> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the Annotation model */ interface AnnotationFieldRefs { readonly id: FieldRef<"Annotation", 'String'> readonly recording_id: FieldRef<"Annotation", 'String'> readonly timecode_ms: FieldRef<"Annotation", 'Int'> readonly shape: FieldRef<"Annotation", 'String'> readonly geometry: FieldRef<"Annotation", 'String'> readonly color: FieldRef<"Annotation", 'String'> readonly text: FieldRef<"Annotation", 'String'> readonly author: FieldRef<"Annotation", 'String'> readonly created_at: FieldRef<"Annotation", 'DateTime'> } // Custom InputTypes /** * Annotation findUnique */ export type AnnotationFindUniqueArgs = { /** * Select specific fields to fetch from the Annotation */ select?: AnnotationSelect | null /** * Choose, which related nodes to fetch as well */ include?: AnnotationInclude | null /** * Filter, which Annotation to fetch. */ where: AnnotationWhereUniqueInput } /** * Annotation findUniqueOrThrow */ export type AnnotationFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the Annotation */ select?: AnnotationSelect | null /** * Choose, which related nodes to fetch as well */ include?: AnnotationInclude | null /** * Filter, which Annotation to fetch. */ where: AnnotationWhereUniqueInput } /** * Annotation findFirst */ export type AnnotationFindFirstArgs = { /** * Select specific fields to fetch from the Annotation */ select?: AnnotationSelect | null /** * Choose, which related nodes to fetch as well */ include?: AnnotationInclude | null /** * Filter, which Annotation to fetch. */ where?: AnnotationWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Annotations to fetch. */ orderBy?: AnnotationOrderByWithRelationInput | AnnotationOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Annotations. */ cursor?: AnnotationWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Annotations from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Annotations. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Annotations. */ distinct?: AnnotationScalarFieldEnum | AnnotationScalarFieldEnum[] } /** * Annotation findFirstOrThrow */ export type AnnotationFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the Annotation */ select?: AnnotationSelect | null /** * Choose, which related nodes to fetch as well */ include?: AnnotationInclude | null /** * Filter, which Annotation to fetch. */ where?: AnnotationWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Annotations to fetch. */ orderBy?: AnnotationOrderByWithRelationInput | AnnotationOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Annotations. */ cursor?: AnnotationWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Annotations from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Annotations. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Annotations. */ distinct?: AnnotationScalarFieldEnum | AnnotationScalarFieldEnum[] } /** * Annotation findMany */ export type AnnotationFindManyArgs = { /** * Select specific fields to fetch from the Annotation */ select?: AnnotationSelect | null /** * Choose, which related nodes to fetch as well */ include?: AnnotationInclude | null /** * Filter, which Annotations to fetch. */ where?: AnnotationWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Annotations to fetch. */ orderBy?: AnnotationOrderByWithRelationInput | AnnotationOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Annotations. */ cursor?: AnnotationWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Annotations from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Annotations. */ skip?: number distinct?: AnnotationScalarFieldEnum | AnnotationScalarFieldEnum[] } /** * Annotation create */ export type AnnotationCreateArgs = { /** * Select specific fields to fetch from the Annotation */ select?: AnnotationSelect | null /** * Choose, which related nodes to fetch as well */ include?: AnnotationInclude | null /** * The data needed to create a Annotation. */ data: XOR } /** * Annotation createMany */ export type AnnotationCreateManyArgs = { /** * The data used to create many Annotations. */ data: AnnotationCreateManyInput | AnnotationCreateManyInput[] } /** * Annotation createManyAndReturn */ export type AnnotationCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the Annotation */ select?: AnnotationSelectCreateManyAndReturn | null /** * The data used to create many Annotations. */ data: AnnotationCreateManyInput | AnnotationCreateManyInput[] /** * Choose, which related nodes to fetch as well */ include?: AnnotationIncludeCreateManyAndReturn | null } /** * Annotation update */ export type AnnotationUpdateArgs = { /** * Select specific fields to fetch from the Annotation */ select?: AnnotationSelect | null /** * Choose, which related nodes to fetch as well */ include?: AnnotationInclude | null /** * The data needed to update a Annotation. */ data: XOR /** * Choose, which Annotation to update. */ where: AnnotationWhereUniqueInput } /** * Annotation updateMany */ export type AnnotationUpdateManyArgs = { /** * The data used to update Annotations. */ data: XOR /** * Filter which Annotations to update */ where?: AnnotationWhereInput } /** * Annotation upsert */ export type AnnotationUpsertArgs = { /** * Select specific fields to fetch from the Annotation */ select?: AnnotationSelect | null /** * Choose, which related nodes to fetch as well */ include?: AnnotationInclude | null /** * The filter to search for the Annotation to update in case it exists. */ where: AnnotationWhereUniqueInput /** * In case the Annotation found by the `where` argument doesn't exist, create a new Annotation with this data. */ create: XOR /** * In case the Annotation was found with the provided `where` argument, update it with this data. */ update: XOR } /** * Annotation delete */ export type AnnotationDeleteArgs = { /** * Select specific fields to fetch from the Annotation */ select?: AnnotationSelect | null /** * Choose, which related nodes to fetch as well */ include?: AnnotationInclude | null /** * Filter which Annotation to delete. */ where: AnnotationWhereUniqueInput } /** * Annotation deleteMany */ export type AnnotationDeleteManyArgs = { /** * Filter which Annotations to delete */ where?: AnnotationWhereInput } /** * Annotation without action */ export type AnnotationDefaultArgs = { /** * Select specific fields to fetch from the Annotation */ select?: AnnotationSelect | null /** * Choose, which related nodes to fetch as well */ include?: AnnotationInclude | null } /** * Model User */ export type AggregateUser = { _count: UserCountAggregateOutputType | null _min: UserMinAggregateOutputType | null _max: UserMaxAggregateOutputType | null } export type UserMinAggregateOutputType = { id: string | null email: string | null name: string | null passwordHash: string | null accessKey: string | null role: string | null status: string | null createdAt: Date | null updatedAt: Date | null lastLoginAt: Date | null passwordChangedAt: Date | null } export type UserMaxAggregateOutputType = { id: string | null email: string | null name: string | null passwordHash: string | null accessKey: string | null role: string | null status: string | null createdAt: Date | null updatedAt: Date | null lastLoginAt: Date | null passwordChangedAt: Date | null } export type UserCountAggregateOutputType = { id: number email: number name: number passwordHash: number accessKey: number role: number status: number createdAt: number updatedAt: number lastLoginAt: number passwordChangedAt: number _all: number } export type UserMinAggregateInputType = { id?: true email?: true name?: true passwordHash?: true accessKey?: true role?: true status?: true createdAt?: true updatedAt?: true lastLoginAt?: true passwordChangedAt?: true } export type UserMaxAggregateInputType = { id?: true email?: true name?: true passwordHash?: true accessKey?: true role?: true status?: true createdAt?: true updatedAt?: true lastLoginAt?: true passwordChangedAt?: true } export type UserCountAggregateInputType = { id?: true email?: true name?: true passwordHash?: true accessKey?: true role?: true status?: true createdAt?: true updatedAt?: true lastLoginAt?: true passwordChangedAt?: true _all?: true } export type UserAggregateArgs = { /** * Filter which User to aggregate. */ where?: UserWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Users to fetch. */ orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: UserWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Users from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Users. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Users **/ _count?: true | UserCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: UserMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: UserMaxAggregateInputType } export type GetUserAggregateType = { [P in keyof T & keyof AggregateUser]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type UserGroupByArgs = { where?: UserWhereInput orderBy?: UserOrderByWithAggregationInput | UserOrderByWithAggregationInput[] by: UserScalarFieldEnum[] | UserScalarFieldEnum having?: UserScalarWhereWithAggregatesInput take?: number skip?: number _count?: UserCountAggregateInputType | true _min?: UserMinAggregateInputType _max?: UserMaxAggregateInputType } export type UserGroupByOutputType = { id: string email: string name: string passwordHash: string accessKey: string role: string status: string createdAt: Date updatedAt: Date lastLoginAt: Date | null passwordChangedAt: Date | null _count: UserCountAggregateOutputType | null _min: UserMinAggregateOutputType | null _max: UserMaxAggregateOutputType | null } type GetUserGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof UserGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type UserSelect = $Extensions.GetSelect<{ id?: boolean email?: boolean name?: boolean passwordHash?: boolean accessKey?: boolean role?: boolean status?: boolean createdAt?: boolean updatedAt?: boolean lastLoginAt?: boolean passwordChangedAt?: boolean apiKeys?: boolean | User$apiKeysArgs sessions?: boolean | User$sessionsArgs passwordResetTokens?: boolean | User$passwordResetTokensArgs teamMemberships?: boolean | User$teamMembershipsArgs _count?: boolean | UserCountOutputTypeDefaultArgs }, ExtArgs["result"]["user"]> export type UserSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean email?: boolean name?: boolean passwordHash?: boolean accessKey?: boolean role?: boolean status?: boolean createdAt?: boolean updatedAt?: boolean lastLoginAt?: boolean passwordChangedAt?: boolean }, ExtArgs["result"]["user"]> export type UserSelectScalar = { id?: boolean email?: boolean name?: boolean passwordHash?: boolean accessKey?: boolean role?: boolean status?: boolean createdAt?: boolean updatedAt?: boolean lastLoginAt?: boolean passwordChangedAt?: boolean } export type UserInclude = { apiKeys?: boolean | User$apiKeysArgs sessions?: boolean | User$sessionsArgs passwordResetTokens?: boolean | User$passwordResetTokensArgs teamMemberships?: boolean | User$teamMembershipsArgs _count?: boolean | UserCountOutputTypeDefaultArgs } export type UserIncludeCreateManyAndReturn = {} export type $UserPayload = { name: "User" objects: { apiKeys: Prisma.$ApiKeyPayload[] sessions: Prisma.$UserSessionPayload[] passwordResetTokens: Prisma.$PasswordResetTokenPayload[] teamMemberships: Prisma.$TeamMemberPayload[] } scalars: $Extensions.GetPayloadResult<{ id: string email: string name: string passwordHash: string accessKey: string role: string status: string createdAt: Date updatedAt: Date lastLoginAt: Date | null passwordChangedAt: Date | null }, ExtArgs["result"]["user"]> composites: {} } type UserGetPayload = $Result.GetResult type UserCountArgs = Omit & { select?: UserCountAggregateInputType | true } export interface UserDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['User'], meta: { name: 'User' } } /** * Find zero or one User that matches the filter. * @param {UserFindUniqueArgs} args - Arguments to find a User * @example * // Get one User * const user = await prisma.user.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one User that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {UserFindUniqueOrThrowArgs} args - Arguments to find a User * @example * // Get one User * const user = await prisma.user.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first User that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {UserFindFirstArgs} args - Arguments to find a User * @example * // Get one User * const user = await prisma.user.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first User that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {UserFindFirstOrThrowArgs} args - Arguments to find a User * @example * // Get one User * const user = await prisma.user.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more Users that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {UserFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Users * const users = await prisma.user.findMany() * * // Get first 10 Users * const users = await prisma.user.findMany({ take: 10 }) * * // Only select the `id` * const userWithIdOnly = await prisma.user.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a User. * @param {UserCreateArgs} args - Arguments to create a User. * @example * // Create one User * const User = await prisma.user.create({ * data: { * // ... data to create a User * } * }) * */ create(args: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many Users. * @param {UserCreateManyArgs} args - Arguments to create many Users. * @example * // Create many Users * const user = await prisma.user.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many Users and returns the data saved in the database. * @param {UserCreateManyAndReturnArgs} args - Arguments to create many Users. * @example * // Create many Users * const user = await prisma.user.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many Users and only return the `id` * const userWithIdOnly = await prisma.user.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a User. * @param {UserDeleteArgs} args - Arguments to delete one User. * @example * // Delete one User * const User = await prisma.user.delete({ * where: { * // ... filter to delete one User * } * }) * */ delete(args: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one User. * @param {UserUpdateArgs} args - Arguments to update one User. * @example * // Update one User * const user = await prisma.user.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more Users. * @param {UserDeleteManyArgs} args - Arguments to filter Users to delete. * @example * // Delete a few Users * const { count } = await prisma.user.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Users. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {UserUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Users * const user = await prisma.user.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one User. * @param {UserUpsertArgs} args - Arguments to update or create a User. * @example * // Update or create a User * const user = await prisma.user.upsert({ * create: { * // ... data to create a User * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the User we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of Users. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {UserCountArgs} args - Arguments to filter Users to count. * @example * // Count the number of Users * const count = await prisma.user.count({ * where: { * // ... the filter for the Users we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a User. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {UserAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by User. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {UserGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends UserGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: UserGroupByArgs['orderBy'] } : { orderBy?: UserGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetUserGroupByPayload : Prisma.PrismaPromise /** * Fields of the User model */ readonly fields: UserFieldRefs; } /** * The delegate class that acts as a "Promise-like" for User. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__UserClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" apiKeys = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany"> | Null> sessions = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany"> | Null> passwordResetTokens = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany"> | Null> teamMemberships = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany"> | Null> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the User model */ interface UserFieldRefs { readonly id: FieldRef<"User", 'String'> readonly email: FieldRef<"User", 'String'> readonly name: FieldRef<"User", 'String'> readonly passwordHash: FieldRef<"User", 'String'> readonly accessKey: FieldRef<"User", 'String'> readonly role: FieldRef<"User", 'String'> readonly status: FieldRef<"User", 'String'> readonly createdAt: FieldRef<"User", 'DateTime'> readonly updatedAt: FieldRef<"User", 'DateTime'> readonly lastLoginAt: FieldRef<"User", 'DateTime'> readonly passwordChangedAt: FieldRef<"User", 'DateTime'> } // Custom InputTypes /** * User findUnique */ export type UserFindUniqueArgs = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserInclude | null /** * Filter, which User to fetch. */ where: UserWhereUniqueInput } /** * User findUniqueOrThrow */ export type UserFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserInclude | null /** * Filter, which User to fetch. */ where: UserWhereUniqueInput } /** * User findFirst */ export type UserFindFirstArgs = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserInclude | null /** * Filter, which User to fetch. */ where?: UserWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Users to fetch. */ orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Users. */ cursor?: UserWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Users from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Users. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Users. */ distinct?: UserScalarFieldEnum | UserScalarFieldEnum[] } /** * User findFirstOrThrow */ export type UserFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserInclude | null /** * Filter, which User to fetch. */ where?: UserWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Users to fetch. */ orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Users. */ cursor?: UserWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Users from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Users. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Users. */ distinct?: UserScalarFieldEnum | UserScalarFieldEnum[] } /** * User findMany */ export type UserFindManyArgs = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserInclude | null /** * Filter, which Users to fetch. */ where?: UserWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Users to fetch. */ orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Users. */ cursor?: UserWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Users from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Users. */ skip?: number distinct?: UserScalarFieldEnum | UserScalarFieldEnum[] } /** * User create */ export type UserCreateArgs = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserInclude | null /** * The data needed to create a User. */ data: XOR } /** * User createMany */ export type UserCreateManyArgs = { /** * The data used to create many Users. */ data: UserCreateManyInput | UserCreateManyInput[] } /** * User createManyAndReturn */ export type UserCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the User */ select?: UserSelectCreateManyAndReturn | null /** * The data used to create many Users. */ data: UserCreateManyInput | UserCreateManyInput[] } /** * User update */ export type UserUpdateArgs = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserInclude | null /** * The data needed to update a User. */ data: XOR /** * Choose, which User to update. */ where: UserWhereUniqueInput } /** * User updateMany */ export type UserUpdateManyArgs = { /** * The data used to update Users. */ data: XOR /** * Filter which Users to update */ where?: UserWhereInput } /** * User upsert */ export type UserUpsertArgs = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserInclude | null /** * The filter to search for the User to update in case it exists. */ where: UserWhereUniqueInput /** * In case the User found by the `where` argument doesn't exist, create a new User with this data. */ create: XOR /** * In case the User was found with the provided `where` argument, update it with this data. */ update: XOR } /** * User delete */ export type UserDeleteArgs = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserInclude | null /** * Filter which User to delete. */ where: UserWhereUniqueInput } /** * User deleteMany */ export type UserDeleteManyArgs = { /** * Filter which Users to delete */ where?: UserWhereInput } /** * User.apiKeys */ export type User$apiKeysArgs = { /** * Select specific fields to fetch from the ApiKey */ select?: ApiKeySelect | null /** * Choose, which related nodes to fetch as well */ include?: ApiKeyInclude | null where?: ApiKeyWhereInput orderBy?: ApiKeyOrderByWithRelationInput | ApiKeyOrderByWithRelationInput[] cursor?: ApiKeyWhereUniqueInput take?: number skip?: number distinct?: ApiKeyScalarFieldEnum | ApiKeyScalarFieldEnum[] } /** * User.sessions */ export type User$sessionsArgs = { /** * Select specific fields to fetch from the UserSession */ select?: UserSessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserSessionInclude | null where?: UserSessionWhereInput orderBy?: UserSessionOrderByWithRelationInput | UserSessionOrderByWithRelationInput[] cursor?: UserSessionWhereUniqueInput take?: number skip?: number distinct?: UserSessionScalarFieldEnum | UserSessionScalarFieldEnum[] } /** * User.passwordResetTokens */ export type User$passwordResetTokensArgs = { /** * Select specific fields to fetch from the PasswordResetToken */ select?: PasswordResetTokenSelect | null /** * Choose, which related nodes to fetch as well */ include?: PasswordResetTokenInclude | null where?: PasswordResetTokenWhereInput orderBy?: PasswordResetTokenOrderByWithRelationInput | PasswordResetTokenOrderByWithRelationInput[] cursor?: PasswordResetTokenWhereUniqueInput take?: number skip?: number distinct?: PasswordResetTokenScalarFieldEnum | PasswordResetTokenScalarFieldEnum[] } /** * User.teamMemberships */ export type User$teamMembershipsArgs = { /** * Select specific fields to fetch from the TeamMember */ select?: TeamMemberSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamMemberInclude | null where?: TeamMemberWhereInput orderBy?: TeamMemberOrderByWithRelationInput | TeamMemberOrderByWithRelationInput[] cursor?: TeamMemberWhereUniqueInput take?: number skip?: number distinct?: TeamMemberScalarFieldEnum | TeamMemberScalarFieldEnum[] } /** * User without action */ export type UserDefaultArgs = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserInclude | null } /** * Model UserSession */ export type AggregateUserSession = { _count: UserSessionCountAggregateOutputType | null _min: UserSessionMinAggregateOutputType | null _max: UserSessionMaxAggregateOutputType | null } export type UserSessionMinAggregateOutputType = { id: string | null userId: string | null createdAt: Date | null expiresAt: Date | null lastSeenAt: Date | null userAgent: string | null ipHash: string | null } export type UserSessionMaxAggregateOutputType = { id: string | null userId: string | null createdAt: Date | null expiresAt: Date | null lastSeenAt: Date | null userAgent: string | null ipHash: string | null } export type UserSessionCountAggregateOutputType = { id: number userId: number createdAt: number expiresAt: number lastSeenAt: number userAgent: number ipHash: number _all: number } export type UserSessionMinAggregateInputType = { id?: true userId?: true createdAt?: true expiresAt?: true lastSeenAt?: true userAgent?: true ipHash?: true } export type UserSessionMaxAggregateInputType = { id?: true userId?: true createdAt?: true expiresAt?: true lastSeenAt?: true userAgent?: true ipHash?: true } export type UserSessionCountAggregateInputType = { id?: true userId?: true createdAt?: true expiresAt?: true lastSeenAt?: true userAgent?: true ipHash?: true _all?: true } export type UserSessionAggregateArgs = { /** * Filter which UserSession to aggregate. */ where?: UserSessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of UserSessions to fetch. */ orderBy?: UserSessionOrderByWithRelationInput | UserSessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: UserSessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` UserSessions from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` UserSessions. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned UserSessions **/ _count?: true | UserSessionCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: UserSessionMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: UserSessionMaxAggregateInputType } export type GetUserSessionAggregateType = { [P in keyof T & keyof AggregateUserSession]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type UserSessionGroupByArgs = { where?: UserSessionWhereInput orderBy?: UserSessionOrderByWithAggregationInput | UserSessionOrderByWithAggregationInput[] by: UserSessionScalarFieldEnum[] | UserSessionScalarFieldEnum having?: UserSessionScalarWhereWithAggregatesInput take?: number skip?: number _count?: UserSessionCountAggregateInputType | true _min?: UserSessionMinAggregateInputType _max?: UserSessionMaxAggregateInputType } export type UserSessionGroupByOutputType = { id: string userId: string createdAt: Date expiresAt: Date lastSeenAt: Date userAgent: string | null ipHash: string | null _count: UserSessionCountAggregateOutputType | null _min: UserSessionMinAggregateOutputType | null _max: UserSessionMaxAggregateOutputType | null } type GetUserSessionGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof UserSessionGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type UserSessionSelect = $Extensions.GetSelect<{ id?: boolean userId?: boolean createdAt?: boolean expiresAt?: boolean lastSeenAt?: boolean userAgent?: boolean ipHash?: boolean user?: boolean | UserDefaultArgs }, ExtArgs["result"]["userSession"]> export type UserSessionSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean userId?: boolean createdAt?: boolean expiresAt?: boolean lastSeenAt?: boolean userAgent?: boolean ipHash?: boolean user?: boolean | UserDefaultArgs }, ExtArgs["result"]["userSession"]> export type UserSessionSelectScalar = { id?: boolean userId?: boolean createdAt?: boolean expiresAt?: boolean lastSeenAt?: boolean userAgent?: boolean ipHash?: boolean } export type UserSessionInclude = { user?: boolean | UserDefaultArgs } export type UserSessionIncludeCreateManyAndReturn = { user?: boolean | UserDefaultArgs } export type $UserSessionPayload = { name: "UserSession" objects: { user: Prisma.$UserPayload } scalars: $Extensions.GetPayloadResult<{ id: string userId: string createdAt: Date expiresAt: Date lastSeenAt: Date userAgent: string | null ipHash: string | null }, ExtArgs["result"]["userSession"]> composites: {} } type UserSessionGetPayload = $Result.GetResult type UserSessionCountArgs = Omit & { select?: UserSessionCountAggregateInputType | true } export interface UserSessionDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['UserSession'], meta: { name: 'UserSession' } } /** * Find zero or one UserSession that matches the filter. * @param {UserSessionFindUniqueArgs} args - Arguments to find a UserSession * @example * // Get one UserSession * const userSession = await prisma.userSession.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__UserSessionClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one UserSession that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {UserSessionFindUniqueOrThrowArgs} args - Arguments to find a UserSession * @example * // Get one UserSession * const userSession = await prisma.userSession.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__UserSessionClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first UserSession that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {UserSessionFindFirstArgs} args - Arguments to find a UserSession * @example * // Get one UserSession * const userSession = await prisma.userSession.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__UserSessionClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first UserSession that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {UserSessionFindFirstOrThrowArgs} args - Arguments to find a UserSession * @example * // Get one UserSession * const userSession = await prisma.userSession.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__UserSessionClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more UserSessions that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {UserSessionFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all UserSessions * const userSessions = await prisma.userSession.findMany() * * // Get first 10 UserSessions * const userSessions = await prisma.userSession.findMany({ take: 10 }) * * // Only select the `id` * const userSessionWithIdOnly = await prisma.userSession.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a UserSession. * @param {UserSessionCreateArgs} args - Arguments to create a UserSession. * @example * // Create one UserSession * const UserSession = await prisma.userSession.create({ * data: { * // ... data to create a UserSession * } * }) * */ create(args: SelectSubset>): Prisma__UserSessionClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many UserSessions. * @param {UserSessionCreateManyArgs} args - Arguments to create many UserSessions. * @example * // Create many UserSessions * const userSession = await prisma.userSession.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many UserSessions and returns the data saved in the database. * @param {UserSessionCreateManyAndReturnArgs} args - Arguments to create many UserSessions. * @example * // Create many UserSessions * const userSession = await prisma.userSession.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many UserSessions and only return the `id` * const userSessionWithIdOnly = await prisma.userSession.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a UserSession. * @param {UserSessionDeleteArgs} args - Arguments to delete one UserSession. * @example * // Delete one UserSession * const UserSession = await prisma.userSession.delete({ * where: { * // ... filter to delete one UserSession * } * }) * */ delete(args: SelectSubset>): Prisma__UserSessionClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one UserSession. * @param {UserSessionUpdateArgs} args - Arguments to update one UserSession. * @example * // Update one UserSession * const userSession = await prisma.userSession.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__UserSessionClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more UserSessions. * @param {UserSessionDeleteManyArgs} args - Arguments to filter UserSessions to delete. * @example * // Delete a few UserSessions * const { count } = await prisma.userSession.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more UserSessions. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {UserSessionUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many UserSessions * const userSession = await prisma.userSession.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one UserSession. * @param {UserSessionUpsertArgs} args - Arguments to update or create a UserSession. * @example * // Update or create a UserSession * const userSession = await prisma.userSession.upsert({ * create: { * // ... data to create a UserSession * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the UserSession we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__UserSessionClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of UserSessions. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {UserSessionCountArgs} args - Arguments to filter UserSessions to count. * @example * // Count the number of UserSessions * const count = await prisma.userSession.count({ * where: { * // ... the filter for the UserSessions we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a UserSession. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {UserSessionAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by UserSession. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {UserSessionGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends UserSessionGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: UserSessionGroupByArgs['orderBy'] } : { orderBy?: UserSessionGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetUserSessionGroupByPayload : Prisma.PrismaPromise /** * Fields of the UserSession model */ readonly fields: UserSessionFieldRefs; } /** * The delegate class that acts as a "Promise-like" for UserSession. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__UserSessionClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" user = {}>(args?: Subset>): Prisma__UserClient<$Result.GetResult, T, "findUniqueOrThrow"> | Null, Null, ExtArgs> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the UserSession model */ interface UserSessionFieldRefs { readonly id: FieldRef<"UserSession", 'String'> readonly userId: FieldRef<"UserSession", 'String'> readonly createdAt: FieldRef<"UserSession", 'DateTime'> readonly expiresAt: FieldRef<"UserSession", 'DateTime'> readonly lastSeenAt: FieldRef<"UserSession", 'DateTime'> readonly userAgent: FieldRef<"UserSession", 'String'> readonly ipHash: FieldRef<"UserSession", 'String'> } // Custom InputTypes /** * UserSession findUnique */ export type UserSessionFindUniqueArgs = { /** * Select specific fields to fetch from the UserSession */ select?: UserSessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserSessionInclude | null /** * Filter, which UserSession to fetch. */ where: UserSessionWhereUniqueInput } /** * UserSession findUniqueOrThrow */ export type UserSessionFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the UserSession */ select?: UserSessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserSessionInclude | null /** * Filter, which UserSession to fetch. */ where: UserSessionWhereUniqueInput } /** * UserSession findFirst */ export type UserSessionFindFirstArgs = { /** * Select specific fields to fetch from the UserSession */ select?: UserSessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserSessionInclude | null /** * Filter, which UserSession to fetch. */ where?: UserSessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of UserSessions to fetch. */ orderBy?: UserSessionOrderByWithRelationInput | UserSessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for UserSessions. */ cursor?: UserSessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` UserSessions from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` UserSessions. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of UserSessions. */ distinct?: UserSessionScalarFieldEnum | UserSessionScalarFieldEnum[] } /** * UserSession findFirstOrThrow */ export type UserSessionFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the UserSession */ select?: UserSessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserSessionInclude | null /** * Filter, which UserSession to fetch. */ where?: UserSessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of UserSessions to fetch. */ orderBy?: UserSessionOrderByWithRelationInput | UserSessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for UserSessions. */ cursor?: UserSessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` UserSessions from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` UserSessions. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of UserSessions. */ distinct?: UserSessionScalarFieldEnum | UserSessionScalarFieldEnum[] } /** * UserSession findMany */ export type UserSessionFindManyArgs = { /** * Select specific fields to fetch from the UserSession */ select?: UserSessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserSessionInclude | null /** * Filter, which UserSessions to fetch. */ where?: UserSessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of UserSessions to fetch. */ orderBy?: UserSessionOrderByWithRelationInput | UserSessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing UserSessions. */ cursor?: UserSessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` UserSessions from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` UserSessions. */ skip?: number distinct?: UserSessionScalarFieldEnum | UserSessionScalarFieldEnum[] } /** * UserSession create */ export type UserSessionCreateArgs = { /** * Select specific fields to fetch from the UserSession */ select?: UserSessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserSessionInclude | null /** * The data needed to create a UserSession. */ data: XOR } /** * UserSession createMany */ export type UserSessionCreateManyArgs = { /** * The data used to create many UserSessions. */ data: UserSessionCreateManyInput | UserSessionCreateManyInput[] } /** * UserSession createManyAndReturn */ export type UserSessionCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the UserSession */ select?: UserSessionSelectCreateManyAndReturn | null /** * The data used to create many UserSessions. */ data: UserSessionCreateManyInput | UserSessionCreateManyInput[] /** * Choose, which related nodes to fetch as well */ include?: UserSessionIncludeCreateManyAndReturn | null } /** * UserSession update */ export type UserSessionUpdateArgs = { /** * Select specific fields to fetch from the UserSession */ select?: UserSessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserSessionInclude | null /** * The data needed to update a UserSession. */ data: XOR /** * Choose, which UserSession to update. */ where: UserSessionWhereUniqueInput } /** * UserSession updateMany */ export type UserSessionUpdateManyArgs = { /** * The data used to update UserSessions. */ data: XOR /** * Filter which UserSessions to update */ where?: UserSessionWhereInput } /** * UserSession upsert */ export type UserSessionUpsertArgs = { /** * Select specific fields to fetch from the UserSession */ select?: UserSessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserSessionInclude | null /** * The filter to search for the UserSession to update in case it exists. */ where: UserSessionWhereUniqueInput /** * In case the UserSession found by the `where` argument doesn't exist, create a new UserSession with this data. */ create: XOR /** * In case the UserSession was found with the provided `where` argument, update it with this data. */ update: XOR } /** * UserSession delete */ export type UserSessionDeleteArgs = { /** * Select specific fields to fetch from the UserSession */ select?: UserSessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserSessionInclude | null /** * Filter which UserSession to delete. */ where: UserSessionWhereUniqueInput } /** * UserSession deleteMany */ export type UserSessionDeleteManyArgs = { /** * Filter which UserSessions to delete */ where?: UserSessionWhereInput } /** * UserSession without action */ export type UserSessionDefaultArgs = { /** * Select specific fields to fetch from the UserSession */ select?: UserSessionSelect | null /** * Choose, which related nodes to fetch as well */ include?: UserSessionInclude | null } /** * Model PasswordResetToken */ export type AggregatePasswordResetToken = { _count: PasswordResetTokenCountAggregateOutputType | null _min: PasswordResetTokenMinAggregateOutputType | null _max: PasswordResetTokenMaxAggregateOutputType | null } export type PasswordResetTokenMinAggregateOutputType = { id: string | null userId: string | null tokenHash: string | null createdAt: Date | null expiresAt: Date | null usedAt: Date | null } export type PasswordResetTokenMaxAggregateOutputType = { id: string | null userId: string | null tokenHash: string | null createdAt: Date | null expiresAt: Date | null usedAt: Date | null } export type PasswordResetTokenCountAggregateOutputType = { id: number userId: number tokenHash: number createdAt: number expiresAt: number usedAt: number _all: number } export type PasswordResetTokenMinAggregateInputType = { id?: true userId?: true tokenHash?: true createdAt?: true expiresAt?: true usedAt?: true } export type PasswordResetTokenMaxAggregateInputType = { id?: true userId?: true tokenHash?: true createdAt?: true expiresAt?: true usedAt?: true } export type PasswordResetTokenCountAggregateInputType = { id?: true userId?: true tokenHash?: true createdAt?: true expiresAt?: true usedAt?: true _all?: true } export type PasswordResetTokenAggregateArgs = { /** * Filter which PasswordResetToken to aggregate. */ where?: PasswordResetTokenWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of PasswordResetTokens to fetch. */ orderBy?: PasswordResetTokenOrderByWithRelationInput | PasswordResetTokenOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: PasswordResetTokenWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` PasswordResetTokens from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` PasswordResetTokens. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned PasswordResetTokens **/ _count?: true | PasswordResetTokenCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: PasswordResetTokenMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: PasswordResetTokenMaxAggregateInputType } export type GetPasswordResetTokenAggregateType = { [P in keyof T & keyof AggregatePasswordResetToken]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type PasswordResetTokenGroupByArgs = { where?: PasswordResetTokenWhereInput orderBy?: PasswordResetTokenOrderByWithAggregationInput | PasswordResetTokenOrderByWithAggregationInput[] by: PasswordResetTokenScalarFieldEnum[] | PasswordResetTokenScalarFieldEnum having?: PasswordResetTokenScalarWhereWithAggregatesInput take?: number skip?: number _count?: PasswordResetTokenCountAggregateInputType | true _min?: PasswordResetTokenMinAggregateInputType _max?: PasswordResetTokenMaxAggregateInputType } export type PasswordResetTokenGroupByOutputType = { id: string userId: string tokenHash: string createdAt: Date expiresAt: Date usedAt: Date | null _count: PasswordResetTokenCountAggregateOutputType | null _min: PasswordResetTokenMinAggregateOutputType | null _max: PasswordResetTokenMaxAggregateOutputType | null } type GetPasswordResetTokenGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof PasswordResetTokenGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type PasswordResetTokenSelect = $Extensions.GetSelect<{ id?: boolean userId?: boolean tokenHash?: boolean createdAt?: boolean expiresAt?: boolean usedAt?: boolean user?: boolean | UserDefaultArgs }, ExtArgs["result"]["passwordResetToken"]> export type PasswordResetTokenSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean userId?: boolean tokenHash?: boolean createdAt?: boolean expiresAt?: boolean usedAt?: boolean user?: boolean | UserDefaultArgs }, ExtArgs["result"]["passwordResetToken"]> export type PasswordResetTokenSelectScalar = { id?: boolean userId?: boolean tokenHash?: boolean createdAt?: boolean expiresAt?: boolean usedAt?: boolean } export type PasswordResetTokenInclude = { user?: boolean | UserDefaultArgs } export type PasswordResetTokenIncludeCreateManyAndReturn = { user?: boolean | UserDefaultArgs } export type $PasswordResetTokenPayload = { name: "PasswordResetToken" objects: { user: Prisma.$UserPayload } scalars: $Extensions.GetPayloadResult<{ id: string userId: string tokenHash: string createdAt: Date expiresAt: Date usedAt: Date | null }, ExtArgs["result"]["passwordResetToken"]> composites: {} } type PasswordResetTokenGetPayload = $Result.GetResult type PasswordResetTokenCountArgs = Omit & { select?: PasswordResetTokenCountAggregateInputType | true } export interface PasswordResetTokenDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['PasswordResetToken'], meta: { name: 'PasswordResetToken' } } /** * Find zero or one PasswordResetToken that matches the filter. * @param {PasswordResetTokenFindUniqueArgs} args - Arguments to find a PasswordResetToken * @example * // Get one PasswordResetToken * const passwordResetToken = await prisma.passwordResetToken.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__PasswordResetTokenClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one PasswordResetToken that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {PasswordResetTokenFindUniqueOrThrowArgs} args - Arguments to find a PasswordResetToken * @example * // Get one PasswordResetToken * const passwordResetToken = await prisma.passwordResetToken.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__PasswordResetTokenClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first PasswordResetToken that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PasswordResetTokenFindFirstArgs} args - Arguments to find a PasswordResetToken * @example * // Get one PasswordResetToken * const passwordResetToken = await prisma.passwordResetToken.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__PasswordResetTokenClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first PasswordResetToken that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PasswordResetTokenFindFirstOrThrowArgs} args - Arguments to find a PasswordResetToken * @example * // Get one PasswordResetToken * const passwordResetToken = await prisma.passwordResetToken.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__PasswordResetTokenClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more PasswordResetTokens that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PasswordResetTokenFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all PasswordResetTokens * const passwordResetTokens = await prisma.passwordResetToken.findMany() * * // Get first 10 PasswordResetTokens * const passwordResetTokens = await prisma.passwordResetToken.findMany({ take: 10 }) * * // Only select the `id` * const passwordResetTokenWithIdOnly = await prisma.passwordResetToken.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a PasswordResetToken. * @param {PasswordResetTokenCreateArgs} args - Arguments to create a PasswordResetToken. * @example * // Create one PasswordResetToken * const PasswordResetToken = await prisma.passwordResetToken.create({ * data: { * // ... data to create a PasswordResetToken * } * }) * */ create(args: SelectSubset>): Prisma__PasswordResetTokenClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many PasswordResetTokens. * @param {PasswordResetTokenCreateManyArgs} args - Arguments to create many PasswordResetTokens. * @example * // Create many PasswordResetTokens * const passwordResetToken = await prisma.passwordResetToken.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many PasswordResetTokens and returns the data saved in the database. * @param {PasswordResetTokenCreateManyAndReturnArgs} args - Arguments to create many PasswordResetTokens. * @example * // Create many PasswordResetTokens * const passwordResetToken = await prisma.passwordResetToken.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many PasswordResetTokens and only return the `id` * const passwordResetTokenWithIdOnly = await prisma.passwordResetToken.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a PasswordResetToken. * @param {PasswordResetTokenDeleteArgs} args - Arguments to delete one PasswordResetToken. * @example * // Delete one PasswordResetToken * const PasswordResetToken = await prisma.passwordResetToken.delete({ * where: { * // ... filter to delete one PasswordResetToken * } * }) * */ delete(args: SelectSubset>): Prisma__PasswordResetTokenClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one PasswordResetToken. * @param {PasswordResetTokenUpdateArgs} args - Arguments to update one PasswordResetToken. * @example * // Update one PasswordResetToken * const passwordResetToken = await prisma.passwordResetToken.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__PasswordResetTokenClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more PasswordResetTokens. * @param {PasswordResetTokenDeleteManyArgs} args - Arguments to filter PasswordResetTokens to delete. * @example * // Delete a few PasswordResetTokens * const { count } = await prisma.passwordResetToken.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more PasswordResetTokens. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PasswordResetTokenUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many PasswordResetTokens * const passwordResetToken = await prisma.passwordResetToken.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one PasswordResetToken. * @param {PasswordResetTokenUpsertArgs} args - Arguments to update or create a PasswordResetToken. * @example * // Update or create a PasswordResetToken * const passwordResetToken = await prisma.passwordResetToken.upsert({ * create: { * // ... data to create a PasswordResetToken * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the PasswordResetToken we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__PasswordResetTokenClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of PasswordResetTokens. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PasswordResetTokenCountArgs} args - Arguments to filter PasswordResetTokens to count. * @example * // Count the number of PasswordResetTokens * const count = await prisma.passwordResetToken.count({ * where: { * // ... the filter for the PasswordResetTokens we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a PasswordResetToken. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PasswordResetTokenAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by PasswordResetToken. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PasswordResetTokenGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends PasswordResetTokenGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: PasswordResetTokenGroupByArgs['orderBy'] } : { orderBy?: PasswordResetTokenGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetPasswordResetTokenGroupByPayload : Prisma.PrismaPromise /** * Fields of the PasswordResetToken model */ readonly fields: PasswordResetTokenFieldRefs; } /** * The delegate class that acts as a "Promise-like" for PasswordResetToken. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__PasswordResetTokenClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" user = {}>(args?: Subset>): Prisma__UserClient<$Result.GetResult, T, "findUniqueOrThrow"> | Null, Null, ExtArgs> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the PasswordResetToken model */ interface PasswordResetTokenFieldRefs { readonly id: FieldRef<"PasswordResetToken", 'String'> readonly userId: FieldRef<"PasswordResetToken", 'String'> readonly tokenHash: FieldRef<"PasswordResetToken", 'String'> readonly createdAt: FieldRef<"PasswordResetToken", 'DateTime'> readonly expiresAt: FieldRef<"PasswordResetToken", 'DateTime'> readonly usedAt: FieldRef<"PasswordResetToken", 'DateTime'> } // Custom InputTypes /** * PasswordResetToken findUnique */ export type PasswordResetTokenFindUniqueArgs = { /** * Select specific fields to fetch from the PasswordResetToken */ select?: PasswordResetTokenSelect | null /** * Choose, which related nodes to fetch as well */ include?: PasswordResetTokenInclude | null /** * Filter, which PasswordResetToken to fetch. */ where: PasswordResetTokenWhereUniqueInput } /** * PasswordResetToken findUniqueOrThrow */ export type PasswordResetTokenFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the PasswordResetToken */ select?: PasswordResetTokenSelect | null /** * Choose, which related nodes to fetch as well */ include?: PasswordResetTokenInclude | null /** * Filter, which PasswordResetToken to fetch. */ where: PasswordResetTokenWhereUniqueInput } /** * PasswordResetToken findFirst */ export type PasswordResetTokenFindFirstArgs = { /** * Select specific fields to fetch from the PasswordResetToken */ select?: PasswordResetTokenSelect | null /** * Choose, which related nodes to fetch as well */ include?: PasswordResetTokenInclude | null /** * Filter, which PasswordResetToken to fetch. */ where?: PasswordResetTokenWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of PasswordResetTokens to fetch. */ orderBy?: PasswordResetTokenOrderByWithRelationInput | PasswordResetTokenOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for PasswordResetTokens. */ cursor?: PasswordResetTokenWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` PasswordResetTokens from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` PasswordResetTokens. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of PasswordResetTokens. */ distinct?: PasswordResetTokenScalarFieldEnum | PasswordResetTokenScalarFieldEnum[] } /** * PasswordResetToken findFirstOrThrow */ export type PasswordResetTokenFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the PasswordResetToken */ select?: PasswordResetTokenSelect | null /** * Choose, which related nodes to fetch as well */ include?: PasswordResetTokenInclude | null /** * Filter, which PasswordResetToken to fetch. */ where?: PasswordResetTokenWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of PasswordResetTokens to fetch. */ orderBy?: PasswordResetTokenOrderByWithRelationInput | PasswordResetTokenOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for PasswordResetTokens. */ cursor?: PasswordResetTokenWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` PasswordResetTokens from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` PasswordResetTokens. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of PasswordResetTokens. */ distinct?: PasswordResetTokenScalarFieldEnum | PasswordResetTokenScalarFieldEnum[] } /** * PasswordResetToken findMany */ export type PasswordResetTokenFindManyArgs = { /** * Select specific fields to fetch from the PasswordResetToken */ select?: PasswordResetTokenSelect | null /** * Choose, which related nodes to fetch as well */ include?: PasswordResetTokenInclude | null /** * Filter, which PasswordResetTokens to fetch. */ where?: PasswordResetTokenWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of PasswordResetTokens to fetch. */ orderBy?: PasswordResetTokenOrderByWithRelationInput | PasswordResetTokenOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing PasswordResetTokens. */ cursor?: PasswordResetTokenWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` PasswordResetTokens from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` PasswordResetTokens. */ skip?: number distinct?: PasswordResetTokenScalarFieldEnum | PasswordResetTokenScalarFieldEnum[] } /** * PasswordResetToken create */ export type PasswordResetTokenCreateArgs = { /** * Select specific fields to fetch from the PasswordResetToken */ select?: PasswordResetTokenSelect | null /** * Choose, which related nodes to fetch as well */ include?: PasswordResetTokenInclude | null /** * The data needed to create a PasswordResetToken. */ data: XOR } /** * PasswordResetToken createMany */ export type PasswordResetTokenCreateManyArgs = { /** * The data used to create many PasswordResetTokens. */ data: PasswordResetTokenCreateManyInput | PasswordResetTokenCreateManyInput[] } /** * PasswordResetToken createManyAndReturn */ export type PasswordResetTokenCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the PasswordResetToken */ select?: PasswordResetTokenSelectCreateManyAndReturn | null /** * The data used to create many PasswordResetTokens. */ data: PasswordResetTokenCreateManyInput | PasswordResetTokenCreateManyInput[] /** * Choose, which related nodes to fetch as well */ include?: PasswordResetTokenIncludeCreateManyAndReturn | null } /** * PasswordResetToken update */ export type PasswordResetTokenUpdateArgs = { /** * Select specific fields to fetch from the PasswordResetToken */ select?: PasswordResetTokenSelect | null /** * Choose, which related nodes to fetch as well */ include?: PasswordResetTokenInclude | null /** * The data needed to update a PasswordResetToken. */ data: XOR /** * Choose, which PasswordResetToken to update. */ where: PasswordResetTokenWhereUniqueInput } /** * PasswordResetToken updateMany */ export type PasswordResetTokenUpdateManyArgs = { /** * The data used to update PasswordResetTokens. */ data: XOR /** * Filter which PasswordResetTokens to update */ where?: PasswordResetTokenWhereInput } /** * PasswordResetToken upsert */ export type PasswordResetTokenUpsertArgs = { /** * Select specific fields to fetch from the PasswordResetToken */ select?: PasswordResetTokenSelect | null /** * Choose, which related nodes to fetch as well */ include?: PasswordResetTokenInclude | null /** * The filter to search for the PasswordResetToken to update in case it exists. */ where: PasswordResetTokenWhereUniqueInput /** * In case the PasswordResetToken found by the `where` argument doesn't exist, create a new PasswordResetToken with this data. */ create: XOR /** * In case the PasswordResetToken was found with the provided `where` argument, update it with this data. */ update: XOR } /** * PasswordResetToken delete */ export type PasswordResetTokenDeleteArgs = { /** * Select specific fields to fetch from the PasswordResetToken */ select?: PasswordResetTokenSelect | null /** * Choose, which related nodes to fetch as well */ include?: PasswordResetTokenInclude | null /** * Filter which PasswordResetToken to delete. */ where: PasswordResetTokenWhereUniqueInput } /** * PasswordResetToken deleteMany */ export type PasswordResetTokenDeleteManyArgs = { /** * Filter which PasswordResetTokens to delete */ where?: PasswordResetTokenWhereInput } /** * PasswordResetToken without action */ export type PasswordResetTokenDefaultArgs = { /** * Select specific fields to fetch from the PasswordResetToken */ select?: PasswordResetTokenSelect | null /** * Choose, which related nodes to fetch as well */ include?: PasswordResetTokenInclude | null } /** * Model TeamMember */ export type AggregateTeamMember = { _count: TeamMemberCountAggregateOutputType | null _min: TeamMemberMinAggregateOutputType | null _max: TeamMemberMaxAggregateOutputType | null } export type TeamMemberMinAggregateOutputType = { teamId: string | null userId: string | null createdAt: Date | null } export type TeamMemberMaxAggregateOutputType = { teamId: string | null userId: string | null createdAt: Date | null } export type TeamMemberCountAggregateOutputType = { teamId: number userId: number createdAt: number _all: number } export type TeamMemberMinAggregateInputType = { teamId?: true userId?: true createdAt?: true } export type TeamMemberMaxAggregateInputType = { teamId?: true userId?: true createdAt?: true } export type TeamMemberCountAggregateInputType = { teamId?: true userId?: true createdAt?: true _all?: true } export type TeamMemberAggregateArgs = { /** * Filter which TeamMember to aggregate. */ where?: TeamMemberWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of TeamMembers to fetch. */ orderBy?: TeamMemberOrderByWithRelationInput | TeamMemberOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: TeamMemberWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` TeamMembers from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` TeamMembers. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned TeamMembers **/ _count?: true | TeamMemberCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: TeamMemberMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: TeamMemberMaxAggregateInputType } export type GetTeamMemberAggregateType = { [P in keyof T & keyof AggregateTeamMember]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type TeamMemberGroupByArgs = { where?: TeamMemberWhereInput orderBy?: TeamMemberOrderByWithAggregationInput | TeamMemberOrderByWithAggregationInput[] by: TeamMemberScalarFieldEnum[] | TeamMemberScalarFieldEnum having?: TeamMemberScalarWhereWithAggregatesInput take?: number skip?: number _count?: TeamMemberCountAggregateInputType | true _min?: TeamMemberMinAggregateInputType _max?: TeamMemberMaxAggregateInputType } export type TeamMemberGroupByOutputType = { teamId: string userId: string createdAt: Date _count: TeamMemberCountAggregateOutputType | null _min: TeamMemberMinAggregateOutputType | null _max: TeamMemberMaxAggregateOutputType | null } type GetTeamMemberGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof TeamMemberGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type TeamMemberSelect = $Extensions.GetSelect<{ teamId?: boolean userId?: boolean createdAt?: boolean team?: boolean | TeamDefaultArgs user?: boolean | UserDefaultArgs }, ExtArgs["result"]["teamMember"]> export type TeamMemberSelectCreateManyAndReturn = $Extensions.GetSelect<{ teamId?: boolean userId?: boolean createdAt?: boolean team?: boolean | TeamDefaultArgs user?: boolean | UserDefaultArgs }, ExtArgs["result"]["teamMember"]> export type TeamMemberSelectScalar = { teamId?: boolean userId?: boolean createdAt?: boolean } export type TeamMemberInclude = { team?: boolean | TeamDefaultArgs user?: boolean | UserDefaultArgs } export type TeamMemberIncludeCreateManyAndReturn = { team?: boolean | TeamDefaultArgs user?: boolean | UserDefaultArgs } export type $TeamMemberPayload = { name: "TeamMember" objects: { team: Prisma.$TeamPayload user: Prisma.$UserPayload } scalars: $Extensions.GetPayloadResult<{ teamId: string userId: string createdAt: Date }, ExtArgs["result"]["teamMember"]> composites: {} } type TeamMemberGetPayload = $Result.GetResult type TeamMemberCountArgs = Omit & { select?: TeamMemberCountAggregateInputType | true } export interface TeamMemberDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['TeamMember'], meta: { name: 'TeamMember' } } /** * Find zero or one TeamMember that matches the filter. * @param {TeamMemberFindUniqueArgs} args - Arguments to find a TeamMember * @example * // Get one TeamMember * const teamMember = await prisma.teamMember.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__TeamMemberClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one TeamMember that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {TeamMemberFindUniqueOrThrowArgs} args - Arguments to find a TeamMember * @example * // Get one TeamMember * const teamMember = await prisma.teamMember.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__TeamMemberClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first TeamMember that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {TeamMemberFindFirstArgs} args - Arguments to find a TeamMember * @example * // Get one TeamMember * const teamMember = await prisma.teamMember.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__TeamMemberClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first TeamMember that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {TeamMemberFindFirstOrThrowArgs} args - Arguments to find a TeamMember * @example * // Get one TeamMember * const teamMember = await prisma.teamMember.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__TeamMemberClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more TeamMembers that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {TeamMemberFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all TeamMembers * const teamMembers = await prisma.teamMember.findMany() * * // Get first 10 TeamMembers * const teamMembers = await prisma.teamMember.findMany({ take: 10 }) * * // Only select the `teamId` * const teamMemberWithTeamIdOnly = await prisma.teamMember.findMany({ select: { teamId: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a TeamMember. * @param {TeamMemberCreateArgs} args - Arguments to create a TeamMember. * @example * // Create one TeamMember * const TeamMember = await prisma.teamMember.create({ * data: { * // ... data to create a TeamMember * } * }) * */ create(args: SelectSubset>): Prisma__TeamMemberClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many TeamMembers. * @param {TeamMemberCreateManyArgs} args - Arguments to create many TeamMembers. * @example * // Create many TeamMembers * const teamMember = await prisma.teamMember.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many TeamMembers and returns the data saved in the database. * @param {TeamMemberCreateManyAndReturnArgs} args - Arguments to create many TeamMembers. * @example * // Create many TeamMembers * const teamMember = await prisma.teamMember.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many TeamMembers and only return the `teamId` * const teamMemberWithTeamIdOnly = await prisma.teamMember.createManyAndReturn({ * select: { teamId: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a TeamMember. * @param {TeamMemberDeleteArgs} args - Arguments to delete one TeamMember. * @example * // Delete one TeamMember * const TeamMember = await prisma.teamMember.delete({ * where: { * // ... filter to delete one TeamMember * } * }) * */ delete(args: SelectSubset>): Prisma__TeamMemberClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one TeamMember. * @param {TeamMemberUpdateArgs} args - Arguments to update one TeamMember. * @example * // Update one TeamMember * const teamMember = await prisma.teamMember.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__TeamMemberClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more TeamMembers. * @param {TeamMemberDeleteManyArgs} args - Arguments to filter TeamMembers to delete. * @example * // Delete a few TeamMembers * const { count } = await prisma.teamMember.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more TeamMembers. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {TeamMemberUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many TeamMembers * const teamMember = await prisma.teamMember.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one TeamMember. * @param {TeamMemberUpsertArgs} args - Arguments to update or create a TeamMember. * @example * // Update or create a TeamMember * const teamMember = await prisma.teamMember.upsert({ * create: { * // ... data to create a TeamMember * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the TeamMember we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__TeamMemberClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of TeamMembers. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {TeamMemberCountArgs} args - Arguments to filter TeamMembers to count. * @example * // Count the number of TeamMembers * const count = await prisma.teamMember.count({ * where: { * // ... the filter for the TeamMembers we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a TeamMember. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {TeamMemberAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by TeamMember. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {TeamMemberGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends TeamMemberGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: TeamMemberGroupByArgs['orderBy'] } : { orderBy?: TeamMemberGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetTeamMemberGroupByPayload : Prisma.PrismaPromise /** * Fields of the TeamMember model */ readonly fields: TeamMemberFieldRefs; } /** * The delegate class that acts as a "Promise-like" for TeamMember. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__TeamMemberClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" team = {}>(args?: Subset>): Prisma__TeamClient<$Result.GetResult, T, "findUniqueOrThrow"> | Null, Null, ExtArgs> user = {}>(args?: Subset>): Prisma__UserClient<$Result.GetResult, T, "findUniqueOrThrow"> | Null, Null, ExtArgs> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the TeamMember model */ interface TeamMemberFieldRefs { readonly teamId: FieldRef<"TeamMember", 'String'> readonly userId: FieldRef<"TeamMember", 'String'> readonly createdAt: FieldRef<"TeamMember", 'DateTime'> } // Custom InputTypes /** * TeamMember findUnique */ export type TeamMemberFindUniqueArgs = { /** * Select specific fields to fetch from the TeamMember */ select?: TeamMemberSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamMemberInclude | null /** * Filter, which TeamMember to fetch. */ where: TeamMemberWhereUniqueInput } /** * TeamMember findUniqueOrThrow */ export type TeamMemberFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the TeamMember */ select?: TeamMemberSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamMemberInclude | null /** * Filter, which TeamMember to fetch. */ where: TeamMemberWhereUniqueInput } /** * TeamMember findFirst */ export type TeamMemberFindFirstArgs = { /** * Select specific fields to fetch from the TeamMember */ select?: TeamMemberSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamMemberInclude | null /** * Filter, which TeamMember to fetch. */ where?: TeamMemberWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of TeamMembers to fetch. */ orderBy?: TeamMemberOrderByWithRelationInput | TeamMemberOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for TeamMembers. */ cursor?: TeamMemberWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` TeamMembers from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` TeamMembers. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of TeamMembers. */ distinct?: TeamMemberScalarFieldEnum | TeamMemberScalarFieldEnum[] } /** * TeamMember findFirstOrThrow */ export type TeamMemberFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the TeamMember */ select?: TeamMemberSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamMemberInclude | null /** * Filter, which TeamMember to fetch. */ where?: TeamMemberWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of TeamMembers to fetch. */ orderBy?: TeamMemberOrderByWithRelationInput | TeamMemberOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for TeamMembers. */ cursor?: TeamMemberWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` TeamMembers from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` TeamMembers. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of TeamMembers. */ distinct?: TeamMemberScalarFieldEnum | TeamMemberScalarFieldEnum[] } /** * TeamMember findMany */ export type TeamMemberFindManyArgs = { /** * Select specific fields to fetch from the TeamMember */ select?: TeamMemberSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamMemberInclude | null /** * Filter, which TeamMembers to fetch. */ where?: TeamMemberWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of TeamMembers to fetch. */ orderBy?: TeamMemberOrderByWithRelationInput | TeamMemberOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing TeamMembers. */ cursor?: TeamMemberWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` TeamMembers from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` TeamMembers. */ skip?: number distinct?: TeamMemberScalarFieldEnum | TeamMemberScalarFieldEnum[] } /** * TeamMember create */ export type TeamMemberCreateArgs = { /** * Select specific fields to fetch from the TeamMember */ select?: TeamMemberSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamMemberInclude | null /** * The data needed to create a TeamMember. */ data: XOR } /** * TeamMember createMany */ export type TeamMemberCreateManyArgs = { /** * The data used to create many TeamMembers. */ data: TeamMemberCreateManyInput | TeamMemberCreateManyInput[] } /** * TeamMember createManyAndReturn */ export type TeamMemberCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the TeamMember */ select?: TeamMemberSelectCreateManyAndReturn | null /** * The data used to create many TeamMembers. */ data: TeamMemberCreateManyInput | TeamMemberCreateManyInput[] /** * Choose, which related nodes to fetch as well */ include?: TeamMemberIncludeCreateManyAndReturn | null } /** * TeamMember update */ export type TeamMemberUpdateArgs = { /** * Select specific fields to fetch from the TeamMember */ select?: TeamMemberSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamMemberInclude | null /** * The data needed to update a TeamMember. */ data: XOR /** * Choose, which TeamMember to update. */ where: TeamMemberWhereUniqueInput } /** * TeamMember updateMany */ export type TeamMemberUpdateManyArgs = { /** * The data used to update TeamMembers. */ data: XOR /** * Filter which TeamMembers to update */ where?: TeamMemberWhereInput } /** * TeamMember upsert */ export type TeamMemberUpsertArgs = { /** * Select specific fields to fetch from the TeamMember */ select?: TeamMemberSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamMemberInclude | null /** * The filter to search for the TeamMember to update in case it exists. */ where: TeamMemberWhereUniqueInput /** * In case the TeamMember found by the `where` argument doesn't exist, create a new TeamMember with this data. */ create: XOR /** * In case the TeamMember was found with the provided `where` argument, update it with this data. */ update: XOR } /** * TeamMember delete */ export type TeamMemberDeleteArgs = { /** * Select specific fields to fetch from the TeamMember */ select?: TeamMemberSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamMemberInclude | null /** * Filter which TeamMember to delete. */ where: TeamMemberWhereUniqueInput } /** * TeamMember deleteMany */ export type TeamMemberDeleteManyArgs = { /** * Filter which TeamMembers to delete */ where?: TeamMemberWhereInput } /** * TeamMember without action */ export type TeamMemberDefaultArgs = { /** * Select specific fields to fetch from the TeamMember */ select?: TeamMemberSelect | null /** * Choose, which related nodes to fetch as well */ include?: TeamMemberInclude | null } /** * Model EventLog */ export type AggregateEventLog = { _count: EventLogCountAggregateOutputType | null _min: EventLogMinAggregateOutputType | null _max: EventLogMaxAggregateOutputType | null } export type EventLogMinAggregateOutputType = { id: string | null type: string | null payload: string | null correlationId: string | null teamId: string | null occurredAt: Date | null } export type EventLogMaxAggregateOutputType = { id: string | null type: string | null payload: string | null correlationId: string | null teamId: string | null occurredAt: Date | null } export type EventLogCountAggregateOutputType = { id: number type: number payload: number correlationId: number teamId: number occurredAt: number _all: number } export type EventLogMinAggregateInputType = { id?: true type?: true payload?: true correlationId?: true teamId?: true occurredAt?: true } export type EventLogMaxAggregateInputType = { id?: true type?: true payload?: true correlationId?: true teamId?: true occurredAt?: true } export type EventLogCountAggregateInputType = { id?: true type?: true payload?: true correlationId?: true teamId?: true occurredAt?: true _all?: true } export type EventLogAggregateArgs = { /** * Filter which EventLog to aggregate. */ where?: EventLogWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of EventLogs to fetch. */ orderBy?: EventLogOrderByWithRelationInput | EventLogOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: EventLogWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` EventLogs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` EventLogs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned EventLogs **/ _count?: true | EventLogCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: EventLogMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: EventLogMaxAggregateInputType } export type GetEventLogAggregateType = { [P in keyof T & keyof AggregateEventLog]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type EventLogGroupByArgs = { where?: EventLogWhereInput orderBy?: EventLogOrderByWithAggregationInput | EventLogOrderByWithAggregationInput[] by: EventLogScalarFieldEnum[] | EventLogScalarFieldEnum having?: EventLogScalarWhereWithAggregatesInput take?: number skip?: number _count?: EventLogCountAggregateInputType | true _min?: EventLogMinAggregateInputType _max?: EventLogMaxAggregateInputType } export type EventLogGroupByOutputType = { id: string type: string payload: string correlationId: string | null teamId: string | null occurredAt: Date _count: EventLogCountAggregateOutputType | null _min: EventLogMinAggregateOutputType | null _max: EventLogMaxAggregateOutputType | null } type GetEventLogGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof EventLogGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type EventLogSelect = $Extensions.GetSelect<{ id?: boolean type?: boolean payload?: boolean correlationId?: boolean teamId?: boolean occurredAt?: boolean }, ExtArgs["result"]["eventLog"]> export type EventLogSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean type?: boolean payload?: boolean correlationId?: boolean teamId?: boolean occurredAt?: boolean }, ExtArgs["result"]["eventLog"]> export type EventLogSelectScalar = { id?: boolean type?: boolean payload?: boolean correlationId?: boolean teamId?: boolean occurredAt?: boolean } export type $EventLogPayload = { name: "EventLog" objects: {} scalars: $Extensions.GetPayloadResult<{ id: string type: string payload: string correlationId: string | null teamId: string | null occurredAt: Date }, ExtArgs["result"]["eventLog"]> composites: {} } type EventLogGetPayload = $Result.GetResult type EventLogCountArgs = Omit & { select?: EventLogCountAggregateInputType | true } export interface EventLogDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['EventLog'], meta: { name: 'EventLog' } } /** * Find zero or one EventLog that matches the filter. * @param {EventLogFindUniqueArgs} args - Arguments to find a EventLog * @example * // Get one EventLog * const eventLog = await prisma.eventLog.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__EventLogClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one EventLog that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {EventLogFindUniqueOrThrowArgs} args - Arguments to find a EventLog * @example * // Get one EventLog * const eventLog = await prisma.eventLog.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__EventLogClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first EventLog that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {EventLogFindFirstArgs} args - Arguments to find a EventLog * @example * // Get one EventLog * const eventLog = await prisma.eventLog.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__EventLogClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first EventLog that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {EventLogFindFirstOrThrowArgs} args - Arguments to find a EventLog * @example * // Get one EventLog * const eventLog = await prisma.eventLog.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__EventLogClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more EventLogs that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {EventLogFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all EventLogs * const eventLogs = await prisma.eventLog.findMany() * * // Get first 10 EventLogs * const eventLogs = await prisma.eventLog.findMany({ take: 10 }) * * // Only select the `id` * const eventLogWithIdOnly = await prisma.eventLog.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a EventLog. * @param {EventLogCreateArgs} args - Arguments to create a EventLog. * @example * // Create one EventLog * const EventLog = await prisma.eventLog.create({ * data: { * // ... data to create a EventLog * } * }) * */ create(args: SelectSubset>): Prisma__EventLogClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many EventLogs. * @param {EventLogCreateManyArgs} args - Arguments to create many EventLogs. * @example * // Create many EventLogs * const eventLog = await prisma.eventLog.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many EventLogs and returns the data saved in the database. * @param {EventLogCreateManyAndReturnArgs} args - Arguments to create many EventLogs. * @example * // Create many EventLogs * const eventLog = await prisma.eventLog.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many EventLogs and only return the `id` * const eventLogWithIdOnly = await prisma.eventLog.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a EventLog. * @param {EventLogDeleteArgs} args - Arguments to delete one EventLog. * @example * // Delete one EventLog * const EventLog = await prisma.eventLog.delete({ * where: { * // ... filter to delete one EventLog * } * }) * */ delete(args: SelectSubset>): Prisma__EventLogClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one EventLog. * @param {EventLogUpdateArgs} args - Arguments to update one EventLog. * @example * // Update one EventLog * const eventLog = await prisma.eventLog.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__EventLogClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more EventLogs. * @param {EventLogDeleteManyArgs} args - Arguments to filter EventLogs to delete. * @example * // Delete a few EventLogs * const { count } = await prisma.eventLog.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more EventLogs. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {EventLogUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many EventLogs * const eventLog = await prisma.eventLog.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one EventLog. * @param {EventLogUpsertArgs} args - Arguments to update or create a EventLog. * @example * // Update or create a EventLog * const eventLog = await prisma.eventLog.upsert({ * create: { * // ... data to create a EventLog * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the EventLog we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__EventLogClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of EventLogs. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {EventLogCountArgs} args - Arguments to filter EventLogs to count. * @example * // Count the number of EventLogs * const count = await prisma.eventLog.count({ * where: { * // ... the filter for the EventLogs we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a EventLog. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {EventLogAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by EventLog. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {EventLogGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends EventLogGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: EventLogGroupByArgs['orderBy'] } : { orderBy?: EventLogGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetEventLogGroupByPayload : Prisma.PrismaPromise /** * Fields of the EventLog model */ readonly fields: EventLogFieldRefs; } /** * The delegate class that acts as a "Promise-like" for EventLog. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__EventLogClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the EventLog model */ interface EventLogFieldRefs { readonly id: FieldRef<"EventLog", 'String'> readonly type: FieldRef<"EventLog", 'String'> readonly payload: FieldRef<"EventLog", 'String'> readonly correlationId: FieldRef<"EventLog", 'String'> readonly teamId: FieldRef<"EventLog", 'String'> readonly occurredAt: FieldRef<"EventLog", 'DateTime'> } // Custom InputTypes /** * EventLog findUnique */ export type EventLogFindUniqueArgs = { /** * Select specific fields to fetch from the EventLog */ select?: EventLogSelect | null /** * Filter, which EventLog to fetch. */ where: EventLogWhereUniqueInput } /** * EventLog findUniqueOrThrow */ export type EventLogFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the EventLog */ select?: EventLogSelect | null /** * Filter, which EventLog to fetch. */ where: EventLogWhereUniqueInput } /** * EventLog findFirst */ export type EventLogFindFirstArgs = { /** * Select specific fields to fetch from the EventLog */ select?: EventLogSelect | null /** * Filter, which EventLog to fetch. */ where?: EventLogWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of EventLogs to fetch. */ orderBy?: EventLogOrderByWithRelationInput | EventLogOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for EventLogs. */ cursor?: EventLogWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` EventLogs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` EventLogs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of EventLogs. */ distinct?: EventLogScalarFieldEnum | EventLogScalarFieldEnum[] } /** * EventLog findFirstOrThrow */ export type EventLogFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the EventLog */ select?: EventLogSelect | null /** * Filter, which EventLog to fetch. */ where?: EventLogWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of EventLogs to fetch. */ orderBy?: EventLogOrderByWithRelationInput | EventLogOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for EventLogs. */ cursor?: EventLogWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` EventLogs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` EventLogs. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of EventLogs. */ distinct?: EventLogScalarFieldEnum | EventLogScalarFieldEnum[] } /** * EventLog findMany */ export type EventLogFindManyArgs = { /** * Select specific fields to fetch from the EventLog */ select?: EventLogSelect | null /** * Filter, which EventLogs to fetch. */ where?: EventLogWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of EventLogs to fetch. */ orderBy?: EventLogOrderByWithRelationInput | EventLogOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing EventLogs. */ cursor?: EventLogWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` EventLogs from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` EventLogs. */ skip?: number distinct?: EventLogScalarFieldEnum | EventLogScalarFieldEnum[] } /** * EventLog create */ export type EventLogCreateArgs = { /** * Select specific fields to fetch from the EventLog */ select?: EventLogSelect | null /** * The data needed to create a EventLog. */ data: XOR } /** * EventLog createMany */ export type EventLogCreateManyArgs = { /** * The data used to create many EventLogs. */ data: EventLogCreateManyInput | EventLogCreateManyInput[] } /** * EventLog createManyAndReturn */ export type EventLogCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the EventLog */ select?: EventLogSelectCreateManyAndReturn | null /** * The data used to create many EventLogs. */ data: EventLogCreateManyInput | EventLogCreateManyInput[] } /** * EventLog update */ export type EventLogUpdateArgs = { /** * Select specific fields to fetch from the EventLog */ select?: EventLogSelect | null /** * The data needed to update a EventLog. */ data: XOR /** * Choose, which EventLog to update. */ where: EventLogWhereUniqueInput } /** * EventLog updateMany */ export type EventLogUpdateManyArgs = { /** * The data used to update EventLogs. */ data: XOR /** * Filter which EventLogs to update */ where?: EventLogWhereInput } /** * EventLog upsert */ export type EventLogUpsertArgs = { /** * Select specific fields to fetch from the EventLog */ select?: EventLogSelect | null /** * The filter to search for the EventLog to update in case it exists. */ where: EventLogWhereUniqueInput /** * In case the EventLog found by the `where` argument doesn't exist, create a new EventLog with this data. */ create: XOR /** * In case the EventLog was found with the provided `where` argument, update it with this data. */ update: XOR } /** * EventLog delete */ export type EventLogDeleteArgs = { /** * Select specific fields to fetch from the EventLog */ select?: EventLogSelect | null /** * Filter which EventLog to delete. */ where: EventLogWhereUniqueInput } /** * EventLog deleteMany */ export type EventLogDeleteManyArgs = { /** * Filter which EventLogs to delete */ where?: EventLogWhereInput } /** * EventLog without action */ export type EventLogDefaultArgs = { /** * Select specific fields to fetch from the EventLog */ select?: EventLogSelect | null } /** * Model Project */ export type AggregateProject = { _count: ProjectCountAggregateOutputType | null _min: ProjectMinAggregateOutputType | null _max: ProjectMaxAggregateOutputType | null } export type ProjectMinAggregateOutputType = { id: string | null name: string | null teamId: string | null createdAt: Date | null } export type ProjectMaxAggregateOutputType = { id: string | null name: string | null teamId: string | null createdAt: Date | null } export type ProjectCountAggregateOutputType = { id: number name: number teamId: number createdAt: number _all: number } export type ProjectMinAggregateInputType = { id?: true name?: true teamId?: true createdAt?: true } export type ProjectMaxAggregateInputType = { id?: true name?: true teamId?: true createdAt?: true } export type ProjectCountAggregateInputType = { id?: true name?: true teamId?: true createdAt?: true _all?: true } export type ProjectAggregateArgs = { /** * Filter which Project to aggregate. */ where?: ProjectWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Projects to fetch. */ orderBy?: ProjectOrderByWithRelationInput | ProjectOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: ProjectWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Projects from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Projects. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Projects **/ _count?: true | ProjectCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: ProjectMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: ProjectMaxAggregateInputType } export type GetProjectAggregateType = { [P in keyof T & keyof AggregateProject]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType : GetScalarType } export type ProjectGroupByArgs = { where?: ProjectWhereInput orderBy?: ProjectOrderByWithAggregationInput | ProjectOrderByWithAggregationInput[] by: ProjectScalarFieldEnum[] | ProjectScalarFieldEnum having?: ProjectScalarWhereWithAggregatesInput take?: number skip?: number _count?: ProjectCountAggregateInputType | true _min?: ProjectMinAggregateInputType _max?: ProjectMaxAggregateInputType } export type ProjectGroupByOutputType = { id: string name: string teamId: string | null createdAt: Date _count: ProjectCountAggregateOutputType | null _min: ProjectMinAggregateOutputType | null _max: ProjectMaxAggregateOutputType | null } type GetProjectGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in ((keyof T) & (keyof ProjectGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType : GetScalarType } > > export type ProjectSelect = $Extensions.GetSelect<{ id?: boolean name?: boolean teamId?: boolean createdAt?: boolean }, ExtArgs["result"]["project"]> export type ProjectSelectCreateManyAndReturn = $Extensions.GetSelect<{ id?: boolean name?: boolean teamId?: boolean createdAt?: boolean }, ExtArgs["result"]["project"]> export type ProjectSelectScalar = { id?: boolean name?: boolean teamId?: boolean createdAt?: boolean } export type $ProjectPayload = { name: "Project" objects: {} scalars: $Extensions.GetPayloadResult<{ id: string name: string teamId: string | null createdAt: Date }, ExtArgs["result"]["project"]> composites: {} } type ProjectGetPayload = $Result.GetResult type ProjectCountArgs = Omit & { select?: ProjectCountAggregateInputType | true } export interface ProjectDelegate { [K: symbol]: { types: Prisma.TypeMap['model']['Project'], meta: { name: 'Project' } } /** * Find zero or one Project that matches the filter. * @param {ProjectFindUniqueArgs} args - Arguments to find a Project * @example * // Get one Project * const project = await prisma.project.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique(args: SelectSubset>): Prisma__ProjectClient<$Result.GetResult, T, "findUnique"> | null, null, ExtArgs> /** * Find one Project that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {ProjectFindUniqueOrThrowArgs} args - Arguments to find a Project * @example * // Get one Project * const project = await prisma.project.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow(args: SelectSubset>): Prisma__ProjectClient<$Result.GetResult, T, "findUniqueOrThrow">, never, ExtArgs> /** * Find the first Project that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ProjectFindFirstArgs} args - Arguments to find a Project * @example * // Get one Project * const project = await prisma.project.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst(args?: SelectSubset>): Prisma__ProjectClient<$Result.GetResult, T, "findFirst"> | null, null, ExtArgs> /** * Find the first Project that matches the filter or * throw `PrismaKnownClientError` with `P2025` code if no matches were found. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ProjectFindFirstOrThrowArgs} args - Arguments to find a Project * @example * // Get one Project * const project = await prisma.project.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow(args?: SelectSubset>): Prisma__ProjectClient<$Result.GetResult, T, "findFirstOrThrow">, never, ExtArgs> /** * Find zero or more Projects that matches the filter. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ProjectFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Projects * const projects = await prisma.project.findMany() * * // Get first 10 Projects * const projects = await prisma.project.findMany({ take: 10 }) * * // Only select the `id` * const projectWithIdOnly = await prisma.project.findMany({ select: { id: true } }) * */ findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany">> /** * Create a Project. * @param {ProjectCreateArgs} args - Arguments to create a Project. * @example * // Create one Project * const Project = await prisma.project.create({ * data: { * // ... data to create a Project * } * }) * */ create(args: SelectSubset>): Prisma__ProjectClient<$Result.GetResult, T, "create">, never, ExtArgs> /** * Create many Projects. * @param {ProjectCreateManyArgs} args - Arguments to create many Projects. * @example * // Create many Projects * const project = await prisma.project.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Create many Projects and returns the data saved in the database. * @param {ProjectCreateManyAndReturnArgs} args - Arguments to create many Projects. * @example * // Create many Projects * const project = await prisma.project.createManyAndReturn({ * data: [ * // ... provide data here * ] * }) * * // Create many Projects and only return the `id` * const projectWithIdOnly = await prisma.project.createManyAndReturn({ * select: { id: true }, * data: [ * // ... provide data here * ] * }) * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * */ createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn">> /** * Delete a Project. * @param {ProjectDeleteArgs} args - Arguments to delete one Project. * @example * // Delete one Project * const Project = await prisma.project.delete({ * where: { * // ... filter to delete one Project * } * }) * */ delete(args: SelectSubset>): Prisma__ProjectClient<$Result.GetResult, T, "delete">, never, ExtArgs> /** * Update one Project. * @param {ProjectUpdateArgs} args - Arguments to update one Project. * @example * // Update one Project * const project = await prisma.project.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update(args: SelectSubset>): Prisma__ProjectClient<$Result.GetResult, T, "update">, never, ExtArgs> /** * Delete zero or more Projects. * @param {ProjectDeleteManyArgs} args - Arguments to filter Projects to delete. * @example * // Delete a few Projects * const { count } = await prisma.project.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Projects. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ProjectUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Projects * const project = await prisma.project.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one Project. * @param {ProjectUpsertArgs} args - Arguments to update or create a Project. * @example * // Update or create a Project * const project = await prisma.project.upsert({ * create: { * // ... data to create a Project * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the Project we want to update * } * }) */ upsert(args: SelectSubset>): Prisma__ProjectClient<$Result.GetResult, T, "upsert">, never, ExtArgs> /** * Count the number of Projects. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ProjectCountArgs} args - Arguments to filter Projects to count. * @example * // Count the number of Projects * const count = await prisma.project.count({ * where: { * // ... the filter for the Projects we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<'select', any> ? T['select'] extends true ? number : GetScalarType : number > /** * Allows you to perform aggregations operations on a Project. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ProjectAggregateArgs} args - Select which aggregations you would like to apply and on what fields. * @example * // Ordered by age ascending * // Where email contains prisma.io * // Limited to the 10 users * const aggregations = await prisma.user.aggregate({ * _avg: { * age: true, * }, * where: { * email: { * contains: "prisma.io", * }, * }, * orderBy: { * age: "asc", * }, * take: 10, * }) **/ aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by Project. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {ProjectGroupByArgs} args - Group by arguments. * @example * // Group by city, order by createdAt, get count * const result = await prisma.user.groupBy({ * by: ['city', 'createdAt'], * orderBy: { * createdAt: true * }, * _count: { * _all: true * }, * }) * **/ groupBy< T extends ProjectGroupByArgs, HasSelectOrTake extends Or< Extends<'skip', Keys>, Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: ProjectGroupByArgs['orderBy'] } : { orderBy?: ProjectGroupByArgs['orderBy'] }, OrderFields extends ExcludeUnderscoreKeys>>, ByFields extends MaybeTupleToUnion, ByValid extends Has, HavingFields extends GetHavingFields, HavingValid extends Has, ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True ? `Error: "by" must not be empty.` : HavingValid extends False ? { [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [ Error, 'Field ', P, ` in "having" needs to be provided in "by"`, ] }[HavingFields] : 'take' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Keys ? 'orderBy' extends Keys ? ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends True ? {} : { [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` }[OrderFields] >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetProjectGroupByPayload : Prisma.PrismaPromise /** * Fields of the Project model */ readonly fields: ProjectFieldRefs; } /** * The delegate class that acts as a "Promise-like" for Project. * Why is this prefixed with `Prisma__`? * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ export interface Prisma__ProjectClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } /** * Fields of the Project model */ interface ProjectFieldRefs { readonly id: FieldRef<"Project", 'String'> readonly name: FieldRef<"Project", 'String'> readonly teamId: FieldRef<"Project", 'String'> readonly createdAt: FieldRef<"Project", 'DateTime'> } // Custom InputTypes /** * Project findUnique */ export type ProjectFindUniqueArgs = { /** * Select specific fields to fetch from the Project */ select?: ProjectSelect | null /** * Filter, which Project to fetch. */ where: ProjectWhereUniqueInput } /** * Project findUniqueOrThrow */ export type ProjectFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the Project */ select?: ProjectSelect | null /** * Filter, which Project to fetch. */ where: ProjectWhereUniqueInput } /** * Project findFirst */ export type ProjectFindFirstArgs = { /** * Select specific fields to fetch from the Project */ select?: ProjectSelect | null /** * Filter, which Project to fetch. */ where?: ProjectWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Projects to fetch. */ orderBy?: ProjectOrderByWithRelationInput | ProjectOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Projects. */ cursor?: ProjectWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Projects from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Projects. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Projects. */ distinct?: ProjectScalarFieldEnum | ProjectScalarFieldEnum[] } /** * Project findFirstOrThrow */ export type ProjectFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the Project */ select?: ProjectSelect | null /** * Filter, which Project to fetch. */ where?: ProjectWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Projects to fetch. */ orderBy?: ProjectOrderByWithRelationInput | ProjectOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Projects. */ cursor?: ProjectWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Projects from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Projects. */ skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Projects. */ distinct?: ProjectScalarFieldEnum | ProjectScalarFieldEnum[] } /** * Project findMany */ export type ProjectFindManyArgs = { /** * Select specific fields to fetch from the Project */ select?: ProjectSelect | null /** * Filter, which Projects to fetch. */ where?: ProjectWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Projects to fetch. */ orderBy?: ProjectOrderByWithRelationInput | ProjectOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Projects. */ cursor?: ProjectWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Projects from the position of the cursor. */ take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Skip the first `n` Projects. */ skip?: number distinct?: ProjectScalarFieldEnum | ProjectScalarFieldEnum[] } /** * Project create */ export type ProjectCreateArgs = { /** * Select specific fields to fetch from the Project */ select?: ProjectSelect | null /** * The data needed to create a Project. */ data: XOR } /** * Project createMany */ export type ProjectCreateManyArgs = { /** * The data used to create many Projects. */ data: ProjectCreateManyInput | ProjectCreateManyInput[] } /** * Project createManyAndReturn */ export type ProjectCreateManyAndReturnArgs = { /** * Select specific fields to fetch from the Project */ select?: ProjectSelectCreateManyAndReturn | null /** * The data used to create many Projects. */ data: ProjectCreateManyInput | ProjectCreateManyInput[] } /** * Project update */ export type ProjectUpdateArgs = { /** * Select specific fields to fetch from the Project */ select?: ProjectSelect | null /** * The data needed to update a Project. */ data: XOR /** * Choose, which Project to update. */ where: ProjectWhereUniqueInput } /** * Project updateMany */ export type ProjectUpdateManyArgs = { /** * The data used to update Projects. */ data: XOR /** * Filter which Projects to update */ where?: ProjectWhereInput } /** * Project upsert */ export type ProjectUpsertArgs = { /** * Select specific fields to fetch from the Project */ select?: ProjectSelect | null /** * The filter to search for the Project to update in case it exists. */ where: ProjectWhereUniqueInput /** * In case the Project found by the `where` argument doesn't exist, create a new Project with this data. */ create: XOR /** * In case the Project was found with the provided `where` argument, update it with this data. */ update: XOR } /** * Project delete */ export type ProjectDeleteArgs = { /** * Select specific fields to fetch from the Project */ select?: ProjectSelect | null /** * Filter which Project to delete. */ where: ProjectWhereUniqueInput } /** * Project deleteMany */ export type ProjectDeleteManyArgs = { /** * Filter which Projects to delete */ where?: ProjectWhereInput } /** * Project without action */ export type ProjectDefaultArgs = { /** * Select specific fields to fetch from the Project */ select?: ProjectSelect | null } /** * Enums */ export const TransactionIsolationLevel: { Serializable: 'Serializable' }; export type TransactionIsolationLevel = (typeof TransactionIsolationLevel)[keyof typeof TransactionIsolationLevel] export const BuildScalarFieldEnum: { id: 'id', name: 'name', createdAt: 'createdAt', updatedAt: 'updatedAt' }; export type BuildScalarFieldEnum = (typeof BuildScalarFieldEnum)[keyof typeof BuildScalarFieldEnum] export const SessionScalarFieldEnum: { id: 'id', build_id: 'build_id', name: 'name', status: 'status', desired_capabilities: 'desired_capabilities', session_capabilities: 'session_capabilities', node_id: 'node_id', has_live_video: 'has_live_video', video_recording_enabled: 'video_recording_enabled', video_recording: 'video_recording', startTime: 'startTime', endTime: 'endTime', failure_reason: 'failure_reason', is_profiling_available: 'is_profiling_available', device_info: 'device_info', device_udid: 'device_udid', device_platform: 'device_platform', device_version: 'device_version', device_name: 'device_name', createdAt: 'createdAt', updatedAt: 'updatedAt', performance_trace: 'performance_trace', failure_category: 'failure_category', ai_analysis: 'ai_analysis', tags: 'tags', trace_id: 'trace_id', last_heartbeat_at: 'last_heartbeat_at', heartbeat_pid: 'heartbeat_pid', heartbeat_host: 'heartbeat_host', api_key_id: 'api_key_id', user_id: 'user_id' }; export type SessionScalarFieldEnum = (typeof SessionScalarFieldEnum)[keyof typeof SessionScalarFieldEnum] export const SessionLogScalarFieldEnum: { id: 'id', session_id: 'session_id', command_name: 'command_name', url: 'url', method: 'method', title: 'title', subtitle: 'subtitle', body: 'body', response: 'response', screenshot: 'screenshot', is_success: 'is_success', is_error: 'is_error', is_healed: 'is_healed', original_selector: 'original_selector', healed_selector: 'healed_selector', healing_confidence: 'healing_confidence', healing_tier: 'healing_tier', original_strategy: 'original_strategy', healed_strategy: 'healed_strategy', createdAt: 'createdAt', updatedAt: 'updatedAt', duration: 'duration', span_id: 'span_id', trace_id: 'trace_id' }; export type SessionLogScalarFieldEnum = (typeof SessionLogScalarFieldEnum)[keyof typeof SessionLogScalarFieldEnum] export const LogScalarFieldEnum: { id: 'id', session_id: 'session_id', log_type: 'log_type', message: 'message', timestamp: 'timestamp', createdAt: 'createdAt', updatedAt: 'updatedAt' }; export type LogScalarFieldEnum = (typeof LogScalarFieldEnum)[keyof typeof LogScalarFieldEnum] export const ProfilingScalarFieldEnum: { id: 'id', session_id: 'session_id', cpu: 'cpu', memory: 'memory', total_cpu_used: 'total_cpu_used', total_memory_used: 'total_memory_used', raw_cpu_log: 'raw_cpu_log', raw_memory_log: 'raw_memory_log', timestamp: 'timestamp', createdAt: 'createdAt', updatedAt: 'updatedAt' }; export type ProfilingScalarFieldEnum = (typeof ProfilingScalarFieldEnum)[keyof typeof ProfilingScalarFieldEnum] export const AppScalarFieldEnum: { id: 'id', name: 'name', filename: 'filename', filepath: 'filepath', mimetype: 'mimetype', size: 'size', packageName: 'packageName', version: 'version', platform: 'platform', md5: 'md5', createdAt: 'createdAt', updatedAt: 'updatedAt' }; export type AppScalarFieldEnum = (typeof AppScalarFieldEnum)[keyof typeof AppScalarFieldEnum] export const DeviceScalarFieldEnum: { udid: 'udid', host: 'host', systemPort: 'systemPort', proxyPort: 'proxyPort', proxyHost: 'proxyHost', wdaLocalPort: 'wdaLocalPort', name: 'name', state: 'state', sdk: 'sdk', platform: 'platform', deviceType: 'deviceType', busy: 'busy', userBlocked: 'userBlocked', realDevice: 'realDevice', session_id: 'session_id', offline: 'offline', mjpegServerPort: 'mjpegServerPort', lastCmdExecutedAt: 'lastCmdExecutedAt', totalUtilizationTimeMilliSec: 'totalUtilizationTimeMilliSec', sessionStartTime: 'sessionStartTime', newCommandTimeout: 'newCommandTimeout', cloud: 'cloud', derivedDataPath: 'derivedDataPath', chromeDriverPath: 'chromeDriverPath', capability: 'capability', adbRemoteHost: 'adbRemoteHost', adbPort: 'adbPort', nodeId: 'nodeId', screenWidth: 'screenWidth', screenHeight: 'screenHeight', dashboard_link: 'dashboard_link', total_session_count: 'total_session_count', createdAt: 'createdAt', updatedAt: 'updatedAt', healthCheckError: 'healthCheckError', healthStatus: 'healthStatus', lastHealthCheckAt: 'lastHealthCheckAt', batteryLevel: 'batteryLevel', reservationReason: 'reservationReason', reservedBy: 'reservedBy', reservedUntil: 'reservedUntil', storageFree: 'storageFree', tags: 'tags', thermalStatus: 'thermalStatus', sessionProgress: 'sessionProgress', totalHealedCount: 'totalHealedCount', ip: 'ip', cpuArchitecture: 'cpuArchitecture', owningSessionId: 'owningSessionId', lockedAt: 'lockedAt', teamId: 'teamId' }; export type DeviceScalarFieldEnum = (typeof DeviceScalarFieldEnum)[keyof typeof DeviceScalarFieldEnum] export const PendingSessionScalarFieldEnum: { id: 'id', capability_id: 'capability_id', capability: 'capability', createdAt: 'createdAt' }; export type PendingSessionScalarFieldEnum = (typeof PendingSessionScalarFieldEnum)[keyof typeof PendingSessionScalarFieldEnum] export const CLIArgsScalarFieldEnum: { id: 'id', args: 'args', createdAt: 'createdAt' }; export type CLIArgsScalarFieldEnum = (typeof CLIArgsScalarFieldEnum)[keyof typeof CLIArgsScalarFieldEnum] export const WebhookConfigScalarFieldEnum: { id: 'id', url: 'url', type: 'type', events: 'events', active: 'active', createdAt: 'createdAt', updatedAt: 'updatedAt', payloadTemplate: 'payloadTemplate' }; export type WebhookConfigScalarFieldEnum = (typeof WebhookConfigScalarFieldEnum)[keyof typeof WebhookConfigScalarFieldEnum] export const WebConfigScalarFieldEnum: { id: 'id', name: 'name', value: 'value', createdAt: 'createdAt', updatedAt: 'updatedAt' }; export type WebConfigScalarFieldEnum = (typeof WebConfigScalarFieldEnum)[keyof typeof WebConfigScalarFieldEnum] export const LocatorEtalonScalarFieldEnum: { id: 'id', selector: 'selector', strategy: 'strategy', attributes: 'attributes', nodeName: 'nodeName', lastSeen: 'lastSeen', createdAt: 'createdAt', updatedAt: 'updatedAt' }; export type LocatorEtalonScalarFieldEnum = (typeof LocatorEtalonScalarFieldEnum)[keyof typeof LocatorEtalonScalarFieldEnum] export const PortLeaseScalarFieldEnum: { port: 'port', purpose: 'purpose', leasedToUdid: 'leasedToUdid', leasedToHost: 'leasedToHost', leaseId: 'leaseId', leasedToPid: 'leasedToPid', leasedAt: 'leasedAt', expiresAt: 'expiresAt' }; export type PortLeaseScalarFieldEnum = (typeof PortLeaseScalarFieldEnum)[keyof typeof PortLeaseScalarFieldEnum] export const LeaseScalarFieldEnum: { id: 'id', tokenHash: 'tokenHash', deviceUdid: 'deviceUdid', deviceHost: 'deviceHost', actorId: 'actorId', teamId: 'teamId', buildId: 'buildId', reason: 'reason', status: 'status', createdAt: 'createdAt', expiresAt: 'expiresAt', heartbeatSeconds: 'heartbeatSeconds', lastHeartbeatAt: 'lastHeartbeatAt', allocatedPorts: 'allocatedPorts', capabilityBag: 'capabilityBag' }; export type LeaseScalarFieldEnum = (typeof LeaseScalarFieldEnum)[keyof typeof LeaseScalarFieldEnum] export const ApiKeyScalarFieldEnum: { id: 'id', name: 'name', keyHash: 'keyHash', scopes: 'scopes', rateLimit: 'rateLimit', createdAt: 'createdAt', revokedAt: 'revokedAt', lastUsedAt: 'lastUsedAt', expiresAt: 'expiresAt', teamId: 'teamId', role: 'role', userId: 'userId' }; export type ApiKeyScalarFieldEnum = (typeof ApiKeyScalarFieldEnum)[keyof typeof ApiKeyScalarFieldEnum] export const TeamScalarFieldEnum: { id: 'id', name: 'name', createdAt: 'createdAt' }; export type TeamScalarFieldEnum = (typeof TeamScalarFieldEnum)[keyof typeof TeamScalarFieldEnum] export const SelectorStateScalarFieldEnum: { id: 'id', original_strategy: 'original_strategy', original_selector: 'original_selector', status: 'status', fixed_at: 'fixed_at', fixed_by_api_key: 'fixed_by_api_key', resolved_at: 'resolved_at', muted_at: 'muted_at', muted_by_api_key: 'muted_by_api_key', regression_count: 'regression_count', clean_builds_count: 'clean_builds_count', last_event_at: 'last_event_at', createdAt: 'createdAt', updatedAt: 'updatedAt' }; export type SelectorStateScalarFieldEnum = (typeof SelectorStateScalarFieldEnum)[keyof typeof SelectorStateScalarFieldEnum] export const RecordingScalarFieldEnum: { id: 'id', group_id: 'group_id', device_udid: 'device_udid', device_host: 'device_host', session_id: 'session_id', started_at: 'started_at', ended_at: 'ended_at', status: 'status', file_path: 'file_path', duration_ms: 'duration_ms', size_bytes: 'size_bytes', device_snapshot: 'device_snapshot', fail_reason: 'fail_reason' }; export type RecordingScalarFieldEnum = (typeof RecordingScalarFieldEnum)[keyof typeof RecordingScalarFieldEnum] export const BookmarkScalarFieldEnum: { id: 'id', recording_id: 'recording_id', timecode_ms: 'timecode_ms', label: 'label', note: 'note', created_at: 'created_at' }; export type BookmarkScalarFieldEnum = (typeof BookmarkScalarFieldEnum)[keyof typeof BookmarkScalarFieldEnum] export const AnnotationScalarFieldEnum: { id: 'id', recording_id: 'recording_id', timecode_ms: 'timecode_ms', shape: 'shape', geometry: 'geometry', color: 'color', text: 'text', author: 'author', created_at: 'created_at' }; export type AnnotationScalarFieldEnum = (typeof AnnotationScalarFieldEnum)[keyof typeof AnnotationScalarFieldEnum] export const UserScalarFieldEnum: { id: 'id', email: 'email', name: 'name', passwordHash: 'passwordHash', accessKey: 'accessKey', role: 'role', status: 'status', createdAt: 'createdAt', updatedAt: 'updatedAt', lastLoginAt: 'lastLoginAt', passwordChangedAt: 'passwordChangedAt' }; export type UserScalarFieldEnum = (typeof UserScalarFieldEnum)[keyof typeof UserScalarFieldEnum] export const UserSessionScalarFieldEnum: { id: 'id', userId: 'userId', createdAt: 'createdAt', expiresAt: 'expiresAt', lastSeenAt: 'lastSeenAt', userAgent: 'userAgent', ipHash: 'ipHash' }; export type UserSessionScalarFieldEnum = (typeof UserSessionScalarFieldEnum)[keyof typeof UserSessionScalarFieldEnum] export const PasswordResetTokenScalarFieldEnum: { id: 'id', userId: 'userId', tokenHash: 'tokenHash', createdAt: 'createdAt', expiresAt: 'expiresAt', usedAt: 'usedAt' }; export type PasswordResetTokenScalarFieldEnum = (typeof PasswordResetTokenScalarFieldEnum)[keyof typeof PasswordResetTokenScalarFieldEnum] export const TeamMemberScalarFieldEnum: { teamId: 'teamId', userId: 'userId', createdAt: 'createdAt' }; export type TeamMemberScalarFieldEnum = (typeof TeamMemberScalarFieldEnum)[keyof typeof TeamMemberScalarFieldEnum] export const EventLogScalarFieldEnum: { id: 'id', type: 'type', payload: 'payload', correlationId: 'correlationId', teamId: 'teamId', occurredAt: 'occurredAt' }; export type EventLogScalarFieldEnum = (typeof EventLogScalarFieldEnum)[keyof typeof EventLogScalarFieldEnum] export const ProjectScalarFieldEnum: { id: 'id', name: 'name', teamId: 'teamId', createdAt: 'createdAt' }; export type ProjectScalarFieldEnum = (typeof ProjectScalarFieldEnum)[keyof typeof ProjectScalarFieldEnum] export const SortOrder: { asc: 'asc', desc: 'desc' }; export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder] export const NullsOrder: { first: 'first', last: 'last' }; export type NullsOrder = (typeof NullsOrder)[keyof typeof NullsOrder] /** * 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 'Boolean' */ export type BooleanFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Boolean'> /** * Reference to a field of type 'Int' */ export type IntFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Int'> /** * Reference to a field of type 'Float' */ export type FloatFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Float'> /** * Deep Input Types */ export type BuildWhereInput = { AND?: BuildWhereInput | BuildWhereInput[] OR?: BuildWhereInput[] NOT?: BuildWhereInput | BuildWhereInput[] id?: StringFilter<"Build"> | string name?: StringNullableFilter<"Build"> | string | null createdAt?: DateTimeFilter<"Build"> | Date | string updatedAt?: DateTimeFilter<"Build"> | Date | string sessions?: SessionListRelationFilter } export type BuildOrderByWithRelationInput = { id?: SortOrder name?: SortOrderInput | SortOrder createdAt?: SortOrder updatedAt?: SortOrder sessions?: SessionOrderByRelationAggregateInput } export type BuildWhereUniqueInput = Prisma.AtLeast<{ id?: string AND?: BuildWhereInput | BuildWhereInput[] OR?: BuildWhereInput[] NOT?: BuildWhereInput | BuildWhereInput[] name?: StringNullableFilter<"Build"> | string | null createdAt?: DateTimeFilter<"Build"> | Date | string updatedAt?: DateTimeFilter<"Build"> | Date | string sessions?: SessionListRelationFilter }, "id"> export type BuildOrderByWithAggregationInput = { id?: SortOrder name?: SortOrderInput | SortOrder createdAt?: SortOrder updatedAt?: SortOrder _count?: BuildCountOrderByAggregateInput _max?: BuildMaxOrderByAggregateInput _min?: BuildMinOrderByAggregateInput } export type BuildScalarWhereWithAggregatesInput = { AND?: BuildScalarWhereWithAggregatesInput | BuildScalarWhereWithAggregatesInput[] OR?: BuildScalarWhereWithAggregatesInput[] NOT?: BuildScalarWhereWithAggregatesInput | BuildScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"Build"> | string name?: StringNullableWithAggregatesFilter<"Build"> | string | null createdAt?: DateTimeWithAggregatesFilter<"Build"> | Date | string updatedAt?: DateTimeWithAggregatesFilter<"Build"> | Date | string } export type SessionWhereInput = { AND?: SessionWhereInput | SessionWhereInput[] OR?: SessionWhereInput[] NOT?: SessionWhereInput | SessionWhereInput[] id?: StringFilter<"Session"> | string build_id?: StringNullableFilter<"Session"> | string | null name?: StringNullableFilter<"Session"> | string | null status?: StringFilter<"Session"> | string desired_capabilities?: StringFilter<"Session"> | string session_capabilities?: StringFilter<"Session"> | string node_id?: StringFilter<"Session"> | string has_live_video?: BoolFilter<"Session"> | boolean video_recording_enabled?: BoolFilter<"Session"> | boolean video_recording?: StringNullableFilter<"Session"> | string | null startTime?: DateTimeFilter<"Session"> | Date | string endTime?: DateTimeNullableFilter<"Session"> | Date | string | null failure_reason?: StringNullableFilter<"Session"> | string | null is_profiling_available?: BoolFilter<"Session"> | boolean device_info?: StringNullableFilter<"Session"> | string | null device_udid?: StringFilter<"Session"> | string device_platform?: StringFilter<"Session"> | string device_version?: StringFilter<"Session"> | string device_name?: StringNullableFilter<"Session"> | string | null createdAt?: DateTimeFilter<"Session"> | Date | string updatedAt?: DateTimeFilter<"Session"> | Date | string performance_trace?: StringNullableFilter<"Session"> | string | null failure_category?: StringNullableFilter<"Session"> | string | null ai_analysis?: StringNullableFilter<"Session"> | string | null tags?: StringNullableFilter<"Session"> | string | null trace_id?: StringNullableFilter<"Session"> | string | null last_heartbeat_at?: DateTimeNullableFilter<"Session"> | Date | string | null heartbeat_pid?: IntNullableFilter<"Session"> | number | null heartbeat_host?: StringNullableFilter<"Session"> | string | null api_key_id?: StringNullableFilter<"Session"> | string | null user_id?: StringNullableFilter<"Session"> | string | null Log?: LogListRelationFilter Profiling?: ProfilingListRelationFilter build?: XOR | null SessionLog?: SessionLogListRelationFilter Recording?: RecordingListRelationFilter } export type SessionOrderByWithRelationInput = { id?: SortOrder build_id?: SortOrderInput | SortOrder name?: SortOrderInput | SortOrder status?: SortOrder desired_capabilities?: SortOrder session_capabilities?: SortOrder node_id?: SortOrder has_live_video?: SortOrder video_recording_enabled?: SortOrder video_recording?: SortOrderInput | SortOrder startTime?: SortOrder endTime?: SortOrderInput | SortOrder failure_reason?: SortOrderInput | SortOrder is_profiling_available?: SortOrder device_info?: SortOrderInput | SortOrder device_udid?: SortOrder device_platform?: SortOrder device_version?: SortOrder device_name?: SortOrderInput | SortOrder createdAt?: SortOrder updatedAt?: SortOrder performance_trace?: SortOrderInput | SortOrder failure_category?: SortOrderInput | SortOrder ai_analysis?: SortOrderInput | SortOrder tags?: SortOrderInput | SortOrder trace_id?: SortOrderInput | SortOrder last_heartbeat_at?: SortOrderInput | SortOrder heartbeat_pid?: SortOrderInput | SortOrder heartbeat_host?: SortOrderInput | SortOrder api_key_id?: SortOrderInput | SortOrder user_id?: SortOrderInput | SortOrder Log?: LogOrderByRelationAggregateInput Profiling?: ProfilingOrderByRelationAggregateInput build?: BuildOrderByWithRelationInput SessionLog?: SessionLogOrderByRelationAggregateInput Recording?: RecordingOrderByRelationAggregateInput } export type SessionWhereUniqueInput = Prisma.AtLeast<{ id?: string AND?: SessionWhereInput | SessionWhereInput[] OR?: SessionWhereInput[] NOT?: SessionWhereInput | SessionWhereInput[] build_id?: StringNullableFilter<"Session"> | string | null name?: StringNullableFilter<"Session"> | string | null status?: StringFilter<"Session"> | string desired_capabilities?: StringFilter<"Session"> | string session_capabilities?: StringFilter<"Session"> | string node_id?: StringFilter<"Session"> | string has_live_video?: BoolFilter<"Session"> | boolean video_recording_enabled?: BoolFilter<"Session"> | boolean video_recording?: StringNullableFilter<"Session"> | string | null startTime?: DateTimeFilter<"Session"> | Date | string endTime?: DateTimeNullableFilter<"Session"> | Date | string | null failure_reason?: StringNullableFilter<"Session"> | string | null is_profiling_available?: BoolFilter<"Session"> | boolean device_info?: StringNullableFilter<"Session"> | string | null device_udid?: StringFilter<"Session"> | string device_platform?: StringFilter<"Session"> | string device_version?: StringFilter<"Session"> | string device_name?: StringNullableFilter<"Session"> | string | null createdAt?: DateTimeFilter<"Session"> | Date | string updatedAt?: DateTimeFilter<"Session"> | Date | string performance_trace?: StringNullableFilter<"Session"> | string | null failure_category?: StringNullableFilter<"Session"> | string | null ai_analysis?: StringNullableFilter<"Session"> | string | null tags?: StringNullableFilter<"Session"> | string | null trace_id?: StringNullableFilter<"Session"> | string | null last_heartbeat_at?: DateTimeNullableFilter<"Session"> | Date | string | null heartbeat_pid?: IntNullableFilter<"Session"> | number | null heartbeat_host?: StringNullableFilter<"Session"> | string | null api_key_id?: StringNullableFilter<"Session"> | string | null user_id?: StringNullableFilter<"Session"> | string | null Log?: LogListRelationFilter Profiling?: ProfilingListRelationFilter build?: XOR | null SessionLog?: SessionLogListRelationFilter Recording?: RecordingListRelationFilter }, "id"> export type SessionOrderByWithAggregationInput = { id?: SortOrder build_id?: SortOrderInput | SortOrder name?: SortOrderInput | SortOrder status?: SortOrder desired_capabilities?: SortOrder session_capabilities?: SortOrder node_id?: SortOrder has_live_video?: SortOrder video_recording_enabled?: SortOrder video_recording?: SortOrderInput | SortOrder startTime?: SortOrder endTime?: SortOrderInput | SortOrder failure_reason?: SortOrderInput | SortOrder is_profiling_available?: SortOrder device_info?: SortOrderInput | SortOrder device_udid?: SortOrder device_platform?: SortOrder device_version?: SortOrder device_name?: SortOrderInput | SortOrder createdAt?: SortOrder updatedAt?: SortOrder performance_trace?: SortOrderInput | SortOrder failure_category?: SortOrderInput | SortOrder ai_analysis?: SortOrderInput | SortOrder tags?: SortOrderInput | SortOrder trace_id?: SortOrderInput | SortOrder last_heartbeat_at?: SortOrderInput | SortOrder heartbeat_pid?: SortOrderInput | SortOrder heartbeat_host?: SortOrderInput | SortOrder api_key_id?: SortOrderInput | SortOrder user_id?: SortOrderInput | SortOrder _count?: SessionCountOrderByAggregateInput _avg?: SessionAvgOrderByAggregateInput _max?: SessionMaxOrderByAggregateInput _min?: SessionMinOrderByAggregateInput _sum?: SessionSumOrderByAggregateInput } export type SessionScalarWhereWithAggregatesInput = { AND?: SessionScalarWhereWithAggregatesInput | SessionScalarWhereWithAggregatesInput[] OR?: SessionScalarWhereWithAggregatesInput[] NOT?: SessionScalarWhereWithAggregatesInput | SessionScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"Session"> | string build_id?: StringNullableWithAggregatesFilter<"Session"> | string | null name?: StringNullableWithAggregatesFilter<"Session"> | string | null status?: StringWithAggregatesFilter<"Session"> | string desired_capabilities?: StringWithAggregatesFilter<"Session"> | string session_capabilities?: StringWithAggregatesFilter<"Session"> | string node_id?: StringWithAggregatesFilter<"Session"> | string has_live_video?: BoolWithAggregatesFilter<"Session"> | boolean video_recording_enabled?: BoolWithAggregatesFilter<"Session"> | boolean video_recording?: StringNullableWithAggregatesFilter<"Session"> | string | null startTime?: DateTimeWithAggregatesFilter<"Session"> | Date | string endTime?: DateTimeNullableWithAggregatesFilter<"Session"> | Date | string | null failure_reason?: StringNullableWithAggregatesFilter<"Session"> | string | null is_profiling_available?: BoolWithAggregatesFilter<"Session"> | boolean device_info?: StringNullableWithAggregatesFilter<"Session"> | string | null device_udid?: StringWithAggregatesFilter<"Session"> | string device_platform?: StringWithAggregatesFilter<"Session"> | string device_version?: StringWithAggregatesFilter<"Session"> | string device_name?: StringNullableWithAggregatesFilter<"Session"> | string | null createdAt?: DateTimeWithAggregatesFilter<"Session"> | Date | string updatedAt?: DateTimeWithAggregatesFilter<"Session"> | Date | string performance_trace?: StringNullableWithAggregatesFilter<"Session"> | string | null failure_category?: StringNullableWithAggregatesFilter<"Session"> | string | null ai_analysis?: StringNullableWithAggregatesFilter<"Session"> | string | null tags?: StringNullableWithAggregatesFilter<"Session"> | string | null trace_id?: StringNullableWithAggregatesFilter<"Session"> | string | null last_heartbeat_at?: DateTimeNullableWithAggregatesFilter<"Session"> | Date | string | null heartbeat_pid?: IntNullableWithAggregatesFilter<"Session"> | number | null heartbeat_host?: StringNullableWithAggregatesFilter<"Session"> | string | null api_key_id?: StringNullableWithAggregatesFilter<"Session"> | string | null user_id?: StringNullableWithAggregatesFilter<"Session"> | string | null } export type SessionLogWhereInput = { AND?: SessionLogWhereInput | SessionLogWhereInput[] OR?: SessionLogWhereInput[] NOT?: SessionLogWhereInput | SessionLogWhereInput[] id?: StringFilter<"SessionLog"> | string session_id?: StringFilter<"SessionLog"> | string command_name?: StringNullableFilter<"SessionLog"> | string | null url?: StringFilter<"SessionLog"> | string method?: StringFilter<"SessionLog"> | string title?: StringFilter<"SessionLog"> | string subtitle?: StringNullableFilter<"SessionLog"> | string | null body?: StringNullableFilter<"SessionLog"> | string | null response?: StringFilter<"SessionLog"> | string screenshot?: StringNullableFilter<"SessionLog"> | string | null is_success?: BoolNullableFilter<"SessionLog"> | boolean | null is_error?: BoolFilter<"SessionLog"> | boolean is_healed?: BoolFilter<"SessionLog"> | boolean original_selector?: StringNullableFilter<"SessionLog"> | string | null healed_selector?: StringNullableFilter<"SessionLog"> | string | null healing_confidence?: FloatNullableFilter<"SessionLog"> | number | null healing_tier?: StringNullableFilter<"SessionLog"> | string | null original_strategy?: StringNullableFilter<"SessionLog"> | string | null healed_strategy?: StringNullableFilter<"SessionLog"> | string | null createdAt?: DateTimeFilter<"SessionLog"> | Date | string updatedAt?: DateTimeFilter<"SessionLog"> | Date | string duration?: IntNullableFilter<"SessionLog"> | number | null span_id?: StringNullableFilter<"SessionLog"> | string | null trace_id?: StringNullableFilter<"SessionLog"> | string | null session?: XOR } export type SessionLogOrderByWithRelationInput = { id?: SortOrder session_id?: SortOrder command_name?: SortOrderInput | SortOrder url?: SortOrder method?: SortOrder title?: SortOrder subtitle?: SortOrderInput | SortOrder body?: SortOrderInput | SortOrder response?: SortOrder screenshot?: SortOrderInput | SortOrder is_success?: SortOrderInput | SortOrder is_error?: SortOrder is_healed?: SortOrder original_selector?: SortOrderInput | SortOrder healed_selector?: SortOrderInput | SortOrder healing_confidence?: SortOrderInput | SortOrder healing_tier?: SortOrderInput | SortOrder original_strategy?: SortOrderInput | SortOrder healed_strategy?: SortOrderInput | SortOrder createdAt?: SortOrder updatedAt?: SortOrder duration?: SortOrderInput | SortOrder span_id?: SortOrderInput | SortOrder trace_id?: SortOrderInput | SortOrder session?: SessionOrderByWithRelationInput } export type SessionLogWhereUniqueInput = Prisma.AtLeast<{ id?: string AND?: SessionLogWhereInput | SessionLogWhereInput[] OR?: SessionLogWhereInput[] NOT?: SessionLogWhereInput | SessionLogWhereInput[] session_id?: StringFilter<"SessionLog"> | string command_name?: StringNullableFilter<"SessionLog"> | string | null url?: StringFilter<"SessionLog"> | string method?: StringFilter<"SessionLog"> | string title?: StringFilter<"SessionLog"> | string subtitle?: StringNullableFilter<"SessionLog"> | string | null body?: StringNullableFilter<"SessionLog"> | string | null response?: StringFilter<"SessionLog"> | string screenshot?: StringNullableFilter<"SessionLog"> | string | null is_success?: BoolNullableFilter<"SessionLog"> | boolean | null is_error?: BoolFilter<"SessionLog"> | boolean is_healed?: BoolFilter<"SessionLog"> | boolean original_selector?: StringNullableFilter<"SessionLog"> | string | null healed_selector?: StringNullableFilter<"SessionLog"> | string | null healing_confidence?: FloatNullableFilter<"SessionLog"> | number | null healing_tier?: StringNullableFilter<"SessionLog"> | string | null original_strategy?: StringNullableFilter<"SessionLog"> | string | null healed_strategy?: StringNullableFilter<"SessionLog"> | string | null createdAt?: DateTimeFilter<"SessionLog"> | Date | string updatedAt?: DateTimeFilter<"SessionLog"> | Date | string duration?: IntNullableFilter<"SessionLog"> | number | null span_id?: StringNullableFilter<"SessionLog"> | string | null trace_id?: StringNullableFilter<"SessionLog"> | string | null session?: XOR }, "id"> export type SessionLogOrderByWithAggregationInput = { id?: SortOrder session_id?: SortOrder command_name?: SortOrderInput | SortOrder url?: SortOrder method?: SortOrder title?: SortOrder subtitle?: SortOrderInput | SortOrder body?: SortOrderInput | SortOrder response?: SortOrder screenshot?: SortOrderInput | SortOrder is_success?: SortOrderInput | SortOrder is_error?: SortOrder is_healed?: SortOrder original_selector?: SortOrderInput | SortOrder healed_selector?: SortOrderInput | SortOrder healing_confidence?: SortOrderInput | SortOrder healing_tier?: SortOrderInput | SortOrder original_strategy?: SortOrderInput | SortOrder healed_strategy?: SortOrderInput | SortOrder createdAt?: SortOrder updatedAt?: SortOrder duration?: SortOrderInput | SortOrder span_id?: SortOrderInput | SortOrder trace_id?: SortOrderInput | SortOrder _count?: SessionLogCountOrderByAggregateInput _avg?: SessionLogAvgOrderByAggregateInput _max?: SessionLogMaxOrderByAggregateInput _min?: SessionLogMinOrderByAggregateInput _sum?: SessionLogSumOrderByAggregateInput } export type SessionLogScalarWhereWithAggregatesInput = { AND?: SessionLogScalarWhereWithAggregatesInput | SessionLogScalarWhereWithAggregatesInput[] OR?: SessionLogScalarWhereWithAggregatesInput[] NOT?: SessionLogScalarWhereWithAggregatesInput | SessionLogScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"SessionLog"> | string session_id?: StringWithAggregatesFilter<"SessionLog"> | string command_name?: StringNullableWithAggregatesFilter<"SessionLog"> | string | null url?: StringWithAggregatesFilter<"SessionLog"> | string method?: StringWithAggregatesFilter<"SessionLog"> | string title?: StringWithAggregatesFilter<"SessionLog"> | string subtitle?: StringNullableWithAggregatesFilter<"SessionLog"> | string | null body?: StringNullableWithAggregatesFilter<"SessionLog"> | string | null response?: StringWithAggregatesFilter<"SessionLog"> | string screenshot?: StringNullableWithAggregatesFilter<"SessionLog"> | string | null is_success?: BoolNullableWithAggregatesFilter<"SessionLog"> | boolean | null is_error?: BoolWithAggregatesFilter<"SessionLog"> | boolean is_healed?: BoolWithAggregatesFilter<"SessionLog"> | boolean original_selector?: StringNullableWithAggregatesFilter<"SessionLog"> | string | null healed_selector?: StringNullableWithAggregatesFilter<"SessionLog"> | string | null healing_confidence?: FloatNullableWithAggregatesFilter<"SessionLog"> | number | null healing_tier?: StringNullableWithAggregatesFilter<"SessionLog"> | string | null original_strategy?: StringNullableWithAggregatesFilter<"SessionLog"> | string | null healed_strategy?: StringNullableWithAggregatesFilter<"SessionLog"> | string | null createdAt?: DateTimeWithAggregatesFilter<"SessionLog"> | Date | string updatedAt?: DateTimeWithAggregatesFilter<"SessionLog"> | Date | string duration?: IntNullableWithAggregatesFilter<"SessionLog"> | number | null span_id?: StringNullableWithAggregatesFilter<"SessionLog"> | string | null trace_id?: StringNullableWithAggregatesFilter<"SessionLog"> | string | null } export type LogWhereInput = { AND?: LogWhereInput | LogWhereInput[] OR?: LogWhereInput[] NOT?: LogWhereInput | LogWhereInput[] id?: StringFilter<"Log"> | string session_id?: StringFilter<"Log"> | string log_type?: StringFilter<"Log"> | string message?: StringFilter<"Log"> | string timestamp?: DateTimeFilter<"Log"> | Date | string createdAt?: DateTimeFilter<"Log"> | Date | string updatedAt?: DateTimeFilter<"Log"> | Date | string session?: XOR } export type LogOrderByWithRelationInput = { id?: SortOrder session_id?: SortOrder log_type?: SortOrder message?: SortOrder timestamp?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder session?: SessionOrderByWithRelationInput } export type LogWhereUniqueInput = Prisma.AtLeast<{ id?: string AND?: LogWhereInput | LogWhereInput[] OR?: LogWhereInput[] NOT?: LogWhereInput | LogWhereInput[] session_id?: StringFilter<"Log"> | string log_type?: StringFilter<"Log"> | string message?: StringFilter<"Log"> | string timestamp?: DateTimeFilter<"Log"> | Date | string createdAt?: DateTimeFilter<"Log"> | Date | string updatedAt?: DateTimeFilter<"Log"> | Date | string session?: XOR }, "id"> export type LogOrderByWithAggregationInput = { id?: SortOrder session_id?: SortOrder log_type?: SortOrder message?: SortOrder timestamp?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder _count?: LogCountOrderByAggregateInput _max?: LogMaxOrderByAggregateInput _min?: LogMinOrderByAggregateInput } export type LogScalarWhereWithAggregatesInput = { AND?: LogScalarWhereWithAggregatesInput | LogScalarWhereWithAggregatesInput[] OR?: LogScalarWhereWithAggregatesInput[] NOT?: LogScalarWhereWithAggregatesInput | LogScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"Log"> | string session_id?: StringWithAggregatesFilter<"Log"> | string log_type?: StringWithAggregatesFilter<"Log"> | string message?: StringWithAggregatesFilter<"Log"> | string timestamp?: DateTimeWithAggregatesFilter<"Log"> | Date | string createdAt?: DateTimeWithAggregatesFilter<"Log"> | Date | string updatedAt?: DateTimeWithAggregatesFilter<"Log"> | Date | string } export type ProfilingWhereInput = { AND?: ProfilingWhereInput | ProfilingWhereInput[] OR?: ProfilingWhereInput[] NOT?: ProfilingWhereInput | ProfilingWhereInput[] id?: IntFilter<"Profiling"> | number session_id?: StringFilter<"Profiling"> | string cpu?: StringNullableFilter<"Profiling"> | string | null memory?: StringNullableFilter<"Profiling"> | string | null total_cpu_used?: StringNullableFilter<"Profiling"> | string | null total_memory_used?: StringNullableFilter<"Profiling"> | string | null raw_cpu_log?: StringNullableFilter<"Profiling"> | string | null raw_memory_log?: StringNullableFilter<"Profiling"> | string | null timestamp?: DateTimeFilter<"Profiling"> | Date | string createdAt?: DateTimeFilter<"Profiling"> | Date | string updatedAt?: DateTimeFilter<"Profiling"> | Date | string session?: XOR } export type ProfilingOrderByWithRelationInput = { id?: SortOrder session_id?: SortOrder cpu?: SortOrderInput | SortOrder memory?: SortOrderInput | SortOrder total_cpu_used?: SortOrderInput | SortOrder total_memory_used?: SortOrderInput | SortOrder raw_cpu_log?: SortOrderInput | SortOrder raw_memory_log?: SortOrderInput | SortOrder timestamp?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder session?: SessionOrderByWithRelationInput } export type ProfilingWhereUniqueInput = Prisma.AtLeast<{ id?: number AND?: ProfilingWhereInput | ProfilingWhereInput[] OR?: ProfilingWhereInput[] NOT?: ProfilingWhereInput | ProfilingWhereInput[] session_id?: StringFilter<"Profiling"> | string cpu?: StringNullableFilter<"Profiling"> | string | null memory?: StringNullableFilter<"Profiling"> | string | null total_cpu_used?: StringNullableFilter<"Profiling"> | string | null total_memory_used?: StringNullableFilter<"Profiling"> | string | null raw_cpu_log?: StringNullableFilter<"Profiling"> | string | null raw_memory_log?: StringNullableFilter<"Profiling"> | string | null timestamp?: DateTimeFilter<"Profiling"> | Date | string createdAt?: DateTimeFilter<"Profiling"> | Date | string updatedAt?: DateTimeFilter<"Profiling"> | Date | string session?: XOR }, "id"> export type ProfilingOrderByWithAggregationInput = { id?: SortOrder session_id?: SortOrder cpu?: SortOrderInput | SortOrder memory?: SortOrderInput | SortOrder total_cpu_used?: SortOrderInput | SortOrder total_memory_used?: SortOrderInput | SortOrder raw_cpu_log?: SortOrderInput | SortOrder raw_memory_log?: SortOrderInput | SortOrder timestamp?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder _count?: ProfilingCountOrderByAggregateInput _avg?: ProfilingAvgOrderByAggregateInput _max?: ProfilingMaxOrderByAggregateInput _min?: ProfilingMinOrderByAggregateInput _sum?: ProfilingSumOrderByAggregateInput } export type ProfilingScalarWhereWithAggregatesInput = { AND?: ProfilingScalarWhereWithAggregatesInput | ProfilingScalarWhereWithAggregatesInput[] OR?: ProfilingScalarWhereWithAggregatesInput[] NOT?: ProfilingScalarWhereWithAggregatesInput | ProfilingScalarWhereWithAggregatesInput[] id?: IntWithAggregatesFilter<"Profiling"> | number session_id?: StringWithAggregatesFilter<"Profiling"> | string cpu?: StringNullableWithAggregatesFilter<"Profiling"> | string | null memory?: StringNullableWithAggregatesFilter<"Profiling"> | string | null total_cpu_used?: StringNullableWithAggregatesFilter<"Profiling"> | string | null total_memory_used?: StringNullableWithAggregatesFilter<"Profiling"> | string | null raw_cpu_log?: StringNullableWithAggregatesFilter<"Profiling"> | string | null raw_memory_log?: StringNullableWithAggregatesFilter<"Profiling"> | string | null timestamp?: DateTimeWithAggregatesFilter<"Profiling"> | Date | string createdAt?: DateTimeWithAggregatesFilter<"Profiling"> | Date | string updatedAt?: DateTimeWithAggregatesFilter<"Profiling"> | Date | string } export type AppWhereInput = { AND?: AppWhereInput | AppWhereInput[] OR?: AppWhereInput[] NOT?: AppWhereInput | AppWhereInput[] id?: StringFilter<"App"> | string name?: StringFilter<"App"> | string filename?: StringFilter<"App"> | string filepath?: StringFilter<"App"> | string mimetype?: StringFilter<"App"> | string size?: IntFilter<"App"> | number packageName?: StringNullableFilter<"App"> | string | null version?: StringNullableFilter<"App"> | string | null platform?: StringNullableFilter<"App"> | string | null md5?: StringNullableFilter<"App"> | string | null createdAt?: DateTimeFilter<"App"> | Date | string updatedAt?: DateTimeFilter<"App"> | Date | string } export type AppOrderByWithRelationInput = { id?: SortOrder name?: SortOrder filename?: SortOrder filepath?: SortOrder mimetype?: SortOrder size?: SortOrder packageName?: SortOrderInput | SortOrder version?: SortOrderInput | SortOrder platform?: SortOrderInput | SortOrder md5?: SortOrderInput | SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type AppWhereUniqueInput = Prisma.AtLeast<{ id?: string md5?: string AND?: AppWhereInput | AppWhereInput[] OR?: AppWhereInput[] NOT?: AppWhereInput | AppWhereInput[] name?: StringFilter<"App"> | string filename?: StringFilter<"App"> | string filepath?: StringFilter<"App"> | string mimetype?: StringFilter<"App"> | string size?: IntFilter<"App"> | number packageName?: StringNullableFilter<"App"> | string | null version?: StringNullableFilter<"App"> | string | null platform?: StringNullableFilter<"App"> | string | null createdAt?: DateTimeFilter<"App"> | Date | string updatedAt?: DateTimeFilter<"App"> | Date | string }, "id" | "md5"> export type AppOrderByWithAggregationInput = { id?: SortOrder name?: SortOrder filename?: SortOrder filepath?: SortOrder mimetype?: SortOrder size?: SortOrder packageName?: SortOrderInput | SortOrder version?: SortOrderInput | SortOrder platform?: SortOrderInput | SortOrder md5?: SortOrderInput | SortOrder createdAt?: SortOrder updatedAt?: SortOrder _count?: AppCountOrderByAggregateInput _avg?: AppAvgOrderByAggregateInput _max?: AppMaxOrderByAggregateInput _min?: AppMinOrderByAggregateInput _sum?: AppSumOrderByAggregateInput } export type AppScalarWhereWithAggregatesInput = { AND?: AppScalarWhereWithAggregatesInput | AppScalarWhereWithAggregatesInput[] OR?: AppScalarWhereWithAggregatesInput[] NOT?: AppScalarWhereWithAggregatesInput | AppScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"App"> | string name?: StringWithAggregatesFilter<"App"> | string filename?: StringWithAggregatesFilter<"App"> | string filepath?: StringWithAggregatesFilter<"App"> | string mimetype?: StringWithAggregatesFilter<"App"> | string size?: IntWithAggregatesFilter<"App"> | number packageName?: StringNullableWithAggregatesFilter<"App"> | string | null version?: StringNullableWithAggregatesFilter<"App"> | string | null platform?: StringNullableWithAggregatesFilter<"App"> | string | null md5?: StringNullableWithAggregatesFilter<"App"> | string | null createdAt?: DateTimeWithAggregatesFilter<"App"> | Date | string updatedAt?: DateTimeWithAggregatesFilter<"App"> | Date | string } export type DeviceWhereInput = { AND?: DeviceWhereInput | DeviceWhereInput[] OR?: DeviceWhereInput[] NOT?: DeviceWhereInput | DeviceWhereInput[] udid?: StringFilter<"Device"> | string host?: StringFilter<"Device"> | string systemPort?: IntNullableFilter<"Device"> | number | null proxyPort?: IntNullableFilter<"Device"> | number | null proxyHost?: StringNullableFilter<"Device"> | string | null wdaLocalPort?: IntNullableFilter<"Device"> | number | null name?: StringNullableFilter<"Device"> | string | null state?: StringNullableFilter<"Device"> | string | null sdk?: StringNullableFilter<"Device"> | string | null platform?: StringNullableFilter<"Device"> | string | null deviceType?: StringNullableFilter<"Device"> | string | null busy?: BoolNullableFilter<"Device"> | boolean | null userBlocked?: BoolNullableFilter<"Device"> | boolean | null realDevice?: BoolNullableFilter<"Device"> | boolean | null session_id?: StringNullableFilter<"Device"> | string | null offline?: BoolNullableFilter<"Device"> | boolean | null mjpegServerPort?: IntNullableFilter<"Device"> | number | null lastCmdExecutedAt?: FloatNullableFilter<"Device"> | number | null totalUtilizationTimeMilliSec?: FloatFilter<"Device"> | number sessionStartTime?: FloatFilter<"Device"> | number newCommandTimeout?: IntNullableFilter<"Device"> | number | null cloud?: StringNullableFilter<"Device"> | string | null derivedDataPath?: StringNullableFilter<"Device"> | string | null chromeDriverPath?: StringNullableFilter<"Device"> | string | null capability?: StringNullableFilter<"Device"> | string | null adbRemoteHost?: StringNullableFilter<"Device"> | string | null adbPort?: IntNullableFilter<"Device"> | number | null nodeId?: StringNullableFilter<"Device"> | string | null screenWidth?: StringNullableFilter<"Device"> | string | null screenHeight?: StringNullableFilter<"Device"> | string | null dashboard_link?: StringNullableFilter<"Device"> | string | null total_session_count?: IntNullableFilter<"Device"> | number | null createdAt?: DateTimeFilter<"Device"> | Date | string updatedAt?: DateTimeFilter<"Device"> | Date | string healthCheckError?: StringNullableFilter<"Device"> | string | null healthStatus?: StringNullableFilter<"Device"> | string | null lastHealthCheckAt?: FloatNullableFilter<"Device"> | number | null batteryLevel?: IntNullableFilter<"Device"> | number | null reservationReason?: StringNullableFilter<"Device"> | string | null reservedBy?: StringNullableFilter<"Device"> | string | null reservedUntil?: FloatNullableFilter<"Device"> | number | null storageFree?: StringNullableFilter<"Device"> | string | null tags?: StringNullableFilter<"Device"> | string | null thermalStatus?: StringNullableFilter<"Device"> | string | null sessionProgress?: StringNullableFilter<"Device"> | string | null totalHealedCount?: IntNullableFilter<"Device"> | number | null ip?: StringNullableFilter<"Device"> | string | null cpuArchitecture?: StringNullableFilter<"Device"> | string | null owningSessionId?: StringNullableFilter<"Device"> | string | null lockedAt?: FloatNullableFilter<"Device"> | number | null teamId?: StringNullableFilter<"Device"> | string | null team?: XOR | null } export type DeviceOrderByWithRelationInput = { udid?: SortOrder host?: SortOrder systemPort?: SortOrderInput | SortOrder proxyPort?: SortOrderInput | SortOrder proxyHost?: SortOrderInput | SortOrder wdaLocalPort?: SortOrderInput | SortOrder name?: SortOrderInput | SortOrder state?: SortOrderInput | SortOrder sdk?: SortOrderInput | SortOrder platform?: SortOrderInput | SortOrder deviceType?: SortOrderInput | SortOrder busy?: SortOrderInput | SortOrder userBlocked?: SortOrderInput | SortOrder realDevice?: SortOrderInput | SortOrder session_id?: SortOrderInput | SortOrder offline?: SortOrderInput | SortOrder mjpegServerPort?: SortOrderInput | SortOrder lastCmdExecutedAt?: SortOrderInput | SortOrder totalUtilizationTimeMilliSec?: SortOrder sessionStartTime?: SortOrder newCommandTimeout?: SortOrderInput | SortOrder cloud?: SortOrderInput | SortOrder derivedDataPath?: SortOrderInput | SortOrder chromeDriverPath?: SortOrderInput | SortOrder capability?: SortOrderInput | SortOrder adbRemoteHost?: SortOrderInput | SortOrder adbPort?: SortOrderInput | SortOrder nodeId?: SortOrderInput | SortOrder screenWidth?: SortOrderInput | SortOrder screenHeight?: SortOrderInput | SortOrder dashboard_link?: SortOrderInput | SortOrder total_session_count?: SortOrderInput | SortOrder createdAt?: SortOrder updatedAt?: SortOrder healthCheckError?: SortOrderInput | SortOrder healthStatus?: SortOrderInput | SortOrder lastHealthCheckAt?: SortOrderInput | SortOrder batteryLevel?: SortOrderInput | SortOrder reservationReason?: SortOrderInput | SortOrder reservedBy?: SortOrderInput | SortOrder reservedUntil?: SortOrderInput | SortOrder storageFree?: SortOrderInput | SortOrder tags?: SortOrderInput | SortOrder thermalStatus?: SortOrderInput | SortOrder sessionProgress?: SortOrderInput | SortOrder totalHealedCount?: SortOrderInput | SortOrder ip?: SortOrderInput | SortOrder cpuArchitecture?: SortOrderInput | SortOrder owningSessionId?: SortOrderInput | SortOrder lockedAt?: SortOrderInput | SortOrder teamId?: SortOrderInput | SortOrder team?: TeamOrderByWithRelationInput } export type DeviceWhereUniqueInput = Prisma.AtLeast<{ udid_host?: DeviceUdidHostCompoundUniqueInput AND?: DeviceWhereInput | DeviceWhereInput[] OR?: DeviceWhereInput[] NOT?: DeviceWhereInput | DeviceWhereInput[] udid?: StringFilter<"Device"> | string host?: StringFilter<"Device"> | string systemPort?: IntNullableFilter<"Device"> | number | null proxyPort?: IntNullableFilter<"Device"> | number | null proxyHost?: StringNullableFilter<"Device"> | string | null wdaLocalPort?: IntNullableFilter<"Device"> | number | null name?: StringNullableFilter<"Device"> | string | null state?: StringNullableFilter<"Device"> | string | null sdk?: StringNullableFilter<"Device"> | string | null platform?: StringNullableFilter<"Device"> | string | null deviceType?: StringNullableFilter<"Device"> | string | null busy?: BoolNullableFilter<"Device"> | boolean | null userBlocked?: BoolNullableFilter<"Device"> | boolean | null realDevice?: BoolNullableFilter<"Device"> | boolean | null session_id?: StringNullableFilter<"Device"> | string | null offline?: BoolNullableFilter<"Device"> | boolean | null mjpegServerPort?: IntNullableFilter<"Device"> | number | null lastCmdExecutedAt?: FloatNullableFilter<"Device"> | number | null totalUtilizationTimeMilliSec?: FloatFilter<"Device"> | number sessionStartTime?: FloatFilter<"Device"> | number newCommandTimeout?: IntNullableFilter<"Device"> | number | null cloud?: StringNullableFilter<"Device"> | string | null derivedDataPath?: StringNullableFilter<"Device"> | string | null chromeDriverPath?: StringNullableFilter<"Device"> | string | null capability?: StringNullableFilter<"Device"> | string | null adbRemoteHost?: StringNullableFilter<"Device"> | string | null adbPort?: IntNullableFilter<"Device"> | number | null nodeId?: StringNullableFilter<"Device"> | string | null screenWidth?: StringNullableFilter<"Device"> | string | null screenHeight?: StringNullableFilter<"Device"> | string | null dashboard_link?: StringNullableFilter<"Device"> | string | null total_session_count?: IntNullableFilter<"Device"> | number | null createdAt?: DateTimeFilter<"Device"> | Date | string updatedAt?: DateTimeFilter<"Device"> | Date | string healthCheckError?: StringNullableFilter<"Device"> | string | null healthStatus?: StringNullableFilter<"Device"> | string | null lastHealthCheckAt?: FloatNullableFilter<"Device"> | number | null batteryLevel?: IntNullableFilter<"Device"> | number | null reservationReason?: StringNullableFilter<"Device"> | string | null reservedBy?: StringNullableFilter<"Device"> | string | null reservedUntil?: FloatNullableFilter<"Device"> | number | null storageFree?: StringNullableFilter<"Device"> | string | null tags?: StringNullableFilter<"Device"> | string | null thermalStatus?: StringNullableFilter<"Device"> | string | null sessionProgress?: StringNullableFilter<"Device"> | string | null totalHealedCount?: IntNullableFilter<"Device"> | number | null ip?: StringNullableFilter<"Device"> | string | null cpuArchitecture?: StringNullableFilter<"Device"> | string | null owningSessionId?: StringNullableFilter<"Device"> | string | null lockedAt?: FloatNullableFilter<"Device"> | number | null teamId?: StringNullableFilter<"Device"> | string | null team?: XOR | null }, "udid_host"> export type DeviceOrderByWithAggregationInput = { udid?: SortOrder host?: SortOrder systemPort?: SortOrderInput | SortOrder proxyPort?: SortOrderInput | SortOrder proxyHost?: SortOrderInput | SortOrder wdaLocalPort?: SortOrderInput | SortOrder name?: SortOrderInput | SortOrder state?: SortOrderInput | SortOrder sdk?: SortOrderInput | SortOrder platform?: SortOrderInput | SortOrder deviceType?: SortOrderInput | SortOrder busy?: SortOrderInput | SortOrder userBlocked?: SortOrderInput | SortOrder realDevice?: SortOrderInput | SortOrder session_id?: SortOrderInput | SortOrder offline?: SortOrderInput | SortOrder mjpegServerPort?: SortOrderInput | SortOrder lastCmdExecutedAt?: SortOrderInput | SortOrder totalUtilizationTimeMilliSec?: SortOrder sessionStartTime?: SortOrder newCommandTimeout?: SortOrderInput | SortOrder cloud?: SortOrderInput | SortOrder derivedDataPath?: SortOrderInput | SortOrder chromeDriverPath?: SortOrderInput | SortOrder capability?: SortOrderInput | SortOrder adbRemoteHost?: SortOrderInput | SortOrder adbPort?: SortOrderInput | SortOrder nodeId?: SortOrderInput | SortOrder screenWidth?: SortOrderInput | SortOrder screenHeight?: SortOrderInput | SortOrder dashboard_link?: SortOrderInput | SortOrder total_session_count?: SortOrderInput | SortOrder createdAt?: SortOrder updatedAt?: SortOrder healthCheckError?: SortOrderInput | SortOrder healthStatus?: SortOrderInput | SortOrder lastHealthCheckAt?: SortOrderInput | SortOrder batteryLevel?: SortOrderInput | SortOrder reservationReason?: SortOrderInput | SortOrder reservedBy?: SortOrderInput | SortOrder reservedUntil?: SortOrderInput | SortOrder storageFree?: SortOrderInput | SortOrder tags?: SortOrderInput | SortOrder thermalStatus?: SortOrderInput | SortOrder sessionProgress?: SortOrderInput | SortOrder totalHealedCount?: SortOrderInput | SortOrder ip?: SortOrderInput | SortOrder cpuArchitecture?: SortOrderInput | SortOrder owningSessionId?: SortOrderInput | SortOrder lockedAt?: SortOrderInput | SortOrder teamId?: SortOrderInput | SortOrder _count?: DeviceCountOrderByAggregateInput _avg?: DeviceAvgOrderByAggregateInput _max?: DeviceMaxOrderByAggregateInput _min?: DeviceMinOrderByAggregateInput _sum?: DeviceSumOrderByAggregateInput } export type DeviceScalarWhereWithAggregatesInput = { AND?: DeviceScalarWhereWithAggregatesInput | DeviceScalarWhereWithAggregatesInput[] OR?: DeviceScalarWhereWithAggregatesInput[] NOT?: DeviceScalarWhereWithAggregatesInput | DeviceScalarWhereWithAggregatesInput[] udid?: StringWithAggregatesFilter<"Device"> | string host?: StringWithAggregatesFilter<"Device"> | string systemPort?: IntNullableWithAggregatesFilter<"Device"> | number | null proxyPort?: IntNullableWithAggregatesFilter<"Device"> | number | null proxyHost?: StringNullableWithAggregatesFilter<"Device"> | string | null wdaLocalPort?: IntNullableWithAggregatesFilter<"Device"> | number | null name?: StringNullableWithAggregatesFilter<"Device"> | string | null state?: StringNullableWithAggregatesFilter<"Device"> | string | null sdk?: StringNullableWithAggregatesFilter<"Device"> | string | null platform?: StringNullableWithAggregatesFilter<"Device"> | string | null deviceType?: StringNullableWithAggregatesFilter<"Device"> | string | null busy?: BoolNullableWithAggregatesFilter<"Device"> | boolean | null userBlocked?: BoolNullableWithAggregatesFilter<"Device"> | boolean | null realDevice?: BoolNullableWithAggregatesFilter<"Device"> | boolean | null session_id?: StringNullableWithAggregatesFilter<"Device"> | string | null offline?: BoolNullableWithAggregatesFilter<"Device"> | boolean | null mjpegServerPort?: IntNullableWithAggregatesFilter<"Device"> | number | null lastCmdExecutedAt?: FloatNullableWithAggregatesFilter<"Device"> | number | null totalUtilizationTimeMilliSec?: FloatWithAggregatesFilter<"Device"> | number sessionStartTime?: FloatWithAggregatesFilter<"Device"> | number newCommandTimeout?: IntNullableWithAggregatesFilter<"Device"> | number | null cloud?: StringNullableWithAggregatesFilter<"Device"> | string | null derivedDataPath?: StringNullableWithAggregatesFilter<"Device"> | string | null chromeDriverPath?: StringNullableWithAggregatesFilter<"Device"> | string | null capability?: StringNullableWithAggregatesFilter<"Device"> | string | null adbRemoteHost?: StringNullableWithAggregatesFilter<"Device"> | string | null adbPort?: IntNullableWithAggregatesFilter<"Device"> | number | null nodeId?: StringNullableWithAggregatesFilter<"Device"> | string | null screenWidth?: StringNullableWithAggregatesFilter<"Device"> | string | null screenHeight?: StringNullableWithAggregatesFilter<"Device"> | string | null dashboard_link?: StringNullableWithAggregatesFilter<"Device"> | string | null total_session_count?: IntNullableWithAggregatesFilter<"Device"> | number | null createdAt?: DateTimeWithAggregatesFilter<"Device"> | Date | string updatedAt?: DateTimeWithAggregatesFilter<"Device"> | Date | string healthCheckError?: StringNullableWithAggregatesFilter<"Device"> | string | null healthStatus?: StringNullableWithAggregatesFilter<"Device"> | string | null lastHealthCheckAt?: FloatNullableWithAggregatesFilter<"Device"> | number | null batteryLevel?: IntNullableWithAggregatesFilter<"Device"> | number | null reservationReason?: StringNullableWithAggregatesFilter<"Device"> | string | null reservedBy?: StringNullableWithAggregatesFilter<"Device"> | string | null reservedUntil?: FloatNullableWithAggregatesFilter<"Device"> | number | null storageFree?: StringNullableWithAggregatesFilter<"Device"> | string | null tags?: StringNullableWithAggregatesFilter<"Device"> | string | null thermalStatus?: StringNullableWithAggregatesFilter<"Device"> | string | null sessionProgress?: StringNullableWithAggregatesFilter<"Device"> | string | null totalHealedCount?: IntNullableWithAggregatesFilter<"Device"> | number | null ip?: StringNullableWithAggregatesFilter<"Device"> | string | null cpuArchitecture?: StringNullableWithAggregatesFilter<"Device"> | string | null owningSessionId?: StringNullableWithAggregatesFilter<"Device"> | string | null lockedAt?: FloatNullableWithAggregatesFilter<"Device"> | number | null teamId?: StringNullableWithAggregatesFilter<"Device"> | string | null } export type PendingSessionWhereInput = { AND?: PendingSessionWhereInput | PendingSessionWhereInput[] OR?: PendingSessionWhereInput[] NOT?: PendingSessionWhereInput | PendingSessionWhereInput[] id?: IntFilter<"PendingSession"> | number capability_id?: StringFilter<"PendingSession"> | string capability?: StringFilter<"PendingSession"> | string createdAt?: FloatFilter<"PendingSession"> | number } export type PendingSessionOrderByWithRelationInput = { id?: SortOrder capability_id?: SortOrder capability?: SortOrder createdAt?: SortOrder } export type PendingSessionWhereUniqueInput = Prisma.AtLeast<{ id?: number capability_id?: string AND?: PendingSessionWhereInput | PendingSessionWhereInput[] OR?: PendingSessionWhereInput[] NOT?: PendingSessionWhereInput | PendingSessionWhereInput[] capability?: StringFilter<"PendingSession"> | string createdAt?: FloatFilter<"PendingSession"> | number }, "id" | "capability_id"> export type PendingSessionOrderByWithAggregationInput = { id?: SortOrder capability_id?: SortOrder capability?: SortOrder createdAt?: SortOrder _count?: PendingSessionCountOrderByAggregateInput _avg?: PendingSessionAvgOrderByAggregateInput _max?: PendingSessionMaxOrderByAggregateInput _min?: PendingSessionMinOrderByAggregateInput _sum?: PendingSessionSumOrderByAggregateInput } export type PendingSessionScalarWhereWithAggregatesInput = { AND?: PendingSessionScalarWhereWithAggregatesInput | PendingSessionScalarWhereWithAggregatesInput[] OR?: PendingSessionScalarWhereWithAggregatesInput[] NOT?: PendingSessionScalarWhereWithAggregatesInput | PendingSessionScalarWhereWithAggregatesInput[] id?: IntWithAggregatesFilter<"PendingSession"> | number capability_id?: StringWithAggregatesFilter<"PendingSession"> | string capability?: StringWithAggregatesFilter<"PendingSession"> | string createdAt?: FloatWithAggregatesFilter<"PendingSession"> | number } export type CLIArgsWhereInput = { AND?: CLIArgsWhereInput | CLIArgsWhereInput[] OR?: CLIArgsWhereInput[] NOT?: CLIArgsWhereInput | CLIArgsWhereInput[] id?: IntFilter<"CLIArgs"> | number args?: StringFilter<"CLIArgs"> | string createdAt?: DateTimeFilter<"CLIArgs"> | Date | string } export type CLIArgsOrderByWithRelationInput = { id?: SortOrder args?: SortOrder createdAt?: SortOrder } export type CLIArgsWhereUniqueInput = Prisma.AtLeast<{ id?: number AND?: CLIArgsWhereInput | CLIArgsWhereInput[] OR?: CLIArgsWhereInput[] NOT?: CLIArgsWhereInput | CLIArgsWhereInput[] args?: StringFilter<"CLIArgs"> | string createdAt?: DateTimeFilter<"CLIArgs"> | Date | string }, "id"> export type CLIArgsOrderByWithAggregationInput = { id?: SortOrder args?: SortOrder createdAt?: SortOrder _count?: CLIArgsCountOrderByAggregateInput _avg?: CLIArgsAvgOrderByAggregateInput _max?: CLIArgsMaxOrderByAggregateInput _min?: CLIArgsMinOrderByAggregateInput _sum?: CLIArgsSumOrderByAggregateInput } export type CLIArgsScalarWhereWithAggregatesInput = { AND?: CLIArgsScalarWhereWithAggregatesInput | CLIArgsScalarWhereWithAggregatesInput[] OR?: CLIArgsScalarWhereWithAggregatesInput[] NOT?: CLIArgsScalarWhereWithAggregatesInput | CLIArgsScalarWhereWithAggregatesInput[] id?: IntWithAggregatesFilter<"CLIArgs"> | number args?: StringWithAggregatesFilter<"CLIArgs"> | string createdAt?: DateTimeWithAggregatesFilter<"CLIArgs"> | Date | string } export type WebhookConfigWhereInput = { AND?: WebhookConfigWhereInput | WebhookConfigWhereInput[] OR?: WebhookConfigWhereInput[] NOT?: WebhookConfigWhereInput | WebhookConfigWhereInput[] id?: StringFilter<"WebhookConfig"> | string url?: StringFilter<"WebhookConfig"> | string type?: StringFilter<"WebhookConfig"> | string events?: StringFilter<"WebhookConfig"> | string active?: BoolFilter<"WebhookConfig"> | boolean createdAt?: DateTimeFilter<"WebhookConfig"> | Date | string updatedAt?: DateTimeFilter<"WebhookConfig"> | Date | string payloadTemplate?: StringNullableFilter<"WebhookConfig"> | string | null } export type WebhookConfigOrderByWithRelationInput = { id?: SortOrder url?: SortOrder type?: SortOrder events?: SortOrder active?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder payloadTemplate?: SortOrderInput | SortOrder } export type WebhookConfigWhereUniqueInput = Prisma.AtLeast<{ id?: string AND?: WebhookConfigWhereInput | WebhookConfigWhereInput[] OR?: WebhookConfigWhereInput[] NOT?: WebhookConfigWhereInput | WebhookConfigWhereInput[] url?: StringFilter<"WebhookConfig"> | string type?: StringFilter<"WebhookConfig"> | string events?: StringFilter<"WebhookConfig"> | string active?: BoolFilter<"WebhookConfig"> | boolean createdAt?: DateTimeFilter<"WebhookConfig"> | Date | string updatedAt?: DateTimeFilter<"WebhookConfig"> | Date | string payloadTemplate?: StringNullableFilter<"WebhookConfig"> | string | null }, "id"> export type WebhookConfigOrderByWithAggregationInput = { id?: SortOrder url?: SortOrder type?: SortOrder events?: SortOrder active?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder payloadTemplate?: SortOrderInput | SortOrder _count?: WebhookConfigCountOrderByAggregateInput _max?: WebhookConfigMaxOrderByAggregateInput _min?: WebhookConfigMinOrderByAggregateInput } export type WebhookConfigScalarWhereWithAggregatesInput = { AND?: WebhookConfigScalarWhereWithAggregatesInput | WebhookConfigScalarWhereWithAggregatesInput[] OR?: WebhookConfigScalarWhereWithAggregatesInput[] NOT?: WebhookConfigScalarWhereWithAggregatesInput | WebhookConfigScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"WebhookConfig"> | string url?: StringWithAggregatesFilter<"WebhookConfig"> | string type?: StringWithAggregatesFilter<"WebhookConfig"> | string events?: StringWithAggregatesFilter<"WebhookConfig"> | string active?: BoolWithAggregatesFilter<"WebhookConfig"> | boolean createdAt?: DateTimeWithAggregatesFilter<"WebhookConfig"> | Date | string updatedAt?: DateTimeWithAggregatesFilter<"WebhookConfig"> | Date | string payloadTemplate?: StringNullableWithAggregatesFilter<"WebhookConfig"> | string | null } export type WebConfigWhereInput = { AND?: WebConfigWhereInput | WebConfigWhereInput[] OR?: WebConfigWhereInput[] NOT?: WebConfigWhereInput | WebConfigWhereInput[] id?: StringFilter<"WebConfig"> | string name?: StringFilter<"WebConfig"> | string value?: StringFilter<"WebConfig"> | string createdAt?: DateTimeFilter<"WebConfig"> | Date | string updatedAt?: DateTimeFilter<"WebConfig"> | Date | string } export type WebConfigOrderByWithRelationInput = { id?: SortOrder name?: SortOrder value?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type WebConfigWhereUniqueInput = Prisma.AtLeast<{ id?: string name?: string AND?: WebConfigWhereInput | WebConfigWhereInput[] OR?: WebConfigWhereInput[] NOT?: WebConfigWhereInput | WebConfigWhereInput[] value?: StringFilter<"WebConfig"> | string createdAt?: DateTimeFilter<"WebConfig"> | Date | string updatedAt?: DateTimeFilter<"WebConfig"> | Date | string }, "id" | "name"> export type WebConfigOrderByWithAggregationInput = { id?: SortOrder name?: SortOrder value?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder _count?: WebConfigCountOrderByAggregateInput _max?: WebConfigMaxOrderByAggregateInput _min?: WebConfigMinOrderByAggregateInput } export type WebConfigScalarWhereWithAggregatesInput = { AND?: WebConfigScalarWhereWithAggregatesInput | WebConfigScalarWhereWithAggregatesInput[] OR?: WebConfigScalarWhereWithAggregatesInput[] NOT?: WebConfigScalarWhereWithAggregatesInput | WebConfigScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"WebConfig"> | string name?: StringWithAggregatesFilter<"WebConfig"> | string value?: StringWithAggregatesFilter<"WebConfig"> | string createdAt?: DateTimeWithAggregatesFilter<"WebConfig"> | Date | string updatedAt?: DateTimeWithAggregatesFilter<"WebConfig"> | Date | string } export type LocatorEtalonWhereInput = { AND?: LocatorEtalonWhereInput | LocatorEtalonWhereInput[] OR?: LocatorEtalonWhereInput[] NOT?: LocatorEtalonWhereInput | LocatorEtalonWhereInput[] id?: StringFilter<"LocatorEtalon"> | string selector?: StringFilter<"LocatorEtalon"> | string strategy?: StringFilter<"LocatorEtalon"> | string attributes?: StringFilter<"LocatorEtalon"> | string nodeName?: StringFilter<"LocatorEtalon"> | string lastSeen?: DateTimeFilter<"LocatorEtalon"> | Date | string createdAt?: DateTimeFilter<"LocatorEtalon"> | Date | string updatedAt?: DateTimeFilter<"LocatorEtalon"> | Date | string } export type LocatorEtalonOrderByWithRelationInput = { id?: SortOrder selector?: SortOrder strategy?: SortOrder attributes?: SortOrder nodeName?: SortOrder lastSeen?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type LocatorEtalonWhereUniqueInput = Prisma.AtLeast<{ id?: string selector?: string AND?: LocatorEtalonWhereInput | LocatorEtalonWhereInput[] OR?: LocatorEtalonWhereInput[] NOT?: LocatorEtalonWhereInput | LocatorEtalonWhereInput[] strategy?: StringFilter<"LocatorEtalon"> | string attributes?: StringFilter<"LocatorEtalon"> | string nodeName?: StringFilter<"LocatorEtalon"> | string lastSeen?: DateTimeFilter<"LocatorEtalon"> | Date | string createdAt?: DateTimeFilter<"LocatorEtalon"> | Date | string updatedAt?: DateTimeFilter<"LocatorEtalon"> | Date | string }, "id" | "selector"> export type LocatorEtalonOrderByWithAggregationInput = { id?: SortOrder selector?: SortOrder strategy?: SortOrder attributes?: SortOrder nodeName?: SortOrder lastSeen?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder _count?: LocatorEtalonCountOrderByAggregateInput _max?: LocatorEtalonMaxOrderByAggregateInput _min?: LocatorEtalonMinOrderByAggregateInput } export type LocatorEtalonScalarWhereWithAggregatesInput = { AND?: LocatorEtalonScalarWhereWithAggregatesInput | LocatorEtalonScalarWhereWithAggregatesInput[] OR?: LocatorEtalonScalarWhereWithAggregatesInput[] NOT?: LocatorEtalonScalarWhereWithAggregatesInput | LocatorEtalonScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"LocatorEtalon"> | string selector?: StringWithAggregatesFilter<"LocatorEtalon"> | string strategy?: StringWithAggregatesFilter<"LocatorEtalon"> | string attributes?: StringWithAggregatesFilter<"LocatorEtalon"> | string nodeName?: StringWithAggregatesFilter<"LocatorEtalon"> | string lastSeen?: DateTimeWithAggregatesFilter<"LocatorEtalon"> | Date | string createdAt?: DateTimeWithAggregatesFilter<"LocatorEtalon"> | Date | string updatedAt?: DateTimeWithAggregatesFilter<"LocatorEtalon"> | Date | string } export type PortLeaseWhereInput = { AND?: PortLeaseWhereInput | PortLeaseWhereInput[] OR?: PortLeaseWhereInput[] NOT?: PortLeaseWhereInput | PortLeaseWhereInput[] port?: IntFilter<"PortLease"> | number purpose?: StringFilter<"PortLease"> | string leasedToUdid?: StringFilter<"PortLease"> | string leasedToHost?: StringFilter<"PortLease"> | string leaseId?: StringNullableFilter<"PortLease"> | string | null leasedToPid?: IntNullableFilter<"PortLease"> | number | null leasedAt?: FloatFilter<"PortLease"> | number expiresAt?: FloatFilter<"PortLease"> | number } export type PortLeaseOrderByWithRelationInput = { port?: SortOrder purpose?: SortOrder leasedToUdid?: SortOrder leasedToHost?: SortOrder leaseId?: SortOrderInput | SortOrder leasedToPid?: SortOrderInput | SortOrder leasedAt?: SortOrder expiresAt?: SortOrder } export type PortLeaseWhereUniqueInput = Prisma.AtLeast<{ port?: number AND?: PortLeaseWhereInput | PortLeaseWhereInput[] OR?: PortLeaseWhereInput[] NOT?: PortLeaseWhereInput | PortLeaseWhereInput[] purpose?: StringFilter<"PortLease"> | string leasedToUdid?: StringFilter<"PortLease"> | string leasedToHost?: StringFilter<"PortLease"> | string leaseId?: StringNullableFilter<"PortLease"> | string | null leasedToPid?: IntNullableFilter<"PortLease"> | number | null leasedAt?: FloatFilter<"PortLease"> | number expiresAt?: FloatFilter<"PortLease"> | number }, "port"> export type PortLeaseOrderByWithAggregationInput = { port?: SortOrder purpose?: SortOrder leasedToUdid?: SortOrder leasedToHost?: SortOrder leaseId?: SortOrderInput | SortOrder leasedToPid?: SortOrderInput | SortOrder leasedAt?: SortOrder expiresAt?: SortOrder _count?: PortLeaseCountOrderByAggregateInput _avg?: PortLeaseAvgOrderByAggregateInput _max?: PortLeaseMaxOrderByAggregateInput _min?: PortLeaseMinOrderByAggregateInput _sum?: PortLeaseSumOrderByAggregateInput } export type PortLeaseScalarWhereWithAggregatesInput = { AND?: PortLeaseScalarWhereWithAggregatesInput | PortLeaseScalarWhereWithAggregatesInput[] OR?: PortLeaseScalarWhereWithAggregatesInput[] NOT?: PortLeaseScalarWhereWithAggregatesInput | PortLeaseScalarWhereWithAggregatesInput[] port?: IntWithAggregatesFilter<"PortLease"> | number purpose?: StringWithAggregatesFilter<"PortLease"> | string leasedToUdid?: StringWithAggregatesFilter<"PortLease"> | string leasedToHost?: StringWithAggregatesFilter<"PortLease"> | string leaseId?: StringNullableWithAggregatesFilter<"PortLease"> | string | null leasedToPid?: IntNullableWithAggregatesFilter<"PortLease"> | number | null leasedAt?: FloatWithAggregatesFilter<"PortLease"> | number expiresAt?: FloatWithAggregatesFilter<"PortLease"> | number } export type LeaseWhereInput = { AND?: LeaseWhereInput | LeaseWhereInput[] OR?: LeaseWhereInput[] NOT?: LeaseWhereInput | LeaseWhereInput[] id?: StringFilter<"Lease"> | string tokenHash?: StringFilter<"Lease"> | string deviceUdid?: StringFilter<"Lease"> | string deviceHost?: StringFilter<"Lease"> | string actorId?: StringFilter<"Lease"> | string teamId?: StringNullableFilter<"Lease"> | string | null buildId?: StringNullableFilter<"Lease"> | string | null reason?: StringNullableFilter<"Lease"> | string | null status?: StringFilter<"Lease"> | string createdAt?: DateTimeFilter<"Lease"> | Date | string expiresAt?: FloatFilter<"Lease"> | number heartbeatSeconds?: IntFilter<"Lease"> | number lastHeartbeatAt?: FloatFilter<"Lease"> | number allocatedPorts?: StringFilter<"Lease"> | string capabilityBag?: StringFilter<"Lease"> | string } export type LeaseOrderByWithRelationInput = { id?: SortOrder tokenHash?: SortOrder deviceUdid?: SortOrder deviceHost?: SortOrder actorId?: SortOrder teamId?: SortOrderInput | SortOrder buildId?: SortOrderInput | SortOrder reason?: SortOrderInput | SortOrder status?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder heartbeatSeconds?: SortOrder lastHeartbeatAt?: SortOrder allocatedPorts?: SortOrder capabilityBag?: SortOrder } export type LeaseWhereUniqueInput = Prisma.AtLeast<{ id?: string AND?: LeaseWhereInput | LeaseWhereInput[] OR?: LeaseWhereInput[] NOT?: LeaseWhereInput | LeaseWhereInput[] tokenHash?: StringFilter<"Lease"> | string deviceUdid?: StringFilter<"Lease"> | string deviceHost?: StringFilter<"Lease"> | string actorId?: StringFilter<"Lease"> | string teamId?: StringNullableFilter<"Lease"> | string | null buildId?: StringNullableFilter<"Lease"> | string | null reason?: StringNullableFilter<"Lease"> | string | null status?: StringFilter<"Lease"> | string createdAt?: DateTimeFilter<"Lease"> | Date | string expiresAt?: FloatFilter<"Lease"> | number heartbeatSeconds?: IntFilter<"Lease"> | number lastHeartbeatAt?: FloatFilter<"Lease"> | number allocatedPorts?: StringFilter<"Lease"> | string capabilityBag?: StringFilter<"Lease"> | string }, "id"> export type LeaseOrderByWithAggregationInput = { id?: SortOrder tokenHash?: SortOrder deviceUdid?: SortOrder deviceHost?: SortOrder actorId?: SortOrder teamId?: SortOrderInput | SortOrder buildId?: SortOrderInput | SortOrder reason?: SortOrderInput | SortOrder status?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder heartbeatSeconds?: SortOrder lastHeartbeatAt?: SortOrder allocatedPorts?: SortOrder capabilityBag?: SortOrder _count?: LeaseCountOrderByAggregateInput _avg?: LeaseAvgOrderByAggregateInput _max?: LeaseMaxOrderByAggregateInput _min?: LeaseMinOrderByAggregateInput _sum?: LeaseSumOrderByAggregateInput } export type LeaseScalarWhereWithAggregatesInput = { AND?: LeaseScalarWhereWithAggregatesInput | LeaseScalarWhereWithAggregatesInput[] OR?: LeaseScalarWhereWithAggregatesInput[] NOT?: LeaseScalarWhereWithAggregatesInput | LeaseScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"Lease"> | string tokenHash?: StringWithAggregatesFilter<"Lease"> | string deviceUdid?: StringWithAggregatesFilter<"Lease"> | string deviceHost?: StringWithAggregatesFilter<"Lease"> | string actorId?: StringWithAggregatesFilter<"Lease"> | string teamId?: StringNullableWithAggregatesFilter<"Lease"> | string | null buildId?: StringNullableWithAggregatesFilter<"Lease"> | string | null reason?: StringNullableWithAggregatesFilter<"Lease"> | string | null status?: StringWithAggregatesFilter<"Lease"> | string createdAt?: DateTimeWithAggregatesFilter<"Lease"> | Date | string expiresAt?: FloatWithAggregatesFilter<"Lease"> | number heartbeatSeconds?: IntWithAggregatesFilter<"Lease"> | number lastHeartbeatAt?: FloatWithAggregatesFilter<"Lease"> | number allocatedPorts?: StringWithAggregatesFilter<"Lease"> | string capabilityBag?: StringWithAggregatesFilter<"Lease"> | string } export type ApiKeyWhereInput = { AND?: ApiKeyWhereInput | ApiKeyWhereInput[] OR?: ApiKeyWhereInput[] NOT?: ApiKeyWhereInput | ApiKeyWhereInput[] id?: StringFilter<"ApiKey"> | string name?: StringFilter<"ApiKey"> | string keyHash?: StringFilter<"ApiKey"> | string scopes?: StringFilter<"ApiKey"> | string rateLimit?: IntFilter<"ApiKey"> | number createdAt?: DateTimeFilter<"ApiKey"> | Date | string revokedAt?: DateTimeNullableFilter<"ApiKey"> | Date | string | null lastUsedAt?: DateTimeNullableFilter<"ApiKey"> | Date | string | null expiresAt?: DateTimeNullableFilter<"ApiKey"> | Date | string | null teamId?: StringNullableFilter<"ApiKey"> | string | null role?: StringFilter<"ApiKey"> | string userId?: StringFilter<"ApiKey"> | string team?: XOR | null user?: XOR } export type ApiKeyOrderByWithRelationInput = { id?: SortOrder name?: SortOrder keyHash?: SortOrder scopes?: SortOrder rateLimit?: SortOrder createdAt?: SortOrder revokedAt?: SortOrderInput | SortOrder lastUsedAt?: SortOrderInput | SortOrder expiresAt?: SortOrderInput | SortOrder teamId?: SortOrderInput | SortOrder role?: SortOrder userId?: SortOrder team?: TeamOrderByWithRelationInput user?: UserOrderByWithRelationInput } export type ApiKeyWhereUniqueInput = Prisma.AtLeast<{ id?: string keyHash?: string AND?: ApiKeyWhereInput | ApiKeyWhereInput[] OR?: ApiKeyWhereInput[] NOT?: ApiKeyWhereInput | ApiKeyWhereInput[] name?: StringFilter<"ApiKey"> | string scopes?: StringFilter<"ApiKey"> | string rateLimit?: IntFilter<"ApiKey"> | number createdAt?: DateTimeFilter<"ApiKey"> | Date | string revokedAt?: DateTimeNullableFilter<"ApiKey"> | Date | string | null lastUsedAt?: DateTimeNullableFilter<"ApiKey"> | Date | string | null expiresAt?: DateTimeNullableFilter<"ApiKey"> | Date | string | null teamId?: StringNullableFilter<"ApiKey"> | string | null role?: StringFilter<"ApiKey"> | string userId?: StringFilter<"ApiKey"> | string team?: XOR | null user?: XOR }, "id" | "keyHash"> export type ApiKeyOrderByWithAggregationInput = { id?: SortOrder name?: SortOrder keyHash?: SortOrder scopes?: SortOrder rateLimit?: SortOrder createdAt?: SortOrder revokedAt?: SortOrderInput | SortOrder lastUsedAt?: SortOrderInput | SortOrder expiresAt?: SortOrderInput | SortOrder teamId?: SortOrderInput | SortOrder role?: SortOrder userId?: SortOrder _count?: ApiKeyCountOrderByAggregateInput _avg?: ApiKeyAvgOrderByAggregateInput _max?: ApiKeyMaxOrderByAggregateInput _min?: ApiKeyMinOrderByAggregateInput _sum?: ApiKeySumOrderByAggregateInput } export type ApiKeyScalarWhereWithAggregatesInput = { AND?: ApiKeyScalarWhereWithAggregatesInput | ApiKeyScalarWhereWithAggregatesInput[] OR?: ApiKeyScalarWhereWithAggregatesInput[] NOT?: ApiKeyScalarWhereWithAggregatesInput | ApiKeyScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"ApiKey"> | string name?: StringWithAggregatesFilter<"ApiKey"> | string keyHash?: StringWithAggregatesFilter<"ApiKey"> | string scopes?: StringWithAggregatesFilter<"ApiKey"> | string rateLimit?: IntWithAggregatesFilter<"ApiKey"> | number createdAt?: DateTimeWithAggregatesFilter<"ApiKey"> | Date | string revokedAt?: DateTimeNullableWithAggregatesFilter<"ApiKey"> | Date | string | null lastUsedAt?: DateTimeNullableWithAggregatesFilter<"ApiKey"> | Date | string | null expiresAt?: DateTimeNullableWithAggregatesFilter<"ApiKey"> | Date | string | null teamId?: StringNullableWithAggregatesFilter<"ApiKey"> | string | null role?: StringWithAggregatesFilter<"ApiKey"> | string userId?: StringWithAggregatesFilter<"ApiKey"> | string } export type TeamWhereInput = { AND?: TeamWhereInput | TeamWhereInput[] OR?: TeamWhereInput[] NOT?: TeamWhereInput | TeamWhereInput[] id?: StringFilter<"Team"> | string name?: StringFilter<"Team"> | string createdAt?: DateTimeFilter<"Team"> | Date | string devices?: DeviceListRelationFilter apiKeys?: ApiKeyListRelationFilter members?: TeamMemberListRelationFilter } export type TeamOrderByWithRelationInput = { id?: SortOrder name?: SortOrder createdAt?: SortOrder devices?: DeviceOrderByRelationAggregateInput apiKeys?: ApiKeyOrderByRelationAggregateInput members?: TeamMemberOrderByRelationAggregateInput } export type TeamWhereUniqueInput = Prisma.AtLeast<{ id?: string name?: string AND?: TeamWhereInput | TeamWhereInput[] OR?: TeamWhereInput[] NOT?: TeamWhereInput | TeamWhereInput[] createdAt?: DateTimeFilter<"Team"> | Date | string devices?: DeviceListRelationFilter apiKeys?: ApiKeyListRelationFilter members?: TeamMemberListRelationFilter }, "id" | "name"> export type TeamOrderByWithAggregationInput = { id?: SortOrder name?: SortOrder createdAt?: SortOrder _count?: TeamCountOrderByAggregateInput _max?: TeamMaxOrderByAggregateInput _min?: TeamMinOrderByAggregateInput } export type TeamScalarWhereWithAggregatesInput = { AND?: TeamScalarWhereWithAggregatesInput | TeamScalarWhereWithAggregatesInput[] OR?: TeamScalarWhereWithAggregatesInput[] NOT?: TeamScalarWhereWithAggregatesInput | TeamScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"Team"> | string name?: StringWithAggregatesFilter<"Team"> | string createdAt?: DateTimeWithAggregatesFilter<"Team"> | Date | string } export type SelectorStateWhereInput = { AND?: SelectorStateWhereInput | SelectorStateWhereInput[] OR?: SelectorStateWhereInput[] NOT?: SelectorStateWhereInput | SelectorStateWhereInput[] id?: StringFilter<"SelectorState"> | string original_strategy?: StringFilter<"SelectorState"> | string original_selector?: StringFilter<"SelectorState"> | string status?: StringFilter<"SelectorState"> | string fixed_at?: DateTimeNullableFilter<"SelectorState"> | Date | string | null fixed_by_api_key?: StringNullableFilter<"SelectorState"> | string | null resolved_at?: DateTimeNullableFilter<"SelectorState"> | Date | string | null muted_at?: DateTimeNullableFilter<"SelectorState"> | Date | string | null muted_by_api_key?: StringNullableFilter<"SelectorState"> | string | null regression_count?: IntFilter<"SelectorState"> | number clean_builds_count?: IntFilter<"SelectorState"> | number last_event_at?: DateTimeFilter<"SelectorState"> | Date | string createdAt?: DateTimeFilter<"SelectorState"> | Date | string updatedAt?: DateTimeFilter<"SelectorState"> | Date | string } export type SelectorStateOrderByWithRelationInput = { id?: SortOrder original_strategy?: SortOrder original_selector?: SortOrder status?: SortOrder fixed_at?: SortOrderInput | SortOrder fixed_by_api_key?: SortOrderInput | SortOrder resolved_at?: SortOrderInput | SortOrder muted_at?: SortOrderInput | SortOrder muted_by_api_key?: SortOrderInput | SortOrder regression_count?: SortOrder clean_builds_count?: SortOrder last_event_at?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type SelectorStateWhereUniqueInput = Prisma.AtLeast<{ id?: string original_strategy_original_selector?: SelectorStateOriginal_strategyOriginal_selectorCompoundUniqueInput AND?: SelectorStateWhereInput | SelectorStateWhereInput[] OR?: SelectorStateWhereInput[] NOT?: SelectorStateWhereInput | SelectorStateWhereInput[] original_strategy?: StringFilter<"SelectorState"> | string original_selector?: StringFilter<"SelectorState"> | string status?: StringFilter<"SelectorState"> | string fixed_at?: DateTimeNullableFilter<"SelectorState"> | Date | string | null fixed_by_api_key?: StringNullableFilter<"SelectorState"> | string | null resolved_at?: DateTimeNullableFilter<"SelectorState"> | Date | string | null muted_at?: DateTimeNullableFilter<"SelectorState"> | Date | string | null muted_by_api_key?: StringNullableFilter<"SelectorState"> | string | null regression_count?: IntFilter<"SelectorState"> | number clean_builds_count?: IntFilter<"SelectorState"> | number last_event_at?: DateTimeFilter<"SelectorState"> | Date | string createdAt?: DateTimeFilter<"SelectorState"> | Date | string updatedAt?: DateTimeFilter<"SelectorState"> | Date | string }, "id" | "original_strategy_original_selector"> export type SelectorStateOrderByWithAggregationInput = { id?: SortOrder original_strategy?: SortOrder original_selector?: SortOrder status?: SortOrder fixed_at?: SortOrderInput | SortOrder fixed_by_api_key?: SortOrderInput | SortOrder resolved_at?: SortOrderInput | SortOrder muted_at?: SortOrderInput | SortOrder muted_by_api_key?: SortOrderInput | SortOrder regression_count?: SortOrder clean_builds_count?: SortOrder last_event_at?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder _count?: SelectorStateCountOrderByAggregateInput _avg?: SelectorStateAvgOrderByAggregateInput _max?: SelectorStateMaxOrderByAggregateInput _min?: SelectorStateMinOrderByAggregateInput _sum?: SelectorStateSumOrderByAggregateInput } export type SelectorStateScalarWhereWithAggregatesInput = { AND?: SelectorStateScalarWhereWithAggregatesInput | SelectorStateScalarWhereWithAggregatesInput[] OR?: SelectorStateScalarWhereWithAggregatesInput[] NOT?: SelectorStateScalarWhereWithAggregatesInput | SelectorStateScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"SelectorState"> | string original_strategy?: StringWithAggregatesFilter<"SelectorState"> | string original_selector?: StringWithAggregatesFilter<"SelectorState"> | string status?: StringWithAggregatesFilter<"SelectorState"> | string fixed_at?: DateTimeNullableWithAggregatesFilter<"SelectorState"> | Date | string | null fixed_by_api_key?: StringNullableWithAggregatesFilter<"SelectorState"> | string | null resolved_at?: DateTimeNullableWithAggregatesFilter<"SelectorState"> | Date | string | null muted_at?: DateTimeNullableWithAggregatesFilter<"SelectorState"> | Date | string | null muted_by_api_key?: StringNullableWithAggregatesFilter<"SelectorState"> | string | null regression_count?: IntWithAggregatesFilter<"SelectorState"> | number clean_builds_count?: IntWithAggregatesFilter<"SelectorState"> | number last_event_at?: DateTimeWithAggregatesFilter<"SelectorState"> | Date | string createdAt?: DateTimeWithAggregatesFilter<"SelectorState"> | Date | string updatedAt?: DateTimeWithAggregatesFilter<"SelectorState"> | Date | string } export type RecordingWhereInput = { AND?: RecordingWhereInput | RecordingWhereInput[] OR?: RecordingWhereInput[] NOT?: RecordingWhereInput | RecordingWhereInput[] id?: StringFilter<"Recording"> | string group_id?: StringFilter<"Recording"> | string device_udid?: StringFilter<"Recording"> | string device_host?: StringFilter<"Recording"> | string session_id?: StringNullableFilter<"Recording"> | string | null started_at?: DateTimeFilter<"Recording"> | Date | string ended_at?: DateTimeNullableFilter<"Recording"> | Date | string | null status?: StringFilter<"Recording"> | string file_path?: StringFilter<"Recording"> | string duration_ms?: IntNullableFilter<"Recording"> | number | null size_bytes?: IntNullableFilter<"Recording"> | number | null device_snapshot?: StringNullableFilter<"Recording"> | string | null fail_reason?: StringNullableFilter<"Recording"> | string | null bookmarks?: BookmarkListRelationFilter annotations?: AnnotationListRelationFilter Session?: XOR | null } export type RecordingOrderByWithRelationInput = { id?: SortOrder group_id?: SortOrder device_udid?: SortOrder device_host?: SortOrder session_id?: SortOrderInput | SortOrder started_at?: SortOrder ended_at?: SortOrderInput | SortOrder status?: SortOrder file_path?: SortOrder duration_ms?: SortOrderInput | SortOrder size_bytes?: SortOrderInput | SortOrder device_snapshot?: SortOrderInput | SortOrder fail_reason?: SortOrderInput | SortOrder bookmarks?: BookmarkOrderByRelationAggregateInput annotations?: AnnotationOrderByRelationAggregateInput Session?: SessionOrderByWithRelationInput } export type RecordingWhereUniqueInput = Prisma.AtLeast<{ id?: string AND?: RecordingWhereInput | RecordingWhereInput[] OR?: RecordingWhereInput[] NOT?: RecordingWhereInput | RecordingWhereInput[] group_id?: StringFilter<"Recording"> | string device_udid?: StringFilter<"Recording"> | string device_host?: StringFilter<"Recording"> | string session_id?: StringNullableFilter<"Recording"> | string | null started_at?: DateTimeFilter<"Recording"> | Date | string ended_at?: DateTimeNullableFilter<"Recording"> | Date | string | null status?: StringFilter<"Recording"> | string file_path?: StringFilter<"Recording"> | string duration_ms?: IntNullableFilter<"Recording"> | number | null size_bytes?: IntNullableFilter<"Recording"> | number | null device_snapshot?: StringNullableFilter<"Recording"> | string | null fail_reason?: StringNullableFilter<"Recording"> | string | null bookmarks?: BookmarkListRelationFilter annotations?: AnnotationListRelationFilter Session?: XOR | null }, "id"> export type RecordingOrderByWithAggregationInput = { id?: SortOrder group_id?: SortOrder device_udid?: SortOrder device_host?: SortOrder session_id?: SortOrderInput | SortOrder started_at?: SortOrder ended_at?: SortOrderInput | SortOrder status?: SortOrder file_path?: SortOrder duration_ms?: SortOrderInput | SortOrder size_bytes?: SortOrderInput | SortOrder device_snapshot?: SortOrderInput | SortOrder fail_reason?: SortOrderInput | SortOrder _count?: RecordingCountOrderByAggregateInput _avg?: RecordingAvgOrderByAggregateInput _max?: RecordingMaxOrderByAggregateInput _min?: RecordingMinOrderByAggregateInput _sum?: RecordingSumOrderByAggregateInput } export type RecordingScalarWhereWithAggregatesInput = { AND?: RecordingScalarWhereWithAggregatesInput | RecordingScalarWhereWithAggregatesInput[] OR?: RecordingScalarWhereWithAggregatesInput[] NOT?: RecordingScalarWhereWithAggregatesInput | RecordingScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"Recording"> | string group_id?: StringWithAggregatesFilter<"Recording"> | string device_udid?: StringWithAggregatesFilter<"Recording"> | string device_host?: StringWithAggregatesFilter<"Recording"> | string session_id?: StringNullableWithAggregatesFilter<"Recording"> | string | null started_at?: DateTimeWithAggregatesFilter<"Recording"> | Date | string ended_at?: DateTimeNullableWithAggregatesFilter<"Recording"> | Date | string | null status?: StringWithAggregatesFilter<"Recording"> | string file_path?: StringWithAggregatesFilter<"Recording"> | string duration_ms?: IntNullableWithAggregatesFilter<"Recording"> | number | null size_bytes?: IntNullableWithAggregatesFilter<"Recording"> | number | null device_snapshot?: StringNullableWithAggregatesFilter<"Recording"> | string | null fail_reason?: StringNullableWithAggregatesFilter<"Recording"> | string | null } export type BookmarkWhereInput = { AND?: BookmarkWhereInput | BookmarkWhereInput[] OR?: BookmarkWhereInput[] NOT?: BookmarkWhereInput | BookmarkWhereInput[] id?: StringFilter<"Bookmark"> | string recording_id?: StringFilter<"Bookmark"> | string timecode_ms?: IntFilter<"Bookmark"> | number label?: StringFilter<"Bookmark"> | string note?: StringNullableFilter<"Bookmark"> | string | null created_at?: DateTimeFilter<"Bookmark"> | Date | string Recording?: XOR } export type BookmarkOrderByWithRelationInput = { id?: SortOrder recording_id?: SortOrder timecode_ms?: SortOrder label?: SortOrder note?: SortOrderInput | SortOrder created_at?: SortOrder Recording?: RecordingOrderByWithRelationInput } export type BookmarkWhereUniqueInput = Prisma.AtLeast<{ id?: string AND?: BookmarkWhereInput | BookmarkWhereInput[] OR?: BookmarkWhereInput[] NOT?: BookmarkWhereInput | BookmarkWhereInput[] recording_id?: StringFilter<"Bookmark"> | string timecode_ms?: IntFilter<"Bookmark"> | number label?: StringFilter<"Bookmark"> | string note?: StringNullableFilter<"Bookmark"> | string | null created_at?: DateTimeFilter<"Bookmark"> | Date | string Recording?: XOR }, "id"> export type BookmarkOrderByWithAggregationInput = { id?: SortOrder recording_id?: SortOrder timecode_ms?: SortOrder label?: SortOrder note?: SortOrderInput | SortOrder created_at?: SortOrder _count?: BookmarkCountOrderByAggregateInput _avg?: BookmarkAvgOrderByAggregateInput _max?: BookmarkMaxOrderByAggregateInput _min?: BookmarkMinOrderByAggregateInput _sum?: BookmarkSumOrderByAggregateInput } export type BookmarkScalarWhereWithAggregatesInput = { AND?: BookmarkScalarWhereWithAggregatesInput | BookmarkScalarWhereWithAggregatesInput[] OR?: BookmarkScalarWhereWithAggregatesInput[] NOT?: BookmarkScalarWhereWithAggregatesInput | BookmarkScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"Bookmark"> | string recording_id?: StringWithAggregatesFilter<"Bookmark"> | string timecode_ms?: IntWithAggregatesFilter<"Bookmark"> | number label?: StringWithAggregatesFilter<"Bookmark"> | string note?: StringNullableWithAggregatesFilter<"Bookmark"> | string | null created_at?: DateTimeWithAggregatesFilter<"Bookmark"> | Date | string } export type AnnotationWhereInput = { AND?: AnnotationWhereInput | AnnotationWhereInput[] OR?: AnnotationWhereInput[] NOT?: AnnotationWhereInput | AnnotationWhereInput[] id?: StringFilter<"Annotation"> | string recording_id?: StringFilter<"Annotation"> | string timecode_ms?: IntFilter<"Annotation"> | number shape?: StringFilter<"Annotation"> | string geometry?: StringFilter<"Annotation"> | string color?: StringFilter<"Annotation"> | string text?: StringNullableFilter<"Annotation"> | string | null author?: StringNullableFilter<"Annotation"> | string | null created_at?: DateTimeFilter<"Annotation"> | Date | string Recording?: XOR } export type AnnotationOrderByWithRelationInput = { id?: SortOrder recording_id?: SortOrder timecode_ms?: SortOrder shape?: SortOrder geometry?: SortOrder color?: SortOrder text?: SortOrderInput | SortOrder author?: SortOrderInput | SortOrder created_at?: SortOrder Recording?: RecordingOrderByWithRelationInput } export type AnnotationWhereUniqueInput = Prisma.AtLeast<{ id?: string AND?: AnnotationWhereInput | AnnotationWhereInput[] OR?: AnnotationWhereInput[] NOT?: AnnotationWhereInput | AnnotationWhereInput[] recording_id?: StringFilter<"Annotation"> | string timecode_ms?: IntFilter<"Annotation"> | number shape?: StringFilter<"Annotation"> | string geometry?: StringFilter<"Annotation"> | string color?: StringFilter<"Annotation"> | string text?: StringNullableFilter<"Annotation"> | string | null author?: StringNullableFilter<"Annotation"> | string | null created_at?: DateTimeFilter<"Annotation"> | Date | string Recording?: XOR }, "id"> export type AnnotationOrderByWithAggregationInput = { id?: SortOrder recording_id?: SortOrder timecode_ms?: SortOrder shape?: SortOrder geometry?: SortOrder color?: SortOrder text?: SortOrderInput | SortOrder author?: SortOrderInput | SortOrder created_at?: SortOrder _count?: AnnotationCountOrderByAggregateInput _avg?: AnnotationAvgOrderByAggregateInput _max?: AnnotationMaxOrderByAggregateInput _min?: AnnotationMinOrderByAggregateInput _sum?: AnnotationSumOrderByAggregateInput } export type AnnotationScalarWhereWithAggregatesInput = { AND?: AnnotationScalarWhereWithAggregatesInput | AnnotationScalarWhereWithAggregatesInput[] OR?: AnnotationScalarWhereWithAggregatesInput[] NOT?: AnnotationScalarWhereWithAggregatesInput | AnnotationScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"Annotation"> | string recording_id?: StringWithAggregatesFilter<"Annotation"> | string timecode_ms?: IntWithAggregatesFilter<"Annotation"> | number shape?: StringWithAggregatesFilter<"Annotation"> | string geometry?: StringWithAggregatesFilter<"Annotation"> | string color?: StringWithAggregatesFilter<"Annotation"> | string text?: StringNullableWithAggregatesFilter<"Annotation"> | string | null author?: StringNullableWithAggregatesFilter<"Annotation"> | string | null created_at?: DateTimeWithAggregatesFilter<"Annotation"> | Date | string } export type UserWhereInput = { AND?: UserWhereInput | UserWhereInput[] OR?: UserWhereInput[] NOT?: UserWhereInput | UserWhereInput[] id?: StringFilter<"User"> | string email?: StringFilter<"User"> | string name?: StringFilter<"User"> | string passwordHash?: StringFilter<"User"> | string accessKey?: StringFilter<"User"> | string role?: StringFilter<"User"> | string status?: StringFilter<"User"> | string createdAt?: DateTimeFilter<"User"> | Date | string updatedAt?: DateTimeFilter<"User"> | Date | string lastLoginAt?: DateTimeNullableFilter<"User"> | Date | string | null passwordChangedAt?: DateTimeNullableFilter<"User"> | Date | string | null apiKeys?: ApiKeyListRelationFilter sessions?: UserSessionListRelationFilter passwordResetTokens?: PasswordResetTokenListRelationFilter teamMemberships?: TeamMemberListRelationFilter } export type UserOrderByWithRelationInput = { id?: SortOrder email?: SortOrder name?: SortOrder passwordHash?: SortOrder accessKey?: SortOrder role?: SortOrder status?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder lastLoginAt?: SortOrderInput | SortOrder passwordChangedAt?: SortOrderInput | SortOrder apiKeys?: ApiKeyOrderByRelationAggregateInput sessions?: UserSessionOrderByRelationAggregateInput passwordResetTokens?: PasswordResetTokenOrderByRelationAggregateInput teamMemberships?: TeamMemberOrderByRelationAggregateInput } export type UserWhereUniqueInput = Prisma.AtLeast<{ id?: string email?: string accessKey?: string AND?: UserWhereInput | UserWhereInput[] OR?: UserWhereInput[] NOT?: UserWhereInput | UserWhereInput[] name?: StringFilter<"User"> | string passwordHash?: StringFilter<"User"> | string role?: StringFilter<"User"> | string status?: StringFilter<"User"> | string createdAt?: DateTimeFilter<"User"> | Date | string updatedAt?: DateTimeFilter<"User"> | Date | string lastLoginAt?: DateTimeNullableFilter<"User"> | Date | string | null passwordChangedAt?: DateTimeNullableFilter<"User"> | Date | string | null apiKeys?: ApiKeyListRelationFilter sessions?: UserSessionListRelationFilter passwordResetTokens?: PasswordResetTokenListRelationFilter teamMemberships?: TeamMemberListRelationFilter }, "id" | "email" | "accessKey"> export type UserOrderByWithAggregationInput = { id?: SortOrder email?: SortOrder name?: SortOrder passwordHash?: SortOrder accessKey?: SortOrder role?: SortOrder status?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder lastLoginAt?: SortOrderInput | SortOrder passwordChangedAt?: SortOrderInput | SortOrder _count?: UserCountOrderByAggregateInput _max?: UserMaxOrderByAggregateInput _min?: UserMinOrderByAggregateInput } export type UserScalarWhereWithAggregatesInput = { AND?: UserScalarWhereWithAggregatesInput | UserScalarWhereWithAggregatesInput[] OR?: UserScalarWhereWithAggregatesInput[] NOT?: UserScalarWhereWithAggregatesInput | UserScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"User"> | string email?: StringWithAggregatesFilter<"User"> | string name?: StringWithAggregatesFilter<"User"> | string passwordHash?: StringWithAggregatesFilter<"User"> | string accessKey?: StringWithAggregatesFilter<"User"> | string role?: StringWithAggregatesFilter<"User"> | string status?: StringWithAggregatesFilter<"User"> | string createdAt?: DateTimeWithAggregatesFilter<"User"> | Date | string updatedAt?: DateTimeWithAggregatesFilter<"User"> | Date | string lastLoginAt?: DateTimeNullableWithAggregatesFilter<"User"> | Date | string | null passwordChangedAt?: DateTimeNullableWithAggregatesFilter<"User"> | Date | string | null } export type UserSessionWhereInput = { AND?: UserSessionWhereInput | UserSessionWhereInput[] OR?: UserSessionWhereInput[] NOT?: UserSessionWhereInput | UserSessionWhereInput[] id?: StringFilter<"UserSession"> | string userId?: StringFilter<"UserSession"> | string createdAt?: DateTimeFilter<"UserSession"> | Date | string expiresAt?: DateTimeFilter<"UserSession"> | Date | string lastSeenAt?: DateTimeFilter<"UserSession"> | Date | string userAgent?: StringNullableFilter<"UserSession"> | string | null ipHash?: StringNullableFilter<"UserSession"> | string | null user?: XOR } export type UserSessionOrderByWithRelationInput = { id?: SortOrder userId?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder lastSeenAt?: SortOrder userAgent?: SortOrderInput | SortOrder ipHash?: SortOrderInput | SortOrder user?: UserOrderByWithRelationInput } export type UserSessionWhereUniqueInput = Prisma.AtLeast<{ id?: string AND?: UserSessionWhereInput | UserSessionWhereInput[] OR?: UserSessionWhereInput[] NOT?: UserSessionWhereInput | UserSessionWhereInput[] userId?: StringFilter<"UserSession"> | string createdAt?: DateTimeFilter<"UserSession"> | Date | string expiresAt?: DateTimeFilter<"UserSession"> | Date | string lastSeenAt?: DateTimeFilter<"UserSession"> | Date | string userAgent?: StringNullableFilter<"UserSession"> | string | null ipHash?: StringNullableFilter<"UserSession"> | string | null user?: XOR }, "id"> export type UserSessionOrderByWithAggregationInput = { id?: SortOrder userId?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder lastSeenAt?: SortOrder userAgent?: SortOrderInput | SortOrder ipHash?: SortOrderInput | SortOrder _count?: UserSessionCountOrderByAggregateInput _max?: UserSessionMaxOrderByAggregateInput _min?: UserSessionMinOrderByAggregateInput } export type UserSessionScalarWhereWithAggregatesInput = { AND?: UserSessionScalarWhereWithAggregatesInput | UserSessionScalarWhereWithAggregatesInput[] OR?: UserSessionScalarWhereWithAggregatesInput[] NOT?: UserSessionScalarWhereWithAggregatesInput | UserSessionScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"UserSession"> | string userId?: StringWithAggregatesFilter<"UserSession"> | string createdAt?: DateTimeWithAggregatesFilter<"UserSession"> | Date | string expiresAt?: DateTimeWithAggregatesFilter<"UserSession"> | Date | string lastSeenAt?: DateTimeWithAggregatesFilter<"UserSession"> | Date | string userAgent?: StringNullableWithAggregatesFilter<"UserSession"> | string | null ipHash?: StringNullableWithAggregatesFilter<"UserSession"> | string | null } export type PasswordResetTokenWhereInput = { AND?: PasswordResetTokenWhereInput | PasswordResetTokenWhereInput[] OR?: PasswordResetTokenWhereInput[] NOT?: PasswordResetTokenWhereInput | PasswordResetTokenWhereInput[] id?: StringFilter<"PasswordResetToken"> | string userId?: StringFilter<"PasswordResetToken"> | string tokenHash?: StringFilter<"PasswordResetToken"> | string createdAt?: DateTimeFilter<"PasswordResetToken"> | Date | string expiresAt?: DateTimeFilter<"PasswordResetToken"> | Date | string usedAt?: DateTimeNullableFilter<"PasswordResetToken"> | Date | string | null user?: XOR } export type PasswordResetTokenOrderByWithRelationInput = { id?: SortOrder userId?: SortOrder tokenHash?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder usedAt?: SortOrderInput | SortOrder user?: UserOrderByWithRelationInput } export type PasswordResetTokenWhereUniqueInput = Prisma.AtLeast<{ id?: string tokenHash?: string AND?: PasswordResetTokenWhereInput | PasswordResetTokenWhereInput[] OR?: PasswordResetTokenWhereInput[] NOT?: PasswordResetTokenWhereInput | PasswordResetTokenWhereInput[] userId?: StringFilter<"PasswordResetToken"> | string createdAt?: DateTimeFilter<"PasswordResetToken"> | Date | string expiresAt?: DateTimeFilter<"PasswordResetToken"> | Date | string usedAt?: DateTimeNullableFilter<"PasswordResetToken"> | Date | string | null user?: XOR }, "id" | "tokenHash"> export type PasswordResetTokenOrderByWithAggregationInput = { id?: SortOrder userId?: SortOrder tokenHash?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder usedAt?: SortOrderInput | SortOrder _count?: PasswordResetTokenCountOrderByAggregateInput _max?: PasswordResetTokenMaxOrderByAggregateInput _min?: PasswordResetTokenMinOrderByAggregateInput } export type PasswordResetTokenScalarWhereWithAggregatesInput = { AND?: PasswordResetTokenScalarWhereWithAggregatesInput | PasswordResetTokenScalarWhereWithAggregatesInput[] OR?: PasswordResetTokenScalarWhereWithAggregatesInput[] NOT?: PasswordResetTokenScalarWhereWithAggregatesInput | PasswordResetTokenScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"PasswordResetToken"> | string userId?: StringWithAggregatesFilter<"PasswordResetToken"> | string tokenHash?: StringWithAggregatesFilter<"PasswordResetToken"> | string createdAt?: DateTimeWithAggregatesFilter<"PasswordResetToken"> | Date | string expiresAt?: DateTimeWithAggregatesFilter<"PasswordResetToken"> | Date | string usedAt?: DateTimeNullableWithAggregatesFilter<"PasswordResetToken"> | Date | string | null } export type TeamMemberWhereInput = { AND?: TeamMemberWhereInput | TeamMemberWhereInput[] OR?: TeamMemberWhereInput[] NOT?: TeamMemberWhereInput | TeamMemberWhereInput[] teamId?: StringFilter<"TeamMember"> | string userId?: StringFilter<"TeamMember"> | string createdAt?: DateTimeFilter<"TeamMember"> | Date | string team?: XOR user?: XOR } export type TeamMemberOrderByWithRelationInput = { teamId?: SortOrder userId?: SortOrder createdAt?: SortOrder team?: TeamOrderByWithRelationInput user?: UserOrderByWithRelationInput } export type TeamMemberWhereUniqueInput = Prisma.AtLeast<{ teamId_userId?: TeamMemberTeamIdUserIdCompoundUniqueInput AND?: TeamMemberWhereInput | TeamMemberWhereInput[] OR?: TeamMemberWhereInput[] NOT?: TeamMemberWhereInput | TeamMemberWhereInput[] teamId?: StringFilter<"TeamMember"> | string userId?: StringFilter<"TeamMember"> | string createdAt?: DateTimeFilter<"TeamMember"> | Date | string team?: XOR user?: XOR }, "teamId_userId"> export type TeamMemberOrderByWithAggregationInput = { teamId?: SortOrder userId?: SortOrder createdAt?: SortOrder _count?: TeamMemberCountOrderByAggregateInput _max?: TeamMemberMaxOrderByAggregateInput _min?: TeamMemberMinOrderByAggregateInput } export type TeamMemberScalarWhereWithAggregatesInput = { AND?: TeamMemberScalarWhereWithAggregatesInput | TeamMemberScalarWhereWithAggregatesInput[] OR?: TeamMemberScalarWhereWithAggregatesInput[] NOT?: TeamMemberScalarWhereWithAggregatesInput | TeamMemberScalarWhereWithAggregatesInput[] teamId?: StringWithAggregatesFilter<"TeamMember"> | string userId?: StringWithAggregatesFilter<"TeamMember"> | string createdAt?: DateTimeWithAggregatesFilter<"TeamMember"> | Date | string } export type EventLogWhereInput = { AND?: EventLogWhereInput | EventLogWhereInput[] OR?: EventLogWhereInput[] NOT?: EventLogWhereInput | EventLogWhereInput[] id?: StringFilter<"EventLog"> | string type?: StringFilter<"EventLog"> | string payload?: StringFilter<"EventLog"> | string correlationId?: StringNullableFilter<"EventLog"> | string | null teamId?: StringNullableFilter<"EventLog"> | string | null occurredAt?: DateTimeFilter<"EventLog"> | Date | string } export type EventLogOrderByWithRelationInput = { id?: SortOrder type?: SortOrder payload?: SortOrder correlationId?: SortOrderInput | SortOrder teamId?: SortOrderInput | SortOrder occurredAt?: SortOrder } export type EventLogWhereUniqueInput = Prisma.AtLeast<{ id?: string AND?: EventLogWhereInput | EventLogWhereInput[] OR?: EventLogWhereInput[] NOT?: EventLogWhereInput | EventLogWhereInput[] type?: StringFilter<"EventLog"> | string payload?: StringFilter<"EventLog"> | string correlationId?: StringNullableFilter<"EventLog"> | string | null teamId?: StringNullableFilter<"EventLog"> | string | null occurredAt?: DateTimeFilter<"EventLog"> | Date | string }, "id"> export type EventLogOrderByWithAggregationInput = { id?: SortOrder type?: SortOrder payload?: SortOrder correlationId?: SortOrderInput | SortOrder teamId?: SortOrderInput | SortOrder occurredAt?: SortOrder _count?: EventLogCountOrderByAggregateInput _max?: EventLogMaxOrderByAggregateInput _min?: EventLogMinOrderByAggregateInput } export type EventLogScalarWhereWithAggregatesInput = { AND?: EventLogScalarWhereWithAggregatesInput | EventLogScalarWhereWithAggregatesInput[] OR?: EventLogScalarWhereWithAggregatesInput[] NOT?: EventLogScalarWhereWithAggregatesInput | EventLogScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"EventLog"> | string type?: StringWithAggregatesFilter<"EventLog"> | string payload?: StringWithAggregatesFilter<"EventLog"> | string correlationId?: StringNullableWithAggregatesFilter<"EventLog"> | string | null teamId?: StringNullableWithAggregatesFilter<"EventLog"> | string | null occurredAt?: DateTimeWithAggregatesFilter<"EventLog"> | Date | string } export type ProjectWhereInput = { AND?: ProjectWhereInput | ProjectWhereInput[] OR?: ProjectWhereInput[] NOT?: ProjectWhereInput | ProjectWhereInput[] id?: StringFilter<"Project"> | string name?: StringFilter<"Project"> | string teamId?: StringNullableFilter<"Project"> | string | null createdAt?: DateTimeFilter<"Project"> | Date | string } export type ProjectOrderByWithRelationInput = { id?: SortOrder name?: SortOrder teamId?: SortOrderInput | SortOrder createdAt?: SortOrder } export type ProjectWhereUniqueInput = Prisma.AtLeast<{ id?: string AND?: ProjectWhereInput | ProjectWhereInput[] OR?: ProjectWhereInput[] NOT?: ProjectWhereInput | ProjectWhereInput[] name?: StringFilter<"Project"> | string teamId?: StringNullableFilter<"Project"> | string | null createdAt?: DateTimeFilter<"Project"> | Date | string }, "id"> export type ProjectOrderByWithAggregationInput = { id?: SortOrder name?: SortOrder teamId?: SortOrderInput | SortOrder createdAt?: SortOrder _count?: ProjectCountOrderByAggregateInput _max?: ProjectMaxOrderByAggregateInput _min?: ProjectMinOrderByAggregateInput } export type ProjectScalarWhereWithAggregatesInput = { AND?: ProjectScalarWhereWithAggregatesInput | ProjectScalarWhereWithAggregatesInput[] OR?: ProjectScalarWhereWithAggregatesInput[] NOT?: ProjectScalarWhereWithAggregatesInput | ProjectScalarWhereWithAggregatesInput[] id?: StringWithAggregatesFilter<"Project"> | string name?: StringWithAggregatesFilter<"Project"> | string teamId?: StringNullableWithAggregatesFilter<"Project"> | string | null createdAt?: DateTimeWithAggregatesFilter<"Project"> | Date | string } export type BuildCreateInput = { id?: string name?: string | null createdAt?: Date | string updatedAt?: Date | string sessions?: SessionCreateNestedManyWithoutBuildInput } export type BuildUncheckedCreateInput = { id?: string name?: string | null createdAt?: Date | string updatedAt?: Date | string sessions?: SessionUncheckedCreateNestedManyWithoutBuildInput } export type BuildUpdateInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string sessions?: SessionUpdateManyWithoutBuildNestedInput } export type BuildUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string sessions?: SessionUncheckedUpdateManyWithoutBuildNestedInput } export type BuildCreateManyInput = { id?: string name?: string | null createdAt?: Date | string updatedAt?: Date | string } export type BuildUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type BuildUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type SessionCreateInput = { id: string name?: string | null status?: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled?: boolean video_recording?: string | null startTime?: Date | string endTime?: Date | string | null failure_reason?: string | null is_profiling_available?: boolean device_info?: string | null device_udid: string device_platform: string device_version: string device_name?: string | null createdAt?: Date | string updatedAt?: Date | string performance_trace?: string | null failure_category?: string | null ai_analysis?: string | null tags?: string | null trace_id?: string | null last_heartbeat_at?: Date | string | null heartbeat_pid?: number | null heartbeat_host?: string | null api_key_id?: string | null user_id?: string | null Log?: LogCreateNestedManyWithoutSessionInput Profiling?: ProfilingCreateNestedManyWithoutSessionInput build?: BuildCreateNestedOneWithoutSessionsInput SessionLog?: SessionLogCreateNestedManyWithoutSessionInput Recording?: RecordingCreateNestedManyWithoutSessionInput } export type SessionUncheckedCreateInput = { id: string build_id?: string | null name?: string | null status?: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled?: boolean video_recording?: string | null startTime?: Date | string endTime?: Date | string | null failure_reason?: string | null is_profiling_available?: boolean device_info?: string | null device_udid: string device_platform: string device_version: string device_name?: string | null createdAt?: Date | string updatedAt?: Date | string performance_trace?: string | null failure_category?: string | null ai_analysis?: string | null tags?: string | null trace_id?: string | null last_heartbeat_at?: Date | string | null heartbeat_pid?: number | null heartbeat_host?: string | null api_key_id?: string | null user_id?: string | null Log?: LogUncheckedCreateNestedManyWithoutSessionInput Profiling?: ProfilingUncheckedCreateNestedManyWithoutSessionInput SessionLog?: SessionLogUncheckedCreateNestedManyWithoutSessionInput Recording?: RecordingUncheckedCreateNestedManyWithoutSessionInput } export type SessionUpdateInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null Log?: LogUpdateManyWithoutSessionNestedInput Profiling?: ProfilingUpdateManyWithoutSessionNestedInput build?: BuildUpdateOneWithoutSessionsNestedInput SessionLog?: SessionLogUpdateManyWithoutSessionNestedInput Recording?: RecordingUpdateManyWithoutSessionNestedInput } export type SessionUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string build_id?: NullableStringFieldUpdateOperationsInput | string | null name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null Log?: LogUncheckedUpdateManyWithoutSessionNestedInput Profiling?: ProfilingUncheckedUpdateManyWithoutSessionNestedInput SessionLog?: SessionLogUncheckedUpdateManyWithoutSessionNestedInput Recording?: RecordingUncheckedUpdateManyWithoutSessionNestedInput } export type SessionCreateManyInput = { id: string build_id?: string | null name?: string | null status?: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled?: boolean video_recording?: string | null startTime?: Date | string endTime?: Date | string | null failure_reason?: string | null is_profiling_available?: boolean device_info?: string | null device_udid: string device_platform: string device_version: string device_name?: string | null createdAt?: Date | string updatedAt?: Date | string performance_trace?: string | null failure_category?: string | null ai_analysis?: string | null tags?: string | null trace_id?: string | null last_heartbeat_at?: Date | string | null heartbeat_pid?: number | null heartbeat_host?: string | null api_key_id?: string | null user_id?: string | null } export type SessionUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null } export type SessionUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string build_id?: NullableStringFieldUpdateOperationsInput | string | null name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null } export type SessionLogCreateInput = { id?: string command_name?: string | null url: string method: string title: string subtitle?: string | null body?: string | null response: string screenshot?: string | null is_success?: boolean | null is_error?: boolean is_healed?: boolean original_selector?: string | null healed_selector?: string | null healing_confidence?: number | null healing_tier?: string | null original_strategy?: string | null healed_strategy?: string | null createdAt?: Date | string updatedAt?: Date | string duration?: number | null span_id?: string | null trace_id?: string | null session: SessionCreateNestedOneWithoutSessionLogInput } export type SessionLogUncheckedCreateInput = { id?: string session_id: string command_name?: string | null url: string method: string title: string subtitle?: string | null body?: string | null response: string screenshot?: string | null is_success?: boolean | null is_error?: boolean is_healed?: boolean original_selector?: string | null healed_selector?: string | null healing_confidence?: number | null healing_tier?: string | null original_strategy?: string | null healed_strategy?: string | null createdAt?: Date | string updatedAt?: Date | string duration?: number | null span_id?: string | null trace_id?: string | null } export type SessionLogUpdateInput = { id?: StringFieldUpdateOperationsInput | string command_name?: NullableStringFieldUpdateOperationsInput | string | null url?: StringFieldUpdateOperationsInput | string method?: StringFieldUpdateOperationsInput | string title?: StringFieldUpdateOperationsInput | string subtitle?: NullableStringFieldUpdateOperationsInput | string | null body?: NullableStringFieldUpdateOperationsInput | string | null response?: StringFieldUpdateOperationsInput | string screenshot?: NullableStringFieldUpdateOperationsInput | string | null is_success?: NullableBoolFieldUpdateOperationsInput | boolean | null is_error?: BoolFieldUpdateOperationsInput | boolean is_healed?: BoolFieldUpdateOperationsInput | boolean original_selector?: NullableStringFieldUpdateOperationsInput | string | null healed_selector?: NullableStringFieldUpdateOperationsInput | string | null healing_confidence?: NullableFloatFieldUpdateOperationsInput | number | null healing_tier?: NullableStringFieldUpdateOperationsInput | string | null original_strategy?: NullableStringFieldUpdateOperationsInput | string | null healed_strategy?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string duration?: NullableIntFieldUpdateOperationsInput | number | null span_id?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null session?: SessionUpdateOneRequiredWithoutSessionLogNestedInput } export type SessionLogUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string session_id?: StringFieldUpdateOperationsInput | string command_name?: NullableStringFieldUpdateOperationsInput | string | null url?: StringFieldUpdateOperationsInput | string method?: StringFieldUpdateOperationsInput | string title?: StringFieldUpdateOperationsInput | string subtitle?: NullableStringFieldUpdateOperationsInput | string | null body?: NullableStringFieldUpdateOperationsInput | string | null response?: StringFieldUpdateOperationsInput | string screenshot?: NullableStringFieldUpdateOperationsInput | string | null is_success?: NullableBoolFieldUpdateOperationsInput | boolean | null is_error?: BoolFieldUpdateOperationsInput | boolean is_healed?: BoolFieldUpdateOperationsInput | boolean original_selector?: NullableStringFieldUpdateOperationsInput | string | null healed_selector?: NullableStringFieldUpdateOperationsInput | string | null healing_confidence?: NullableFloatFieldUpdateOperationsInput | number | null healing_tier?: NullableStringFieldUpdateOperationsInput | string | null original_strategy?: NullableStringFieldUpdateOperationsInput | string | null healed_strategy?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string duration?: NullableIntFieldUpdateOperationsInput | number | null span_id?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null } export type SessionLogCreateManyInput = { id?: string session_id: string command_name?: string | null url: string method: string title: string subtitle?: string | null body?: string | null response: string screenshot?: string | null is_success?: boolean | null is_error?: boolean is_healed?: boolean original_selector?: string | null healed_selector?: string | null healing_confidence?: number | null healing_tier?: string | null original_strategy?: string | null healed_strategy?: string | null createdAt?: Date | string updatedAt?: Date | string duration?: number | null span_id?: string | null trace_id?: string | null } export type SessionLogUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string command_name?: NullableStringFieldUpdateOperationsInput | string | null url?: StringFieldUpdateOperationsInput | string method?: StringFieldUpdateOperationsInput | string title?: StringFieldUpdateOperationsInput | string subtitle?: NullableStringFieldUpdateOperationsInput | string | null body?: NullableStringFieldUpdateOperationsInput | string | null response?: StringFieldUpdateOperationsInput | string screenshot?: NullableStringFieldUpdateOperationsInput | string | null is_success?: NullableBoolFieldUpdateOperationsInput | boolean | null is_error?: BoolFieldUpdateOperationsInput | boolean is_healed?: BoolFieldUpdateOperationsInput | boolean original_selector?: NullableStringFieldUpdateOperationsInput | string | null healed_selector?: NullableStringFieldUpdateOperationsInput | string | null healing_confidence?: NullableFloatFieldUpdateOperationsInput | number | null healing_tier?: NullableStringFieldUpdateOperationsInput | string | null original_strategy?: NullableStringFieldUpdateOperationsInput | string | null healed_strategy?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string duration?: NullableIntFieldUpdateOperationsInput | number | null span_id?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null } export type SessionLogUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string session_id?: StringFieldUpdateOperationsInput | string command_name?: NullableStringFieldUpdateOperationsInput | string | null url?: StringFieldUpdateOperationsInput | string method?: StringFieldUpdateOperationsInput | string title?: StringFieldUpdateOperationsInput | string subtitle?: NullableStringFieldUpdateOperationsInput | string | null body?: NullableStringFieldUpdateOperationsInput | string | null response?: StringFieldUpdateOperationsInput | string screenshot?: NullableStringFieldUpdateOperationsInput | string | null is_success?: NullableBoolFieldUpdateOperationsInput | boolean | null is_error?: BoolFieldUpdateOperationsInput | boolean is_healed?: BoolFieldUpdateOperationsInput | boolean original_selector?: NullableStringFieldUpdateOperationsInput | string | null healed_selector?: NullableStringFieldUpdateOperationsInput | string | null healing_confidence?: NullableFloatFieldUpdateOperationsInput | number | null healing_tier?: NullableStringFieldUpdateOperationsInput | string | null original_strategy?: NullableStringFieldUpdateOperationsInput | string | null healed_strategy?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string duration?: NullableIntFieldUpdateOperationsInput | number | null span_id?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null } export type LogCreateInput = { id?: string log_type: string message: string timestamp?: Date | string createdAt?: Date | string updatedAt?: Date | string session: SessionCreateNestedOneWithoutLogInput } export type LogUncheckedCreateInput = { id?: string session_id: string log_type: string message: string timestamp?: Date | string createdAt?: Date | string updatedAt?: Date | string } export type LogUpdateInput = { id?: StringFieldUpdateOperationsInput | string log_type?: StringFieldUpdateOperationsInput | string message?: StringFieldUpdateOperationsInput | string timestamp?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string session?: SessionUpdateOneRequiredWithoutLogNestedInput } export type LogUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string session_id?: StringFieldUpdateOperationsInput | string log_type?: StringFieldUpdateOperationsInput | string message?: StringFieldUpdateOperationsInput | string timestamp?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type LogCreateManyInput = { id?: string session_id: string log_type: string message: string timestamp?: Date | string createdAt?: Date | string updatedAt?: Date | string } export type LogUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string log_type?: StringFieldUpdateOperationsInput | string message?: StringFieldUpdateOperationsInput | string timestamp?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type LogUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string session_id?: StringFieldUpdateOperationsInput | string log_type?: StringFieldUpdateOperationsInput | string message?: StringFieldUpdateOperationsInput | string timestamp?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type ProfilingCreateInput = { cpu?: string | null memory?: string | null total_cpu_used?: string | null total_memory_used?: string | null raw_cpu_log?: string | null raw_memory_log?: string | null timestamp: Date | string createdAt?: Date | string updatedAt?: Date | string session: SessionCreateNestedOneWithoutProfilingInput } export type ProfilingUncheckedCreateInput = { id?: number session_id: string cpu?: string | null memory?: string | null total_cpu_used?: string | null total_memory_used?: string | null raw_cpu_log?: string | null raw_memory_log?: string | null timestamp: Date | string createdAt?: Date | string updatedAt?: Date | string } export type ProfilingUpdateInput = { cpu?: NullableStringFieldUpdateOperationsInput | string | null memory?: NullableStringFieldUpdateOperationsInput | string | null total_cpu_used?: NullableStringFieldUpdateOperationsInput | string | null total_memory_used?: NullableStringFieldUpdateOperationsInput | string | null raw_cpu_log?: NullableStringFieldUpdateOperationsInput | string | null raw_memory_log?: NullableStringFieldUpdateOperationsInput | string | null timestamp?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string session?: SessionUpdateOneRequiredWithoutProfilingNestedInput } export type ProfilingUncheckedUpdateInput = { id?: IntFieldUpdateOperationsInput | number session_id?: StringFieldUpdateOperationsInput | string cpu?: NullableStringFieldUpdateOperationsInput | string | null memory?: NullableStringFieldUpdateOperationsInput | string | null total_cpu_used?: NullableStringFieldUpdateOperationsInput | string | null total_memory_used?: NullableStringFieldUpdateOperationsInput | string | null raw_cpu_log?: NullableStringFieldUpdateOperationsInput | string | null raw_memory_log?: NullableStringFieldUpdateOperationsInput | string | null timestamp?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type ProfilingCreateManyInput = { id?: number session_id: string cpu?: string | null memory?: string | null total_cpu_used?: string | null total_memory_used?: string | null raw_cpu_log?: string | null raw_memory_log?: string | null timestamp: Date | string createdAt?: Date | string updatedAt?: Date | string } export type ProfilingUpdateManyMutationInput = { cpu?: NullableStringFieldUpdateOperationsInput | string | null memory?: NullableStringFieldUpdateOperationsInput | string | null total_cpu_used?: NullableStringFieldUpdateOperationsInput | string | null total_memory_used?: NullableStringFieldUpdateOperationsInput | string | null raw_cpu_log?: NullableStringFieldUpdateOperationsInput | string | null raw_memory_log?: NullableStringFieldUpdateOperationsInput | string | null timestamp?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type ProfilingUncheckedUpdateManyInput = { id?: IntFieldUpdateOperationsInput | number session_id?: StringFieldUpdateOperationsInput | string cpu?: NullableStringFieldUpdateOperationsInput | string | null memory?: NullableStringFieldUpdateOperationsInput | string | null total_cpu_used?: NullableStringFieldUpdateOperationsInput | string | null total_memory_used?: NullableStringFieldUpdateOperationsInput | string | null raw_cpu_log?: NullableStringFieldUpdateOperationsInput | string | null raw_memory_log?: NullableStringFieldUpdateOperationsInput | string | null timestamp?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type AppCreateInput = { id?: string name: string filename: string filepath: string mimetype: string size: number packageName?: string | null version?: string | null platform?: string | null md5?: string | null createdAt?: Date | string updatedAt?: Date | string } export type AppUncheckedCreateInput = { id?: string name: string filename: string filepath: string mimetype: string size: number packageName?: string | null version?: string | null platform?: string | null md5?: string | null createdAt?: Date | string updatedAt?: Date | string } export type AppUpdateInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string filename?: StringFieldUpdateOperationsInput | string filepath?: StringFieldUpdateOperationsInput | string mimetype?: StringFieldUpdateOperationsInput | string size?: IntFieldUpdateOperationsInput | number packageName?: NullableStringFieldUpdateOperationsInput | string | null version?: NullableStringFieldUpdateOperationsInput | string | null platform?: NullableStringFieldUpdateOperationsInput | string | null md5?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type AppUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string filename?: StringFieldUpdateOperationsInput | string filepath?: StringFieldUpdateOperationsInput | string mimetype?: StringFieldUpdateOperationsInput | string size?: IntFieldUpdateOperationsInput | number packageName?: NullableStringFieldUpdateOperationsInput | string | null version?: NullableStringFieldUpdateOperationsInput | string | null platform?: NullableStringFieldUpdateOperationsInput | string | null md5?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type AppCreateManyInput = { id?: string name: string filename: string filepath: string mimetype: string size: number packageName?: string | null version?: string | null platform?: string | null md5?: string | null createdAt?: Date | string updatedAt?: Date | string } export type AppUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string filename?: StringFieldUpdateOperationsInput | string filepath?: StringFieldUpdateOperationsInput | string mimetype?: StringFieldUpdateOperationsInput | string size?: IntFieldUpdateOperationsInput | number packageName?: NullableStringFieldUpdateOperationsInput | string | null version?: NullableStringFieldUpdateOperationsInput | string | null platform?: NullableStringFieldUpdateOperationsInput | string | null md5?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type AppUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string filename?: StringFieldUpdateOperationsInput | string filepath?: StringFieldUpdateOperationsInput | string mimetype?: StringFieldUpdateOperationsInput | string size?: IntFieldUpdateOperationsInput | number packageName?: NullableStringFieldUpdateOperationsInput | string | null version?: NullableStringFieldUpdateOperationsInput | string | null platform?: NullableStringFieldUpdateOperationsInput | string | null md5?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type DeviceCreateInput = { udid: string host: string systemPort?: number | null proxyPort?: number | null proxyHost?: string | null wdaLocalPort?: number | null name?: string | null state?: string | null sdk?: string | null platform?: string | null deviceType?: string | null busy?: boolean | null userBlocked?: boolean | null realDevice?: boolean | null session_id?: string | null offline?: boolean | null mjpegServerPort?: number | null lastCmdExecutedAt?: number | null totalUtilizationTimeMilliSec?: number sessionStartTime?: number newCommandTimeout?: number | null cloud?: string | null derivedDataPath?: string | null chromeDriverPath?: string | null capability?: string | null adbRemoteHost?: string | null adbPort?: number | null nodeId?: string | null screenWidth?: string | null screenHeight?: string | null dashboard_link?: string | null total_session_count?: number | null createdAt?: Date | string updatedAt?: Date | string healthCheckError?: string | null healthStatus?: string | null lastHealthCheckAt?: number | null batteryLevel?: number | null reservationReason?: string | null reservedBy?: string | null reservedUntil?: number | null storageFree?: string | null tags?: string | null thermalStatus?: string | null sessionProgress?: string | null totalHealedCount?: number | null ip?: string | null cpuArchitecture?: string | null owningSessionId?: string | null lockedAt?: number | null team?: TeamCreateNestedOneWithoutDevicesInput } export type DeviceUncheckedCreateInput = { udid: string host: string systemPort?: number | null proxyPort?: number | null proxyHost?: string | null wdaLocalPort?: number | null name?: string | null state?: string | null sdk?: string | null platform?: string | null deviceType?: string | null busy?: boolean | null userBlocked?: boolean | null realDevice?: boolean | null session_id?: string | null offline?: boolean | null mjpegServerPort?: number | null lastCmdExecutedAt?: number | null totalUtilizationTimeMilliSec?: number sessionStartTime?: number newCommandTimeout?: number | null cloud?: string | null derivedDataPath?: string | null chromeDriverPath?: string | null capability?: string | null adbRemoteHost?: string | null adbPort?: number | null nodeId?: string | null screenWidth?: string | null screenHeight?: string | null dashboard_link?: string | null total_session_count?: number | null createdAt?: Date | string updatedAt?: Date | string healthCheckError?: string | null healthStatus?: string | null lastHealthCheckAt?: number | null batteryLevel?: number | null reservationReason?: string | null reservedBy?: string | null reservedUntil?: number | null storageFree?: string | null tags?: string | null thermalStatus?: string | null sessionProgress?: string | null totalHealedCount?: number | null ip?: string | null cpuArchitecture?: string | null owningSessionId?: string | null lockedAt?: number | null teamId?: string | null } export type DeviceUpdateInput = { udid?: StringFieldUpdateOperationsInput | string host?: StringFieldUpdateOperationsInput | string systemPort?: NullableIntFieldUpdateOperationsInput | number | null proxyPort?: NullableIntFieldUpdateOperationsInput | number | null proxyHost?: NullableStringFieldUpdateOperationsInput | string | null wdaLocalPort?: NullableIntFieldUpdateOperationsInput | number | null name?: NullableStringFieldUpdateOperationsInput | string | null state?: NullableStringFieldUpdateOperationsInput | string | null sdk?: NullableStringFieldUpdateOperationsInput | string | null platform?: NullableStringFieldUpdateOperationsInput | string | null deviceType?: NullableStringFieldUpdateOperationsInput | string | null busy?: NullableBoolFieldUpdateOperationsInput | boolean | null userBlocked?: NullableBoolFieldUpdateOperationsInput | boolean | null realDevice?: NullableBoolFieldUpdateOperationsInput | boolean | null session_id?: NullableStringFieldUpdateOperationsInput | string | null offline?: NullableBoolFieldUpdateOperationsInput | boolean | null mjpegServerPort?: NullableIntFieldUpdateOperationsInput | number | null lastCmdExecutedAt?: NullableFloatFieldUpdateOperationsInput | number | null totalUtilizationTimeMilliSec?: FloatFieldUpdateOperationsInput | number sessionStartTime?: FloatFieldUpdateOperationsInput | number newCommandTimeout?: NullableIntFieldUpdateOperationsInput | number | null cloud?: NullableStringFieldUpdateOperationsInput | string | null derivedDataPath?: NullableStringFieldUpdateOperationsInput | string | null chromeDriverPath?: NullableStringFieldUpdateOperationsInput | string | null capability?: NullableStringFieldUpdateOperationsInput | string | null adbRemoteHost?: NullableStringFieldUpdateOperationsInput | string | null adbPort?: NullableIntFieldUpdateOperationsInput | number | null nodeId?: NullableStringFieldUpdateOperationsInput | string | null screenWidth?: NullableStringFieldUpdateOperationsInput | string | null screenHeight?: NullableStringFieldUpdateOperationsInput | string | null dashboard_link?: NullableStringFieldUpdateOperationsInput | string | null total_session_count?: NullableIntFieldUpdateOperationsInput | number | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string healthCheckError?: NullableStringFieldUpdateOperationsInput | string | null healthStatus?: NullableStringFieldUpdateOperationsInput | string | null lastHealthCheckAt?: NullableFloatFieldUpdateOperationsInput | number | null batteryLevel?: NullableIntFieldUpdateOperationsInput | number | null reservationReason?: NullableStringFieldUpdateOperationsInput | string | null reservedBy?: NullableStringFieldUpdateOperationsInput | string | null reservedUntil?: NullableFloatFieldUpdateOperationsInput | number | null storageFree?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null thermalStatus?: NullableStringFieldUpdateOperationsInput | string | null sessionProgress?: NullableStringFieldUpdateOperationsInput | string | null totalHealedCount?: NullableIntFieldUpdateOperationsInput | number | null ip?: NullableStringFieldUpdateOperationsInput | string | null cpuArchitecture?: NullableStringFieldUpdateOperationsInput | string | null owningSessionId?: NullableStringFieldUpdateOperationsInput | string | null lockedAt?: NullableFloatFieldUpdateOperationsInput | number | null team?: TeamUpdateOneWithoutDevicesNestedInput } export type DeviceUncheckedUpdateInput = { udid?: StringFieldUpdateOperationsInput | string host?: StringFieldUpdateOperationsInput | string systemPort?: NullableIntFieldUpdateOperationsInput | number | null proxyPort?: NullableIntFieldUpdateOperationsInput | number | null proxyHost?: NullableStringFieldUpdateOperationsInput | string | null wdaLocalPort?: NullableIntFieldUpdateOperationsInput | number | null name?: NullableStringFieldUpdateOperationsInput | string | null state?: NullableStringFieldUpdateOperationsInput | string | null sdk?: NullableStringFieldUpdateOperationsInput | string | null platform?: NullableStringFieldUpdateOperationsInput | string | null deviceType?: NullableStringFieldUpdateOperationsInput | string | null busy?: NullableBoolFieldUpdateOperationsInput | boolean | null userBlocked?: NullableBoolFieldUpdateOperationsInput | boolean | null realDevice?: NullableBoolFieldUpdateOperationsInput | boolean | null session_id?: NullableStringFieldUpdateOperationsInput | string | null offline?: NullableBoolFieldUpdateOperationsInput | boolean | null mjpegServerPort?: NullableIntFieldUpdateOperationsInput | number | null lastCmdExecutedAt?: NullableFloatFieldUpdateOperationsInput | number | null totalUtilizationTimeMilliSec?: FloatFieldUpdateOperationsInput | number sessionStartTime?: FloatFieldUpdateOperationsInput | number newCommandTimeout?: NullableIntFieldUpdateOperationsInput | number | null cloud?: NullableStringFieldUpdateOperationsInput | string | null derivedDataPath?: NullableStringFieldUpdateOperationsInput | string | null chromeDriverPath?: NullableStringFieldUpdateOperationsInput | string | null capability?: NullableStringFieldUpdateOperationsInput | string | null adbRemoteHost?: NullableStringFieldUpdateOperationsInput | string | null adbPort?: NullableIntFieldUpdateOperationsInput | number | null nodeId?: NullableStringFieldUpdateOperationsInput | string | null screenWidth?: NullableStringFieldUpdateOperationsInput | string | null screenHeight?: NullableStringFieldUpdateOperationsInput | string | null dashboard_link?: NullableStringFieldUpdateOperationsInput | string | null total_session_count?: NullableIntFieldUpdateOperationsInput | number | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string healthCheckError?: NullableStringFieldUpdateOperationsInput | string | null healthStatus?: NullableStringFieldUpdateOperationsInput | string | null lastHealthCheckAt?: NullableFloatFieldUpdateOperationsInput | number | null batteryLevel?: NullableIntFieldUpdateOperationsInput | number | null reservationReason?: NullableStringFieldUpdateOperationsInput | string | null reservedBy?: NullableStringFieldUpdateOperationsInput | string | null reservedUntil?: NullableFloatFieldUpdateOperationsInput | number | null storageFree?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null thermalStatus?: NullableStringFieldUpdateOperationsInput | string | null sessionProgress?: NullableStringFieldUpdateOperationsInput | string | null totalHealedCount?: NullableIntFieldUpdateOperationsInput | number | null ip?: NullableStringFieldUpdateOperationsInput | string | null cpuArchitecture?: NullableStringFieldUpdateOperationsInput | string | null owningSessionId?: NullableStringFieldUpdateOperationsInput | string | null lockedAt?: NullableFloatFieldUpdateOperationsInput | number | null teamId?: NullableStringFieldUpdateOperationsInput | string | null } export type DeviceCreateManyInput = { udid: string host: string systemPort?: number | null proxyPort?: number | null proxyHost?: string | null wdaLocalPort?: number | null name?: string | null state?: string | null sdk?: string | null platform?: string | null deviceType?: string | null busy?: boolean | null userBlocked?: boolean | null realDevice?: boolean | null session_id?: string | null offline?: boolean | null mjpegServerPort?: number | null lastCmdExecutedAt?: number | null totalUtilizationTimeMilliSec?: number sessionStartTime?: number newCommandTimeout?: number | null cloud?: string | null derivedDataPath?: string | null chromeDriverPath?: string | null capability?: string | null adbRemoteHost?: string | null adbPort?: number | null nodeId?: string | null screenWidth?: string | null screenHeight?: string | null dashboard_link?: string | null total_session_count?: number | null createdAt?: Date | string updatedAt?: Date | string healthCheckError?: string | null healthStatus?: string | null lastHealthCheckAt?: number | null batteryLevel?: number | null reservationReason?: string | null reservedBy?: string | null reservedUntil?: number | null storageFree?: string | null tags?: string | null thermalStatus?: string | null sessionProgress?: string | null totalHealedCount?: number | null ip?: string | null cpuArchitecture?: string | null owningSessionId?: string | null lockedAt?: number | null teamId?: string | null } export type DeviceUpdateManyMutationInput = { udid?: StringFieldUpdateOperationsInput | string host?: StringFieldUpdateOperationsInput | string systemPort?: NullableIntFieldUpdateOperationsInput | number | null proxyPort?: NullableIntFieldUpdateOperationsInput | number | null proxyHost?: NullableStringFieldUpdateOperationsInput | string | null wdaLocalPort?: NullableIntFieldUpdateOperationsInput | number | null name?: NullableStringFieldUpdateOperationsInput | string | null state?: NullableStringFieldUpdateOperationsInput | string | null sdk?: NullableStringFieldUpdateOperationsInput | string | null platform?: NullableStringFieldUpdateOperationsInput | string | null deviceType?: NullableStringFieldUpdateOperationsInput | string | null busy?: NullableBoolFieldUpdateOperationsInput | boolean | null userBlocked?: NullableBoolFieldUpdateOperationsInput | boolean | null realDevice?: NullableBoolFieldUpdateOperationsInput | boolean | null session_id?: NullableStringFieldUpdateOperationsInput | string | null offline?: NullableBoolFieldUpdateOperationsInput | boolean | null mjpegServerPort?: NullableIntFieldUpdateOperationsInput | number | null lastCmdExecutedAt?: NullableFloatFieldUpdateOperationsInput | number | null totalUtilizationTimeMilliSec?: FloatFieldUpdateOperationsInput | number sessionStartTime?: FloatFieldUpdateOperationsInput | number newCommandTimeout?: NullableIntFieldUpdateOperationsInput | number | null cloud?: NullableStringFieldUpdateOperationsInput | string | null derivedDataPath?: NullableStringFieldUpdateOperationsInput | string | null chromeDriverPath?: NullableStringFieldUpdateOperationsInput | string | null capability?: NullableStringFieldUpdateOperationsInput | string | null adbRemoteHost?: NullableStringFieldUpdateOperationsInput | string | null adbPort?: NullableIntFieldUpdateOperationsInput | number | null nodeId?: NullableStringFieldUpdateOperationsInput | string | null screenWidth?: NullableStringFieldUpdateOperationsInput | string | null screenHeight?: NullableStringFieldUpdateOperationsInput | string | null dashboard_link?: NullableStringFieldUpdateOperationsInput | string | null total_session_count?: NullableIntFieldUpdateOperationsInput | number | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string healthCheckError?: NullableStringFieldUpdateOperationsInput | string | null healthStatus?: NullableStringFieldUpdateOperationsInput | string | null lastHealthCheckAt?: NullableFloatFieldUpdateOperationsInput | number | null batteryLevel?: NullableIntFieldUpdateOperationsInput | number | null reservationReason?: NullableStringFieldUpdateOperationsInput | string | null reservedBy?: NullableStringFieldUpdateOperationsInput | string | null reservedUntil?: NullableFloatFieldUpdateOperationsInput | number | null storageFree?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null thermalStatus?: NullableStringFieldUpdateOperationsInput | string | null sessionProgress?: NullableStringFieldUpdateOperationsInput | string | null totalHealedCount?: NullableIntFieldUpdateOperationsInput | number | null ip?: NullableStringFieldUpdateOperationsInput | string | null cpuArchitecture?: NullableStringFieldUpdateOperationsInput | string | null owningSessionId?: NullableStringFieldUpdateOperationsInput | string | null lockedAt?: NullableFloatFieldUpdateOperationsInput | number | null } export type DeviceUncheckedUpdateManyInput = { udid?: StringFieldUpdateOperationsInput | string host?: StringFieldUpdateOperationsInput | string systemPort?: NullableIntFieldUpdateOperationsInput | number | null proxyPort?: NullableIntFieldUpdateOperationsInput | number | null proxyHost?: NullableStringFieldUpdateOperationsInput | string | null wdaLocalPort?: NullableIntFieldUpdateOperationsInput | number | null name?: NullableStringFieldUpdateOperationsInput | string | null state?: NullableStringFieldUpdateOperationsInput | string | null sdk?: NullableStringFieldUpdateOperationsInput | string | null platform?: NullableStringFieldUpdateOperationsInput | string | null deviceType?: NullableStringFieldUpdateOperationsInput | string | null busy?: NullableBoolFieldUpdateOperationsInput | boolean | null userBlocked?: NullableBoolFieldUpdateOperationsInput | boolean | null realDevice?: NullableBoolFieldUpdateOperationsInput | boolean | null session_id?: NullableStringFieldUpdateOperationsInput | string | null offline?: NullableBoolFieldUpdateOperationsInput | boolean | null mjpegServerPort?: NullableIntFieldUpdateOperationsInput | number | null lastCmdExecutedAt?: NullableFloatFieldUpdateOperationsInput | number | null totalUtilizationTimeMilliSec?: FloatFieldUpdateOperationsInput | number sessionStartTime?: FloatFieldUpdateOperationsInput | number newCommandTimeout?: NullableIntFieldUpdateOperationsInput | number | null cloud?: NullableStringFieldUpdateOperationsInput | string | null derivedDataPath?: NullableStringFieldUpdateOperationsInput | string | null chromeDriverPath?: NullableStringFieldUpdateOperationsInput | string | null capability?: NullableStringFieldUpdateOperationsInput | string | null adbRemoteHost?: NullableStringFieldUpdateOperationsInput | string | null adbPort?: NullableIntFieldUpdateOperationsInput | number | null nodeId?: NullableStringFieldUpdateOperationsInput | string | null screenWidth?: NullableStringFieldUpdateOperationsInput | string | null screenHeight?: NullableStringFieldUpdateOperationsInput | string | null dashboard_link?: NullableStringFieldUpdateOperationsInput | string | null total_session_count?: NullableIntFieldUpdateOperationsInput | number | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string healthCheckError?: NullableStringFieldUpdateOperationsInput | string | null healthStatus?: NullableStringFieldUpdateOperationsInput | string | null lastHealthCheckAt?: NullableFloatFieldUpdateOperationsInput | number | null batteryLevel?: NullableIntFieldUpdateOperationsInput | number | null reservationReason?: NullableStringFieldUpdateOperationsInput | string | null reservedBy?: NullableStringFieldUpdateOperationsInput | string | null reservedUntil?: NullableFloatFieldUpdateOperationsInput | number | null storageFree?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null thermalStatus?: NullableStringFieldUpdateOperationsInput | string | null sessionProgress?: NullableStringFieldUpdateOperationsInput | string | null totalHealedCount?: NullableIntFieldUpdateOperationsInput | number | null ip?: NullableStringFieldUpdateOperationsInput | string | null cpuArchitecture?: NullableStringFieldUpdateOperationsInput | string | null owningSessionId?: NullableStringFieldUpdateOperationsInput | string | null lockedAt?: NullableFloatFieldUpdateOperationsInput | number | null teamId?: NullableStringFieldUpdateOperationsInput | string | null } export type PendingSessionCreateInput = { capability_id: string capability: string createdAt: number } export type PendingSessionUncheckedCreateInput = { id?: number capability_id: string capability: string createdAt: number } export type PendingSessionUpdateInput = { capability_id?: StringFieldUpdateOperationsInput | string capability?: StringFieldUpdateOperationsInput | string createdAt?: FloatFieldUpdateOperationsInput | number } export type PendingSessionUncheckedUpdateInput = { id?: IntFieldUpdateOperationsInput | number capability_id?: StringFieldUpdateOperationsInput | string capability?: StringFieldUpdateOperationsInput | string createdAt?: FloatFieldUpdateOperationsInput | number } export type PendingSessionCreateManyInput = { id?: number capability_id: string capability: string createdAt: number } export type PendingSessionUpdateManyMutationInput = { capability_id?: StringFieldUpdateOperationsInput | string capability?: StringFieldUpdateOperationsInput | string createdAt?: FloatFieldUpdateOperationsInput | number } export type PendingSessionUncheckedUpdateManyInput = { id?: IntFieldUpdateOperationsInput | number capability_id?: StringFieldUpdateOperationsInput | string capability?: StringFieldUpdateOperationsInput | string createdAt?: FloatFieldUpdateOperationsInput | number } export type CLIArgsCreateInput = { args: string createdAt?: Date | string } export type CLIArgsUncheckedCreateInput = { id?: number args: string createdAt?: Date | string } export type CLIArgsUpdateInput = { args?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type CLIArgsUncheckedUpdateInput = { id?: IntFieldUpdateOperationsInput | number args?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type CLIArgsCreateManyInput = { id?: number args: string createdAt?: Date | string } export type CLIArgsUpdateManyMutationInput = { args?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type CLIArgsUncheckedUpdateManyInput = { id?: IntFieldUpdateOperationsInput | number args?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type WebhookConfigCreateInput = { id?: string url: string type?: string events: string active?: boolean createdAt?: Date | string updatedAt?: Date | string payloadTemplate?: string | null } export type WebhookConfigUncheckedCreateInput = { id?: string url: string type?: string events: string active?: boolean createdAt?: Date | string updatedAt?: Date | string payloadTemplate?: string | null } export type WebhookConfigUpdateInput = { id?: StringFieldUpdateOperationsInput | string url?: StringFieldUpdateOperationsInput | string type?: StringFieldUpdateOperationsInput | string events?: StringFieldUpdateOperationsInput | string active?: BoolFieldUpdateOperationsInput | boolean createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string payloadTemplate?: NullableStringFieldUpdateOperationsInput | string | null } export type WebhookConfigUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string url?: StringFieldUpdateOperationsInput | string type?: StringFieldUpdateOperationsInput | string events?: StringFieldUpdateOperationsInput | string active?: BoolFieldUpdateOperationsInput | boolean createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string payloadTemplate?: NullableStringFieldUpdateOperationsInput | string | null } export type WebhookConfigCreateManyInput = { id?: string url: string type?: string events: string active?: boolean createdAt?: Date | string updatedAt?: Date | string payloadTemplate?: string | null } export type WebhookConfigUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string url?: StringFieldUpdateOperationsInput | string type?: StringFieldUpdateOperationsInput | string events?: StringFieldUpdateOperationsInput | string active?: BoolFieldUpdateOperationsInput | boolean createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string payloadTemplate?: NullableStringFieldUpdateOperationsInput | string | null } export type WebhookConfigUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string url?: StringFieldUpdateOperationsInput | string type?: StringFieldUpdateOperationsInput | string events?: StringFieldUpdateOperationsInput | string active?: BoolFieldUpdateOperationsInput | boolean createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string payloadTemplate?: NullableStringFieldUpdateOperationsInput | string | null } export type WebConfigCreateInput = { id?: string name: string value: string createdAt?: Date | string updatedAt?: Date | string } export type WebConfigUncheckedCreateInput = { id?: string name: string value: string createdAt?: Date | string updatedAt?: Date | string } export type WebConfigUpdateInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string value?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type WebConfigUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string value?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type WebConfigCreateManyInput = { id?: string name: string value: string createdAt?: Date | string updatedAt?: Date | string } export type WebConfigUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string value?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type WebConfigUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string value?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type LocatorEtalonCreateInput = { id?: string selector: string strategy: string attributes: string nodeName: string lastSeen?: Date | string createdAt?: Date | string updatedAt?: Date | string } export type LocatorEtalonUncheckedCreateInput = { id?: string selector: string strategy: string attributes: string nodeName: string lastSeen?: Date | string createdAt?: Date | string updatedAt?: Date | string } export type LocatorEtalonUpdateInput = { id?: StringFieldUpdateOperationsInput | string selector?: StringFieldUpdateOperationsInput | string strategy?: StringFieldUpdateOperationsInput | string attributes?: StringFieldUpdateOperationsInput | string nodeName?: StringFieldUpdateOperationsInput | string lastSeen?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type LocatorEtalonUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string selector?: StringFieldUpdateOperationsInput | string strategy?: StringFieldUpdateOperationsInput | string attributes?: StringFieldUpdateOperationsInput | string nodeName?: StringFieldUpdateOperationsInput | string lastSeen?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type LocatorEtalonCreateManyInput = { id?: string selector: string strategy: string attributes: string nodeName: string lastSeen?: Date | string createdAt?: Date | string updatedAt?: Date | string } export type LocatorEtalonUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string selector?: StringFieldUpdateOperationsInput | string strategy?: StringFieldUpdateOperationsInput | string attributes?: StringFieldUpdateOperationsInput | string nodeName?: StringFieldUpdateOperationsInput | string lastSeen?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type LocatorEtalonUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string selector?: StringFieldUpdateOperationsInput | string strategy?: StringFieldUpdateOperationsInput | string attributes?: StringFieldUpdateOperationsInput | string nodeName?: StringFieldUpdateOperationsInput | string lastSeen?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type PortLeaseCreateInput = { port: number purpose: string leasedToUdid: string leasedToHost?: string leaseId?: string | null leasedToPid?: number | null leasedAt: number expiresAt: number } export type PortLeaseUncheckedCreateInput = { port: number purpose: string leasedToUdid: string leasedToHost?: string leaseId?: string | null leasedToPid?: number | null leasedAt: number expiresAt: number } export type PortLeaseUpdateInput = { port?: IntFieldUpdateOperationsInput | number purpose?: StringFieldUpdateOperationsInput | string leasedToUdid?: StringFieldUpdateOperationsInput | string leasedToHost?: StringFieldUpdateOperationsInput | string leaseId?: NullableStringFieldUpdateOperationsInput | string | null leasedToPid?: NullableIntFieldUpdateOperationsInput | number | null leasedAt?: FloatFieldUpdateOperationsInput | number expiresAt?: FloatFieldUpdateOperationsInput | number } export type PortLeaseUncheckedUpdateInput = { port?: IntFieldUpdateOperationsInput | number purpose?: StringFieldUpdateOperationsInput | string leasedToUdid?: StringFieldUpdateOperationsInput | string leasedToHost?: StringFieldUpdateOperationsInput | string leaseId?: NullableStringFieldUpdateOperationsInput | string | null leasedToPid?: NullableIntFieldUpdateOperationsInput | number | null leasedAt?: FloatFieldUpdateOperationsInput | number expiresAt?: FloatFieldUpdateOperationsInput | number } export type PortLeaseCreateManyInput = { port: number purpose: string leasedToUdid: string leasedToHost?: string leaseId?: string | null leasedToPid?: number | null leasedAt: number expiresAt: number } export type PortLeaseUpdateManyMutationInput = { port?: IntFieldUpdateOperationsInput | number purpose?: StringFieldUpdateOperationsInput | string leasedToUdid?: StringFieldUpdateOperationsInput | string leasedToHost?: StringFieldUpdateOperationsInput | string leaseId?: NullableStringFieldUpdateOperationsInput | string | null leasedToPid?: NullableIntFieldUpdateOperationsInput | number | null leasedAt?: FloatFieldUpdateOperationsInput | number expiresAt?: FloatFieldUpdateOperationsInput | number } export type PortLeaseUncheckedUpdateManyInput = { port?: IntFieldUpdateOperationsInput | number purpose?: StringFieldUpdateOperationsInput | string leasedToUdid?: StringFieldUpdateOperationsInput | string leasedToHost?: StringFieldUpdateOperationsInput | string leaseId?: NullableStringFieldUpdateOperationsInput | string | null leasedToPid?: NullableIntFieldUpdateOperationsInput | number | null leasedAt?: FloatFieldUpdateOperationsInput | number expiresAt?: FloatFieldUpdateOperationsInput | number } export type LeaseCreateInput = { id?: string tokenHash: string deviceUdid: string deviceHost: string actorId: string teamId?: string | null buildId?: string | null reason?: string | null status?: string createdAt?: Date | string expiresAt: number heartbeatSeconds?: number lastHeartbeatAt: number allocatedPorts: string capabilityBag: string } export type LeaseUncheckedCreateInput = { id?: string tokenHash: string deviceUdid: string deviceHost: string actorId: string teamId?: string | null buildId?: string | null reason?: string | null status?: string createdAt?: Date | string expiresAt: number heartbeatSeconds?: number lastHeartbeatAt: number allocatedPorts: string capabilityBag: string } export type LeaseUpdateInput = { id?: StringFieldUpdateOperationsInput | string tokenHash?: StringFieldUpdateOperationsInput | string deviceUdid?: StringFieldUpdateOperationsInput | string deviceHost?: StringFieldUpdateOperationsInput | string actorId?: StringFieldUpdateOperationsInput | string teamId?: NullableStringFieldUpdateOperationsInput | string | null buildId?: NullableStringFieldUpdateOperationsInput | string | null reason?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: FloatFieldUpdateOperationsInput | number heartbeatSeconds?: IntFieldUpdateOperationsInput | number lastHeartbeatAt?: FloatFieldUpdateOperationsInput | number allocatedPorts?: StringFieldUpdateOperationsInput | string capabilityBag?: StringFieldUpdateOperationsInput | string } export type LeaseUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string tokenHash?: StringFieldUpdateOperationsInput | string deviceUdid?: StringFieldUpdateOperationsInput | string deviceHost?: StringFieldUpdateOperationsInput | string actorId?: StringFieldUpdateOperationsInput | string teamId?: NullableStringFieldUpdateOperationsInput | string | null buildId?: NullableStringFieldUpdateOperationsInput | string | null reason?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: FloatFieldUpdateOperationsInput | number heartbeatSeconds?: IntFieldUpdateOperationsInput | number lastHeartbeatAt?: FloatFieldUpdateOperationsInput | number allocatedPorts?: StringFieldUpdateOperationsInput | string capabilityBag?: StringFieldUpdateOperationsInput | string } export type LeaseCreateManyInput = { id?: string tokenHash: string deviceUdid: string deviceHost: string actorId: string teamId?: string | null buildId?: string | null reason?: string | null status?: string createdAt?: Date | string expiresAt: number heartbeatSeconds?: number lastHeartbeatAt: number allocatedPorts: string capabilityBag: string } export type LeaseUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string tokenHash?: StringFieldUpdateOperationsInput | string deviceUdid?: StringFieldUpdateOperationsInput | string deviceHost?: StringFieldUpdateOperationsInput | string actorId?: StringFieldUpdateOperationsInput | string teamId?: NullableStringFieldUpdateOperationsInput | string | null buildId?: NullableStringFieldUpdateOperationsInput | string | null reason?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: FloatFieldUpdateOperationsInput | number heartbeatSeconds?: IntFieldUpdateOperationsInput | number lastHeartbeatAt?: FloatFieldUpdateOperationsInput | number allocatedPorts?: StringFieldUpdateOperationsInput | string capabilityBag?: StringFieldUpdateOperationsInput | string } export type LeaseUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string tokenHash?: StringFieldUpdateOperationsInput | string deviceUdid?: StringFieldUpdateOperationsInput | string deviceHost?: StringFieldUpdateOperationsInput | string actorId?: StringFieldUpdateOperationsInput | string teamId?: NullableStringFieldUpdateOperationsInput | string | null buildId?: NullableStringFieldUpdateOperationsInput | string | null reason?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: FloatFieldUpdateOperationsInput | number heartbeatSeconds?: IntFieldUpdateOperationsInput | number lastHeartbeatAt?: FloatFieldUpdateOperationsInput | number allocatedPorts?: StringFieldUpdateOperationsInput | string capabilityBag?: StringFieldUpdateOperationsInput | string } export type ApiKeyCreateInput = { id?: string name: string keyHash: string scopes: string rateLimit?: number createdAt?: Date | string revokedAt?: Date | string | null lastUsedAt?: Date | string | null expiresAt?: Date | string | null role?: string team?: TeamCreateNestedOneWithoutApiKeysInput user: UserCreateNestedOneWithoutApiKeysInput } export type ApiKeyUncheckedCreateInput = { id?: string name: string keyHash: string scopes: string rateLimit?: number createdAt?: Date | string revokedAt?: Date | string | null lastUsedAt?: Date | string | null expiresAt?: Date | string | null teamId?: string | null role?: string userId: string } export type ApiKeyUpdateInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string keyHash?: StringFieldUpdateOperationsInput | string scopes?: StringFieldUpdateOperationsInput | string rateLimit?: IntFieldUpdateOperationsInput | number createdAt?: DateTimeFieldUpdateOperationsInput | Date | string revokedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null lastUsedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null expiresAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null role?: StringFieldUpdateOperationsInput | string team?: TeamUpdateOneWithoutApiKeysNestedInput user?: UserUpdateOneRequiredWithoutApiKeysNestedInput } export type ApiKeyUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string keyHash?: StringFieldUpdateOperationsInput | string scopes?: StringFieldUpdateOperationsInput | string rateLimit?: IntFieldUpdateOperationsInput | number createdAt?: DateTimeFieldUpdateOperationsInput | Date | string revokedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null lastUsedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null expiresAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null teamId?: NullableStringFieldUpdateOperationsInput | string | null role?: StringFieldUpdateOperationsInput | string userId?: StringFieldUpdateOperationsInput | string } export type ApiKeyCreateManyInput = { id?: string name: string keyHash: string scopes: string rateLimit?: number createdAt?: Date | string revokedAt?: Date | string | null lastUsedAt?: Date | string | null expiresAt?: Date | string | null teamId?: string | null role?: string userId: string } export type ApiKeyUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string keyHash?: StringFieldUpdateOperationsInput | string scopes?: StringFieldUpdateOperationsInput | string rateLimit?: IntFieldUpdateOperationsInput | number createdAt?: DateTimeFieldUpdateOperationsInput | Date | string revokedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null lastUsedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null expiresAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null role?: StringFieldUpdateOperationsInput | string } export type ApiKeyUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string keyHash?: StringFieldUpdateOperationsInput | string scopes?: StringFieldUpdateOperationsInput | string rateLimit?: IntFieldUpdateOperationsInput | number createdAt?: DateTimeFieldUpdateOperationsInput | Date | string revokedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null lastUsedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null expiresAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null teamId?: NullableStringFieldUpdateOperationsInput | string | null role?: StringFieldUpdateOperationsInput | string userId?: StringFieldUpdateOperationsInput | string } export type TeamCreateInput = { id?: string name: string createdAt?: Date | string devices?: DeviceCreateNestedManyWithoutTeamInput apiKeys?: ApiKeyCreateNestedManyWithoutTeamInput members?: TeamMemberCreateNestedManyWithoutTeamInput } export type TeamUncheckedCreateInput = { id?: string name: string createdAt?: Date | string devices?: DeviceUncheckedCreateNestedManyWithoutTeamInput apiKeys?: ApiKeyUncheckedCreateNestedManyWithoutTeamInput members?: TeamMemberUncheckedCreateNestedManyWithoutTeamInput } export type TeamUpdateInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string devices?: DeviceUpdateManyWithoutTeamNestedInput apiKeys?: ApiKeyUpdateManyWithoutTeamNestedInput members?: TeamMemberUpdateManyWithoutTeamNestedInput } export type TeamUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string devices?: DeviceUncheckedUpdateManyWithoutTeamNestedInput apiKeys?: ApiKeyUncheckedUpdateManyWithoutTeamNestedInput members?: TeamMemberUncheckedUpdateManyWithoutTeamNestedInput } export type TeamCreateManyInput = { id?: string name: string createdAt?: Date | string } export type TeamUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type TeamUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type SelectorStateCreateInput = { id?: string original_strategy: string original_selector: string status: string fixed_at?: Date | string | null fixed_by_api_key?: string | null resolved_at?: Date | string | null muted_at?: Date | string | null muted_by_api_key?: string | null regression_count?: number clean_builds_count?: number last_event_at?: Date | string createdAt?: Date | string updatedAt?: Date | string } export type SelectorStateUncheckedCreateInput = { id?: string original_strategy: string original_selector: string status: string fixed_at?: Date | string | null fixed_by_api_key?: string | null resolved_at?: Date | string | null muted_at?: Date | string | null muted_by_api_key?: string | null regression_count?: number clean_builds_count?: number last_event_at?: Date | string createdAt?: Date | string updatedAt?: Date | string } export type SelectorStateUpdateInput = { id?: StringFieldUpdateOperationsInput | string original_strategy?: StringFieldUpdateOperationsInput | string original_selector?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string fixed_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null fixed_by_api_key?: NullableStringFieldUpdateOperationsInput | string | null resolved_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null muted_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null muted_by_api_key?: NullableStringFieldUpdateOperationsInput | string | null regression_count?: IntFieldUpdateOperationsInput | number clean_builds_count?: IntFieldUpdateOperationsInput | number last_event_at?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type SelectorStateUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string original_strategy?: StringFieldUpdateOperationsInput | string original_selector?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string fixed_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null fixed_by_api_key?: NullableStringFieldUpdateOperationsInput | string | null resolved_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null muted_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null muted_by_api_key?: NullableStringFieldUpdateOperationsInput | string | null regression_count?: IntFieldUpdateOperationsInput | number clean_builds_count?: IntFieldUpdateOperationsInput | number last_event_at?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type SelectorStateCreateManyInput = { id?: string original_strategy: string original_selector: string status: string fixed_at?: Date | string | null fixed_by_api_key?: string | null resolved_at?: Date | string | null muted_at?: Date | string | null muted_by_api_key?: string | null regression_count?: number clean_builds_count?: number last_event_at?: Date | string createdAt?: Date | string updatedAt?: Date | string } export type SelectorStateUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string original_strategy?: StringFieldUpdateOperationsInput | string original_selector?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string fixed_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null fixed_by_api_key?: NullableStringFieldUpdateOperationsInput | string | null resolved_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null muted_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null muted_by_api_key?: NullableStringFieldUpdateOperationsInput | string | null regression_count?: IntFieldUpdateOperationsInput | number clean_builds_count?: IntFieldUpdateOperationsInput | number last_event_at?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type SelectorStateUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string original_strategy?: StringFieldUpdateOperationsInput | string original_selector?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string fixed_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null fixed_by_api_key?: NullableStringFieldUpdateOperationsInput | string | null resolved_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null muted_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null muted_by_api_key?: NullableStringFieldUpdateOperationsInput | string | null regression_count?: IntFieldUpdateOperationsInput | number clean_builds_count?: IntFieldUpdateOperationsInput | number last_event_at?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type RecordingCreateInput = { id?: string group_id: string device_udid: string device_host?: string started_at: Date | string ended_at?: Date | string | null status: string file_path: string duration_ms?: number | null size_bytes?: number | null device_snapshot?: string | null fail_reason?: string | null bookmarks?: BookmarkCreateNestedManyWithoutRecordingInput annotations?: AnnotationCreateNestedManyWithoutRecordingInput Session?: SessionCreateNestedOneWithoutRecordingInput } export type RecordingUncheckedCreateInput = { id?: string group_id: string device_udid: string device_host?: string session_id?: string | null started_at: Date | string ended_at?: Date | string | null status: string file_path: string duration_ms?: number | null size_bytes?: number | null device_snapshot?: string | null fail_reason?: string | null bookmarks?: BookmarkUncheckedCreateNestedManyWithoutRecordingInput annotations?: AnnotationUncheckedCreateNestedManyWithoutRecordingInput } export type RecordingUpdateInput = { id?: StringFieldUpdateOperationsInput | string group_id?: StringFieldUpdateOperationsInput | string device_udid?: StringFieldUpdateOperationsInput | string device_host?: StringFieldUpdateOperationsInput | string started_at?: DateTimeFieldUpdateOperationsInput | Date | string ended_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null status?: StringFieldUpdateOperationsInput | string file_path?: StringFieldUpdateOperationsInput | string duration_ms?: NullableIntFieldUpdateOperationsInput | number | null size_bytes?: NullableIntFieldUpdateOperationsInput | number | null device_snapshot?: NullableStringFieldUpdateOperationsInput | string | null fail_reason?: NullableStringFieldUpdateOperationsInput | string | null bookmarks?: BookmarkUpdateManyWithoutRecordingNestedInput annotations?: AnnotationUpdateManyWithoutRecordingNestedInput Session?: SessionUpdateOneWithoutRecordingNestedInput } export type RecordingUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string group_id?: StringFieldUpdateOperationsInput | string device_udid?: StringFieldUpdateOperationsInput | string device_host?: StringFieldUpdateOperationsInput | string session_id?: NullableStringFieldUpdateOperationsInput | string | null started_at?: DateTimeFieldUpdateOperationsInput | Date | string ended_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null status?: StringFieldUpdateOperationsInput | string file_path?: StringFieldUpdateOperationsInput | string duration_ms?: NullableIntFieldUpdateOperationsInput | number | null size_bytes?: NullableIntFieldUpdateOperationsInput | number | null device_snapshot?: NullableStringFieldUpdateOperationsInput | string | null fail_reason?: NullableStringFieldUpdateOperationsInput | string | null bookmarks?: BookmarkUncheckedUpdateManyWithoutRecordingNestedInput annotations?: AnnotationUncheckedUpdateManyWithoutRecordingNestedInput } export type RecordingCreateManyInput = { id?: string group_id: string device_udid: string device_host?: string session_id?: string | null started_at: Date | string ended_at?: Date | string | null status: string file_path: string duration_ms?: number | null size_bytes?: number | null device_snapshot?: string | null fail_reason?: string | null } export type RecordingUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string group_id?: StringFieldUpdateOperationsInput | string device_udid?: StringFieldUpdateOperationsInput | string device_host?: StringFieldUpdateOperationsInput | string started_at?: DateTimeFieldUpdateOperationsInput | Date | string ended_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null status?: StringFieldUpdateOperationsInput | string file_path?: StringFieldUpdateOperationsInput | string duration_ms?: NullableIntFieldUpdateOperationsInput | number | null size_bytes?: NullableIntFieldUpdateOperationsInput | number | null device_snapshot?: NullableStringFieldUpdateOperationsInput | string | null fail_reason?: NullableStringFieldUpdateOperationsInput | string | null } export type RecordingUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string group_id?: StringFieldUpdateOperationsInput | string device_udid?: StringFieldUpdateOperationsInput | string device_host?: StringFieldUpdateOperationsInput | string session_id?: NullableStringFieldUpdateOperationsInput | string | null started_at?: DateTimeFieldUpdateOperationsInput | Date | string ended_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null status?: StringFieldUpdateOperationsInput | string file_path?: StringFieldUpdateOperationsInput | string duration_ms?: NullableIntFieldUpdateOperationsInput | number | null size_bytes?: NullableIntFieldUpdateOperationsInput | number | null device_snapshot?: NullableStringFieldUpdateOperationsInput | string | null fail_reason?: NullableStringFieldUpdateOperationsInput | string | null } export type BookmarkCreateInput = { id?: string timecode_ms: number label: string note?: string | null created_at?: Date | string Recording: RecordingCreateNestedOneWithoutBookmarksInput } export type BookmarkUncheckedCreateInput = { id?: string recording_id: string timecode_ms: number label: string note?: string | null created_at?: Date | string } export type BookmarkUpdateInput = { id?: StringFieldUpdateOperationsInput | string timecode_ms?: IntFieldUpdateOperationsInput | number label?: StringFieldUpdateOperationsInput | string note?: NullableStringFieldUpdateOperationsInput | string | null created_at?: DateTimeFieldUpdateOperationsInput | Date | string Recording?: RecordingUpdateOneRequiredWithoutBookmarksNestedInput } export type BookmarkUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string recording_id?: StringFieldUpdateOperationsInput | string timecode_ms?: IntFieldUpdateOperationsInput | number label?: StringFieldUpdateOperationsInput | string note?: NullableStringFieldUpdateOperationsInput | string | null created_at?: DateTimeFieldUpdateOperationsInput | Date | string } export type BookmarkCreateManyInput = { id?: string recording_id: string timecode_ms: number label: string note?: string | null created_at?: Date | string } export type BookmarkUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string timecode_ms?: IntFieldUpdateOperationsInput | number label?: StringFieldUpdateOperationsInput | string note?: NullableStringFieldUpdateOperationsInput | string | null created_at?: DateTimeFieldUpdateOperationsInput | Date | string } export type BookmarkUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string recording_id?: StringFieldUpdateOperationsInput | string timecode_ms?: IntFieldUpdateOperationsInput | number label?: StringFieldUpdateOperationsInput | string note?: NullableStringFieldUpdateOperationsInput | string | null created_at?: DateTimeFieldUpdateOperationsInput | Date | string } export type AnnotationCreateInput = { id?: string timecode_ms: number shape: string geometry: string color: string text?: string | null author?: string | null created_at?: Date | string Recording: RecordingCreateNestedOneWithoutAnnotationsInput } export type AnnotationUncheckedCreateInput = { id?: string recording_id: string timecode_ms: number shape: string geometry: string color: string text?: string | null author?: string | null created_at?: Date | string } export type AnnotationUpdateInput = { id?: StringFieldUpdateOperationsInput | string timecode_ms?: IntFieldUpdateOperationsInput | number shape?: StringFieldUpdateOperationsInput | string geometry?: StringFieldUpdateOperationsInput | string color?: StringFieldUpdateOperationsInput | string text?: NullableStringFieldUpdateOperationsInput | string | null author?: NullableStringFieldUpdateOperationsInput | string | null created_at?: DateTimeFieldUpdateOperationsInput | Date | string Recording?: RecordingUpdateOneRequiredWithoutAnnotationsNestedInput } export type AnnotationUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string recording_id?: StringFieldUpdateOperationsInput | string timecode_ms?: IntFieldUpdateOperationsInput | number shape?: StringFieldUpdateOperationsInput | string geometry?: StringFieldUpdateOperationsInput | string color?: StringFieldUpdateOperationsInput | string text?: NullableStringFieldUpdateOperationsInput | string | null author?: NullableStringFieldUpdateOperationsInput | string | null created_at?: DateTimeFieldUpdateOperationsInput | Date | string } export type AnnotationCreateManyInput = { id?: string recording_id: string timecode_ms: number shape: string geometry: string color: string text?: string | null author?: string | null created_at?: Date | string } export type AnnotationUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string timecode_ms?: IntFieldUpdateOperationsInput | number shape?: StringFieldUpdateOperationsInput | string geometry?: StringFieldUpdateOperationsInput | string color?: StringFieldUpdateOperationsInput | string text?: NullableStringFieldUpdateOperationsInput | string | null author?: NullableStringFieldUpdateOperationsInput | string | null created_at?: DateTimeFieldUpdateOperationsInput | Date | string } export type AnnotationUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string recording_id?: StringFieldUpdateOperationsInput | string timecode_ms?: IntFieldUpdateOperationsInput | number shape?: StringFieldUpdateOperationsInput | string geometry?: StringFieldUpdateOperationsInput | string color?: StringFieldUpdateOperationsInput | string text?: NullableStringFieldUpdateOperationsInput | string | null author?: NullableStringFieldUpdateOperationsInput | string | null created_at?: DateTimeFieldUpdateOperationsInput | Date | string } export type UserCreateInput = { id?: string email: string name: string passwordHash: string accessKey: string role?: string status?: string createdAt?: Date | string updatedAt?: Date | string lastLoginAt?: Date | string | null passwordChangedAt?: Date | string | null apiKeys?: ApiKeyCreateNestedManyWithoutUserInput sessions?: UserSessionCreateNestedManyWithoutUserInput passwordResetTokens?: PasswordResetTokenCreateNestedManyWithoutUserInput teamMemberships?: TeamMemberCreateNestedManyWithoutUserInput } export type UserUncheckedCreateInput = { id?: string email: string name: string passwordHash: string accessKey: string role?: string status?: string createdAt?: Date | string updatedAt?: Date | string lastLoginAt?: Date | string | null passwordChangedAt?: Date | string | null apiKeys?: ApiKeyUncheckedCreateNestedManyWithoutUserInput sessions?: UserSessionUncheckedCreateNestedManyWithoutUserInput passwordResetTokens?: PasswordResetTokenUncheckedCreateNestedManyWithoutUserInput teamMemberships?: TeamMemberUncheckedCreateNestedManyWithoutUserInput } export type UserUpdateInput = { id?: StringFieldUpdateOperationsInput | string email?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string passwordHash?: StringFieldUpdateOperationsInput | string accessKey?: StringFieldUpdateOperationsInput | string role?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string lastLoginAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null passwordChangedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null apiKeys?: ApiKeyUpdateManyWithoutUserNestedInput sessions?: UserSessionUpdateManyWithoutUserNestedInput passwordResetTokens?: PasswordResetTokenUpdateManyWithoutUserNestedInput teamMemberships?: TeamMemberUpdateManyWithoutUserNestedInput } export type UserUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string email?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string passwordHash?: StringFieldUpdateOperationsInput | string accessKey?: StringFieldUpdateOperationsInput | string role?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string lastLoginAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null passwordChangedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null apiKeys?: ApiKeyUncheckedUpdateManyWithoutUserNestedInput sessions?: UserSessionUncheckedUpdateManyWithoutUserNestedInput passwordResetTokens?: PasswordResetTokenUncheckedUpdateManyWithoutUserNestedInput teamMemberships?: TeamMemberUncheckedUpdateManyWithoutUserNestedInput } export type UserCreateManyInput = { id?: string email: string name: string passwordHash: string accessKey: string role?: string status?: string createdAt?: Date | string updatedAt?: Date | string lastLoginAt?: Date | string | null passwordChangedAt?: Date | string | null } export type UserUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string email?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string passwordHash?: StringFieldUpdateOperationsInput | string accessKey?: StringFieldUpdateOperationsInput | string role?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string lastLoginAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null passwordChangedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null } export type UserUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string email?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string passwordHash?: StringFieldUpdateOperationsInput | string accessKey?: StringFieldUpdateOperationsInput | string role?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string lastLoginAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null passwordChangedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null } export type UserSessionCreateInput = { id?: string createdAt?: Date | string expiresAt: Date | string lastSeenAt?: Date | string userAgent?: string | null ipHash?: string | null user: UserCreateNestedOneWithoutSessionsInput } export type UserSessionUncheckedCreateInput = { id?: string userId: string createdAt?: Date | string expiresAt: Date | string lastSeenAt?: Date | string userAgent?: string | null ipHash?: string | null } export type UserSessionUpdateInput = { id?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: DateTimeFieldUpdateOperationsInput | Date | string lastSeenAt?: DateTimeFieldUpdateOperationsInput | Date | string userAgent?: NullableStringFieldUpdateOperationsInput | string | null ipHash?: NullableStringFieldUpdateOperationsInput | string | null user?: UserUpdateOneRequiredWithoutSessionsNestedInput } export type UserSessionUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string userId?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: DateTimeFieldUpdateOperationsInput | Date | string lastSeenAt?: DateTimeFieldUpdateOperationsInput | Date | string userAgent?: NullableStringFieldUpdateOperationsInput | string | null ipHash?: NullableStringFieldUpdateOperationsInput | string | null } export type UserSessionCreateManyInput = { id?: string userId: string createdAt?: Date | string expiresAt: Date | string lastSeenAt?: Date | string userAgent?: string | null ipHash?: string | null } export type UserSessionUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: DateTimeFieldUpdateOperationsInput | Date | string lastSeenAt?: DateTimeFieldUpdateOperationsInput | Date | string userAgent?: NullableStringFieldUpdateOperationsInput | string | null ipHash?: NullableStringFieldUpdateOperationsInput | string | null } export type UserSessionUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string userId?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: DateTimeFieldUpdateOperationsInput | Date | string lastSeenAt?: DateTimeFieldUpdateOperationsInput | Date | string userAgent?: NullableStringFieldUpdateOperationsInput | string | null ipHash?: NullableStringFieldUpdateOperationsInput | string | null } export type PasswordResetTokenCreateInput = { id?: string tokenHash: string createdAt?: Date | string expiresAt: Date | string usedAt?: Date | string | null user: UserCreateNestedOneWithoutPasswordResetTokensInput } export type PasswordResetTokenUncheckedCreateInput = { id?: string userId: string tokenHash: string createdAt?: Date | string expiresAt: Date | string usedAt?: Date | string | null } export type PasswordResetTokenUpdateInput = { id?: StringFieldUpdateOperationsInput | string tokenHash?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: DateTimeFieldUpdateOperationsInput | Date | string usedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null user?: UserUpdateOneRequiredWithoutPasswordResetTokensNestedInput } export type PasswordResetTokenUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string userId?: StringFieldUpdateOperationsInput | string tokenHash?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: DateTimeFieldUpdateOperationsInput | Date | string usedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null } export type PasswordResetTokenCreateManyInput = { id?: string userId: string tokenHash: string createdAt?: Date | string expiresAt: Date | string usedAt?: Date | string | null } export type PasswordResetTokenUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string tokenHash?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: DateTimeFieldUpdateOperationsInput | Date | string usedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null } export type PasswordResetTokenUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string userId?: StringFieldUpdateOperationsInput | string tokenHash?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: DateTimeFieldUpdateOperationsInput | Date | string usedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null } export type TeamMemberCreateInput = { createdAt?: Date | string team: TeamCreateNestedOneWithoutMembersInput user: UserCreateNestedOneWithoutTeamMembershipsInput } export type TeamMemberUncheckedCreateInput = { teamId: string userId: string createdAt?: Date | string } export type TeamMemberUpdateInput = { createdAt?: DateTimeFieldUpdateOperationsInput | Date | string team?: TeamUpdateOneRequiredWithoutMembersNestedInput user?: UserUpdateOneRequiredWithoutTeamMembershipsNestedInput } export type TeamMemberUncheckedUpdateInput = { teamId?: StringFieldUpdateOperationsInput | string userId?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type TeamMemberCreateManyInput = { teamId: string userId: string createdAt?: Date | string } export type TeamMemberUpdateManyMutationInput = { createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type TeamMemberUncheckedUpdateManyInput = { teamId?: StringFieldUpdateOperationsInput | string userId?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type EventLogCreateInput = { id?: string type: string payload: string correlationId?: string | null teamId?: string | null occurredAt?: Date | string } export type EventLogUncheckedCreateInput = { id?: string type: string payload: string correlationId?: string | null teamId?: string | null occurredAt?: Date | string } export type EventLogUpdateInput = { id?: StringFieldUpdateOperationsInput | string type?: StringFieldUpdateOperationsInput | string payload?: StringFieldUpdateOperationsInput | string correlationId?: NullableStringFieldUpdateOperationsInput | string | null teamId?: NullableStringFieldUpdateOperationsInput | string | null occurredAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type EventLogUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string type?: StringFieldUpdateOperationsInput | string payload?: StringFieldUpdateOperationsInput | string correlationId?: NullableStringFieldUpdateOperationsInput | string | null teamId?: NullableStringFieldUpdateOperationsInput | string | null occurredAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type EventLogCreateManyInput = { id?: string type: string payload: string correlationId?: string | null teamId?: string | null occurredAt?: Date | string } export type EventLogUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string type?: StringFieldUpdateOperationsInput | string payload?: StringFieldUpdateOperationsInput | string correlationId?: NullableStringFieldUpdateOperationsInput | string | null teamId?: NullableStringFieldUpdateOperationsInput | string | null occurredAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type EventLogUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string type?: StringFieldUpdateOperationsInput | string payload?: StringFieldUpdateOperationsInput | string correlationId?: NullableStringFieldUpdateOperationsInput | string | null teamId?: NullableStringFieldUpdateOperationsInput | string | null occurredAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type ProjectCreateInput = { id?: string name: string teamId?: string | null createdAt?: Date | string } export type ProjectUncheckedCreateInput = { id?: string name: string teamId?: string | null createdAt?: Date | string } export type ProjectUpdateInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string teamId?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type ProjectUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string teamId?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type ProjectCreateManyInput = { id?: string name: string teamId?: string | null createdAt?: Date | string } export type ProjectUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string teamId?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type ProjectUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string teamId?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type StringFilter<$PrismaModel = never> = { equals?: string | StringFieldRefInput<$PrismaModel> in?: string[] notIn?: string[] lt?: string | StringFieldRefInput<$PrismaModel> lte?: string | StringFieldRefInput<$PrismaModel> gt?: string | StringFieldRefInput<$PrismaModel> gte?: string | StringFieldRefInput<$PrismaModel> contains?: string | StringFieldRefInput<$PrismaModel> startsWith?: string | StringFieldRefInput<$PrismaModel> endsWith?: string | StringFieldRefInput<$PrismaModel> not?: NestedStringFilter<$PrismaModel> | string } export type StringNullableFilter<$PrismaModel = never> = { equals?: string | StringFieldRefInput<$PrismaModel> | null in?: string[] | null notIn?: string[] | null lt?: string | StringFieldRefInput<$PrismaModel> lte?: string | StringFieldRefInput<$PrismaModel> gt?: string | StringFieldRefInput<$PrismaModel> gte?: string | StringFieldRefInput<$PrismaModel> contains?: string | StringFieldRefInput<$PrismaModel> startsWith?: string | StringFieldRefInput<$PrismaModel> endsWith?: string | StringFieldRefInput<$PrismaModel> not?: NestedStringNullableFilter<$PrismaModel> | string | null } export type DateTimeFilter<$PrismaModel = never> = { equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> in?: Date[] | string[] notIn?: Date[] | string[] lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> not?: NestedDateTimeFilter<$PrismaModel> | Date | string } export type SessionListRelationFilter = { every?: SessionWhereInput some?: SessionWhereInput none?: SessionWhereInput } export type SortOrderInput = { sort: SortOrder nulls?: NullsOrder } export type SessionOrderByRelationAggregateInput = { _count?: SortOrder } export type BuildCountOrderByAggregateInput = { id?: SortOrder name?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type BuildMaxOrderByAggregateInput = { id?: SortOrder name?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type BuildMinOrderByAggregateInput = { id?: SortOrder name?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type StringWithAggregatesFilter<$PrismaModel = never> = { equals?: string | StringFieldRefInput<$PrismaModel> in?: string[] notIn?: string[] lt?: string | StringFieldRefInput<$PrismaModel> lte?: string | StringFieldRefInput<$PrismaModel> gt?: string | StringFieldRefInput<$PrismaModel> gte?: string | StringFieldRefInput<$PrismaModel> contains?: string | StringFieldRefInput<$PrismaModel> startsWith?: string | StringFieldRefInput<$PrismaModel> endsWith?: string | StringFieldRefInput<$PrismaModel> not?: NestedStringWithAggregatesFilter<$PrismaModel> | string _count?: NestedIntFilter<$PrismaModel> _min?: NestedStringFilter<$PrismaModel> _max?: NestedStringFilter<$PrismaModel> } export type StringNullableWithAggregatesFilter<$PrismaModel = never> = { equals?: string | StringFieldRefInput<$PrismaModel> | null in?: string[] | null notIn?: string[] | null lt?: string | StringFieldRefInput<$PrismaModel> lte?: string | StringFieldRefInput<$PrismaModel> gt?: string | StringFieldRefInput<$PrismaModel> gte?: string | StringFieldRefInput<$PrismaModel> contains?: string | StringFieldRefInput<$PrismaModel> startsWith?: string | StringFieldRefInput<$PrismaModel> endsWith?: string | StringFieldRefInput<$PrismaModel> not?: NestedStringNullableWithAggregatesFilter<$PrismaModel> | string | null _count?: NestedIntNullableFilter<$PrismaModel> _min?: NestedStringNullableFilter<$PrismaModel> _max?: NestedStringNullableFilter<$PrismaModel> } export type DateTimeWithAggregatesFilter<$PrismaModel = never> = { equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> in?: Date[] | string[] notIn?: Date[] | string[] lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> not?: NestedDateTimeWithAggregatesFilter<$PrismaModel> | Date | string _count?: NestedIntFilter<$PrismaModel> _min?: NestedDateTimeFilter<$PrismaModel> _max?: NestedDateTimeFilter<$PrismaModel> } export type BoolFilter<$PrismaModel = never> = { equals?: boolean | BooleanFieldRefInput<$PrismaModel> not?: NestedBoolFilter<$PrismaModel> | boolean } export type DateTimeNullableFilter<$PrismaModel = never> = { equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null in?: Date[] | string[] | null notIn?: Date[] | string[] | null lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> not?: NestedDateTimeNullableFilter<$PrismaModel> | Date | string | null } export type IntNullableFilter<$PrismaModel = never> = { equals?: number | IntFieldRefInput<$PrismaModel> | null in?: number[] | null notIn?: number[] | null lt?: number | IntFieldRefInput<$PrismaModel> lte?: number | IntFieldRefInput<$PrismaModel> gt?: number | IntFieldRefInput<$PrismaModel> gte?: number | IntFieldRefInput<$PrismaModel> not?: NestedIntNullableFilter<$PrismaModel> | number | null } export type LogListRelationFilter = { every?: LogWhereInput some?: LogWhereInput none?: LogWhereInput } export type ProfilingListRelationFilter = { every?: ProfilingWhereInput some?: ProfilingWhereInput none?: ProfilingWhereInput } export type BuildNullableRelationFilter = { is?: BuildWhereInput | null isNot?: BuildWhereInput | null } export type SessionLogListRelationFilter = { every?: SessionLogWhereInput some?: SessionLogWhereInput none?: SessionLogWhereInput } export type RecordingListRelationFilter = { every?: RecordingWhereInput some?: RecordingWhereInput none?: RecordingWhereInput } export type LogOrderByRelationAggregateInput = { _count?: SortOrder } export type ProfilingOrderByRelationAggregateInput = { _count?: SortOrder } export type SessionLogOrderByRelationAggregateInput = { _count?: SortOrder } export type RecordingOrderByRelationAggregateInput = { _count?: SortOrder } export type SessionCountOrderByAggregateInput = { id?: SortOrder build_id?: SortOrder name?: SortOrder status?: SortOrder desired_capabilities?: SortOrder session_capabilities?: SortOrder node_id?: SortOrder has_live_video?: SortOrder video_recording_enabled?: SortOrder video_recording?: SortOrder startTime?: SortOrder endTime?: SortOrder failure_reason?: SortOrder is_profiling_available?: SortOrder device_info?: SortOrder device_udid?: SortOrder device_platform?: SortOrder device_version?: SortOrder device_name?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder performance_trace?: SortOrder failure_category?: SortOrder ai_analysis?: SortOrder tags?: SortOrder trace_id?: SortOrder last_heartbeat_at?: SortOrder heartbeat_pid?: SortOrder heartbeat_host?: SortOrder api_key_id?: SortOrder user_id?: SortOrder } export type SessionAvgOrderByAggregateInput = { heartbeat_pid?: SortOrder } export type SessionMaxOrderByAggregateInput = { id?: SortOrder build_id?: SortOrder name?: SortOrder status?: SortOrder desired_capabilities?: SortOrder session_capabilities?: SortOrder node_id?: SortOrder has_live_video?: SortOrder video_recording_enabled?: SortOrder video_recording?: SortOrder startTime?: SortOrder endTime?: SortOrder failure_reason?: SortOrder is_profiling_available?: SortOrder device_info?: SortOrder device_udid?: SortOrder device_platform?: SortOrder device_version?: SortOrder device_name?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder performance_trace?: SortOrder failure_category?: SortOrder ai_analysis?: SortOrder tags?: SortOrder trace_id?: SortOrder last_heartbeat_at?: SortOrder heartbeat_pid?: SortOrder heartbeat_host?: SortOrder api_key_id?: SortOrder user_id?: SortOrder } export type SessionMinOrderByAggregateInput = { id?: SortOrder build_id?: SortOrder name?: SortOrder status?: SortOrder desired_capabilities?: SortOrder session_capabilities?: SortOrder node_id?: SortOrder has_live_video?: SortOrder video_recording_enabled?: SortOrder video_recording?: SortOrder startTime?: SortOrder endTime?: SortOrder failure_reason?: SortOrder is_profiling_available?: SortOrder device_info?: SortOrder device_udid?: SortOrder device_platform?: SortOrder device_version?: SortOrder device_name?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder performance_trace?: SortOrder failure_category?: SortOrder ai_analysis?: SortOrder tags?: SortOrder trace_id?: SortOrder last_heartbeat_at?: SortOrder heartbeat_pid?: SortOrder heartbeat_host?: SortOrder api_key_id?: SortOrder user_id?: SortOrder } export type SessionSumOrderByAggregateInput = { heartbeat_pid?: SortOrder } export type BoolWithAggregatesFilter<$PrismaModel = never> = { equals?: boolean | BooleanFieldRefInput<$PrismaModel> not?: NestedBoolWithAggregatesFilter<$PrismaModel> | boolean _count?: NestedIntFilter<$PrismaModel> _min?: NestedBoolFilter<$PrismaModel> _max?: NestedBoolFilter<$PrismaModel> } export type DateTimeNullableWithAggregatesFilter<$PrismaModel = never> = { equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null in?: Date[] | string[] | null notIn?: Date[] | string[] | null lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> not?: NestedDateTimeNullableWithAggregatesFilter<$PrismaModel> | Date | string | null _count?: NestedIntNullableFilter<$PrismaModel> _min?: NestedDateTimeNullableFilter<$PrismaModel> _max?: NestedDateTimeNullableFilter<$PrismaModel> } export type IntNullableWithAggregatesFilter<$PrismaModel = never> = { equals?: number | IntFieldRefInput<$PrismaModel> | null in?: number[] | null notIn?: number[] | null lt?: number | IntFieldRefInput<$PrismaModel> lte?: number | IntFieldRefInput<$PrismaModel> gt?: number | IntFieldRefInput<$PrismaModel> gte?: number | IntFieldRefInput<$PrismaModel> not?: NestedIntNullableWithAggregatesFilter<$PrismaModel> | number | null _count?: NestedIntNullableFilter<$PrismaModel> _avg?: NestedFloatNullableFilter<$PrismaModel> _sum?: NestedIntNullableFilter<$PrismaModel> _min?: NestedIntNullableFilter<$PrismaModel> _max?: NestedIntNullableFilter<$PrismaModel> } export type BoolNullableFilter<$PrismaModel = never> = { equals?: boolean | BooleanFieldRefInput<$PrismaModel> | null not?: NestedBoolNullableFilter<$PrismaModel> | boolean | null } export type FloatNullableFilter<$PrismaModel = never> = { equals?: number | FloatFieldRefInput<$PrismaModel> | null in?: number[] | null notIn?: number[] | null lt?: number | FloatFieldRefInput<$PrismaModel> lte?: number | FloatFieldRefInput<$PrismaModel> gt?: number | FloatFieldRefInput<$PrismaModel> gte?: number | FloatFieldRefInput<$PrismaModel> not?: NestedFloatNullableFilter<$PrismaModel> | number | null } export type SessionRelationFilter = { is?: SessionWhereInput isNot?: SessionWhereInput } export type SessionLogCountOrderByAggregateInput = { id?: SortOrder session_id?: SortOrder command_name?: SortOrder url?: SortOrder method?: SortOrder title?: SortOrder subtitle?: SortOrder body?: SortOrder response?: SortOrder screenshot?: SortOrder is_success?: SortOrder is_error?: SortOrder is_healed?: SortOrder original_selector?: SortOrder healed_selector?: SortOrder healing_confidence?: SortOrder healing_tier?: SortOrder original_strategy?: SortOrder healed_strategy?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder duration?: SortOrder span_id?: SortOrder trace_id?: SortOrder } export type SessionLogAvgOrderByAggregateInput = { healing_confidence?: SortOrder duration?: SortOrder } export type SessionLogMaxOrderByAggregateInput = { id?: SortOrder session_id?: SortOrder command_name?: SortOrder url?: SortOrder method?: SortOrder title?: SortOrder subtitle?: SortOrder body?: SortOrder response?: SortOrder screenshot?: SortOrder is_success?: SortOrder is_error?: SortOrder is_healed?: SortOrder original_selector?: SortOrder healed_selector?: SortOrder healing_confidence?: SortOrder healing_tier?: SortOrder original_strategy?: SortOrder healed_strategy?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder duration?: SortOrder span_id?: SortOrder trace_id?: SortOrder } export type SessionLogMinOrderByAggregateInput = { id?: SortOrder session_id?: SortOrder command_name?: SortOrder url?: SortOrder method?: SortOrder title?: SortOrder subtitle?: SortOrder body?: SortOrder response?: SortOrder screenshot?: SortOrder is_success?: SortOrder is_error?: SortOrder is_healed?: SortOrder original_selector?: SortOrder healed_selector?: SortOrder healing_confidence?: SortOrder healing_tier?: SortOrder original_strategy?: SortOrder healed_strategy?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder duration?: SortOrder span_id?: SortOrder trace_id?: SortOrder } export type SessionLogSumOrderByAggregateInput = { healing_confidence?: SortOrder duration?: SortOrder } export type BoolNullableWithAggregatesFilter<$PrismaModel = never> = { equals?: boolean | BooleanFieldRefInput<$PrismaModel> | null not?: NestedBoolNullableWithAggregatesFilter<$PrismaModel> | boolean | null _count?: NestedIntNullableFilter<$PrismaModel> _min?: NestedBoolNullableFilter<$PrismaModel> _max?: NestedBoolNullableFilter<$PrismaModel> } export type FloatNullableWithAggregatesFilter<$PrismaModel = never> = { equals?: number | FloatFieldRefInput<$PrismaModel> | null in?: number[] | null notIn?: number[] | null lt?: number | FloatFieldRefInput<$PrismaModel> lte?: number | FloatFieldRefInput<$PrismaModel> gt?: number | FloatFieldRefInput<$PrismaModel> gte?: number | FloatFieldRefInput<$PrismaModel> not?: NestedFloatNullableWithAggregatesFilter<$PrismaModel> | number | null _count?: NestedIntNullableFilter<$PrismaModel> _avg?: NestedFloatNullableFilter<$PrismaModel> _sum?: NestedFloatNullableFilter<$PrismaModel> _min?: NestedFloatNullableFilter<$PrismaModel> _max?: NestedFloatNullableFilter<$PrismaModel> } export type LogCountOrderByAggregateInput = { id?: SortOrder session_id?: SortOrder log_type?: SortOrder message?: SortOrder timestamp?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type LogMaxOrderByAggregateInput = { id?: SortOrder session_id?: SortOrder log_type?: SortOrder message?: SortOrder timestamp?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type LogMinOrderByAggregateInput = { id?: SortOrder session_id?: SortOrder log_type?: SortOrder message?: SortOrder timestamp?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type IntFilter<$PrismaModel = never> = { equals?: number | IntFieldRefInput<$PrismaModel> in?: number[] notIn?: number[] lt?: number | IntFieldRefInput<$PrismaModel> lte?: number | IntFieldRefInput<$PrismaModel> gt?: number | IntFieldRefInput<$PrismaModel> gte?: number | IntFieldRefInput<$PrismaModel> not?: NestedIntFilter<$PrismaModel> | number } export type ProfilingCountOrderByAggregateInput = { id?: SortOrder session_id?: SortOrder cpu?: SortOrder memory?: SortOrder total_cpu_used?: SortOrder total_memory_used?: SortOrder raw_cpu_log?: SortOrder raw_memory_log?: SortOrder timestamp?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type ProfilingAvgOrderByAggregateInput = { id?: SortOrder } export type ProfilingMaxOrderByAggregateInput = { id?: SortOrder session_id?: SortOrder cpu?: SortOrder memory?: SortOrder total_cpu_used?: SortOrder total_memory_used?: SortOrder raw_cpu_log?: SortOrder raw_memory_log?: SortOrder timestamp?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type ProfilingMinOrderByAggregateInput = { id?: SortOrder session_id?: SortOrder cpu?: SortOrder memory?: SortOrder total_cpu_used?: SortOrder total_memory_used?: SortOrder raw_cpu_log?: SortOrder raw_memory_log?: SortOrder timestamp?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type ProfilingSumOrderByAggregateInput = { id?: SortOrder } export type IntWithAggregatesFilter<$PrismaModel = never> = { equals?: number | IntFieldRefInput<$PrismaModel> in?: number[] notIn?: number[] lt?: number | IntFieldRefInput<$PrismaModel> lte?: number | IntFieldRefInput<$PrismaModel> gt?: number | IntFieldRefInput<$PrismaModel> gte?: number | IntFieldRefInput<$PrismaModel> not?: NestedIntWithAggregatesFilter<$PrismaModel> | number _count?: NestedIntFilter<$PrismaModel> _avg?: NestedFloatFilter<$PrismaModel> _sum?: NestedIntFilter<$PrismaModel> _min?: NestedIntFilter<$PrismaModel> _max?: NestedIntFilter<$PrismaModel> } export type AppCountOrderByAggregateInput = { id?: SortOrder name?: SortOrder filename?: SortOrder filepath?: SortOrder mimetype?: SortOrder size?: SortOrder packageName?: SortOrder version?: SortOrder platform?: SortOrder md5?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type AppAvgOrderByAggregateInput = { size?: SortOrder } export type AppMaxOrderByAggregateInput = { id?: SortOrder name?: SortOrder filename?: SortOrder filepath?: SortOrder mimetype?: SortOrder size?: SortOrder packageName?: SortOrder version?: SortOrder platform?: SortOrder md5?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type AppMinOrderByAggregateInput = { id?: SortOrder name?: SortOrder filename?: SortOrder filepath?: SortOrder mimetype?: SortOrder size?: SortOrder packageName?: SortOrder version?: SortOrder platform?: SortOrder md5?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type AppSumOrderByAggregateInput = { size?: SortOrder } export type FloatFilter<$PrismaModel = never> = { equals?: number | FloatFieldRefInput<$PrismaModel> in?: number[] notIn?: number[] lt?: number | FloatFieldRefInput<$PrismaModel> lte?: number | FloatFieldRefInput<$PrismaModel> gt?: number | FloatFieldRefInput<$PrismaModel> gte?: number | FloatFieldRefInput<$PrismaModel> not?: NestedFloatFilter<$PrismaModel> | number } export type TeamNullableRelationFilter = { is?: TeamWhereInput | null isNot?: TeamWhereInput | null } export type DeviceUdidHostCompoundUniqueInput = { udid: string host: string } export type DeviceCountOrderByAggregateInput = { udid?: SortOrder host?: SortOrder systemPort?: SortOrder proxyPort?: SortOrder proxyHost?: SortOrder wdaLocalPort?: SortOrder name?: SortOrder state?: SortOrder sdk?: SortOrder platform?: SortOrder deviceType?: SortOrder busy?: SortOrder userBlocked?: SortOrder realDevice?: SortOrder session_id?: SortOrder offline?: SortOrder mjpegServerPort?: SortOrder lastCmdExecutedAt?: SortOrder totalUtilizationTimeMilliSec?: SortOrder sessionStartTime?: SortOrder newCommandTimeout?: SortOrder cloud?: SortOrder derivedDataPath?: SortOrder chromeDriverPath?: SortOrder capability?: SortOrder adbRemoteHost?: SortOrder adbPort?: SortOrder nodeId?: SortOrder screenWidth?: SortOrder screenHeight?: SortOrder dashboard_link?: SortOrder total_session_count?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder healthCheckError?: SortOrder healthStatus?: SortOrder lastHealthCheckAt?: SortOrder batteryLevel?: SortOrder reservationReason?: SortOrder reservedBy?: SortOrder reservedUntil?: SortOrder storageFree?: SortOrder tags?: SortOrder thermalStatus?: SortOrder sessionProgress?: SortOrder totalHealedCount?: SortOrder ip?: SortOrder cpuArchitecture?: SortOrder owningSessionId?: SortOrder lockedAt?: SortOrder teamId?: SortOrder } export type DeviceAvgOrderByAggregateInput = { systemPort?: SortOrder proxyPort?: SortOrder wdaLocalPort?: SortOrder mjpegServerPort?: SortOrder lastCmdExecutedAt?: SortOrder totalUtilizationTimeMilliSec?: SortOrder sessionStartTime?: SortOrder newCommandTimeout?: SortOrder adbPort?: SortOrder total_session_count?: SortOrder lastHealthCheckAt?: SortOrder batteryLevel?: SortOrder reservedUntil?: SortOrder totalHealedCount?: SortOrder lockedAt?: SortOrder } export type DeviceMaxOrderByAggregateInput = { udid?: SortOrder host?: SortOrder systemPort?: SortOrder proxyPort?: SortOrder proxyHost?: SortOrder wdaLocalPort?: SortOrder name?: SortOrder state?: SortOrder sdk?: SortOrder platform?: SortOrder deviceType?: SortOrder busy?: SortOrder userBlocked?: SortOrder realDevice?: SortOrder session_id?: SortOrder offline?: SortOrder mjpegServerPort?: SortOrder lastCmdExecutedAt?: SortOrder totalUtilizationTimeMilliSec?: SortOrder sessionStartTime?: SortOrder newCommandTimeout?: SortOrder cloud?: SortOrder derivedDataPath?: SortOrder chromeDriverPath?: SortOrder capability?: SortOrder adbRemoteHost?: SortOrder adbPort?: SortOrder nodeId?: SortOrder screenWidth?: SortOrder screenHeight?: SortOrder dashboard_link?: SortOrder total_session_count?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder healthCheckError?: SortOrder healthStatus?: SortOrder lastHealthCheckAt?: SortOrder batteryLevel?: SortOrder reservationReason?: SortOrder reservedBy?: SortOrder reservedUntil?: SortOrder storageFree?: SortOrder tags?: SortOrder thermalStatus?: SortOrder sessionProgress?: SortOrder totalHealedCount?: SortOrder ip?: SortOrder cpuArchitecture?: SortOrder owningSessionId?: SortOrder lockedAt?: SortOrder teamId?: SortOrder } export type DeviceMinOrderByAggregateInput = { udid?: SortOrder host?: SortOrder systemPort?: SortOrder proxyPort?: SortOrder proxyHost?: SortOrder wdaLocalPort?: SortOrder name?: SortOrder state?: SortOrder sdk?: SortOrder platform?: SortOrder deviceType?: SortOrder busy?: SortOrder userBlocked?: SortOrder realDevice?: SortOrder session_id?: SortOrder offline?: SortOrder mjpegServerPort?: SortOrder lastCmdExecutedAt?: SortOrder totalUtilizationTimeMilliSec?: SortOrder sessionStartTime?: SortOrder newCommandTimeout?: SortOrder cloud?: SortOrder derivedDataPath?: SortOrder chromeDriverPath?: SortOrder capability?: SortOrder adbRemoteHost?: SortOrder adbPort?: SortOrder nodeId?: SortOrder screenWidth?: SortOrder screenHeight?: SortOrder dashboard_link?: SortOrder total_session_count?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder healthCheckError?: SortOrder healthStatus?: SortOrder lastHealthCheckAt?: SortOrder batteryLevel?: SortOrder reservationReason?: SortOrder reservedBy?: SortOrder reservedUntil?: SortOrder storageFree?: SortOrder tags?: SortOrder thermalStatus?: SortOrder sessionProgress?: SortOrder totalHealedCount?: SortOrder ip?: SortOrder cpuArchitecture?: SortOrder owningSessionId?: SortOrder lockedAt?: SortOrder teamId?: SortOrder } export type DeviceSumOrderByAggregateInput = { systemPort?: SortOrder proxyPort?: SortOrder wdaLocalPort?: SortOrder mjpegServerPort?: SortOrder lastCmdExecutedAt?: SortOrder totalUtilizationTimeMilliSec?: SortOrder sessionStartTime?: SortOrder newCommandTimeout?: SortOrder adbPort?: SortOrder total_session_count?: SortOrder lastHealthCheckAt?: SortOrder batteryLevel?: SortOrder reservedUntil?: SortOrder totalHealedCount?: SortOrder lockedAt?: SortOrder } export type FloatWithAggregatesFilter<$PrismaModel = never> = { equals?: number | FloatFieldRefInput<$PrismaModel> in?: number[] notIn?: number[] lt?: number | FloatFieldRefInput<$PrismaModel> lte?: number | FloatFieldRefInput<$PrismaModel> gt?: number | FloatFieldRefInput<$PrismaModel> gte?: number | FloatFieldRefInput<$PrismaModel> not?: NestedFloatWithAggregatesFilter<$PrismaModel> | number _count?: NestedIntFilter<$PrismaModel> _avg?: NestedFloatFilter<$PrismaModel> _sum?: NestedFloatFilter<$PrismaModel> _min?: NestedFloatFilter<$PrismaModel> _max?: NestedFloatFilter<$PrismaModel> } export type PendingSessionCountOrderByAggregateInput = { id?: SortOrder capability_id?: SortOrder capability?: SortOrder createdAt?: SortOrder } export type PendingSessionAvgOrderByAggregateInput = { id?: SortOrder createdAt?: SortOrder } export type PendingSessionMaxOrderByAggregateInput = { id?: SortOrder capability_id?: SortOrder capability?: SortOrder createdAt?: SortOrder } export type PendingSessionMinOrderByAggregateInput = { id?: SortOrder capability_id?: SortOrder capability?: SortOrder createdAt?: SortOrder } export type PendingSessionSumOrderByAggregateInput = { id?: SortOrder createdAt?: SortOrder } export type CLIArgsCountOrderByAggregateInput = { id?: SortOrder args?: SortOrder createdAt?: SortOrder } export type CLIArgsAvgOrderByAggregateInput = { id?: SortOrder } export type CLIArgsMaxOrderByAggregateInput = { id?: SortOrder args?: SortOrder createdAt?: SortOrder } export type CLIArgsMinOrderByAggregateInput = { id?: SortOrder args?: SortOrder createdAt?: SortOrder } export type CLIArgsSumOrderByAggregateInput = { id?: SortOrder } export type WebhookConfigCountOrderByAggregateInput = { id?: SortOrder url?: SortOrder type?: SortOrder events?: SortOrder active?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder payloadTemplate?: SortOrder } export type WebhookConfigMaxOrderByAggregateInput = { id?: SortOrder url?: SortOrder type?: SortOrder events?: SortOrder active?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder payloadTemplate?: SortOrder } export type WebhookConfigMinOrderByAggregateInput = { id?: SortOrder url?: SortOrder type?: SortOrder events?: SortOrder active?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder payloadTemplate?: SortOrder } export type WebConfigCountOrderByAggregateInput = { id?: SortOrder name?: SortOrder value?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type WebConfigMaxOrderByAggregateInput = { id?: SortOrder name?: SortOrder value?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type WebConfigMinOrderByAggregateInput = { id?: SortOrder name?: SortOrder value?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type LocatorEtalonCountOrderByAggregateInput = { id?: SortOrder selector?: SortOrder strategy?: SortOrder attributes?: SortOrder nodeName?: SortOrder lastSeen?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type LocatorEtalonMaxOrderByAggregateInput = { id?: SortOrder selector?: SortOrder strategy?: SortOrder attributes?: SortOrder nodeName?: SortOrder lastSeen?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type LocatorEtalonMinOrderByAggregateInput = { id?: SortOrder selector?: SortOrder strategy?: SortOrder attributes?: SortOrder nodeName?: SortOrder lastSeen?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type PortLeaseCountOrderByAggregateInput = { port?: SortOrder purpose?: SortOrder leasedToUdid?: SortOrder leasedToHost?: SortOrder leaseId?: SortOrder leasedToPid?: SortOrder leasedAt?: SortOrder expiresAt?: SortOrder } export type PortLeaseAvgOrderByAggregateInput = { port?: SortOrder leasedToPid?: SortOrder leasedAt?: SortOrder expiresAt?: SortOrder } export type PortLeaseMaxOrderByAggregateInput = { port?: SortOrder purpose?: SortOrder leasedToUdid?: SortOrder leasedToHost?: SortOrder leaseId?: SortOrder leasedToPid?: SortOrder leasedAt?: SortOrder expiresAt?: SortOrder } export type PortLeaseMinOrderByAggregateInput = { port?: SortOrder purpose?: SortOrder leasedToUdid?: SortOrder leasedToHost?: SortOrder leaseId?: SortOrder leasedToPid?: SortOrder leasedAt?: SortOrder expiresAt?: SortOrder } export type PortLeaseSumOrderByAggregateInput = { port?: SortOrder leasedToPid?: SortOrder leasedAt?: SortOrder expiresAt?: SortOrder } export type LeaseCountOrderByAggregateInput = { id?: SortOrder tokenHash?: SortOrder deviceUdid?: SortOrder deviceHost?: SortOrder actorId?: SortOrder teamId?: SortOrder buildId?: SortOrder reason?: SortOrder status?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder heartbeatSeconds?: SortOrder lastHeartbeatAt?: SortOrder allocatedPorts?: SortOrder capabilityBag?: SortOrder } export type LeaseAvgOrderByAggregateInput = { expiresAt?: SortOrder heartbeatSeconds?: SortOrder lastHeartbeatAt?: SortOrder } export type LeaseMaxOrderByAggregateInput = { id?: SortOrder tokenHash?: SortOrder deviceUdid?: SortOrder deviceHost?: SortOrder actorId?: SortOrder teamId?: SortOrder buildId?: SortOrder reason?: SortOrder status?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder heartbeatSeconds?: SortOrder lastHeartbeatAt?: SortOrder allocatedPorts?: SortOrder capabilityBag?: SortOrder } export type LeaseMinOrderByAggregateInput = { id?: SortOrder tokenHash?: SortOrder deviceUdid?: SortOrder deviceHost?: SortOrder actorId?: SortOrder teamId?: SortOrder buildId?: SortOrder reason?: SortOrder status?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder heartbeatSeconds?: SortOrder lastHeartbeatAt?: SortOrder allocatedPorts?: SortOrder capabilityBag?: SortOrder } export type LeaseSumOrderByAggregateInput = { expiresAt?: SortOrder heartbeatSeconds?: SortOrder lastHeartbeatAt?: SortOrder } export type UserRelationFilter = { is?: UserWhereInput isNot?: UserWhereInput } export type ApiKeyCountOrderByAggregateInput = { id?: SortOrder name?: SortOrder keyHash?: SortOrder scopes?: SortOrder rateLimit?: SortOrder createdAt?: SortOrder revokedAt?: SortOrder lastUsedAt?: SortOrder expiresAt?: SortOrder teamId?: SortOrder role?: SortOrder userId?: SortOrder } export type ApiKeyAvgOrderByAggregateInput = { rateLimit?: SortOrder } export type ApiKeyMaxOrderByAggregateInput = { id?: SortOrder name?: SortOrder keyHash?: SortOrder scopes?: SortOrder rateLimit?: SortOrder createdAt?: SortOrder revokedAt?: SortOrder lastUsedAt?: SortOrder expiresAt?: SortOrder teamId?: SortOrder role?: SortOrder userId?: SortOrder } export type ApiKeyMinOrderByAggregateInput = { id?: SortOrder name?: SortOrder keyHash?: SortOrder scopes?: SortOrder rateLimit?: SortOrder createdAt?: SortOrder revokedAt?: SortOrder lastUsedAt?: SortOrder expiresAt?: SortOrder teamId?: SortOrder role?: SortOrder userId?: SortOrder } export type ApiKeySumOrderByAggregateInput = { rateLimit?: SortOrder } export type DeviceListRelationFilter = { every?: DeviceWhereInput some?: DeviceWhereInput none?: DeviceWhereInput } export type ApiKeyListRelationFilter = { every?: ApiKeyWhereInput some?: ApiKeyWhereInput none?: ApiKeyWhereInput } export type TeamMemberListRelationFilter = { every?: TeamMemberWhereInput some?: TeamMemberWhereInput none?: TeamMemberWhereInput } export type DeviceOrderByRelationAggregateInput = { _count?: SortOrder } export type ApiKeyOrderByRelationAggregateInput = { _count?: SortOrder } export type TeamMemberOrderByRelationAggregateInput = { _count?: SortOrder } export type TeamCountOrderByAggregateInput = { id?: SortOrder name?: SortOrder createdAt?: SortOrder } export type TeamMaxOrderByAggregateInput = { id?: SortOrder name?: SortOrder createdAt?: SortOrder } export type TeamMinOrderByAggregateInput = { id?: SortOrder name?: SortOrder createdAt?: SortOrder } export type SelectorStateOriginal_strategyOriginal_selectorCompoundUniqueInput = { original_strategy: string original_selector: string } export type SelectorStateCountOrderByAggregateInput = { id?: SortOrder original_strategy?: SortOrder original_selector?: SortOrder status?: SortOrder fixed_at?: SortOrder fixed_by_api_key?: SortOrder resolved_at?: SortOrder muted_at?: SortOrder muted_by_api_key?: SortOrder regression_count?: SortOrder clean_builds_count?: SortOrder last_event_at?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type SelectorStateAvgOrderByAggregateInput = { regression_count?: SortOrder clean_builds_count?: SortOrder } export type SelectorStateMaxOrderByAggregateInput = { id?: SortOrder original_strategy?: SortOrder original_selector?: SortOrder status?: SortOrder fixed_at?: SortOrder fixed_by_api_key?: SortOrder resolved_at?: SortOrder muted_at?: SortOrder muted_by_api_key?: SortOrder regression_count?: SortOrder clean_builds_count?: SortOrder last_event_at?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type SelectorStateMinOrderByAggregateInput = { id?: SortOrder original_strategy?: SortOrder original_selector?: SortOrder status?: SortOrder fixed_at?: SortOrder fixed_by_api_key?: SortOrder resolved_at?: SortOrder muted_at?: SortOrder muted_by_api_key?: SortOrder regression_count?: SortOrder clean_builds_count?: SortOrder last_event_at?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder } export type SelectorStateSumOrderByAggregateInput = { regression_count?: SortOrder clean_builds_count?: SortOrder } export type BookmarkListRelationFilter = { every?: BookmarkWhereInput some?: BookmarkWhereInput none?: BookmarkWhereInput } export type AnnotationListRelationFilter = { every?: AnnotationWhereInput some?: AnnotationWhereInput none?: AnnotationWhereInput } export type SessionNullableRelationFilter = { is?: SessionWhereInput | null isNot?: SessionWhereInput | null } export type BookmarkOrderByRelationAggregateInput = { _count?: SortOrder } export type AnnotationOrderByRelationAggregateInput = { _count?: SortOrder } export type RecordingCountOrderByAggregateInput = { id?: SortOrder group_id?: SortOrder device_udid?: SortOrder device_host?: SortOrder session_id?: SortOrder started_at?: SortOrder ended_at?: SortOrder status?: SortOrder file_path?: SortOrder duration_ms?: SortOrder size_bytes?: SortOrder device_snapshot?: SortOrder fail_reason?: SortOrder } export type RecordingAvgOrderByAggregateInput = { duration_ms?: SortOrder size_bytes?: SortOrder } export type RecordingMaxOrderByAggregateInput = { id?: SortOrder group_id?: SortOrder device_udid?: SortOrder device_host?: SortOrder session_id?: SortOrder started_at?: SortOrder ended_at?: SortOrder status?: SortOrder file_path?: SortOrder duration_ms?: SortOrder size_bytes?: SortOrder device_snapshot?: SortOrder fail_reason?: SortOrder } export type RecordingMinOrderByAggregateInput = { id?: SortOrder group_id?: SortOrder device_udid?: SortOrder device_host?: SortOrder session_id?: SortOrder started_at?: SortOrder ended_at?: SortOrder status?: SortOrder file_path?: SortOrder duration_ms?: SortOrder size_bytes?: SortOrder device_snapshot?: SortOrder fail_reason?: SortOrder } export type RecordingSumOrderByAggregateInput = { duration_ms?: SortOrder size_bytes?: SortOrder } export type RecordingRelationFilter = { is?: RecordingWhereInput isNot?: RecordingWhereInput } export type BookmarkCountOrderByAggregateInput = { id?: SortOrder recording_id?: SortOrder timecode_ms?: SortOrder label?: SortOrder note?: SortOrder created_at?: SortOrder } export type BookmarkAvgOrderByAggregateInput = { timecode_ms?: SortOrder } export type BookmarkMaxOrderByAggregateInput = { id?: SortOrder recording_id?: SortOrder timecode_ms?: SortOrder label?: SortOrder note?: SortOrder created_at?: SortOrder } export type BookmarkMinOrderByAggregateInput = { id?: SortOrder recording_id?: SortOrder timecode_ms?: SortOrder label?: SortOrder note?: SortOrder created_at?: SortOrder } export type BookmarkSumOrderByAggregateInput = { timecode_ms?: SortOrder } export type AnnotationCountOrderByAggregateInput = { id?: SortOrder recording_id?: SortOrder timecode_ms?: SortOrder shape?: SortOrder geometry?: SortOrder color?: SortOrder text?: SortOrder author?: SortOrder created_at?: SortOrder } export type AnnotationAvgOrderByAggregateInput = { timecode_ms?: SortOrder } export type AnnotationMaxOrderByAggregateInput = { id?: SortOrder recording_id?: SortOrder timecode_ms?: SortOrder shape?: SortOrder geometry?: SortOrder color?: SortOrder text?: SortOrder author?: SortOrder created_at?: SortOrder } export type AnnotationMinOrderByAggregateInput = { id?: SortOrder recording_id?: SortOrder timecode_ms?: SortOrder shape?: SortOrder geometry?: SortOrder color?: SortOrder text?: SortOrder author?: SortOrder created_at?: SortOrder } export type AnnotationSumOrderByAggregateInput = { timecode_ms?: SortOrder } export type UserSessionListRelationFilter = { every?: UserSessionWhereInput some?: UserSessionWhereInput none?: UserSessionWhereInput } export type PasswordResetTokenListRelationFilter = { every?: PasswordResetTokenWhereInput some?: PasswordResetTokenWhereInput none?: PasswordResetTokenWhereInput } export type UserSessionOrderByRelationAggregateInput = { _count?: SortOrder } export type PasswordResetTokenOrderByRelationAggregateInput = { _count?: SortOrder } export type UserCountOrderByAggregateInput = { id?: SortOrder email?: SortOrder name?: SortOrder passwordHash?: SortOrder accessKey?: SortOrder role?: SortOrder status?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder lastLoginAt?: SortOrder passwordChangedAt?: SortOrder } export type UserMaxOrderByAggregateInput = { id?: SortOrder email?: SortOrder name?: SortOrder passwordHash?: SortOrder accessKey?: SortOrder role?: SortOrder status?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder lastLoginAt?: SortOrder passwordChangedAt?: SortOrder } export type UserMinOrderByAggregateInput = { id?: SortOrder email?: SortOrder name?: SortOrder passwordHash?: SortOrder accessKey?: SortOrder role?: SortOrder status?: SortOrder createdAt?: SortOrder updatedAt?: SortOrder lastLoginAt?: SortOrder passwordChangedAt?: SortOrder } export type UserSessionCountOrderByAggregateInput = { id?: SortOrder userId?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder lastSeenAt?: SortOrder userAgent?: SortOrder ipHash?: SortOrder } export type UserSessionMaxOrderByAggregateInput = { id?: SortOrder userId?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder lastSeenAt?: SortOrder userAgent?: SortOrder ipHash?: SortOrder } export type UserSessionMinOrderByAggregateInput = { id?: SortOrder userId?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder lastSeenAt?: SortOrder userAgent?: SortOrder ipHash?: SortOrder } export type PasswordResetTokenCountOrderByAggregateInput = { id?: SortOrder userId?: SortOrder tokenHash?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder usedAt?: SortOrder } export type PasswordResetTokenMaxOrderByAggregateInput = { id?: SortOrder userId?: SortOrder tokenHash?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder usedAt?: SortOrder } export type PasswordResetTokenMinOrderByAggregateInput = { id?: SortOrder userId?: SortOrder tokenHash?: SortOrder createdAt?: SortOrder expiresAt?: SortOrder usedAt?: SortOrder } export type TeamRelationFilter = { is?: TeamWhereInput isNot?: TeamWhereInput } export type TeamMemberTeamIdUserIdCompoundUniqueInput = { teamId: string userId: string } export type TeamMemberCountOrderByAggregateInput = { teamId?: SortOrder userId?: SortOrder createdAt?: SortOrder } export type TeamMemberMaxOrderByAggregateInput = { teamId?: SortOrder userId?: SortOrder createdAt?: SortOrder } export type TeamMemberMinOrderByAggregateInput = { teamId?: SortOrder userId?: SortOrder createdAt?: SortOrder } export type EventLogCountOrderByAggregateInput = { id?: SortOrder type?: SortOrder payload?: SortOrder correlationId?: SortOrder teamId?: SortOrder occurredAt?: SortOrder } export type EventLogMaxOrderByAggregateInput = { id?: SortOrder type?: SortOrder payload?: SortOrder correlationId?: SortOrder teamId?: SortOrder occurredAt?: SortOrder } export type EventLogMinOrderByAggregateInput = { id?: SortOrder type?: SortOrder payload?: SortOrder correlationId?: SortOrder teamId?: SortOrder occurredAt?: SortOrder } export type ProjectCountOrderByAggregateInput = { id?: SortOrder name?: SortOrder teamId?: SortOrder createdAt?: SortOrder } export type ProjectMaxOrderByAggregateInput = { id?: SortOrder name?: SortOrder teamId?: SortOrder createdAt?: SortOrder } export type ProjectMinOrderByAggregateInput = { id?: SortOrder name?: SortOrder teamId?: SortOrder createdAt?: SortOrder } export type SessionCreateNestedManyWithoutBuildInput = { create?: XOR | SessionCreateWithoutBuildInput[] | SessionUncheckedCreateWithoutBuildInput[] connectOrCreate?: SessionCreateOrConnectWithoutBuildInput | SessionCreateOrConnectWithoutBuildInput[] createMany?: SessionCreateManyBuildInputEnvelope connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[] } export type SessionUncheckedCreateNestedManyWithoutBuildInput = { create?: XOR | SessionCreateWithoutBuildInput[] | SessionUncheckedCreateWithoutBuildInput[] connectOrCreate?: SessionCreateOrConnectWithoutBuildInput | SessionCreateOrConnectWithoutBuildInput[] createMany?: SessionCreateManyBuildInputEnvelope connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[] } export type StringFieldUpdateOperationsInput = { set?: string } export type NullableStringFieldUpdateOperationsInput = { set?: string | null } export type DateTimeFieldUpdateOperationsInput = { set?: Date | string } export type SessionUpdateManyWithoutBuildNestedInput = { create?: XOR | SessionCreateWithoutBuildInput[] | SessionUncheckedCreateWithoutBuildInput[] connectOrCreate?: SessionCreateOrConnectWithoutBuildInput | SessionCreateOrConnectWithoutBuildInput[] upsert?: SessionUpsertWithWhereUniqueWithoutBuildInput | SessionUpsertWithWhereUniqueWithoutBuildInput[] createMany?: SessionCreateManyBuildInputEnvelope set?: SessionWhereUniqueInput | SessionWhereUniqueInput[] disconnect?: SessionWhereUniqueInput | SessionWhereUniqueInput[] delete?: SessionWhereUniqueInput | SessionWhereUniqueInput[] connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[] update?: SessionUpdateWithWhereUniqueWithoutBuildInput | SessionUpdateWithWhereUniqueWithoutBuildInput[] updateMany?: SessionUpdateManyWithWhereWithoutBuildInput | SessionUpdateManyWithWhereWithoutBuildInput[] deleteMany?: SessionScalarWhereInput | SessionScalarWhereInput[] } export type SessionUncheckedUpdateManyWithoutBuildNestedInput = { create?: XOR | SessionCreateWithoutBuildInput[] | SessionUncheckedCreateWithoutBuildInput[] connectOrCreate?: SessionCreateOrConnectWithoutBuildInput | SessionCreateOrConnectWithoutBuildInput[] upsert?: SessionUpsertWithWhereUniqueWithoutBuildInput | SessionUpsertWithWhereUniqueWithoutBuildInput[] createMany?: SessionCreateManyBuildInputEnvelope set?: SessionWhereUniqueInput | SessionWhereUniqueInput[] disconnect?: SessionWhereUniqueInput | SessionWhereUniqueInput[] delete?: SessionWhereUniqueInput | SessionWhereUniqueInput[] connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[] update?: SessionUpdateWithWhereUniqueWithoutBuildInput | SessionUpdateWithWhereUniqueWithoutBuildInput[] updateMany?: SessionUpdateManyWithWhereWithoutBuildInput | SessionUpdateManyWithWhereWithoutBuildInput[] deleteMany?: SessionScalarWhereInput | SessionScalarWhereInput[] } export type LogCreateNestedManyWithoutSessionInput = { create?: XOR | LogCreateWithoutSessionInput[] | LogUncheckedCreateWithoutSessionInput[] connectOrCreate?: LogCreateOrConnectWithoutSessionInput | LogCreateOrConnectWithoutSessionInput[] createMany?: LogCreateManySessionInputEnvelope connect?: LogWhereUniqueInput | LogWhereUniqueInput[] } export type ProfilingCreateNestedManyWithoutSessionInput = { create?: XOR | ProfilingCreateWithoutSessionInput[] | ProfilingUncheckedCreateWithoutSessionInput[] connectOrCreate?: ProfilingCreateOrConnectWithoutSessionInput | ProfilingCreateOrConnectWithoutSessionInput[] createMany?: ProfilingCreateManySessionInputEnvelope connect?: ProfilingWhereUniqueInput | ProfilingWhereUniqueInput[] } export type BuildCreateNestedOneWithoutSessionsInput = { create?: XOR connectOrCreate?: BuildCreateOrConnectWithoutSessionsInput connect?: BuildWhereUniqueInput } export type SessionLogCreateNestedManyWithoutSessionInput = { create?: XOR | SessionLogCreateWithoutSessionInput[] | SessionLogUncheckedCreateWithoutSessionInput[] connectOrCreate?: SessionLogCreateOrConnectWithoutSessionInput | SessionLogCreateOrConnectWithoutSessionInput[] createMany?: SessionLogCreateManySessionInputEnvelope connect?: SessionLogWhereUniqueInput | SessionLogWhereUniqueInput[] } export type RecordingCreateNestedManyWithoutSessionInput = { create?: XOR | RecordingCreateWithoutSessionInput[] | RecordingUncheckedCreateWithoutSessionInput[] connectOrCreate?: RecordingCreateOrConnectWithoutSessionInput | RecordingCreateOrConnectWithoutSessionInput[] createMany?: RecordingCreateManySessionInputEnvelope connect?: RecordingWhereUniqueInput | RecordingWhereUniqueInput[] } export type LogUncheckedCreateNestedManyWithoutSessionInput = { create?: XOR | LogCreateWithoutSessionInput[] | LogUncheckedCreateWithoutSessionInput[] connectOrCreate?: LogCreateOrConnectWithoutSessionInput | LogCreateOrConnectWithoutSessionInput[] createMany?: LogCreateManySessionInputEnvelope connect?: LogWhereUniqueInput | LogWhereUniqueInput[] } export type ProfilingUncheckedCreateNestedManyWithoutSessionInput = { create?: XOR | ProfilingCreateWithoutSessionInput[] | ProfilingUncheckedCreateWithoutSessionInput[] connectOrCreate?: ProfilingCreateOrConnectWithoutSessionInput | ProfilingCreateOrConnectWithoutSessionInput[] createMany?: ProfilingCreateManySessionInputEnvelope connect?: ProfilingWhereUniqueInput | ProfilingWhereUniqueInput[] } export type SessionLogUncheckedCreateNestedManyWithoutSessionInput = { create?: XOR | SessionLogCreateWithoutSessionInput[] | SessionLogUncheckedCreateWithoutSessionInput[] connectOrCreate?: SessionLogCreateOrConnectWithoutSessionInput | SessionLogCreateOrConnectWithoutSessionInput[] createMany?: SessionLogCreateManySessionInputEnvelope connect?: SessionLogWhereUniqueInput | SessionLogWhereUniqueInput[] } export type RecordingUncheckedCreateNestedManyWithoutSessionInput = { create?: XOR | RecordingCreateWithoutSessionInput[] | RecordingUncheckedCreateWithoutSessionInput[] connectOrCreate?: RecordingCreateOrConnectWithoutSessionInput | RecordingCreateOrConnectWithoutSessionInput[] createMany?: RecordingCreateManySessionInputEnvelope connect?: RecordingWhereUniqueInput | RecordingWhereUniqueInput[] } export type BoolFieldUpdateOperationsInput = { set?: boolean } export type NullableDateTimeFieldUpdateOperationsInput = { set?: Date | string | null } export type NullableIntFieldUpdateOperationsInput = { set?: number | null increment?: number decrement?: number multiply?: number divide?: number } export type LogUpdateManyWithoutSessionNestedInput = { create?: XOR | LogCreateWithoutSessionInput[] | LogUncheckedCreateWithoutSessionInput[] connectOrCreate?: LogCreateOrConnectWithoutSessionInput | LogCreateOrConnectWithoutSessionInput[] upsert?: LogUpsertWithWhereUniqueWithoutSessionInput | LogUpsertWithWhereUniqueWithoutSessionInput[] createMany?: LogCreateManySessionInputEnvelope set?: LogWhereUniqueInput | LogWhereUniqueInput[] disconnect?: LogWhereUniqueInput | LogWhereUniqueInput[] delete?: LogWhereUniqueInput | LogWhereUniqueInput[] connect?: LogWhereUniqueInput | LogWhereUniqueInput[] update?: LogUpdateWithWhereUniqueWithoutSessionInput | LogUpdateWithWhereUniqueWithoutSessionInput[] updateMany?: LogUpdateManyWithWhereWithoutSessionInput | LogUpdateManyWithWhereWithoutSessionInput[] deleteMany?: LogScalarWhereInput | LogScalarWhereInput[] } export type ProfilingUpdateManyWithoutSessionNestedInput = { create?: XOR | ProfilingCreateWithoutSessionInput[] | ProfilingUncheckedCreateWithoutSessionInput[] connectOrCreate?: ProfilingCreateOrConnectWithoutSessionInput | ProfilingCreateOrConnectWithoutSessionInput[] upsert?: ProfilingUpsertWithWhereUniqueWithoutSessionInput | ProfilingUpsertWithWhereUniqueWithoutSessionInput[] createMany?: ProfilingCreateManySessionInputEnvelope set?: ProfilingWhereUniqueInput | ProfilingWhereUniqueInput[] disconnect?: ProfilingWhereUniqueInput | ProfilingWhereUniqueInput[] delete?: ProfilingWhereUniqueInput | ProfilingWhereUniqueInput[] connect?: ProfilingWhereUniqueInput | ProfilingWhereUniqueInput[] update?: ProfilingUpdateWithWhereUniqueWithoutSessionInput | ProfilingUpdateWithWhereUniqueWithoutSessionInput[] updateMany?: ProfilingUpdateManyWithWhereWithoutSessionInput | ProfilingUpdateManyWithWhereWithoutSessionInput[] deleteMany?: ProfilingScalarWhereInput | ProfilingScalarWhereInput[] } export type BuildUpdateOneWithoutSessionsNestedInput = { create?: XOR connectOrCreate?: BuildCreateOrConnectWithoutSessionsInput upsert?: BuildUpsertWithoutSessionsInput disconnect?: BuildWhereInput | boolean delete?: BuildWhereInput | boolean connect?: BuildWhereUniqueInput update?: XOR, BuildUncheckedUpdateWithoutSessionsInput> } export type SessionLogUpdateManyWithoutSessionNestedInput = { create?: XOR | SessionLogCreateWithoutSessionInput[] | SessionLogUncheckedCreateWithoutSessionInput[] connectOrCreate?: SessionLogCreateOrConnectWithoutSessionInput | SessionLogCreateOrConnectWithoutSessionInput[] upsert?: SessionLogUpsertWithWhereUniqueWithoutSessionInput | SessionLogUpsertWithWhereUniqueWithoutSessionInput[] createMany?: SessionLogCreateManySessionInputEnvelope set?: SessionLogWhereUniqueInput | SessionLogWhereUniqueInput[] disconnect?: SessionLogWhereUniqueInput | SessionLogWhereUniqueInput[] delete?: SessionLogWhereUniqueInput | SessionLogWhereUniqueInput[] connect?: SessionLogWhereUniqueInput | SessionLogWhereUniqueInput[] update?: SessionLogUpdateWithWhereUniqueWithoutSessionInput | SessionLogUpdateWithWhereUniqueWithoutSessionInput[] updateMany?: SessionLogUpdateManyWithWhereWithoutSessionInput | SessionLogUpdateManyWithWhereWithoutSessionInput[] deleteMany?: SessionLogScalarWhereInput | SessionLogScalarWhereInput[] } export type RecordingUpdateManyWithoutSessionNestedInput = { create?: XOR | RecordingCreateWithoutSessionInput[] | RecordingUncheckedCreateWithoutSessionInput[] connectOrCreate?: RecordingCreateOrConnectWithoutSessionInput | RecordingCreateOrConnectWithoutSessionInput[] upsert?: RecordingUpsertWithWhereUniqueWithoutSessionInput | RecordingUpsertWithWhereUniqueWithoutSessionInput[] createMany?: RecordingCreateManySessionInputEnvelope set?: RecordingWhereUniqueInput | RecordingWhereUniqueInput[] disconnect?: RecordingWhereUniqueInput | RecordingWhereUniqueInput[] delete?: RecordingWhereUniqueInput | RecordingWhereUniqueInput[] connect?: RecordingWhereUniqueInput | RecordingWhereUniqueInput[] update?: RecordingUpdateWithWhereUniqueWithoutSessionInput | RecordingUpdateWithWhereUniqueWithoutSessionInput[] updateMany?: RecordingUpdateManyWithWhereWithoutSessionInput | RecordingUpdateManyWithWhereWithoutSessionInput[] deleteMany?: RecordingScalarWhereInput | RecordingScalarWhereInput[] } export type LogUncheckedUpdateManyWithoutSessionNestedInput = { create?: XOR | LogCreateWithoutSessionInput[] | LogUncheckedCreateWithoutSessionInput[] connectOrCreate?: LogCreateOrConnectWithoutSessionInput | LogCreateOrConnectWithoutSessionInput[] upsert?: LogUpsertWithWhereUniqueWithoutSessionInput | LogUpsertWithWhereUniqueWithoutSessionInput[] createMany?: LogCreateManySessionInputEnvelope set?: LogWhereUniqueInput | LogWhereUniqueInput[] disconnect?: LogWhereUniqueInput | LogWhereUniqueInput[] delete?: LogWhereUniqueInput | LogWhereUniqueInput[] connect?: LogWhereUniqueInput | LogWhereUniqueInput[] update?: LogUpdateWithWhereUniqueWithoutSessionInput | LogUpdateWithWhereUniqueWithoutSessionInput[] updateMany?: LogUpdateManyWithWhereWithoutSessionInput | LogUpdateManyWithWhereWithoutSessionInput[] deleteMany?: LogScalarWhereInput | LogScalarWhereInput[] } export type ProfilingUncheckedUpdateManyWithoutSessionNestedInput = { create?: XOR | ProfilingCreateWithoutSessionInput[] | ProfilingUncheckedCreateWithoutSessionInput[] connectOrCreate?: ProfilingCreateOrConnectWithoutSessionInput | ProfilingCreateOrConnectWithoutSessionInput[] upsert?: ProfilingUpsertWithWhereUniqueWithoutSessionInput | ProfilingUpsertWithWhereUniqueWithoutSessionInput[] createMany?: ProfilingCreateManySessionInputEnvelope set?: ProfilingWhereUniqueInput | ProfilingWhereUniqueInput[] disconnect?: ProfilingWhereUniqueInput | ProfilingWhereUniqueInput[] delete?: ProfilingWhereUniqueInput | ProfilingWhereUniqueInput[] connect?: ProfilingWhereUniqueInput | ProfilingWhereUniqueInput[] update?: ProfilingUpdateWithWhereUniqueWithoutSessionInput | ProfilingUpdateWithWhereUniqueWithoutSessionInput[] updateMany?: ProfilingUpdateManyWithWhereWithoutSessionInput | ProfilingUpdateManyWithWhereWithoutSessionInput[] deleteMany?: ProfilingScalarWhereInput | ProfilingScalarWhereInput[] } export type SessionLogUncheckedUpdateManyWithoutSessionNestedInput = { create?: XOR | SessionLogCreateWithoutSessionInput[] | SessionLogUncheckedCreateWithoutSessionInput[] connectOrCreate?: SessionLogCreateOrConnectWithoutSessionInput | SessionLogCreateOrConnectWithoutSessionInput[] upsert?: SessionLogUpsertWithWhereUniqueWithoutSessionInput | SessionLogUpsertWithWhereUniqueWithoutSessionInput[] createMany?: SessionLogCreateManySessionInputEnvelope set?: SessionLogWhereUniqueInput | SessionLogWhereUniqueInput[] disconnect?: SessionLogWhereUniqueInput | SessionLogWhereUniqueInput[] delete?: SessionLogWhereUniqueInput | SessionLogWhereUniqueInput[] connect?: SessionLogWhereUniqueInput | SessionLogWhereUniqueInput[] update?: SessionLogUpdateWithWhereUniqueWithoutSessionInput | SessionLogUpdateWithWhereUniqueWithoutSessionInput[] updateMany?: SessionLogUpdateManyWithWhereWithoutSessionInput | SessionLogUpdateManyWithWhereWithoutSessionInput[] deleteMany?: SessionLogScalarWhereInput | SessionLogScalarWhereInput[] } export type RecordingUncheckedUpdateManyWithoutSessionNestedInput = { create?: XOR | RecordingCreateWithoutSessionInput[] | RecordingUncheckedCreateWithoutSessionInput[] connectOrCreate?: RecordingCreateOrConnectWithoutSessionInput | RecordingCreateOrConnectWithoutSessionInput[] upsert?: RecordingUpsertWithWhereUniqueWithoutSessionInput | RecordingUpsertWithWhereUniqueWithoutSessionInput[] createMany?: RecordingCreateManySessionInputEnvelope set?: RecordingWhereUniqueInput | RecordingWhereUniqueInput[] disconnect?: RecordingWhereUniqueInput | RecordingWhereUniqueInput[] delete?: RecordingWhereUniqueInput | RecordingWhereUniqueInput[] connect?: RecordingWhereUniqueInput | RecordingWhereUniqueInput[] update?: RecordingUpdateWithWhereUniqueWithoutSessionInput | RecordingUpdateWithWhereUniqueWithoutSessionInput[] updateMany?: RecordingUpdateManyWithWhereWithoutSessionInput | RecordingUpdateManyWithWhereWithoutSessionInput[] deleteMany?: RecordingScalarWhereInput | RecordingScalarWhereInput[] } export type SessionCreateNestedOneWithoutSessionLogInput = { create?: XOR connectOrCreate?: SessionCreateOrConnectWithoutSessionLogInput connect?: SessionWhereUniqueInput } export type NullableBoolFieldUpdateOperationsInput = { set?: boolean | null } export type NullableFloatFieldUpdateOperationsInput = { set?: number | null increment?: number decrement?: number multiply?: number divide?: number } export type SessionUpdateOneRequiredWithoutSessionLogNestedInput = { create?: XOR connectOrCreate?: SessionCreateOrConnectWithoutSessionLogInput upsert?: SessionUpsertWithoutSessionLogInput connect?: SessionWhereUniqueInput update?: XOR, SessionUncheckedUpdateWithoutSessionLogInput> } export type SessionCreateNestedOneWithoutLogInput = { create?: XOR connectOrCreate?: SessionCreateOrConnectWithoutLogInput connect?: SessionWhereUniqueInput } export type SessionUpdateOneRequiredWithoutLogNestedInput = { create?: XOR connectOrCreate?: SessionCreateOrConnectWithoutLogInput upsert?: SessionUpsertWithoutLogInput connect?: SessionWhereUniqueInput update?: XOR, SessionUncheckedUpdateWithoutLogInput> } export type SessionCreateNestedOneWithoutProfilingInput = { create?: XOR connectOrCreate?: SessionCreateOrConnectWithoutProfilingInput connect?: SessionWhereUniqueInput } export type SessionUpdateOneRequiredWithoutProfilingNestedInput = { create?: XOR connectOrCreate?: SessionCreateOrConnectWithoutProfilingInput upsert?: SessionUpsertWithoutProfilingInput connect?: SessionWhereUniqueInput update?: XOR, SessionUncheckedUpdateWithoutProfilingInput> } export type IntFieldUpdateOperationsInput = { set?: number increment?: number decrement?: number multiply?: number divide?: number } export type TeamCreateNestedOneWithoutDevicesInput = { create?: XOR connectOrCreate?: TeamCreateOrConnectWithoutDevicesInput connect?: TeamWhereUniqueInput } export type FloatFieldUpdateOperationsInput = { set?: number increment?: number decrement?: number multiply?: number divide?: number } export type TeamUpdateOneWithoutDevicesNestedInput = { create?: XOR connectOrCreate?: TeamCreateOrConnectWithoutDevicesInput upsert?: TeamUpsertWithoutDevicesInput disconnect?: TeamWhereInput | boolean delete?: TeamWhereInput | boolean connect?: TeamWhereUniqueInput update?: XOR, TeamUncheckedUpdateWithoutDevicesInput> } export type TeamCreateNestedOneWithoutApiKeysInput = { create?: XOR connectOrCreate?: TeamCreateOrConnectWithoutApiKeysInput connect?: TeamWhereUniqueInput } export type UserCreateNestedOneWithoutApiKeysInput = { create?: XOR connectOrCreate?: UserCreateOrConnectWithoutApiKeysInput connect?: UserWhereUniqueInput } export type TeamUpdateOneWithoutApiKeysNestedInput = { create?: XOR connectOrCreate?: TeamCreateOrConnectWithoutApiKeysInput upsert?: TeamUpsertWithoutApiKeysInput disconnect?: TeamWhereInput | boolean delete?: TeamWhereInput | boolean connect?: TeamWhereUniqueInput update?: XOR, TeamUncheckedUpdateWithoutApiKeysInput> } export type UserUpdateOneRequiredWithoutApiKeysNestedInput = { create?: XOR connectOrCreate?: UserCreateOrConnectWithoutApiKeysInput upsert?: UserUpsertWithoutApiKeysInput connect?: UserWhereUniqueInput update?: XOR, UserUncheckedUpdateWithoutApiKeysInput> } export type DeviceCreateNestedManyWithoutTeamInput = { create?: XOR | DeviceCreateWithoutTeamInput[] | DeviceUncheckedCreateWithoutTeamInput[] connectOrCreate?: DeviceCreateOrConnectWithoutTeamInput | DeviceCreateOrConnectWithoutTeamInput[] createMany?: DeviceCreateManyTeamInputEnvelope connect?: DeviceWhereUniqueInput | DeviceWhereUniqueInput[] } export type ApiKeyCreateNestedManyWithoutTeamInput = { create?: XOR | ApiKeyCreateWithoutTeamInput[] | ApiKeyUncheckedCreateWithoutTeamInput[] connectOrCreate?: ApiKeyCreateOrConnectWithoutTeamInput | ApiKeyCreateOrConnectWithoutTeamInput[] createMany?: ApiKeyCreateManyTeamInputEnvelope connect?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] } export type TeamMemberCreateNestedManyWithoutTeamInput = { create?: XOR | TeamMemberCreateWithoutTeamInput[] | TeamMemberUncheckedCreateWithoutTeamInput[] connectOrCreate?: TeamMemberCreateOrConnectWithoutTeamInput | TeamMemberCreateOrConnectWithoutTeamInput[] createMany?: TeamMemberCreateManyTeamInputEnvelope connect?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] } export type DeviceUncheckedCreateNestedManyWithoutTeamInput = { create?: XOR | DeviceCreateWithoutTeamInput[] | DeviceUncheckedCreateWithoutTeamInput[] connectOrCreate?: DeviceCreateOrConnectWithoutTeamInput | DeviceCreateOrConnectWithoutTeamInput[] createMany?: DeviceCreateManyTeamInputEnvelope connect?: DeviceWhereUniqueInput | DeviceWhereUniqueInput[] } export type ApiKeyUncheckedCreateNestedManyWithoutTeamInput = { create?: XOR | ApiKeyCreateWithoutTeamInput[] | ApiKeyUncheckedCreateWithoutTeamInput[] connectOrCreate?: ApiKeyCreateOrConnectWithoutTeamInput | ApiKeyCreateOrConnectWithoutTeamInput[] createMany?: ApiKeyCreateManyTeamInputEnvelope connect?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] } export type TeamMemberUncheckedCreateNestedManyWithoutTeamInput = { create?: XOR | TeamMemberCreateWithoutTeamInput[] | TeamMemberUncheckedCreateWithoutTeamInput[] connectOrCreate?: TeamMemberCreateOrConnectWithoutTeamInput | TeamMemberCreateOrConnectWithoutTeamInput[] createMany?: TeamMemberCreateManyTeamInputEnvelope connect?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] } export type DeviceUpdateManyWithoutTeamNestedInput = { create?: XOR | DeviceCreateWithoutTeamInput[] | DeviceUncheckedCreateWithoutTeamInput[] connectOrCreate?: DeviceCreateOrConnectWithoutTeamInput | DeviceCreateOrConnectWithoutTeamInput[] upsert?: DeviceUpsertWithWhereUniqueWithoutTeamInput | DeviceUpsertWithWhereUniqueWithoutTeamInput[] createMany?: DeviceCreateManyTeamInputEnvelope set?: DeviceWhereUniqueInput | DeviceWhereUniqueInput[] disconnect?: DeviceWhereUniqueInput | DeviceWhereUniqueInput[] delete?: DeviceWhereUniqueInput | DeviceWhereUniqueInput[] connect?: DeviceWhereUniqueInput | DeviceWhereUniqueInput[] update?: DeviceUpdateWithWhereUniqueWithoutTeamInput | DeviceUpdateWithWhereUniqueWithoutTeamInput[] updateMany?: DeviceUpdateManyWithWhereWithoutTeamInput | DeviceUpdateManyWithWhereWithoutTeamInput[] deleteMany?: DeviceScalarWhereInput | DeviceScalarWhereInput[] } export type ApiKeyUpdateManyWithoutTeamNestedInput = { create?: XOR | ApiKeyCreateWithoutTeamInput[] | ApiKeyUncheckedCreateWithoutTeamInput[] connectOrCreate?: ApiKeyCreateOrConnectWithoutTeamInput | ApiKeyCreateOrConnectWithoutTeamInput[] upsert?: ApiKeyUpsertWithWhereUniqueWithoutTeamInput | ApiKeyUpsertWithWhereUniqueWithoutTeamInput[] createMany?: ApiKeyCreateManyTeamInputEnvelope set?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] disconnect?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] delete?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] connect?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] update?: ApiKeyUpdateWithWhereUniqueWithoutTeamInput | ApiKeyUpdateWithWhereUniqueWithoutTeamInput[] updateMany?: ApiKeyUpdateManyWithWhereWithoutTeamInput | ApiKeyUpdateManyWithWhereWithoutTeamInput[] deleteMany?: ApiKeyScalarWhereInput | ApiKeyScalarWhereInput[] } export type TeamMemberUpdateManyWithoutTeamNestedInput = { create?: XOR | TeamMemberCreateWithoutTeamInput[] | TeamMemberUncheckedCreateWithoutTeamInput[] connectOrCreate?: TeamMemberCreateOrConnectWithoutTeamInput | TeamMemberCreateOrConnectWithoutTeamInput[] upsert?: TeamMemberUpsertWithWhereUniqueWithoutTeamInput | TeamMemberUpsertWithWhereUniqueWithoutTeamInput[] createMany?: TeamMemberCreateManyTeamInputEnvelope set?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] disconnect?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] delete?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] connect?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] update?: TeamMemberUpdateWithWhereUniqueWithoutTeamInput | TeamMemberUpdateWithWhereUniqueWithoutTeamInput[] updateMany?: TeamMemberUpdateManyWithWhereWithoutTeamInput | TeamMemberUpdateManyWithWhereWithoutTeamInput[] deleteMany?: TeamMemberScalarWhereInput | TeamMemberScalarWhereInput[] } export type DeviceUncheckedUpdateManyWithoutTeamNestedInput = { create?: XOR | DeviceCreateWithoutTeamInput[] | DeviceUncheckedCreateWithoutTeamInput[] connectOrCreate?: DeviceCreateOrConnectWithoutTeamInput | DeviceCreateOrConnectWithoutTeamInput[] upsert?: DeviceUpsertWithWhereUniqueWithoutTeamInput | DeviceUpsertWithWhereUniqueWithoutTeamInput[] createMany?: DeviceCreateManyTeamInputEnvelope set?: DeviceWhereUniqueInput | DeviceWhereUniqueInput[] disconnect?: DeviceWhereUniqueInput | DeviceWhereUniqueInput[] delete?: DeviceWhereUniqueInput | DeviceWhereUniqueInput[] connect?: DeviceWhereUniqueInput | DeviceWhereUniqueInput[] update?: DeviceUpdateWithWhereUniqueWithoutTeamInput | DeviceUpdateWithWhereUniqueWithoutTeamInput[] updateMany?: DeviceUpdateManyWithWhereWithoutTeamInput | DeviceUpdateManyWithWhereWithoutTeamInput[] deleteMany?: DeviceScalarWhereInput | DeviceScalarWhereInput[] } export type ApiKeyUncheckedUpdateManyWithoutTeamNestedInput = { create?: XOR | ApiKeyCreateWithoutTeamInput[] | ApiKeyUncheckedCreateWithoutTeamInput[] connectOrCreate?: ApiKeyCreateOrConnectWithoutTeamInput | ApiKeyCreateOrConnectWithoutTeamInput[] upsert?: ApiKeyUpsertWithWhereUniqueWithoutTeamInput | ApiKeyUpsertWithWhereUniqueWithoutTeamInput[] createMany?: ApiKeyCreateManyTeamInputEnvelope set?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] disconnect?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] delete?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] connect?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] update?: ApiKeyUpdateWithWhereUniqueWithoutTeamInput | ApiKeyUpdateWithWhereUniqueWithoutTeamInput[] updateMany?: ApiKeyUpdateManyWithWhereWithoutTeamInput | ApiKeyUpdateManyWithWhereWithoutTeamInput[] deleteMany?: ApiKeyScalarWhereInput | ApiKeyScalarWhereInput[] } export type TeamMemberUncheckedUpdateManyWithoutTeamNestedInput = { create?: XOR | TeamMemberCreateWithoutTeamInput[] | TeamMemberUncheckedCreateWithoutTeamInput[] connectOrCreate?: TeamMemberCreateOrConnectWithoutTeamInput | TeamMemberCreateOrConnectWithoutTeamInput[] upsert?: TeamMemberUpsertWithWhereUniqueWithoutTeamInput | TeamMemberUpsertWithWhereUniqueWithoutTeamInput[] createMany?: TeamMemberCreateManyTeamInputEnvelope set?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] disconnect?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] delete?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] connect?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] update?: TeamMemberUpdateWithWhereUniqueWithoutTeamInput | TeamMemberUpdateWithWhereUniqueWithoutTeamInput[] updateMany?: TeamMemberUpdateManyWithWhereWithoutTeamInput | TeamMemberUpdateManyWithWhereWithoutTeamInput[] deleteMany?: TeamMemberScalarWhereInput | TeamMemberScalarWhereInput[] } export type BookmarkCreateNestedManyWithoutRecordingInput = { create?: XOR | BookmarkCreateWithoutRecordingInput[] | BookmarkUncheckedCreateWithoutRecordingInput[] connectOrCreate?: BookmarkCreateOrConnectWithoutRecordingInput | BookmarkCreateOrConnectWithoutRecordingInput[] createMany?: BookmarkCreateManyRecordingInputEnvelope connect?: BookmarkWhereUniqueInput | BookmarkWhereUniqueInput[] } export type AnnotationCreateNestedManyWithoutRecordingInput = { create?: XOR | AnnotationCreateWithoutRecordingInput[] | AnnotationUncheckedCreateWithoutRecordingInput[] connectOrCreate?: AnnotationCreateOrConnectWithoutRecordingInput | AnnotationCreateOrConnectWithoutRecordingInput[] createMany?: AnnotationCreateManyRecordingInputEnvelope connect?: AnnotationWhereUniqueInput | AnnotationWhereUniqueInput[] } export type SessionCreateNestedOneWithoutRecordingInput = { create?: XOR connectOrCreate?: SessionCreateOrConnectWithoutRecordingInput connect?: SessionWhereUniqueInput } export type BookmarkUncheckedCreateNestedManyWithoutRecordingInput = { create?: XOR | BookmarkCreateWithoutRecordingInput[] | BookmarkUncheckedCreateWithoutRecordingInput[] connectOrCreate?: BookmarkCreateOrConnectWithoutRecordingInput | BookmarkCreateOrConnectWithoutRecordingInput[] createMany?: BookmarkCreateManyRecordingInputEnvelope connect?: BookmarkWhereUniqueInput | BookmarkWhereUniqueInput[] } export type AnnotationUncheckedCreateNestedManyWithoutRecordingInput = { create?: XOR | AnnotationCreateWithoutRecordingInput[] | AnnotationUncheckedCreateWithoutRecordingInput[] connectOrCreate?: AnnotationCreateOrConnectWithoutRecordingInput | AnnotationCreateOrConnectWithoutRecordingInput[] createMany?: AnnotationCreateManyRecordingInputEnvelope connect?: AnnotationWhereUniqueInput | AnnotationWhereUniqueInput[] } export type BookmarkUpdateManyWithoutRecordingNestedInput = { create?: XOR | BookmarkCreateWithoutRecordingInput[] | BookmarkUncheckedCreateWithoutRecordingInput[] connectOrCreate?: BookmarkCreateOrConnectWithoutRecordingInput | BookmarkCreateOrConnectWithoutRecordingInput[] upsert?: BookmarkUpsertWithWhereUniqueWithoutRecordingInput | BookmarkUpsertWithWhereUniqueWithoutRecordingInput[] createMany?: BookmarkCreateManyRecordingInputEnvelope set?: BookmarkWhereUniqueInput | BookmarkWhereUniqueInput[] disconnect?: BookmarkWhereUniqueInput | BookmarkWhereUniqueInput[] delete?: BookmarkWhereUniqueInput | BookmarkWhereUniqueInput[] connect?: BookmarkWhereUniqueInput | BookmarkWhereUniqueInput[] update?: BookmarkUpdateWithWhereUniqueWithoutRecordingInput | BookmarkUpdateWithWhereUniqueWithoutRecordingInput[] updateMany?: BookmarkUpdateManyWithWhereWithoutRecordingInput | BookmarkUpdateManyWithWhereWithoutRecordingInput[] deleteMany?: BookmarkScalarWhereInput | BookmarkScalarWhereInput[] } export type AnnotationUpdateManyWithoutRecordingNestedInput = { create?: XOR | AnnotationCreateWithoutRecordingInput[] | AnnotationUncheckedCreateWithoutRecordingInput[] connectOrCreate?: AnnotationCreateOrConnectWithoutRecordingInput | AnnotationCreateOrConnectWithoutRecordingInput[] upsert?: AnnotationUpsertWithWhereUniqueWithoutRecordingInput | AnnotationUpsertWithWhereUniqueWithoutRecordingInput[] createMany?: AnnotationCreateManyRecordingInputEnvelope set?: AnnotationWhereUniqueInput | AnnotationWhereUniqueInput[] disconnect?: AnnotationWhereUniqueInput | AnnotationWhereUniqueInput[] delete?: AnnotationWhereUniqueInput | AnnotationWhereUniqueInput[] connect?: AnnotationWhereUniqueInput | AnnotationWhereUniqueInput[] update?: AnnotationUpdateWithWhereUniqueWithoutRecordingInput | AnnotationUpdateWithWhereUniqueWithoutRecordingInput[] updateMany?: AnnotationUpdateManyWithWhereWithoutRecordingInput | AnnotationUpdateManyWithWhereWithoutRecordingInput[] deleteMany?: AnnotationScalarWhereInput | AnnotationScalarWhereInput[] } export type SessionUpdateOneWithoutRecordingNestedInput = { create?: XOR connectOrCreate?: SessionCreateOrConnectWithoutRecordingInput upsert?: SessionUpsertWithoutRecordingInput disconnect?: SessionWhereInput | boolean delete?: SessionWhereInput | boolean connect?: SessionWhereUniqueInput update?: XOR, SessionUncheckedUpdateWithoutRecordingInput> } export type BookmarkUncheckedUpdateManyWithoutRecordingNestedInput = { create?: XOR | BookmarkCreateWithoutRecordingInput[] | BookmarkUncheckedCreateWithoutRecordingInput[] connectOrCreate?: BookmarkCreateOrConnectWithoutRecordingInput | BookmarkCreateOrConnectWithoutRecordingInput[] upsert?: BookmarkUpsertWithWhereUniqueWithoutRecordingInput | BookmarkUpsertWithWhereUniqueWithoutRecordingInput[] createMany?: BookmarkCreateManyRecordingInputEnvelope set?: BookmarkWhereUniqueInput | BookmarkWhereUniqueInput[] disconnect?: BookmarkWhereUniqueInput | BookmarkWhereUniqueInput[] delete?: BookmarkWhereUniqueInput | BookmarkWhereUniqueInput[] connect?: BookmarkWhereUniqueInput | BookmarkWhereUniqueInput[] update?: BookmarkUpdateWithWhereUniqueWithoutRecordingInput | BookmarkUpdateWithWhereUniqueWithoutRecordingInput[] updateMany?: BookmarkUpdateManyWithWhereWithoutRecordingInput | BookmarkUpdateManyWithWhereWithoutRecordingInput[] deleteMany?: BookmarkScalarWhereInput | BookmarkScalarWhereInput[] } export type AnnotationUncheckedUpdateManyWithoutRecordingNestedInput = { create?: XOR | AnnotationCreateWithoutRecordingInput[] | AnnotationUncheckedCreateWithoutRecordingInput[] connectOrCreate?: AnnotationCreateOrConnectWithoutRecordingInput | AnnotationCreateOrConnectWithoutRecordingInput[] upsert?: AnnotationUpsertWithWhereUniqueWithoutRecordingInput | AnnotationUpsertWithWhereUniqueWithoutRecordingInput[] createMany?: AnnotationCreateManyRecordingInputEnvelope set?: AnnotationWhereUniqueInput | AnnotationWhereUniqueInput[] disconnect?: AnnotationWhereUniqueInput | AnnotationWhereUniqueInput[] delete?: AnnotationWhereUniqueInput | AnnotationWhereUniqueInput[] connect?: AnnotationWhereUniqueInput | AnnotationWhereUniqueInput[] update?: AnnotationUpdateWithWhereUniqueWithoutRecordingInput | AnnotationUpdateWithWhereUniqueWithoutRecordingInput[] updateMany?: AnnotationUpdateManyWithWhereWithoutRecordingInput | AnnotationUpdateManyWithWhereWithoutRecordingInput[] deleteMany?: AnnotationScalarWhereInput | AnnotationScalarWhereInput[] } export type RecordingCreateNestedOneWithoutBookmarksInput = { create?: XOR connectOrCreate?: RecordingCreateOrConnectWithoutBookmarksInput connect?: RecordingWhereUniqueInput } export type RecordingUpdateOneRequiredWithoutBookmarksNestedInput = { create?: XOR connectOrCreate?: RecordingCreateOrConnectWithoutBookmarksInput upsert?: RecordingUpsertWithoutBookmarksInput connect?: RecordingWhereUniqueInput update?: XOR, RecordingUncheckedUpdateWithoutBookmarksInput> } export type RecordingCreateNestedOneWithoutAnnotationsInput = { create?: XOR connectOrCreate?: RecordingCreateOrConnectWithoutAnnotationsInput connect?: RecordingWhereUniqueInput } export type RecordingUpdateOneRequiredWithoutAnnotationsNestedInput = { create?: XOR connectOrCreate?: RecordingCreateOrConnectWithoutAnnotationsInput upsert?: RecordingUpsertWithoutAnnotationsInput connect?: RecordingWhereUniqueInput update?: XOR, RecordingUncheckedUpdateWithoutAnnotationsInput> } export type ApiKeyCreateNestedManyWithoutUserInput = { create?: XOR | ApiKeyCreateWithoutUserInput[] | ApiKeyUncheckedCreateWithoutUserInput[] connectOrCreate?: ApiKeyCreateOrConnectWithoutUserInput | ApiKeyCreateOrConnectWithoutUserInput[] createMany?: ApiKeyCreateManyUserInputEnvelope connect?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] } export type UserSessionCreateNestedManyWithoutUserInput = { create?: XOR | UserSessionCreateWithoutUserInput[] | UserSessionUncheckedCreateWithoutUserInput[] connectOrCreate?: UserSessionCreateOrConnectWithoutUserInput | UserSessionCreateOrConnectWithoutUserInput[] createMany?: UserSessionCreateManyUserInputEnvelope connect?: UserSessionWhereUniqueInput | UserSessionWhereUniqueInput[] } export type PasswordResetTokenCreateNestedManyWithoutUserInput = { create?: XOR | PasswordResetTokenCreateWithoutUserInput[] | PasswordResetTokenUncheckedCreateWithoutUserInput[] connectOrCreate?: PasswordResetTokenCreateOrConnectWithoutUserInput | PasswordResetTokenCreateOrConnectWithoutUserInput[] createMany?: PasswordResetTokenCreateManyUserInputEnvelope connect?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[] } export type TeamMemberCreateNestedManyWithoutUserInput = { create?: XOR | TeamMemberCreateWithoutUserInput[] | TeamMemberUncheckedCreateWithoutUserInput[] connectOrCreate?: TeamMemberCreateOrConnectWithoutUserInput | TeamMemberCreateOrConnectWithoutUserInput[] createMany?: TeamMemberCreateManyUserInputEnvelope connect?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] } export type ApiKeyUncheckedCreateNestedManyWithoutUserInput = { create?: XOR | ApiKeyCreateWithoutUserInput[] | ApiKeyUncheckedCreateWithoutUserInput[] connectOrCreate?: ApiKeyCreateOrConnectWithoutUserInput | ApiKeyCreateOrConnectWithoutUserInput[] createMany?: ApiKeyCreateManyUserInputEnvelope connect?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] } export type UserSessionUncheckedCreateNestedManyWithoutUserInput = { create?: XOR | UserSessionCreateWithoutUserInput[] | UserSessionUncheckedCreateWithoutUserInput[] connectOrCreate?: UserSessionCreateOrConnectWithoutUserInput | UserSessionCreateOrConnectWithoutUserInput[] createMany?: UserSessionCreateManyUserInputEnvelope connect?: UserSessionWhereUniqueInput | UserSessionWhereUniqueInput[] } export type PasswordResetTokenUncheckedCreateNestedManyWithoutUserInput = { create?: XOR | PasswordResetTokenCreateWithoutUserInput[] | PasswordResetTokenUncheckedCreateWithoutUserInput[] connectOrCreate?: PasswordResetTokenCreateOrConnectWithoutUserInput | PasswordResetTokenCreateOrConnectWithoutUserInput[] createMany?: PasswordResetTokenCreateManyUserInputEnvelope connect?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[] } export type TeamMemberUncheckedCreateNestedManyWithoutUserInput = { create?: XOR | TeamMemberCreateWithoutUserInput[] | TeamMemberUncheckedCreateWithoutUserInput[] connectOrCreate?: TeamMemberCreateOrConnectWithoutUserInput | TeamMemberCreateOrConnectWithoutUserInput[] createMany?: TeamMemberCreateManyUserInputEnvelope connect?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] } export type ApiKeyUpdateManyWithoutUserNestedInput = { create?: XOR | ApiKeyCreateWithoutUserInput[] | ApiKeyUncheckedCreateWithoutUserInput[] connectOrCreate?: ApiKeyCreateOrConnectWithoutUserInput | ApiKeyCreateOrConnectWithoutUserInput[] upsert?: ApiKeyUpsertWithWhereUniqueWithoutUserInput | ApiKeyUpsertWithWhereUniqueWithoutUserInput[] createMany?: ApiKeyCreateManyUserInputEnvelope set?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] disconnect?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] delete?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] connect?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] update?: ApiKeyUpdateWithWhereUniqueWithoutUserInput | ApiKeyUpdateWithWhereUniqueWithoutUserInput[] updateMany?: ApiKeyUpdateManyWithWhereWithoutUserInput | ApiKeyUpdateManyWithWhereWithoutUserInput[] deleteMany?: ApiKeyScalarWhereInput | ApiKeyScalarWhereInput[] } export type UserSessionUpdateManyWithoutUserNestedInput = { create?: XOR | UserSessionCreateWithoutUserInput[] | UserSessionUncheckedCreateWithoutUserInput[] connectOrCreate?: UserSessionCreateOrConnectWithoutUserInput | UserSessionCreateOrConnectWithoutUserInput[] upsert?: UserSessionUpsertWithWhereUniqueWithoutUserInput | UserSessionUpsertWithWhereUniqueWithoutUserInput[] createMany?: UserSessionCreateManyUserInputEnvelope set?: UserSessionWhereUniqueInput | UserSessionWhereUniqueInput[] disconnect?: UserSessionWhereUniqueInput | UserSessionWhereUniqueInput[] delete?: UserSessionWhereUniqueInput | UserSessionWhereUniqueInput[] connect?: UserSessionWhereUniqueInput | UserSessionWhereUniqueInput[] update?: UserSessionUpdateWithWhereUniqueWithoutUserInput | UserSessionUpdateWithWhereUniqueWithoutUserInput[] updateMany?: UserSessionUpdateManyWithWhereWithoutUserInput | UserSessionUpdateManyWithWhereWithoutUserInput[] deleteMany?: UserSessionScalarWhereInput | UserSessionScalarWhereInput[] } export type PasswordResetTokenUpdateManyWithoutUserNestedInput = { create?: XOR | PasswordResetTokenCreateWithoutUserInput[] | PasswordResetTokenUncheckedCreateWithoutUserInput[] connectOrCreate?: PasswordResetTokenCreateOrConnectWithoutUserInput | PasswordResetTokenCreateOrConnectWithoutUserInput[] upsert?: PasswordResetTokenUpsertWithWhereUniqueWithoutUserInput | PasswordResetTokenUpsertWithWhereUniqueWithoutUserInput[] createMany?: PasswordResetTokenCreateManyUserInputEnvelope set?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[] disconnect?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[] delete?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[] connect?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[] update?: PasswordResetTokenUpdateWithWhereUniqueWithoutUserInput | PasswordResetTokenUpdateWithWhereUniqueWithoutUserInput[] updateMany?: PasswordResetTokenUpdateManyWithWhereWithoutUserInput | PasswordResetTokenUpdateManyWithWhereWithoutUserInput[] deleteMany?: PasswordResetTokenScalarWhereInput | PasswordResetTokenScalarWhereInput[] } export type TeamMemberUpdateManyWithoutUserNestedInput = { create?: XOR | TeamMemberCreateWithoutUserInput[] | TeamMemberUncheckedCreateWithoutUserInput[] connectOrCreate?: TeamMemberCreateOrConnectWithoutUserInput | TeamMemberCreateOrConnectWithoutUserInput[] upsert?: TeamMemberUpsertWithWhereUniqueWithoutUserInput | TeamMemberUpsertWithWhereUniqueWithoutUserInput[] createMany?: TeamMemberCreateManyUserInputEnvelope set?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] disconnect?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] delete?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] connect?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] update?: TeamMemberUpdateWithWhereUniqueWithoutUserInput | TeamMemberUpdateWithWhereUniqueWithoutUserInput[] updateMany?: TeamMemberUpdateManyWithWhereWithoutUserInput | TeamMemberUpdateManyWithWhereWithoutUserInput[] deleteMany?: TeamMemberScalarWhereInput | TeamMemberScalarWhereInput[] } export type ApiKeyUncheckedUpdateManyWithoutUserNestedInput = { create?: XOR | ApiKeyCreateWithoutUserInput[] | ApiKeyUncheckedCreateWithoutUserInput[] connectOrCreate?: ApiKeyCreateOrConnectWithoutUserInput | ApiKeyCreateOrConnectWithoutUserInput[] upsert?: ApiKeyUpsertWithWhereUniqueWithoutUserInput | ApiKeyUpsertWithWhereUniqueWithoutUserInput[] createMany?: ApiKeyCreateManyUserInputEnvelope set?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] disconnect?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] delete?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] connect?: ApiKeyWhereUniqueInput | ApiKeyWhereUniqueInput[] update?: ApiKeyUpdateWithWhereUniqueWithoutUserInput | ApiKeyUpdateWithWhereUniqueWithoutUserInput[] updateMany?: ApiKeyUpdateManyWithWhereWithoutUserInput | ApiKeyUpdateManyWithWhereWithoutUserInput[] deleteMany?: ApiKeyScalarWhereInput | ApiKeyScalarWhereInput[] } export type UserSessionUncheckedUpdateManyWithoutUserNestedInput = { create?: XOR | UserSessionCreateWithoutUserInput[] | UserSessionUncheckedCreateWithoutUserInput[] connectOrCreate?: UserSessionCreateOrConnectWithoutUserInput | UserSessionCreateOrConnectWithoutUserInput[] upsert?: UserSessionUpsertWithWhereUniqueWithoutUserInput | UserSessionUpsertWithWhereUniqueWithoutUserInput[] createMany?: UserSessionCreateManyUserInputEnvelope set?: UserSessionWhereUniqueInput | UserSessionWhereUniqueInput[] disconnect?: UserSessionWhereUniqueInput | UserSessionWhereUniqueInput[] delete?: UserSessionWhereUniqueInput | UserSessionWhereUniqueInput[] connect?: UserSessionWhereUniqueInput | UserSessionWhereUniqueInput[] update?: UserSessionUpdateWithWhereUniqueWithoutUserInput | UserSessionUpdateWithWhereUniqueWithoutUserInput[] updateMany?: UserSessionUpdateManyWithWhereWithoutUserInput | UserSessionUpdateManyWithWhereWithoutUserInput[] deleteMany?: UserSessionScalarWhereInput | UserSessionScalarWhereInput[] } export type PasswordResetTokenUncheckedUpdateManyWithoutUserNestedInput = { create?: XOR | PasswordResetTokenCreateWithoutUserInput[] | PasswordResetTokenUncheckedCreateWithoutUserInput[] connectOrCreate?: PasswordResetTokenCreateOrConnectWithoutUserInput | PasswordResetTokenCreateOrConnectWithoutUserInput[] upsert?: PasswordResetTokenUpsertWithWhereUniqueWithoutUserInput | PasswordResetTokenUpsertWithWhereUniqueWithoutUserInput[] createMany?: PasswordResetTokenCreateManyUserInputEnvelope set?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[] disconnect?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[] delete?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[] connect?: PasswordResetTokenWhereUniqueInput | PasswordResetTokenWhereUniqueInput[] update?: PasswordResetTokenUpdateWithWhereUniqueWithoutUserInput | PasswordResetTokenUpdateWithWhereUniqueWithoutUserInput[] updateMany?: PasswordResetTokenUpdateManyWithWhereWithoutUserInput | PasswordResetTokenUpdateManyWithWhereWithoutUserInput[] deleteMany?: PasswordResetTokenScalarWhereInput | PasswordResetTokenScalarWhereInput[] } export type TeamMemberUncheckedUpdateManyWithoutUserNestedInput = { create?: XOR | TeamMemberCreateWithoutUserInput[] | TeamMemberUncheckedCreateWithoutUserInput[] connectOrCreate?: TeamMemberCreateOrConnectWithoutUserInput | TeamMemberCreateOrConnectWithoutUserInput[] upsert?: TeamMemberUpsertWithWhereUniqueWithoutUserInput | TeamMemberUpsertWithWhereUniqueWithoutUserInput[] createMany?: TeamMemberCreateManyUserInputEnvelope set?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] disconnect?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] delete?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] connect?: TeamMemberWhereUniqueInput | TeamMemberWhereUniqueInput[] update?: TeamMemberUpdateWithWhereUniqueWithoutUserInput | TeamMemberUpdateWithWhereUniqueWithoutUserInput[] updateMany?: TeamMemberUpdateManyWithWhereWithoutUserInput | TeamMemberUpdateManyWithWhereWithoutUserInput[] deleteMany?: TeamMemberScalarWhereInput | TeamMemberScalarWhereInput[] } export type UserCreateNestedOneWithoutSessionsInput = { create?: XOR connectOrCreate?: UserCreateOrConnectWithoutSessionsInput connect?: UserWhereUniqueInput } export type UserUpdateOneRequiredWithoutSessionsNestedInput = { create?: XOR connectOrCreate?: UserCreateOrConnectWithoutSessionsInput upsert?: UserUpsertWithoutSessionsInput connect?: UserWhereUniqueInput update?: XOR, UserUncheckedUpdateWithoutSessionsInput> } export type UserCreateNestedOneWithoutPasswordResetTokensInput = { create?: XOR connectOrCreate?: UserCreateOrConnectWithoutPasswordResetTokensInput connect?: UserWhereUniqueInput } export type UserUpdateOneRequiredWithoutPasswordResetTokensNestedInput = { create?: XOR connectOrCreate?: UserCreateOrConnectWithoutPasswordResetTokensInput upsert?: UserUpsertWithoutPasswordResetTokensInput connect?: UserWhereUniqueInput update?: XOR, UserUncheckedUpdateWithoutPasswordResetTokensInput> } export type TeamCreateNestedOneWithoutMembersInput = { create?: XOR connectOrCreate?: TeamCreateOrConnectWithoutMembersInput connect?: TeamWhereUniqueInput } export type UserCreateNestedOneWithoutTeamMembershipsInput = { create?: XOR connectOrCreate?: UserCreateOrConnectWithoutTeamMembershipsInput connect?: UserWhereUniqueInput } export type TeamUpdateOneRequiredWithoutMembersNestedInput = { create?: XOR connectOrCreate?: TeamCreateOrConnectWithoutMembersInput upsert?: TeamUpsertWithoutMembersInput connect?: TeamWhereUniqueInput update?: XOR, TeamUncheckedUpdateWithoutMembersInput> } export type UserUpdateOneRequiredWithoutTeamMembershipsNestedInput = { create?: XOR connectOrCreate?: UserCreateOrConnectWithoutTeamMembershipsInput upsert?: UserUpsertWithoutTeamMembershipsInput connect?: UserWhereUniqueInput update?: XOR, UserUncheckedUpdateWithoutTeamMembershipsInput> } export type NestedStringFilter<$PrismaModel = never> = { equals?: string | StringFieldRefInput<$PrismaModel> in?: string[] notIn?: string[] lt?: string | StringFieldRefInput<$PrismaModel> lte?: string | StringFieldRefInput<$PrismaModel> gt?: string | StringFieldRefInput<$PrismaModel> gte?: string | StringFieldRefInput<$PrismaModel> contains?: string | StringFieldRefInput<$PrismaModel> startsWith?: string | StringFieldRefInput<$PrismaModel> endsWith?: string | StringFieldRefInput<$PrismaModel> not?: NestedStringFilter<$PrismaModel> | string } export type NestedStringNullableFilter<$PrismaModel = never> = { equals?: string | StringFieldRefInput<$PrismaModel> | null in?: string[] | null notIn?: string[] | null lt?: string | StringFieldRefInput<$PrismaModel> lte?: string | StringFieldRefInput<$PrismaModel> gt?: string | StringFieldRefInput<$PrismaModel> gte?: string | StringFieldRefInput<$PrismaModel> contains?: string | StringFieldRefInput<$PrismaModel> startsWith?: string | StringFieldRefInput<$PrismaModel> endsWith?: string | StringFieldRefInput<$PrismaModel> not?: NestedStringNullableFilter<$PrismaModel> | string | null } export type NestedDateTimeFilter<$PrismaModel = never> = { equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> in?: Date[] | string[] notIn?: Date[] | string[] lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> not?: NestedDateTimeFilter<$PrismaModel> | Date | string } export type NestedStringWithAggregatesFilter<$PrismaModel = never> = { equals?: string | StringFieldRefInput<$PrismaModel> in?: string[] notIn?: string[] lt?: string | StringFieldRefInput<$PrismaModel> lte?: string | StringFieldRefInput<$PrismaModel> gt?: string | StringFieldRefInput<$PrismaModel> gte?: string | StringFieldRefInput<$PrismaModel> contains?: string | StringFieldRefInput<$PrismaModel> startsWith?: string | StringFieldRefInput<$PrismaModel> endsWith?: string | StringFieldRefInput<$PrismaModel> not?: NestedStringWithAggregatesFilter<$PrismaModel> | string _count?: NestedIntFilter<$PrismaModel> _min?: NestedStringFilter<$PrismaModel> _max?: NestedStringFilter<$PrismaModel> } export type NestedIntFilter<$PrismaModel = never> = { equals?: number | IntFieldRefInput<$PrismaModel> in?: number[] notIn?: number[] lt?: number | IntFieldRefInput<$PrismaModel> lte?: number | IntFieldRefInput<$PrismaModel> gt?: number | IntFieldRefInput<$PrismaModel> gte?: number | IntFieldRefInput<$PrismaModel> not?: NestedIntFilter<$PrismaModel> | number } export type NestedStringNullableWithAggregatesFilter<$PrismaModel = never> = { equals?: string | StringFieldRefInput<$PrismaModel> | null in?: string[] | null notIn?: string[] | null lt?: string | StringFieldRefInput<$PrismaModel> lte?: string | StringFieldRefInput<$PrismaModel> gt?: string | StringFieldRefInput<$PrismaModel> gte?: string | StringFieldRefInput<$PrismaModel> contains?: string | StringFieldRefInput<$PrismaModel> startsWith?: string | StringFieldRefInput<$PrismaModel> endsWith?: string | StringFieldRefInput<$PrismaModel> not?: NestedStringNullableWithAggregatesFilter<$PrismaModel> | string | null _count?: NestedIntNullableFilter<$PrismaModel> _min?: NestedStringNullableFilter<$PrismaModel> _max?: NestedStringNullableFilter<$PrismaModel> } export type NestedIntNullableFilter<$PrismaModel = never> = { equals?: number | IntFieldRefInput<$PrismaModel> | null in?: number[] | null notIn?: number[] | null lt?: number | IntFieldRefInput<$PrismaModel> lte?: number | IntFieldRefInput<$PrismaModel> gt?: number | IntFieldRefInput<$PrismaModel> gte?: number | IntFieldRefInput<$PrismaModel> not?: NestedIntNullableFilter<$PrismaModel> | number | null } export type NestedDateTimeWithAggregatesFilter<$PrismaModel = never> = { equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> in?: Date[] | string[] notIn?: Date[] | string[] lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> not?: NestedDateTimeWithAggregatesFilter<$PrismaModel> | Date | string _count?: NestedIntFilter<$PrismaModel> _min?: NestedDateTimeFilter<$PrismaModel> _max?: NestedDateTimeFilter<$PrismaModel> } export type NestedBoolFilter<$PrismaModel = never> = { equals?: boolean | BooleanFieldRefInput<$PrismaModel> not?: NestedBoolFilter<$PrismaModel> | boolean } export type NestedDateTimeNullableFilter<$PrismaModel = never> = { equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null in?: Date[] | string[] | null notIn?: Date[] | string[] | null lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> not?: NestedDateTimeNullableFilter<$PrismaModel> | Date | string | null } export type NestedBoolWithAggregatesFilter<$PrismaModel = never> = { equals?: boolean | BooleanFieldRefInput<$PrismaModel> not?: NestedBoolWithAggregatesFilter<$PrismaModel> | boolean _count?: NestedIntFilter<$PrismaModel> _min?: NestedBoolFilter<$PrismaModel> _max?: NestedBoolFilter<$PrismaModel> } export type NestedDateTimeNullableWithAggregatesFilter<$PrismaModel = never> = { equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null in?: Date[] | string[] | null notIn?: Date[] | string[] | null lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> not?: NestedDateTimeNullableWithAggregatesFilter<$PrismaModel> | Date | string | null _count?: NestedIntNullableFilter<$PrismaModel> _min?: NestedDateTimeNullableFilter<$PrismaModel> _max?: NestedDateTimeNullableFilter<$PrismaModel> } export type NestedIntNullableWithAggregatesFilter<$PrismaModel = never> = { equals?: number | IntFieldRefInput<$PrismaModel> | null in?: number[] | null notIn?: number[] | null lt?: number | IntFieldRefInput<$PrismaModel> lte?: number | IntFieldRefInput<$PrismaModel> gt?: number | IntFieldRefInput<$PrismaModel> gte?: number | IntFieldRefInput<$PrismaModel> not?: NestedIntNullableWithAggregatesFilter<$PrismaModel> | number | null _count?: NestedIntNullableFilter<$PrismaModel> _avg?: NestedFloatNullableFilter<$PrismaModel> _sum?: NestedIntNullableFilter<$PrismaModel> _min?: NestedIntNullableFilter<$PrismaModel> _max?: NestedIntNullableFilter<$PrismaModel> } export type NestedFloatNullableFilter<$PrismaModel = never> = { equals?: number | FloatFieldRefInput<$PrismaModel> | null in?: number[] | null notIn?: number[] | null lt?: number | FloatFieldRefInput<$PrismaModel> lte?: number | FloatFieldRefInput<$PrismaModel> gt?: number | FloatFieldRefInput<$PrismaModel> gte?: number | FloatFieldRefInput<$PrismaModel> not?: NestedFloatNullableFilter<$PrismaModel> | number | null } export type NestedBoolNullableFilter<$PrismaModel = never> = { equals?: boolean | BooleanFieldRefInput<$PrismaModel> | null not?: NestedBoolNullableFilter<$PrismaModel> | boolean | null } export type NestedBoolNullableWithAggregatesFilter<$PrismaModel = never> = { equals?: boolean | BooleanFieldRefInput<$PrismaModel> | null not?: NestedBoolNullableWithAggregatesFilter<$PrismaModel> | boolean | null _count?: NestedIntNullableFilter<$PrismaModel> _min?: NestedBoolNullableFilter<$PrismaModel> _max?: NestedBoolNullableFilter<$PrismaModel> } export type NestedFloatNullableWithAggregatesFilter<$PrismaModel = never> = { equals?: number | FloatFieldRefInput<$PrismaModel> | null in?: number[] | null notIn?: number[] | null lt?: number | FloatFieldRefInput<$PrismaModel> lte?: number | FloatFieldRefInput<$PrismaModel> gt?: number | FloatFieldRefInput<$PrismaModel> gte?: number | FloatFieldRefInput<$PrismaModel> not?: NestedFloatNullableWithAggregatesFilter<$PrismaModel> | number | null _count?: NestedIntNullableFilter<$PrismaModel> _avg?: NestedFloatNullableFilter<$PrismaModel> _sum?: NestedFloatNullableFilter<$PrismaModel> _min?: NestedFloatNullableFilter<$PrismaModel> _max?: NestedFloatNullableFilter<$PrismaModel> } export type NestedIntWithAggregatesFilter<$PrismaModel = never> = { equals?: number | IntFieldRefInput<$PrismaModel> in?: number[] notIn?: number[] lt?: number | IntFieldRefInput<$PrismaModel> lte?: number | IntFieldRefInput<$PrismaModel> gt?: number | IntFieldRefInput<$PrismaModel> gte?: number | IntFieldRefInput<$PrismaModel> not?: NestedIntWithAggregatesFilter<$PrismaModel> | number _count?: NestedIntFilter<$PrismaModel> _avg?: NestedFloatFilter<$PrismaModel> _sum?: NestedIntFilter<$PrismaModel> _min?: NestedIntFilter<$PrismaModel> _max?: NestedIntFilter<$PrismaModel> } export type NestedFloatFilter<$PrismaModel = never> = { equals?: number | FloatFieldRefInput<$PrismaModel> in?: number[] notIn?: number[] lt?: number | FloatFieldRefInput<$PrismaModel> lte?: number | FloatFieldRefInput<$PrismaModel> gt?: number | FloatFieldRefInput<$PrismaModel> gte?: number | FloatFieldRefInput<$PrismaModel> not?: NestedFloatFilter<$PrismaModel> | number } export type NestedFloatWithAggregatesFilter<$PrismaModel = never> = { equals?: number | FloatFieldRefInput<$PrismaModel> in?: number[] notIn?: number[] lt?: number | FloatFieldRefInput<$PrismaModel> lte?: number | FloatFieldRefInput<$PrismaModel> gt?: number | FloatFieldRefInput<$PrismaModel> gte?: number | FloatFieldRefInput<$PrismaModel> not?: NestedFloatWithAggregatesFilter<$PrismaModel> | number _count?: NestedIntFilter<$PrismaModel> _avg?: NestedFloatFilter<$PrismaModel> _sum?: NestedFloatFilter<$PrismaModel> _min?: NestedFloatFilter<$PrismaModel> _max?: NestedFloatFilter<$PrismaModel> } export type SessionCreateWithoutBuildInput = { id: string name?: string | null status?: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled?: boolean video_recording?: string | null startTime?: Date | string endTime?: Date | string | null failure_reason?: string | null is_profiling_available?: boolean device_info?: string | null device_udid: string device_platform: string device_version: string device_name?: string | null createdAt?: Date | string updatedAt?: Date | string performance_trace?: string | null failure_category?: string | null ai_analysis?: string | null tags?: string | null trace_id?: string | null last_heartbeat_at?: Date | string | null heartbeat_pid?: number | null heartbeat_host?: string | null api_key_id?: string | null user_id?: string | null Log?: LogCreateNestedManyWithoutSessionInput Profiling?: ProfilingCreateNestedManyWithoutSessionInput SessionLog?: SessionLogCreateNestedManyWithoutSessionInput Recording?: RecordingCreateNestedManyWithoutSessionInput } export type SessionUncheckedCreateWithoutBuildInput = { id: string name?: string | null status?: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled?: boolean video_recording?: string | null startTime?: Date | string endTime?: Date | string | null failure_reason?: string | null is_profiling_available?: boolean device_info?: string | null device_udid: string device_platform: string device_version: string device_name?: string | null createdAt?: Date | string updatedAt?: Date | string performance_trace?: string | null failure_category?: string | null ai_analysis?: string | null tags?: string | null trace_id?: string | null last_heartbeat_at?: Date | string | null heartbeat_pid?: number | null heartbeat_host?: string | null api_key_id?: string | null user_id?: string | null Log?: LogUncheckedCreateNestedManyWithoutSessionInput Profiling?: ProfilingUncheckedCreateNestedManyWithoutSessionInput SessionLog?: SessionLogUncheckedCreateNestedManyWithoutSessionInput Recording?: RecordingUncheckedCreateNestedManyWithoutSessionInput } export type SessionCreateOrConnectWithoutBuildInput = { where: SessionWhereUniqueInput create: XOR } export type SessionCreateManyBuildInputEnvelope = { data: SessionCreateManyBuildInput | SessionCreateManyBuildInput[] } export type SessionUpsertWithWhereUniqueWithoutBuildInput = { where: SessionWhereUniqueInput update: XOR create: XOR } export type SessionUpdateWithWhereUniqueWithoutBuildInput = { where: SessionWhereUniqueInput data: XOR } export type SessionUpdateManyWithWhereWithoutBuildInput = { where: SessionScalarWhereInput data: XOR } export type SessionScalarWhereInput = { AND?: SessionScalarWhereInput | SessionScalarWhereInput[] OR?: SessionScalarWhereInput[] NOT?: SessionScalarWhereInput | SessionScalarWhereInput[] id?: StringFilter<"Session"> | string build_id?: StringNullableFilter<"Session"> | string | null name?: StringNullableFilter<"Session"> | string | null status?: StringFilter<"Session"> | string desired_capabilities?: StringFilter<"Session"> | string session_capabilities?: StringFilter<"Session"> | string node_id?: StringFilter<"Session"> | string has_live_video?: BoolFilter<"Session"> | boolean video_recording_enabled?: BoolFilter<"Session"> | boolean video_recording?: StringNullableFilter<"Session"> | string | null startTime?: DateTimeFilter<"Session"> | Date | string endTime?: DateTimeNullableFilter<"Session"> | Date | string | null failure_reason?: StringNullableFilter<"Session"> | string | null is_profiling_available?: BoolFilter<"Session"> | boolean device_info?: StringNullableFilter<"Session"> | string | null device_udid?: StringFilter<"Session"> | string device_platform?: StringFilter<"Session"> | string device_version?: StringFilter<"Session"> | string device_name?: StringNullableFilter<"Session"> | string | null createdAt?: DateTimeFilter<"Session"> | Date | string updatedAt?: DateTimeFilter<"Session"> | Date | string performance_trace?: StringNullableFilter<"Session"> | string | null failure_category?: StringNullableFilter<"Session"> | string | null ai_analysis?: StringNullableFilter<"Session"> | string | null tags?: StringNullableFilter<"Session"> | string | null trace_id?: StringNullableFilter<"Session"> | string | null last_heartbeat_at?: DateTimeNullableFilter<"Session"> | Date | string | null heartbeat_pid?: IntNullableFilter<"Session"> | number | null heartbeat_host?: StringNullableFilter<"Session"> | string | null api_key_id?: StringNullableFilter<"Session"> | string | null user_id?: StringNullableFilter<"Session"> | string | null } export type LogCreateWithoutSessionInput = { id?: string log_type: string message: string timestamp?: Date | string createdAt?: Date | string updatedAt?: Date | string } export type LogUncheckedCreateWithoutSessionInput = { id?: string log_type: string message: string timestamp?: Date | string createdAt?: Date | string updatedAt?: Date | string } export type LogCreateOrConnectWithoutSessionInput = { where: LogWhereUniqueInput create: XOR } export type LogCreateManySessionInputEnvelope = { data: LogCreateManySessionInput | LogCreateManySessionInput[] } export type ProfilingCreateWithoutSessionInput = { cpu?: string | null memory?: string | null total_cpu_used?: string | null total_memory_used?: string | null raw_cpu_log?: string | null raw_memory_log?: string | null timestamp: Date | string createdAt?: Date | string updatedAt?: Date | string } export type ProfilingUncheckedCreateWithoutSessionInput = { id?: number cpu?: string | null memory?: string | null total_cpu_used?: string | null total_memory_used?: string | null raw_cpu_log?: string | null raw_memory_log?: string | null timestamp: Date | string createdAt?: Date | string updatedAt?: Date | string } export type ProfilingCreateOrConnectWithoutSessionInput = { where: ProfilingWhereUniqueInput create: XOR } export type ProfilingCreateManySessionInputEnvelope = { data: ProfilingCreateManySessionInput | ProfilingCreateManySessionInput[] } export type BuildCreateWithoutSessionsInput = { id?: string name?: string | null createdAt?: Date | string updatedAt?: Date | string } export type BuildUncheckedCreateWithoutSessionsInput = { id?: string name?: string | null createdAt?: Date | string updatedAt?: Date | string } export type BuildCreateOrConnectWithoutSessionsInput = { where: BuildWhereUniqueInput create: XOR } export type SessionLogCreateWithoutSessionInput = { id?: string command_name?: string | null url: string method: string title: string subtitle?: string | null body?: string | null response: string screenshot?: string | null is_success?: boolean | null is_error?: boolean is_healed?: boolean original_selector?: string | null healed_selector?: string | null healing_confidence?: number | null healing_tier?: string | null original_strategy?: string | null healed_strategy?: string | null createdAt?: Date | string updatedAt?: Date | string duration?: number | null span_id?: string | null trace_id?: string | null } export type SessionLogUncheckedCreateWithoutSessionInput = { id?: string command_name?: string | null url: string method: string title: string subtitle?: string | null body?: string | null response: string screenshot?: string | null is_success?: boolean | null is_error?: boolean is_healed?: boolean original_selector?: string | null healed_selector?: string | null healing_confidence?: number | null healing_tier?: string | null original_strategy?: string | null healed_strategy?: string | null createdAt?: Date | string updatedAt?: Date | string duration?: number | null span_id?: string | null trace_id?: string | null } export type SessionLogCreateOrConnectWithoutSessionInput = { where: SessionLogWhereUniqueInput create: XOR } export type SessionLogCreateManySessionInputEnvelope = { data: SessionLogCreateManySessionInput | SessionLogCreateManySessionInput[] } export type RecordingCreateWithoutSessionInput = { id?: string group_id: string device_udid: string device_host?: string started_at: Date | string ended_at?: Date | string | null status: string file_path: string duration_ms?: number | null size_bytes?: number | null device_snapshot?: string | null fail_reason?: string | null bookmarks?: BookmarkCreateNestedManyWithoutRecordingInput annotations?: AnnotationCreateNestedManyWithoutRecordingInput } export type RecordingUncheckedCreateWithoutSessionInput = { id?: string group_id: string device_udid: string device_host?: string started_at: Date | string ended_at?: Date | string | null status: string file_path: string duration_ms?: number | null size_bytes?: number | null device_snapshot?: string | null fail_reason?: string | null bookmarks?: BookmarkUncheckedCreateNestedManyWithoutRecordingInput annotations?: AnnotationUncheckedCreateNestedManyWithoutRecordingInput } export type RecordingCreateOrConnectWithoutSessionInput = { where: RecordingWhereUniqueInput create: XOR } export type RecordingCreateManySessionInputEnvelope = { data: RecordingCreateManySessionInput | RecordingCreateManySessionInput[] } export type LogUpsertWithWhereUniqueWithoutSessionInput = { where: LogWhereUniqueInput update: XOR create: XOR } export type LogUpdateWithWhereUniqueWithoutSessionInput = { where: LogWhereUniqueInput data: XOR } export type LogUpdateManyWithWhereWithoutSessionInput = { where: LogScalarWhereInput data: XOR } export type LogScalarWhereInput = { AND?: LogScalarWhereInput | LogScalarWhereInput[] OR?: LogScalarWhereInput[] NOT?: LogScalarWhereInput | LogScalarWhereInput[] id?: StringFilter<"Log"> | string session_id?: StringFilter<"Log"> | string log_type?: StringFilter<"Log"> | string message?: StringFilter<"Log"> | string timestamp?: DateTimeFilter<"Log"> | Date | string createdAt?: DateTimeFilter<"Log"> | Date | string updatedAt?: DateTimeFilter<"Log"> | Date | string } export type ProfilingUpsertWithWhereUniqueWithoutSessionInput = { where: ProfilingWhereUniqueInput update: XOR create: XOR } export type ProfilingUpdateWithWhereUniqueWithoutSessionInput = { where: ProfilingWhereUniqueInput data: XOR } export type ProfilingUpdateManyWithWhereWithoutSessionInput = { where: ProfilingScalarWhereInput data: XOR } export type ProfilingScalarWhereInput = { AND?: ProfilingScalarWhereInput | ProfilingScalarWhereInput[] OR?: ProfilingScalarWhereInput[] NOT?: ProfilingScalarWhereInput | ProfilingScalarWhereInput[] id?: IntFilter<"Profiling"> | number session_id?: StringFilter<"Profiling"> | string cpu?: StringNullableFilter<"Profiling"> | string | null memory?: StringNullableFilter<"Profiling"> | string | null total_cpu_used?: StringNullableFilter<"Profiling"> | string | null total_memory_used?: StringNullableFilter<"Profiling"> | string | null raw_cpu_log?: StringNullableFilter<"Profiling"> | string | null raw_memory_log?: StringNullableFilter<"Profiling"> | string | null timestamp?: DateTimeFilter<"Profiling"> | Date | string createdAt?: DateTimeFilter<"Profiling"> | Date | string updatedAt?: DateTimeFilter<"Profiling"> | Date | string } export type BuildUpsertWithoutSessionsInput = { update: XOR create: XOR where?: BuildWhereInput } export type BuildUpdateToOneWithWhereWithoutSessionsInput = { where?: BuildWhereInput data: XOR } export type BuildUpdateWithoutSessionsInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type BuildUncheckedUpdateWithoutSessionsInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type SessionLogUpsertWithWhereUniqueWithoutSessionInput = { where: SessionLogWhereUniqueInput update: XOR create: XOR } export type SessionLogUpdateWithWhereUniqueWithoutSessionInput = { where: SessionLogWhereUniqueInput data: XOR } export type SessionLogUpdateManyWithWhereWithoutSessionInput = { where: SessionLogScalarWhereInput data: XOR } export type SessionLogScalarWhereInput = { AND?: SessionLogScalarWhereInput | SessionLogScalarWhereInput[] OR?: SessionLogScalarWhereInput[] NOT?: SessionLogScalarWhereInput | SessionLogScalarWhereInput[] id?: StringFilter<"SessionLog"> | string session_id?: StringFilter<"SessionLog"> | string command_name?: StringNullableFilter<"SessionLog"> | string | null url?: StringFilter<"SessionLog"> | string method?: StringFilter<"SessionLog"> | string title?: StringFilter<"SessionLog"> | string subtitle?: StringNullableFilter<"SessionLog"> | string | null body?: StringNullableFilter<"SessionLog"> | string | null response?: StringFilter<"SessionLog"> | string screenshot?: StringNullableFilter<"SessionLog"> | string | null is_success?: BoolNullableFilter<"SessionLog"> | boolean | null is_error?: BoolFilter<"SessionLog"> | boolean is_healed?: BoolFilter<"SessionLog"> | boolean original_selector?: StringNullableFilter<"SessionLog"> | string | null healed_selector?: StringNullableFilter<"SessionLog"> | string | null healing_confidence?: FloatNullableFilter<"SessionLog"> | number | null healing_tier?: StringNullableFilter<"SessionLog"> | string | null original_strategy?: StringNullableFilter<"SessionLog"> | string | null healed_strategy?: StringNullableFilter<"SessionLog"> | string | null createdAt?: DateTimeFilter<"SessionLog"> | Date | string updatedAt?: DateTimeFilter<"SessionLog"> | Date | string duration?: IntNullableFilter<"SessionLog"> | number | null span_id?: StringNullableFilter<"SessionLog"> | string | null trace_id?: StringNullableFilter<"SessionLog"> | string | null } export type RecordingUpsertWithWhereUniqueWithoutSessionInput = { where: RecordingWhereUniqueInput update: XOR create: XOR } export type RecordingUpdateWithWhereUniqueWithoutSessionInput = { where: RecordingWhereUniqueInput data: XOR } export type RecordingUpdateManyWithWhereWithoutSessionInput = { where: RecordingScalarWhereInput data: XOR } export type RecordingScalarWhereInput = { AND?: RecordingScalarWhereInput | RecordingScalarWhereInput[] OR?: RecordingScalarWhereInput[] NOT?: RecordingScalarWhereInput | RecordingScalarWhereInput[] id?: StringFilter<"Recording"> | string group_id?: StringFilter<"Recording"> | string device_udid?: StringFilter<"Recording"> | string device_host?: StringFilter<"Recording"> | string session_id?: StringNullableFilter<"Recording"> | string | null started_at?: DateTimeFilter<"Recording"> | Date | string ended_at?: DateTimeNullableFilter<"Recording"> | Date | string | null status?: StringFilter<"Recording"> | string file_path?: StringFilter<"Recording"> | string duration_ms?: IntNullableFilter<"Recording"> | number | null size_bytes?: IntNullableFilter<"Recording"> | number | null device_snapshot?: StringNullableFilter<"Recording"> | string | null fail_reason?: StringNullableFilter<"Recording"> | string | null } export type SessionCreateWithoutSessionLogInput = { id: string name?: string | null status?: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled?: boolean video_recording?: string | null startTime?: Date | string endTime?: Date | string | null failure_reason?: string | null is_profiling_available?: boolean device_info?: string | null device_udid: string device_platform: string device_version: string device_name?: string | null createdAt?: Date | string updatedAt?: Date | string performance_trace?: string | null failure_category?: string | null ai_analysis?: string | null tags?: string | null trace_id?: string | null last_heartbeat_at?: Date | string | null heartbeat_pid?: number | null heartbeat_host?: string | null api_key_id?: string | null user_id?: string | null Log?: LogCreateNestedManyWithoutSessionInput Profiling?: ProfilingCreateNestedManyWithoutSessionInput build?: BuildCreateNestedOneWithoutSessionsInput Recording?: RecordingCreateNestedManyWithoutSessionInput } export type SessionUncheckedCreateWithoutSessionLogInput = { id: string build_id?: string | null name?: string | null status?: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled?: boolean video_recording?: string | null startTime?: Date | string endTime?: Date | string | null failure_reason?: string | null is_profiling_available?: boolean device_info?: string | null device_udid: string device_platform: string device_version: string device_name?: string | null createdAt?: Date | string updatedAt?: Date | string performance_trace?: string | null failure_category?: string | null ai_analysis?: string | null tags?: string | null trace_id?: string | null last_heartbeat_at?: Date | string | null heartbeat_pid?: number | null heartbeat_host?: string | null api_key_id?: string | null user_id?: string | null Log?: LogUncheckedCreateNestedManyWithoutSessionInput Profiling?: ProfilingUncheckedCreateNestedManyWithoutSessionInput Recording?: RecordingUncheckedCreateNestedManyWithoutSessionInput } export type SessionCreateOrConnectWithoutSessionLogInput = { where: SessionWhereUniqueInput create: XOR } export type SessionUpsertWithoutSessionLogInput = { update: XOR create: XOR where?: SessionWhereInput } export type SessionUpdateToOneWithWhereWithoutSessionLogInput = { where?: SessionWhereInput data: XOR } export type SessionUpdateWithoutSessionLogInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null Log?: LogUpdateManyWithoutSessionNestedInput Profiling?: ProfilingUpdateManyWithoutSessionNestedInput build?: BuildUpdateOneWithoutSessionsNestedInput Recording?: RecordingUpdateManyWithoutSessionNestedInput } export type SessionUncheckedUpdateWithoutSessionLogInput = { id?: StringFieldUpdateOperationsInput | string build_id?: NullableStringFieldUpdateOperationsInput | string | null name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null Log?: LogUncheckedUpdateManyWithoutSessionNestedInput Profiling?: ProfilingUncheckedUpdateManyWithoutSessionNestedInput Recording?: RecordingUncheckedUpdateManyWithoutSessionNestedInput } export type SessionCreateWithoutLogInput = { id: string name?: string | null status?: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled?: boolean video_recording?: string | null startTime?: Date | string endTime?: Date | string | null failure_reason?: string | null is_profiling_available?: boolean device_info?: string | null device_udid: string device_platform: string device_version: string device_name?: string | null createdAt?: Date | string updatedAt?: Date | string performance_trace?: string | null failure_category?: string | null ai_analysis?: string | null tags?: string | null trace_id?: string | null last_heartbeat_at?: Date | string | null heartbeat_pid?: number | null heartbeat_host?: string | null api_key_id?: string | null user_id?: string | null Profiling?: ProfilingCreateNestedManyWithoutSessionInput build?: BuildCreateNestedOneWithoutSessionsInput SessionLog?: SessionLogCreateNestedManyWithoutSessionInput Recording?: RecordingCreateNestedManyWithoutSessionInput } export type SessionUncheckedCreateWithoutLogInput = { id: string build_id?: string | null name?: string | null status?: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled?: boolean video_recording?: string | null startTime?: Date | string endTime?: Date | string | null failure_reason?: string | null is_profiling_available?: boolean device_info?: string | null device_udid: string device_platform: string device_version: string device_name?: string | null createdAt?: Date | string updatedAt?: Date | string performance_trace?: string | null failure_category?: string | null ai_analysis?: string | null tags?: string | null trace_id?: string | null last_heartbeat_at?: Date | string | null heartbeat_pid?: number | null heartbeat_host?: string | null api_key_id?: string | null user_id?: string | null Profiling?: ProfilingUncheckedCreateNestedManyWithoutSessionInput SessionLog?: SessionLogUncheckedCreateNestedManyWithoutSessionInput Recording?: RecordingUncheckedCreateNestedManyWithoutSessionInput } export type SessionCreateOrConnectWithoutLogInput = { where: SessionWhereUniqueInput create: XOR } export type SessionUpsertWithoutLogInput = { update: XOR create: XOR where?: SessionWhereInput } export type SessionUpdateToOneWithWhereWithoutLogInput = { where?: SessionWhereInput data: XOR } export type SessionUpdateWithoutLogInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null Profiling?: ProfilingUpdateManyWithoutSessionNestedInput build?: BuildUpdateOneWithoutSessionsNestedInput SessionLog?: SessionLogUpdateManyWithoutSessionNestedInput Recording?: RecordingUpdateManyWithoutSessionNestedInput } export type SessionUncheckedUpdateWithoutLogInput = { id?: StringFieldUpdateOperationsInput | string build_id?: NullableStringFieldUpdateOperationsInput | string | null name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null Profiling?: ProfilingUncheckedUpdateManyWithoutSessionNestedInput SessionLog?: SessionLogUncheckedUpdateManyWithoutSessionNestedInput Recording?: RecordingUncheckedUpdateManyWithoutSessionNestedInput } export type SessionCreateWithoutProfilingInput = { id: string name?: string | null status?: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled?: boolean video_recording?: string | null startTime?: Date | string endTime?: Date | string | null failure_reason?: string | null is_profiling_available?: boolean device_info?: string | null device_udid: string device_platform: string device_version: string device_name?: string | null createdAt?: Date | string updatedAt?: Date | string performance_trace?: string | null failure_category?: string | null ai_analysis?: string | null tags?: string | null trace_id?: string | null last_heartbeat_at?: Date | string | null heartbeat_pid?: number | null heartbeat_host?: string | null api_key_id?: string | null user_id?: string | null Log?: LogCreateNestedManyWithoutSessionInput build?: BuildCreateNestedOneWithoutSessionsInput SessionLog?: SessionLogCreateNestedManyWithoutSessionInput Recording?: RecordingCreateNestedManyWithoutSessionInput } export type SessionUncheckedCreateWithoutProfilingInput = { id: string build_id?: string | null name?: string | null status?: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled?: boolean video_recording?: string | null startTime?: Date | string endTime?: Date | string | null failure_reason?: string | null is_profiling_available?: boolean device_info?: string | null device_udid: string device_platform: string device_version: string device_name?: string | null createdAt?: Date | string updatedAt?: Date | string performance_trace?: string | null failure_category?: string | null ai_analysis?: string | null tags?: string | null trace_id?: string | null last_heartbeat_at?: Date | string | null heartbeat_pid?: number | null heartbeat_host?: string | null api_key_id?: string | null user_id?: string | null Log?: LogUncheckedCreateNestedManyWithoutSessionInput SessionLog?: SessionLogUncheckedCreateNestedManyWithoutSessionInput Recording?: RecordingUncheckedCreateNestedManyWithoutSessionInput } export type SessionCreateOrConnectWithoutProfilingInput = { where: SessionWhereUniqueInput create: XOR } export type SessionUpsertWithoutProfilingInput = { update: XOR create: XOR where?: SessionWhereInput } export type SessionUpdateToOneWithWhereWithoutProfilingInput = { where?: SessionWhereInput data: XOR } export type SessionUpdateWithoutProfilingInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null Log?: LogUpdateManyWithoutSessionNestedInput build?: BuildUpdateOneWithoutSessionsNestedInput SessionLog?: SessionLogUpdateManyWithoutSessionNestedInput Recording?: RecordingUpdateManyWithoutSessionNestedInput } export type SessionUncheckedUpdateWithoutProfilingInput = { id?: StringFieldUpdateOperationsInput | string build_id?: NullableStringFieldUpdateOperationsInput | string | null name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null Log?: LogUncheckedUpdateManyWithoutSessionNestedInput SessionLog?: SessionLogUncheckedUpdateManyWithoutSessionNestedInput Recording?: RecordingUncheckedUpdateManyWithoutSessionNestedInput } export type TeamCreateWithoutDevicesInput = { id?: string name: string createdAt?: Date | string apiKeys?: ApiKeyCreateNestedManyWithoutTeamInput members?: TeamMemberCreateNestedManyWithoutTeamInput } export type TeamUncheckedCreateWithoutDevicesInput = { id?: string name: string createdAt?: Date | string apiKeys?: ApiKeyUncheckedCreateNestedManyWithoutTeamInput members?: TeamMemberUncheckedCreateNestedManyWithoutTeamInput } export type TeamCreateOrConnectWithoutDevicesInput = { where: TeamWhereUniqueInput create: XOR } export type TeamUpsertWithoutDevicesInput = { update: XOR create: XOR where?: TeamWhereInput } export type TeamUpdateToOneWithWhereWithoutDevicesInput = { where?: TeamWhereInput data: XOR } export type TeamUpdateWithoutDevicesInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string apiKeys?: ApiKeyUpdateManyWithoutTeamNestedInput members?: TeamMemberUpdateManyWithoutTeamNestedInput } export type TeamUncheckedUpdateWithoutDevicesInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string apiKeys?: ApiKeyUncheckedUpdateManyWithoutTeamNestedInput members?: TeamMemberUncheckedUpdateManyWithoutTeamNestedInput } export type TeamCreateWithoutApiKeysInput = { id?: string name: string createdAt?: Date | string devices?: DeviceCreateNestedManyWithoutTeamInput members?: TeamMemberCreateNestedManyWithoutTeamInput } export type TeamUncheckedCreateWithoutApiKeysInput = { id?: string name: string createdAt?: Date | string devices?: DeviceUncheckedCreateNestedManyWithoutTeamInput members?: TeamMemberUncheckedCreateNestedManyWithoutTeamInput } export type TeamCreateOrConnectWithoutApiKeysInput = { where: TeamWhereUniqueInput create: XOR } export type UserCreateWithoutApiKeysInput = { id?: string email: string name: string passwordHash: string accessKey: string role?: string status?: string createdAt?: Date | string updatedAt?: Date | string lastLoginAt?: Date | string | null passwordChangedAt?: Date | string | null sessions?: UserSessionCreateNestedManyWithoutUserInput passwordResetTokens?: PasswordResetTokenCreateNestedManyWithoutUserInput teamMemberships?: TeamMemberCreateNestedManyWithoutUserInput } export type UserUncheckedCreateWithoutApiKeysInput = { id?: string email: string name: string passwordHash: string accessKey: string role?: string status?: string createdAt?: Date | string updatedAt?: Date | string lastLoginAt?: Date | string | null passwordChangedAt?: Date | string | null sessions?: UserSessionUncheckedCreateNestedManyWithoutUserInput passwordResetTokens?: PasswordResetTokenUncheckedCreateNestedManyWithoutUserInput teamMemberships?: TeamMemberUncheckedCreateNestedManyWithoutUserInput } export type UserCreateOrConnectWithoutApiKeysInput = { where: UserWhereUniqueInput create: XOR } export type TeamUpsertWithoutApiKeysInput = { update: XOR create: XOR where?: TeamWhereInput } export type TeamUpdateToOneWithWhereWithoutApiKeysInput = { where?: TeamWhereInput data: XOR } export type TeamUpdateWithoutApiKeysInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string devices?: DeviceUpdateManyWithoutTeamNestedInput members?: TeamMemberUpdateManyWithoutTeamNestedInput } export type TeamUncheckedUpdateWithoutApiKeysInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string devices?: DeviceUncheckedUpdateManyWithoutTeamNestedInput members?: TeamMemberUncheckedUpdateManyWithoutTeamNestedInput } export type UserUpsertWithoutApiKeysInput = { update: XOR create: XOR where?: UserWhereInput } export type UserUpdateToOneWithWhereWithoutApiKeysInput = { where?: UserWhereInput data: XOR } export type UserUpdateWithoutApiKeysInput = { id?: StringFieldUpdateOperationsInput | string email?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string passwordHash?: StringFieldUpdateOperationsInput | string accessKey?: StringFieldUpdateOperationsInput | string role?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string lastLoginAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null passwordChangedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null sessions?: UserSessionUpdateManyWithoutUserNestedInput passwordResetTokens?: PasswordResetTokenUpdateManyWithoutUserNestedInput teamMemberships?: TeamMemberUpdateManyWithoutUserNestedInput } export type UserUncheckedUpdateWithoutApiKeysInput = { id?: StringFieldUpdateOperationsInput | string email?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string passwordHash?: StringFieldUpdateOperationsInput | string accessKey?: StringFieldUpdateOperationsInput | string role?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string lastLoginAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null passwordChangedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null sessions?: UserSessionUncheckedUpdateManyWithoutUserNestedInput passwordResetTokens?: PasswordResetTokenUncheckedUpdateManyWithoutUserNestedInput teamMemberships?: TeamMemberUncheckedUpdateManyWithoutUserNestedInput } export type DeviceCreateWithoutTeamInput = { udid: string host: string systemPort?: number | null proxyPort?: number | null proxyHost?: string | null wdaLocalPort?: number | null name?: string | null state?: string | null sdk?: string | null platform?: string | null deviceType?: string | null busy?: boolean | null userBlocked?: boolean | null realDevice?: boolean | null session_id?: string | null offline?: boolean | null mjpegServerPort?: number | null lastCmdExecutedAt?: number | null totalUtilizationTimeMilliSec?: number sessionStartTime?: number newCommandTimeout?: number | null cloud?: string | null derivedDataPath?: string | null chromeDriverPath?: string | null capability?: string | null adbRemoteHost?: string | null adbPort?: number | null nodeId?: string | null screenWidth?: string | null screenHeight?: string | null dashboard_link?: string | null total_session_count?: number | null createdAt?: Date | string updatedAt?: Date | string healthCheckError?: string | null healthStatus?: string | null lastHealthCheckAt?: number | null batteryLevel?: number | null reservationReason?: string | null reservedBy?: string | null reservedUntil?: number | null storageFree?: string | null tags?: string | null thermalStatus?: string | null sessionProgress?: string | null totalHealedCount?: number | null ip?: string | null cpuArchitecture?: string | null owningSessionId?: string | null lockedAt?: number | null } export type DeviceUncheckedCreateWithoutTeamInput = { udid: string host: string systemPort?: number | null proxyPort?: number | null proxyHost?: string | null wdaLocalPort?: number | null name?: string | null state?: string | null sdk?: string | null platform?: string | null deviceType?: string | null busy?: boolean | null userBlocked?: boolean | null realDevice?: boolean | null session_id?: string | null offline?: boolean | null mjpegServerPort?: number | null lastCmdExecutedAt?: number | null totalUtilizationTimeMilliSec?: number sessionStartTime?: number newCommandTimeout?: number | null cloud?: string | null derivedDataPath?: string | null chromeDriverPath?: string | null capability?: string | null adbRemoteHost?: string | null adbPort?: number | null nodeId?: string | null screenWidth?: string | null screenHeight?: string | null dashboard_link?: string | null total_session_count?: number | null createdAt?: Date | string updatedAt?: Date | string healthCheckError?: string | null healthStatus?: string | null lastHealthCheckAt?: number | null batteryLevel?: number | null reservationReason?: string | null reservedBy?: string | null reservedUntil?: number | null storageFree?: string | null tags?: string | null thermalStatus?: string | null sessionProgress?: string | null totalHealedCount?: number | null ip?: string | null cpuArchitecture?: string | null owningSessionId?: string | null lockedAt?: number | null } export type DeviceCreateOrConnectWithoutTeamInput = { where: DeviceWhereUniqueInput create: XOR } export type DeviceCreateManyTeamInputEnvelope = { data: DeviceCreateManyTeamInput | DeviceCreateManyTeamInput[] } export type ApiKeyCreateWithoutTeamInput = { id?: string name: string keyHash: string scopes: string rateLimit?: number createdAt?: Date | string revokedAt?: Date | string | null lastUsedAt?: Date | string | null expiresAt?: Date | string | null role?: string user: UserCreateNestedOneWithoutApiKeysInput } export type ApiKeyUncheckedCreateWithoutTeamInput = { id?: string name: string keyHash: string scopes: string rateLimit?: number createdAt?: Date | string revokedAt?: Date | string | null lastUsedAt?: Date | string | null expiresAt?: Date | string | null role?: string userId: string } export type ApiKeyCreateOrConnectWithoutTeamInput = { where: ApiKeyWhereUniqueInput create: XOR } export type ApiKeyCreateManyTeamInputEnvelope = { data: ApiKeyCreateManyTeamInput | ApiKeyCreateManyTeamInput[] } export type TeamMemberCreateWithoutTeamInput = { createdAt?: Date | string user: UserCreateNestedOneWithoutTeamMembershipsInput } export type TeamMemberUncheckedCreateWithoutTeamInput = { userId: string createdAt?: Date | string } export type TeamMemberCreateOrConnectWithoutTeamInput = { where: TeamMemberWhereUniqueInput create: XOR } export type TeamMemberCreateManyTeamInputEnvelope = { data: TeamMemberCreateManyTeamInput | TeamMemberCreateManyTeamInput[] } export type DeviceUpsertWithWhereUniqueWithoutTeamInput = { where: DeviceWhereUniqueInput update: XOR create: XOR } export type DeviceUpdateWithWhereUniqueWithoutTeamInput = { where: DeviceWhereUniqueInput data: XOR } export type DeviceUpdateManyWithWhereWithoutTeamInput = { where: DeviceScalarWhereInput data: XOR } export type DeviceScalarWhereInput = { AND?: DeviceScalarWhereInput | DeviceScalarWhereInput[] OR?: DeviceScalarWhereInput[] NOT?: DeviceScalarWhereInput | DeviceScalarWhereInput[] udid?: StringFilter<"Device"> | string host?: StringFilter<"Device"> | string systemPort?: IntNullableFilter<"Device"> | number | null proxyPort?: IntNullableFilter<"Device"> | number | null proxyHost?: StringNullableFilter<"Device"> | string | null wdaLocalPort?: IntNullableFilter<"Device"> | number | null name?: StringNullableFilter<"Device"> | string | null state?: StringNullableFilter<"Device"> | string | null sdk?: StringNullableFilter<"Device"> | string | null platform?: StringNullableFilter<"Device"> | string | null deviceType?: StringNullableFilter<"Device"> | string | null busy?: BoolNullableFilter<"Device"> | boolean | null userBlocked?: BoolNullableFilter<"Device"> | boolean | null realDevice?: BoolNullableFilter<"Device"> | boolean | null session_id?: StringNullableFilter<"Device"> | string | null offline?: BoolNullableFilter<"Device"> | boolean | null mjpegServerPort?: IntNullableFilter<"Device"> | number | null lastCmdExecutedAt?: FloatNullableFilter<"Device"> | number | null totalUtilizationTimeMilliSec?: FloatFilter<"Device"> | number sessionStartTime?: FloatFilter<"Device"> | number newCommandTimeout?: IntNullableFilter<"Device"> | number | null cloud?: StringNullableFilter<"Device"> | string | null derivedDataPath?: StringNullableFilter<"Device"> | string | null chromeDriverPath?: StringNullableFilter<"Device"> | string | null capability?: StringNullableFilter<"Device"> | string | null adbRemoteHost?: StringNullableFilter<"Device"> | string | null adbPort?: IntNullableFilter<"Device"> | number | null nodeId?: StringNullableFilter<"Device"> | string | null screenWidth?: StringNullableFilter<"Device"> | string | null screenHeight?: StringNullableFilter<"Device"> | string | null dashboard_link?: StringNullableFilter<"Device"> | string | null total_session_count?: IntNullableFilter<"Device"> | number | null createdAt?: DateTimeFilter<"Device"> | Date | string updatedAt?: DateTimeFilter<"Device"> | Date | string healthCheckError?: StringNullableFilter<"Device"> | string | null healthStatus?: StringNullableFilter<"Device"> | string | null lastHealthCheckAt?: FloatNullableFilter<"Device"> | number | null batteryLevel?: IntNullableFilter<"Device"> | number | null reservationReason?: StringNullableFilter<"Device"> | string | null reservedBy?: StringNullableFilter<"Device"> | string | null reservedUntil?: FloatNullableFilter<"Device"> | number | null storageFree?: StringNullableFilter<"Device"> | string | null tags?: StringNullableFilter<"Device"> | string | null thermalStatus?: StringNullableFilter<"Device"> | string | null sessionProgress?: StringNullableFilter<"Device"> | string | null totalHealedCount?: IntNullableFilter<"Device"> | number | null ip?: StringNullableFilter<"Device"> | string | null cpuArchitecture?: StringNullableFilter<"Device"> | string | null owningSessionId?: StringNullableFilter<"Device"> | string | null lockedAt?: FloatNullableFilter<"Device"> | number | null teamId?: StringNullableFilter<"Device"> | string | null } export type ApiKeyUpsertWithWhereUniqueWithoutTeamInput = { where: ApiKeyWhereUniqueInput update: XOR create: XOR } export type ApiKeyUpdateWithWhereUniqueWithoutTeamInput = { where: ApiKeyWhereUniqueInput data: XOR } export type ApiKeyUpdateManyWithWhereWithoutTeamInput = { where: ApiKeyScalarWhereInput data: XOR } export type ApiKeyScalarWhereInput = { AND?: ApiKeyScalarWhereInput | ApiKeyScalarWhereInput[] OR?: ApiKeyScalarWhereInput[] NOT?: ApiKeyScalarWhereInput | ApiKeyScalarWhereInput[] id?: StringFilter<"ApiKey"> | string name?: StringFilter<"ApiKey"> | string keyHash?: StringFilter<"ApiKey"> | string scopes?: StringFilter<"ApiKey"> | string rateLimit?: IntFilter<"ApiKey"> | number createdAt?: DateTimeFilter<"ApiKey"> | Date | string revokedAt?: DateTimeNullableFilter<"ApiKey"> | Date | string | null lastUsedAt?: DateTimeNullableFilter<"ApiKey"> | Date | string | null expiresAt?: DateTimeNullableFilter<"ApiKey"> | Date | string | null teamId?: StringNullableFilter<"ApiKey"> | string | null role?: StringFilter<"ApiKey"> | string userId?: StringFilter<"ApiKey"> | string } export type TeamMemberUpsertWithWhereUniqueWithoutTeamInput = { where: TeamMemberWhereUniqueInput update: XOR create: XOR } export type TeamMemberUpdateWithWhereUniqueWithoutTeamInput = { where: TeamMemberWhereUniqueInput data: XOR } export type TeamMemberUpdateManyWithWhereWithoutTeamInput = { where: TeamMemberScalarWhereInput data: XOR } export type TeamMemberScalarWhereInput = { AND?: TeamMemberScalarWhereInput | TeamMemberScalarWhereInput[] OR?: TeamMemberScalarWhereInput[] NOT?: TeamMemberScalarWhereInput | TeamMemberScalarWhereInput[] teamId?: StringFilter<"TeamMember"> | string userId?: StringFilter<"TeamMember"> | string createdAt?: DateTimeFilter<"TeamMember"> | Date | string } export type BookmarkCreateWithoutRecordingInput = { id?: string timecode_ms: number label: string note?: string | null created_at?: Date | string } export type BookmarkUncheckedCreateWithoutRecordingInput = { id?: string timecode_ms: number label: string note?: string | null created_at?: Date | string } export type BookmarkCreateOrConnectWithoutRecordingInput = { where: BookmarkWhereUniqueInput create: XOR } export type BookmarkCreateManyRecordingInputEnvelope = { data: BookmarkCreateManyRecordingInput | BookmarkCreateManyRecordingInput[] } export type AnnotationCreateWithoutRecordingInput = { id?: string timecode_ms: number shape: string geometry: string color: string text?: string | null author?: string | null created_at?: Date | string } export type AnnotationUncheckedCreateWithoutRecordingInput = { id?: string timecode_ms: number shape: string geometry: string color: string text?: string | null author?: string | null created_at?: Date | string } export type AnnotationCreateOrConnectWithoutRecordingInput = { where: AnnotationWhereUniqueInput create: XOR } export type AnnotationCreateManyRecordingInputEnvelope = { data: AnnotationCreateManyRecordingInput | AnnotationCreateManyRecordingInput[] } export type SessionCreateWithoutRecordingInput = { id: string name?: string | null status?: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled?: boolean video_recording?: string | null startTime?: Date | string endTime?: Date | string | null failure_reason?: string | null is_profiling_available?: boolean device_info?: string | null device_udid: string device_platform: string device_version: string device_name?: string | null createdAt?: Date | string updatedAt?: Date | string performance_trace?: string | null failure_category?: string | null ai_analysis?: string | null tags?: string | null trace_id?: string | null last_heartbeat_at?: Date | string | null heartbeat_pid?: number | null heartbeat_host?: string | null api_key_id?: string | null user_id?: string | null Log?: LogCreateNestedManyWithoutSessionInput Profiling?: ProfilingCreateNestedManyWithoutSessionInput build?: BuildCreateNestedOneWithoutSessionsInput SessionLog?: SessionLogCreateNestedManyWithoutSessionInput } export type SessionUncheckedCreateWithoutRecordingInput = { id: string build_id?: string | null name?: string | null status?: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled?: boolean video_recording?: string | null startTime?: Date | string endTime?: Date | string | null failure_reason?: string | null is_profiling_available?: boolean device_info?: string | null device_udid: string device_platform: string device_version: string device_name?: string | null createdAt?: Date | string updatedAt?: Date | string performance_trace?: string | null failure_category?: string | null ai_analysis?: string | null tags?: string | null trace_id?: string | null last_heartbeat_at?: Date | string | null heartbeat_pid?: number | null heartbeat_host?: string | null api_key_id?: string | null user_id?: string | null Log?: LogUncheckedCreateNestedManyWithoutSessionInput Profiling?: ProfilingUncheckedCreateNestedManyWithoutSessionInput SessionLog?: SessionLogUncheckedCreateNestedManyWithoutSessionInput } export type SessionCreateOrConnectWithoutRecordingInput = { where: SessionWhereUniqueInput create: XOR } export type BookmarkUpsertWithWhereUniqueWithoutRecordingInput = { where: BookmarkWhereUniqueInput update: XOR create: XOR } export type BookmarkUpdateWithWhereUniqueWithoutRecordingInput = { where: BookmarkWhereUniqueInput data: XOR } export type BookmarkUpdateManyWithWhereWithoutRecordingInput = { where: BookmarkScalarWhereInput data: XOR } export type BookmarkScalarWhereInput = { AND?: BookmarkScalarWhereInput | BookmarkScalarWhereInput[] OR?: BookmarkScalarWhereInput[] NOT?: BookmarkScalarWhereInput | BookmarkScalarWhereInput[] id?: StringFilter<"Bookmark"> | string recording_id?: StringFilter<"Bookmark"> | string timecode_ms?: IntFilter<"Bookmark"> | number label?: StringFilter<"Bookmark"> | string note?: StringNullableFilter<"Bookmark"> | string | null created_at?: DateTimeFilter<"Bookmark"> | Date | string } export type AnnotationUpsertWithWhereUniqueWithoutRecordingInput = { where: AnnotationWhereUniqueInput update: XOR create: XOR } export type AnnotationUpdateWithWhereUniqueWithoutRecordingInput = { where: AnnotationWhereUniqueInput data: XOR } export type AnnotationUpdateManyWithWhereWithoutRecordingInput = { where: AnnotationScalarWhereInput data: XOR } export type AnnotationScalarWhereInput = { AND?: AnnotationScalarWhereInput | AnnotationScalarWhereInput[] OR?: AnnotationScalarWhereInput[] NOT?: AnnotationScalarWhereInput | AnnotationScalarWhereInput[] id?: StringFilter<"Annotation"> | string recording_id?: StringFilter<"Annotation"> | string timecode_ms?: IntFilter<"Annotation"> | number shape?: StringFilter<"Annotation"> | string geometry?: StringFilter<"Annotation"> | string color?: StringFilter<"Annotation"> | string text?: StringNullableFilter<"Annotation"> | string | null author?: StringNullableFilter<"Annotation"> | string | null created_at?: DateTimeFilter<"Annotation"> | Date | string } export type SessionUpsertWithoutRecordingInput = { update: XOR create: XOR where?: SessionWhereInput } export type SessionUpdateToOneWithWhereWithoutRecordingInput = { where?: SessionWhereInput data: XOR } export type SessionUpdateWithoutRecordingInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null Log?: LogUpdateManyWithoutSessionNestedInput Profiling?: ProfilingUpdateManyWithoutSessionNestedInput build?: BuildUpdateOneWithoutSessionsNestedInput SessionLog?: SessionLogUpdateManyWithoutSessionNestedInput } export type SessionUncheckedUpdateWithoutRecordingInput = { id?: StringFieldUpdateOperationsInput | string build_id?: NullableStringFieldUpdateOperationsInput | string | null name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null Log?: LogUncheckedUpdateManyWithoutSessionNestedInput Profiling?: ProfilingUncheckedUpdateManyWithoutSessionNestedInput SessionLog?: SessionLogUncheckedUpdateManyWithoutSessionNestedInput } export type RecordingCreateWithoutBookmarksInput = { id?: string group_id: string device_udid: string device_host?: string started_at: Date | string ended_at?: Date | string | null status: string file_path: string duration_ms?: number | null size_bytes?: number | null device_snapshot?: string | null fail_reason?: string | null annotations?: AnnotationCreateNestedManyWithoutRecordingInput Session?: SessionCreateNestedOneWithoutRecordingInput } export type RecordingUncheckedCreateWithoutBookmarksInput = { id?: string group_id: string device_udid: string device_host?: string session_id?: string | null started_at: Date | string ended_at?: Date | string | null status: string file_path: string duration_ms?: number | null size_bytes?: number | null device_snapshot?: string | null fail_reason?: string | null annotations?: AnnotationUncheckedCreateNestedManyWithoutRecordingInput } export type RecordingCreateOrConnectWithoutBookmarksInput = { where: RecordingWhereUniqueInput create: XOR } export type RecordingUpsertWithoutBookmarksInput = { update: XOR create: XOR where?: RecordingWhereInput } export type RecordingUpdateToOneWithWhereWithoutBookmarksInput = { where?: RecordingWhereInput data: XOR } export type RecordingUpdateWithoutBookmarksInput = { id?: StringFieldUpdateOperationsInput | string group_id?: StringFieldUpdateOperationsInput | string device_udid?: StringFieldUpdateOperationsInput | string device_host?: StringFieldUpdateOperationsInput | string started_at?: DateTimeFieldUpdateOperationsInput | Date | string ended_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null status?: StringFieldUpdateOperationsInput | string file_path?: StringFieldUpdateOperationsInput | string duration_ms?: NullableIntFieldUpdateOperationsInput | number | null size_bytes?: NullableIntFieldUpdateOperationsInput | number | null device_snapshot?: NullableStringFieldUpdateOperationsInput | string | null fail_reason?: NullableStringFieldUpdateOperationsInput | string | null annotations?: AnnotationUpdateManyWithoutRecordingNestedInput Session?: SessionUpdateOneWithoutRecordingNestedInput } export type RecordingUncheckedUpdateWithoutBookmarksInput = { id?: StringFieldUpdateOperationsInput | string group_id?: StringFieldUpdateOperationsInput | string device_udid?: StringFieldUpdateOperationsInput | string device_host?: StringFieldUpdateOperationsInput | string session_id?: NullableStringFieldUpdateOperationsInput | string | null started_at?: DateTimeFieldUpdateOperationsInput | Date | string ended_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null status?: StringFieldUpdateOperationsInput | string file_path?: StringFieldUpdateOperationsInput | string duration_ms?: NullableIntFieldUpdateOperationsInput | number | null size_bytes?: NullableIntFieldUpdateOperationsInput | number | null device_snapshot?: NullableStringFieldUpdateOperationsInput | string | null fail_reason?: NullableStringFieldUpdateOperationsInput | string | null annotations?: AnnotationUncheckedUpdateManyWithoutRecordingNestedInput } export type RecordingCreateWithoutAnnotationsInput = { id?: string group_id: string device_udid: string device_host?: string started_at: Date | string ended_at?: Date | string | null status: string file_path: string duration_ms?: number | null size_bytes?: number | null device_snapshot?: string | null fail_reason?: string | null bookmarks?: BookmarkCreateNestedManyWithoutRecordingInput Session?: SessionCreateNestedOneWithoutRecordingInput } export type RecordingUncheckedCreateWithoutAnnotationsInput = { id?: string group_id: string device_udid: string device_host?: string session_id?: string | null started_at: Date | string ended_at?: Date | string | null status: string file_path: string duration_ms?: number | null size_bytes?: number | null device_snapshot?: string | null fail_reason?: string | null bookmarks?: BookmarkUncheckedCreateNestedManyWithoutRecordingInput } export type RecordingCreateOrConnectWithoutAnnotationsInput = { where: RecordingWhereUniqueInput create: XOR } export type RecordingUpsertWithoutAnnotationsInput = { update: XOR create: XOR where?: RecordingWhereInput } export type RecordingUpdateToOneWithWhereWithoutAnnotationsInput = { where?: RecordingWhereInput data: XOR } export type RecordingUpdateWithoutAnnotationsInput = { id?: StringFieldUpdateOperationsInput | string group_id?: StringFieldUpdateOperationsInput | string device_udid?: StringFieldUpdateOperationsInput | string device_host?: StringFieldUpdateOperationsInput | string started_at?: DateTimeFieldUpdateOperationsInput | Date | string ended_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null status?: StringFieldUpdateOperationsInput | string file_path?: StringFieldUpdateOperationsInput | string duration_ms?: NullableIntFieldUpdateOperationsInput | number | null size_bytes?: NullableIntFieldUpdateOperationsInput | number | null device_snapshot?: NullableStringFieldUpdateOperationsInput | string | null fail_reason?: NullableStringFieldUpdateOperationsInput | string | null bookmarks?: BookmarkUpdateManyWithoutRecordingNestedInput Session?: SessionUpdateOneWithoutRecordingNestedInput } export type RecordingUncheckedUpdateWithoutAnnotationsInput = { id?: StringFieldUpdateOperationsInput | string group_id?: StringFieldUpdateOperationsInput | string device_udid?: StringFieldUpdateOperationsInput | string device_host?: StringFieldUpdateOperationsInput | string session_id?: NullableStringFieldUpdateOperationsInput | string | null started_at?: DateTimeFieldUpdateOperationsInput | Date | string ended_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null status?: StringFieldUpdateOperationsInput | string file_path?: StringFieldUpdateOperationsInput | string duration_ms?: NullableIntFieldUpdateOperationsInput | number | null size_bytes?: NullableIntFieldUpdateOperationsInput | number | null device_snapshot?: NullableStringFieldUpdateOperationsInput | string | null fail_reason?: NullableStringFieldUpdateOperationsInput | string | null bookmarks?: BookmarkUncheckedUpdateManyWithoutRecordingNestedInput } export type ApiKeyCreateWithoutUserInput = { id?: string name: string keyHash: string scopes: string rateLimit?: number createdAt?: Date | string revokedAt?: Date | string | null lastUsedAt?: Date | string | null expiresAt?: Date | string | null role?: string team?: TeamCreateNestedOneWithoutApiKeysInput } export type ApiKeyUncheckedCreateWithoutUserInput = { id?: string name: string keyHash: string scopes: string rateLimit?: number createdAt?: Date | string revokedAt?: Date | string | null lastUsedAt?: Date | string | null expiresAt?: Date | string | null teamId?: string | null role?: string } export type ApiKeyCreateOrConnectWithoutUserInput = { where: ApiKeyWhereUniqueInput create: XOR } export type ApiKeyCreateManyUserInputEnvelope = { data: ApiKeyCreateManyUserInput | ApiKeyCreateManyUserInput[] } export type UserSessionCreateWithoutUserInput = { id?: string createdAt?: Date | string expiresAt: Date | string lastSeenAt?: Date | string userAgent?: string | null ipHash?: string | null } export type UserSessionUncheckedCreateWithoutUserInput = { id?: string createdAt?: Date | string expiresAt: Date | string lastSeenAt?: Date | string userAgent?: string | null ipHash?: string | null } export type UserSessionCreateOrConnectWithoutUserInput = { where: UserSessionWhereUniqueInput create: XOR } export type UserSessionCreateManyUserInputEnvelope = { data: UserSessionCreateManyUserInput | UserSessionCreateManyUserInput[] } export type PasswordResetTokenCreateWithoutUserInput = { id?: string tokenHash: string createdAt?: Date | string expiresAt: Date | string usedAt?: Date | string | null } export type PasswordResetTokenUncheckedCreateWithoutUserInput = { id?: string tokenHash: string createdAt?: Date | string expiresAt: Date | string usedAt?: Date | string | null } export type PasswordResetTokenCreateOrConnectWithoutUserInput = { where: PasswordResetTokenWhereUniqueInput create: XOR } export type PasswordResetTokenCreateManyUserInputEnvelope = { data: PasswordResetTokenCreateManyUserInput | PasswordResetTokenCreateManyUserInput[] } export type TeamMemberCreateWithoutUserInput = { createdAt?: Date | string team: TeamCreateNestedOneWithoutMembersInput } export type TeamMemberUncheckedCreateWithoutUserInput = { teamId: string createdAt?: Date | string } export type TeamMemberCreateOrConnectWithoutUserInput = { where: TeamMemberWhereUniqueInput create: XOR } export type TeamMemberCreateManyUserInputEnvelope = { data: TeamMemberCreateManyUserInput | TeamMemberCreateManyUserInput[] } export type ApiKeyUpsertWithWhereUniqueWithoutUserInput = { where: ApiKeyWhereUniqueInput update: XOR create: XOR } export type ApiKeyUpdateWithWhereUniqueWithoutUserInput = { where: ApiKeyWhereUniqueInput data: XOR } export type ApiKeyUpdateManyWithWhereWithoutUserInput = { where: ApiKeyScalarWhereInput data: XOR } export type UserSessionUpsertWithWhereUniqueWithoutUserInput = { where: UserSessionWhereUniqueInput update: XOR create: XOR } export type UserSessionUpdateWithWhereUniqueWithoutUserInput = { where: UserSessionWhereUniqueInput data: XOR } export type UserSessionUpdateManyWithWhereWithoutUserInput = { where: UserSessionScalarWhereInput data: XOR } export type UserSessionScalarWhereInput = { AND?: UserSessionScalarWhereInput | UserSessionScalarWhereInput[] OR?: UserSessionScalarWhereInput[] NOT?: UserSessionScalarWhereInput | UserSessionScalarWhereInput[] id?: StringFilter<"UserSession"> | string userId?: StringFilter<"UserSession"> | string createdAt?: DateTimeFilter<"UserSession"> | Date | string expiresAt?: DateTimeFilter<"UserSession"> | Date | string lastSeenAt?: DateTimeFilter<"UserSession"> | Date | string userAgent?: StringNullableFilter<"UserSession"> | string | null ipHash?: StringNullableFilter<"UserSession"> | string | null } export type PasswordResetTokenUpsertWithWhereUniqueWithoutUserInput = { where: PasswordResetTokenWhereUniqueInput update: XOR create: XOR } export type PasswordResetTokenUpdateWithWhereUniqueWithoutUserInput = { where: PasswordResetTokenWhereUniqueInput data: XOR } export type PasswordResetTokenUpdateManyWithWhereWithoutUserInput = { where: PasswordResetTokenScalarWhereInput data: XOR } export type PasswordResetTokenScalarWhereInput = { AND?: PasswordResetTokenScalarWhereInput | PasswordResetTokenScalarWhereInput[] OR?: PasswordResetTokenScalarWhereInput[] NOT?: PasswordResetTokenScalarWhereInput | PasswordResetTokenScalarWhereInput[] id?: StringFilter<"PasswordResetToken"> | string userId?: StringFilter<"PasswordResetToken"> | string tokenHash?: StringFilter<"PasswordResetToken"> | string createdAt?: DateTimeFilter<"PasswordResetToken"> | Date | string expiresAt?: DateTimeFilter<"PasswordResetToken"> | Date | string usedAt?: DateTimeNullableFilter<"PasswordResetToken"> | Date | string | null } export type TeamMemberUpsertWithWhereUniqueWithoutUserInput = { where: TeamMemberWhereUniqueInput update: XOR create: XOR } export type TeamMemberUpdateWithWhereUniqueWithoutUserInput = { where: TeamMemberWhereUniqueInput data: XOR } export type TeamMemberUpdateManyWithWhereWithoutUserInput = { where: TeamMemberScalarWhereInput data: XOR } export type UserCreateWithoutSessionsInput = { id?: string email: string name: string passwordHash: string accessKey: string role?: string status?: string createdAt?: Date | string updatedAt?: Date | string lastLoginAt?: Date | string | null passwordChangedAt?: Date | string | null apiKeys?: ApiKeyCreateNestedManyWithoutUserInput passwordResetTokens?: PasswordResetTokenCreateNestedManyWithoutUserInput teamMemberships?: TeamMemberCreateNestedManyWithoutUserInput } export type UserUncheckedCreateWithoutSessionsInput = { id?: string email: string name: string passwordHash: string accessKey: string role?: string status?: string createdAt?: Date | string updatedAt?: Date | string lastLoginAt?: Date | string | null passwordChangedAt?: Date | string | null apiKeys?: ApiKeyUncheckedCreateNestedManyWithoutUserInput passwordResetTokens?: PasswordResetTokenUncheckedCreateNestedManyWithoutUserInput teamMemberships?: TeamMemberUncheckedCreateNestedManyWithoutUserInput } export type UserCreateOrConnectWithoutSessionsInput = { where: UserWhereUniqueInput create: XOR } export type UserUpsertWithoutSessionsInput = { update: XOR create: XOR where?: UserWhereInput } export type UserUpdateToOneWithWhereWithoutSessionsInput = { where?: UserWhereInput data: XOR } export type UserUpdateWithoutSessionsInput = { id?: StringFieldUpdateOperationsInput | string email?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string passwordHash?: StringFieldUpdateOperationsInput | string accessKey?: StringFieldUpdateOperationsInput | string role?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string lastLoginAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null passwordChangedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null apiKeys?: ApiKeyUpdateManyWithoutUserNestedInput passwordResetTokens?: PasswordResetTokenUpdateManyWithoutUserNestedInput teamMemberships?: TeamMemberUpdateManyWithoutUserNestedInput } export type UserUncheckedUpdateWithoutSessionsInput = { id?: StringFieldUpdateOperationsInput | string email?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string passwordHash?: StringFieldUpdateOperationsInput | string accessKey?: StringFieldUpdateOperationsInput | string role?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string lastLoginAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null passwordChangedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null apiKeys?: ApiKeyUncheckedUpdateManyWithoutUserNestedInput passwordResetTokens?: PasswordResetTokenUncheckedUpdateManyWithoutUserNestedInput teamMemberships?: TeamMemberUncheckedUpdateManyWithoutUserNestedInput } export type UserCreateWithoutPasswordResetTokensInput = { id?: string email: string name: string passwordHash: string accessKey: string role?: string status?: string createdAt?: Date | string updatedAt?: Date | string lastLoginAt?: Date | string | null passwordChangedAt?: Date | string | null apiKeys?: ApiKeyCreateNestedManyWithoutUserInput sessions?: UserSessionCreateNestedManyWithoutUserInput teamMemberships?: TeamMemberCreateNestedManyWithoutUserInput } export type UserUncheckedCreateWithoutPasswordResetTokensInput = { id?: string email: string name: string passwordHash: string accessKey: string role?: string status?: string createdAt?: Date | string updatedAt?: Date | string lastLoginAt?: Date | string | null passwordChangedAt?: Date | string | null apiKeys?: ApiKeyUncheckedCreateNestedManyWithoutUserInput sessions?: UserSessionUncheckedCreateNestedManyWithoutUserInput teamMemberships?: TeamMemberUncheckedCreateNestedManyWithoutUserInput } export type UserCreateOrConnectWithoutPasswordResetTokensInput = { where: UserWhereUniqueInput create: XOR } export type UserUpsertWithoutPasswordResetTokensInput = { update: XOR create: XOR where?: UserWhereInput } export type UserUpdateToOneWithWhereWithoutPasswordResetTokensInput = { where?: UserWhereInput data: XOR } export type UserUpdateWithoutPasswordResetTokensInput = { id?: StringFieldUpdateOperationsInput | string email?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string passwordHash?: StringFieldUpdateOperationsInput | string accessKey?: StringFieldUpdateOperationsInput | string role?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string lastLoginAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null passwordChangedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null apiKeys?: ApiKeyUpdateManyWithoutUserNestedInput sessions?: UserSessionUpdateManyWithoutUserNestedInput teamMemberships?: TeamMemberUpdateManyWithoutUserNestedInput } export type UserUncheckedUpdateWithoutPasswordResetTokensInput = { id?: StringFieldUpdateOperationsInput | string email?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string passwordHash?: StringFieldUpdateOperationsInput | string accessKey?: StringFieldUpdateOperationsInput | string role?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string lastLoginAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null passwordChangedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null apiKeys?: ApiKeyUncheckedUpdateManyWithoutUserNestedInput sessions?: UserSessionUncheckedUpdateManyWithoutUserNestedInput teamMemberships?: TeamMemberUncheckedUpdateManyWithoutUserNestedInput } export type TeamCreateWithoutMembersInput = { id?: string name: string createdAt?: Date | string devices?: DeviceCreateNestedManyWithoutTeamInput apiKeys?: ApiKeyCreateNestedManyWithoutTeamInput } export type TeamUncheckedCreateWithoutMembersInput = { id?: string name: string createdAt?: Date | string devices?: DeviceUncheckedCreateNestedManyWithoutTeamInput apiKeys?: ApiKeyUncheckedCreateNestedManyWithoutTeamInput } export type TeamCreateOrConnectWithoutMembersInput = { where: TeamWhereUniqueInput create: XOR } export type UserCreateWithoutTeamMembershipsInput = { id?: string email: string name: string passwordHash: string accessKey: string role?: string status?: string createdAt?: Date | string updatedAt?: Date | string lastLoginAt?: Date | string | null passwordChangedAt?: Date | string | null apiKeys?: ApiKeyCreateNestedManyWithoutUserInput sessions?: UserSessionCreateNestedManyWithoutUserInput passwordResetTokens?: PasswordResetTokenCreateNestedManyWithoutUserInput } export type UserUncheckedCreateWithoutTeamMembershipsInput = { id?: string email: string name: string passwordHash: string accessKey: string role?: string status?: string createdAt?: Date | string updatedAt?: Date | string lastLoginAt?: Date | string | null passwordChangedAt?: Date | string | null apiKeys?: ApiKeyUncheckedCreateNestedManyWithoutUserInput sessions?: UserSessionUncheckedCreateNestedManyWithoutUserInput passwordResetTokens?: PasswordResetTokenUncheckedCreateNestedManyWithoutUserInput } export type UserCreateOrConnectWithoutTeamMembershipsInput = { where: UserWhereUniqueInput create: XOR } export type TeamUpsertWithoutMembersInput = { update: XOR create: XOR where?: TeamWhereInput } export type TeamUpdateToOneWithWhereWithoutMembersInput = { where?: TeamWhereInput data: XOR } export type TeamUpdateWithoutMembersInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string devices?: DeviceUpdateManyWithoutTeamNestedInput apiKeys?: ApiKeyUpdateManyWithoutTeamNestedInput } export type TeamUncheckedUpdateWithoutMembersInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string devices?: DeviceUncheckedUpdateManyWithoutTeamNestedInput apiKeys?: ApiKeyUncheckedUpdateManyWithoutTeamNestedInput } export type UserUpsertWithoutTeamMembershipsInput = { update: XOR create: XOR where?: UserWhereInput } export type UserUpdateToOneWithWhereWithoutTeamMembershipsInput = { where?: UserWhereInput data: XOR } export type UserUpdateWithoutTeamMembershipsInput = { id?: StringFieldUpdateOperationsInput | string email?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string passwordHash?: StringFieldUpdateOperationsInput | string accessKey?: StringFieldUpdateOperationsInput | string role?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string lastLoginAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null passwordChangedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null apiKeys?: ApiKeyUpdateManyWithoutUserNestedInput sessions?: UserSessionUpdateManyWithoutUserNestedInput passwordResetTokens?: PasswordResetTokenUpdateManyWithoutUserNestedInput } export type UserUncheckedUpdateWithoutTeamMembershipsInput = { id?: StringFieldUpdateOperationsInput | string email?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string passwordHash?: StringFieldUpdateOperationsInput | string accessKey?: StringFieldUpdateOperationsInput | string role?: StringFieldUpdateOperationsInput | string status?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string lastLoginAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null passwordChangedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null apiKeys?: ApiKeyUncheckedUpdateManyWithoutUserNestedInput sessions?: UserSessionUncheckedUpdateManyWithoutUserNestedInput passwordResetTokens?: PasswordResetTokenUncheckedUpdateManyWithoutUserNestedInput } export type SessionCreateManyBuildInput = { id: string name?: string | null status?: string desired_capabilities: string session_capabilities: string node_id: string has_live_video: boolean video_recording_enabled?: boolean video_recording?: string | null startTime?: Date | string endTime?: Date | string | null failure_reason?: string | null is_profiling_available?: boolean device_info?: string | null device_udid: string device_platform: string device_version: string device_name?: string | null createdAt?: Date | string updatedAt?: Date | string performance_trace?: string | null failure_category?: string | null ai_analysis?: string | null tags?: string | null trace_id?: string | null last_heartbeat_at?: Date | string | null heartbeat_pid?: number | null heartbeat_host?: string | null api_key_id?: string | null user_id?: string | null } export type SessionUpdateWithoutBuildInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null Log?: LogUpdateManyWithoutSessionNestedInput Profiling?: ProfilingUpdateManyWithoutSessionNestedInput SessionLog?: SessionLogUpdateManyWithoutSessionNestedInput Recording?: RecordingUpdateManyWithoutSessionNestedInput } export type SessionUncheckedUpdateWithoutBuildInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null Log?: LogUncheckedUpdateManyWithoutSessionNestedInput Profiling?: ProfilingUncheckedUpdateManyWithoutSessionNestedInput SessionLog?: SessionLogUncheckedUpdateManyWithoutSessionNestedInput Recording?: RecordingUncheckedUpdateManyWithoutSessionNestedInput } export type SessionUncheckedUpdateManyWithoutBuildInput = { id?: StringFieldUpdateOperationsInput | string name?: NullableStringFieldUpdateOperationsInput | string | null status?: StringFieldUpdateOperationsInput | string desired_capabilities?: StringFieldUpdateOperationsInput | string session_capabilities?: StringFieldUpdateOperationsInput | string node_id?: StringFieldUpdateOperationsInput | string has_live_video?: BoolFieldUpdateOperationsInput | boolean video_recording_enabled?: BoolFieldUpdateOperationsInput | boolean video_recording?: NullableStringFieldUpdateOperationsInput | string | null startTime?: DateTimeFieldUpdateOperationsInput | Date | string endTime?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null failure_reason?: NullableStringFieldUpdateOperationsInput | string | null is_profiling_available?: BoolFieldUpdateOperationsInput | boolean device_info?: NullableStringFieldUpdateOperationsInput | string | null device_udid?: StringFieldUpdateOperationsInput | string device_platform?: StringFieldUpdateOperationsInput | string device_version?: StringFieldUpdateOperationsInput | string device_name?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string performance_trace?: NullableStringFieldUpdateOperationsInput | string | null failure_category?: NullableStringFieldUpdateOperationsInput | string | null ai_analysis?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null last_heartbeat_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null heartbeat_pid?: NullableIntFieldUpdateOperationsInput | number | null heartbeat_host?: NullableStringFieldUpdateOperationsInput | string | null api_key_id?: NullableStringFieldUpdateOperationsInput | string | null user_id?: NullableStringFieldUpdateOperationsInput | string | null } export type LogCreateManySessionInput = { id?: string log_type: string message: string timestamp?: Date | string createdAt?: Date | string updatedAt?: Date | string } export type ProfilingCreateManySessionInput = { id?: number cpu?: string | null memory?: string | null total_cpu_used?: string | null total_memory_used?: string | null raw_cpu_log?: string | null raw_memory_log?: string | null timestamp: Date | string createdAt?: Date | string updatedAt?: Date | string } export type SessionLogCreateManySessionInput = { id?: string command_name?: string | null url: string method: string title: string subtitle?: string | null body?: string | null response: string screenshot?: string | null is_success?: boolean | null is_error?: boolean is_healed?: boolean original_selector?: string | null healed_selector?: string | null healing_confidence?: number | null healing_tier?: string | null original_strategy?: string | null healed_strategy?: string | null createdAt?: Date | string updatedAt?: Date | string duration?: number | null span_id?: string | null trace_id?: string | null } export type RecordingCreateManySessionInput = { id?: string group_id: string device_udid: string device_host?: string started_at: Date | string ended_at?: Date | string | null status: string file_path: string duration_ms?: number | null size_bytes?: number | null device_snapshot?: string | null fail_reason?: string | null } export type LogUpdateWithoutSessionInput = { id?: StringFieldUpdateOperationsInput | string log_type?: StringFieldUpdateOperationsInput | string message?: StringFieldUpdateOperationsInput | string timestamp?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type LogUncheckedUpdateWithoutSessionInput = { id?: StringFieldUpdateOperationsInput | string log_type?: StringFieldUpdateOperationsInput | string message?: StringFieldUpdateOperationsInput | string timestamp?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type LogUncheckedUpdateManyWithoutSessionInput = { id?: StringFieldUpdateOperationsInput | string log_type?: StringFieldUpdateOperationsInput | string message?: StringFieldUpdateOperationsInput | string timestamp?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type ProfilingUpdateWithoutSessionInput = { cpu?: NullableStringFieldUpdateOperationsInput | string | null memory?: NullableStringFieldUpdateOperationsInput | string | null total_cpu_used?: NullableStringFieldUpdateOperationsInput | string | null total_memory_used?: NullableStringFieldUpdateOperationsInput | string | null raw_cpu_log?: NullableStringFieldUpdateOperationsInput | string | null raw_memory_log?: NullableStringFieldUpdateOperationsInput | string | null timestamp?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type ProfilingUncheckedUpdateWithoutSessionInput = { id?: IntFieldUpdateOperationsInput | number cpu?: NullableStringFieldUpdateOperationsInput | string | null memory?: NullableStringFieldUpdateOperationsInput | string | null total_cpu_used?: NullableStringFieldUpdateOperationsInput | string | null total_memory_used?: NullableStringFieldUpdateOperationsInput | string | null raw_cpu_log?: NullableStringFieldUpdateOperationsInput | string | null raw_memory_log?: NullableStringFieldUpdateOperationsInput | string | null timestamp?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type ProfilingUncheckedUpdateManyWithoutSessionInput = { id?: IntFieldUpdateOperationsInput | number cpu?: NullableStringFieldUpdateOperationsInput | string | null memory?: NullableStringFieldUpdateOperationsInput | string | null total_cpu_used?: NullableStringFieldUpdateOperationsInput | string | null total_memory_used?: NullableStringFieldUpdateOperationsInput | string | null raw_cpu_log?: NullableStringFieldUpdateOperationsInput | string | null raw_memory_log?: NullableStringFieldUpdateOperationsInput | string | null timestamp?: DateTimeFieldUpdateOperationsInput | Date | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type SessionLogUpdateWithoutSessionInput = { id?: StringFieldUpdateOperationsInput | string command_name?: NullableStringFieldUpdateOperationsInput | string | null url?: StringFieldUpdateOperationsInput | string method?: StringFieldUpdateOperationsInput | string title?: StringFieldUpdateOperationsInput | string subtitle?: NullableStringFieldUpdateOperationsInput | string | null body?: NullableStringFieldUpdateOperationsInput | string | null response?: StringFieldUpdateOperationsInput | string screenshot?: NullableStringFieldUpdateOperationsInput | string | null is_success?: NullableBoolFieldUpdateOperationsInput | boolean | null is_error?: BoolFieldUpdateOperationsInput | boolean is_healed?: BoolFieldUpdateOperationsInput | boolean original_selector?: NullableStringFieldUpdateOperationsInput | string | null healed_selector?: NullableStringFieldUpdateOperationsInput | string | null healing_confidence?: NullableFloatFieldUpdateOperationsInput | number | null healing_tier?: NullableStringFieldUpdateOperationsInput | string | null original_strategy?: NullableStringFieldUpdateOperationsInput | string | null healed_strategy?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string duration?: NullableIntFieldUpdateOperationsInput | number | null span_id?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null } export type SessionLogUncheckedUpdateWithoutSessionInput = { id?: StringFieldUpdateOperationsInput | string command_name?: NullableStringFieldUpdateOperationsInput | string | null url?: StringFieldUpdateOperationsInput | string method?: StringFieldUpdateOperationsInput | string title?: StringFieldUpdateOperationsInput | string subtitle?: NullableStringFieldUpdateOperationsInput | string | null body?: NullableStringFieldUpdateOperationsInput | string | null response?: StringFieldUpdateOperationsInput | string screenshot?: NullableStringFieldUpdateOperationsInput | string | null is_success?: NullableBoolFieldUpdateOperationsInput | boolean | null is_error?: BoolFieldUpdateOperationsInput | boolean is_healed?: BoolFieldUpdateOperationsInput | boolean original_selector?: NullableStringFieldUpdateOperationsInput | string | null healed_selector?: NullableStringFieldUpdateOperationsInput | string | null healing_confidence?: NullableFloatFieldUpdateOperationsInput | number | null healing_tier?: NullableStringFieldUpdateOperationsInput | string | null original_strategy?: NullableStringFieldUpdateOperationsInput | string | null healed_strategy?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string duration?: NullableIntFieldUpdateOperationsInput | number | null span_id?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null } export type SessionLogUncheckedUpdateManyWithoutSessionInput = { id?: StringFieldUpdateOperationsInput | string command_name?: NullableStringFieldUpdateOperationsInput | string | null url?: StringFieldUpdateOperationsInput | string method?: StringFieldUpdateOperationsInput | string title?: StringFieldUpdateOperationsInput | string subtitle?: NullableStringFieldUpdateOperationsInput | string | null body?: NullableStringFieldUpdateOperationsInput | string | null response?: StringFieldUpdateOperationsInput | string screenshot?: NullableStringFieldUpdateOperationsInput | string | null is_success?: NullableBoolFieldUpdateOperationsInput | boolean | null is_error?: BoolFieldUpdateOperationsInput | boolean is_healed?: BoolFieldUpdateOperationsInput | boolean original_selector?: NullableStringFieldUpdateOperationsInput | string | null healed_selector?: NullableStringFieldUpdateOperationsInput | string | null healing_confidence?: NullableFloatFieldUpdateOperationsInput | number | null healing_tier?: NullableStringFieldUpdateOperationsInput | string | null original_strategy?: NullableStringFieldUpdateOperationsInput | string | null healed_strategy?: NullableStringFieldUpdateOperationsInput | string | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string duration?: NullableIntFieldUpdateOperationsInput | number | null span_id?: NullableStringFieldUpdateOperationsInput | string | null trace_id?: NullableStringFieldUpdateOperationsInput | string | null } export type RecordingUpdateWithoutSessionInput = { id?: StringFieldUpdateOperationsInput | string group_id?: StringFieldUpdateOperationsInput | string device_udid?: StringFieldUpdateOperationsInput | string device_host?: StringFieldUpdateOperationsInput | string started_at?: DateTimeFieldUpdateOperationsInput | Date | string ended_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null status?: StringFieldUpdateOperationsInput | string file_path?: StringFieldUpdateOperationsInput | string duration_ms?: NullableIntFieldUpdateOperationsInput | number | null size_bytes?: NullableIntFieldUpdateOperationsInput | number | null device_snapshot?: NullableStringFieldUpdateOperationsInput | string | null fail_reason?: NullableStringFieldUpdateOperationsInput | string | null bookmarks?: BookmarkUpdateManyWithoutRecordingNestedInput annotations?: AnnotationUpdateManyWithoutRecordingNestedInput } export type RecordingUncheckedUpdateWithoutSessionInput = { id?: StringFieldUpdateOperationsInput | string group_id?: StringFieldUpdateOperationsInput | string device_udid?: StringFieldUpdateOperationsInput | string device_host?: StringFieldUpdateOperationsInput | string started_at?: DateTimeFieldUpdateOperationsInput | Date | string ended_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null status?: StringFieldUpdateOperationsInput | string file_path?: StringFieldUpdateOperationsInput | string duration_ms?: NullableIntFieldUpdateOperationsInput | number | null size_bytes?: NullableIntFieldUpdateOperationsInput | number | null device_snapshot?: NullableStringFieldUpdateOperationsInput | string | null fail_reason?: NullableStringFieldUpdateOperationsInput | string | null bookmarks?: BookmarkUncheckedUpdateManyWithoutRecordingNestedInput annotations?: AnnotationUncheckedUpdateManyWithoutRecordingNestedInput } export type RecordingUncheckedUpdateManyWithoutSessionInput = { id?: StringFieldUpdateOperationsInput | string group_id?: StringFieldUpdateOperationsInput | string device_udid?: StringFieldUpdateOperationsInput | string device_host?: StringFieldUpdateOperationsInput | string started_at?: DateTimeFieldUpdateOperationsInput | Date | string ended_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null status?: StringFieldUpdateOperationsInput | string file_path?: StringFieldUpdateOperationsInput | string duration_ms?: NullableIntFieldUpdateOperationsInput | number | null size_bytes?: NullableIntFieldUpdateOperationsInput | number | null device_snapshot?: NullableStringFieldUpdateOperationsInput | string | null fail_reason?: NullableStringFieldUpdateOperationsInput | string | null } export type DeviceCreateManyTeamInput = { udid: string host: string systemPort?: number | null proxyPort?: number | null proxyHost?: string | null wdaLocalPort?: number | null name?: string | null state?: string | null sdk?: string | null platform?: string | null deviceType?: string | null busy?: boolean | null userBlocked?: boolean | null realDevice?: boolean | null session_id?: string | null offline?: boolean | null mjpegServerPort?: number | null lastCmdExecutedAt?: number | null totalUtilizationTimeMilliSec?: number sessionStartTime?: number newCommandTimeout?: number | null cloud?: string | null derivedDataPath?: string | null chromeDriverPath?: string | null capability?: string | null adbRemoteHost?: string | null adbPort?: number | null nodeId?: string | null screenWidth?: string | null screenHeight?: string | null dashboard_link?: string | null total_session_count?: number | null createdAt?: Date | string updatedAt?: Date | string healthCheckError?: string | null healthStatus?: string | null lastHealthCheckAt?: number | null batteryLevel?: number | null reservationReason?: string | null reservedBy?: string | null reservedUntil?: number | null storageFree?: string | null tags?: string | null thermalStatus?: string | null sessionProgress?: string | null totalHealedCount?: number | null ip?: string | null cpuArchitecture?: string | null owningSessionId?: string | null lockedAt?: number | null } export type ApiKeyCreateManyTeamInput = { id?: string name: string keyHash: string scopes: string rateLimit?: number createdAt?: Date | string revokedAt?: Date | string | null lastUsedAt?: Date | string | null expiresAt?: Date | string | null role?: string userId: string } export type TeamMemberCreateManyTeamInput = { userId: string createdAt?: Date | string } export type DeviceUpdateWithoutTeamInput = { udid?: StringFieldUpdateOperationsInput | string host?: StringFieldUpdateOperationsInput | string systemPort?: NullableIntFieldUpdateOperationsInput | number | null proxyPort?: NullableIntFieldUpdateOperationsInput | number | null proxyHost?: NullableStringFieldUpdateOperationsInput | string | null wdaLocalPort?: NullableIntFieldUpdateOperationsInput | number | null name?: NullableStringFieldUpdateOperationsInput | string | null state?: NullableStringFieldUpdateOperationsInput | string | null sdk?: NullableStringFieldUpdateOperationsInput | string | null platform?: NullableStringFieldUpdateOperationsInput | string | null deviceType?: NullableStringFieldUpdateOperationsInput | string | null busy?: NullableBoolFieldUpdateOperationsInput | boolean | null userBlocked?: NullableBoolFieldUpdateOperationsInput | boolean | null realDevice?: NullableBoolFieldUpdateOperationsInput | boolean | null session_id?: NullableStringFieldUpdateOperationsInput | string | null offline?: NullableBoolFieldUpdateOperationsInput | boolean | null mjpegServerPort?: NullableIntFieldUpdateOperationsInput | number | null lastCmdExecutedAt?: NullableFloatFieldUpdateOperationsInput | number | null totalUtilizationTimeMilliSec?: FloatFieldUpdateOperationsInput | number sessionStartTime?: FloatFieldUpdateOperationsInput | number newCommandTimeout?: NullableIntFieldUpdateOperationsInput | number | null cloud?: NullableStringFieldUpdateOperationsInput | string | null derivedDataPath?: NullableStringFieldUpdateOperationsInput | string | null chromeDriverPath?: NullableStringFieldUpdateOperationsInput | string | null capability?: NullableStringFieldUpdateOperationsInput | string | null adbRemoteHost?: NullableStringFieldUpdateOperationsInput | string | null adbPort?: NullableIntFieldUpdateOperationsInput | number | null nodeId?: NullableStringFieldUpdateOperationsInput | string | null screenWidth?: NullableStringFieldUpdateOperationsInput | string | null screenHeight?: NullableStringFieldUpdateOperationsInput | string | null dashboard_link?: NullableStringFieldUpdateOperationsInput | string | null total_session_count?: NullableIntFieldUpdateOperationsInput | number | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string healthCheckError?: NullableStringFieldUpdateOperationsInput | string | null healthStatus?: NullableStringFieldUpdateOperationsInput | string | null lastHealthCheckAt?: NullableFloatFieldUpdateOperationsInput | number | null batteryLevel?: NullableIntFieldUpdateOperationsInput | number | null reservationReason?: NullableStringFieldUpdateOperationsInput | string | null reservedBy?: NullableStringFieldUpdateOperationsInput | string | null reservedUntil?: NullableFloatFieldUpdateOperationsInput | number | null storageFree?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null thermalStatus?: NullableStringFieldUpdateOperationsInput | string | null sessionProgress?: NullableStringFieldUpdateOperationsInput | string | null totalHealedCount?: NullableIntFieldUpdateOperationsInput | number | null ip?: NullableStringFieldUpdateOperationsInput | string | null cpuArchitecture?: NullableStringFieldUpdateOperationsInput | string | null owningSessionId?: NullableStringFieldUpdateOperationsInput | string | null lockedAt?: NullableFloatFieldUpdateOperationsInput | number | null } export type DeviceUncheckedUpdateWithoutTeamInput = { udid?: StringFieldUpdateOperationsInput | string host?: StringFieldUpdateOperationsInput | string systemPort?: NullableIntFieldUpdateOperationsInput | number | null proxyPort?: NullableIntFieldUpdateOperationsInput | number | null proxyHost?: NullableStringFieldUpdateOperationsInput | string | null wdaLocalPort?: NullableIntFieldUpdateOperationsInput | number | null name?: NullableStringFieldUpdateOperationsInput | string | null state?: NullableStringFieldUpdateOperationsInput | string | null sdk?: NullableStringFieldUpdateOperationsInput | string | null platform?: NullableStringFieldUpdateOperationsInput | string | null deviceType?: NullableStringFieldUpdateOperationsInput | string | null busy?: NullableBoolFieldUpdateOperationsInput | boolean | null userBlocked?: NullableBoolFieldUpdateOperationsInput | boolean | null realDevice?: NullableBoolFieldUpdateOperationsInput | boolean | null session_id?: NullableStringFieldUpdateOperationsInput | string | null offline?: NullableBoolFieldUpdateOperationsInput | boolean | null mjpegServerPort?: NullableIntFieldUpdateOperationsInput | number | null lastCmdExecutedAt?: NullableFloatFieldUpdateOperationsInput | number | null totalUtilizationTimeMilliSec?: FloatFieldUpdateOperationsInput | number sessionStartTime?: FloatFieldUpdateOperationsInput | number newCommandTimeout?: NullableIntFieldUpdateOperationsInput | number | null cloud?: NullableStringFieldUpdateOperationsInput | string | null derivedDataPath?: NullableStringFieldUpdateOperationsInput | string | null chromeDriverPath?: NullableStringFieldUpdateOperationsInput | string | null capability?: NullableStringFieldUpdateOperationsInput | string | null adbRemoteHost?: NullableStringFieldUpdateOperationsInput | string | null adbPort?: NullableIntFieldUpdateOperationsInput | number | null nodeId?: NullableStringFieldUpdateOperationsInput | string | null screenWidth?: NullableStringFieldUpdateOperationsInput | string | null screenHeight?: NullableStringFieldUpdateOperationsInput | string | null dashboard_link?: NullableStringFieldUpdateOperationsInput | string | null total_session_count?: NullableIntFieldUpdateOperationsInput | number | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string healthCheckError?: NullableStringFieldUpdateOperationsInput | string | null healthStatus?: NullableStringFieldUpdateOperationsInput | string | null lastHealthCheckAt?: NullableFloatFieldUpdateOperationsInput | number | null batteryLevel?: NullableIntFieldUpdateOperationsInput | number | null reservationReason?: NullableStringFieldUpdateOperationsInput | string | null reservedBy?: NullableStringFieldUpdateOperationsInput | string | null reservedUntil?: NullableFloatFieldUpdateOperationsInput | number | null storageFree?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null thermalStatus?: NullableStringFieldUpdateOperationsInput | string | null sessionProgress?: NullableStringFieldUpdateOperationsInput | string | null totalHealedCount?: NullableIntFieldUpdateOperationsInput | number | null ip?: NullableStringFieldUpdateOperationsInput | string | null cpuArchitecture?: NullableStringFieldUpdateOperationsInput | string | null owningSessionId?: NullableStringFieldUpdateOperationsInput | string | null lockedAt?: NullableFloatFieldUpdateOperationsInput | number | null } export type DeviceUncheckedUpdateManyWithoutTeamInput = { udid?: StringFieldUpdateOperationsInput | string host?: StringFieldUpdateOperationsInput | string systemPort?: NullableIntFieldUpdateOperationsInput | number | null proxyPort?: NullableIntFieldUpdateOperationsInput | number | null proxyHost?: NullableStringFieldUpdateOperationsInput | string | null wdaLocalPort?: NullableIntFieldUpdateOperationsInput | number | null name?: NullableStringFieldUpdateOperationsInput | string | null state?: NullableStringFieldUpdateOperationsInput | string | null sdk?: NullableStringFieldUpdateOperationsInput | string | null platform?: NullableStringFieldUpdateOperationsInput | string | null deviceType?: NullableStringFieldUpdateOperationsInput | string | null busy?: NullableBoolFieldUpdateOperationsInput | boolean | null userBlocked?: NullableBoolFieldUpdateOperationsInput | boolean | null realDevice?: NullableBoolFieldUpdateOperationsInput | boolean | null session_id?: NullableStringFieldUpdateOperationsInput | string | null offline?: NullableBoolFieldUpdateOperationsInput | boolean | null mjpegServerPort?: NullableIntFieldUpdateOperationsInput | number | null lastCmdExecutedAt?: NullableFloatFieldUpdateOperationsInput | number | null totalUtilizationTimeMilliSec?: FloatFieldUpdateOperationsInput | number sessionStartTime?: FloatFieldUpdateOperationsInput | number newCommandTimeout?: NullableIntFieldUpdateOperationsInput | number | null cloud?: NullableStringFieldUpdateOperationsInput | string | null derivedDataPath?: NullableStringFieldUpdateOperationsInput | string | null chromeDriverPath?: NullableStringFieldUpdateOperationsInput | string | null capability?: NullableStringFieldUpdateOperationsInput | string | null adbRemoteHost?: NullableStringFieldUpdateOperationsInput | string | null adbPort?: NullableIntFieldUpdateOperationsInput | number | null nodeId?: NullableStringFieldUpdateOperationsInput | string | null screenWidth?: NullableStringFieldUpdateOperationsInput | string | null screenHeight?: NullableStringFieldUpdateOperationsInput | string | null dashboard_link?: NullableStringFieldUpdateOperationsInput | string | null total_session_count?: NullableIntFieldUpdateOperationsInput | number | null createdAt?: DateTimeFieldUpdateOperationsInput | Date | string updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string healthCheckError?: NullableStringFieldUpdateOperationsInput | string | null healthStatus?: NullableStringFieldUpdateOperationsInput | string | null lastHealthCheckAt?: NullableFloatFieldUpdateOperationsInput | number | null batteryLevel?: NullableIntFieldUpdateOperationsInput | number | null reservationReason?: NullableStringFieldUpdateOperationsInput | string | null reservedBy?: NullableStringFieldUpdateOperationsInput | string | null reservedUntil?: NullableFloatFieldUpdateOperationsInput | number | null storageFree?: NullableStringFieldUpdateOperationsInput | string | null tags?: NullableStringFieldUpdateOperationsInput | string | null thermalStatus?: NullableStringFieldUpdateOperationsInput | string | null sessionProgress?: NullableStringFieldUpdateOperationsInput | string | null totalHealedCount?: NullableIntFieldUpdateOperationsInput | number | null ip?: NullableStringFieldUpdateOperationsInput | string | null cpuArchitecture?: NullableStringFieldUpdateOperationsInput | string | null owningSessionId?: NullableStringFieldUpdateOperationsInput | string | null lockedAt?: NullableFloatFieldUpdateOperationsInput | number | null } export type ApiKeyUpdateWithoutTeamInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string keyHash?: StringFieldUpdateOperationsInput | string scopes?: StringFieldUpdateOperationsInput | string rateLimit?: IntFieldUpdateOperationsInput | number createdAt?: DateTimeFieldUpdateOperationsInput | Date | string revokedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null lastUsedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null expiresAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null role?: StringFieldUpdateOperationsInput | string user?: UserUpdateOneRequiredWithoutApiKeysNestedInput } export type ApiKeyUncheckedUpdateWithoutTeamInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string keyHash?: StringFieldUpdateOperationsInput | string scopes?: StringFieldUpdateOperationsInput | string rateLimit?: IntFieldUpdateOperationsInput | number createdAt?: DateTimeFieldUpdateOperationsInput | Date | string revokedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null lastUsedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null expiresAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null role?: StringFieldUpdateOperationsInput | string userId?: StringFieldUpdateOperationsInput | string } export type ApiKeyUncheckedUpdateManyWithoutTeamInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string keyHash?: StringFieldUpdateOperationsInput | string scopes?: StringFieldUpdateOperationsInput | string rateLimit?: IntFieldUpdateOperationsInput | number createdAt?: DateTimeFieldUpdateOperationsInput | Date | string revokedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null lastUsedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null expiresAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null role?: StringFieldUpdateOperationsInput | string userId?: StringFieldUpdateOperationsInput | string } export type TeamMemberUpdateWithoutTeamInput = { createdAt?: DateTimeFieldUpdateOperationsInput | Date | string user?: UserUpdateOneRequiredWithoutTeamMembershipsNestedInput } export type TeamMemberUncheckedUpdateWithoutTeamInput = { userId?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type TeamMemberUncheckedUpdateManyWithoutTeamInput = { userId?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type BookmarkCreateManyRecordingInput = { id?: string timecode_ms: number label: string note?: string | null created_at?: Date | string } export type AnnotationCreateManyRecordingInput = { id?: string timecode_ms: number shape: string geometry: string color: string text?: string | null author?: string | null created_at?: Date | string } export type BookmarkUpdateWithoutRecordingInput = { id?: StringFieldUpdateOperationsInput | string timecode_ms?: IntFieldUpdateOperationsInput | number label?: StringFieldUpdateOperationsInput | string note?: NullableStringFieldUpdateOperationsInput | string | null created_at?: DateTimeFieldUpdateOperationsInput | Date | string } export type BookmarkUncheckedUpdateWithoutRecordingInput = { id?: StringFieldUpdateOperationsInput | string timecode_ms?: IntFieldUpdateOperationsInput | number label?: StringFieldUpdateOperationsInput | string note?: NullableStringFieldUpdateOperationsInput | string | null created_at?: DateTimeFieldUpdateOperationsInput | Date | string } export type BookmarkUncheckedUpdateManyWithoutRecordingInput = { id?: StringFieldUpdateOperationsInput | string timecode_ms?: IntFieldUpdateOperationsInput | number label?: StringFieldUpdateOperationsInput | string note?: NullableStringFieldUpdateOperationsInput | string | null created_at?: DateTimeFieldUpdateOperationsInput | Date | string } export type AnnotationUpdateWithoutRecordingInput = { id?: StringFieldUpdateOperationsInput | string timecode_ms?: IntFieldUpdateOperationsInput | number shape?: StringFieldUpdateOperationsInput | string geometry?: StringFieldUpdateOperationsInput | string color?: StringFieldUpdateOperationsInput | string text?: NullableStringFieldUpdateOperationsInput | string | null author?: NullableStringFieldUpdateOperationsInput | string | null created_at?: DateTimeFieldUpdateOperationsInput | Date | string } export type AnnotationUncheckedUpdateWithoutRecordingInput = { id?: StringFieldUpdateOperationsInput | string timecode_ms?: IntFieldUpdateOperationsInput | number shape?: StringFieldUpdateOperationsInput | string geometry?: StringFieldUpdateOperationsInput | string color?: StringFieldUpdateOperationsInput | string text?: NullableStringFieldUpdateOperationsInput | string | null author?: NullableStringFieldUpdateOperationsInput | string | null created_at?: DateTimeFieldUpdateOperationsInput | Date | string } export type AnnotationUncheckedUpdateManyWithoutRecordingInput = { id?: StringFieldUpdateOperationsInput | string timecode_ms?: IntFieldUpdateOperationsInput | number shape?: StringFieldUpdateOperationsInput | string geometry?: StringFieldUpdateOperationsInput | string color?: StringFieldUpdateOperationsInput | string text?: NullableStringFieldUpdateOperationsInput | string | null author?: NullableStringFieldUpdateOperationsInput | string | null created_at?: DateTimeFieldUpdateOperationsInput | Date | string } export type ApiKeyCreateManyUserInput = { id?: string name: string keyHash: string scopes: string rateLimit?: number createdAt?: Date | string revokedAt?: Date | string | null lastUsedAt?: Date | string | null expiresAt?: Date | string | null teamId?: string | null role?: string } export type UserSessionCreateManyUserInput = { id?: string createdAt?: Date | string expiresAt: Date | string lastSeenAt?: Date | string userAgent?: string | null ipHash?: string | null } export type PasswordResetTokenCreateManyUserInput = { id?: string tokenHash: string createdAt?: Date | string expiresAt: Date | string usedAt?: Date | string | null } export type TeamMemberCreateManyUserInput = { teamId: string createdAt?: Date | string } export type ApiKeyUpdateWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string keyHash?: StringFieldUpdateOperationsInput | string scopes?: StringFieldUpdateOperationsInput | string rateLimit?: IntFieldUpdateOperationsInput | number createdAt?: DateTimeFieldUpdateOperationsInput | Date | string revokedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null lastUsedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null expiresAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null role?: StringFieldUpdateOperationsInput | string team?: TeamUpdateOneWithoutApiKeysNestedInput } export type ApiKeyUncheckedUpdateWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string keyHash?: StringFieldUpdateOperationsInput | string scopes?: StringFieldUpdateOperationsInput | string rateLimit?: IntFieldUpdateOperationsInput | number createdAt?: DateTimeFieldUpdateOperationsInput | Date | string revokedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null lastUsedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null expiresAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null teamId?: NullableStringFieldUpdateOperationsInput | string | null role?: StringFieldUpdateOperationsInput | string } export type ApiKeyUncheckedUpdateManyWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string name?: StringFieldUpdateOperationsInput | string keyHash?: StringFieldUpdateOperationsInput | string scopes?: StringFieldUpdateOperationsInput | string rateLimit?: IntFieldUpdateOperationsInput | number createdAt?: DateTimeFieldUpdateOperationsInput | Date | string revokedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null lastUsedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null expiresAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null teamId?: NullableStringFieldUpdateOperationsInput | string | null role?: StringFieldUpdateOperationsInput | string } export type UserSessionUpdateWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: DateTimeFieldUpdateOperationsInput | Date | string lastSeenAt?: DateTimeFieldUpdateOperationsInput | Date | string userAgent?: NullableStringFieldUpdateOperationsInput | string | null ipHash?: NullableStringFieldUpdateOperationsInput | string | null } export type UserSessionUncheckedUpdateWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: DateTimeFieldUpdateOperationsInput | Date | string lastSeenAt?: DateTimeFieldUpdateOperationsInput | Date | string userAgent?: NullableStringFieldUpdateOperationsInput | string | null ipHash?: NullableStringFieldUpdateOperationsInput | string | null } export type UserSessionUncheckedUpdateManyWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: DateTimeFieldUpdateOperationsInput | Date | string lastSeenAt?: DateTimeFieldUpdateOperationsInput | Date | string userAgent?: NullableStringFieldUpdateOperationsInput | string | null ipHash?: NullableStringFieldUpdateOperationsInput | string | null } export type PasswordResetTokenUpdateWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string tokenHash?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: DateTimeFieldUpdateOperationsInput | Date | string usedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null } export type PasswordResetTokenUncheckedUpdateWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string tokenHash?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: DateTimeFieldUpdateOperationsInput | Date | string usedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null } export type PasswordResetTokenUncheckedUpdateManyWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string tokenHash?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string expiresAt?: DateTimeFieldUpdateOperationsInput | Date | string usedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null } export type TeamMemberUpdateWithoutUserInput = { createdAt?: DateTimeFieldUpdateOperationsInput | Date | string team?: TeamUpdateOneRequiredWithoutMembersNestedInput } export type TeamMemberUncheckedUpdateWithoutUserInput = { teamId?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } export type TeamMemberUncheckedUpdateManyWithoutUserInput = { teamId?: StringFieldUpdateOperationsInput | string createdAt?: DateTimeFieldUpdateOperationsInput | Date | string } /** * Aliases for legacy arg types */ /** * @deprecated Use BuildCountOutputTypeDefaultArgs instead */ export type BuildCountOutputTypeArgs = BuildCountOutputTypeDefaultArgs /** * @deprecated Use SessionCountOutputTypeDefaultArgs instead */ export type SessionCountOutputTypeArgs = SessionCountOutputTypeDefaultArgs /** * @deprecated Use TeamCountOutputTypeDefaultArgs instead */ export type TeamCountOutputTypeArgs = TeamCountOutputTypeDefaultArgs /** * @deprecated Use RecordingCountOutputTypeDefaultArgs instead */ export type RecordingCountOutputTypeArgs = RecordingCountOutputTypeDefaultArgs /** * @deprecated Use UserCountOutputTypeDefaultArgs instead */ export type UserCountOutputTypeArgs = UserCountOutputTypeDefaultArgs /** * @deprecated Use BuildDefaultArgs instead */ export type BuildArgs = BuildDefaultArgs /** * @deprecated Use SessionDefaultArgs instead */ export type SessionArgs = SessionDefaultArgs /** * @deprecated Use SessionLogDefaultArgs instead */ export type SessionLogArgs = SessionLogDefaultArgs /** * @deprecated Use LogDefaultArgs instead */ export type LogArgs = LogDefaultArgs /** * @deprecated Use ProfilingDefaultArgs instead */ export type ProfilingArgs = ProfilingDefaultArgs /** * @deprecated Use AppDefaultArgs instead */ export type AppArgs = AppDefaultArgs /** * @deprecated Use DeviceDefaultArgs instead */ export type DeviceArgs = DeviceDefaultArgs /** * @deprecated Use PendingSessionDefaultArgs instead */ export type PendingSessionArgs = PendingSessionDefaultArgs /** * @deprecated Use CLIArgsDefaultArgs instead */ export type CLIArgsArgs = CLIArgsDefaultArgs /** * @deprecated Use WebhookConfigDefaultArgs instead */ export type WebhookConfigArgs = WebhookConfigDefaultArgs /** * @deprecated Use WebConfigDefaultArgs instead */ export type WebConfigArgs = WebConfigDefaultArgs /** * @deprecated Use LocatorEtalonDefaultArgs instead */ export type LocatorEtalonArgs = LocatorEtalonDefaultArgs /** * @deprecated Use PortLeaseDefaultArgs instead */ export type PortLeaseArgs = PortLeaseDefaultArgs /** * @deprecated Use LeaseDefaultArgs instead */ export type LeaseArgs = LeaseDefaultArgs /** * @deprecated Use ApiKeyDefaultArgs instead */ export type ApiKeyArgs = ApiKeyDefaultArgs /** * @deprecated Use TeamDefaultArgs instead */ export type TeamArgs = TeamDefaultArgs /** * @deprecated Use SelectorStateDefaultArgs instead */ export type SelectorStateArgs = SelectorStateDefaultArgs /** * @deprecated Use RecordingDefaultArgs instead */ export type RecordingArgs = RecordingDefaultArgs /** * @deprecated Use BookmarkDefaultArgs instead */ export type BookmarkArgs = BookmarkDefaultArgs /** * @deprecated Use AnnotationDefaultArgs instead */ export type AnnotationArgs = AnnotationDefaultArgs /** * @deprecated Use UserDefaultArgs instead */ export type UserArgs = UserDefaultArgs /** * @deprecated Use UserSessionDefaultArgs instead */ export type UserSessionArgs = UserSessionDefaultArgs /** * @deprecated Use PasswordResetTokenDefaultArgs instead */ export type PasswordResetTokenArgs = PasswordResetTokenDefaultArgs /** * @deprecated Use TeamMemberDefaultArgs instead */ export type TeamMemberArgs = TeamMemberDefaultArgs /** * @deprecated Use EventLogDefaultArgs instead */ export type EventLogArgs = EventLogDefaultArgs /** * @deprecated Use ProjectDefaultArgs instead */ export type ProjectArgs = ProjectDefaultArgs /** * Batch Payload for updateMany & deleteMany & createMany */ export type BatchPayload = { count: number } /** * DMMF */ export const dmmf: runtime.BaseDMMF }