/** * 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 Post * */ export type Post = $Result.DefaultSelection; /** * Model Account * */ export type Account = $Result.DefaultSelection; /** * Model Session * */ export type Session = $Result.DefaultSelection; /** * Model User * */ export type User = $Result.DefaultSelection; /** * Model VerificationToken * */ export type VerificationToken = $Result.DefaultSelection; /** * ## Prisma Client ʲˢ * * Type-safe database client for TypeScript & Node.js * @example * ``` * const prisma = new PrismaClient() * // Fetch zero or more Posts * const posts = await prisma.post.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, const 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 Posts * const posts = await prisma.post.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, ): PrismaClient; /** * Connect with the database */ $connect(): $Utils.JsPromise; /** * Disconnect from the database */ $disconnect(): $Utils.JsPromise; /** * 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, $Utils.Call< Prisma.TypeMapCb, { extArgs: ExtArgs; } > >; /** * `prisma.post`: Exposes CRUD operations for the **Post** model. * Example usage: * ```ts * // Fetch zero or more Posts * const posts = await prisma.post.findMany() * ``` */ get post(): Prisma.PostDelegate; /** * `prisma.account`: Exposes CRUD operations for the **Account** model. * Example usage: * ```ts * // Fetch zero or more Accounts * const accounts = await prisma.account.findMany() * ``` */ get account(): Prisma.AccountDelegate; /** * `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.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.verificationToken`: Exposes CRUD operations for the **VerificationToken** model. * Example usage: * ```ts * // Fetch zero or more VerificationTokens * const verificationTokens = await prisma.verificationToken.findMany() * ``` */ get verificationToken(): Prisma.VerificationTokenDelegate< ExtArgs, ClientOptions >; } 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; /** * 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: 6.19.2 * Query Engine version: c2990dca591cba766e3b7ef5d9e8a84796e47ab7 */ export type PrismaVersion = { client: string; }; export const prismaVersion: PrismaVersion; /** * Utility Types */ export import Bytes = runtime.Bytes; 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< T extends (...args: any) => $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 = { 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< Overwrite< U, { [K in keyof U]-?: At; } > >; 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< O extends object, K extends Key, strict extends Boolean = 1, > = { 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 ? P : never]-?: O[P] } & O) : never >; type _Strict = U extends unknown ? U & OptionalFlat<_Record, keyof U>, never>> : never; export type Strict = ComputeRaw<_Strict>; /** End Helper Types for "Merge" **/ export type Merge = ComputeRaw<_Merge>>; /** 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< UnEnumerate 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< T, K extends Enumerable | 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: { Post: "Post"; Account: "Account"; Session: "Session"; User: "User"; VerificationToken: "VerificationToken"; }; export type ModelName = (typeof ModelName)[keyof typeof ModelName]; export type Datasources = { db?: Datasource; }; interface TypeMapCb extends $Utils.Fn< { extArgs: $Extensions.InternalArgs }, $Utils.Record > { returns: Prisma.TypeMap< this["params"]["extArgs"], ClientOptions extends { omit: infer OmitOptions } ? OmitOptions : {} >; } export type TypeMap< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}, > = { globalOmitOptions: { omit: GlobalOmitOptions; }; meta: { modelProps: "post" | "account" | "session" | "user" | "verificationToken"; txIsolationLevel: Prisma.TransactionIsolationLevel; }; model: { Post: { payload: Prisma.$PostPayload; fields: Prisma.PostFieldRefs; operations: { findUnique: { args: Prisma.PostFindUniqueArgs; result: $Utils.PayloadToResult | null; }; findUniqueOrThrow: { args: Prisma.PostFindUniqueOrThrowArgs; result: $Utils.PayloadToResult; }; findFirst: { args: Prisma.PostFindFirstArgs; result: $Utils.PayloadToResult | null; }; findFirstOrThrow: { args: Prisma.PostFindFirstOrThrowArgs; result: $Utils.PayloadToResult; }; findMany: { args: Prisma.PostFindManyArgs; result: $Utils.PayloadToResult[]; }; create: { args: Prisma.PostCreateArgs; result: $Utils.PayloadToResult; }; createMany: { args: Prisma.PostCreateManyArgs; result: BatchPayload; }; delete: { args: Prisma.PostDeleteArgs; result: $Utils.PayloadToResult; }; update: { args: Prisma.PostUpdateArgs; result: $Utils.PayloadToResult; }; deleteMany: { args: Prisma.PostDeleteManyArgs; result: BatchPayload; }; updateMany: { args: Prisma.PostUpdateManyArgs; result: BatchPayload; }; upsert: { args: Prisma.PostUpsertArgs; result: $Utils.PayloadToResult; }; aggregate: { args: Prisma.PostAggregateArgs; result: $Utils.Optional; }; groupBy: { args: Prisma.PostGroupByArgs; result: $Utils.Optional[]; }; count: { args: Prisma.PostCountArgs; result: $Utils.Optional | number; }; }; }; Account: { payload: Prisma.$AccountPayload; fields: Prisma.AccountFieldRefs; operations: { findUnique: { args: Prisma.AccountFindUniqueArgs; result: $Utils.PayloadToResult | null; }; findUniqueOrThrow: { args: Prisma.AccountFindUniqueOrThrowArgs; result: $Utils.PayloadToResult; }; findFirst: { args: Prisma.AccountFindFirstArgs; result: $Utils.PayloadToResult | null; }; findFirstOrThrow: { args: Prisma.AccountFindFirstOrThrowArgs; result: $Utils.PayloadToResult; }; findMany: { args: Prisma.AccountFindManyArgs; result: $Utils.PayloadToResult[]; }; create: { args: Prisma.AccountCreateArgs; result: $Utils.PayloadToResult; }; createMany: { args: Prisma.AccountCreateManyArgs; result: BatchPayload; }; delete: { args: Prisma.AccountDeleteArgs; result: $Utils.PayloadToResult; }; update: { args: Prisma.AccountUpdateArgs; result: $Utils.PayloadToResult; }; deleteMany: { args: Prisma.AccountDeleteManyArgs; result: BatchPayload; }; updateMany: { args: Prisma.AccountUpdateManyArgs; result: BatchPayload; }; upsert: { args: Prisma.AccountUpsertArgs; result: $Utils.PayloadToResult; }; aggregate: { args: Prisma.AccountAggregateArgs; result: $Utils.Optional; }; groupBy: { args: Prisma.AccountGroupByArgs; result: $Utils.Optional[]; }; count: { args: Prisma.AccountCountArgs; 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; }; 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; }; }; }; 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; }; 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; }; }; }; VerificationToken: { payload: Prisma.$VerificationTokenPayload; fields: Prisma.VerificationTokenFieldRefs; operations: { findUnique: { args: Prisma.VerificationTokenFindUniqueArgs; result: $Utils.PayloadToResult | null; }; findUniqueOrThrow: { args: Prisma.VerificationTokenFindUniqueOrThrowArgs; result: $Utils.PayloadToResult; }; findFirst: { args: Prisma.VerificationTokenFindFirstArgs; result: $Utils.PayloadToResult | null; }; findFirstOrThrow: { args: Prisma.VerificationTokenFindFirstOrThrowArgs; result: $Utils.PayloadToResult; }; findMany: { args: Prisma.VerificationTokenFindManyArgs; result: $Utils.PayloadToResult[]; }; create: { args: Prisma.VerificationTokenCreateArgs; result: $Utils.PayloadToResult; }; createMany: { args: Prisma.VerificationTokenCreateManyArgs; result: BatchPayload; }; delete: { args: Prisma.VerificationTokenDeleteArgs; result: $Utils.PayloadToResult; }; update: { args: Prisma.VerificationTokenUpdateArgs; result: $Utils.PayloadToResult; }; deleteMany: { args: Prisma.VerificationTokenDeleteManyArgs; result: BatchPayload; }; updateMany: { args: Prisma.VerificationTokenUpdateManyArgs; result: BatchPayload; }; upsert: { args: Prisma.VerificationTokenUpsertArgs; result: $Utils.PayloadToResult; }; aggregate: { args: Prisma.VerificationTokenAggregateArgs; result: $Utils.Optional; }; groupBy: { args: Prisma.VerificationTokenGroupByArgs; result: $Utils.Optional[]; }; count: { args: Prisma.VerificationTokenCountArgs; 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 * ``` * // Shorthand for `emit: 'stdout'` * log: ['query', 'info', 'warn', 'error'] * * // Emit as events only * log: [ * { emit: 'event', level: 'query' }, * { emit: 'event', level: 'info' }, * { emit: 'event', level: 'warn' } * { emit: 'event', level: 'error' } * ] * * / Emit as events and log to stdout * og: [ * { emit: 'stdout', level: 'query' }, * { emit: 'stdout', level: 'info' }, * { emit: 'stdout', level: 'warn' } * { emit: 'stdout', level: 'error' } * * ``` * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/logging#the-log-option). */ log?: (LogLevel | LogDefinition)[]; /** * The default values for transactionOptions * maxWait ?= 2000 * timeout ?= 5000 */ transactionOptions?: { maxWait?: number; timeout?: number; isolationLevel?: Prisma.TransactionIsolationLevel; }; /** * Instance of a Driver Adapter, e.g., like one provided by `@prisma/adapter-planetscale` */ adapter?: runtime.SqlDriverAdapterFactory | null; /** * Global configuration for omitting model fields by default. * * @example * ``` * const prisma = new PrismaClient({ * omit: { * user: { * password: true * } * } * }) * ``` */ omit?: Prisma.GlobalOmitConfig; } export type GlobalOmitConfig = { post?: PostOmit; account?: AccountOmit; session?: SessionOmit; user?: UserOmit; verificationToken?: VerificationTokenOmit; }; /* Types for Logging */ export type LogLevel = "info" | "query" | "warn" | "error"; export type LogDefinition = { level: LogLevel; emit: "stdout" | "event"; }; export type CheckIsLogLevel = T extends LogLevel ? T : never; export type GetLogType = CheckIsLogLevel< T extends LogDefinition ? T["level"] : T >; export type GetEvents = T extends Array ? GetLogType : never; export type QueryEvent = { timestamp: Date; query: string; params: string; duration: number; target: string; }; export type LogEvent = { timestamp: Date; message: string; target: string; }; /* End Types for Logging */ export type PrismaAction = | "findUnique" | "findUniqueOrThrow" | "findMany" | "findFirst" | "findFirstOrThrow" | "create" | "createMany" | "createManyAndReturn" | "update" | "updateMany" | "updateManyAndReturn" | "upsert" | "delete" | "deleteMany" | "executeRaw" | "queryRaw" | "aggregate" | "count" | "runCommandRaw" | "findRaw" | "groupBy"; // tested in getLogLevel.test.ts export function getLogLevel( log: Array, ): LogLevel | undefined; /** * `PrismaClient` proxy available in interactive transactions. */ export type TransactionClient = Omit< Prisma.DefaultPrismaClient, runtime.ITXClientDenyList >; export type Datasource = { url?: string; }; /** * Count Types */ /** * Count Type UserCountOutputType */ export type UserCountOutputType = { accounts: number; sessions: number; posts: number; }; export type UserCountOutputTypeSelect< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { accounts?: boolean | UserCountOutputTypeCountAccountsArgs; sessions?: boolean | UserCountOutputTypeCountSessionsArgs; posts?: boolean | UserCountOutputTypeCountPostsArgs; }; // Custom InputTypes /** * UserCountOutputType without action */ export type UserCountOutputTypeDefaultArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the UserCountOutputType */ select?: UserCountOutputTypeSelect | null; }; /** * UserCountOutputType without action */ export type UserCountOutputTypeCountAccountsArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { where?: AccountWhereInput; }; /** * UserCountOutputType without action */ export type UserCountOutputTypeCountSessionsArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { where?: SessionWhereInput; }; /** * UserCountOutputType without action */ export type UserCountOutputTypeCountPostsArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { where?: PostWhereInput; }; /** * Models */ /** * Model Post */ export type AggregatePost = { _count: PostCountAggregateOutputType | null; _avg: PostAvgAggregateOutputType | null; _sum: PostSumAggregateOutputType | null; _min: PostMinAggregateOutputType | null; _max: PostMaxAggregateOutputType | null; }; export type PostAvgAggregateOutputType = { id: number | null; }; export type PostSumAggregateOutputType = { id: number | null; }; export type PostMinAggregateOutputType = { id: number | null; name: string | null; createdAt: Date | null; updatedAt: Date | null; createdById: string | null; }; export type PostMaxAggregateOutputType = { id: number | null; name: string | null; createdAt: Date | null; updatedAt: Date | null; createdById: string | null; }; export type PostCountAggregateOutputType = { id: number; name: number; createdAt: number; updatedAt: number; createdById: number; _all: number; }; export type PostAvgAggregateInputType = { id?: true; }; export type PostSumAggregateInputType = { id?: true; }; export type PostMinAggregateInputType = { id?: true; name?: true; createdAt?: true; updatedAt?: true; createdById?: true; }; export type PostMaxAggregateInputType = { id?: true; name?: true; createdAt?: true; updatedAt?: true; createdById?: true; }; export type PostCountAggregateInputType = { id?: true; name?: true; createdAt?: true; updatedAt?: true; createdById?: true; _all?: true; }; export type PostAggregateArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Filter which Post to aggregate. */ where?: PostWhereInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Posts to fetch. */ orderBy?: PostOrderByWithRelationInput | PostOrderByWithRelationInput[]; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: PostWhereUniqueInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Posts 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` Posts. */ skip?: number; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Posts **/ _count?: true | PostCountAggregateInputType; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: PostAvgAggregateInputType; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: PostSumAggregateInputType; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: PostMinAggregateInputType; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: PostMaxAggregateInputType; }; export type GetPostAggregateType = { [P in keyof T & keyof AggregatePost]: P extends "_count" | "count" ? T[P] extends true ? number : GetScalarType : GetScalarType; }; export type PostGroupByArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { where?: PostWhereInput; orderBy?: | PostOrderByWithAggregationInput | PostOrderByWithAggregationInput[]; by: PostScalarFieldEnum[] | PostScalarFieldEnum; having?: PostScalarWhereWithAggregatesInput; take?: number; skip?: number; _count?: PostCountAggregateInputType | true; _avg?: PostAvgAggregateInputType; _sum?: PostSumAggregateInputType; _min?: PostMinAggregateInputType; _max?: PostMaxAggregateInputType; }; export type PostGroupByOutputType = { id: number; name: string; createdAt: Date; updatedAt: Date; createdById: string; _count: PostCountAggregateOutputType | null; _avg: PostAvgAggregateOutputType | null; _sum: PostSumAggregateOutputType | null; _min: PostMinAggregateOutputType | null; _max: PostMaxAggregateOutputType | null; }; type GetPostGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in keyof T & keyof PostGroupByOutputType]: P extends "_count" ? T[P] extends boolean ? number : GetScalarType : GetScalarType; } > >; export type PostSelect< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = $Extensions.GetSelect< { id?: boolean; name?: boolean; createdAt?: boolean; updatedAt?: boolean; createdById?: boolean; createdBy?: boolean | UserDefaultArgs; }, ExtArgs["result"]["post"] >; export type PostSelectScalar = { id?: boolean; name?: boolean; createdAt?: boolean; updatedAt?: boolean; createdById?: boolean; }; export type PostOmit< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = $Extensions.GetOmit< "id" | "name" | "createdAt" | "updatedAt" | "createdById", ExtArgs["result"]["post"] >; export type PostInclude< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { createdBy?: boolean | UserDefaultArgs; }; export type $PostPayload< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { name: "Post"; objects: { createdBy: Prisma.$UserPayload; }; scalars: $Extensions.GetPayloadResult< { id: number; name: string; createdAt: Date; updatedAt: Date; createdById: string; }, ExtArgs["result"]["post"] >; composites: {}; }; type PostGetPayload = $Result.GetResult; type PostCountArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = Omit & { select?: PostCountAggregateInputType | true; }; export interface PostDelegate< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}, > { [K: symbol]: { types: Prisma.TypeMap["model"]["Post"]; meta: { name: "Post" }; }; /** * Find zero or one Post that matches the filter. * @param {PostFindUniqueArgs} args - Arguments to find a Post * @example * // Get one Post * const post = await prisma.post.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique( args: SelectSubset>, ): Prisma__PostClient< $Result.GetResult< Prisma.$PostPayload, T, "findUnique", GlobalOmitOptions > | null, null, ExtArgs, GlobalOmitOptions >; /** * Find one Post that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {PostFindUniqueOrThrowArgs} args - Arguments to find a Post * @example * // Get one Post * const post = await prisma.post.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow( args: SelectSubset>, ): Prisma__PostClient< $Result.GetResult< Prisma.$PostPayload, T, "findUniqueOrThrow", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Find the first Post 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 {PostFindFirstArgs} args - Arguments to find a Post * @example * // Get one Post * const post = await prisma.post.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst( args?: SelectSubset>, ): Prisma__PostClient< $Result.GetResult< Prisma.$PostPayload, T, "findFirst", GlobalOmitOptions > | null, null, ExtArgs, GlobalOmitOptions >; /** * Find the first Post 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 {PostFindFirstOrThrowArgs} args - Arguments to find a Post * @example * // Get one Post * const post = await prisma.post.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow( args?: SelectSubset>, ): Prisma__PostClient< $Result.GetResult< Prisma.$PostPayload, T, "findFirstOrThrow", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Find zero or more Posts 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 {PostFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Posts * const posts = await prisma.post.findMany() * * // Get first 10 Posts * const posts = await prisma.post.findMany({ take: 10 }) * * // Only select the `id` * const postWithIdOnly = await prisma.post.findMany({ select: { id: true } }) * */ findMany( args?: SelectSubset>, ): Prisma.PrismaPromise< $Result.GetResult< Prisma.$PostPayload, T, "findMany", GlobalOmitOptions > >; /** * Create a Post. * @param {PostCreateArgs} args - Arguments to create a Post. * @example * // Create one Post * const Post = await prisma.post.create({ * data: { * // ... data to create a Post * } * }) * */ create( args: SelectSubset>, ): Prisma__PostClient< $Result.GetResult< Prisma.$PostPayload, T, "create", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Create many Posts. * @param {PostCreateManyArgs} args - Arguments to create many Posts. * @example * // Create many Posts * const post = await prisma.post.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany( args?: SelectSubset>, ): Prisma.PrismaPromise; /** * Delete a Post. * @param {PostDeleteArgs} args - Arguments to delete one Post. * @example * // Delete one Post * const Post = await prisma.post.delete({ * where: { * // ... filter to delete one Post * } * }) * */ delete( args: SelectSubset>, ): Prisma__PostClient< $Result.GetResult< Prisma.$PostPayload, T, "delete", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Update one Post. * @param {PostUpdateArgs} args - Arguments to update one Post. * @example * // Update one Post * const post = await prisma.post.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update( args: SelectSubset>, ): Prisma__PostClient< $Result.GetResult< Prisma.$PostPayload, T, "update", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Delete zero or more Posts. * @param {PostDeleteManyArgs} args - Arguments to filter Posts to delete. * @example * // Delete a few Posts * const { count } = await prisma.post.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany( args?: SelectSubset>, ): Prisma.PrismaPromise; /** * Update zero or more Posts. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PostUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Posts * const post = await prisma.post.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany( args: SelectSubset>, ): Prisma.PrismaPromise; /** * Create or update one Post. * @param {PostUpsertArgs} args - Arguments to update or create a Post. * @example * // Update or create a Post * const post = await prisma.post.upsert({ * create: { * // ... data to create a Post * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the Post we want to update * } * }) */ upsert( args: SelectSubset>, ): Prisma__PostClient< $Result.GetResult< Prisma.$PostPayload, T, "upsert", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Count the number of Posts. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PostCountArgs} args - Arguments to filter Posts to count. * @example * // Count the number of Posts * const count = await prisma.post.count({ * where: { * // ... the filter for the Posts 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 Post. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PostAggregateArgs} 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 Post. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {PostGroupByArgs} 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 PostGroupByArgs, HasSelectOrTake extends Or< Extends<"skip", Keys>, Extends<"take", Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: PostGroupByArgs["orderBy"] } : { orderBy?: PostGroupByArgs["orderBy"] }, OrderFields extends ExcludeUnderscoreKeys< Keys> >, 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 ? GetPostGroupByPayload : Prisma.PrismaPromise; /** * Fields of the Post model */ readonly fields: PostFieldRefs; } /** * The delegate class that acts as a "Promise-like" for Post. * 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__PostClient< T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}, > extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise"; createdBy = {}>( args?: Subset>, ): Prisma__UserClient< | $Result.GetResult< Prisma.$UserPayload, T, "findUniqueOrThrow", GlobalOmitOptions > | Null, Null, ExtArgs, GlobalOmitOptions >; /** * 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 Post model */ interface PostFieldRefs { readonly id: FieldRef<"Post", "Int">; readonly name: FieldRef<"Post", "String">; readonly createdAt: FieldRef<"Post", "DateTime">; readonly updatedAt: FieldRef<"Post", "DateTime">; readonly createdById: FieldRef<"Post", "String">; } // Custom InputTypes /** * Post findUnique */ export type PostFindUniqueArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Post */ select?: PostSelect | null; /** * Omit specific fields from the Post */ omit?: PostOmit | null; /** * Choose, which related nodes to fetch as well */ include?: PostInclude | null; /** * Filter, which Post to fetch. */ where: PostWhereUniqueInput; }; /** * Post findUniqueOrThrow */ export type PostFindUniqueOrThrowArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Post */ select?: PostSelect | null; /** * Omit specific fields from the Post */ omit?: PostOmit | null; /** * Choose, which related nodes to fetch as well */ include?: PostInclude | null; /** * Filter, which Post to fetch. */ where: PostWhereUniqueInput; }; /** * Post findFirst */ export type PostFindFirstArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Post */ select?: PostSelect | null; /** * Omit specific fields from the Post */ omit?: PostOmit | null; /** * Choose, which related nodes to fetch as well */ include?: PostInclude | null; /** * Filter, which Post to fetch. */ where?: PostWhereInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Posts to fetch. */ orderBy?: PostOrderByWithRelationInput | PostOrderByWithRelationInput[]; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Posts. */ cursor?: PostWhereUniqueInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Posts 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` Posts. */ skip?: number; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Posts. */ distinct?: PostScalarFieldEnum | PostScalarFieldEnum[]; }; /** * Post findFirstOrThrow */ export type PostFindFirstOrThrowArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Post */ select?: PostSelect | null; /** * Omit specific fields from the Post */ omit?: PostOmit | null; /** * Choose, which related nodes to fetch as well */ include?: PostInclude | null; /** * Filter, which Post to fetch. */ where?: PostWhereInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Posts to fetch. */ orderBy?: PostOrderByWithRelationInput | PostOrderByWithRelationInput[]; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Posts. */ cursor?: PostWhereUniqueInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Posts 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` Posts. */ skip?: number; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Posts. */ distinct?: PostScalarFieldEnum | PostScalarFieldEnum[]; }; /** * Post findMany */ export type PostFindManyArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Post */ select?: PostSelect | null; /** * Omit specific fields from the Post */ omit?: PostOmit | null; /** * Choose, which related nodes to fetch as well */ include?: PostInclude | null; /** * Filter, which Posts to fetch. */ where?: PostWhereInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Posts to fetch. */ orderBy?: PostOrderByWithRelationInput | PostOrderByWithRelationInput[]; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Posts. */ cursor?: PostWhereUniqueInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Posts 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` Posts. */ skip?: number; distinct?: PostScalarFieldEnum | PostScalarFieldEnum[]; }; /** * Post create */ export type PostCreateArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Post */ select?: PostSelect | null; /** * Omit specific fields from the Post */ omit?: PostOmit | null; /** * Choose, which related nodes to fetch as well */ include?: PostInclude | null; /** * The data needed to create a Post. */ data: XOR; }; /** * Post createMany */ export type PostCreateManyArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * The data used to create many Posts. */ data: PostCreateManyInput | PostCreateManyInput[]; skipDuplicates?: boolean; }; /** * Post update */ export type PostUpdateArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Post */ select?: PostSelect | null; /** * Omit specific fields from the Post */ omit?: PostOmit | null; /** * Choose, which related nodes to fetch as well */ include?: PostInclude | null; /** * The data needed to update a Post. */ data: XOR; /** * Choose, which Post to update. */ where: PostWhereUniqueInput; }; /** * Post updateMany */ export type PostUpdateManyArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * The data used to update Posts. */ data: XOR; /** * Filter which Posts to update */ where?: PostWhereInput; /** * Limit how many Posts to update. */ limit?: number; }; /** * Post upsert */ export type PostUpsertArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Post */ select?: PostSelect | null; /** * Omit specific fields from the Post */ omit?: PostOmit | null; /** * Choose, which related nodes to fetch as well */ include?: PostInclude | null; /** * The filter to search for the Post to update in case it exists. */ where: PostWhereUniqueInput; /** * In case the Post found by the `where` argument doesn't exist, create a new Post with this data. */ create: XOR; /** * In case the Post was found with the provided `where` argument, update it with this data. */ update: XOR; }; /** * Post delete */ export type PostDeleteArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Post */ select?: PostSelect | null; /** * Omit specific fields from the Post */ omit?: PostOmit | null; /** * Choose, which related nodes to fetch as well */ include?: PostInclude | null; /** * Filter which Post to delete. */ where: PostWhereUniqueInput; }; /** * Post deleteMany */ export type PostDeleteManyArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Filter which Posts to delete */ where?: PostWhereInput; /** * Limit how many Posts to delete. */ limit?: number; }; /** * Post without action */ export type PostDefaultArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Post */ select?: PostSelect | null; /** * Omit specific fields from the Post */ omit?: PostOmit | null; /** * Choose, which related nodes to fetch as well */ include?: PostInclude | null; }; /** * Model Account */ export type AggregateAccount = { _count: AccountCountAggregateOutputType | null; _avg: AccountAvgAggregateOutputType | null; _sum: AccountSumAggregateOutputType | null; _min: AccountMinAggregateOutputType | null; _max: AccountMaxAggregateOutputType | null; }; export type AccountAvgAggregateOutputType = { expires_at: number | null; refresh_token_expires_in: number | null; }; export type AccountSumAggregateOutputType = { expires_at: number | null; refresh_token_expires_in: number | null; }; export type AccountMinAggregateOutputType = { id: string | null; userId: string | null; type: string | null; provider: string | null; providerAccountId: string | null; refresh_token: string | null; access_token: string | null; expires_at: number | null; token_type: string | null; scope: string | null; id_token: string | null; session_state: string | null; refresh_token_expires_in: number | null; }; export type AccountMaxAggregateOutputType = { id: string | null; userId: string | null; type: string | null; provider: string | null; providerAccountId: string | null; refresh_token: string | null; access_token: string | null; expires_at: number | null; token_type: string | null; scope: string | null; id_token: string | null; session_state: string | null; refresh_token_expires_in: number | null; }; export type AccountCountAggregateOutputType = { id: number; userId: number; type: number; provider: number; providerAccountId: number; refresh_token: number; access_token: number; expires_at: number; token_type: number; scope: number; id_token: number; session_state: number; refresh_token_expires_in: number; _all: number; }; export type AccountAvgAggregateInputType = { expires_at?: true; refresh_token_expires_in?: true; }; export type AccountSumAggregateInputType = { expires_at?: true; refresh_token_expires_in?: true; }; export type AccountMinAggregateInputType = { id?: true; userId?: true; type?: true; provider?: true; providerAccountId?: true; refresh_token?: true; access_token?: true; expires_at?: true; token_type?: true; scope?: true; id_token?: true; session_state?: true; refresh_token_expires_in?: true; }; export type AccountMaxAggregateInputType = { id?: true; userId?: true; type?: true; provider?: true; providerAccountId?: true; refresh_token?: true; access_token?: true; expires_at?: true; token_type?: true; scope?: true; id_token?: true; session_state?: true; refresh_token_expires_in?: true; }; export type AccountCountAggregateInputType = { id?: true; userId?: true; type?: true; provider?: true; providerAccountId?: true; refresh_token?: true; access_token?: true; expires_at?: true; token_type?: true; scope?: true; id_token?: true; session_state?: true; refresh_token_expires_in?: true; _all?: true; }; export type AccountAggregateArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Filter which Account to aggregate. */ where?: AccountWhereInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Accounts to fetch. */ orderBy?: | AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[]; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: AccountWhereUniqueInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Accounts 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` Accounts. */ skip?: number; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned Accounts **/ _count?: true | AccountCountAggregateInputType; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to average **/ _avg?: AccountAvgAggregateInputType; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to sum **/ _sum?: AccountSumAggregateInputType; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: AccountMinAggregateInputType; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: AccountMaxAggregateInputType; }; export type GetAccountAggregateType = { [P in keyof T & keyof AggregateAccount]: P extends "_count" | "count" ? T[P] extends true ? number : GetScalarType : GetScalarType; }; export type AccountGroupByArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { where?: AccountWhereInput; orderBy?: | AccountOrderByWithAggregationInput | AccountOrderByWithAggregationInput[]; by: AccountScalarFieldEnum[] | AccountScalarFieldEnum; having?: AccountScalarWhereWithAggregatesInput; take?: number; skip?: number; _count?: AccountCountAggregateInputType | true; _avg?: AccountAvgAggregateInputType; _sum?: AccountSumAggregateInputType; _min?: AccountMinAggregateInputType; _max?: AccountMaxAggregateInputType; }; export type AccountGroupByOutputType = { id: string; userId: string; type: string; provider: string; providerAccountId: string; refresh_token: string | null; access_token: string | null; expires_at: number | null; token_type: string | null; scope: string | null; id_token: string | null; session_state: string | null; refresh_token_expires_in: number | null; _count: AccountCountAggregateOutputType | null; _avg: AccountAvgAggregateOutputType | null; _sum: AccountSumAggregateOutputType | null; _min: AccountMinAggregateOutputType | null; _max: AccountMaxAggregateOutputType | null; }; type GetAccountGroupByPayload = Prisma.PrismaPromise< Array< PickEnumerable & { [P in keyof T & keyof AccountGroupByOutputType]: P extends "_count" ? T[P] extends boolean ? number : GetScalarType : GetScalarType; } > >; export type AccountSelect< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = $Extensions.GetSelect< { id?: boolean; userId?: boolean; type?: boolean; provider?: boolean; providerAccountId?: boolean; refresh_token?: boolean; access_token?: boolean; expires_at?: boolean; token_type?: boolean; scope?: boolean; id_token?: boolean; session_state?: boolean; refresh_token_expires_in?: boolean; user?: boolean | UserDefaultArgs; }, ExtArgs["result"]["account"] >; export type AccountSelectScalar = { id?: boolean; userId?: boolean; type?: boolean; provider?: boolean; providerAccountId?: boolean; refresh_token?: boolean; access_token?: boolean; expires_at?: boolean; token_type?: boolean; scope?: boolean; id_token?: boolean; session_state?: boolean; refresh_token_expires_in?: boolean; }; export type AccountOmit< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = $Extensions.GetOmit< | "id" | "userId" | "type" | "provider" | "providerAccountId" | "refresh_token" | "access_token" | "expires_at" | "token_type" | "scope" | "id_token" | "session_state" | "refresh_token_expires_in", ExtArgs["result"]["account"] >; export type AccountInclude< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { user?: boolean | UserDefaultArgs; }; export type $AccountPayload< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { name: "Account"; objects: { user: Prisma.$UserPayload; }; scalars: $Extensions.GetPayloadResult< { id: string; userId: string; type: string; provider: string; providerAccountId: string; refresh_token: string | null; access_token: string | null; expires_at: number | null; token_type: string | null; scope: string | null; id_token: string | null; session_state: string | null; refresh_token_expires_in: number | null; }, ExtArgs["result"]["account"] >; composites: {}; }; type AccountGetPayload< S extends boolean | null | undefined | AccountDefaultArgs, > = $Result.GetResult; type AccountCountArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = Omit & { select?: AccountCountAggregateInputType | true; }; export interface AccountDelegate< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}, > { [K: symbol]: { types: Prisma.TypeMap["model"]["Account"]; meta: { name: "Account" }; }; /** * Find zero or one Account that matches the filter. * @param {AccountFindUniqueArgs} args - Arguments to find a Account * @example * // Get one Account * const account = await prisma.account.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique( args: SelectSubset>, ): Prisma__AccountClient< $Result.GetResult< Prisma.$AccountPayload, T, "findUnique", GlobalOmitOptions > | null, null, ExtArgs, GlobalOmitOptions >; /** * Find one Account that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {AccountFindUniqueOrThrowArgs} args - Arguments to find a Account * @example * // Get one Account * const account = await prisma.account.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow( args: SelectSubset>, ): Prisma__AccountClient< $Result.GetResult< Prisma.$AccountPayload, T, "findUniqueOrThrow", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Find the first Account 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 {AccountFindFirstArgs} args - Arguments to find a Account * @example * // Get one Account * const account = await prisma.account.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst( args?: SelectSubset>, ): Prisma__AccountClient< $Result.GetResult< Prisma.$AccountPayload, T, "findFirst", GlobalOmitOptions > | null, null, ExtArgs, GlobalOmitOptions >; /** * Find the first Account 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 {AccountFindFirstOrThrowArgs} args - Arguments to find a Account * @example * // Get one Account * const account = await prisma.account.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow( args?: SelectSubset>, ): Prisma__AccountClient< $Result.GetResult< Prisma.$AccountPayload, T, "findFirstOrThrow", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Find zero or more Accounts 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 {AccountFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all Accounts * const accounts = await prisma.account.findMany() * * // Get first 10 Accounts * const accounts = await prisma.account.findMany({ take: 10 }) * * // Only select the `id` * const accountWithIdOnly = await prisma.account.findMany({ select: { id: true } }) * */ findMany( args?: SelectSubset>, ): Prisma.PrismaPromise< $Result.GetResult< Prisma.$AccountPayload, T, "findMany", GlobalOmitOptions > >; /** * Create a Account. * @param {AccountCreateArgs} args - Arguments to create a Account. * @example * // Create one Account * const Account = await prisma.account.create({ * data: { * // ... data to create a Account * } * }) * */ create( args: SelectSubset>, ): Prisma__AccountClient< $Result.GetResult< Prisma.$AccountPayload, T, "create", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Create many Accounts. * @param {AccountCreateManyArgs} args - Arguments to create many Accounts. * @example * // Create many Accounts * const account = await prisma.account.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany( args?: SelectSubset>, ): Prisma.PrismaPromise; /** * Delete a Account. * @param {AccountDeleteArgs} args - Arguments to delete one Account. * @example * // Delete one Account * const Account = await prisma.account.delete({ * where: { * // ... filter to delete one Account * } * }) * */ delete( args: SelectSubset>, ): Prisma__AccountClient< $Result.GetResult< Prisma.$AccountPayload, T, "delete", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Update one Account. * @param {AccountUpdateArgs} args - Arguments to update one Account. * @example * // Update one Account * const account = await prisma.account.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update( args: SelectSubset>, ): Prisma__AccountClient< $Result.GetResult< Prisma.$AccountPayload, T, "update", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Delete zero or more Accounts. * @param {AccountDeleteManyArgs} args - Arguments to filter Accounts to delete. * @example * // Delete a few Accounts * const { count } = await prisma.account.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany( args?: SelectSubset>, ): Prisma.PrismaPromise; /** * Update zero or more Accounts. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AccountUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many Accounts * const account = await prisma.account.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany( args: SelectSubset>, ): Prisma.PrismaPromise; /** * Create or update one Account. * @param {AccountUpsertArgs} args - Arguments to update or create a Account. * @example * // Update or create a Account * const account = await prisma.account.upsert({ * create: { * // ... data to create a Account * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the Account we want to update * } * }) */ upsert( args: SelectSubset>, ): Prisma__AccountClient< $Result.GetResult< Prisma.$AccountPayload, T, "upsert", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Count the number of Accounts. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AccountCountArgs} args - Arguments to filter Accounts to count. * @example * // Count the number of Accounts * const count = await prisma.account.count({ * where: { * // ... the filter for the Accounts 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 Account. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AccountAggregateArgs} 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 Account. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {AccountGroupByArgs} 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 AccountGroupByArgs, HasSelectOrTake extends Or< Extends<"skip", Keys>, Extends<"take", Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: AccountGroupByArgs["orderBy"] } : { orderBy?: AccountGroupByArgs["orderBy"] }, OrderFields extends ExcludeUnderscoreKeys< Keys> >, 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 ? GetAccountGroupByPayload : Prisma.PrismaPromise; /** * Fields of the Account model */ readonly fields: AccountFieldRefs; } /** * The delegate class that acts as a "Promise-like" for Account. * 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__AccountClient< T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}, > extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise"; user = {}>( args?: Subset>, ): Prisma__UserClient< | $Result.GetResult< Prisma.$UserPayload, T, "findUniqueOrThrow", GlobalOmitOptions > | Null, Null, ExtArgs, GlobalOmitOptions >; /** * 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 Account model */ interface AccountFieldRefs { readonly id: FieldRef<"Account", "String">; readonly userId: FieldRef<"Account", "String">; readonly type: FieldRef<"Account", "String">; readonly provider: FieldRef<"Account", "String">; readonly providerAccountId: FieldRef<"Account", "String">; readonly refresh_token: FieldRef<"Account", "String">; readonly access_token: FieldRef<"Account", "String">; readonly expires_at: FieldRef<"Account", "Int">; readonly token_type: FieldRef<"Account", "String">; readonly scope: FieldRef<"Account", "String">; readonly id_token: FieldRef<"Account", "String">; readonly session_state: FieldRef<"Account", "String">; readonly refresh_token_expires_in: FieldRef<"Account", "Int">; } // Custom InputTypes /** * Account findUnique */ export type AccountFindUniqueArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Account */ select?: AccountSelect | null; /** * Omit specific fields from the Account */ omit?: AccountOmit | null; /** * Choose, which related nodes to fetch as well */ include?: AccountInclude | null; /** * Filter, which Account to fetch. */ where: AccountWhereUniqueInput; }; /** * Account findUniqueOrThrow */ export type AccountFindUniqueOrThrowArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Account */ select?: AccountSelect | null; /** * Omit specific fields from the Account */ omit?: AccountOmit | null; /** * Choose, which related nodes to fetch as well */ include?: AccountInclude | null; /** * Filter, which Account to fetch. */ where: AccountWhereUniqueInput; }; /** * Account findFirst */ export type AccountFindFirstArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Account */ select?: AccountSelect | null; /** * Omit specific fields from the Account */ omit?: AccountOmit | null; /** * Choose, which related nodes to fetch as well */ include?: AccountInclude | null; /** * Filter, which Account to fetch. */ where?: AccountWhereInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Accounts to fetch. */ orderBy?: | AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[]; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Accounts. */ cursor?: AccountWhereUniqueInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Accounts 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` Accounts. */ skip?: number; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Accounts. */ distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[]; }; /** * Account findFirstOrThrow */ export type AccountFindFirstOrThrowArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Account */ select?: AccountSelect | null; /** * Omit specific fields from the Account */ omit?: AccountOmit | null; /** * Choose, which related nodes to fetch as well */ include?: AccountInclude | null; /** * Filter, which Account to fetch. */ where?: AccountWhereInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Accounts to fetch. */ orderBy?: | AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[]; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for Accounts. */ cursor?: AccountWhereUniqueInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Accounts 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` Accounts. */ skip?: number; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of Accounts. */ distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[]; }; /** * Account findMany */ export type AccountFindManyArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Account */ select?: AccountSelect | null; /** * Omit specific fields from the Account */ omit?: AccountOmit | null; /** * Choose, which related nodes to fetch as well */ include?: AccountInclude | null; /** * Filter, which Accounts to fetch. */ where?: AccountWhereInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of Accounts to fetch. */ orderBy?: | AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[]; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing Accounts. */ cursor?: AccountWhereUniqueInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` Accounts 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` Accounts. */ skip?: number; distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[]; }; /** * Account create */ export type AccountCreateArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Account */ select?: AccountSelect | null; /** * Omit specific fields from the Account */ omit?: AccountOmit | null; /** * Choose, which related nodes to fetch as well */ include?: AccountInclude | null; /** * The data needed to create a Account. */ data: XOR; }; /** * Account createMany */ export type AccountCreateManyArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * The data used to create many Accounts. */ data: AccountCreateManyInput | AccountCreateManyInput[]; skipDuplicates?: boolean; }; /** * Account update */ export type AccountUpdateArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Account */ select?: AccountSelect | null; /** * Omit specific fields from the Account */ omit?: AccountOmit | null; /** * Choose, which related nodes to fetch as well */ include?: AccountInclude | null; /** * The data needed to update a Account. */ data: XOR; /** * Choose, which Account to update. */ where: AccountWhereUniqueInput; }; /** * Account updateMany */ export type AccountUpdateManyArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * The data used to update Accounts. */ data: XOR; /** * Filter which Accounts to update */ where?: AccountWhereInput; /** * Limit how many Accounts to update. */ limit?: number; }; /** * Account upsert */ export type AccountUpsertArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Account */ select?: AccountSelect | null; /** * Omit specific fields from the Account */ omit?: AccountOmit | null; /** * Choose, which related nodes to fetch as well */ include?: AccountInclude | null; /** * The filter to search for the Account to update in case it exists. */ where: AccountWhereUniqueInput; /** * In case the Account found by the `where` argument doesn't exist, create a new Account with this data. */ create: XOR; /** * In case the Account was found with the provided `where` argument, update it with this data. */ update: XOR; }; /** * Account delete */ export type AccountDeleteArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Account */ select?: AccountSelect | null; /** * Omit specific fields from the Account */ omit?: AccountOmit | null; /** * Choose, which related nodes to fetch as well */ include?: AccountInclude | null; /** * Filter which Account to delete. */ where: AccountWhereUniqueInput; }; /** * Account deleteMany */ export type AccountDeleteManyArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Filter which Accounts to delete */ where?: AccountWhereInput; /** * Limit how many Accounts to delete. */ limit?: number; }; /** * Account without action */ export type AccountDefaultArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Account */ select?: AccountSelect | null; /** * Omit specific fields from the Account */ omit?: AccountOmit | null; /** * Choose, which related nodes to fetch as well */ include?: AccountInclude | null; }; /** * Model Session */ export type AggregateSession = { _count: SessionCountAggregateOutputType | null; _min: SessionMinAggregateOutputType | null; _max: SessionMaxAggregateOutputType | null; }; export type SessionMinAggregateOutputType = { id: string | null; sessionToken: string | null; userId: string | null; expires: Date | null; }; export type SessionMaxAggregateOutputType = { id: string | null; sessionToken: string | null; userId: string | null; expires: Date | null; }; export type SessionCountAggregateOutputType = { id: number; sessionToken: number; userId: number; expires: number; _all: number; }; export type SessionMinAggregateInputType = { id?: true; sessionToken?: true; userId?: true; expires?: true; }; export type SessionMaxAggregateInputType = { id?: true; sessionToken?: true; userId?: true; expires?: true; }; export type SessionCountAggregateInputType = { id?: true; sessionToken?: true; userId?: true; expires?: true; _all?: true; }; export type SessionAggregateArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * 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 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { where?: SessionWhereInput; orderBy?: | SessionOrderByWithAggregationInput | SessionOrderByWithAggregationInput[]; by: SessionScalarFieldEnum[] | SessionScalarFieldEnum; having?: SessionScalarWhereWithAggregatesInput; take?: number; skip?: number; _count?: SessionCountAggregateInputType | true; _min?: SessionMinAggregateInputType; _max?: SessionMaxAggregateInputType; }; export type SessionGroupByOutputType = { id: string; sessionToken: string; userId: string; expires: Date; _count: SessionCountAggregateOutputType | 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = $Extensions.GetSelect< { id?: boolean; sessionToken?: boolean; userId?: boolean; expires?: boolean; user?: boolean | UserDefaultArgs; }, ExtArgs["result"]["session"] >; export type SessionSelectScalar = { id?: boolean; sessionToken?: boolean; userId?: boolean; expires?: boolean; }; export type SessionOmit< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = $Extensions.GetOmit< "id" | "sessionToken" | "userId" | "expires", ExtArgs["result"]["session"] >; export type SessionInclude< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { user?: boolean | UserDefaultArgs; }; export type $SessionPayload< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { name: "Session"; objects: { user: Prisma.$UserPayload; }; scalars: $Extensions.GetPayloadResult< { id: string; sessionToken: string; userId: string; expires: Date; }, ExtArgs["result"]["session"] >; composites: {}; }; type SessionGetPayload< S extends boolean | null | undefined | SessionDefaultArgs, > = $Result.GetResult; type SessionCountArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = Omit & { select?: SessionCountAggregateInputType | true; }; export interface SessionDelegate< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}, > { [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< Prisma.$SessionPayload, T, "findUnique", GlobalOmitOptions > | null, null, ExtArgs, GlobalOmitOptions >; /** * 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< Prisma.$SessionPayload, T, "findUniqueOrThrow", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * 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< Prisma.$SessionPayload, T, "findFirst", GlobalOmitOptions > | null, null, ExtArgs, GlobalOmitOptions >; /** * 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< Prisma.$SessionPayload, T, "findFirstOrThrow", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * 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< Prisma.$SessionPayload, T, "findMany", GlobalOmitOptions > >; /** * 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< Prisma.$SessionPayload, T, "create", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * 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; /** * 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< Prisma.$SessionPayload, T, "delete", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * 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< Prisma.$SessionPayload, T, "update", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * 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< Prisma.$SessionPayload, T, "upsert", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * 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< Keys> >, 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< T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}, > extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise"; user = {}>( args?: Subset>, ): Prisma__UserClient< | $Result.GetResult< Prisma.$UserPayload, T, "findUniqueOrThrow", GlobalOmitOptions > | Null, Null, ExtArgs, GlobalOmitOptions >; /** * 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 sessionToken: FieldRef<"Session", "String">; readonly userId: FieldRef<"Session", "String">; readonly expires: FieldRef<"Session", "DateTime">; } // Custom InputTypes /** * Session findUnique */ export type SessionFindUniqueArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null; /** * Omit specific fields from the Session */ omit?: SessionOmit | null; /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null; /** * Filter, which Session to fetch. */ where: SessionWhereUniqueInput; }; /** * Session findUniqueOrThrow */ export type SessionFindUniqueOrThrowArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null; /** * Omit specific fields from the Session */ omit?: SessionOmit | null; /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null; /** * Filter, which Session to fetch. */ where: SessionWhereUniqueInput; }; /** * Session findFirst */ export type SessionFindFirstArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null; /** * Omit specific fields from the Session */ omit?: SessionOmit | 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null; /** * Omit specific fields from the Session */ omit?: SessionOmit | 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null; /** * Omit specific fields from the Session */ omit?: SessionOmit | 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null; /** * Omit specific fields from the Session */ omit?: SessionOmit | 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * The data used to create many Sessions. */ data: SessionCreateManyInput | SessionCreateManyInput[]; skipDuplicates?: boolean; }; /** * Session update */ export type SessionUpdateArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null; /** * Omit specific fields from the Session */ omit?: SessionOmit | 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * The data used to update Sessions. */ data: XOR; /** * Filter which Sessions to update */ where?: SessionWhereInput; /** * Limit how many Sessions to update. */ limit?: number; }; /** * Session upsert */ export type SessionUpsertArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null; /** * Omit specific fields from the Session */ omit?: SessionOmit | 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null; /** * Omit specific fields from the Session */ omit?: SessionOmit | null; /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null; /** * Filter which Session to delete. */ where: SessionWhereUniqueInput; }; /** * Session deleteMany */ export type SessionDeleteManyArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Filter which Sessions to delete */ where?: SessionWhereInput; /** * Limit how many Sessions to delete. */ limit?: number; }; /** * Session without action */ export type SessionDefaultArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null; /** * Omit specific fields from the Session */ omit?: SessionOmit | null; /** * Choose, which related nodes to fetch as well */ include?: SessionInclude | null; }; /** * Model User */ export type AggregateUser = { _count: UserCountAggregateOutputType | null; _min: UserMinAggregateOutputType | null; _max: UserMaxAggregateOutputType | null; }; export type UserMinAggregateOutputType = { id: string | null; name: string | null; email: string | null; emailVerified: Date | null; image: string | null; }; export type UserMaxAggregateOutputType = { id: string | null; name: string | null; email: string | null; emailVerified: Date | null; image: string | null; }; export type UserCountAggregateOutputType = { id: number; name: number; email: number; emailVerified: number; image: number; _all: number; }; export type UserMinAggregateInputType = { id?: true; name?: true; email?: true; emailVerified?: true; image?: true; }; export type UserMaxAggregateInputType = { id?: true; name?: true; email?: true; emailVerified?: true; image?: true; }; export type UserCountAggregateInputType = { id?: true; name?: true; email?: true; emailVerified?: true; image?: true; _all?: true; }; export type UserAggregateArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { 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; name: string | null; email: string | null; emailVerified: Date | null; image: string | 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = $Extensions.GetSelect< { id?: boolean; name?: boolean; email?: boolean; emailVerified?: boolean; image?: boolean; accounts?: boolean | User$accountsArgs; sessions?: boolean | User$sessionsArgs; posts?: boolean | User$postsArgs; _count?: boolean | UserCountOutputTypeDefaultArgs; }, ExtArgs["result"]["user"] >; export type UserSelectScalar = { id?: boolean; name?: boolean; email?: boolean; emailVerified?: boolean; image?: boolean; }; export type UserOmit< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = $Extensions.GetOmit< "id" | "name" | "email" | "emailVerified" | "image", ExtArgs["result"]["user"] >; export type UserInclude< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { accounts?: boolean | User$accountsArgs; sessions?: boolean | User$sessionsArgs; posts?: boolean | User$postsArgs; _count?: boolean | UserCountOutputTypeDefaultArgs; }; export type $UserPayload< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { name: "User"; objects: { accounts: Prisma.$AccountPayload[]; sessions: Prisma.$SessionPayload[]; posts: Prisma.$PostPayload[]; }; scalars: $Extensions.GetPayloadResult< { id: string; name: string | null; email: string | null; emailVerified: Date | null; image: string | null; }, ExtArgs["result"]["user"] >; composites: {}; }; type UserGetPayload = $Result.GetResult; type UserCountArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = Omit & { select?: UserCountAggregateInputType | true; }; export interface UserDelegate< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}, > { [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< Prisma.$UserPayload, T, "findUnique", GlobalOmitOptions > | null, null, ExtArgs, GlobalOmitOptions >; /** * 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< Prisma.$UserPayload, T, "findUniqueOrThrow", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * 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< Prisma.$UserPayload, T, "findFirst", GlobalOmitOptions > | null, null, ExtArgs, GlobalOmitOptions >; /** * 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< Prisma.$UserPayload, T, "findFirstOrThrow", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * 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< Prisma.$UserPayload, T, "findMany", GlobalOmitOptions > >; /** * 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< Prisma.$UserPayload, T, "create", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * 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; /** * 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< Prisma.$UserPayload, T, "delete", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * 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< Prisma.$UserPayload, T, "update", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * 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< Prisma.$UserPayload, T, "upsert", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * 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< Keys> >, 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< T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}, > extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise"; accounts = {}>( args?: Subset>, ): Prisma.PrismaPromise< | $Result.GetResult< Prisma.$AccountPayload, T, "findMany", GlobalOmitOptions > | Null >; sessions = {}>( args?: Subset>, ): Prisma.PrismaPromise< | $Result.GetResult< Prisma.$SessionPayload, T, "findMany", GlobalOmitOptions > | Null >; posts = {}>( args?: Subset>, ): Prisma.PrismaPromise< | $Result.GetResult< Prisma.$PostPayload, T, "findMany", GlobalOmitOptions > | 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 name: FieldRef<"User", "String">; readonly email: FieldRef<"User", "String">; readonly emailVerified: FieldRef<"User", "DateTime">; readonly image: FieldRef<"User", "String">; } // Custom InputTypes /** * User findUnique */ export type UserFindUniqueArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null; /** * Omit specific fields from the User */ omit?: UserOmit | null; /** * Choose, which related nodes to fetch as well */ include?: UserInclude | null; /** * Filter, which User to fetch. */ where: UserWhereUniqueInput; }; /** * User findUniqueOrThrow */ export type UserFindUniqueOrThrowArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null; /** * Omit specific fields from the User */ omit?: UserOmit | null; /** * Choose, which related nodes to fetch as well */ include?: UserInclude | null; /** * Filter, which User to fetch. */ where: UserWhereUniqueInput; }; /** * User findFirst */ export type UserFindFirstArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null; /** * Omit specific fields from the User */ omit?: UserOmit | 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null; /** * Omit specific fields from the User */ omit?: UserOmit | 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null; /** * Omit specific fields from the User */ omit?: UserOmit | 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null; /** * Omit specific fields from the User */ omit?: UserOmit | 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * The data used to create many Users. */ data: UserCreateManyInput | UserCreateManyInput[]; skipDuplicates?: boolean; }; /** * User update */ export type UserUpdateArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null; /** * Omit specific fields from the User */ omit?: UserOmit | 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * The data used to update Users. */ data: XOR; /** * Filter which Users to update */ where?: UserWhereInput; /** * Limit how many Users to update. */ limit?: number; }; /** * User upsert */ export type UserUpsertArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null; /** * Omit specific fields from the User */ omit?: UserOmit | 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< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null; /** * Omit specific fields from the User */ omit?: UserOmit | null; /** * Choose, which related nodes to fetch as well */ include?: UserInclude | null; /** * Filter which User to delete. */ where: UserWhereUniqueInput; }; /** * User deleteMany */ export type UserDeleteManyArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Filter which Users to delete */ where?: UserWhereInput; /** * Limit how many Users to delete. */ limit?: number; }; /** * User.accounts */ export type User$accountsArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Account */ select?: AccountSelect | null; /** * Omit specific fields from the Account */ omit?: AccountOmit | null; /** * Choose, which related nodes to fetch as well */ include?: AccountInclude | null; where?: AccountWhereInput; orderBy?: | AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[]; cursor?: AccountWhereUniqueInput; take?: number; skip?: number; distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[]; }; /** * User.sessions */ export type User$sessionsArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Session */ select?: SessionSelect | null; /** * Omit specific fields from the Session */ omit?: SessionOmit | 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[]; }; /** * User.posts */ export type User$postsArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the Post */ select?: PostSelect | null; /** * Omit specific fields from the Post */ omit?: PostOmit | null; /** * Choose, which related nodes to fetch as well */ include?: PostInclude | null; where?: PostWhereInput; orderBy?: PostOrderByWithRelationInput | PostOrderByWithRelationInput[]; cursor?: PostWhereUniqueInput; take?: number; skip?: number; distinct?: PostScalarFieldEnum | PostScalarFieldEnum[]; }; /** * User without action */ export type UserDefaultArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the User */ select?: UserSelect | null; /** * Omit specific fields from the User */ omit?: UserOmit | null; /** * Choose, which related nodes to fetch as well */ include?: UserInclude | null; }; /** * Model VerificationToken */ export type AggregateVerificationToken = { _count: VerificationTokenCountAggregateOutputType | null; _min: VerificationTokenMinAggregateOutputType | null; _max: VerificationTokenMaxAggregateOutputType | null; }; export type VerificationTokenMinAggregateOutputType = { identifier: string | null; token: string | null; expires: Date | null; }; export type VerificationTokenMaxAggregateOutputType = { identifier: string | null; token: string | null; expires: Date | null; }; export type VerificationTokenCountAggregateOutputType = { identifier: number; token: number; expires: number; _all: number; }; export type VerificationTokenMinAggregateInputType = { identifier?: true; token?: true; expires?: true; }; export type VerificationTokenMaxAggregateInputType = { identifier?: true; token?: true; expires?: true; }; export type VerificationTokenCountAggregateInputType = { identifier?: true; token?: true; expires?: true; _all?: true; }; export type VerificationTokenAggregateArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Filter which VerificationToken to aggregate. */ where?: VerificationTokenWhereInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of VerificationTokens to fetch. */ orderBy?: | VerificationTokenOrderByWithRelationInput | VerificationTokenOrderByWithRelationInput[]; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the start position */ cursor?: VerificationTokenWhereUniqueInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` VerificationTokens 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` VerificationTokens. */ skip?: number; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Count returned VerificationTokens **/ _count?: true | VerificationTokenCountAggregateInputType; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the minimum value **/ _min?: VerificationTokenMinAggregateInputType; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} * * Select which fields to find the maximum value **/ _max?: VerificationTokenMaxAggregateInputType; }; export type GetVerificationTokenAggregateType< T extends VerificationTokenAggregateArgs, > = { [P in keyof T & keyof AggregateVerificationToken]: P extends | "_count" | "count" ? T[P] extends true ? number : GetScalarType : GetScalarType; }; export type VerificationTokenGroupByArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { where?: VerificationTokenWhereInput; orderBy?: | VerificationTokenOrderByWithAggregationInput | VerificationTokenOrderByWithAggregationInput[]; by: VerificationTokenScalarFieldEnum[] | VerificationTokenScalarFieldEnum; having?: VerificationTokenScalarWhereWithAggregatesInput; take?: number; skip?: number; _count?: VerificationTokenCountAggregateInputType | true; _min?: VerificationTokenMinAggregateInputType; _max?: VerificationTokenMaxAggregateInputType; }; export type VerificationTokenGroupByOutputType = { identifier: string; token: string; expires: Date; _count: VerificationTokenCountAggregateOutputType | null; _min: VerificationTokenMinAggregateOutputType | null; _max: VerificationTokenMaxAggregateOutputType | null; }; type GetVerificationTokenGroupByPayload< T extends VerificationTokenGroupByArgs, > = Prisma.PrismaPromise< Array< PickEnumerable & { [P in keyof T & keyof VerificationTokenGroupByOutputType]: P extends "_count" ? T[P] extends boolean ? number : GetScalarType : GetScalarType; } > >; export type VerificationTokenSelect< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = $Extensions.GetSelect< { identifier?: boolean; token?: boolean; expires?: boolean; }, ExtArgs["result"]["verificationToken"] >; export type VerificationTokenSelectScalar = { identifier?: boolean; token?: boolean; expires?: boolean; }; export type VerificationTokenOmit< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = $Extensions.GetOmit< "identifier" | "token" | "expires", ExtArgs["result"]["verificationToken"] >; export type $VerificationTokenPayload< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { name: "VerificationToken"; objects: {}; scalars: $Extensions.GetPayloadResult< { identifier: string; token: string; expires: Date; }, ExtArgs["result"]["verificationToken"] >; composites: {}; }; type VerificationTokenGetPayload< S extends boolean | null | undefined | VerificationTokenDefaultArgs, > = $Result.GetResult; type VerificationTokenCountArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = Omit< VerificationTokenFindManyArgs, "select" | "include" | "distinct" | "omit" > & { select?: VerificationTokenCountAggregateInputType | true; }; export interface VerificationTokenDelegate< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}, > { [K: symbol]: { types: Prisma.TypeMap["model"]["VerificationToken"]; meta: { name: "VerificationToken" }; }; /** * Find zero or one VerificationToken that matches the filter. * @param {VerificationTokenFindUniqueArgs} args - Arguments to find a VerificationToken * @example * // Get one VerificationToken * const verificationToken = await prisma.verificationToken.findUnique({ * where: { * // ... provide filter here * } * }) */ findUnique( args: SelectSubset>, ): Prisma__VerificationTokenClient< $Result.GetResult< Prisma.$VerificationTokenPayload, T, "findUnique", GlobalOmitOptions > | null, null, ExtArgs, GlobalOmitOptions >; /** * Find one VerificationToken that matches the filter or throw an error with `error.code='P2025'` * if no matches were found. * @param {VerificationTokenFindUniqueOrThrowArgs} args - Arguments to find a VerificationToken * @example * // Get one VerificationToken * const verificationToken = await prisma.verificationToken.findUniqueOrThrow({ * where: { * // ... provide filter here * } * }) */ findUniqueOrThrow( args: SelectSubset>, ): Prisma__VerificationTokenClient< $Result.GetResult< Prisma.$VerificationTokenPayload, T, "findUniqueOrThrow", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Find the first VerificationToken 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 {VerificationTokenFindFirstArgs} args - Arguments to find a VerificationToken * @example * // Get one VerificationToken * const verificationToken = await prisma.verificationToken.findFirst({ * where: { * // ... provide filter here * } * }) */ findFirst( args?: SelectSubset>, ): Prisma__VerificationTokenClient< $Result.GetResult< Prisma.$VerificationTokenPayload, T, "findFirst", GlobalOmitOptions > | null, null, ExtArgs, GlobalOmitOptions >; /** * Find the first VerificationToken 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 {VerificationTokenFindFirstOrThrowArgs} args - Arguments to find a VerificationToken * @example * // Get one VerificationToken * const verificationToken = await prisma.verificationToken.findFirstOrThrow({ * where: { * // ... provide filter here * } * }) */ findFirstOrThrow( args?: SelectSubset>, ): Prisma__VerificationTokenClient< $Result.GetResult< Prisma.$VerificationTokenPayload, T, "findFirstOrThrow", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Find zero or more VerificationTokens 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 {VerificationTokenFindManyArgs} args - Arguments to filter and select certain fields only. * @example * // Get all VerificationTokens * const verificationTokens = await prisma.verificationToken.findMany() * * // Get first 10 VerificationTokens * const verificationTokens = await prisma.verificationToken.findMany({ take: 10 }) * * // Only select the `identifier` * const verificationTokenWithIdentifierOnly = await prisma.verificationToken.findMany({ select: { identifier: true } }) * */ findMany( args?: SelectSubset>, ): Prisma.PrismaPromise< $Result.GetResult< Prisma.$VerificationTokenPayload, T, "findMany", GlobalOmitOptions > >; /** * Create a VerificationToken. * @param {VerificationTokenCreateArgs} args - Arguments to create a VerificationToken. * @example * // Create one VerificationToken * const VerificationToken = await prisma.verificationToken.create({ * data: { * // ... data to create a VerificationToken * } * }) * */ create( args: SelectSubset>, ): Prisma__VerificationTokenClient< $Result.GetResult< Prisma.$VerificationTokenPayload, T, "create", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Create many VerificationTokens. * @param {VerificationTokenCreateManyArgs} args - Arguments to create many VerificationTokens. * @example * // Create many VerificationTokens * const verificationToken = await prisma.verificationToken.createMany({ * data: [ * // ... provide data here * ] * }) * */ createMany( args?: SelectSubset>, ): Prisma.PrismaPromise; /** * Delete a VerificationToken. * @param {VerificationTokenDeleteArgs} args - Arguments to delete one VerificationToken. * @example * // Delete one VerificationToken * const VerificationToken = await prisma.verificationToken.delete({ * where: { * // ... filter to delete one VerificationToken * } * }) * */ delete( args: SelectSubset>, ): Prisma__VerificationTokenClient< $Result.GetResult< Prisma.$VerificationTokenPayload, T, "delete", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Update one VerificationToken. * @param {VerificationTokenUpdateArgs} args - Arguments to update one VerificationToken. * @example * // Update one VerificationToken * const verificationToken = await prisma.verificationToken.update({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ update( args: SelectSubset>, ): Prisma__VerificationTokenClient< $Result.GetResult< Prisma.$VerificationTokenPayload, T, "update", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Delete zero or more VerificationTokens. * @param {VerificationTokenDeleteManyArgs} args - Arguments to filter VerificationTokens to delete. * @example * // Delete a few VerificationTokens * const { count } = await prisma.verificationToken.deleteMany({ * where: { * // ... provide filter here * } * }) * */ deleteMany( args?: SelectSubset>, ): Prisma.PrismaPromise; /** * Update zero or more VerificationTokens. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {VerificationTokenUpdateManyArgs} args - Arguments to update one or more rows. * @example * // Update many VerificationTokens * const verificationToken = await prisma.verificationToken.updateMany({ * where: { * // ... provide filter here * }, * data: { * // ... provide data here * } * }) * */ updateMany( args: SelectSubset>, ): Prisma.PrismaPromise; /** * Create or update one VerificationToken. * @param {VerificationTokenUpsertArgs} args - Arguments to update or create a VerificationToken. * @example * // Update or create a VerificationToken * const verificationToken = await prisma.verificationToken.upsert({ * create: { * // ... data to create a VerificationToken * }, * update: { * // ... in case it already exists, update * }, * where: { * // ... the filter for the VerificationToken we want to update * } * }) */ upsert( args: SelectSubset>, ): Prisma__VerificationTokenClient< $Result.GetResult< Prisma.$VerificationTokenPayload, T, "upsert", GlobalOmitOptions >, never, ExtArgs, GlobalOmitOptions >; /** * Count the number of VerificationTokens. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {VerificationTokenCountArgs} args - Arguments to filter VerificationTokens to count. * @example * // Count the number of VerificationTokens * const count = await prisma.verificationToken.count({ * where: { * // ... the filter for the VerificationTokens we want to count * } * }) **/ count( args?: Subset, ): Prisma.PrismaPromise< T extends $Utils.Record<"select", any> ? T["select"] extends true ? number : GetScalarType< T["select"], VerificationTokenCountAggregateOutputType > : number >; /** * Allows you to perform aggregations operations on a VerificationToken. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {VerificationTokenAggregateArgs} 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 VerificationToken. * Note, that providing `undefined` is treated as the value not being there. * Read more here: https://pris.ly/d/null-undefined * @param {VerificationTokenGroupByArgs} 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 VerificationTokenGroupByArgs, HasSelectOrTake extends Or< Extends<"skip", Keys>, Extends<"take", Keys> >, OrderByArg extends True extends HasSelectOrTake ? { orderBy: VerificationTokenGroupByArgs["orderBy"] } : { orderBy?: VerificationTokenGroupByArgs["orderBy"] }, OrderFields extends ExcludeUnderscoreKeys< Keys> >, 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 ? GetVerificationTokenGroupByPayload : Prisma.PrismaPromise; /** * Fields of the VerificationToken model */ readonly fields: VerificationTokenFieldRefs; } /** * The delegate class that acts as a "Promise-like" for VerificationToken. * 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__VerificationTokenClient< T, Null = never, ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, GlobalOmitOptions = {}, > 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 VerificationToken model */ interface VerificationTokenFieldRefs { readonly identifier: FieldRef<"VerificationToken", "String">; readonly token: FieldRef<"VerificationToken", "String">; readonly expires: FieldRef<"VerificationToken", "DateTime">; } // Custom InputTypes /** * VerificationToken findUnique */ export type VerificationTokenFindUniqueArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the VerificationToken */ select?: VerificationTokenSelect | null; /** * Omit specific fields from the VerificationToken */ omit?: VerificationTokenOmit | null; /** * Filter, which VerificationToken to fetch. */ where: VerificationTokenWhereUniqueInput; }; /** * VerificationToken findUniqueOrThrow */ export type VerificationTokenFindUniqueOrThrowArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the VerificationToken */ select?: VerificationTokenSelect | null; /** * Omit specific fields from the VerificationToken */ omit?: VerificationTokenOmit | null; /** * Filter, which VerificationToken to fetch. */ where: VerificationTokenWhereUniqueInput; }; /** * VerificationToken findFirst */ export type VerificationTokenFindFirstArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the VerificationToken */ select?: VerificationTokenSelect | null; /** * Omit specific fields from the VerificationToken */ omit?: VerificationTokenOmit | null; /** * Filter, which VerificationToken to fetch. */ where?: VerificationTokenWhereInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of VerificationTokens to fetch. */ orderBy?: | VerificationTokenOrderByWithRelationInput | VerificationTokenOrderByWithRelationInput[]; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for VerificationTokens. */ cursor?: VerificationTokenWhereUniqueInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` VerificationTokens 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` VerificationTokens. */ skip?: number; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of VerificationTokens. */ distinct?: | VerificationTokenScalarFieldEnum | VerificationTokenScalarFieldEnum[]; }; /** * VerificationToken findFirstOrThrow */ export type VerificationTokenFindFirstOrThrowArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the VerificationToken */ select?: VerificationTokenSelect | null; /** * Omit specific fields from the VerificationToken */ omit?: VerificationTokenOmit | null; /** * Filter, which VerificationToken to fetch. */ where?: VerificationTokenWhereInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of VerificationTokens to fetch. */ orderBy?: | VerificationTokenOrderByWithRelationInput | VerificationTokenOrderByWithRelationInput[]; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for searching for VerificationTokens. */ cursor?: VerificationTokenWhereUniqueInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` VerificationTokens 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` VerificationTokens. */ skip?: number; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} * * Filter by unique combinations of VerificationTokens. */ distinct?: | VerificationTokenScalarFieldEnum | VerificationTokenScalarFieldEnum[]; }; /** * VerificationToken findMany */ export type VerificationTokenFindManyArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the VerificationToken */ select?: VerificationTokenSelect | null; /** * Omit specific fields from the VerificationToken */ omit?: VerificationTokenOmit | null; /** * Filter, which VerificationTokens to fetch. */ where?: VerificationTokenWhereInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} * * Determine the order of VerificationTokens to fetch. */ orderBy?: | VerificationTokenOrderByWithRelationInput | VerificationTokenOrderByWithRelationInput[]; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} * * Sets the position for listing VerificationTokens. */ cursor?: VerificationTokenWhereUniqueInput; /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} * * Take `±n` VerificationTokens 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` VerificationTokens. */ skip?: number; distinct?: | VerificationTokenScalarFieldEnum | VerificationTokenScalarFieldEnum[]; }; /** * VerificationToken create */ export type VerificationTokenCreateArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the VerificationToken */ select?: VerificationTokenSelect | null; /** * Omit specific fields from the VerificationToken */ omit?: VerificationTokenOmit | null; /** * The data needed to create a VerificationToken. */ data: XOR< VerificationTokenCreateInput, VerificationTokenUncheckedCreateInput >; }; /** * VerificationToken createMany */ export type VerificationTokenCreateManyArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * The data used to create many VerificationTokens. */ data: VerificationTokenCreateManyInput | VerificationTokenCreateManyInput[]; skipDuplicates?: boolean; }; /** * VerificationToken update */ export type VerificationTokenUpdateArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the VerificationToken */ select?: VerificationTokenSelect | null; /** * Omit specific fields from the VerificationToken */ omit?: VerificationTokenOmit | null; /** * The data needed to update a VerificationToken. */ data: XOR< VerificationTokenUpdateInput, VerificationTokenUncheckedUpdateInput >; /** * Choose, which VerificationToken to update. */ where: VerificationTokenWhereUniqueInput; }; /** * VerificationToken updateMany */ export type VerificationTokenUpdateManyArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * The data used to update VerificationTokens. */ data: XOR< VerificationTokenUpdateManyMutationInput, VerificationTokenUncheckedUpdateManyInput >; /** * Filter which VerificationTokens to update */ where?: VerificationTokenWhereInput; /** * Limit how many VerificationTokens to update. */ limit?: number; }; /** * VerificationToken upsert */ export type VerificationTokenUpsertArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the VerificationToken */ select?: VerificationTokenSelect | null; /** * Omit specific fields from the VerificationToken */ omit?: VerificationTokenOmit | null; /** * The filter to search for the VerificationToken to update in case it exists. */ where: VerificationTokenWhereUniqueInput; /** * In case the VerificationToken found by the `where` argument doesn't exist, create a new VerificationToken with this data. */ create: XOR< VerificationTokenCreateInput, VerificationTokenUncheckedCreateInput >; /** * In case the VerificationToken was found with the provided `where` argument, update it with this data. */ update: XOR< VerificationTokenUpdateInput, VerificationTokenUncheckedUpdateInput >; }; /** * VerificationToken delete */ export type VerificationTokenDeleteArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the VerificationToken */ select?: VerificationTokenSelect | null; /** * Omit specific fields from the VerificationToken */ omit?: VerificationTokenOmit | null; /** * Filter which VerificationToken to delete. */ where: VerificationTokenWhereUniqueInput; }; /** * VerificationToken deleteMany */ export type VerificationTokenDeleteManyArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Filter which VerificationTokens to delete */ where?: VerificationTokenWhereInput; /** * Limit how many VerificationTokens to delete. */ limit?: number; }; /** * VerificationToken without action */ export type VerificationTokenDefaultArgs< ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, > = { /** * Select specific fields to fetch from the VerificationToken */ select?: VerificationTokenSelect | null; /** * Omit specific fields from the VerificationToken */ omit?: VerificationTokenOmit | null; }; /** * Enums */ export const TransactionIsolationLevel: { ReadUncommitted: "ReadUncommitted"; ReadCommitted: "ReadCommitted"; RepeatableRead: "RepeatableRead"; Serializable: "Serializable"; }; export type TransactionIsolationLevel = (typeof TransactionIsolationLevel)[keyof typeof TransactionIsolationLevel]; export const PostScalarFieldEnum: { id: "id"; name: "name"; createdAt: "createdAt"; updatedAt: "updatedAt"; createdById: "createdById"; }; export type PostScalarFieldEnum = (typeof PostScalarFieldEnum)[keyof typeof PostScalarFieldEnum]; export const AccountScalarFieldEnum: { id: "id"; userId: "userId"; type: "type"; provider: "provider"; providerAccountId: "providerAccountId"; refresh_token: "refresh_token"; access_token: "access_token"; expires_at: "expires_at"; token_type: "token_type"; scope: "scope"; id_token: "id_token"; session_state: "session_state"; refresh_token_expires_in: "refresh_token_expires_in"; }; export type AccountScalarFieldEnum = (typeof AccountScalarFieldEnum)[keyof typeof AccountScalarFieldEnum]; export const SessionScalarFieldEnum: { id: "id"; sessionToken: "sessionToken"; userId: "userId"; expires: "expires"; }; export type SessionScalarFieldEnum = (typeof SessionScalarFieldEnum)[keyof typeof SessionScalarFieldEnum]; export const UserScalarFieldEnum: { id: "id"; name: "name"; email: "email"; emailVerified: "emailVerified"; image: "image"; }; export type UserScalarFieldEnum = (typeof UserScalarFieldEnum)[keyof typeof UserScalarFieldEnum]; export const VerificationTokenScalarFieldEnum: { identifier: "identifier"; token: "token"; expires: "expires"; }; export type VerificationTokenScalarFieldEnum = (typeof VerificationTokenScalarFieldEnum)[keyof typeof VerificationTokenScalarFieldEnum]; export const SortOrder: { asc: "asc"; desc: "desc"; }; export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder]; export const PostOrderByRelevanceFieldEnum: { name: "name"; createdById: "createdById"; }; export type PostOrderByRelevanceFieldEnum = (typeof PostOrderByRelevanceFieldEnum)[keyof typeof PostOrderByRelevanceFieldEnum]; export const NullsOrder: { first: "first"; last: "last"; }; export type NullsOrder = (typeof NullsOrder)[keyof typeof NullsOrder]; export const AccountOrderByRelevanceFieldEnum: { id: "id"; userId: "userId"; type: "type"; provider: "provider"; providerAccountId: "providerAccountId"; refresh_token: "refresh_token"; access_token: "access_token"; token_type: "token_type"; scope: "scope"; id_token: "id_token"; session_state: "session_state"; }; export type AccountOrderByRelevanceFieldEnum = (typeof AccountOrderByRelevanceFieldEnum)[keyof typeof AccountOrderByRelevanceFieldEnum]; export const SessionOrderByRelevanceFieldEnum: { id: "id"; sessionToken: "sessionToken"; userId: "userId"; }; export type SessionOrderByRelevanceFieldEnum = (typeof SessionOrderByRelevanceFieldEnum)[keyof typeof SessionOrderByRelevanceFieldEnum]; export const UserOrderByRelevanceFieldEnum: { id: "id"; name: "name"; email: "email"; image: "image"; }; export type UserOrderByRelevanceFieldEnum = (typeof UserOrderByRelevanceFieldEnum)[keyof typeof UserOrderByRelevanceFieldEnum]; export const VerificationTokenOrderByRelevanceFieldEnum: { identifier: "identifier"; token: "token"; }; export type VerificationTokenOrderByRelevanceFieldEnum = (typeof VerificationTokenOrderByRelevanceFieldEnum)[keyof typeof VerificationTokenOrderByRelevanceFieldEnum]; /** * Field references */ /** * Reference to a field of type 'Int' */ export type IntFieldRefInput<$PrismaModel> = FieldRefInputType< $PrismaModel, "Int" >; /** * Reference to a field of type 'String' */ export type StringFieldRefInput<$PrismaModel> = FieldRefInputType< $PrismaModel, "String" >; /** * Reference to a field of type 'DateTime' */ export type DateTimeFieldRefInput<$PrismaModel> = FieldRefInputType< $PrismaModel, "DateTime" >; /** * Reference to a field of type 'Float' */ export type FloatFieldRefInput<$PrismaModel> = FieldRefInputType< $PrismaModel, "Float" >; /** * Deep Input Types */ export type PostWhereInput = { AND?: PostWhereInput | PostWhereInput[]; OR?: PostWhereInput[]; NOT?: PostWhereInput | PostWhereInput[]; id?: IntFilter<"Post"> | number; name?: StringFilter<"Post"> | string; createdAt?: DateTimeFilter<"Post"> | Date | string; updatedAt?: DateTimeFilter<"Post"> | Date | string; createdById?: StringFilter<"Post"> | string; createdBy?: XOR; }; export type PostOrderByWithRelationInput = { id?: SortOrder; name?: SortOrder; createdAt?: SortOrder; updatedAt?: SortOrder; createdById?: SortOrder; createdBy?: UserOrderByWithRelationInput; _relevance?: PostOrderByRelevanceInput; }; export type PostWhereUniqueInput = Prisma.AtLeast< { id?: number; AND?: PostWhereInput | PostWhereInput[]; OR?: PostWhereInput[]; NOT?: PostWhereInput | PostWhereInput[]; name?: StringFilter<"Post"> | string; createdAt?: DateTimeFilter<"Post"> | Date | string; updatedAt?: DateTimeFilter<"Post"> | Date | string; createdById?: StringFilter<"Post"> | string; createdBy?: XOR; }, "id" >; export type PostOrderByWithAggregationInput = { id?: SortOrder; name?: SortOrder; createdAt?: SortOrder; updatedAt?: SortOrder; createdById?: SortOrder; _count?: PostCountOrderByAggregateInput; _avg?: PostAvgOrderByAggregateInput; _max?: PostMaxOrderByAggregateInput; _min?: PostMinOrderByAggregateInput; _sum?: PostSumOrderByAggregateInput; }; export type PostScalarWhereWithAggregatesInput = { AND?: | PostScalarWhereWithAggregatesInput | PostScalarWhereWithAggregatesInput[]; OR?: PostScalarWhereWithAggregatesInput[]; NOT?: | PostScalarWhereWithAggregatesInput | PostScalarWhereWithAggregatesInput[]; id?: IntWithAggregatesFilter<"Post"> | number; name?: StringWithAggregatesFilter<"Post"> | string; createdAt?: DateTimeWithAggregatesFilter<"Post"> | Date | string; updatedAt?: DateTimeWithAggregatesFilter<"Post"> | Date | string; createdById?: StringWithAggregatesFilter<"Post"> | string; }; export type AccountWhereInput = { AND?: AccountWhereInput | AccountWhereInput[]; OR?: AccountWhereInput[]; NOT?: AccountWhereInput | AccountWhereInput[]; id?: StringFilter<"Account"> | string; userId?: StringFilter<"Account"> | string; type?: StringFilter<"Account"> | string; provider?: StringFilter<"Account"> | string; providerAccountId?: StringFilter<"Account"> | string; refresh_token?: StringNullableFilter<"Account"> | string | null; access_token?: StringNullableFilter<"Account"> | string | null; expires_at?: IntNullableFilter<"Account"> | number | null; token_type?: StringNullableFilter<"Account"> | string | null; scope?: StringNullableFilter<"Account"> | string | null; id_token?: StringNullableFilter<"Account"> | string | null; session_state?: StringNullableFilter<"Account"> | string | null; refresh_token_expires_in?: IntNullableFilter<"Account"> | number | null; user?: XOR; }; export type AccountOrderByWithRelationInput = { id?: SortOrder; userId?: SortOrder; type?: SortOrder; provider?: SortOrder; providerAccountId?: SortOrder; refresh_token?: SortOrderInput | SortOrder; access_token?: SortOrderInput | SortOrder; expires_at?: SortOrderInput | SortOrder; token_type?: SortOrderInput | SortOrder; scope?: SortOrderInput | SortOrder; id_token?: SortOrderInput | SortOrder; session_state?: SortOrderInput | SortOrder; refresh_token_expires_in?: SortOrderInput | SortOrder; user?: UserOrderByWithRelationInput; _relevance?: AccountOrderByRelevanceInput; }; export type AccountWhereUniqueInput = Prisma.AtLeast< { id?: string; provider_providerAccountId?: AccountProviderProviderAccountIdCompoundUniqueInput; AND?: AccountWhereInput | AccountWhereInput[]; OR?: AccountWhereInput[]; NOT?: AccountWhereInput | AccountWhereInput[]; userId?: StringFilter<"Account"> | string; type?: StringFilter<"Account"> | string; provider?: StringFilter<"Account"> | string; providerAccountId?: StringFilter<"Account"> | string; refresh_token?: StringNullableFilter<"Account"> | string | null; access_token?: StringNullableFilter<"Account"> | string | null; expires_at?: IntNullableFilter<"Account"> | number | null; token_type?: StringNullableFilter<"Account"> | string | null; scope?: StringNullableFilter<"Account"> | string | null; id_token?: StringNullableFilter<"Account"> | string | null; session_state?: StringNullableFilter<"Account"> | string | null; refresh_token_expires_in?: IntNullableFilter<"Account"> | number | null; user?: XOR; }, "id" | "provider_providerAccountId" >; export type AccountOrderByWithAggregationInput = { id?: SortOrder; userId?: SortOrder; type?: SortOrder; provider?: SortOrder; providerAccountId?: SortOrder; refresh_token?: SortOrderInput | SortOrder; access_token?: SortOrderInput | SortOrder; expires_at?: SortOrderInput | SortOrder; token_type?: SortOrderInput | SortOrder; scope?: SortOrderInput | SortOrder; id_token?: SortOrderInput | SortOrder; session_state?: SortOrderInput | SortOrder; refresh_token_expires_in?: SortOrderInput | SortOrder; _count?: AccountCountOrderByAggregateInput; _avg?: AccountAvgOrderByAggregateInput; _max?: AccountMaxOrderByAggregateInput; _min?: AccountMinOrderByAggregateInput; _sum?: AccountSumOrderByAggregateInput; }; export type AccountScalarWhereWithAggregatesInput = { AND?: | AccountScalarWhereWithAggregatesInput | AccountScalarWhereWithAggregatesInput[]; OR?: AccountScalarWhereWithAggregatesInput[]; NOT?: | AccountScalarWhereWithAggregatesInput | AccountScalarWhereWithAggregatesInput[]; id?: StringWithAggregatesFilter<"Account"> | string; userId?: StringWithAggregatesFilter<"Account"> | string; type?: StringWithAggregatesFilter<"Account"> | string; provider?: StringWithAggregatesFilter<"Account"> | string; providerAccountId?: StringWithAggregatesFilter<"Account"> | string; refresh_token?: | StringNullableWithAggregatesFilter<"Account"> | string | null; access_token?: | StringNullableWithAggregatesFilter<"Account"> | string | null; expires_at?: IntNullableWithAggregatesFilter<"Account"> | number | null; token_type?: StringNullableWithAggregatesFilter<"Account"> | string | null; scope?: StringNullableWithAggregatesFilter<"Account"> | string | null; id_token?: StringNullableWithAggregatesFilter<"Account"> | string | null; session_state?: | StringNullableWithAggregatesFilter<"Account"> | string | null; refresh_token_expires_in?: | IntNullableWithAggregatesFilter<"Account"> | number | null; }; export type SessionWhereInput = { AND?: SessionWhereInput | SessionWhereInput[]; OR?: SessionWhereInput[]; NOT?: SessionWhereInput | SessionWhereInput[]; id?: StringFilter<"Session"> | string; sessionToken?: StringFilter<"Session"> | string; userId?: StringFilter<"Session"> | string; expires?: DateTimeFilter<"Session"> | Date | string; user?: XOR; }; export type SessionOrderByWithRelationInput = { id?: SortOrder; sessionToken?: SortOrder; userId?: SortOrder; expires?: SortOrder; user?: UserOrderByWithRelationInput; _relevance?: SessionOrderByRelevanceInput; }; export type SessionWhereUniqueInput = Prisma.AtLeast< { id?: string; sessionToken?: string; AND?: SessionWhereInput | SessionWhereInput[]; OR?: SessionWhereInput[]; NOT?: SessionWhereInput | SessionWhereInput[]; userId?: StringFilter<"Session"> | string; expires?: DateTimeFilter<"Session"> | Date | string; user?: XOR; }, "id" | "sessionToken" >; export type SessionOrderByWithAggregationInput = { id?: SortOrder; sessionToken?: SortOrder; userId?: SortOrder; expires?: SortOrder; _count?: SessionCountOrderByAggregateInput; _max?: SessionMaxOrderByAggregateInput; _min?: SessionMinOrderByAggregateInput; }; export type SessionScalarWhereWithAggregatesInput = { AND?: | SessionScalarWhereWithAggregatesInput | SessionScalarWhereWithAggregatesInput[]; OR?: SessionScalarWhereWithAggregatesInput[]; NOT?: | SessionScalarWhereWithAggregatesInput | SessionScalarWhereWithAggregatesInput[]; id?: StringWithAggregatesFilter<"Session"> | string; sessionToken?: StringWithAggregatesFilter<"Session"> | string; userId?: StringWithAggregatesFilter<"Session"> | string; expires?: DateTimeWithAggregatesFilter<"Session"> | Date | string; }; export type UserWhereInput = { AND?: UserWhereInput | UserWhereInput[]; OR?: UserWhereInput[]; NOT?: UserWhereInput | UserWhereInput[]; id?: StringFilter<"User"> | string; name?: StringNullableFilter<"User"> | string | null; email?: StringNullableFilter<"User"> | string | null; emailVerified?: DateTimeNullableFilter<"User"> | Date | string | null; image?: StringNullableFilter<"User"> | string | null; accounts?: AccountListRelationFilter; sessions?: SessionListRelationFilter; posts?: PostListRelationFilter; }; export type UserOrderByWithRelationInput = { id?: SortOrder; name?: SortOrderInput | SortOrder; email?: SortOrderInput | SortOrder; emailVerified?: SortOrderInput | SortOrder; image?: SortOrderInput | SortOrder; accounts?: AccountOrderByRelationAggregateInput; sessions?: SessionOrderByRelationAggregateInput; posts?: PostOrderByRelationAggregateInput; _relevance?: UserOrderByRelevanceInput; }; export type UserWhereUniqueInput = Prisma.AtLeast< { id?: string; email?: string; AND?: UserWhereInput | UserWhereInput[]; OR?: UserWhereInput[]; NOT?: UserWhereInput | UserWhereInput[]; name?: StringNullableFilter<"User"> | string | null; emailVerified?: DateTimeNullableFilter<"User"> | Date | string | null; image?: StringNullableFilter<"User"> | string | null; accounts?: AccountListRelationFilter; sessions?: SessionListRelationFilter; posts?: PostListRelationFilter; }, "id" | "email" >; export type UserOrderByWithAggregationInput = { id?: SortOrder; name?: SortOrderInput | SortOrder; email?: SortOrderInput | SortOrder; emailVerified?: SortOrderInput | SortOrder; image?: SortOrderInput | SortOrder; _count?: UserCountOrderByAggregateInput; _max?: UserMaxOrderByAggregateInput; _min?: UserMinOrderByAggregateInput; }; export type UserScalarWhereWithAggregatesInput = { AND?: | UserScalarWhereWithAggregatesInput | UserScalarWhereWithAggregatesInput[]; OR?: UserScalarWhereWithAggregatesInput[]; NOT?: | UserScalarWhereWithAggregatesInput | UserScalarWhereWithAggregatesInput[]; id?: StringWithAggregatesFilter<"User"> | string; name?: StringNullableWithAggregatesFilter<"User"> | string | null; email?: StringNullableWithAggregatesFilter<"User"> | string | null; emailVerified?: | DateTimeNullableWithAggregatesFilter<"User"> | Date | string | null; image?: StringNullableWithAggregatesFilter<"User"> | string | null; }; export type VerificationTokenWhereInput = { AND?: VerificationTokenWhereInput | VerificationTokenWhereInput[]; OR?: VerificationTokenWhereInput[]; NOT?: VerificationTokenWhereInput | VerificationTokenWhereInput[]; identifier?: StringFilter<"VerificationToken"> | string; token?: StringFilter<"VerificationToken"> | string; expires?: DateTimeFilter<"VerificationToken"> | Date | string; }; export type VerificationTokenOrderByWithRelationInput = { identifier?: SortOrder; token?: SortOrder; expires?: SortOrder; _relevance?: VerificationTokenOrderByRelevanceInput; }; export type VerificationTokenWhereUniqueInput = Prisma.AtLeast< { token?: string; identifier_token?: VerificationTokenIdentifierTokenCompoundUniqueInput; AND?: VerificationTokenWhereInput | VerificationTokenWhereInput[]; OR?: VerificationTokenWhereInput[]; NOT?: VerificationTokenWhereInput | VerificationTokenWhereInput[]; identifier?: StringFilter<"VerificationToken"> | string; expires?: DateTimeFilter<"VerificationToken"> | Date | string; }, "token" | "identifier_token" >; export type VerificationTokenOrderByWithAggregationInput = { identifier?: SortOrder; token?: SortOrder; expires?: SortOrder; _count?: VerificationTokenCountOrderByAggregateInput; _max?: VerificationTokenMaxOrderByAggregateInput; _min?: VerificationTokenMinOrderByAggregateInput; }; export type VerificationTokenScalarWhereWithAggregatesInput = { AND?: | VerificationTokenScalarWhereWithAggregatesInput | VerificationTokenScalarWhereWithAggregatesInput[]; OR?: VerificationTokenScalarWhereWithAggregatesInput[]; NOT?: | VerificationTokenScalarWhereWithAggregatesInput | VerificationTokenScalarWhereWithAggregatesInput[]; identifier?: StringWithAggregatesFilter<"VerificationToken"> | string; token?: StringWithAggregatesFilter<"VerificationToken"> | string; expires?: DateTimeWithAggregatesFilter<"VerificationToken"> | Date | string; }; export type PostCreateInput = { name: string; createdAt?: Date | string; updatedAt?: Date | string; createdBy: UserCreateNestedOneWithoutPostsInput; }; export type PostUncheckedCreateInput = { id?: number; name: string; createdAt?: Date | string; updatedAt?: Date | string; createdById: string; }; export type PostUpdateInput = { name?: StringFieldUpdateOperationsInput | string; createdAt?: DateTimeFieldUpdateOperationsInput | Date | string; updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string; createdBy?: UserUpdateOneRequiredWithoutPostsNestedInput; }; export type PostUncheckedUpdateInput = { id?: IntFieldUpdateOperationsInput | number; name?: StringFieldUpdateOperationsInput | string; createdAt?: DateTimeFieldUpdateOperationsInput | Date | string; updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string; createdById?: StringFieldUpdateOperationsInput | string; }; export type PostCreateManyInput = { id?: number; name: string; createdAt?: Date | string; updatedAt?: Date | string; createdById: string; }; export type PostUpdateManyMutationInput = { name?: StringFieldUpdateOperationsInput | string; createdAt?: DateTimeFieldUpdateOperationsInput | Date | string; updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string; }; export type PostUncheckedUpdateManyInput = { id?: IntFieldUpdateOperationsInput | number; name?: StringFieldUpdateOperationsInput | string; createdAt?: DateTimeFieldUpdateOperationsInput | Date | string; updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string; createdById?: StringFieldUpdateOperationsInput | string; }; export type AccountCreateInput = { id?: string; type: string; provider: string; providerAccountId: string; refresh_token?: string | null; access_token?: string | null; expires_at?: number | null; token_type?: string | null; scope?: string | null; id_token?: string | null; session_state?: string | null; refresh_token_expires_in?: number | null; user: UserCreateNestedOneWithoutAccountsInput; }; export type AccountUncheckedCreateInput = { id?: string; userId: string; type: string; provider: string; providerAccountId: string; refresh_token?: string | null; access_token?: string | null; expires_at?: number | null; token_type?: string | null; scope?: string | null; id_token?: string | null; session_state?: string | null; refresh_token_expires_in?: number | null; }; export type AccountUpdateInput = { id?: StringFieldUpdateOperationsInput | string; type?: StringFieldUpdateOperationsInput | string; provider?: StringFieldUpdateOperationsInput | string; providerAccountId?: StringFieldUpdateOperationsInput | string; refresh_token?: NullableStringFieldUpdateOperationsInput | string | null; access_token?: NullableStringFieldUpdateOperationsInput | string | null; expires_at?: NullableIntFieldUpdateOperationsInput | number | null; token_type?: NullableStringFieldUpdateOperationsInput | string | null; scope?: NullableStringFieldUpdateOperationsInput | string | null; id_token?: NullableStringFieldUpdateOperationsInput | string | null; session_state?: NullableStringFieldUpdateOperationsInput | string | null; refresh_token_expires_in?: | NullableIntFieldUpdateOperationsInput | number | null; user?: UserUpdateOneRequiredWithoutAccountsNestedInput; }; export type AccountUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string; userId?: StringFieldUpdateOperationsInput | string; type?: StringFieldUpdateOperationsInput | string; provider?: StringFieldUpdateOperationsInput | string; providerAccountId?: StringFieldUpdateOperationsInput | string; refresh_token?: NullableStringFieldUpdateOperationsInput | string | null; access_token?: NullableStringFieldUpdateOperationsInput | string | null; expires_at?: NullableIntFieldUpdateOperationsInput | number | null; token_type?: NullableStringFieldUpdateOperationsInput | string | null; scope?: NullableStringFieldUpdateOperationsInput | string | null; id_token?: NullableStringFieldUpdateOperationsInput | string | null; session_state?: NullableStringFieldUpdateOperationsInput | string | null; refresh_token_expires_in?: | NullableIntFieldUpdateOperationsInput | number | null; }; export type AccountCreateManyInput = { id?: string; userId: string; type: string; provider: string; providerAccountId: string; refresh_token?: string | null; access_token?: string | null; expires_at?: number | null; token_type?: string | null; scope?: string | null; id_token?: string | null; session_state?: string | null; refresh_token_expires_in?: number | null; }; export type AccountUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string; type?: StringFieldUpdateOperationsInput | string; provider?: StringFieldUpdateOperationsInput | string; providerAccountId?: StringFieldUpdateOperationsInput | string; refresh_token?: NullableStringFieldUpdateOperationsInput | string | null; access_token?: NullableStringFieldUpdateOperationsInput | string | null; expires_at?: NullableIntFieldUpdateOperationsInput | number | null; token_type?: NullableStringFieldUpdateOperationsInput | string | null; scope?: NullableStringFieldUpdateOperationsInput | string | null; id_token?: NullableStringFieldUpdateOperationsInput | string | null; session_state?: NullableStringFieldUpdateOperationsInput | string | null; refresh_token_expires_in?: | NullableIntFieldUpdateOperationsInput | number | null; }; export type AccountUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string; userId?: StringFieldUpdateOperationsInput | string; type?: StringFieldUpdateOperationsInput | string; provider?: StringFieldUpdateOperationsInput | string; providerAccountId?: StringFieldUpdateOperationsInput | string; refresh_token?: NullableStringFieldUpdateOperationsInput | string | null; access_token?: NullableStringFieldUpdateOperationsInput | string | null; expires_at?: NullableIntFieldUpdateOperationsInput | number | null; token_type?: NullableStringFieldUpdateOperationsInput | string | null; scope?: NullableStringFieldUpdateOperationsInput | string | null; id_token?: NullableStringFieldUpdateOperationsInput | string | null; session_state?: NullableStringFieldUpdateOperationsInput | string | null; refresh_token_expires_in?: | NullableIntFieldUpdateOperationsInput | number | null; }; export type SessionCreateInput = { id?: string; sessionToken: string; expires: Date | string; user: UserCreateNestedOneWithoutSessionsInput; }; export type SessionUncheckedCreateInput = { id?: string; sessionToken: string; userId: string; expires: Date | string; }; export type SessionUpdateInput = { id?: StringFieldUpdateOperationsInput | string; sessionToken?: StringFieldUpdateOperationsInput | string; expires?: DateTimeFieldUpdateOperationsInput | Date | string; user?: UserUpdateOneRequiredWithoutSessionsNestedInput; }; export type SessionUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string; sessionToken?: StringFieldUpdateOperationsInput | string; userId?: StringFieldUpdateOperationsInput | string; expires?: DateTimeFieldUpdateOperationsInput | Date | string; }; export type SessionCreateManyInput = { id?: string; sessionToken: string; userId: string; expires: Date | string; }; export type SessionUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string; sessionToken?: StringFieldUpdateOperationsInput | string; expires?: DateTimeFieldUpdateOperationsInput | Date | string; }; export type SessionUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string; sessionToken?: StringFieldUpdateOperationsInput | string; userId?: StringFieldUpdateOperationsInput | string; expires?: DateTimeFieldUpdateOperationsInput | Date | string; }; export type UserCreateInput = { id?: string; name?: string | null; email?: string | null; emailVerified?: Date | string | null; image?: string | null; accounts?: AccountCreateNestedManyWithoutUserInput; sessions?: SessionCreateNestedManyWithoutUserInput; posts?: PostCreateNestedManyWithoutCreatedByInput; }; export type UserUncheckedCreateInput = { id?: string; name?: string | null; email?: string | null; emailVerified?: Date | string | null; image?: string | null; accounts?: AccountUncheckedCreateNestedManyWithoutUserInput; sessions?: SessionUncheckedCreateNestedManyWithoutUserInput; posts?: PostUncheckedCreateNestedManyWithoutCreatedByInput; }; export type UserUpdateInput = { id?: StringFieldUpdateOperationsInput | string; name?: NullableStringFieldUpdateOperationsInput | string | null; email?: NullableStringFieldUpdateOperationsInput | string | null; emailVerified?: | NullableDateTimeFieldUpdateOperationsInput | Date | string | null; image?: NullableStringFieldUpdateOperationsInput | string | null; accounts?: AccountUpdateManyWithoutUserNestedInput; sessions?: SessionUpdateManyWithoutUserNestedInput; posts?: PostUpdateManyWithoutCreatedByNestedInput; }; export type UserUncheckedUpdateInput = { id?: StringFieldUpdateOperationsInput | string; name?: NullableStringFieldUpdateOperationsInput | string | null; email?: NullableStringFieldUpdateOperationsInput | string | null; emailVerified?: | NullableDateTimeFieldUpdateOperationsInput | Date | string | null; image?: NullableStringFieldUpdateOperationsInput | string | null; accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput; sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput; posts?: PostUncheckedUpdateManyWithoutCreatedByNestedInput; }; export type UserCreateManyInput = { id?: string; name?: string | null; email?: string | null; emailVerified?: Date | string | null; image?: string | null; }; export type UserUpdateManyMutationInput = { id?: StringFieldUpdateOperationsInput | string; name?: NullableStringFieldUpdateOperationsInput | string | null; email?: NullableStringFieldUpdateOperationsInput | string | null; emailVerified?: | NullableDateTimeFieldUpdateOperationsInput | Date | string | null; image?: NullableStringFieldUpdateOperationsInput | string | null; }; export type UserUncheckedUpdateManyInput = { id?: StringFieldUpdateOperationsInput | string; name?: NullableStringFieldUpdateOperationsInput | string | null; email?: NullableStringFieldUpdateOperationsInput | string | null; emailVerified?: | NullableDateTimeFieldUpdateOperationsInput | Date | string | null; image?: NullableStringFieldUpdateOperationsInput | string | null; }; export type VerificationTokenCreateInput = { identifier: string; token: string; expires: Date | string; }; export type VerificationTokenUncheckedCreateInput = { identifier: string; token: string; expires: Date | string; }; export type VerificationTokenUpdateInput = { identifier?: StringFieldUpdateOperationsInput | string; token?: StringFieldUpdateOperationsInput | string; expires?: DateTimeFieldUpdateOperationsInput | Date | string; }; export type VerificationTokenUncheckedUpdateInput = { identifier?: StringFieldUpdateOperationsInput | string; token?: StringFieldUpdateOperationsInput | string; expires?: DateTimeFieldUpdateOperationsInput | Date | string; }; export type VerificationTokenCreateManyInput = { identifier: string; token: string; expires: Date | string; }; export type VerificationTokenUpdateManyMutationInput = { identifier?: StringFieldUpdateOperationsInput | string; token?: StringFieldUpdateOperationsInput | string; expires?: DateTimeFieldUpdateOperationsInput | Date | string; }; export type VerificationTokenUncheckedUpdateManyInput = { identifier?: StringFieldUpdateOperationsInput | string; token?: StringFieldUpdateOperationsInput | string; expires?: DateTimeFieldUpdateOperationsInput | Date | string; }; 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 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>; search?: string; not?: NestedStringFilter<$PrismaModel> | string; }; 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 UserScalarRelationFilter = { is?: UserWhereInput; isNot?: UserWhereInput; }; export type PostOrderByRelevanceInput = { fields: PostOrderByRelevanceFieldEnum | PostOrderByRelevanceFieldEnum[]; sort: SortOrder; search: string; }; export type PostCountOrderByAggregateInput = { id?: SortOrder; name?: SortOrder; createdAt?: SortOrder; updatedAt?: SortOrder; createdById?: SortOrder; }; export type PostAvgOrderByAggregateInput = { id?: SortOrder; }; export type PostMaxOrderByAggregateInput = { id?: SortOrder; name?: SortOrder; createdAt?: SortOrder; updatedAt?: SortOrder; createdById?: SortOrder; }; export type PostMinOrderByAggregateInput = { id?: SortOrder; name?: SortOrder; createdAt?: SortOrder; updatedAt?: SortOrder; createdById?: SortOrder; }; export type PostSumOrderByAggregateInput = { 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 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>; search?: string; not?: NestedStringWithAggregatesFilter<$PrismaModel> | string; _count?: NestedIntFilter<$PrismaModel>; _min?: NestedStringFilter<$PrismaModel>; _max?: NestedStringFilter<$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 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>; search?: string; not?: NestedStringNullableFilter<$PrismaModel> | 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 SortOrderInput = { sort: SortOrder; nulls?: NullsOrder; }; export type AccountOrderByRelevanceInput = { fields: | AccountOrderByRelevanceFieldEnum | AccountOrderByRelevanceFieldEnum[]; sort: SortOrder; search: string; }; export type AccountProviderProviderAccountIdCompoundUniqueInput = { provider: string; providerAccountId: string; }; export type AccountCountOrderByAggregateInput = { id?: SortOrder; userId?: SortOrder; type?: SortOrder; provider?: SortOrder; providerAccountId?: SortOrder; refresh_token?: SortOrder; access_token?: SortOrder; expires_at?: SortOrder; token_type?: SortOrder; scope?: SortOrder; id_token?: SortOrder; session_state?: SortOrder; refresh_token_expires_in?: SortOrder; }; export type AccountAvgOrderByAggregateInput = { expires_at?: SortOrder; refresh_token_expires_in?: SortOrder; }; export type AccountMaxOrderByAggregateInput = { id?: SortOrder; userId?: SortOrder; type?: SortOrder; provider?: SortOrder; providerAccountId?: SortOrder; refresh_token?: SortOrder; access_token?: SortOrder; expires_at?: SortOrder; token_type?: SortOrder; scope?: SortOrder; id_token?: SortOrder; session_state?: SortOrder; refresh_token_expires_in?: SortOrder; }; export type AccountMinOrderByAggregateInput = { id?: SortOrder; userId?: SortOrder; type?: SortOrder; provider?: SortOrder; providerAccountId?: SortOrder; refresh_token?: SortOrder; access_token?: SortOrder; expires_at?: SortOrder; token_type?: SortOrder; scope?: SortOrder; id_token?: SortOrder; session_state?: SortOrder; refresh_token_expires_in?: SortOrder; }; export type AccountSumOrderByAggregateInput = { expires_at?: SortOrder; refresh_token_expires_in?: SortOrder; }; 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>; search?: string; not?: | NestedStringNullableWithAggregatesFilter<$PrismaModel> | string | null; _count?: NestedIntNullableFilter<$PrismaModel>; _min?: NestedStringNullableFilter<$PrismaModel>; _max?: NestedStringNullableFilter<$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 SessionOrderByRelevanceInput = { fields: | SessionOrderByRelevanceFieldEnum | SessionOrderByRelevanceFieldEnum[]; sort: SortOrder; search: string; }; export type SessionCountOrderByAggregateInput = { id?: SortOrder; sessionToken?: SortOrder; userId?: SortOrder; expires?: SortOrder; }; export type SessionMaxOrderByAggregateInput = { id?: SortOrder; sessionToken?: SortOrder; userId?: SortOrder; expires?: SortOrder; }; export type SessionMinOrderByAggregateInput = { id?: SortOrder; sessionToken?: SortOrder; userId?: SortOrder; expires?: SortOrder; }; 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 AccountListRelationFilter = { every?: AccountWhereInput; some?: AccountWhereInput; none?: AccountWhereInput; }; export type SessionListRelationFilter = { every?: SessionWhereInput; some?: SessionWhereInput; none?: SessionWhereInput; }; export type PostListRelationFilter = { every?: PostWhereInput; some?: PostWhereInput; none?: PostWhereInput; }; export type AccountOrderByRelationAggregateInput = { _count?: SortOrder; }; export type SessionOrderByRelationAggregateInput = { _count?: SortOrder; }; export type PostOrderByRelationAggregateInput = { _count?: SortOrder; }; export type UserOrderByRelevanceInput = { fields: UserOrderByRelevanceFieldEnum | UserOrderByRelevanceFieldEnum[]; sort: SortOrder; search: string; }; export type UserCountOrderByAggregateInput = { id?: SortOrder; name?: SortOrder; email?: SortOrder; emailVerified?: SortOrder; image?: SortOrder; }; export type UserMaxOrderByAggregateInput = { id?: SortOrder; name?: SortOrder; email?: SortOrder; emailVerified?: SortOrder; image?: SortOrder; }; export type UserMinOrderByAggregateInput = { id?: SortOrder; name?: SortOrder; email?: SortOrder; emailVerified?: SortOrder; image?: SortOrder; }; 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 VerificationTokenOrderByRelevanceInput = { fields: | VerificationTokenOrderByRelevanceFieldEnum | VerificationTokenOrderByRelevanceFieldEnum[]; sort: SortOrder; search: string; }; export type VerificationTokenIdentifierTokenCompoundUniqueInput = { identifier: string; token: string; }; export type VerificationTokenCountOrderByAggregateInput = { identifier?: SortOrder; token?: SortOrder; expires?: SortOrder; }; export type VerificationTokenMaxOrderByAggregateInput = { identifier?: SortOrder; token?: SortOrder; expires?: SortOrder; }; export type VerificationTokenMinOrderByAggregateInput = { identifier?: SortOrder; token?: SortOrder; expires?: SortOrder; }; export type UserCreateNestedOneWithoutPostsInput = { create?: XOR< UserCreateWithoutPostsInput, UserUncheckedCreateWithoutPostsInput >; connectOrCreate?: UserCreateOrConnectWithoutPostsInput; connect?: UserWhereUniqueInput; }; export type StringFieldUpdateOperationsInput = { set?: string; }; export type DateTimeFieldUpdateOperationsInput = { set?: Date | string; }; export type UserUpdateOneRequiredWithoutPostsNestedInput = { create?: XOR< UserCreateWithoutPostsInput, UserUncheckedCreateWithoutPostsInput >; connectOrCreate?: UserCreateOrConnectWithoutPostsInput; upsert?: UserUpsertWithoutPostsInput; connect?: UserWhereUniqueInput; update?: XOR< XOR< UserUpdateToOneWithWhereWithoutPostsInput, UserUpdateWithoutPostsInput >, UserUncheckedUpdateWithoutPostsInput >; }; export type IntFieldUpdateOperationsInput = { set?: number; increment?: number; decrement?: number; multiply?: number; divide?: number; }; export type UserCreateNestedOneWithoutAccountsInput = { create?: XOR< UserCreateWithoutAccountsInput, UserUncheckedCreateWithoutAccountsInput >; connectOrCreate?: UserCreateOrConnectWithoutAccountsInput; connect?: UserWhereUniqueInput; }; export type NullableStringFieldUpdateOperationsInput = { set?: string | null; }; export type NullableIntFieldUpdateOperationsInput = { set?: number | null; increment?: number; decrement?: number; multiply?: number; divide?: number; }; export type UserUpdateOneRequiredWithoutAccountsNestedInput = { create?: XOR< UserCreateWithoutAccountsInput, UserUncheckedCreateWithoutAccountsInput >; connectOrCreate?: UserCreateOrConnectWithoutAccountsInput; upsert?: UserUpsertWithoutAccountsInput; connect?: UserWhereUniqueInput; update?: XOR< XOR< UserUpdateToOneWithWhereWithoutAccountsInput, UserUpdateWithoutAccountsInput >, UserUncheckedUpdateWithoutAccountsInput >; }; export type UserCreateNestedOneWithoutSessionsInput = { create?: XOR< UserCreateWithoutSessionsInput, UserUncheckedCreateWithoutSessionsInput >; connectOrCreate?: UserCreateOrConnectWithoutSessionsInput; connect?: UserWhereUniqueInput; }; export type UserUpdateOneRequiredWithoutSessionsNestedInput = { create?: XOR< UserCreateWithoutSessionsInput, UserUncheckedCreateWithoutSessionsInput >; connectOrCreate?: UserCreateOrConnectWithoutSessionsInput; upsert?: UserUpsertWithoutSessionsInput; connect?: UserWhereUniqueInput; update?: XOR< XOR< UserUpdateToOneWithWhereWithoutSessionsInput, UserUpdateWithoutSessionsInput >, UserUncheckedUpdateWithoutSessionsInput >; }; export type AccountCreateNestedManyWithoutUserInput = { create?: | XOR< AccountCreateWithoutUserInput, AccountUncheckedCreateWithoutUserInput > | AccountCreateWithoutUserInput[] | AccountUncheckedCreateWithoutUserInput[]; connectOrCreate?: | AccountCreateOrConnectWithoutUserInput | AccountCreateOrConnectWithoutUserInput[]; createMany?: AccountCreateManyUserInputEnvelope; connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; }; export type SessionCreateNestedManyWithoutUserInput = { create?: | XOR< SessionCreateWithoutUserInput, SessionUncheckedCreateWithoutUserInput > | SessionCreateWithoutUserInput[] | SessionUncheckedCreateWithoutUserInput[]; connectOrCreate?: | SessionCreateOrConnectWithoutUserInput | SessionCreateOrConnectWithoutUserInput[]; createMany?: SessionCreateManyUserInputEnvelope; connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; }; export type PostCreateNestedManyWithoutCreatedByInput = { create?: | XOR< PostCreateWithoutCreatedByInput, PostUncheckedCreateWithoutCreatedByInput > | PostCreateWithoutCreatedByInput[] | PostUncheckedCreateWithoutCreatedByInput[]; connectOrCreate?: | PostCreateOrConnectWithoutCreatedByInput | PostCreateOrConnectWithoutCreatedByInput[]; createMany?: PostCreateManyCreatedByInputEnvelope; connect?: PostWhereUniqueInput | PostWhereUniqueInput[]; }; export type AccountUncheckedCreateNestedManyWithoutUserInput = { create?: | XOR< AccountCreateWithoutUserInput, AccountUncheckedCreateWithoutUserInput > | AccountCreateWithoutUserInput[] | AccountUncheckedCreateWithoutUserInput[]; connectOrCreate?: | AccountCreateOrConnectWithoutUserInput | AccountCreateOrConnectWithoutUserInput[]; createMany?: AccountCreateManyUserInputEnvelope; connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; }; export type SessionUncheckedCreateNestedManyWithoutUserInput = { create?: | XOR< SessionCreateWithoutUserInput, SessionUncheckedCreateWithoutUserInput > | SessionCreateWithoutUserInput[] | SessionUncheckedCreateWithoutUserInput[]; connectOrCreate?: | SessionCreateOrConnectWithoutUserInput | SessionCreateOrConnectWithoutUserInput[]; createMany?: SessionCreateManyUserInputEnvelope; connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; }; export type PostUncheckedCreateNestedManyWithoutCreatedByInput = { create?: | XOR< PostCreateWithoutCreatedByInput, PostUncheckedCreateWithoutCreatedByInput > | PostCreateWithoutCreatedByInput[] | PostUncheckedCreateWithoutCreatedByInput[]; connectOrCreate?: | PostCreateOrConnectWithoutCreatedByInput | PostCreateOrConnectWithoutCreatedByInput[]; createMany?: PostCreateManyCreatedByInputEnvelope; connect?: PostWhereUniqueInput | PostWhereUniqueInput[]; }; export type NullableDateTimeFieldUpdateOperationsInput = { set?: Date | string | null; }; export type AccountUpdateManyWithoutUserNestedInput = { create?: | XOR< AccountCreateWithoutUserInput, AccountUncheckedCreateWithoutUserInput > | AccountCreateWithoutUserInput[] | AccountUncheckedCreateWithoutUserInput[]; connectOrCreate?: | AccountCreateOrConnectWithoutUserInput | AccountCreateOrConnectWithoutUserInput[]; upsert?: | AccountUpsertWithWhereUniqueWithoutUserInput | AccountUpsertWithWhereUniqueWithoutUserInput[]; createMany?: AccountCreateManyUserInputEnvelope; set?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; disconnect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; delete?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; update?: | AccountUpdateWithWhereUniqueWithoutUserInput | AccountUpdateWithWhereUniqueWithoutUserInput[]; updateMany?: | AccountUpdateManyWithWhereWithoutUserInput | AccountUpdateManyWithWhereWithoutUserInput[]; deleteMany?: AccountScalarWhereInput | AccountScalarWhereInput[]; }; export type SessionUpdateManyWithoutUserNestedInput = { create?: | XOR< SessionCreateWithoutUserInput, SessionUncheckedCreateWithoutUserInput > | SessionCreateWithoutUserInput[] | SessionUncheckedCreateWithoutUserInput[]; connectOrCreate?: | SessionCreateOrConnectWithoutUserInput | SessionCreateOrConnectWithoutUserInput[]; upsert?: | SessionUpsertWithWhereUniqueWithoutUserInput | SessionUpsertWithWhereUniqueWithoutUserInput[]; createMany?: SessionCreateManyUserInputEnvelope; set?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; disconnect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; delete?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; update?: | SessionUpdateWithWhereUniqueWithoutUserInput | SessionUpdateWithWhereUniqueWithoutUserInput[]; updateMany?: | SessionUpdateManyWithWhereWithoutUserInput | SessionUpdateManyWithWhereWithoutUserInput[]; deleteMany?: SessionScalarWhereInput | SessionScalarWhereInput[]; }; export type PostUpdateManyWithoutCreatedByNestedInput = { create?: | XOR< PostCreateWithoutCreatedByInput, PostUncheckedCreateWithoutCreatedByInput > | PostCreateWithoutCreatedByInput[] | PostUncheckedCreateWithoutCreatedByInput[]; connectOrCreate?: | PostCreateOrConnectWithoutCreatedByInput | PostCreateOrConnectWithoutCreatedByInput[]; upsert?: | PostUpsertWithWhereUniqueWithoutCreatedByInput | PostUpsertWithWhereUniqueWithoutCreatedByInput[]; createMany?: PostCreateManyCreatedByInputEnvelope; set?: PostWhereUniqueInput | PostWhereUniqueInput[]; disconnect?: PostWhereUniqueInput | PostWhereUniqueInput[]; delete?: PostWhereUniqueInput | PostWhereUniqueInput[]; connect?: PostWhereUniqueInput | PostWhereUniqueInput[]; update?: | PostUpdateWithWhereUniqueWithoutCreatedByInput | PostUpdateWithWhereUniqueWithoutCreatedByInput[]; updateMany?: | PostUpdateManyWithWhereWithoutCreatedByInput | PostUpdateManyWithWhereWithoutCreatedByInput[]; deleteMany?: PostScalarWhereInput | PostScalarWhereInput[]; }; export type AccountUncheckedUpdateManyWithoutUserNestedInput = { create?: | XOR< AccountCreateWithoutUserInput, AccountUncheckedCreateWithoutUserInput > | AccountCreateWithoutUserInput[] | AccountUncheckedCreateWithoutUserInput[]; connectOrCreate?: | AccountCreateOrConnectWithoutUserInput | AccountCreateOrConnectWithoutUserInput[]; upsert?: | AccountUpsertWithWhereUniqueWithoutUserInput | AccountUpsertWithWhereUniqueWithoutUserInput[]; createMany?: AccountCreateManyUserInputEnvelope; set?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; disconnect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; delete?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; update?: | AccountUpdateWithWhereUniqueWithoutUserInput | AccountUpdateWithWhereUniqueWithoutUserInput[]; updateMany?: | AccountUpdateManyWithWhereWithoutUserInput | AccountUpdateManyWithWhereWithoutUserInput[]; deleteMany?: AccountScalarWhereInput | AccountScalarWhereInput[]; }; export type SessionUncheckedUpdateManyWithoutUserNestedInput = { create?: | XOR< SessionCreateWithoutUserInput, SessionUncheckedCreateWithoutUserInput > | SessionCreateWithoutUserInput[] | SessionUncheckedCreateWithoutUserInput[]; connectOrCreate?: | SessionCreateOrConnectWithoutUserInput | SessionCreateOrConnectWithoutUserInput[]; upsert?: | SessionUpsertWithWhereUniqueWithoutUserInput | SessionUpsertWithWhereUniqueWithoutUserInput[]; createMany?: SessionCreateManyUserInputEnvelope; set?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; disconnect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; delete?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; update?: | SessionUpdateWithWhereUniqueWithoutUserInput | SessionUpdateWithWhereUniqueWithoutUserInput[]; updateMany?: | SessionUpdateManyWithWhereWithoutUserInput | SessionUpdateManyWithWhereWithoutUserInput[]; deleteMany?: SessionScalarWhereInput | SessionScalarWhereInput[]; }; export type PostUncheckedUpdateManyWithoutCreatedByNestedInput = { create?: | XOR< PostCreateWithoutCreatedByInput, PostUncheckedCreateWithoutCreatedByInput > | PostCreateWithoutCreatedByInput[] | PostUncheckedCreateWithoutCreatedByInput[]; connectOrCreate?: | PostCreateOrConnectWithoutCreatedByInput | PostCreateOrConnectWithoutCreatedByInput[]; upsert?: | PostUpsertWithWhereUniqueWithoutCreatedByInput | PostUpsertWithWhereUniqueWithoutCreatedByInput[]; createMany?: PostCreateManyCreatedByInputEnvelope; set?: PostWhereUniqueInput | PostWhereUniqueInput[]; disconnect?: PostWhereUniqueInput | PostWhereUniqueInput[]; delete?: PostWhereUniqueInput | PostWhereUniqueInput[]; connect?: PostWhereUniqueInput | PostWhereUniqueInput[]; update?: | PostUpdateWithWhereUniqueWithoutCreatedByInput | PostUpdateWithWhereUniqueWithoutCreatedByInput[]; updateMany?: | PostUpdateManyWithWhereWithoutCreatedByInput | PostUpdateManyWithWhereWithoutCreatedByInput[]; deleteMany?: PostScalarWhereInput | PostScalarWhereInput[]; }; 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 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>; search?: string; not?: NestedStringFilter<$PrismaModel> | string; }; 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 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 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>; search?: string; not?: NestedStringWithAggregatesFilter<$PrismaModel> | string; _count?: NestedIntFilter<$PrismaModel>; _min?: NestedStringFilter<$PrismaModel>; _max?: NestedStringFilter<$PrismaModel>; }; 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 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>; search?: string; not?: NestedStringNullableFilter<$PrismaModel> | string | null; }; 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 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>; search?: string; not?: | NestedStringNullableWithAggregatesFilter<$PrismaModel> | string | null; _count?: NestedIntNullableFilter<$PrismaModel>; _min?: NestedStringNullableFilter<$PrismaModel>; _max?: NestedStringNullableFilter<$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 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 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 UserCreateWithoutPostsInput = { id?: string; name?: string | null; email?: string | null; emailVerified?: Date | string | null; image?: string | null; accounts?: AccountCreateNestedManyWithoutUserInput; sessions?: SessionCreateNestedManyWithoutUserInput; }; export type UserUncheckedCreateWithoutPostsInput = { id?: string; name?: string | null; email?: string | null; emailVerified?: Date | string | null; image?: string | null; accounts?: AccountUncheckedCreateNestedManyWithoutUserInput; sessions?: SessionUncheckedCreateNestedManyWithoutUserInput; }; export type UserCreateOrConnectWithoutPostsInput = { where: UserWhereUniqueInput; create: XOR< UserCreateWithoutPostsInput, UserUncheckedCreateWithoutPostsInput >; }; export type UserUpsertWithoutPostsInput = { update: XOR< UserUpdateWithoutPostsInput, UserUncheckedUpdateWithoutPostsInput >; create: XOR< UserCreateWithoutPostsInput, UserUncheckedCreateWithoutPostsInput >; where?: UserWhereInput; }; export type UserUpdateToOneWithWhereWithoutPostsInput = { where?: UserWhereInput; data: XOR< UserUpdateWithoutPostsInput, UserUncheckedUpdateWithoutPostsInput >; }; export type UserUpdateWithoutPostsInput = { id?: StringFieldUpdateOperationsInput | string; name?: NullableStringFieldUpdateOperationsInput | string | null; email?: NullableStringFieldUpdateOperationsInput | string | null; emailVerified?: | NullableDateTimeFieldUpdateOperationsInput | Date | string | null; image?: NullableStringFieldUpdateOperationsInput | string | null; accounts?: AccountUpdateManyWithoutUserNestedInput; sessions?: SessionUpdateManyWithoutUserNestedInput; }; export type UserUncheckedUpdateWithoutPostsInput = { id?: StringFieldUpdateOperationsInput | string; name?: NullableStringFieldUpdateOperationsInput | string | null; email?: NullableStringFieldUpdateOperationsInput | string | null; emailVerified?: | NullableDateTimeFieldUpdateOperationsInput | Date | string | null; image?: NullableStringFieldUpdateOperationsInput | string | null; accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput; sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput; }; export type UserCreateWithoutAccountsInput = { id?: string; name?: string | null; email?: string | null; emailVerified?: Date | string | null; image?: string | null; sessions?: SessionCreateNestedManyWithoutUserInput; posts?: PostCreateNestedManyWithoutCreatedByInput; }; export type UserUncheckedCreateWithoutAccountsInput = { id?: string; name?: string | null; email?: string | null; emailVerified?: Date | string | null; image?: string | null; sessions?: SessionUncheckedCreateNestedManyWithoutUserInput; posts?: PostUncheckedCreateNestedManyWithoutCreatedByInput; }; export type UserCreateOrConnectWithoutAccountsInput = { where: UserWhereUniqueInput; create: XOR< UserCreateWithoutAccountsInput, UserUncheckedCreateWithoutAccountsInput >; }; export type UserUpsertWithoutAccountsInput = { update: XOR< UserUpdateWithoutAccountsInput, UserUncheckedUpdateWithoutAccountsInput >; create: XOR< UserCreateWithoutAccountsInput, UserUncheckedCreateWithoutAccountsInput >; where?: UserWhereInput; }; export type UserUpdateToOneWithWhereWithoutAccountsInput = { where?: UserWhereInput; data: XOR< UserUpdateWithoutAccountsInput, UserUncheckedUpdateWithoutAccountsInput >; }; export type UserUpdateWithoutAccountsInput = { id?: StringFieldUpdateOperationsInput | string; name?: NullableStringFieldUpdateOperationsInput | string | null; email?: NullableStringFieldUpdateOperationsInput | string | null; emailVerified?: | NullableDateTimeFieldUpdateOperationsInput | Date | string | null; image?: NullableStringFieldUpdateOperationsInput | string | null; sessions?: SessionUpdateManyWithoutUserNestedInput; posts?: PostUpdateManyWithoutCreatedByNestedInput; }; export type UserUncheckedUpdateWithoutAccountsInput = { id?: StringFieldUpdateOperationsInput | string; name?: NullableStringFieldUpdateOperationsInput | string | null; email?: NullableStringFieldUpdateOperationsInput | string | null; emailVerified?: | NullableDateTimeFieldUpdateOperationsInput | Date | string | null; image?: NullableStringFieldUpdateOperationsInput | string | null; sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput; posts?: PostUncheckedUpdateManyWithoutCreatedByNestedInput; }; export type UserCreateWithoutSessionsInput = { id?: string; name?: string | null; email?: string | null; emailVerified?: Date | string | null; image?: string | null; accounts?: AccountCreateNestedManyWithoutUserInput; posts?: PostCreateNestedManyWithoutCreatedByInput; }; export type UserUncheckedCreateWithoutSessionsInput = { id?: string; name?: string | null; email?: string | null; emailVerified?: Date | string | null; image?: string | null; accounts?: AccountUncheckedCreateNestedManyWithoutUserInput; posts?: PostUncheckedCreateNestedManyWithoutCreatedByInput; }; export type UserCreateOrConnectWithoutSessionsInput = { where: UserWhereUniqueInput; create: XOR< UserCreateWithoutSessionsInput, UserUncheckedCreateWithoutSessionsInput >; }; export type UserUpsertWithoutSessionsInput = { update: XOR< UserUpdateWithoutSessionsInput, UserUncheckedUpdateWithoutSessionsInput >; create: XOR< UserCreateWithoutSessionsInput, UserUncheckedCreateWithoutSessionsInput >; where?: UserWhereInput; }; export type UserUpdateToOneWithWhereWithoutSessionsInput = { where?: UserWhereInput; data: XOR< UserUpdateWithoutSessionsInput, UserUncheckedUpdateWithoutSessionsInput >; }; export type UserUpdateWithoutSessionsInput = { id?: StringFieldUpdateOperationsInput | string; name?: NullableStringFieldUpdateOperationsInput | string | null; email?: NullableStringFieldUpdateOperationsInput | string | null; emailVerified?: | NullableDateTimeFieldUpdateOperationsInput | Date | string | null; image?: NullableStringFieldUpdateOperationsInput | string | null; accounts?: AccountUpdateManyWithoutUserNestedInput; posts?: PostUpdateManyWithoutCreatedByNestedInput; }; export type UserUncheckedUpdateWithoutSessionsInput = { id?: StringFieldUpdateOperationsInput | string; name?: NullableStringFieldUpdateOperationsInput | string | null; email?: NullableStringFieldUpdateOperationsInput | string | null; emailVerified?: | NullableDateTimeFieldUpdateOperationsInput | Date | string | null; image?: NullableStringFieldUpdateOperationsInput | string | null; accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput; posts?: PostUncheckedUpdateManyWithoutCreatedByNestedInput; }; export type AccountCreateWithoutUserInput = { id?: string; type: string; provider: string; providerAccountId: string; refresh_token?: string | null; access_token?: string | null; expires_at?: number | null; token_type?: string | null; scope?: string | null; id_token?: string | null; session_state?: string | null; refresh_token_expires_in?: number | null; }; export type AccountUncheckedCreateWithoutUserInput = { id?: string; type: string; provider: string; providerAccountId: string; refresh_token?: string | null; access_token?: string | null; expires_at?: number | null; token_type?: string | null; scope?: string | null; id_token?: string | null; session_state?: string | null; refresh_token_expires_in?: number | null; }; export type AccountCreateOrConnectWithoutUserInput = { where: AccountWhereUniqueInput; create: XOR< AccountCreateWithoutUserInput, AccountUncheckedCreateWithoutUserInput >; }; export type AccountCreateManyUserInputEnvelope = { data: AccountCreateManyUserInput | AccountCreateManyUserInput[]; skipDuplicates?: boolean; }; export type SessionCreateWithoutUserInput = { id?: string; sessionToken: string; expires: Date | string; }; export type SessionUncheckedCreateWithoutUserInput = { id?: string; sessionToken: string; expires: Date | string; }; export type SessionCreateOrConnectWithoutUserInput = { where: SessionWhereUniqueInput; create: XOR< SessionCreateWithoutUserInput, SessionUncheckedCreateWithoutUserInput >; }; export type SessionCreateManyUserInputEnvelope = { data: SessionCreateManyUserInput | SessionCreateManyUserInput[]; skipDuplicates?: boolean; }; export type PostCreateWithoutCreatedByInput = { name: string; createdAt?: Date | string; updatedAt?: Date | string; }; export type PostUncheckedCreateWithoutCreatedByInput = { id?: number; name: string; createdAt?: Date | string; updatedAt?: Date | string; }; export type PostCreateOrConnectWithoutCreatedByInput = { where: PostWhereUniqueInput; create: XOR< PostCreateWithoutCreatedByInput, PostUncheckedCreateWithoutCreatedByInput >; }; export type PostCreateManyCreatedByInputEnvelope = { data: PostCreateManyCreatedByInput | PostCreateManyCreatedByInput[]; skipDuplicates?: boolean; }; export type AccountUpsertWithWhereUniqueWithoutUserInput = { where: AccountWhereUniqueInput; update: XOR< AccountUpdateWithoutUserInput, AccountUncheckedUpdateWithoutUserInput >; create: XOR< AccountCreateWithoutUserInput, AccountUncheckedCreateWithoutUserInput >; }; export type AccountUpdateWithWhereUniqueWithoutUserInput = { where: AccountWhereUniqueInput; data: XOR< AccountUpdateWithoutUserInput, AccountUncheckedUpdateWithoutUserInput >; }; export type AccountUpdateManyWithWhereWithoutUserInput = { where: AccountScalarWhereInput; data: XOR< AccountUpdateManyMutationInput, AccountUncheckedUpdateManyWithoutUserInput >; }; export type AccountScalarWhereInput = { AND?: AccountScalarWhereInput | AccountScalarWhereInput[]; OR?: AccountScalarWhereInput[]; NOT?: AccountScalarWhereInput | AccountScalarWhereInput[]; id?: StringFilter<"Account"> | string; userId?: StringFilter<"Account"> | string; type?: StringFilter<"Account"> | string; provider?: StringFilter<"Account"> | string; providerAccountId?: StringFilter<"Account"> | string; refresh_token?: StringNullableFilter<"Account"> | string | null; access_token?: StringNullableFilter<"Account"> | string | null; expires_at?: IntNullableFilter<"Account"> | number | null; token_type?: StringNullableFilter<"Account"> | string | null; scope?: StringNullableFilter<"Account"> | string | null; id_token?: StringNullableFilter<"Account"> | string | null; session_state?: StringNullableFilter<"Account"> | string | null; refresh_token_expires_in?: IntNullableFilter<"Account"> | number | null; }; export type SessionUpsertWithWhereUniqueWithoutUserInput = { where: SessionWhereUniqueInput; update: XOR< SessionUpdateWithoutUserInput, SessionUncheckedUpdateWithoutUserInput >; create: XOR< SessionCreateWithoutUserInput, SessionUncheckedCreateWithoutUserInput >; }; export type SessionUpdateWithWhereUniqueWithoutUserInput = { where: SessionWhereUniqueInput; data: XOR< SessionUpdateWithoutUserInput, SessionUncheckedUpdateWithoutUserInput >; }; export type SessionUpdateManyWithWhereWithoutUserInput = { where: SessionScalarWhereInput; data: XOR< SessionUpdateManyMutationInput, SessionUncheckedUpdateManyWithoutUserInput >; }; export type SessionScalarWhereInput = { AND?: SessionScalarWhereInput | SessionScalarWhereInput[]; OR?: SessionScalarWhereInput[]; NOT?: SessionScalarWhereInput | SessionScalarWhereInput[]; id?: StringFilter<"Session"> | string; sessionToken?: StringFilter<"Session"> | string; userId?: StringFilter<"Session"> | string; expires?: DateTimeFilter<"Session"> | Date | string; }; export type PostUpsertWithWhereUniqueWithoutCreatedByInput = { where: PostWhereUniqueInput; update: XOR< PostUpdateWithoutCreatedByInput, PostUncheckedUpdateWithoutCreatedByInput >; create: XOR< PostCreateWithoutCreatedByInput, PostUncheckedCreateWithoutCreatedByInput >; }; export type PostUpdateWithWhereUniqueWithoutCreatedByInput = { where: PostWhereUniqueInput; data: XOR< PostUpdateWithoutCreatedByInput, PostUncheckedUpdateWithoutCreatedByInput >; }; export type PostUpdateManyWithWhereWithoutCreatedByInput = { where: PostScalarWhereInput; data: XOR< PostUpdateManyMutationInput, PostUncheckedUpdateManyWithoutCreatedByInput >; }; export type PostScalarWhereInput = { AND?: PostScalarWhereInput | PostScalarWhereInput[]; OR?: PostScalarWhereInput[]; NOT?: PostScalarWhereInput | PostScalarWhereInput[]; id?: IntFilter<"Post"> | number; name?: StringFilter<"Post"> | string; createdAt?: DateTimeFilter<"Post"> | Date | string; updatedAt?: DateTimeFilter<"Post"> | Date | string; createdById?: StringFilter<"Post"> | string; }; export type AccountCreateManyUserInput = { id?: string; type: string; provider: string; providerAccountId: string; refresh_token?: string | null; access_token?: string | null; expires_at?: number | null; token_type?: string | null; scope?: string | null; id_token?: string | null; session_state?: string | null; refresh_token_expires_in?: number | null; }; export type SessionCreateManyUserInput = { id?: string; sessionToken: string; expires: Date | string; }; export type PostCreateManyCreatedByInput = { id?: number; name: string; createdAt?: Date | string; updatedAt?: Date | string; }; export type AccountUpdateWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string; type?: StringFieldUpdateOperationsInput | string; provider?: StringFieldUpdateOperationsInput | string; providerAccountId?: StringFieldUpdateOperationsInput | string; refresh_token?: NullableStringFieldUpdateOperationsInput | string | null; access_token?: NullableStringFieldUpdateOperationsInput | string | null; expires_at?: NullableIntFieldUpdateOperationsInput | number | null; token_type?: NullableStringFieldUpdateOperationsInput | string | null; scope?: NullableStringFieldUpdateOperationsInput | string | null; id_token?: NullableStringFieldUpdateOperationsInput | string | null; session_state?: NullableStringFieldUpdateOperationsInput | string | null; refresh_token_expires_in?: | NullableIntFieldUpdateOperationsInput | number | null; }; export type AccountUncheckedUpdateWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string; type?: StringFieldUpdateOperationsInput | string; provider?: StringFieldUpdateOperationsInput | string; providerAccountId?: StringFieldUpdateOperationsInput | string; refresh_token?: NullableStringFieldUpdateOperationsInput | string | null; access_token?: NullableStringFieldUpdateOperationsInput | string | null; expires_at?: NullableIntFieldUpdateOperationsInput | number | null; token_type?: NullableStringFieldUpdateOperationsInput | string | null; scope?: NullableStringFieldUpdateOperationsInput | string | null; id_token?: NullableStringFieldUpdateOperationsInput | string | null; session_state?: NullableStringFieldUpdateOperationsInput | string | null; refresh_token_expires_in?: | NullableIntFieldUpdateOperationsInput | number | null; }; export type AccountUncheckedUpdateManyWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string; type?: StringFieldUpdateOperationsInput | string; provider?: StringFieldUpdateOperationsInput | string; providerAccountId?: StringFieldUpdateOperationsInput | string; refresh_token?: NullableStringFieldUpdateOperationsInput | string | null; access_token?: NullableStringFieldUpdateOperationsInput | string | null; expires_at?: NullableIntFieldUpdateOperationsInput | number | null; token_type?: NullableStringFieldUpdateOperationsInput | string | null; scope?: NullableStringFieldUpdateOperationsInput | string | null; id_token?: NullableStringFieldUpdateOperationsInput | string | null; session_state?: NullableStringFieldUpdateOperationsInput | string | null; refresh_token_expires_in?: | NullableIntFieldUpdateOperationsInput | number | null; }; export type SessionUpdateWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string; sessionToken?: StringFieldUpdateOperationsInput | string; expires?: DateTimeFieldUpdateOperationsInput | Date | string; }; export type SessionUncheckedUpdateWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string; sessionToken?: StringFieldUpdateOperationsInput | string; expires?: DateTimeFieldUpdateOperationsInput | Date | string; }; export type SessionUncheckedUpdateManyWithoutUserInput = { id?: StringFieldUpdateOperationsInput | string; sessionToken?: StringFieldUpdateOperationsInput | string; expires?: DateTimeFieldUpdateOperationsInput | Date | string; }; export type PostUpdateWithoutCreatedByInput = { name?: StringFieldUpdateOperationsInput | string; createdAt?: DateTimeFieldUpdateOperationsInput | Date | string; updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string; }; export type PostUncheckedUpdateWithoutCreatedByInput = { id?: IntFieldUpdateOperationsInput | number; name?: StringFieldUpdateOperationsInput | string; createdAt?: DateTimeFieldUpdateOperationsInput | Date | string; updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string; }; export type PostUncheckedUpdateManyWithoutCreatedByInput = { id?: IntFieldUpdateOperationsInput | number; name?: StringFieldUpdateOperationsInput | string; createdAt?: DateTimeFieldUpdateOperationsInput | Date | string; updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string; }; /** * Batch Payload for updateMany & deleteMany & createMany */ export type BatchPayload = { count: number; }; /** * DMMF */ export const dmmf: runtime.BaseDMMF; }