/* !!! This is code generated by Prisma. Do not edit directly. !!! */ /* eslint-disable */ // biome-ignore-all lint: generated file // @ts-nocheck /* * WARNING: This is an internal file that is subject to change! * * 🛑 Under no circumstances should you import this file directly! 🛑 * * All exports from this file are wrapped under a `Prisma` namespace object in the client.ts file. * While this enables partial backward compatibility, it is not part of the stable public API. * * If you are looking for your Models, Enums, and Input Types, please import them from the respective * model files in the `model` directory! */ import * as runtime from "@prisma/client/runtime/library" import type * as Prisma from "../models" import { type PrismaClient } from "./class" export type * from '../models' export type DMMF = typeof runtime.DMMF export type PrismaPromise = runtime.Types.Public.PrismaPromise /** * Prisma Errors */ export const PrismaClientKnownRequestError = runtime.PrismaClientKnownRequestError export type PrismaClientKnownRequestError = runtime.PrismaClientKnownRequestError export const PrismaClientUnknownRequestError = runtime.PrismaClientUnknownRequestError export type PrismaClientUnknownRequestError = runtime.PrismaClientUnknownRequestError export const PrismaClientRustPanicError = runtime.PrismaClientRustPanicError export type PrismaClientRustPanicError = runtime.PrismaClientRustPanicError export const PrismaClientInitializationError = runtime.PrismaClientInitializationError export type PrismaClientInitializationError = runtime.PrismaClientInitializationError export const PrismaClientValidationError = runtime.PrismaClientValidationError export type PrismaClientValidationError = runtime.PrismaClientValidationError /** * Re-export of sql-template-tag */ export const sql = runtime.sqltag export const empty = runtime.empty export const join = runtime.join export const raw = runtime.raw export const Sql = runtime.Sql export type Sql = runtime.Sql /** * Decimal.js */ export const Decimal = runtime.Decimal export type Decimal = runtime.Decimal export type DecimalJsLike = runtime.DecimalJsLike /** * Metrics */ export type Metrics = runtime.Metrics export type Metric = runtime.Metric export type MetricHistogram = runtime.MetricHistogram export type MetricHistogramBucket = runtime.MetricHistogramBucket /** * Extensions */ export type Extension = runtime.Types.Extensions.UserArgs export const getExtensionContext = runtime.Extensions.getExtensionContext export type Args = runtime.Types.Public.Args export type Payload = runtime.Types.Public.Payload export type Result = runtime.Types.Public.Result export type Exact = runtime.Types.Public.Exact export type PrismaVersion = { client: string engine: string } /** * Prisma Client JS version: 6.19.0 * Query Engine version: 2ba551f319ab1df4bc874a89965d8b3641056773 */ export const prismaVersion: PrismaVersion = { client: "6.19.0", engine: "2ba551f319ab1df4bc874a89965d8b3641056773" } /** * Utility Types */ export type Bytes = runtime.Bytes export type JsonObject = runtime.JsonObject export type JsonArray = runtime.JsonArray export type JsonValue = runtime.JsonValue export type InputJsonObject = runtime.InputJsonObject export type InputJsonArray = runtime.InputJsonArray export type InputJsonValue = runtime.InputJsonValue export const NullTypes = { DbNull: runtime.objectEnumValues.classes.DbNull as (new (secret: never) => typeof runtime.objectEnumValues.instances.DbNull), JsonNull: runtime.objectEnumValues.classes.JsonNull as (new (secret: never) => typeof runtime.objectEnumValues.instances.JsonNull), AnyNull: runtime.objectEnumValues.classes.AnyNull as (new (secret: never) => typeof runtime.objectEnumValues.instances.AnyNull), } /** * Helper for filtering JSON entries that have `null` on the database (empty on the db) * * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field */ export const DbNull = runtime.objectEnumValues.instances.DbNull /** * Helper for filtering JSON entries that have JSON `null` values (not empty on the db) * * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field */ export const JsonNull = runtime.objectEnumValues.instances.JsonNull /** * Helper for filtering JSON entries that are `Prisma.DbNull` or `Prisma.JsonNull` * * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field */ export const AnyNull = runtime.objectEnumValues.instances.AnyNull type SelectAndInclude = { select: any include: any } type SelectAndOmit = { select: any omit: any } /** * From T, pick a set of properties whose keys are in the union K */ type Prisma__Pick = { [P in K]: T[P]; }; export type Enumerable = T | Array; /** * Subset * @desc From `T` pick properties that exist in `U`. Simple version of Intersection */ export type Subset = { [key in keyof T]: key extends keyof U ? T[key] : never; }; /** * SelectSubset * @desc From `T` pick properties that exist in `U`. Simple version of Intersection. * Additionally, it validates, if both select and include are present. If the case, it errors. */ export type SelectSubset = { [key in keyof T]: key extends keyof U ? T[key] : never } & (T extends SelectAndInclude ? 'Please either choose `select` or `include`.' : T extends SelectAndOmit ? 'Please either choose `select` or `omit`.' : {}) /** * Subset + Intersection * @desc From `T` pick properties that exist in `U` and intersect `K` */ export type SubsetIntersection = { [key in keyof T]: key extends keyof U ? T[key] : never } & K type Without = { [P in Exclude]?: never }; /** * XOR is needed to have a real mutually exclusive union type * https://stackoverflow.com/questions/42123407/does-typescript-support-mutually-exclusive-types */ export type XOR = T extends object ? U extends object ? (Without & U) | (Without & T) : U : T /** * Is T a Record? */ type IsObject = T extends Array ? False : T extends Date ? False : T extends Uint8Array ? False : T extends BigInt ? False : T extends object ? True : False /** * If it's T[], return T */ export type UnEnumerate = T extends Array ? U : T /** * From ts-toolbelt */ type __Either = Omit & { // Merge all but K [P in K]: Prisma__Pick // With K possibilities }[K] type EitherStrict = Strict<__Either> type EitherLoose = ComputeRaw<__Either> type _Either< O extends object, K extends Key, strict extends Boolean > = { 1: EitherStrict 0: EitherLoose }[strict] export type Either< O extends object, K extends Key, strict extends Boolean = 1 > = O extends unknown ? _Either : never export type Union = any export type PatchUndefined = { [K in keyof O]: O[K] extends undefined ? At : O[K] } & {} /** Helper Types for "Merge" **/ export type IntersectOf = ( U extends unknown ? (k: U) => void : never ) extends (k: infer I) => void ? I : never export type Overwrite = { [K in keyof O]: K extends keyof O1 ? O1[K] : O[K]; } & {}; type _Merge = IntersectOf; }>>; type Key = string | number | symbol; type AtStrict = O[K & keyof O]; type AtLoose = O extends unknown ? AtStrict : never; export type At = { 1: AtStrict; 0: AtLoose; }[strict]; export type ComputeRaw = A extends Function ? A : { [K in keyof A]: A[K]; } & {}; export type OptionalFlat = { [K in keyof O]?: O[K]; } & {}; type _Record = { [P in K]: T; }; // cause typescript not to expand types and preserve names type NoExpand = T extends unknown ? T : never; // this type assumes the passed object is entirely optional export type AtLeast = NoExpand< O extends unknown ? | (K extends keyof O ? { [P in K]: O[P] } & O : O) | {[P in keyof O as P extends K ? P : never]-?: O[P]} & O : never>; type _Strict = U extends unknown ? U & OptionalFlat<_Record, keyof U>, never>> : never; export type Strict = ComputeRaw<_Strict>; /** End Helper Types for "Merge" **/ export type Merge = ComputeRaw<_Merge>>; export type Boolean = True | False export type True = 1 export type False = 0 export type Not = { 0: 1 1: 0 }[B] export type Extends = [A1] extends [never] ? 0 // anything `never` is false : A1 extends A2 ? 1 : 0 export type Has = Not< Extends, U1> > export type Or = { 0: { 0: 0 1: 1 } 1: { 0: 1 1: 1 } }[B1][B2] export type Keys = U extends unknown ? keyof U : never export type GetScalarType = O extends object ? { [P in keyof T]: P extends keyof O ? O[P] : never } : never type FieldPaths< T, U = Omit > = IsObject extends True ? U : T export type GetHavingFields = { [K in keyof T]: Or< Or, Extends<'AND', K>>, Extends<'NOT', K> > extends True ? // infer is only needed to not hit TS limit // based on the brilliant idea of Pierre-Antoine Mills // https://github.com/microsoft/TypeScript/issues/30188#issuecomment-478938437 T[K] extends infer TK ? GetHavingFields extends object ? Merge> : never> : never : {} extends FieldPaths ? never : K }[keyof T] /** * Convert tuple to union */ type _TupleToUnion = T extends (infer E)[] ? E : never type TupleToUnion = _TupleToUnion export type MaybeTupleToUnion = T extends any[] ? TupleToUnion : T /** * Like `Pick`, but additionally can also accept an array of keys */ export type PickEnumerable | keyof T> = Prisma__Pick> /** * Exclude all keys with underscores */ export type ExcludeUnderscoreKeys = T extends `_${string}` ? never : T export type FieldRef = runtime.FieldRef type FieldRefInputType = Model extends never ? never : FieldRef export const ModelName = { Groups: 'Groups', TotalStats: 'TotalStats', DailyStats: 'DailyStats' } as const export type ModelName = (typeof ModelName)[keyof typeof ModelName] export interface TypeMapCb extends runtime.Types.Utils.Fn<{extArgs: runtime.Types.Extensions.InternalArgs }, runtime.Types.Utils.Record> { returns: TypeMap } export type TypeMap = { globalOmitOptions: { omit: GlobalOmitOptions } meta: { modelProps: "groups" | "totalStats" | "dailyStats" txIsolationLevel: never } model: { Groups: { payload: Prisma.$GroupsPayload fields: Prisma.GroupsFieldRefs operations: { findUnique: { args: Prisma.GroupsFindUniqueArgs result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.GroupsFindUniqueOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findFirst: { args: Prisma.GroupsFindFirstArgs result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.GroupsFindFirstOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findMany: { args: Prisma.GroupsFindManyArgs result: runtime.Types.Utils.PayloadToResult[] } create: { args: Prisma.GroupsCreateArgs result: runtime.Types.Utils.PayloadToResult } createMany: { args: Prisma.GroupsCreateManyArgs result: BatchPayload } delete: { args: Prisma.GroupsDeleteArgs result: runtime.Types.Utils.PayloadToResult } update: { args: Prisma.GroupsUpdateArgs result: runtime.Types.Utils.PayloadToResult } deleteMany: { args: Prisma.GroupsDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.GroupsUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.GroupsUpsertArgs result: runtime.Types.Utils.PayloadToResult } aggregate: { args: Prisma.GroupsAggregateArgs result: runtime.Types.Utils.Optional } groupBy: { args: Prisma.GroupsGroupByArgs result: runtime.Types.Utils.Optional[] } findRaw: { args: Prisma.GroupsFindRawArgs result: Prisma.JsonObject } aggregateRaw: { args: Prisma.GroupsAggregateRawArgs result: Prisma.JsonObject } count: { args: Prisma.GroupsCountArgs result: runtime.Types.Utils.Optional | number } } } TotalStats: { payload: Prisma.$TotalStatsPayload fields: Prisma.TotalStatsFieldRefs operations: { findUnique: { args: Prisma.TotalStatsFindUniqueArgs result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.TotalStatsFindUniqueOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findFirst: { args: Prisma.TotalStatsFindFirstArgs result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.TotalStatsFindFirstOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findMany: { args: Prisma.TotalStatsFindManyArgs result: runtime.Types.Utils.PayloadToResult[] } create: { args: Prisma.TotalStatsCreateArgs result: runtime.Types.Utils.PayloadToResult } createMany: { args: Prisma.TotalStatsCreateManyArgs result: BatchPayload } delete: { args: Prisma.TotalStatsDeleteArgs result: runtime.Types.Utils.PayloadToResult } update: { args: Prisma.TotalStatsUpdateArgs result: runtime.Types.Utils.PayloadToResult } deleteMany: { args: Prisma.TotalStatsDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.TotalStatsUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.TotalStatsUpsertArgs result: runtime.Types.Utils.PayloadToResult } aggregate: { args: Prisma.TotalStatsAggregateArgs result: runtime.Types.Utils.Optional } groupBy: { args: Prisma.TotalStatsGroupByArgs result: runtime.Types.Utils.Optional[] } findRaw: { args: Prisma.TotalStatsFindRawArgs result: Prisma.JsonObject } aggregateRaw: { args: Prisma.TotalStatsAggregateRawArgs result: Prisma.JsonObject } count: { args: Prisma.TotalStatsCountArgs result: runtime.Types.Utils.Optional | number } } } DailyStats: { payload: Prisma.$DailyStatsPayload fields: Prisma.DailyStatsFieldRefs operations: { findUnique: { args: Prisma.DailyStatsFindUniqueArgs result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { args: Prisma.DailyStatsFindUniqueOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findFirst: { args: Prisma.DailyStatsFindFirstArgs result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { args: Prisma.DailyStatsFindFirstOrThrowArgs result: runtime.Types.Utils.PayloadToResult } findMany: { args: Prisma.DailyStatsFindManyArgs result: runtime.Types.Utils.PayloadToResult[] } create: { args: Prisma.DailyStatsCreateArgs result: runtime.Types.Utils.PayloadToResult } createMany: { args: Prisma.DailyStatsCreateManyArgs result: BatchPayload } delete: { args: Prisma.DailyStatsDeleteArgs result: runtime.Types.Utils.PayloadToResult } update: { args: Prisma.DailyStatsUpdateArgs result: runtime.Types.Utils.PayloadToResult } deleteMany: { args: Prisma.DailyStatsDeleteManyArgs result: BatchPayload } updateMany: { args: Prisma.DailyStatsUpdateManyArgs result: BatchPayload } upsert: { args: Prisma.DailyStatsUpsertArgs result: runtime.Types.Utils.PayloadToResult } aggregate: { args: Prisma.DailyStatsAggregateArgs result: runtime.Types.Utils.Optional } groupBy: { args: Prisma.DailyStatsGroupByArgs result: runtime.Types.Utils.Optional[] } findRaw: { args: Prisma.DailyStatsFindRawArgs result: Prisma.JsonObject } aggregateRaw: { args: Prisma.DailyStatsAggregateRawArgs result: Prisma.JsonObject } count: { args: Prisma.DailyStatsCountArgs result: runtime.Types.Utils.Optional | number } } } } } & { other: { payload: any operations: { $runCommandRaw: { args: Prisma.InputJsonObject, result: JsonObject } } } } /** * Enums */ export const GroupsScalarFieldEnum = { telegramID: 'telegramID', name: 'name', username: 'username', linksDeleted: 'linksDeleted', createdAt: 'createdAt', updatedAt: 'updatedAt' } as const export type GroupsScalarFieldEnum = (typeof GroupsScalarFieldEnum)[keyof typeof GroupsScalarFieldEnum] export const TotalStatsScalarFieldEnum = { createdAt: 'createdAt', updatedAt: 'updatedAt', linksDeleted: 'linksDeleted', commandResponses: 'commandResponses', timesTriggered: 'timesTriggered' } as const export type TotalStatsScalarFieldEnum = (typeof TotalStatsScalarFieldEnum)[keyof typeof TotalStatsScalarFieldEnum] export const DailyStatsScalarFieldEnum = { createdAt: 'createdAt', updatedAt: 'updatedAt', linksDeleted: 'linksDeleted', commandResponses: 'commandResponses', timesTriggered: 'timesTriggered' } as const export type DailyStatsScalarFieldEnum = (typeof DailyStatsScalarFieldEnum)[keyof typeof DailyStatsScalarFieldEnum] export const SortOrder = { asc: 'asc', desc: 'desc' } as const export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder] export const QueryMode = { default: 'default', insensitive: 'insensitive' } as const export type QueryMode = (typeof QueryMode)[keyof typeof QueryMode] /** * Field references */ /** * Reference to a field of type 'BigInt' */ export type BigIntFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'BigInt'> /** * Reference to a field of type 'BigInt[]' */ export type ListBigIntFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'BigInt[]'> /** * Reference to a field of type 'String' */ export type StringFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'String'> /** * Reference to a field of type 'String[]' */ export type ListStringFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'String[]'> /** * Reference to a field of type 'DateTime' */ export type DateTimeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'DateTime'> /** * Reference to a field of type 'DateTime[]' */ export type ListDateTimeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'DateTime[]'> /** * Reference to a field of type 'Int' */ export type IntFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Int'> /** * Reference to a field of type 'Int[]' */ export type ListIntFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Int[]'> /** * Reference to a field of type 'Float' */ export type FloatFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Float'> /** * Reference to a field of type 'Float[]' */ export type ListFloatFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Float[]'> /** * Batch Payload for updateMany & deleteMany & createMany */ export type BatchPayload = { count: number } export type Datasource = { url?: string } export type Datasources = { db?: Datasource } export const defineExtension = runtime.Extensions.defineExtension as unknown as runtime.Types.Extensions.ExtendsHook<"define", TypeMapCb, runtime.Types.Extensions.DefaultArgs> export type DefaultPrismaClient = PrismaClient export type ErrorFormat = 'pretty' | 'colorless' | 'minimal' export 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 } /** * 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?: GlobalOmitConfig } export type GlobalOmitConfig = { groups?: Prisma.GroupsOmit totalStats?: Prisma.TotalStatsOmit dailyStats?: Prisma.DailyStatsOmit } /* Types for Logging */ export type LogLevel = 'info' | 'query' | 'warn' | 'error' export type LogDefinition = { level: LogLevel emit: 'stdout' | 'event' } export type CheckIsLogLevel = T extends LogLevel ? T : never; export type GetLogType = CheckIsLogLevel< T extends LogDefinition ? T['level'] : T >; export type GetEvents = T extends Array ? GetLogType : never; export type QueryEvent = { timestamp: Date query: string params: string duration: number target: string } export type LogEvent = { timestamp: Date message: string target: string } /* End Types for Logging */ export type PrismaAction = | 'findUnique' | 'findUniqueOrThrow' | 'findMany' | 'findFirst' | 'findFirstOrThrow' | 'create' | 'createMany' | 'createManyAndReturn' | 'update' | 'updateMany' | 'updateManyAndReturn' | 'upsert' | 'delete' | 'deleteMany' | 'executeRaw' | 'queryRaw' | 'aggregate' | 'count' | 'runCommandRaw' | 'findRaw' | 'groupBy' /** * `PrismaClient` proxy available in interactive transactions. */ export type TransactionClient = Omit